数字图像处理实战 课件 第3、4章 图像增强与复原、形态学处理_第1页
数字图像处理实战 课件 第3、4章 图像增强与复原、形态学处理_第2页
数字图像处理实战 课件 第3、4章 图像增强与复原、形态学处理_第3页
数字图像处理实战 课件 第3、4章 图像增强与复原、形态学处理_第4页
数字图像处理实战 课件 第3、4章 图像增强与复原、形态学处理_第5页
已阅读5页,还剩104页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章图像增强与复原1使用频率域滤波处理图像目录使用空间滤波增强图像2车牌复原3章节小结4使用空间滤波增强图像1.了解空间滤波使用空间滤波增强图像,空间域指的是图像平面本身,空间域中的图像处理方法直接对图像中的像素进行处理。空间滤波的常见应用包含平滑图像、锐化图像和模糊图像,可以用于非线性滤波,而频率域滤波则无法实现。空间域滤波增强采用模板处理方法对图像进行滤波,去除图像噪声或者增强图像的细节。通常空间域技术在计算上更有效,且执行所需的处理资源较少。空间滤波中的分类也很多,通过计算方式不同可以划分为低通滤波和高通滤波等,通过对像素执行运算方式的不同可以分为线性滤波和非线性滤波,根据空间滤波增强目的可分为平滑滤波和锐化滤波。节空间滤波主要依据空间滤波增强目的进行分类,处理如式(3-1)所示。(3-1)

使用空间滤波增强图像了解滤波器需要先理解滤波器核这一概念,核是一个阵列,核的尺寸定义了运算的邻域,核的系数决定对应滤波器的性质。用于称呼滤波器核的术语还有模板、窗口等。在第3章中统一称之为核或滤波器核。在空间域中有两种不同的运算,为相关运算和卷积运算,这两种运算是空间滤波的重要基础。相关运算过程是在图像上移动核的中心,并且在每个位置计算乘积之和。而卷积运算原理与相关运算类似,只是把相关运算的核旋转了180°。1.了解空间滤波在一维空间中,长度为m的核对长度为M的图像进行线性空间滤波表示如式(3-2)所示。

(3-2)

使用空间滤波增强图像一维相关运算与卷积运算的过程如右图所示。1.了解空间滤波

使用空间滤波增强图像

1.了解空间滤波

(3‑3)

使用空间滤波增强图像1.了解空间滤波要用公式给出相关运算与卷积运算在二维空间中的定义,首先需将相关运算重写,如式(3-4)所示。(3-4)

(3-5)

使用空间滤波增强图像2.使用空间滤波平滑图像因为空间域中的低通滤波器主要起平滑作用,所以也称为平滑滤波器,该滤波器可以对图像中噪声的去除起到显著的作用。下面对如何使用空间滤波平滑车牌图像进行介绍。

使用空间滤波增强图像2.使用空间滤波平滑图像在低通滤波器中平滑效果较为显著的是高斯滤波器,高斯滤波器的核通常是各向同性的,各向同性也被称为圆对称性。高斯核的定义如式(3-6)所示。

(3-6)

使用空间滤波增强图像2.使用空间滤波平滑图像根据式(3-6)给出一个高斯核的示例,如下图所示,可以看到核的前面有一个归一化常数,分母是核中常数的和。本章主要使用OpenCV实现空间滤波器。OpenCV中定义了许多滤波器,可以直接使用。例如,盒式滤波器、中值滤波器、高斯滤波器在OpenCV中都有定义。先给出3种滤波器的函数语法以及参数解释,再介绍使用不同低通滤波器对图像进行平滑操作的实现效果。定义盒式滤波器的boxFilter函数的语法格式如下。cv2.boxFilter(src,ddepth,ksize,dst,anchor,normalize,borderType)使用空间滤波增强图像2.使用空间滤波平滑图像boxFilter函数的参数及其说明如下表所示。参数名称说明src接收constGMat类型。表示输入图像。无默认值ksize接收constSize类型。表示核的尺寸。无默认值anchor接收constPoint类型。表示锚位于单元的中心。默认值为(-1,-1)normalize接收bool类型。表示标志位,指定内核是否按其区域规范化。默认值为TrueborderType接收int类型。表示用于推断图像外部像素的某种边界模式。默认值为BORDER_DEFAULT定义中值滤波器的medianBlur函数的语法格式如下。cv2.medianBlur(src,ksize,dst),函数的参数及其说明如下表。参数名称说明src接收constGMat类型。表示输入图像。无默认值ksize接收int类型。表示核线性长度,必须为奇数。无默认值使用空间滤波增强图像2.使用空间滤波平滑图像参数名称说明src接收constGMat类型。表示输入图像。无默认值ksize接收constSize类型。表示核的尺寸。无默认值sigmaX接收double类型。表示高斯核在x轴方向的标准差。无默认值sigmaY接收double类型。表示高斯核在y轴方向的标准差。默认值为0borderType接收int类型。表示用于推断图像外部像素的某种边界模式。默认值为BORDER_DEFAULT定义高斯滤波器的gaussianBlur函数的语法格式如下。cv2.GaussianBlur(src,ksize,sigmaX,sigmaY,borderType),GaussianBlur函数的参数及其说明如下表所示。使用空间滤波增强图像2.使用空间滤波平滑图像通过OpenCV调用boxFilter函数、medianBlur函数和GaussianBlur函数,可实现盒式滤波器、中值滤波器和高斯滤波器,效果如下图所示。(a)(b)(d)(c)在右图中(a)、(b)、(c)、(d)分别为添加噪声后的原图像、盒式滤波器处理后的结果、中值滤波器处理后的结果、高斯滤波器处理后的结果。将右图中不同滤波器的平滑结果进行对比可以看出,对于添加了噪声的车牌图像,盒式滤波器的平滑效果与理想结果有较大出入。而平滑效果最好的是中值滤波器。使用空间滤波增强图像3.使用空间滤波锐化图像对于抓取的车牌图像,车牌号往往会出现车牌号边缘扭曲或者符号不明显的情况。通过锐化空间滤波器突出灰度的过渡部分,可以实现锐化的目的。在介绍锐化滤波器之前,先介绍导数在数字环境下的一些基本性质。数字函数的导数是用差分来定义的。定义差分的方法有多种,但一阶导数的任何定义都要满足如下3点要求。(1)恒定灰度区域的一阶导数必须为零。(2)灰度台阶或斜坡开始处的一阶导数必须非零。(3)灰度斜坡上的一阶导数必须非零。二阶导数的任何定义都要满足如下3点要求。(1)恒定灰度区域的二阶导数必须为零。(2)灰度台阶或斜坡开始处的二阶导数必须非零。(3)灰度斜坡上的二阶导数必须非零。使用空间滤波增强图像3.使用空间滤波锐化图像

