您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 造纸印刷 > 第三章空间域图像增强.
第3章空间域图像增强一个指纹图像增强的实例主要内容3.1简介3.2基本灰度变换3.3直方图处理(难点)3.4算术/逻辑操作增强3.5平滑空间滤波器3.6锐化空间滤波器3.7在图像增强中使用直方图统计学(一个精妙的例子,自学)3.8混合空间滤波器:(又一个精妙的例子,自学)3.1简介1图像增强的定义图像增强是一类基本的图像处理技术,其目的是对图像进行加工,以得到对视觉解释来说视觉效果“更好”、或对机器感知效果来说“更有用”的图像。(1)视觉效果更好的例子(2)机器感知效果更好的例子“特征脸”2图像增强的分类(1)空间域增强和频率域增强(2)空间域增强方法分类g(x,y)=T(f(x,y))A、点操作B、邻域操作C、图像集操作3.2基本灰度变换1图像反转(1)公式表示:灰度级范围[0,L-1]时s=L-1-r0255255(2)特点:“实现反白”。灰度图像实例彩色图像实例(3)应用范围:特别适用于嵌入于图像暗色区域的白色或灰色细节。2对数变换(1)公式表示s=c*log(1+r)(2)特点“扩展低输入,压缩高输入”。(3)应用范围当原图动态范围太大,超出显示设备的范围时,如直接显示原图则一部分细节可能丢失。此时可采用对数变换。如傅里叶频谱的显示。(4)MATLAB实现f=imread(‘pout.tif’);F=fft2(f);%FourierTransformFC=fftshift(F);%将变换原点移到频率矩形的中心。imshow(abs(FC),[]);S2=log(1+abs(FC));figure,imshow(S2,[]);3幂次变换(1)公式表示crs(2)特点:非常灵活。(3)应用范围比较广泛,可代替对数变换和反对数变换。(4)MATLAB实现语法:g=imadjust(f,[low_inhigh_in],[low_outhigh_out],gamma)说明:将图像f中的亮度值影响到g中的新值,即将low_in至high_in之间的值映射到low_out至high_out之间的值,low_in以下的值映射为low_out,high_in以上的值映射为high_out。参数gamma指定了映射曲线的形状。f=imread(‘pout.tif’);imshow(f);g1=imadjust(f,[01],[10]);figure,imshow(g1);g2=imadjust(f,[0.50.75],[10],0.5);figure,imshow(g2);4分段线性变换(1)对比度拉伸dbyxfbMdMcayxfabcdyxfacyxgfg]),([]),([),(),(fMyxfbbyxfaayxf),(),(),(0Mfabdf(x,y)g(x,y)MgcO(2)特点:“压缩两端的背景的动态范围,扩展中段的目标的动态范围”(2)灰度切分特点:突出目标的轮廓,消除背景细节特点:突出目标的轮廓,保留背景细节3.3直方图处理1直方图(1)概念灰度直方图表示图像中每种灰度出现的像素数目。6646313266416665436646611223466543211426545654321(2)直方图的作用反映一幅图像的灰度分布特性。(3)归一化直方图的计算nnrpkk)(1,,2,1,010lkrk式中:nk为图像中出现rk级灰度的像素数,n是图像像素总数,而nk/n即为频数。随堂练习:计算归一化直方图0123456776543210444444443212321234534534113355776644220067543210(4)MATLAB实现语法:h=imhist(f,b)说明:b是用于形成直方图的灰度级的个数。f=imread(‘pout.tif’);imhist(f);2直方图均衡化(1)灰度变换函数假说满足以下条件:A、T(r)在区间0≤r≤1中为单值且单调递增;(单值是为了保证反变换的存在;单调递增条件保持输出图像从黑到白顺序增加)B、当0≤r≤1时,0≤T(r)≤1。(输出灰度范围一致)10)(rrTs从s到r的反变换:r=T-1(s)(2)概率密度函数之间的变换)(1)()(sTrrsdsdrrpsp证明:(自学内容)由概率论理论可知,如果已知随机变量ξ的概率密度函数为pr(r),而随机变量η是ξ的函数,即η=T(ξ),η的概率密度为ps(s),所以可由pr(r)求出ps(s)。因为s=T(r)是单调增加的,因此它的反函数r=T-1(s)也是单调函数。在这种情况下,η<s且仅当ξ<r时发生,所以可以求得随机变量η的分布函数为(推导)dxxprpspsFrr)(][)()(对上式两边求导,即可得到随机变量η的分布密度函数ps(s))(11)()()()(sTrrrsdsdrrpsTdsdrpsp通过变换函数T(r)可以控制图像灰度级的概率密度函数,从而改变图像的灰度层次。这就是直方图修改技术的理论基础。(3)累积分布函数(CDF)dprTsrr)()(0(4)s的概率密度均匀(均衡化))()(rpdrrdTdrdsr1)(1)(/1)()()()()(11rprpdrdsrpdsdrrpsprrsTrrsTrrs(5)离散情况下的算法:A、列出原始图像的灰度级B、统计各灰度级的像素数目C、计算原始图像直方图各灰度级的频数D、计算累积分布函数F、应用以下公式计算映射后的输出图像的灰度级,P为输出图像灰度级的个数,其中INT为取整符号:1,,1,0,Ljfj1,,1,0,Ljnj1,,1,0,/)(LjnnfPjjf1,,,1,0,)()(0LkjfPfCkjjf1,,1]5.0)()[(minminmaxPigfCggINTgiG、用映射关系修改原始图像的灰度级,从而获得直方图近似为均匀分布的输出图像。举例:随堂练习:对下列图像进行直方图均衡化3311133110332113320122110(6)直方图均衡化的效果1)由于数字图像是离散的,因此直方图均衡化并不能产生具有理想均衡直方图的图像,但可以得到一幅灰度分布更为均匀的图像。2)变换后一些灰度级合并,因此灰度级减少。3)原始图像含有象素数多的几个灰级间隔被拉大了,压缩的只是象素数少的几个灰度级,实际视觉能够接收的信息量大大地增强了,增加了图象的反差和图象的可视粒度。(7)MATLAB实现语法:g=histeq(f,nlev)说明:nlev是为输出图像制定的灰度级数。f=imread(‘tire.tif’);imshow(f);figure,imhist(f);ylim(‘auto’);%自动设定y轴坐标范围和刻度g=histeq(f,256);figure,imshow(g);figure,imhist(g);ylim(‘auto’);补充材料:直方图均衡化的缺陷1直方图均衡化的问题不能实现直方图的理想均衡。2原因分析数字图像是离散的。直方图均衡化方法是一对一或者多对一的映射关系,即原图像的某一灰度级或某几个灰度级只能映射为均衡化图像的一个灰度级,因此不能实现理想的均衡。3创新思路要想实现直方图的理想均衡化,就必须破除传统直方图均衡化方法所蕴含的一对一或者多对一映射关系的理论前提,实现灰度级多对多的映射关系。4技术路线(1)邻域测度邻域测度(或邻域算子)定义为:k0,是锐化系数。下面解释公式的物理含义。当f(x,y)比它的8邻域均值大时,变换后邻域测度将比f(x,y)大;相应的,当f(x,y)比它的8邻域均值小时,变换后邻域测度将比f(x,y)小。因此,邻域测度(或邻域算子)可以看作为一个锐化算子,k(锐化系数)的大小决定了锐化的强度。))],(),([),(),(8yxfyxfkyxfyxf(2)排序对邻域测度空间的值进行由小到大的排序。(3)均匀分段排序完成后,按照原始图像的灰度级数进行均匀分段。例如,如果原始图像是256灰度级的,则均匀分为256段,每段的像素的数目基本相等,最多相差1。(4)均衡化映射按分段的先后顺序,每段中的数据分别赋值为0,1,…,L-1(L为灰度级数)。然后,每段中的每个数据根据在排序过程中保存的位置关系,映射回图像中。5实验结果3.4用算术/逻辑操作增强1算术操作(1)加法操作C(x,y)=A(x,y)+B(x,y)A、图像叠加(特技处理)B、图像平均处理(去除噪声)(证明)2),(2),(11111),()),(()),((1),(),(1),(1),(),(1),(),(),(),(yxyxgkikikiikiikyxfyxEyxfEkyxyxfkEyxgkEyxgEyxgkyxgyxyxfyxg(2)减法操作C(x,y)=A(x,y)-B(x,y)减法的最主要作用是突出两幅图像的差异,常用于医学影像中的变化监测,或固定场景中的运动监测。思考题:为什么车辆亮度变暗?(3)乘法操作(乘以常数、模板操作等)除法操作(一幅图像乘以另一幅图像的取反)(4)MATLAB实现K1=imadd(I,J);%两幅图像加K2=imsubtract(rice,50);%图像减一个常数K3=immultiply(I,2);%图像乘一个常数K4=imdivide(I,2);%图像除一个常数减法例子:rice=imread(‘rice.tif’);background=imopen(rice,strel(‘disk’,15));rice2=imsubtract(rice,background);subplot(1,2,1),imshow(rice);subplot(1,2,2),imshow(rice2);加法例子:I=imread(‘rice.tif’);J=imrea(‘cameraman.tif’);k=imadd(I,J);imshow(K);乘法例子:I=imread(‘moon.tif’);J=immultiply(I,1.2);subplot(1,2,1),imshow(I);subplot(1,2,1),imshow(J);除法例子:rice=imread(‘rice.tif’);I=double(rice);J=I*0.43+90;rice2=uint8(J);Ip=imdivide(rice,rice2);imshow(Ip,[]);四则运算例子:I=imread(‘rice.tif’);I2=imread(‘cameraman.tif’);K=imdivide(imadd(I,I2),2);imshow(K);2逻辑操作(把灰度值作为二进制串)随堂练习:39的“非”,39和25的“与”及“或”。(1)与、或可用于从一幅图像中提取子图像。(2)非可以实现图像取反。(3)异或练习:用第二幅图像对第一图像进行两次异或运算,并写出两次异或运算的结果。(3比特图像)25731234思考题:从这个例子中,我们可以的得到什么启示?(4)MATLAB实现MATLAB不提供两幅图像的逻辑操作函数,需要自己编写逻辑操作函数。异或操作可以实现图像的加密和解密。3.5空间滤波器基础1邻域处理对邻域图像和相同大小的子图像进行操作。该子图像被称为滤波器、窗口、掩模、模板或核。(举例:二维)2空间线性滤波在待处理图像中逐点地移动掩模,每点的响应由滤波器系数与滤波掩模扫过的相应像素值的乘积之和给出。mniiimnmnaasbbtzwzwzwzwRbnamnmtysxftswyxg1221112,12*),(),(),(简写为:的模板,其中思考题:相关与卷积是什么关系?在什么情况下它们的运算结果是相同的?为什么要引入卷积?3空间非线性滤波在待处理图像中逐点地移动掩
本文标题:第三章空间域图像增强.
链接地址:https://www.777doc.com/doc-2121981 .html