220 likes | 414 Views
第三章 图象平滑 ( Image Smoothing). 字面意义:图像平滑的字面意义是一个象素到其 相邻象素的灰度变 化平滑。 用途 : (1)消除噪音。因为系统中难免有噪音,而噪音常表现为不平 滑,即其灰度忽然变大或变小。 (2)增强视觉效果。(前文讲过,图像平滑也是一种图像增强的方法,只是出于习惯,因为它强调对噪声的处理,才单独列一章)。. 中值滤波. 注1:关于噪声( Noise) 图像噪声按其产生的原因可分为:
E N D
第三章 图象平滑(Image Smoothing) 字面意义:图像平滑的字面意义是一个象素到其 相邻象素的灰度变 化平滑。 用途: (1)消除噪音。因为系统中难免有噪音,而噪音常表现为不平 滑,即其灰度忽然变大或变小。 (2)增强视觉效果。(前文讲过,图像平滑也是一种图像增强的方法,只是出于习惯,因为它强调对噪声的处理,才单独列一章)。 中值滤波 任明武,南京理工大学计算机系
注1:关于噪声(Noise) 图像噪声按其产生的原因可分为: 外部噪声:是指系统外部干扰以电磁波或经电源串进系统内部而引起的噪声。如电器设备,天体放电现象等引起的噪声。 内部噪声:一般可分为下列4种: (1)由光和电的基本性质所引起的噪声。如粒子运动的随机性。 (2)电器的机械运动产生的噪声。如各种接头的抖动引起电流变化,磁头、磁带的振动。 (3)元器件材料本身引起的噪声。如磁盘的表面缺陷,胶片的颗粒性。 (4)系统内部设备电路所引起的噪声。如电源的噪声。 统计学观点: (1)按统计特性分为平稳和非平稳噪声。其统计特性不随时间变化的噪声称为平稳噪声,反之,称为非平稳噪声。 (2)按噪声幅度分布形状而分。成高斯分布的称为高斯噪声;按雷利分布的称为雷利噪声。 (3)按噪声频谱的形状而分。频谱均匀分布的称为白噪声;频谱与频率成反比的称为1/f噪声;频谱与频率平方成正比的称为三角噪声。 (4)按噪声和信号之间的关系分为加性噪声和乘性噪声。输出为S(t) +n(t)形式的成为加性噪声,输出为S(t)(1 +n(t))形式的成为乘性噪声。 任明武,南京理工大学计算机系
噪声分析:为了便于分析和处理,往往将乘性噪声近似地认为是加性噪声,和总是假设信号和噪声是互相统计独立。噪声分析:为了便于分析和处理,往往将乘性噪声近似地认为是加性噪声,和总是假设信号和噪声是互相统计独立。 图像平滑的处理方式也是基于空域和频域两种。在空域,图像平滑使用邻域运算;在频域,图象平滑实际上是低通滤波,让主要是信号的低频部分通过,阻截属于高频部分的噪声信号。 邻域运算是指当输出图象中每个象素是由对应的输入象素及其一个邻域内的象素共同决定时的图象运算,通常邻域是远比图象尺寸小的一规则形状,如正方形2x2、3x3、4x4或用来近似表示圆及椭圆等形状的多边形。信号与系统分析中的基本运算相关与卷积,在实际的图象处理中都表现为邻域运算。邻域运算与点运算一起形成了最基本、最重要的图象处理工具。 注2:相关和卷积 以围绕模板(filter mask, template)的相关与卷积运算为例,给定图象f(x,y)大小N×N,模板T(i, j)大小m×m(m为奇数),常用的相关运算定义为: 使模板中心T((m-1)/2,(m-1)/2)与f(x,y)对应,即: 任明武,南京理工大学计算机系
当m=3时,有: 卷积运算(convolution)定义为: 当m=3时,有: 可见,相关运算是将模板当权重矩阵作加权平均,而卷积与相关不同的只是在于需要将模板沿中心反叠(先沿纵轴翻转,再沿横轴翻转;即沿次对角线翻转)后再加权平均。如果模板是对称的,那么相关与卷积运算结果完全相同。实际上常用的模板如平滑模板、边缘检测模板等都是对称的,因而这种邻域运算实际上就是卷积运算,用信号系统分析的观点来说,就是滤波,即低通滤波或高通滤波(举例)。 任明武,南京理工大学计算机系
3.1 均值滤波(Average Filter) 3.1.1方法:对于一个滑动窗口内的各象素的灰度级求平均值、用该均值来代替窗口中心象素的原灰度级。即: 由此,可以看出均值滤波和卷积的关系。(举例)。 任明武,南京理工大学计算机系
均值滤波的关键是设计合理的卷积核,包括形状、大小和T(i,j)的值。常用的卷积核有: (1)形状和大小:邻域平均(矩形邻域和圆形邻域) (举例)。 任明武,南京理工大学计算机系
(2)T(i,j)的取值:高斯滤波(Gaussian Filters) –高斯加权平滑 高斯函数即正态分布函数常用作加权函数。 一维高斯函数:常用于一维数据的滤波,比如直方图。高斯函数的形式为: 在概率论中,均值为x0的正态分布为 使用一维高斯函数生成卷积核T(i),即令T(i)=p(i),则在不同的位置(i),T(i) 取不同的值。 二维高斯函数: 常用于图像的滤波,比如灰度图像。均值为(x0,y0)的二维高斯函数为: 任明武,南京理工大学计算机系
左侧是在x取不同的值时的高斯函数值,x用标准差的倍数描述。可以看出,当x大于2倍的标准差时,高斯函数的值近似于0。左侧是在x取不同的值时的高斯函数值,x用标准差的倍数描述。可以看出,当x大于2倍的标准差时,高斯函数的值近似于0。 例,使用标准差等于1的高斯函数计算一维卷积核T(i) (-3<=i<=3), 得到: T={0.0111,0.1353,0.6065,1,0.6065,0,1353,0,0111}。即: G(x)=0.0111*g(x-3)+0.1353*g(x-2) +0.6065*g(x-1)+g(x)+0.6065*g(x+1) +0.1353*g(x-2)+0.0111*g(x+3)。 进一步得到归一化为: G(x)=G(x)/(0.0111+0.1353+0.6065+1+ 0.0111+0.1353+0.6065)。 从上表还可以看出,x取3倍的标准差时,T(x)非常小,所以在实际应用中,窗口的大小一般取:2* +1。比如当 =1/2时,二维的卷积核如右(用整数近似了): 任明武,南京理工大学计算机系
3.1.2特点: (1)系数之和等于1。 (2)系数都是正数。 (3)执行速度快。 (4)容易造成图像模糊。实质上在求平均值的过程中,噪 声的灰度值也代入了均值中,从而向周围扩散,导致图象模 糊,边缘不清晰。 (5)”能量守恒”,即滤波前后图像的亮度不变。 例:[2,2,2,2,10,10,10,10]和T=[1,1,1]/3,得到[2,2,2,5,7,10,10,10] 3.1.3改进的其他方法: 造成模糊的原因是没有区分背景和目标,将背景象素和目标象素的灰度值相加,从而模糊了目标和背景的边界。解决的方案是避免这种情况的发生。考虑,当该点pi是目标点且位于目标和背景的边界上时,该点的邻域中肯定也有目标点pk、pj等,且pi、pk、pj等是灰度接近的,因为灰度接近才算它们属于同一个目标。所以: K个邻点平均法: 本来窗口中有N*M个象素,现只用其中的k个象素的灰度平均值代替。如何选择K个?规则之一:选择灰度与窗口中的灰度级最接近的k个象素。 任明武,南京理工大学计算机系
例:(1) [2,2,2,2,10,10,10,10]和k=2,得到2,2,2,2,10,10,10,10] (2) [2,2,2,2,10,10,1,10]和k=2,得到2,2,2,2,10,10,6,10]。因为噪音的灰度值跟目标和背景的灰度值都不接近,所以噪音能被其周围(即邻域)的灰度值修改掉。(注:这是很理想的情况,在实际应用中的问题,远非如此简单!) 造成模糊的原因是没有区分背景和目标,将背景象素和目标象素的灰度值相加,从而模糊了目标和背景的边界。在实际图像中,目标和背景之间存在过渡区,即目标和背景的边界上的像素的灰度值是由目标的灰度逐渐变化到背景的灰度的。边界上的像素pi的灰度值g(x,y)与其标准算法得到均值u(x,y)相比是接近的,而噪声则应当与均值有较大的差异。因此: 超限平滑:已知g(i, j), u(i, j)是标准算法得到的均值,T是门限,则有: 例:[2,2,2,7,8,10,10,1,10],令T=5 任明武,南京理工大学计算机系
3.2 中值滤波(Median Filter) 3.2.1方法:对于一个滑动窗口NxM内的各象素按灰度级排序,用处于中间位置象素的灰度级来代替窗口中心象素原来的灰度级。(是一种排序滤波器) 中值的定义:N个数据进行排列后得到一个有序序列A0…An-1, 其中An-1/2称为中值。[1,2,3,100,101,102,106,108 109] 3.2.2特点: (1)计算复杂度非常高(因为排序),执行速度慢(当然有专门的文章讨论快速实现的问题)。 (2)”能量不守恒”,即滤波前后图像的亮度发生改变(但非常接近)。 (3)不容易造成图像模糊,具有非常好的抗噪性能。中值滤波能够在抑制随机噪声的同时不使边缘模糊,因而受到欢迎。 解释:在目标和背景的边界处的像素,当其邻域中大多数为目标点时,它就取目标的灰度值,当其邻域中大多数为背景点时,它就取背景的灰度值,因此不模糊。当滑动窗口内有1类目标时,他们的均值和中值可以认为相等;当有2类目标时,他们的均值是没有多大意义的,但中值能保证取到多的那类上。当窗口不大时,可以假定最多有2类目标。 任明武,南京理工大学计算机系
例:(1)[2,2,2,2,10,10,10,10]和N=1,M=3,得到[2,2,2,2,10,10,10,10]例:(1)[2,2,2,2,10,10,10,10]和N=1,M=3,得到[2,2,2,2,10,10,10,10] (2) [2,2,2,2,10,10,1,10]和N=1,M=3,得到2,2,2,2,10,10,10,10]。 原始图像 半径为4的高斯平滑 半径为4的中值滤波 任明武,南京理工大学计算机系
3.2.3说明: 中值滤波的效果依赖于两个要素:邻域的空间范围和中值计算中涉及的象素数(当空间范围较大时,一般只取若干稀疏分布的象素作中值计算)。如: 作业1:一架高速摄象机对准一个窗口区域拍照(假设每秒2000幅)。该窗口区域有一炮弹飞过,请问如何才得到一幅干净背景图象?(提示:每一幅图象中炮弹在不同的位置) 作业2:假设已经知道在一幅图像中,有10%的像素受到了噪声污染,若使用超限平滑,那么如何确定T的值呢? 任明武,南京理工大学计算机系
3. 3极值滤波器 最大值滤波:对于一个滑动窗口NxM内的各象素求灰度级的最大值,用该最大值来代替窗口中心象素原来的灰度级。 最小值滤波:对于一个滑动窗口NxM内的各象素求灰度级的最小值,用该最大值来代替窗口中心象素原来的灰度级。 注:一般很少使用极值滤波器来消除噪声,因为需要知道噪声表现为极大或极小。相反,极值滤波器倒是常用在目标形状的处理中。 例:水面反光的消除,因为知道反光在图像中表现为极大值,所以可以用极小值滤波。 但发现,虽然极小值滤波消除了水面的反光,但将不是反光的区域的像素的灰度值也减小了,导致图像偏暗。因而,采用如下的方法: 任明武,南京理工大学计算机系
例:假设在一个二值图像中,目标表现为白色,但目标有部分的断裂或裂缝,如何消除裂缝呢?例:假设在一个二值图像中,目标表现为白色,但目标有部分的断裂或裂缝,如何消除裂缝呢? 原图像 膨胀3x3 腐蚀3x3 例:假设在一个二值图像中,目标表现为白色,目标有部分粘连,如何消除粘连呢? 原图像 腐蚀3x3 膨胀3x3 任明武,南京理工大学计算机系
可以看出,上述的例子涉及到了二值图像的分析,对于二值图像的滤波,有专门的方法,称为形态学运算(Morphology)。可以看出,上述的例子涉及到了二值图像的分析,对于二值图像的滤波,有专门的方法,称为形态学运算(Morphology)。 3. 4形态学滤波器 形态学运算是针对二值图象,并依据数学形态学(Mathematical Morphology)的集合论方法发展起来的图象处理方法。数学形态学起源于岩相学对岩石结构的定量描述工作,近年来在数字图象处理和机器视觉领域中得到了广泛的应用,形成了一种独特的数字图象分析方法和理论。 通常形态学图象处理表现为一种邻域运算形式,一种特殊定义的邻域称之为“结构元素”(Structure Element),在每个象素位置上它与二值图象对应的区域进行特定的逻辑运算,逻辑运算的结果为输出图象的相应象素。形态学运算的效果取决于结构元素的大小、内容以及逻辑运算的性质。常见的形态学运算有膨胀(Dilation)和腐蚀(Erosion)。 给定二值图象I(x,y)和作为结构元素的二值模板T(i,j),则典型的腐蚀与膨胀运算可表示成: 膨胀: 腐蚀: 任明武,南京理工大学计算机系
几种简单对称结构元素(圆形、方形、菱形)如下图所示: 3. 4.1 包含、击中、不击中 按照集合的概念,给定两个集合:对象(Object)X和结构元素(Structure Element)B,它们之间的关系有如图所示的三种情况: 任明武,南京理工大学计算机系
3. 4.2膨胀、腐蚀 膨胀是将与物体接触的所有背景点合并到该物体中,使边界向外部扩张的过程。可以用来填补物体中的空洞。一般意义的膨胀概念定义为: 也就是说,由B对X膨胀所产生的二值图象D是满足以下条件的点(x,y)的集合:如果B的原点平移到点(x,y),那么它与X的交集非空。 腐蚀是一种消除边界点,使边界向内部收缩的过程。可以用来消除小且无意义的物体。一般意义的腐蚀概念定义为: 也就是说,由B对X腐蚀所产生的二值图象E是满足以下条件的点(x,y)的集合:如果B的原点平移到点(x,y),那么B将完全包含于X中。 性质:对偶关系 任明武,南京理工大学计算机系
例: 任明武,南京理工大学计算机系
3. 4.3开运算、闭运算 先腐蚀后膨胀的过程称为开运算。用来消除小物体、在纤细点处分离物体、平滑较大物体的边界的同时并不明显改变其面积。 先膨胀后腐蚀的过程称为闭运算。用来填充物体内细小空洞、连接邻近物体、平滑其边界的同时并不明显改变其面积。 通常,由于噪声的影响,图象在阈值化后所得到边界往往是很不平滑的,物体区域具有一些噪声孔,背景区域上散布着一些小的噪声物体。连续的开和闭运算可以有效地改善这种情况。有时需要经过多次腐蚀之后再加上相同次数的膨胀,才可以产生比较好的效果。 任明武,南京理工大学计算机系
3. 4.4击中击不中变换HMT(Hit-Miss Transform) 将形态学运算推广到更为一般的情况,实际上就演变为条件严格的模板匹配。这时结构元素不仅含有物体点,而且还含有背景点,只有当结构元素与所对应的区域完全符合时才作为结果输出到输出图象。 模板T由两部分组成(T1,T2), T1物体点,T2背景点,HMT定义为: 例如,在下图中,对于三个不同的T模板,在X中标出了符合条件的位置。 任明武,南京理工大学计算机系
3. 4.5说明 (1)可将形态学运算推广到灰度图像。 (2)形态学运算还包含更丰富的内容(以后会陆续讲)。 3. 5总结 本质上是用邻域值的某种取值来代替他本身的值,可以根据实际情况,设计出各种复杂形状的滤波器。 任明武,南京理工大学计算机系