(3‑7)

式(3-7)和式(3-8)分别满足上述恒定灰度区域、灰度台阶或斜坡开始处、灰度斜坡3个方面关于一阶、二阶导数应满足的要求。(3‑8)使用空间滤波增强图像3.使用空间滤波锐化图像两个变量的Laplace算子的定义,如式(3-9)所示。(3-9)

(a)(b)(c)(d)

上图中,(a)拉普拉斯核可以实现式(3-9),并且该核为各向同性在关于x轴和y轴以90°为增量旋转时核不变。(b)拉普拉斯核用于实现包含对角项的扩展公式的核。(c)、(d)拉普拉斯核是由二阶导数定义得到的,但此时二阶导数为负。使用空间滤波增强图像3.使用空间滤波锐化图像对于空间非线性的图像锐化操作,可以通过一阶微分,即梯度处理实现。梯度处理可以使灰度图像中看不见的小斑点突出,拥有较好的在灰度平坦区域中增强小突变的能力。这对于车牌图像增强具有重要的意义。

(3‑10)

(3‑11)

使用空间滤波增强图像3.使用空间滤波锐化图像对于空间非线性的图像锐化操作,可以通过一阶微分,即梯度处理实现。梯度处理可以使灰度图像中看不见的小斑点突出,拥有较好的在灰度平坦区域中增强小突变的能力。这对于车牌图像增强具有重要的意义。

数字图像处理早期开发中,罗伯特使用交叉差值提出关于符合恒定灰度区域、灰度台阶或斜坡开始处、灰度斜坡表示的一阶导数定义,如式(3‑12)所示。

(3‑12)

使用空间滤波增强图像3.使用空间滤波锐化图像

式(3‑12)中所需的差值项可用右图中的(a)、(b)两个核来实现,这两个核称为Roberts交叉梯度算子。图中的(c)、(d)两个核称为Sobel算子。

在中心系数中使用权值2的原因是强调中心的重要程度来实现某种平滑。需要注意的是,右图中所有核的系数之和为0,当图像与系数之和为0的核卷积时,滤波后的图像元素之和也为0。使用各算子锐化图像结果如右图所示。在右图中,(a)、(b)、(c)、(d)分别为读入原图像的灰度图像、Roberts交叉梯度算子处理后的结果、Sobel算子处理后的结果和Laplace算子处理后的结果。可以看出经过锐化后的3组图像中,使用Roberts交叉梯度算子处理后的车牌图像结果较为理想,将车体与车牌信息凸显了出来。(a)(b)(c)(d)使用空间滤波增强图像4.使用空间滤波器模糊图像本小节主要介绍模糊集合在空间滤波器中的应用,使用模糊集合实现模糊车牌图像的功能。模糊集合在解决一些以不精确概念表述的问题时,有较好的解决方案与应用效果。

(3‑13)使用空间滤波增强图像4.使用空间滤波器模糊图像邻域中心处像素和邻域像素的灰度差如下图所示。把模糊集合应用于空间滤波时,基本方法是定义一个邻域特性,使用该特性截获滤波器检测出的效果,比如考虑检测一幅图像中各区域的边缘。

