第4章灰度图像处理
彩色图像的灰度化处理

第1章绪论1.1数字图像数字图像,又称数码图像或数位图像,是二维图像用有限数字数值像素的表示。
数字图像是由模拟图像数字化得到的、以像素为基本元素的、可以用计算机或数字电路存储和处理的图像。
像素(或像元,Pixel)是数字图像的基本元素,像素是在模拟图像数字化时对连续空间进行离散化得到的。
每个像素具有整数行(高)和列(宽)位置坐标,同时每个像素都具有整数灰度值或颜色值。
通常,像素在计算机中保存为二维整数数阻的光栅图像,这些值经常用压缩格式进行传输和储存。
数字图像可以许多不同的输入设备和技术生成,例如数码相机、扫描仪、坐标测量机、seismographic profiling、airborne radar等等,也可以从任意的非图像数据合成得到,例如数学函数或者三维几何模型,三维几何模型是计算机图形学的一个主要分支。
数字图像处理领域就是研究它们的变换算法。
1.2设计平台本次设计采用的平台是MATLAB 7.0。
MATLAB编程语言被业界称为第四代计算机语言,它允许按照数学推导的习惯编写程序。
MATLAB7.0的工作环境包括当前工作窗口、命令历史记录窗口、命令控制窗口、图形处理窗口、当前路径选择菜单、程序编辑器、变量查看器、模型编辑器、GUI编辑器以及丰富的函数库和MATLAB附带的大量M文件。
MATLAB是由美国Math Works公司生产的一个为科学和工程计算专门设计的交互式大型软件,是一个可以完成各种计算和数据处理的、可视化的、强大的计算工具。
它集图示和精确计算于一身,在应用数学、物理、化工、机电工程、医药、金融和其他需要进行复杂计算的领域得到了广泛应用。
MATLAB作为一种科学计算的高级语言之所以受欢迎,就是因为它有丰富的函数资源和工具箱资源,编程人员可以根据自己的需要选择函数,而无需再去编写大量繁琐的程序代码,从而减轻了编程人员的工作负担,被称为第四代编程语言。
在MATLAB设计环境中,图像处理工具箱提供一套全方位的参照标准算法和图形工具,用于进行图像处理、分析、可视化和算法开发。
数字图像处理(第二版)章 (4)

线斜率大于1时,该灰度区间的动态范围增加,即对比度增强
了,而另外两个区间的动态范围被压缩了。当a=b,c=0,d=L-
1时,式(4-4)就变成一个阈值函数,变换后将会产生一个二值 图像。图4-3(c)是经由图4-3 (b)所示的分段线性变换对图43(a)的变换结果,它保持低灰度像素不变,增强了中间灰度的 对比度,并压缩了高灰度的动态范围。
2r 2 0 r 1
pr (r) 0
其他值
用式(4-11)求其变换函数,即其累积分布函数为
s T(r)
像素数之比p)r。(r对k ) 数 n字nk 图像,直k方图0,1可,2表,示, L为1
(4-8)
式中: n是一幅图像的像素总数; L是灰度级的总数目; rk表示第k个灰度级; nk为第k级灰度的像素数; pr(rk)表示 该灰度级出现的频率,是对其出现概率的估计。
第4章 图像增强
在直角坐标系中做出rk与pr(rk)的关系图形,称为该图像
设r为变换前的归一化灰度级,0≤r≤1,T(r)为变换函数, s=T(r)为变换后的归一化灰度级,0≤s≤1。变换函数T(r)应
满足下列条件:
(1) 在0≤r≤1区间内,T(r)单值单调递增; (2) 对于0≤r≤1,有0≤T(r)≤1。
第4章 图像增强
第一个条件保证了变换后图像的灰度级从黑到白的次序不 变。第二个条件保证了变换前后图像灰度范围一致。反变换
第4章 图像增强 灰度变换就是把原图像的像素灰度经过某个变换函数变换
成新的图像灰度。常见的灰度变换方法有直接灰度变换法和直 方图修正法。直接灰度变换法可以分为线性、分段线性以及非 线性变换。直方图修正法可以分为直方图均衡化和直方图规定 化。
数字图像处理第四章部分答案(全手打来自文库)

