1、第5章 图像预处理技术第5章 图像预处理技术5.1 图像预处理的作用图像预处理的作用5.2 图像的表达、显示与存储图像的表达、显示与存储5.3 灰度变换灰度变换5.4 几何变换几何变换5.5 直方图均衡化直方图均衡化5.6 图像滤波图像滤波5.7 图像锐化图像锐化5.8 图像二值化图像二值化本章小结本章小结第5章 图像预处理技术5.1 图像预处理的作用图像预处理的作用图像采集后,为了更有效地获取其中的信息,需要对图像进行进一步加工处理。与人类的视觉过程相似,图像采集的过程就像人类的眼睛。但是,即便有了眼睛,如果没有大脑,我们也不能“看”到任何事物。所以,对这些图像数据的处理是机器视觉的关键。第
2、5章 图像预处理技术图像在传送和转换(成像、扫描、传输以及显示等)过程中,由于噪声、衰减等原因,一般会造成不同程度的图像质量下降。在摄像过程中,由于光学系统的失真、相机的相对运动、大气流动的影响等都会造成摄制图像模糊以及平移、旋转等问题。因此,通过图像预处理来改善图像质量显得十分重要。图像预处理通常是针对给定图像的应用场合,有目的地强调图像的整体或局部特性,将原来不清晰的图像变得清晰或强调某些感兴趣的特征,抑制不感兴趣的特征,扩大图像中不同特征之间的差别,改善图像质量,丰富信息量,提升图像分析和识别的效果。第5章 图像预处理技术常用的图像预处理方式包括灰度变换、直方图修正、图像平滑、图像锐化、
3、图像二值化等。图像增强与感兴趣的物体特性、观察者的习惯和处理目的密切相关,尽管处理方式多种多样,但它带有很强的针对性。因此,图像预处理算法的应用也是有针对性的,并不存在一种通用的、适应各种应用场合的预处理算法。一般情况下,为了得到比较满意的增强效果,常常需要同时对几种增强算法进行大量试验,从中选出视觉较好、计算量较小、同时满足要求的算法作为最优的预处理算法。第5章 图像预处理技术5.2 图像的表达、图像的表达、显示与存储显示与存储5.2.1 图像的表达与显示图像的表达与显示根据应用领域的不同,可以有多种不同的方法来表达和表示图像,或将图像以一定的形式显示出来。图像表达是图像显示的基础,而图像显
4、示是机器视觉系统的重要模块之一。第5章 图像预处理技术要对图像进行表达和显示,需要对图像的各个单元进行表达和显示。图像中的每个基本单元叫作图像元素,用 Picture表示图像时称为像素(PictureElement)。对于2D 图像,英文里常用 Pixel代表像素。对于3D图像,英文里常用 Voxel代表其基本单元,简称体素(VolumeElement)。第5章 图像预处理技术1.图像表达图像表达一幅2D图像可以用一个2D数组来表示,常将一幅2D图像写成一个2D的 M N 矩阵(其中 M 和N 分别为图像像素的总行数和总列数):上式就是图像的矩阵表达形式,矩阵中的每个元素对应一个像素。第5章
5、图像预处理技术2.图像显示图像显示图像的显示和表达是密切相关的,图像显示是图像的可视表达方式。对2D图像的显示可以采取多种形式,其基本思路是将2D图像看作在2D空间中的一种幅度分布。根据图像的不同,采取的显示方式也不同。对于二值图像,在每个空间位置的取值只有两个,可用黑白来区分,也可用0和1来区分。第5章 图像预处理技术图5-1所示为对同一幅2D 的二值图像的3种不同的显示方式。在图像表达的数学模型中,一个像素区域常用其中心来表示,基于这些中心的表达形式就是将图像显示成平面上的离散点集,对应于图5-1(a);如果将像素区域用其所覆盖的区域来表示,就得到图5-1(b)所示的图形;把幅度值标在图像
6、中相应的位置,就得到图5-1(c)所示的类似矩阵表达的结果。用图5-1(b)所示的形式也可表示有多个灰度的图像,此时需要用不同深浅的色调表示不同的灰度。用图5-1(c)所示的形式也可表示有多个灰度的图像,此时将不同灰度用不同的数值表示。第5章 图像预处理技术图5-1 表达同一幅44二值图像的3种方式第5章 图像预处理技术图5-2所示为两幅典型的灰度图像,它们是常用的公开图像,或称标准图像。图5-2(a)所用的坐标系统常在屏幕显示中被采用(屏幕扫描是从左向右、从上向下进行的),它的原点在图像的左上角,纵轴标记图像的行,横轴标记图像的列。f(x,y)既可代表这幅图像,也可表示在(x,y)行列交点处
7、的图像值。图5-2(b)所用的坐标系统常在图像计算中被采用,它的原点在图像的左下角,横轴为x 轴,纵轴为y 轴(与常用的笛卡儿坐标系相同)。同样,f(x,y)既可代表这幅图像,也可表示在(x,y)坐标处像素的值。第5章 图像预处理技术图5-2 标准图像显示示例第5章 图像预处理技术5.2.2 图像的存储图像的存储1.BMP格式格式BMP格式是 Windows环境中的一种标准(但很多 Macintosh应用程序不支持它),它的全称是 Microsoft设备独立位图(DeviceIndependentBitmap,DIB)。BMP图像文件也称位图文件,包括3部分:位图文件头(也称表头);位图信息(
8、常称调色板);位图阵列(即图像数据)。第5章 图像预处理技术2.GIF格式格式GIF格式是一种公用的图像文件格式标准,它是8位文件格式(一个像素一个字节),最多只能存储256色图像。GIF文件中的图像数据均为压缩过的。GIF文件结构较复杂,一般包括7个数据单元,分别为:文件头、通用调色板、图像数据区以及4个补充区。其中,表头和图像数据区是不可缺少的单元。一个 GIF文件中可以存放多幅图像(这个特点对实现网页上的动画效果很有利),所以文件头中包含适用于所有图像的全局数据和仅属于其后那幅图像的局部数据。第5章 图像预处理技术 3.TIFF格式格式TIFF格式是一种独立于操作系统和文件系统的格式(在
9、 Windows环境和 Macintosh机上都可使用),便于在软件之间进行图像数据交换。TIFF图像文件包括文件头(表头)、文件目录(标识信息区)和文件目录项(图像数据区)。文件头只有一个,且在文件前端,包含数据存放顺序、文件目录的字节偏移信息。文件目录包含文件目录项的个数信息,并有一组标识信息,它会给出图像数据区的地址。文件目录项是存放信息的基本单位,也称为域。第5章 图像预处理技术TIFF格式支持任意大小的图像,文件可分为:二值图像、灰度图像、调色板彩色图像和全彩色图像四类。一个 TIFF文件中可以存放多幅图像,也可存放多份调色板数据。第5章 图像预处理技术4.JPEG格式格式JPEG
10、格式源自对静止灰度或彩色图像的一种压缩标准JPEG,在使用有损压缩方式时可节省相当大的空间,目前数码相机中均使用这种格式。JPEG 标准只是定义了一个规范的编码数据流,并没有规定图像数据文件的格式。Cube Microsystems公司定义了一种JPEG 文件交换格式(JPEGFileInterchangeFormat,JFIF),JFIF图像是一种使用灰度来表示或使用 Y、Cb、Cr分量彩色表示的JPEG 图像,它包含一个与JPEG 兼容的文件头。一个JFIF文件通常包含单个图像,该图像可以是灰度的(其中的数据为单个分量),也可以是彩色的(其中的数据是 Y、Cb、Cr分量)。第5章 图像预处
11、理技术5.3 灰灰 度度 变变 换换在图像处理中,空域是指由像素组成的空间,也就是图像域。空域增强方法指直接作用于像素并改变其特性的预处理方法。具体的增强操作可仅定义在每个像素位置(x,y)上,此时称为点操作。增强操作还可定义在每个(x,y)的某个邻域上,此时常称为邻域操作,定义为其中,f(x,y)和g(x,y)分别为增强前后的图像,而E 代表增强操作。第5章 图像预处理技术点操作是一种通过对图像中的每个像素值(即像素点上的灰度值)进行计算的操作,又叫作点运算。通常邻域是指一个远远小于图像尺寸的形状规则的像素块,例如22、33、44的正方形,或用来近似表示圆及椭圆等形状的多边形。一幅图像所定义
12、的邻域应该具有相同的大小,信号与系统分析中的卷积基本运算,在实际的图像处理中都体现为某种特定的邻域运算。第5章 图像预处理技术5.3.1 点运算点运算点运算是像素的逐点运算,它将输入图像映射为输出图像,输出图像每个像素点的灰度值仅由对应的输入像素点的灰度值决定。点运算不会改变图像内像素点之间的空间关系。设输入图像为A(x,y),输出图像为B(x,y),则点运算可表示为第5章 图像预处理技术1.线性点运算线性点运算线性点运算是指灰度变换函数f 为线性函数时的运算。用DA 表示输入点的灰度值,DB 表示相应输出点的灰度值,如图5-3所示,则函数的形式如下:当a1时,输出图像的对比度会增大;当a0(
13、或b0)时,输出图像在整体效果上比输入图像要明亮(或灰暗)。第5章 图像预处理技术例如,如果对图5-4(a)所示的 PCB板子利用如图5-3(b)所示的灰度变换函数进行点运算,那么将产生如图5-4(b)所示的效果。第5章 图像预处理技术图5-3 线性变换函数第5章 图像预处理技术图5-4 图像对比度减小前、后的比较第5章 图像预处理技术2.非线性点运算非线性点运算非线性点运算常用的有伽马变换,又称为指数变换或幂变换,是一种常用的灰度非线性变换。伽马变换所用数学表达式为其中,c为尺度比例常数,为伽马系数,f(x,y)与g(x,y)的取值范围均为0,1,esp为补偿系数。第5章 图像预处理技术在进
14、行变换时,通常需要先将0255的灰度动态范围变换到01的动态范围,然后执行伽马变换后再恢复原动态范围。和对数变换一样,伽马变换可以强调图像的某个部分。伽马变换结果如图5-5所示,其中图5-5(a)为原图,图(b)和图(c)为伽马系数分别取0.5和1.8时变换后得到的图像。第5章 图像预处理技术图5-5-图像的伽马变换第5章 图像预处理技术5.3.2 图像的邻域操作图像的邻域操作邻域操作包括滑动邻域操作和分离邻域操作两种类型。在进行滑动邻域操作时,输入图像将以像素为单位进行处理,即对于输入图像的每一个像素,指定的操作将决定输出图像相应的像素值。分离邻域操作是基于像素邻域的数值进行的,输入图像一次
15、处理一个邻域,即图像被划分为矩形邻域,分离邻域操作将分别对每一个邻域进行操作,求取相应输出邻域的像素值。第5章 图像预处理技术1.滑动邻域操作滑动邻域操作滑动邻域操作一次处理一个像素,输出图像的每个像素都是通过对输入图像某邻域内的像素值采用某种代数运算得到的。图5-6所示为一个56矩阵中三个元素的23滑动邻域,每一个邻域的中心像素都用一个黑点标出。实现一个滑动邻域操作需要以下几个步骤:选择一个单独的待处理像素;判断像素的邻域;对邻域中的像素值应用一个函数求值并返回计算结果;找到输出图像与输入图像对应位置处的像素,将该像素的数值设置为上一步得到的返回值。对输入图像的每一个像素重复上述步骤。第5章
16、 图像预处理技术图5-6 56矩阵中三个元素的23滑动邻域第5章 图像预处理技术图5-7所示描述了一个均衡化操作。滑动邻域操作首先对邻域内的6个像素值求和,然后除以6,将结果作为邻域中心像素的取值。注意,邻域内某些像素很可能会丢失,尤其是当中心像素位于图像边界时。使用滑动邻域操作可以实现许多滤波操作(如线性滤波的卷积操作),这些操作在本质上都是非线性操作。第5章 图像预处理技术图5-7 滑动邻域操作前、后图像显示效果比较第5章 图像预处理技术2.分离邻域操作分离邻域操作分离邻域是将矩阵划分为mn 后得到的矩形部分。分离邻域从左上角开始覆盖整个矩阵,邻域之间没有重叠部分。如果分割的邻域不能很好地
17、适应图像的大小,那么需要为图像进行零填充。图5-8所示为一个被划分为九个24邻域的510矩阵,零填充过程将数值0添加到图像矩阵所需的底部和右边,此时图像矩阵大小变为612。第5章 图像预处理技术图5-8 划分为9个24邻域的510矩阵第5章 图像预处理技术5.4 几几 何何 变变 换换5.4.1 几何运算与坐标系统几何运算与坐标系统空间变换的一般定义为其中,f 表示输入图像;g 表示输出图像;坐标(x,y)指的是空间变换后的坐标,要注意这时的坐标已经不是原来的坐标(x,y)了;a(x,y)和b(x,y)分别是图像的x 和y 坐标的空间变换函数。第5章 图像预处理技术显然,要了解空间变换,首先就
18、要对图像的坐标系统有一个清楚的了解。图像处理过程中一般采用像素坐标系统和空间坐标系统两种坐标系统。描述位置最方便的方法就是采用像素坐标。在这种坐标系统下,图像被视为如图5-9(a)所示的离散元素网格,网格按照从上到下、从左到右的顺序排列。在很多情况下,空间坐标系统是非常有用的,此时坐标(3.3,1.2)是有意义的,该位置与坐标(3,1)是有区别的。图5-9(b)说明了这种空间坐标系统的定位方法。第5章 图像预处理技术图5-9 像素坐标系统和空间坐标系统第5章 图像预处理技术实现几何运算有两种方法:一为前向映射法,即将输入像素的灰度一个个地转移到输出图像中,如果一个输入像素被映射到四个输出像素之
19、间的位置,则其灰度值就按插值法在四个输出像素之间进行分配;二为后向映射法(像素填充法),即将输出像素逐个地映射回输入图像中,若输出像素被映射到四个输入像素之间的位置,则其灰度由它们的插值来确定。第5章 图像预处理技术5.4.2 灰度插值灰度插值灰度插值是用来估计像素在图像像素间某一位置处取值的过程。灰度插值的方法有很多种,但是插值操作都是相同的。无论使用何种插值方法,首先都需要找到与输出图像像素相对应的输入图像点,然后通过计算该点附近某一像素集合的加权平均值来确定输出像素的灰度值。像素的权重是根据像素到点的距离而定的,不同插值方法的区别就在于所考虑的像素集合不同。第5章 图像预处理技术最近邻插
20、值是一种最简单的插值方法,但是这种方法有时不够精确。复杂一点的方法是双线性插值,该方法利用的是(x,y)点的四个最近邻像素的灰度值,如图5-10所示,先利用(0,0)和(1,0)处 的 值 f(0,0)和 f(1,0)线 性 插 值 出(x,0)处 的 值 f(x,0),利 用(0,1)和(1,1)处的值f(0,1)和f(1,1)线性插值出(x,1)处的值f(x,1),然后利用(x,0)和(x,1)处的值f(x,0)和f(x,1)线性插值出(x,y)处的值f(x,y)。第5章 图像预处理技术图5-10 双线性插值示意图第5章 图像预处理技术5.4.3 空间变换空间变换空间变换用于将输入图像的像
21、素位置映射到输出图像的新位置处。常用的图像几何操作(如调整图像大小、旋转或剪切)都是空间变换的例子。空间变换既包括可用数学函数表达的简单变换(如平移、拉伸等仿射变换),也包括依赖于实际图像而不易用函数形式描述的复杂变换。第5章 图像预处理技术空间变换又叫仿射变换,其思想是通过仿射变换矩阵,把旋转后的图像坐标仿射回原图像点,并通过一定的方法计算出该点在原图像上的灰度值,作为旋转后的图像上该点的灰度值。仿射变换可以用以下函数来描述:其中,A 是变形矩阵,b 是平移矢量。第5章 图像预处理技术在二维空间中,可以按照以下四种方式对图像应用仿射变换:第5章 图像预处理技术对一幅图像分别进行以上四种仿射变
22、换,产生的效果如图5-11所示。图5-11 各种仿射变换的效果第5章 图像预处理技术最终的变形矩阵可以表示为第5章 图像预处理技术5.5-直方图均衡化直方图均衡化直方图均衡化又称为灰度均衡化,是指通过某种灰度映射使输入图像转换为在每一灰度级上都有近似相同的像素点数的输出图像(即输出的直方图是均匀的)。在经过均衡化处理后的图像中,像素将占有尽可能多的灰度级并且分布均匀。第5章 图像预处理技术第5章 图像预处理技术第5章 图像预处理技术由上面的分析可得直方图均衡化计算过程如下:(1)列出原始图像和变换后图像的灰度级i,j=0,1,L-1,其中L 是灰度级数;(2)统计原图像各灰度级的像素个数ni;
23、(3)计算原始图像直方图P(i)=ni/n,n 为原始图像像素总个数;(4)计算累积直方图(5)利用灰度变换函数计算变换后的灰度值,并四舍五入取整,j=INT(L-1)Pj+0.5-;第5章 图像预处理技术(6)确定灰度变换关系f(m,n)=i,据此将原图像的灰度值修正为g(m,n)=j;(7)统计变换后各灰度级的像素个数nj;(8)计算变换后图像的直方图P(j)=nj/n。第5章 图像预处理技术例如,设有一幅大小为6464、包含灰度值07共8个灰度级的数字图像,其各灰度级的像素个数见表5-1,要求对其直方图均衡化,求出灰度变换关系和变换后的直方图。第5章 图像预处理技术解解 首先计算原图像的
24、灰度直方图:式中,L=8,n=6464。然后计算累积直方图:最后求取变换关系和变换后的灰度值。第5章 图像预处理技术图5-12所示是直方图均衡化的实验效果。从图5-12中可以看出,当原始图像的直方图不同而图像的结构性内容相同时,直方图均衡化得到的结构在视觉上几乎是完全一致的。第5章 图像预处理技术图5-12 图像直方图均衡化的结果第5章 图像预处理技术图5-12 图像直方图均衡化的结果第5章 图像预处理技术5.6 图图 像像 滤滤 波波滤波是在图像空间借助模板进行邻域操作来实现的。在空域内,滤波器的实现过程如图5-13所示。第5章 图像预处理技术图5-13 用33模板进行空间滤波的示意图第5章
25、 图像预处理技术图5-13(a)给出一幅图像的一部分,其中标注的是像素的灰度值。假设有一个33的模板如图5-13(b)所示,模板内所标为模板系数。如果将k0所在的位置与图中灰度值为s0的像素重合,即将模板中心放在图中(x,y)位置,则模板的输出响应R 为将R 赋给增强图,作为在(x,y)位置的灰度值,如图5-13(c)所示。第5章 图像预处理技术注意注意:在卷积操作开始之前,要先增加边缘像素,比如33滤波时,要在图像四周各填充一个像素的边缘,这样就确保图像的边缘能被处理,在卷积处理之后再去掉这些边缘。常用的方法有:(1)对称法,就是以最边缘像素为轴对称复制(通常为默认方法)。(2)常量法,就是
26、以一个常量像素值(由参数给定)填充扩充的边界值,这种方式在仿射变换、透视变换中非常常见。(3)复制法,就是复制最边缘像素。第5章 图像预处理技术为了对比不同滤波方法的效果,下面选取图5-14所示的大小为256256的含有椒盐噪声的图片作为对象进行实验。第5章 图像预处理技术图5-14 均值滤波效果图第5章 图像预处理技术5.6.1 均值滤波均值滤波均值滤波顾名思义是用平均值进行滤波。邻域平均是图像平滑和滤波的一种直接的空域方法。对于给定的图像f(x,y)中的每个像点(x,y),取其邻域S。设S 含有M 个像素,取其平均值作为处理后所得图像(x,y)处的灰度。用像素邻域内各像素灰度平均值来代替该
27、像素原来的灰度,即为邻域平均。经图像平滑后,像素对应的输出为第5章 图像预处理技术图5-14所示是采用九点均值模板对图像进行滤波的结果,图5-14(a)是原图,图(b)是处理后的图像。第5章 图像预处理技术1.加权均值滤波加权均值滤波加权均值滤波就是在均值滤波的基础上改变均值滤波模板的值。以33大小为模板,对均值模板的权值进行改变,对靠近中心点的像素修改权值,越靠近中心点其对最终图像的像素影响越大。如下列 H1为均值滤波模板,H2为加权均值滤波模板。选用 H2模板加权均值滤波的效果如图5-15所示。第5章 图像预处理技术实验结果表明,相比均值滤波,加权均值滤波的直观感受是比均值滤波更加清晰,因
28、为权值的改变,使得图像的边缘比平均更加明显。第5章 图像预处理技术从以上模板形式可得出,平滑模板的特点是:模板内系数全为正表示求和,所乘的小于1的系数表示取平均;模板系数之和为1表示对常数图像(f(m,n)=常数)处理前后不变,而对一般图像而言,处理前后平均亮度基本保持不变。第5章 图像预处理技术图 5-15-加权均值滤波效果图第5章 图像预处理技术2.阈值均值滤波阈值均值滤波带有阈值的均值滤波如式(5.26)所示,当像素点大小与其邻域平均像素差高于一个阈值时,才能用模板对其滤波,否则保持不变。这样可以有效去除噪声点的干扰。第5章 图像预处理技术5.6.2 中值滤波中值滤波对受到噪声污染的退化
29、进行还原时,采用线性滤波方法来处理比较有效。但是多数线性滤波器具有低通特性,在去除噪声的同时也使图像的边缘模糊,所以有些情况下需要采用非线性滤波器。中值滤波是一种非线性信号处理方法,与其对应的中值滤波器当然也就是一种非线性滤波器。中值滤波器在一定条件下,可以克服线性滤波器由均值滤波等带来的图像细节的模糊,而且对滤除脉冲干扰及图像扫描噪声最为有效。在实际运算过程中并不需要图像的统计特性,这也带来不少方便。第5章 图像预处理技术中值滤波的工作原理如下:(1)将模板在图像中漫游,并将模板中心与图中某个像素位置重合;(2)读取模板下各对应像素的灰度值;(3)将这些灰度值从小到大排列;(4)找出这些值里
30、排在中间的值;(5)将这个中间值赋给对应模板中心位置的像素。第5章 图像预处理技术对图中带有高斯噪声的图像进行中值滤波,结果如图5-16所示。从图中的滤波效果可以看出,中值滤波不仅消除了噪声,而且保持了图像的细节。对于椒盐噪声,中值滤波的滤波效果最好。第5章 图像预处理技术图5-16 中值滤波效果图第5章 图像预处理技术5.6.3 高斯滤波高斯滤波高斯滤波器是一类根据高斯函数的形状来选择权值的线性平滑滤波器,其对于抑制服从正态分布的噪声非常有效。对于图像来说,常用二维离散高斯函数作为平滑滤波器。二维高斯函数为第5章 图像预处理技术二维高斯函数具有旋转对称性,即滤波器在各个方向上的平滑程度是相同
31、的。一般来说,一幅图像的边缘方向是事先不知道的。高斯函数是单值函数。这表明,高斯滤波器用像素邻域的加权均值来代替该点的像素值,而每一邻域像素点权值是随该点与中心点的距离单调递减的。这一性质非常重要,因为边缘是一种图像局部特征,如果平滑运算对离算子中心很远的像素点仍然有很大作用,则平滑运算会使图像失真。第5章 图像预处理技术高斯函数的傅里叶变换频谱是单瓣的,这一性质是高斯函数傅里叶变换等于高斯函数本身这一事实的直接推论。图像常被不希望的高频信号所污染(噪声和细纹理),而所希望的图像特征(如边缘)既含有低频分量,又含有高频分量。高斯函数傅里叶变换频谱的单瓣意味着平滑图像不会被不需要的高频信号所污染
32、,同时保留了大部分所需信号。第5章 图像预处理技术高斯滤波器宽度(决定着平滑系数)由参数 表征,而且其和平滑程度的关系非常简单。越大,高斯滤波器的频带就越宽,平滑程度就越好。通过调节平滑程度参数,可在图像特征过分模糊(过平滑)与平滑图像中由于噪声和细纹所引起的过多的不希望突变量(欠平滑)之间取得折中。对图5-17(a)中带有高斯噪声的图像进行高斯滤波,结果如图 5-17(b)所示,可以看出图中的噪声得到了抑制,同时原图像的信息也基本得到了保留。第5章 图像预处理技术图 5-17 高斯滤波效果图第5章 图像预处理技术5.7 图图 像像 锐锐 化化5.7.1 Robert算子算子图像的边缘总是以图
33、像中强度的突变形式出现的,所以景物边缘包含着大量的信息。图像的边缘具有十分复杂的形态,最常用的边缘检测方法是梯度检测法,这里 Robert算子图像锐化的原理和边缘检测原理相同。第5章 图像预处理技术设f(x,y)是图像灰度分布函数,s(x,y)是图像边缘的梯度值,(x,y)是梯度的方向,则有第5章 图像预处理技术式(5.28)与式(5.29)可以得到图像在(x,y)点处的梯度大小和梯度方向。而第5章 图像预处理技术g(x,y)称为 Robert边缘检测算子。事实上 Robert边缘检测算子是一种利用局部差分方法寻找边缘的算子,Robert梯度算子所采用的是对角方向相邻两像素值之差,所以用差分代
34、替一阶偏导,算子形式可表示如下:第5章 图像预处理技术Robert算子的模板分为水平方向和垂直方向,如式(5.33)和(5.34)所示。实际应用中,图像中的每个像素点都用这两个模板进行卷积运算。为避免出现负值,在边缘检测时常提取其绝对值。利用 Robert算子模板进行图像锐化,实验结果如图5-18所示。第5章 图像预处理技术图5-18 Robert算子锐化效果图第5章 图像预处理技术5.7.2 Sobel算子算子Sobel算子也是常用的图像锐化算子之一。Sobel边缘算子所采用的算法是先进行加权平均,然后进行微分运算。我们可以用差分代替一阶偏导,该算子的计算方法如下:第5章 图像预处理技术So
35、bel算子垂直方向和水平方向的模板如式(5.37)与式(5.38)所示,前者可以检测出图像中水平方向的边缘,后者则可以检测图像中垂直方向的边缘。实际应用中,图像中每一个像素点都用这两个卷积核进行卷积运算,取其最大值作为输出。运算结果是一幅体现边缘幅度的图像。利用Sobel算子进行锐化的实验效果如图 5-19所示。第5章 图像预处理技术图 5-19 Sobel算子锐化效果图第5章 图像预处理技术5.7.3 Laplace算子算子Laplace算子是一种各向同性算子,属于二阶微分算子,在只关心边缘的位置而不考虑其周围的像素灰度差值时比较合适。Laplace算子对孤立像素的响应要比对边缘或线的响应更
36、强烈,因此只适用于无噪声图像。存在噪声的情况下,使用 Laplace算子检测边缘之前需要先进行低通滤波。所以,通常的分割算法都是把 Laplace算子和平滑算子结合起来生成一个新的模板。Laplace算子也是最简单的各向同性微分算子,具有旋转不变性。第5章 图像预处理技术一个二维图像函数的 Laplace变换是各向同性的二阶导数,其定义为第5章 图像预处理技术用差分代替二阶偏导时,与前述一阶导数算子不同,Laplace算子的四邻域与八邻域离散形式分别为第5章 图像预处理技术Sobel算子相比,对图像进行处理时,Laplace算子能使噪声成分得到加强,对噪声更敏感。利用式(5.42)与式(5.4
37、3)所表示的模板进行图像锐化,实验结果如图5-20所示。第5章 图像预处理技术图5-20 Laplace算子锐化效果图第5章 图像预处理技术5.8 图像二值化图像二值化图像二值化,其目的是将目标和背景分离,为后续的目标定位、识别等任务做准备。灰度图像的二值化处理最常用的方法是阈值法,它利用图像中目标与背景的差异,选取合适的阈值,将图像分成两个不同的像素值级别,以确定某像素是目标还是背景部分,从而获得二值化的图像。第5章 图像预处理技术对于阈值法二值化,假设阈值设置为T,以 T 为边界,把图像分为两个部分,则二值化的公式如下:式中,f(x,y)表示在图片(x,y)处的灰度值;g(x,y)表示二值
38、化后的值,只能取0或者255。在阈值法二值化中,最主要的是选取合适的阈值,这也是二值化的难点。第5章 图像预处理技术5.8.1 双峰法双峰法1996年,Prewitt提出了直方图双峰法,即如果给定的图像的灰度分布是比较有规律的,目标和背景在图像的直方图上各自形成一个波峰,它们之间存在波谷。那么,阈值 T可以在波谷处取值,如图5-21所示。第5章 图像预处理技术图5-21 双峰直方图第5章 图像预处理技术实现的表达式如下:式中,Zt为图5-21中的波谷,作为图像二值化的阈值;f(x,y)表示原始图像的灰度值;g(x,y)表示二值化后的灰度值。第5章 图像预处理技术5.8.2 P 参数法参数法若已
39、知目标区域的P 值,则可以采用P 参数法进行分割。假设已知直方图中目标区域所占的比例为P,则该算法实现的步骤如下:计算图像直方图的分布p(t),其中t=0,1,2,255,表示图像的灰度值。第5章 图像预处理技术(1)从t=0开始,计算图像的累积分布直方图,实现的表达式为(2)计算阈值T,得到的T 值表示P 最接近累积分布的灰度分布值t。第5章 图像预处理技术5.8.3 大津法大津法大津法(Otsu算法)的基本思想是用某一假定的灰度值t将图像的灰度分为两组,当两组的类间方差最大时,此灰度值t就是图像二值化的最佳阈值。假设图像有L 个灰度值,那么灰度值的取值范围为0L-1,在此范围内取灰度值 T
40、,将图像分成两组G0和G1,其中G0包含的像素值为0T,G1的灰度值为 T+1L-1。用 N 表示图像像素总数,ni表示灰度值为i的像素的个数。第5章 图像预处理技术求值过程如下:假设每一个灰度值i出现的概率pi=ni/N,G0和G1两组像素个数在整体图像中所占的百分比为0 和1,两组平均灰度值为0 和1,则:第5章 图像预处理技术图像总灰度值为通过以上的步骤可获取类方差最大值时对应的灰度值T,即最佳的阈值。第5章 图像预处理技术5.8.4 最大熵阈值最大熵阈值对于灰度值范围为0L-1的图像,其直方图熵的定义为式中,pi为像素值为i的像素占整个图像的概率。第5章 图像预处理技术设阈值为T,则将
41、灰度值为0T 的像素点划分为背景B 区,把灰度值在T+1L-1的像素点划分为目标O 区,它们的概率分布如下:目标O 区:第5章 图像预处理技术第5章 图像预处理技术5.8.5-迭代法迭代法是基于逼近的思想,迭代阈值的获取步骤可以归纳如下:(1)选择一个初始阈值T(j),通常可以选择整体图像的平均灰度值作为初始阈值,j为迭代次数,初始时j=0。(2)用T(j)分割图像,将图像分为2个区域C(j)1 和C(j)2。第5章 图像预处理技术(3)计算两区域的平均灰度值:第5章 图像预处理技术(4)计算新的门限值,即(5)令j=j+1,重复(2)(4),直到T(j+1)与T(j)的差小于规定值。第5章 图像预处理技术本本 章章 小小 结结本章从实际应用中图像预处理阶段的功能需求出发,详细介绍了图像的显示与存储、灰度变换、几何变换、直方图均衡、图像滤波、图像锐化、图像二值化等技术。本章所介绍的技术可以有效提升图像目标特征的表征能力,提升后续图像处理的性能。本章有别于其他视觉书籍的内容组织形式,便于读者把理论学习和应用实践相结合,加深对视觉算法的理解。