使用空间滤波增强图像4.使用空间滤波器模糊图像图中(a)为变换前的图像,(b)为变换后的结果。(a)(b)可以看出到的灰度变换结果还是比较理想的。处理后的图像灰度动态范围得到了扩展,所得到的图像也比原图更加明亮、清晰,图像的一些细节处理得较为妥当。1使用频率域滤波处理图像目录使用空间滤波增强图像2车牌复原3章节小结4频率域滤波是指通过傅里叶变换对图像进行处理。空间域滤波与频率域滤波之间的桥梁是卷积定理,变化最慢的频率成分与图像的平均灰度成正比;当远离变换原点时,图像变化缓慢的灰度部分对应低频,反之,当原点移开更远时,高频对应图像变化快速的灰度成分。对图像进行频率域滤波处理需要先将图像做频率谱转换,通常使用利用傅里叶变换将图像转换成为傅里叶谱,由灰度图像生成傅里叶谱。使用频率域滤波处理图像1.了解频率域滤波图xx灰度图像转为傅里叶谱图像使用频率域滤波处理图像2.使用频率域滤波平滑图像高频由灰度尖锐变化部分造成,例如边缘和噪声,可以通过使用低通滤波器即衰减高频而通过低频的滤波器来实现平滑车牌图像的功能。常用的低通滤波器有3种类型:理想低通滤波器

布特沃斯低通滤波器高斯低通滤波器使用频率域滤波处理图像理想低通滤波器

理想低通滤波器是一个以原点为圆心,以为半径的二维圆形滤波器,在使用该滤波器对图像进行滤波处理时,滤波器内部的图像信号可以无衰减地通过,该圆形滤波器外部所有频率的信号都被阻断而无法通过。该滤波器由函数H确定,如式下所示:

D0为一个正常数,D0(u,v)为频率域中点(u,v)与频率矩形中心的距离,上式中,P和Q为函数经零填充后的尺寸使用频率域滤波处理图像理想低通滤波器

下图为理想低通滤波器的透视图,圆内的值为1意味着允许图像信息完整地通过,而圆外值为0,意味着阻止信息。在频率域中,图像的信号绝大多数为低频信号,图像中图案的边缘或噪声处存在有较多的高频信号。图xx理想低通滤波器透视图及其俯视图使用频率域滤波处理图像理想低通滤波器

不同截止频率半径下的理想低通滤波器处理结果上图中左1为原始图,左2~3分别为截止频率D0半径取为10,30及60时候理想低通滤波器处理原始图像得到的效果图。从图315可以看出随着截止频率半径的改变,理想低通滤波处理的结果也会变化,选取的半径较小时,过滤掉了一些图案边缘的高频信号,导致图像中图案边界信息的丢失较多而表现出模糊程度大的现象,而随着半径的增加,保留下来的频率信号更多,只有较高频率的信号才会被过滤,因而处理后的图像模糊程度在降低。使用频率域滤波处理图像布特沃斯低通滤波器理想高通滤波器边缘太过于“陡峭”,对信息通过滤波器时只有两个选择,通过或者不通过,实际情况中的信息往往表现为连续的,一种能够平滑过滤信息的滤波器可能会更加有效,布特沃斯低通滤波器就是一种相对理想低通滤波而言能够更加“平滑”地处理截止频率半径边界的滤波器。截止频率位于距原点处的n阶布特沃斯低通滤波器的传递函数的定义如下式所示。上式中,D0为一个正常数,D0(u,v)为频率域中点

(u,v)

与频率矩形中心的距离,n表示为n阶数。使用频率域滤波处理图像布特沃斯低通滤波器选取不同截止频率D0及阶数n条件下滤波器的透视图像如图xx所示。从透视图像可以看出,D0取值越大滤波器的半径越大,对应的被“阻塞”的信号越少。不同截止频率D0及阶数n条件下布特沃斯低通滤波器的透视图像使用频率域滤波处理图像

高斯低通滤波器标准高斯函数在xy二维直角坐标系中为一条以y轴为对称轴的单峰曲线,x为0时候取得最大值1,随着x的绝对值增加,函数值趋近于0,高斯函数的这种特性也特别符合低通滤波性质,高斯低通滤波器的二维形式如下式所示。式中D0是频率域中点(u,v)到截止频率矩形中心的距离,σ是关于中心扩展度的度量。

使用频率域滤波处理图像高斯低通滤波器上左图为D0=5时对应的透视图,上右图为D0=3时对应的透视图。D0从图中可以看出,截止频率为3的时候,滤波器透视图像形状相比截止频率为5时显得更加尖锐。下左图为D0

=5时对应的俯视图像;下右图为D0=3时对应的俯视图像,从上图可看出截止频率为5的滤波器俯视图半径比截止频率为3滤波器俯视图的半径大。不同截止频率D0高斯低通滤波器透视图及俯视图像使用频率域滤波处理图像高斯低通滤波器

D0取不同值时高斯低通滤波器的滤波效果图上图中,左1为原始图像,2~3为D0分别取10、30及60时的滤波效果图,可以看出高斯低通滤波器跟布特沃斯滤波器滤波后的图像效果也比较相近。使用频率域滤波处理图像3.使用频率域滤波锐化图像频率域滤波锐化图像可以通过理想高通滤波器、布特沃斯高通滤波器和频率域的拉普拉斯算子以及同态滤波来实现。频率域的高通滤波可以使傅里叶变换的低频部分消减而不扰乱高频部分,锐化图像边缘和其他灰度急剧变化区域。

理想高通滤波器布特沃斯高通滤波器频率域的拉普拉斯算子同态滤波使用频率域滤波处理图像理想高通滤波器与过滤掉高频图像信号留下低频图像信号的理想低通滤波器相反,理想高通滤波器是一种仅允许截止频率半径外的高频信号通过来实现图像锐化的滤波器,理想高通滤波器的二维表达式如下式所示,透视图及俯视图如下图所示。上式中D0为一个正常数,D(u,v)