4
计算原始累积直方图 pi 0.14 0.36 0.61 0.78 0.88 0.94 0.97 1.00
5
计算规定累积直方图 pj 0
0
0
0.19 0.44 0.65 0.89 1.00
6
按照 pi→ pj 找到对应的 3
4
5
6
6
6
7
7
i和j
7
确定变换关系 i→j
0→3 1→4 2→5 3,4,5→6
pjnjn014022025017010012步骤计算方式计算结果1列出图像灰度级ij012345672计算原始直方图pri0140220250170100060030033列出规定直方图pzj0000190250210240114计算原始累积直方图pi0140360610780880940971005计算规定累积直方图pj0000190440650891006按照pipj找到对应的i和j确定变换关系ij34566677703142534566778求变换后的匹配直方图pj01402202503300645解
6,7→7
8
求变换后的匹配直方图
p(j)
0.14 0.22 0.25 0.33 0.06
4.5
解:已知通过图像平均法可以将噪声均方差降低到原来的 1/ m ,m 为用于平均的图像个数,
所以 g=1/10 n= 1/ m n
所以 M=100,T=3.33 秒
4.8 解:对提示表达式进行傅里叶变换得
3
j
0.14 0.36 0.61 0.78 0.88 0.94 0.97 1.00
计算累积直方图:pj= p(k)
k 0
4 计算变换后的灰度值: 1
第4章灰度图像处理

4.2
4.2.1 直方图的基本概念
直 方 图
灰度直方图表示图像中具有某种灰度级的像素的个数。
1 1 6 1 3 1 1 2 4 6 4 4 3 3 3 6 5 6 6 4 2 4 6 6 4 5 2 6 6 2 6 6 1 6 6 3 6 5 2 4 3 5 4 6 5 2 6 14
4.2.2 直方.3
灰 度 变 换
4.3.1 灰度线性变换
原图像f(x, y)的灰度范围为[a, b],希望变换后图像
g(x, y)的灰度范围扩至[c, d],则线性变换可表示为:
g(x, y) d
g ( x, y )
c
d c [ f ( x, y ) a ] c ba
O
pr(rk)代表概 率密度函数,
表示原始图 像的灰度分 布
nk pr ( rk ) n
数
n是图像像素总数
在坐标中做出rk与pr(rk)的关系图形,即为该图像的直方图。
直方图程序设计
Line方法: object.Line (x1, y1) - (x2, y2),RGB (Red, Green, Blue)
4.1
4、加权平均法
彩色图像转灰度图像
Private Sub Command5_Click() Picture1.Picture = Picture2.Picture w = Picture1.ScaleWidth h = Picture1.ScaleHeight For i = 0 To w-1 For j = 0 To h-1 rgb1 = GetPixel(Picture1.hdc, i, j) Blue = rgb1 mod 256 '获得兰色值 Red =rgb1\256 mod 256 '获得红色值 Green = rgb1 \65536 '获得绿色值 '将三原色取其权值转换为灰度 Y = (9798 * Red + 19235 *Green + 3735 * Blue) \ 32768 '将灰度转换为RGB rgb1 = RGB(Y, Y, Y) SetPixelV picture2.hdc, i, j, rgb1 Next j Next i Picture2.Picture = Picture2.Image End Sub
灰度图像处理

•
•
• 对于数字图像,可以对上述公式做离散近似。若原图像f(x,y)在像素点(x,y)处的灰度为rk,则直方 图均化后的图像g(x,y)在点(x,y)处的灰度sk为
图像去噪
去噪的方法很多,常用的有:平滑滤波和中值滤波 1、平滑滤波 在假定加性噪声是随机独立分布的条件下,利用领域的平均或加权平 均可以有效抑制噪声干扰。图像平滑实际是低通滤波,让信号的低频部分 通过,阻截属于高频部分的噪声信号,显然,在减少随机噪声点影响的同时, 由于图像边缘部分也处在高频部分,平滑过程会导致边缘模糊化 平滑模板的思想是:通过待处理点和周围8个相邻点的平均来去除突然 变换的点,从而滤掉一定的噪声,其代价是图像有一定程度的模糊
图像锐化
1、一阶微分算子算法 图像处理种常用的微分方法就是求梯度。对于一个连续函数f(x,y),它在点(x,y)处的梯度是一个矢量,定义为
点(x,y)梯度的幅度即为梯度矢量的模:
(1)
对于数字图像f(x,y),由于数字图像的离散性,采用差分运算来近似替代微分运算,在其像素点(i,j)处,x方向和y方向上 的一阶差分定义为
增强后图像在(i,j)处的灰度值为
Sobel算子在计算x方向和y方向上的梯度时,不像普通梯度算子那样只用两 个像素灰度差值来表示,而是采用两列或两行像素灰度加权和的差值来表 示,这使得Sobel算子具有如下优点: (1)引入了加权平均,将距离远近产生的影响考虑进去,对图像中的随机噪声 具有一定的平滑作用 (2)由于Sobel算子采用间隔两行或者两列的差分,所以图像中边缘两侧的像 素得到增强。Sobel算子得到的锐化图像的边缘显得粗而亮
图像锐化
3、拉普拉斯算子算法 拉普拉斯算子是一种十分常用的图像边缘增 强处理算子。拉普拉斯算子是线性二次微分算子, 具有各向同性和位移不变性,从而满足不同走向 的图像边缘的锐化要求。 对于连续图像f(x,y),它的拉普拉斯算子为 当图像模糊是由于扩散现象引起时,拉斯运算 结果的k倍,即 。f为模糊图像,g为锐化 以后的图像,k是与扩散效应有关的系数。
多媒体应用技术:第4章 图像处理初步