为频率域中点

(u,v)与频率矩形中心的距离。使用频率域滤波处理图像理想高通滤波器理想高通滤波器透视图及其俯视图理想低通滤波器的透视图如上图所示,与理想低通滤波器相反,圆内的值为0意味着完全阻断圆内图像信息,而圆外值为1,意味着信息完全通过。使用频率域滤波处理图像理想高通滤波器D0取不同值时高斯低通滤波器的滤波效果图处理后的结果如上图所示,高频信号保留了下来,而低频信号处为黑色,表示被阻止了通过。使用频率域滤波处理图像布特沃斯高通滤波器布特沃斯高通滤波器同样也是一种能够过滤掉图像低频信号,保留下图像高频信号的滤波器,截至频率为D0的n阶布特沃斯高通滤波器的二维表达式如下式所示。上式中D0为一个正常数,D(u,v)

为频率域中点

(u,v)与频率矩形中心的距离,

n为滤波器阶数。使用频率域滤波处理图像布特沃斯高通滤波器不同截止频率D0及阶数n条件下布特沃斯高通滤波器的透视图像上图中,左上为D0=1,n=2时透视图像;右上为D0=1,n=1时对应的透视图像,左下为D0=0.5,n=2时对应的透视图像;右下为D0=0.5,n=1时对应得透视图像。使用频率域滤波处理图像布特沃斯高通滤波器阶数n取2,D0取不同值时布特沃斯高通滤波器的滤波效果图上图中,左1为原始图像,2~3为D0取10、30及60时的滤波效果图,从上图可看出经过布特沃斯高通滤波器处理后,图像的高频信号得到了很好的保留,低频信号被阻止了。使用频率域滤波处理图像频率域的拉普拉斯算子拉普拉斯算子在空间域图像处理中可以起到增强图像的作用,在频率域同样可以应用拉普拉斯算子来对图像进行滤波处理。在频率域中通过应用拉普斯算子可以实现对图像的锐化。拉普拉斯频率域滤波器二维表达式如下式所示。上式中(u,v)为频率域中点。使用频率域滤波处理图像频率域的拉普拉斯算子频率域拉普斯滤波器透视图及俯视图上图中频率域普斯滤波器中间值大,4个角的值较少,表示4个角处的信号被阻止。使用频率域滤波处理图像频率域的拉普拉斯算子频率域拉普斯滤波器处理后结果上图中,左图为原始图像,右图为处理后结果,从图中可以看出频率域拉普斯滤波器处理后的图像保留了图像中部分的高频信息。使用频率域滤波处理图像同态滤波频率域同态滤波是基于照射-反射模型开发出的一种频率域处理过程,频率域同态滤波器可以同时实现对图像的对比度增强及压缩图像的灰度范围以达到改善图像外观的效果,频率域同态滤波器的二维表达式如下式所示。上式中D0为一个正常数,表示截止频率,D(u,v)为频率域中点(u,v)与频率矩形中心的距离,c为控制边缘坡度的锐利度,c在参数γH

与γL

之间过渡,γH与γL为控制高、低频信号衰减及增强的参数。使用频率域滤波处理图像同态滤波频率域同态滤波器透视图及俯视图上图为c取为1,γH取为2,γL取为0.5时的同态滤波器透视图,滤波器中心低频带的值较少而高频带的值均为1,说明频域率同态滤波器是高频率通过的。使用频率域滤波处理图像同态滤波频率域同态滤波器处理后结果上图中左图为原始图像,右图为频率域同态滤波处理后结果,从图中可看出经频率域同态滤波器处理后的图像颜色更深,图像中低频信息区域有一定程度模糊。1使用频率域滤波处理图像目录使用空间滤波增强图像2复原车牌图像3章节小结4使用频率域滤波处理图像1.了解噪声模型在数字图像中的噪声主要来源于图像的获取和传输过程。图像传感器的成像过程受诸多因素的影响,例如图像获取过程当中的环境条件和成像传感器自身的质量因素,都有可能产生影响图像质量的噪声。对于一些噪声模型,需要了解其空间特性和频率特性;噪声的空间特性是指定义噪声空间特性参数是否与图像相关,噪声的频率特性是指图像傅里叶域中噪声的频率内容,例如白噪声是指其傅里叶谱是常量。掌握一些重要噪声的概率密度函数,利用这些知识技术来复原车牌图像。本章节介绍的噪声模型如下:高斯噪声模型脉冲(椒盐)噪声模型使用频率域滤波处理图像高斯噪声模型高斯噪声是指其概率密度函数服从高斯分布(即正态分布)的一类噪声,常见的高斯噪声有起伏噪声、宇宙噪声、热噪声和散粒噪声等。由于高斯噪声在数学上的易处理性,所以在空间域和频率域中的实践应用中常用这种噪声模型。高斯噪声的概率密度函数如下式所示。在上式中,z表示灰度值,表示z的平均值或者期望值,σ表示z的标准差。标准差的平方称为z的方差。使用频率域滤波处理图像高斯噪声模型添加高斯噪声效果上图中左图为原始图像,右图为添加均值为0.1、方差为0.02的高斯噪声后车牌像,添加了高斯噪声后的车牌图像相比原图有一定程度地模糊化。使用频率域滤波处理图像脉冲(椒盐)噪声模型脉冲噪声是指在通信中出现的离散型噪声的统称,主要源于时间上无规则的突发性干扰因素。脉冲噪声的概率密度函数如下式所示。当b>a时,灰度级b在图像当中显示为一个亮点,灰度级a