● 硬盘≮150MB,内存≮64MB ● 彩色模式≥16位,显示≥ 800×600 ● 若安装到C: 盘以外的驱动器时,C: 盘至少保留16MB的可用空间 ● Photoshop版本:5、6、7、8、CS
教学进程
● 启动与界面
● 双击Photoshop图标 等待启动
● Photoshop界面
教学进程
● 数字图像--位图图像
图像像点
● 图像由基本显示单元“像点”构 成 ● 像点由若干个二进制位进行描述
● 二进制位代表图像颜色的数量
● 二进制位(数)与图像像素之 间存在严格的“位映射”关系
● 具有位映射关系的图叫作“位图”
8bit ( 28 = 256色 ) 16bit ( 216 = 65536色 ) 24bit ( 224 = 16M色 )
第4章
图像处理初步
4.1 什么是图像 4.1.1 图像与图形的区别 4.1.2 图像的属性 4.1.3 图像文件的格式与数据量 4.1.4 如何得到图像
4.2 怎样浏览图像 4.2.1 浏览图像 4.2.2 图像文件操作 4.2.3 建立或取消文件关联
4.3 如何处理图像 4.3.1 图像处理软件Photoshop 4.3.2 打开图像 4.3.3 调整色相、饱和度和明度 4.3.4 调整亮度与对比度 4.3.5 设置选区 4.3.6 移动、复制局部图像 4.3.7 改变几何形状 4.3.8 色调调整 4.3.9 文字输入与编辑
教学进程
4.3.2 打开图像
(1) 选择“文件/打开”菜 单 (2) 选择图像文件
单击“打开” 按 钮 ● 判断图像类型
(3) 选择“图像/模式” 菜 单 (4) 观察菜单中的“√” 项 ● 可编辑、添加滤镜的图像
第四章 图像预处理

第四章图象预处理基本内容灰度变换直方图变换空间域图像平滑空间域图像锐化频域图象平滑和锐化伪彩色和假彩色处理4.1灰度变换•目的–改善图象的视觉效果,或将图象转换成一种更适合于人或机器进行分析处理的形式。
图象增强并不以图象保真为准则,而是有选择地突出某些对人或机器分析有意义的信息,抑制无用信息,提高图象的使用价值。
它可使图像动态范围加大,使图像对比度扩展,图像更加清晰,特征更加明显。
4.1灰度变换•方法–空间域处理全局运算:在整个图象空间域进行。
局部运算:在与象素有关的空间域进行。
点运算:对图象作逐点运算。
–频域处理在图象的Fourier变换域上进行处理。
4.1灰度变换:对比度增强•灰度变换法线性变换对数变换指数变换•直方图调整法直方图均衡化直方图匹配线性灰度变换亮度倒置底片效果分段线性化出现假轮廓非线性亮度变换对数效应非线性亮度变换指数效应原图GAMMA = 0.5 GAMMA = 1.8分色调整[.2 .3 0; .6 .7 1]Glossary•Image enhancement:图象增强•Image quality:图象质量•Globe operation: 全局运算•Local operation: 局部运算•Point operation: 点运算•Contrast enhancement: 对比度增强•Contrast stretching: 对比度扩展Glossary•Gray-scale transformation(GST): 灰度变换•Logarithm transformation: 对数变换•Exponential transformation: 指数变换•Threshold: 阈值•Thresholding: 二值化、门限化•False contour: 假轮廓4.2直方图变换•直方图( Histogram ):表示数字图象中的每一灰度级与其出现的频率(该灰度级的象素数目)间的统计关系,用横坐标表示灰度级, 纵坐标表示频数(也可用概率表示)。
数字图像处理_胡学龙等_第04章_图像增强