在图像当中显示为一个暗点;同理当a>b时,灰度级a

在图像当中显示为一个亮点,灰度级b在图像中显示为一个暗点。当Pa或Pb为零时,该脉冲噪声称为单极脉冲。当Pa与Pb近似相等时,脉冲噪声值在图像上显示为类似随机分布的胡椒和盐粉颗粒,故此也将双极脉冲噪声称作椒盐噪声。使用频率域滤波处理图像脉冲(椒盐)噪声模型添加椒盐噪声后效果图上图中左图为原始图像,右图为添加椒盐噪声后的图像,从图像上看出添加椒盐噪声后的图像上出现许多椒盐状的小点。使用频率域滤波处理图像2.复原只存在噪声的图像均值滤波器自适应滤波器对于只存在噪声的车牌图像,特别是加性噪声的情况,可以利用空间滤波的方法复原车牌图像。主要可以使用均值滤波器、统计排序滤波器和自适应滤波器去除这些加性噪声。通过预估的先验噪声类型选择合适的滤波器,如果选错了滤波器会造成图像的损坏。均值滤波器主要包括算术均值滤波器、几何均值滤波器、谐波均值滤波器以及逆谐波均值滤波器。统计排序滤波器主要包括中值滤波器、最大值和最小值滤波器、中点滤波器以及修正的阿尔法均值滤波器。自适应滤波器主要包括自适应局部降低噪声滤波器、自适应中值滤波器等。本小节主要通过均值和自适应滤波器将车牌图像进行一定程度的复原。使用频率域滤波处理图像均值滤波器均值滤波也称作线性滤波,主要的算法思想是通过在图像上对目标像素给定一个模板,该模板包括了其周围8个像素,构成一个滤波模板,再用模板中的全体像素的平均值来代替原来的像素值。本小节主要介绍算术均值滤波器。

算术均值滤波器的表达式如上式所示,设Sxy是模板中心点(x,y)处、大小为

m×n的矩形子图像邻域的一组坐标。算术均值滤波器在Sxy定义的区域中计算车牌噪声图像g(x,y)的像素的算术平均值,得到点(x,y)处的复原图像的值。这种操作可以使用大小为m×n的一个空间滤波器来实现,滤波器的所有系数均为。使用频率域滤波处理图像均值滤波器均值滤波去除椒盐噪声结果上图中左图为原始车牌图像,中间的图为包含椒盐噪声的车牌图像,右图为经过均值滤波处理后的结果图像,从上图可看出经中值滤波处理后的椒盐噪声图像得到一定程度的修复,但仍存在明显的椒盐噪声痕迹。使用频率域滤波处理图像自适应滤波器自适应局部降低噪声滤波器的基础主要与随机变量的统计度量有关,最简单的就是随机变量的方差和均值。选取方差和均值作为自适应局部降低噪声滤波器的参数是非常合理的,因为这两个统计度量与图像外观紧密相关;均值可以表示在图像上计算均值的区域中的平均灰度的度量,而方差可以表示该区域对比度的度量。自适应局部降低噪声滤波器的表达式如下式所示。上式中,滤波器Sxy作用于局部区域,表示滤波器在该区域中心任意一点的响应;g(x,y)表示带噪图像在点上的值,表示污染f(x,y)以形成g(x,y)的噪声的方差,mL

表示在Sxy中像素的局部均值,表示在Sxy中像素的局部方差。使用频率域滤波处理图像自适应滤波器自适应中值滤波处理只存椒盐噪声车牌图像结果上中左图为原始车牌图像,中间的图为只存椒盐噪声车牌图像,右图为只存椒盐车牌图像经自适应中值滤波处理后结果图像。经自适应中值滤波处理后的只存椒盐噪声图得到很明显的修复,已无明显的椒盐噪声痕迹。1使用频率域滤波处理图像目录使用空间滤波增强图像2复原车牌图像3章节小结4

本章主要介绍了空间滤波和频率域滤波的概念及其应用。首先介绍了常见的空间滤波及其在图像增强中的应用,具体包括利用空间滤波实现图像的锐化、去噪及对比度增强等的处理。然后介绍了与空间滤波对应的频率域滤波,同样从常见的频率域滤波开始介绍,然后介绍了利用低通滤波去除高频噪音及利用高通滤波对图像进行锐化等操作,最后介绍了常见的噪声生成模型及利用相应的滤波复原只存在噪声的车牌图像。章节小结第4章形态学处理1使用开/闭操作处理车牌图像目录腐蚀和膨胀车牌图像2使用基本的形态学算法处理图像3章节小结4腐蚀和膨胀车牌图像1.了解腐蚀与膨胀(1)形态学基本概念腐蚀运算与膨胀运算可以理解为对目标集合的处理方法,以对一面白墙涂刷为例,腐蚀运算像针对墙上的目标区域有规则地刷白色,从而缩小目标区域的尺寸;膨胀运算则像针对墙上的目标区域有规则地刷彩色,从而扩大目标区域的尺寸。在介绍腐蚀与膨胀运算之前,先对集合、前景像素、背景像素和结构元等形态学基本概念进行介绍。集合:在二值图像中,集合是二维整数空间的成员,集合的每个元素都是一个二维向量前景像素:通常将目标像素定义为前景像素背景像素:图像中除前景像素外的其他像素称为背景像素结构元:可以理解为特殊的像素过滤器腐蚀和膨胀车牌图像(1)形态学基本概念由于图像在计算机中表示为矩阵序列,并且目标集合的形状通常是任意的。用不同表示方法表示的物体与结构元如下图所示:图像示例:第一行展示了表示为集合的物体、表示为图形图像的物体和数字图像结构元示例:第二行展示了表示为集合的结构元、表示为图形图像的结构元和数字图像对应的结构元前景与背景像素:将表示为目标像素的蓝色前景像素嵌入矩阵背景中,背景颜色为白色腐蚀和膨胀车牌图像(2)反射与平移