直方图均衡化
通过对原图像进行某种变换,使得图像的直 方图变为均匀分布的直方图 。
灰度级连续的灰度图像:当变换函数是原图 像直方图累积分布函数时,能达到直方图均 衡化的目的。 对于离散的图像,用频率来代替概率 。 【例4.2】假定有一幅总像素为n=64×64的图 像,灰度级数为8,各灰度级分布列于表4.1 中。试对其进行直方图均衡化。
• 4.3.2増晰原理 • 同态増晰采用合适的滤波特性函数,可以即使图 像灰度动态范围压缩,又能让感兴趣的物体图像 灰度扩展,从而是图像清晰。 • 图像是物体对照明光的反射,自然景物图像是由 两个分量乘积组成的,即照明函数和反射函数的 乘积。 • 图像的灰度由照明分量和反射分量合成,反射分 量反映了图像的实际内容(细节,纹理,边缘 等),随图像细节不同在空间上做快速变化,其 频谱落在空间高频区域。 • 而照明分量在空间上均具有缓慢变化的性质,其 频谱落在空间低频区域。 • 因此可通过傅里叶变换将两者分开,进行同态滤 波。
a’=0,b’=255。
实现的程序:
• • • • • A=imread('pout.tif'); %读入图像 imshow(A); %显示图像 figure,imhist(A); %显示图像的直方图 J1=imadjust(A,[0.3 0.7],[]); %函数将图像在0.3*255~0.7*255灰度之间 的值通过线性变换映射到0~255之间 • figure,imshow(J1); %输出图像效果图 • figure,imhist(J1) %输出图像的直方图
• 基本思想:按照高通滤波器设计,压缩低 频分量,提升高频分量。 • 照明函数频率变化缓慢,幅度变化大,数 字化占用位数多,所以要压缩; • 反射函数频率变化快,灰度变化很小,层 次不清,细节不明,应该扩展。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(x1,y1)是直线的起点坐标,若省略(x1,y1),则起点为当前坐标位置 (CurrentX,CurrentY)。(x2,y2)是直线的终点坐标。 scale方法: object.scale (x1, y1) - (x2, y2)
用于设定坐标系统。(x1,y1)是坐标系统的左上角坐标,(x2,y2)是坐 标系统的右下角坐标。 设计一图像直方图程序
声明方法: Private Declare Function SetPixelV Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal Y As Long, ByVal crColor As Long) As Long
4.1
彩色图像转灰度图像
4.1
SetPixel
彩色图像转灰度图像
函数功能:该函数将指定坐标处的像素设为指定的颜色。 函数原型:COLORREF SetPixel(HDC hdc, int X, int Y, COLORREF crColor); 参数: hdc:设备环境句柄。 X:指定要设臵的点的X轴坐标,按逻辑单位表示坐标。 Y:指定要设臵的点的Y轴坐标,按逻辑单位表示坐标。 crColor:指定要用来绘制该点的颜色。 返回值:如果函数执行成功,那么返回值就是函数设臵像素的RGB颜色值。 这个值可能与crColor指定的颜色有所不同,之所以有时发生这种情况是因为 没有找到对指定颜色进行真正匹配造成的;如果函数失败,那么返回值是 -1。
4.1
1、分量法 2、最大值法
彩色图像转灰度图像
3、平均值法
4、加权平均法
4.1
GetPixel
彩色图像转灰度图像
函数功能:该函数检索指定坐标点的像素的RGB颜色值。 函数原型:COLORREF GetPixel(HDC hdc, int nXPos, int nYPos) 参数: hdc:设备环境句柄。 nXPos:指定要检查的像素点的逻辑X轴坐标。
4.2.4 直方图的映射变换
一幅给定图像的灰度级分布在 0≤r≤1 范围内(灰度级进 行了归一)。可以对[0, 1]内的任一r值进行变换 保证了图像的灰度级 s=T(r) 从白到黑的次序不变 保证了映射变换后 变换函数T(r)应满足下列条件: 的像素灰度值在容 许的范围内 (1) 在0≤r≤1区间内,T(r)值单调增加; (2) 对于0≤r≤1, 有 0≤s≤1。
4.2.5 直方图均衡
4.3
灰 度 变 换
4.3.1 灰度线性变换
原图像f(x, y)的灰度范围为[a, b],希望变换后图像
g(x, y)的灰度范围扩至[c, d],则线性变换可表示为:
g (x, y) dቤተ መጻሕፍቲ ባይዱ
g ( x, y )
c
d c [ f ( x, y ) a ] c ba
常用的三段线性变换法其数学表达式如下:
c 0 f ( x, y) a f ( x, y ) a d c a f ( x, y) b g ( x, y ) [ f ( x, y ) a ] c d a M d g b f ( x, y) M f [ f ( x , y ) b] d M f b
j 0
nj n
5 2 6 6 2 6
pr (rj )
j 0
k
0 rj 1
k 0,1,, l 1
其反变换式为
1 6 1 3 1 1 2 4 6 4 4 3 3 3 6 5 6 6 4 2 4 6 6 4
rk T ( sk )
6 1 6 6 3 6
1
4.2.5 直方图均衡
subplot(2,2,1),imshow(I); title('原图像');
subplot(2,2,2),imhist(I); title('原图像的直方图'); J=histeq(I); %直方图均衡化
subplot(2,2,3),imshow(J); title('直方图均衡化后的图像'); subplot(2,2,4),imhist(J); title('均衡化后的图像的直方图')
4.2.5 直方图均衡
直方图均衡化处理是以累积分布函数变换法为基础的 直方图修正法。变换函数为
s T ( r ) pr ( )d
0
r
式中:ω是积分变量,而
p ( )d 就是r的累积分布函数。
0 r
r
4.2.5 直方图均衡
当灰度级是离散值时:
k
sk T (rk )
4.1
2、最大值法
彩色图像转灰度图像
Private Sub Command3_Click() w = Picture1.ScaleWidth h = Picture1.ScaleHeight For i = 0 To w - 1 For j = 0 To h - 1 rgb1 = GetPixel(Picture1.hdc, i, j) Red = rgb1 Mod 256 '获得红色值 Green = rgb1 \ 256 Mod 256 '获得绿色值 Blue = rgb1 \ 65536 '获得兰色值 '取R、G、B分量最大值作为灰度 If Red > Green And Red > Blue Then Col = Red If Green > Red And Green > Blue Then Col = Green If Blue > Red And Blue > Green Then Col = Blue rgb1 = RGB(Col, Col, Col) SetPixelV Picture2.hdc, i, j, rgb1 Next j Next i Picture2.Picture = Picture2.Image End Sub
nYPos:指定要检查的像素点的逻辑Y轴坐标。
返回值:返回值是该象像点的RGB值。
声明方法: Private Declare Function GetPixel Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal Y As Long) As Long
4.1
4、加权平均法
彩色图像转灰度图像
Private Sub Command5_Click() Picture1.Picture = Picture2.Picture w = Picture1.ScaleWidth h = Picture1.ScaleHeight For i = 0 To w-1 For j = 0 To h-1 rgb1 = GetPixel(Picture1.hdc, i, j) Blue = rgb1 mod 256 '获得兰色值 Red =rgb1\256 mod 256 '获得红色值 Green = rgb1 \65536 '获得绿色值 '将三原色取其权值转换为灰度 Y = (9798 * Red + 19235 *Green + 3735 * Blue) \ 32768 '将灰度转换为RGB rgb1 = RGB(Y, Y, Y) SetPixelV picture2.hdc, i, j, rgb1 Next j Next i Picture2.Picture = Picture2.Image End Sub
rk r0=0 r1=1/5 r2=2/5 r3=3/5 r4=4/5 r5=1
nk n0=5 n1=4 n2=5 n3=6 n4=2 n5=14
nk/n 5/36 4/36 5/36 6/36 2/36 14/36
1
2
3
4
5
6
1
2
3
4
5
6
Matlab程序: clear all; close all; I=imread('pout.tif');
O
a
b
f (x, y)
实例:逆反处理
255
g ( x, y) 255 f ( x, y)
For j = 0 To h- 1 For i = 0 To w - 1 g(i,j) = 255 - f(i, j)
输 出 灰 度
Next i
0 输入灰度 255
Next j
4.3.2 分段线性变换
突出感兴趣的灰度区间。
s0 T (r0 ) Pr (rj ) Pr (r0 )
j 0 1 0
5 1 36 5
9 1 36 5 j 0 2 14 2 s2 T (r2 ) Pr (rj ) s1 Pr (r2 ) 36 5 j 0 3 20 3 s3 T (r3 ) Pr (rj ) s2 Pr (r3 ) 36 5 j 0 22 3 s4 T (r4 ) s3 Pr (r4 ) 36 5 36 s5 T (r5 ) s4 Pr (r5 ) 1 36 s1 T (r1 ) Pr (rj ) Pr (r0 ) Pr (r1 )
pr(rk)代表概 率密度函数,
表示原始图 像的灰度分 布
nk pr ( rk ) n
数
n是图像像素总数
在坐标中做出rk与pr(rk)的关系图形,即为该图像的直方图。
直方图程序设计
Line方法: object.Line (x1, y1) - (x2, y2),RGB (Red, Green, Blue)
(1) 只含图像各灰度值像素出现的概率,而无位臵信息。
(2)
图像与直方图之间是多对一的映射关系。
(3)
图像各子区的直方图之和就等于该图像全图的直方图。