(4‑1)

(4‑2)

腐蚀和膨胀车牌图像(3)腐蚀

(4‑3)

腐蚀和膨胀车牌图像(4)膨胀

(4‑4)

腐蚀和膨胀车牌图像(4)膨胀不同结构元对集合进行膨胀运算如图所示。图中(a)、(b)、(c)、(d)、(e)分别是:

(a)(b)(c)(d)(e)腐蚀和膨胀车牌图像(5)对车牌图像进行腐蚀、膨胀使用OpenCV库中的erode函数可实现对图像进行腐蚀运算。erode函数的语法格式:cv2.erode(src,kernel,dst,anchor,iterations,borderType,borderValue),erode函数的参数及其说明如下表所示。参数名称说明src接收constGMat类型。表示输入图像。无默认值kernel接收constMat类型。表示进行运算的内核。默认使用参考点位于中心的3×3的内核anchor接收constPoint类型。表示锚位于单元的中心。默认值为Point(-1,-1)iterations接收int类型。表示迭代使用函数的次数。默认值为1borderType接收int类型。表示用于推断图像外部像素的某种边界模式。默认值为BORDER_CONSTANTborderValue接收constScalar类型。表示当边界为常数时的边界值。默认值为morphologyDefaultBorderValue()腐蚀和膨胀车牌图像(5)对车牌图像进行腐蚀、膨胀使用OpenCV库中的dilate函数可实现对图像进行腐蚀运算。dilate函数的语法格式:cv2.dilate(src,kernel,dst,anchor,iterations,borderType,borderValue),

dilate函数的参数及其说明如下表所示。参数名称说明src接收constGMat类型。表示输入图像。无默认值kernel接收constMat类型。表示进行运算的内核。默认使用参考点位于中心的3×3的内核anchor接收constPoint类型。表示锚位于单元的中心。默认值为Point(-1,-1)iterations接收int类型。表示迭代使用函数的次数。默认值为1borderType接收int类型。表示用于推断图像外部像素的某种边界模式。默认值为BORDER_CONSTANTborderValue接收constScalar类型。表示当边界为常数时的边界值。默认值为morphologyDefaultBorderValue()腐蚀和膨胀车牌图像(5)对车牌图像进行腐蚀、膨胀对车牌图像进行腐蚀、膨胀后的图片对比如下图所示。(b)原图与膨胀车牌图像结果对比(a)原图与腐蚀车牌图像结果对比在进行腐蚀运算后,车牌图像明显更为精细;进行膨胀运算后,车牌图像的线条明显“增长”,整体更为平滑。1使用开/闭操作处理车牌图像目录腐蚀和膨胀车牌图像2使用基本的形态学算法处理图像3章节小结4使用开/闭操作处理车牌图像1.了解开操作与闭操作开操作通常用于平滑物体的轮廓,可断开狭颈、消除细长的突出物;闭操作同样用于平滑轮廓,但是与开操作的不同点在于,闭操作通常弥合狭颈和细长的沟壑、消除小孔,并填充轮廓中的缝隙。(1)开操作

(4‑5)在式(4‑7)中,A是前景像素集合,B为结构元。结构元B对集合A进行开操作,首先进行结构元B对集合A的腐蚀运算,然后结构元B对腐蚀之后的集合A进行膨胀运算。使用开/闭操作处理车牌图像(1)开操作

通过图中可以看出,删除目标像素更窄区域的能力是形态学开操作的关键特征之一。(a)(b)(c)(d)使用开/闭操作处理车牌图像(2)闭操作与开操作类似,结构元B对集合A的闭操作的定义如式(4-6)所示。

(4-6)在式(4‑6)中,A是前景像素集合,B为结构元。结构元B对集合A进行闭操作,可以理解为结构元B首先对集合A进行膨胀运算,然后对膨胀之后的结构进行腐蚀。

(a)(b)(c)(d)使用开/闭操作处理车牌图像(3)对车牌图像进行开操作、闭操作对车牌图像进行开、闭操作使用morphologyEx函数实现,morphologyEx函数的语法格式如下。cv2.morphologyEx(src,op,kernel,dst,anchor,iterations,borderType,borderValue),erode函数的参数及其说明如下表所示。参数名称说明src接收constGMat类型。表示输入图像。无默认值op接收MorphTypes类型。表示形态学运算的类型。无默认值kernel接收constMat类型。表示进行运算的内核。默认使用参考点位于中心的3×3的内核anchor接收constPoint类型。表示锚位于单元的中心。默认值为Point(-1,-1)iterations接收int类型。表示迭代使用函数的次数。默认值为1borderType接收int类型。表示用于推断图像外部像素的某种边界模式。默认值为BORDER_CONSTANT使用开/闭操作处理车牌图像(3)对车牌图像进行开操作、闭操作使用morphologyEx函数时通常只需要设置参数src、op、kernel和anchor。如果要进行开操作,设置op参数值设置为MORPH_OPEN;如果要闭操作时,将op参数值设置为MORPH_CLOSE。将图像放大至像素级别来比较开操作前后图像的平滑程度,(a)为原图像,(b)为进行开操作后的图像进行开操作后,图像中的信息较为平滑,细长的突出有一定消除。进行闭操作后,车牌图像中的信息明显平滑,如图(d)所示,更有利于后续的数据提取。(a)(b)(c)(d)1使用开/闭操作处理车牌图像目录腐蚀和膨胀车牌图像2使用基本的形态学算法处理图像3章节小结4使用基本的形态学算法处理图像1.了解基本的形态学算法在形态学处理中,还有很多运算是以腐蚀与膨胀运算为基础。本小节将介绍一些除腐蚀和膨胀之外的基本形态学算法以及对应的应用效果。在处理二值图象时,基本的形态学算法有孔洞填充、骨架提取和提取连通分量等。形态学的主要作用是改变目标集合的形态以及提取图像中用于表示和描述形状的有用成分。为了更清晰的说明形态学算法的原理,将会借助讲述膨胀腐蚀运算时带有前景像素和背景像素的图像集合,其中前景像素值为1,背景像素值为0。(1)孔洞填充像素孔是目标集合不连贯的像素区域,而孔洞是被前景像素连成的边框所包围的背景区域。使用基本的形态学算法处理图像(1)孔洞填充使用集合的方式解释孔洞填充算法的原理,孔洞填充运算的准备如图4‑13所示。假设有目标集合A,且目标集合A是8连通的边界,在已知每个孔洞中的某一个点后,利用前景像素(值为1)填充孔洞。

(4‑7)

使用基本的形态学算法处理图像(1)孔洞填充

使用基本的形态学算法处理图像(1)孔洞填充对图像进行孔洞填充运算基于dilate函数,但实现孔洞填充运算的过程与实现膨胀运算的过程不同,仅使用dilate函数无法解决问题,要获得二值图像首先要通过cvtColor函数将输入图像转为灰度图像。cvtColor函数的语法格式如下。cv2.cvtColor(src,code,dstCn)。cvtColor函数的参数及其说明如下表所示。参数名称说明src接收constGMat类型。表示输入图像。无默认值code接收int类型。表示所使用的颜色映射类型。默认值为COLOR_RGB2GRAY,表示转为灰度图像dstCn接收int类型。表示输出的通道数。默认值为0使用基本的形态学算法处理图像(1)孔洞填充得到灰度图像后使用threshold函数获得灰度图像的二值图像,二值图像中只有黑白像素。threshold函数的语法格式如下。cv2.threshold(src,thresh,maxval,type)threshold函数的参数及其说明如下表所示。参数名称说明src接收constGMat类型。表示输入图像。无默认值thresh接收Double类型。表示转换过程中使用的阈值。无默认值maxval接收Double类型。表示当参数为CV_THRESH_BINARY和CV_THRESH_BINARY_INV时的最大值。无默认值type接收int类型。表示生成二值图像所选用的方法。无默认值使用基本的形态学算法处理图像(1)孔洞填充获取二值图像的垂直尺寸和水平尺寸,构造进行膨胀运算所需的阵列F,最后将结果与原图像的补集进行与运算。原理是以原图像的补集作为掩模,用来限制膨胀结果,以带有白色边框的黑色图像作为初始标记集合,用结构元对其进行连续膨胀,直至收敛;最后对标记集合取补集得到最终图像,将最终图像与原图相减可得到填充图像。孔洞填充图像的结果如下图所示。图中自左至右依次为原图、二值化结果、孔洞填充后的结果。在图中可以看到使用孔洞填充算法可以将本应是一个近圆形整体的细胞补充完整,更有利于后续的目标集合提取。使用基本的形态学算法处理图像(2)连通分量从图像中提取连通分量是许多自动图像分析应用的核心。自动检测应用会频繁使用连通分量,例如检测图像中的异物并提取异物图像。

(4‑8)

使用基本的形态学算法处理图像(2)连通分量

使用基本的形态学算法处理图像(2)连通分量对图像进行提取连通分量运算同样基于dilate函数,实现提取连通分量算法的过程是综合膨胀运算与交集运算的过程,所以连通分量小节中关于dilate函数的使用不再给出。提取连通分量的结果一个是展现图像的二值化,另一个是展现由二值化图像提取出的每个连通分量的像素数(只截取部分)。其中,每个连通分量的像素数可以通过PhotoShop软件进行核对读取,提取连通分量结果展示,如下图所示。使用基本的形态学算法处理图像(3)凸壳在图像处理过程中,需要基于像素的算法能够找到物体的质心来代表该物体,但是在实际中,环境不理想或相机捕捉不稳定等原因,可能会导致图像在二值化时物体本身形状发生缺损,像素化算法就无法找到物体真正的质心。面对无法找到真正质心的情况可适当进行凸壳处理,弥补凹损,凸壳算法能够找到包含原始形状的最小凸多边形。凸壳算法的定义如式(4‑9)所示。

(4‑9)

使用基本的形态学算法处理图像(3)凸壳

(4‑10)

使用基本的形态学算法处理图像(3)凸壳右图所示的过程有一个明显的缺点,凸壳会超出目标集合的边界,这样不仅凸壳的效果不佳而且有违凸壳的定义。可以设定用于限制凸壳不超过目标集合的边界像素,限制凸壳增长后的效果,如下图所示,可以看出添加这一限制条件后图像不失去其凸性。使用基本的形态学算法处理图像(3)凸壳对图像进行凸壳运算基于convexHull函数,其函数的语法格式如下。cv2.convexHull(points,hull,clockwise,returnPoints),convexHull函数的参数及其说明,如表所示。参数名称说明points接收InputArray。表示输入的二维点集,存储在vector或Mat中。无默认值hull接收OutputArray类型,可以为整型向量或点集向量。表示凸壳的二维坐标值。无默认值clockwise接收bool类型。表示凸壳方向的标志位,值为True时,表示基于顺时针方向;值为False时,表示基于逆时针方向。默认值为FalsereturnPoints接收bool类型。表示函数的输出类型,当OutputArray是一个矩阵变量时,值设置为True,输出点坐标,否则,输出索引坐标。默认值为True使用基本的形态学算法处理图像(3)凸壳对图像进行凸壳运算选择易于展现提取效果的手势图像,方便清楚地看到带有不规则结构的图像中轮廓提取的效果。凸壳运算的效果如下图所示。图中左侧为目标图像,右侧为结果图像。在目标图像中绘制了两个凸壳,一个是整个手势外围的凸壳,刚好包围整只手的外侧;另一个是两根手指形成的内部图形,类似于“O”形的凸壳,符合进行凸壳运算想要达到的效果。使用基本的形态学算法处理图像(4)细化在计算机对图像进行识别或特征值提取的过程中,过于粗的线条会对识别造成一定程度的干扰,而细化操作可以获得一个特征值明显的目标图像,进一步选择适当的特征进行分类,从而得到理想的结果。在细化运算中,假设运算的目标是结构元B对前景像素目标集合A进行细化,根据击中-击不中变换,细化运算定义如式(4-11)所示。

(4-11)

使用基本的形态学算法处理图像(4)细化使用上图中的结构元对下图中的前景像素目标集合进行细化操作,细化结束后,对细化的结果进行了一次m连通的转换,转换的效果为消除了多个路径,可以看出,消除后的效果更贴合原前景像素目标集合的细化。使用基本的形态学算法处理图像(4)细化进行细化运算常用的算法是基于映射矩阵的查表法,基本原则是从源图像中去掉部分图像,但整体要保持原来的形状,实际上是保持原图的骨架。判断一个点P是否能去掉是以8个相邻点(八连通)的情况来作为判据,具体判据如下。(1)内部点不能删除(2)孤立点不能删除(3)直线端点不能删除(4)如果P是边界点,去掉P后,如果连通分量不增加,则P可删除在上图中,从上到下,自左至右,第一个图与第二个图的点不能去除,因为中心点是内部点;第三个图像的中心点也不能去除,因为去除后会使原来相连的部分断开;第四个图像的点可以去除,因为其满足判定依据;第五个图像与第六个图像不能删除,因为中心点皆为端点使用基本的形态学算法处理图像(4)细化细化运算的效果展示,如下图所示。图左侧为目标图像,右侧为结果图像,电路板上元件数目繁多,很难一眼看出线路大体纹理与元件大小分布,转为二值图像再细化之后,纹理与相对布局大小相对清晰。使用基本的形态学算法处理图像(5)粗化粗化是细化的形态学对偶,粗化的定义同样基于击中-击不中变换,粗化的定义如式(4-12)所示。

(4-12)

在右图中,自上到下、自左到右分别是:带有目标像素集合A的图像I;图像I的补集;对补集进行细化后的图像;对细化后的图像再求补集的图像;去除断点的最终结果。使用基本的形态学算法处理图像(5)粗化从图426中可以看出,粗化处理的过程可能会产生断点。所以在粗化处理获得结果前,需要进行断点的删除。对补集中前景像素目标集合的细化处理形成了粗化处理的边界。边界这一限制特性对于获得效果较为理想的粗化图像是有利的,但是边界不会在进行粗化处理时直接出现,因此可以对背景像素进行细化运算来实现原目标集合的粗化运算。对图像进行粗化运算的实现基于击中-击不中变换的二值图像补集操作,因此不再单独给出实现过程,并且现在更常使用膨胀运算对图像进行粗化,效果明显的同时效率更高。使用基本的形态学算法处理图像(5)骨架骨架可以理解为图像的中轴,如一个长方形的骨架是长方形上的中轴线;圆的骨架是圆的直径;直线的骨架是直线自身;孤立点的骨架也是自身。有效理解数字图像处理中骨架的方法主要有如下2种。基于烈火模拟的方法。设想在同一时刻,将目标的边缘线都“点燃”,火的前沿

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论