数字图像处理杨淑莹数字图象处理课程全部教案

上传人:kfc****89 文档编号:243445026 上传时间:2024-09-23 格式:PPT 页数:125 大小:3.08MB
返回 下载 相关 举报
数字图像处理杨淑莹数字图象处理课程全部教案_第1页
第1页 / 共125页
数字图像处理杨淑莹数字图象处理课程全部教案_第2页
第2页 / 共125页
数字图像处理杨淑莹数字图象处理课程全部教案_第3页
第3页 / 共125页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,数字图像处理杨淑莹数字图象处理课程全部教案,课程内容简介,介绍各种数字图象处理的算法分析及编程实现技术。,主要内容包括:,位图基础、图象的显示、图像的几何变换、图象灰度变换、图像的平滑处理、图像锐化处理及边缘检测、图像分割及测量、图像的形态学处理、图像的变换域处理及应用、图像的合成、24位彩色图像处理、JPEG图像的压缩编码。,2,第一章 位图基础,1.1 数字图像的基本概念,1.2 与设备无关位图(DIB),3,1.1 数字图像的基本概念,位图与矢量图,数字图象的基本概念,单色图象,灰度图象,伪彩色图像,24位真彩色图像,4,位图与矢量图,图形由指令集合组成的描述,显示时需要相应的软件读取这些命令,并将其转变为屏幕上所显示的形状和颜色,图形记录的主要内容是坐标值或坐标值序列,对一般画面内容的颜色或亮度隐含且统一地描述。,图像是以栅格结构存储画面内容,栅格结构将一幅图划分为均匀分布的栅格,每个栅格称为像素,显式地记录每一像素的光度值(亮度或彩色),所有像素位置按规则方式排列,像素位置的坐标值却是有规则地隐含。,5,数字图象的基本概念,在PC的显示系统中,显示的图像是由一个个像素组成的,每一个像素都有自己的颜色属性,每一个像素的颜色由红,绿,蓝三原色组合而成。数字图象是连续图象f(x,y)的一种近似表示,通常用由采样点的值所组成的矩阵来表示:,f(0,0) f(0,1). f(0,M-1),f(1,0) f(1,1). f(1,M-1),f(N-1,0) f(N-1,1). f(N-1,M-1),每一个采样单元叫做一个象素(pixel),上式中,M、N分别为数字图象在横、纵方向上的象素。在计算机内通常用二维数组来表示数字图象的矩阵。,6,数字图象的基本概念,图象数字化的精度包括两个部分,即分辨率和颜色深度。,分辨率:有显示分辨率和图象分辨率。,图象分辨率:是数字化图象时划分图象的象素密度,即单位长度内的象素数,其单位是每英寸的点数DIP(Dots per Inche)。图象分辨率说明了数字图象的实际精细度。,显示分辨率:是把数字图象在输出设备(如显示屏或打印机等)上能够显示的象素数目和所显示象素之间的点距。显示分辨率说明了数字图象的表现精细度。,具有不同的图象分辨率的数字图象在同一输出设备上的显示分辨率相同。,颜色深度:是指表示每一象素的颜色值的二进制位数。颜色深度越大则能表示的象素的颜色数目越多,它们之间的关系取决于数字图象采用的颜色表示法。常用的颜色表示法有RGB、CMYK、YUV等。,7,单色图象,单色图象的每一象素值具有如下特征:,1)图象中每一点的红、绿、蓝颜色分量值都相等 即:,f red(x,y) =f green(x,y)= f blue(x,y),2)其值只有两个0或255。,单色图象具有比较简单的格式,它一般由黑色区域和白色区域组成,其典型图象格式就是直线图和图表。一旦给定图象的大小,这种格式的内容将十分紧凑.,8,灰度图象,灰度图象的每一象素值具有如下特征:,1)图象中每一点都不是彩色的,即每一点的红绿蓝颜色分量值都相等,即:,f red(x,y) =f green(x,y)= f blue(x,y),2)其值范围从0255。,对于灰度图象,其f(x,y)表示(x,y)位置处的灰度值。,在一些单色照片中,经常要用灰度,才能准确的表达图象的真实视觉效果,这种图象被称为灰度图象。当需要在不具备真彩色支持的图象显示卡上显示原始真彩色图象时,一般都要利用相应的灰度图象对其进行近似处理,因此灰度图象是图象技术中涉及范围比较广泛的一种图象表示方法。,9,伪彩色图像,伪彩色图像与灰度图像相似,其存储文件中也带 有图像颜色表,伪彩色图像具有如下特征:,1)图像颜色表中的红、绿、蓝颜色分量值不全相 等,即:,f red(x,y)f green(x,y) f blue(x,y),2)整幅图像仅有256种颜色,,要表示,256,种不同的颜色,像素必须由,8,位组成,每个像素值不是由每个基色分量的数值直接决定,而是把像素值当作,图像颜色表,的表项入口地址。把具有,256,色的,图像,称为,8,位,彩色,图像。,10,24位真彩色图像,具有全彩色照片表达能力的图像为,24,位彩色图像,,24位真彩色图像存储文件中不带有图像颜色表,其具有如下特征:,1)图像中每一像素由RGB三个分量组成,每个分量各占8位,,每个像素需,24,位。,2)f red(x,y)、f green(x,y)、f blue(x,y)取值范围为0255。,由于,24,位真彩色图像所需的存储空间很大,处理速度较慢,,当需要存储空间不大,并且要求实时快速处理图像时,一般都要利用相应的8位位图对其进行近似处理,因此8位位图是图像技术中涉及范围比较广泛的一种图像表示方法。,11,1.2与设备无关位图(DIB),BMP文件组成,数字图像处理的应用,12,BMP文件组成,BMP文件由文件头、位图信息头、颜色信息和图像数据四部分组成。位图结构如下所示:,位图颜色表RGBQUAD,位图像素数据,位图文件头结构BITMAP,位图信息头结构BITMAPINFOHEADER,13,结构,数据域,含义,bfType,字节“BM”,bfSize,文件总字节数,BfReserved1,0,BfReserved1,0,bfOffBits,位图数据距文件头的偏移量,BITMAPINFOHEADER,biSize,本结构大小的字节数,biWidth,位图的宽度,单位为象素点,biHeight,位图的高度,单位为象素点,biPlanes,1,biBitCount,象素的位数(1,4,8,24),14,biCompression,压缩方式(0表示不压缩),bisizeImage,位图数据的字节数,biXpelsPerMeter,水平分辨率(象素点/米),biYpelsPerMeter,垂直分辨率(象素点/米),biClrUsed,图象中使用的颜色数,biClrImportant,图象中重要的颜色数,RGBQUAD,rgbBlue,蓝色的比例,rgbGreen,绿色的比例,rgbRed,红色的比例,rgbReserved,0,15,数字图像处理的应用,下面列举一些典型的应用实例。,(1)遥感航天中的应用,天文、太空星体的探测及分析;,军事侦察、定位、指挥等;,地质、地形、地图的普查及绘制;,地下矿藏的勘探;,环境污染的监测;,气象、天气预报的合成分析。,(2)生物医学中的应用,显微图像处理;,DNA显示分析;,生物进化的图像分析;,手术规划;,内脏大小、形状、活动及异常检出分析;,癌细胞识别。,16,数字图像处理的应用,(3)工业应用,产品无损检测、焊缝及内部缺陷检测;,流水线零件自动检测识别;,生产过程的监控;,交通管制、机场监控;,支票、签名辨伪及识别;,机器人视觉系统的应用。,(4)军事公安领域中的应用,罪犯脸形的合成;,指纹自动识别;,巡航导弹地形识别;,手迹、印章的鉴定识别;,遥控飞行器的引导;,雷达的目标侦察。,17,数字图像处理的应用,(5)其它应用,多媒体计算机系统及应用;,图像的远程通信,电视会议;,可视电话;,服装试穿显示;,现场视频管理。,18,第二章 图像的显示,2.1 调色板的基本应用,2.2 图像的特效显示,19,2.1 调色板的基本应用,调色板的原理,调色板的创建与实现,显示函数,20,调色板的原理,调色板就是在256色显示系统中,将图像中出现的256种颜色组成颜色表,对这些颜色按8位,即0至255进行编号,每一编号代表其中的一种颜色,在这种颜色中颜色编号叫做颜色的索引号。,256色位图文件中含有BMP文件由文件头、位图信息头、颜色信息表和图像数据四部分组成。图像的像素值并不是颜色值,而是颜色索引表的索引号。,21,调色板的创建与实现,在调色板系统中,每一幅图像都有自己的调色板,显示时必须将自己的调色板载入系统调色板中,实现调色板。一般创建一个逻辑调色板需要以下五步:,(1)建立一个LOGPALETTE结构和PALETTEENTRY数组;,(2)对数组元素进行初始化并对成员变量进行设置;,(3)建立CPalette对象并使用CreatePalette函数初始化调 色板对象;,(4)使用SelectPalette函数来将设备描述表和调色板联系起来;,(5)使用CDC中的RealizePalette函数使调色板生效。,22,显示函数,在Visual C+环境中用于显示的主要有BitBlt函,数、StretchBlt函数和StretchDIBits函数。,BitBlt函数和StretchBlt函数属于CDC类,而,StretchDIBits函数为API函数。,23,显示函数,BitBlt()函数,该函数的结构如下:,BOOL BitBlt(int x,int y,int nWidth,int nHeight,CDC* pSrcDC,int xSrc,int ySrc,DWORD dwrop);,参数说明:,x: 指定绘制目标矩形左上角的逻辑X轴位置。,y: 指定绘制目标矩形左上角的逻辑Y轴位置。,nWidth: 指定绘制目标矩形和源位图的宽度(按逻辑单位)。,nHeight: 指定绘制目标矩形和源位图的高度(按逻辑单位)。,pSrcDC:设备上下文的指针。,xSrc,ySrc: 指定源位图左上角的逻辑X轴、Y轴位置。,dwrop: 指定要执行的光栅运算。其操作码定义了图形设备接口(GDI)在输出操作中如何组合颜色。,当要将位图的像素从内存显示环境复制到显示器(或打印机)设备环境中,一般会用到这个函数。,24,显示函数,StretchBlt()函数,该函数的结构如下:,BOOL StretchBlt(int x,int y,int nWidth,int nHeight,CDC* pSrcDC,int xSrc,int ySrc,int nSrcWidth,int nSrcHeight, DWORD dwrop);,参数说明:,x: 指定绘制目标矩形左上角的逻辑X轴位置。,y: 指定绘制目标矩形左上角的逻辑Y轴位置。,nWidth: 指定绘制目标矩形的宽度(按逻辑单位)。,nHeight: 指定绘制目标矩形的高度(按逻辑单位)。,pSrcDC:设备上下文的指针,xSrc,ySrc: 指定源位图左上角的坐标(按逻辑单位)。,nSrcWidth, nSrcHeight:指定复制源位图的宽度和高度(按逻辑单位)。,dwrop:指定要执行的光栅运算。其操作码定义了图形设备接口(GDI)在输出操作中如何组合颜色。,25,显示函数,StretchDIBits()函数,该函数的结构如下:,BOOL StretchDIBits(HDC hdc,int x,int y,int nWidth,int nHeight,int xSrc,int ySrc,int nSrcWidth,int nSrcHeight, CONST VOID*lpvBits,CONST BITMAPINFO *lpbmi, UNIT fuColorUse,DWORD dwrop);,参数说明:,hdc:设备上下文句柄。,x: 指定绘制目标矩形左上角的逻辑X轴位置。,y : 指定绘制目标矩形左上角的逻辑Y轴位置。,nWidth: 指定绘制目标矩形的宽度(按逻辑单位)。,nHeight: 指定绘制目标矩形的高度(按逻辑单位,xSrc,ySrc: 指定源位图左上角的坐标(按逻辑单位)。,nSrcWidth, nSrcHeight:指定复制源位图的宽度和高度(按逻辑单位)。,lpvBits:指向DIB数据图像的指针。,lpbmi:指向BITMAPINFO结构的指针。,fuColorUse:指定BITMAPINFO结构中的bmiColors包含真实的RGB值还是调色板中的索引值。,dwrop:指定要执行的光栅运算。,26,2.2,图像的特效显示,图像的特效显示就是利用人眼的视觉特性,通过对图像分块,然后以不同的次序显示出来。实现图像的特效显示的基本思路是将图像分成不同的小块,按一定的方向或次序、分阶段地显示或擦除图像块。其中的四个要点是:,(1)如何划分图像块;,(2)确定图像块的操作次序;,(3)显示或清除图像块;,(4)在两个图像块的操作之间延时。,延时的目的是减慢图像的显示速度,以便可以看出特效显示的效果。,27,图像的特效显示,图像的扫描,扫描是最基本的特效显示方式,它没有划分图像块,只是顺序地,一行一行或一列一列地显示图像或清除图像。,效果图:,(a)自上而下扫描,(b)自下而上扫描 (c) 自左向右扫描,(d)自右向左扫描,28,图像的特效显示,图像的移动,移动是将图像看作一个整体,显示时必须按物理顺序进行,例如从上向下平移时,必须先显示下面的图像,后显示上面的图像。平移是以复制的方法显示图像的,每显示一次,复制的行数就增加一行,直至显示完成。,效果图:,(a)水平向右移,(b) 垂直向上移动,29,图像的特效显示,交叉飞入,交叉飞入是将图像平分成上下两部分,显示时上部分水平右移,下部分水平左移。因此交叉分入的基本原理和平移是相同的,其不同之处只是将图像进行了分块。,交叉飞入效果图,30,图像的特效显示,中间扩张,中间扩张是在显示的时候,先将图像分成两部分,将中间分界处显示在屏幕的中间,并快速向上扫描上半部分的图像,然后将图像完整的显示在屏幕上,这样人们因为视觉生理的特点就会看到中间扩张的效果。,中间扩张效果图,31,图像的特效显示,中间收缩,中间收缩的效果是从屏幕的上下两边同时向中间扫描,其原理类似于将图像平分成上下两部分,从屏幕的上下边界,对图像同时进行向上扫描和向下扫描,直到在图像的中间分界相遇。,中间收缩效果图,32,图像的特效显示,栅条特效,栅条特效分为水平栅条和垂直栅条,其效果像是将两手交叉的过程,栅条显示的原理是先将图像分成若干行(或若干列),将奇数行(或奇数列)组成一组,将偶数行(或偶数列)组成一组,在显示的时候,奇数行(或奇数列)从右向左平移。,(a)水平栅条显示,(b)垂直栅条显示,33,图像的特效显示,图像渐显,图像渐显是先记录下图像的每个像素点的灰度值,显示的时候先将屏幕置黑,将循环显示图像n次,设n从0,1,2 ,256。每一次显示像素灰度值的n/256倍,图像的像素点计算一遍后,显示一次,重复执行上述过程,直至每一个屏幕上的像素点的灰度值全部和记录中的值相同为止。,图像渐显效果图,34,图像的特效显示,百叶窗特效显示,百叶窗显示开始有若干个显示起始线,每条起始线相隔相同距离,显示过程中每次各个起始线同时向下(或向右)显示一行(或一列)图像,直到图像显示完毕。百叶窗显示的原理是先将图像按行方向(或列方向)分成若干个相同的部分(例如10块),显示时,先将每块的头一行(或头一列)显示在屏幕的对应位置上,然后以它们为起始,分别向下扫描(或向右扫描)直至图像全部显示完成。,(a)百叶窗自左向右,(b)百叶窗自上而下,35,图像的特效显示,马赛克效果,马赛克显示是图像被分成许多小区域,小区域以杂乱无章的顺序显 示在屏幕上。其编程思想是,先将图像分成大小相同的小区域,计算出每一块区域的首地址,并记录下来。设置一个随机数,用来产生随机显示区域的次序,每获得一个随机区域,就根据其首址显示这块区域的图像,直至所有的区域都至少显示一次。,马赛克显示效果图,36,第三章 图像的几何变换,3.1 图像的平移,3.2 图像的镜像变换,3.3 图像的缩放,3.4 图像的转置,3.5 图像的旋转,37,3.1 图像的平移,图像平移(translation)是将图像中所有的点都按照指定的平移量水平、垂直移动。设初始坐标为(x0,y0)的点经过平移(tx.ty)后,则点(x0,y0)坐标变为(x1,y1), 如图所示。,坐标原点,tx,X,ty,(x1,y1),Y,(x0,y0),像素平移示意图,显然(x0,y0)和(x1,y1)的关系如下:,x1=x0+tx,y1=y0+ty,38,3.2 图像的镜像变换,图像的镜像变换分为两种:一种是水平镜像,另一种是垂直镜像。图像的水平镜像操作是以原图像的垂直中轴线为中心,将图像分为左右两部分进行对称变换;图像的垂直镜像操作是以原图像的水平中轴线为中心,将图像分为上下两部分进行对称变换。镜像变换后图的高和宽都不变。,设图像高度为Height,宽度为Width,原图中的(x0,y0)经过水平镜像后坐标将变成(Width-x0,y0),即:,x1=Width-x0,y1=y0,同样,(x0,y0)经过垂直镜像后坐标将变成为(x0,Height-y0),即:,x1=x0,y1=Height-y0,39,3.2 图像的镜像变换,效果对比图,(a)原图,(b)水平镜像处理效果图 (c)垂直镜像处理效果图,镜像处理,40,3.3 图像的缩放,假设图像X轴方向缩放比率是kx,Y轴方向缩放比率是ky,那么原图中点(x0,y0)对应与新图中的点(x1,y1)为:,x1=x0*kx,y1=y0*ky,(1)kx1且ky1时,原图像被放大。由于放大图像时产生了新的像素,可通过插值算法来近似处理。当kx=ky=2时,图像放大2倍,原图中的某一个像素,对应新图的4个像素。如图所示:,(a)原图中的某一个像素,(b)对应新图的4个像素,41,3.3 图像的缩放,(2)当kx1且ky1时,原图像被缩小。例如,当kx=ky=0.5时,图像被缩到一半大小,原图中4个像素对应新图中的一个像素。此时缩小后的图像中的(0,0)像素对应于原图中的(0,0)、(0,1)、(1,0)、(1,1)像素;以此类推。在原图基础上,每行隔一个像素取一点,每割一行进行操作。如图所示:, ,(a)原图中的某4个像素 (b)对应新图的1个像素,图像缩小示意图,42,3.3 图像的缩放,效果对比图,(c)长宽各放大2倍的效果图,43,3.4 图像的转置,图像的转置(Transpose)操作是将图像像素的x坐标和y坐标互换。该操作将改变图像的高度和宽度,转置后图像的高度和宽度将互换。,即 x1=y0,y1=x0,效果对比图:,图像转置,44,3.5 图像的旋转,图像的旋转必须指明图像绕着什么旋转。一般图像的旋转是以图像的中心为原点,旋转一定的角度。旋转后,图像的大小一般会改变。和图像平移一样,我们既可以把转出显示区域的图像截去,也可以扩大图像范围以显示所有的图像。,如下图,点(x0,y0)经过旋转度后坐标变成(x1,y1)。,y,(x0,y0),(x1,y1),x,O,图像旋转示意图,在旋转前:,x0=cos(),y0=sin(),旋转后:,x1=cos(-)=cos()cos()+sin()sin()=x0cos()+y0sin(),y1=sin(-)=sin()cos()-cos()sin()=-x0sin()+y0cos(),45,3.5 图像的旋转,(a)原图,(b)旋转45的效果图,旋转处理图,46,第四章 图像灰度变换,4.1 灰度变换的基本方法,4.2 二值化和阈值处理,4.3 灰度的线性变换,4.4 窗口灰度变换处理,4.5 分段线性变换,4.6 灰度直方图,47,4.1 灰度变换的基本方法,灰度变换是指根据某种目标条件按一定变换关系逐点改变原图像中每一个像素灰度值的方法。设原图像像素的灰度值D=f(x,y),处理后图像像素的灰度值D=g(x,y),则灰度增强可表示为:,g(x,y)=Tf(x,y) 或 D= T(D),函数,T(D),称为灰度变换函数,它描述了输入灰度值和输出灰度值之间的转换关系。一旦灰度变换函数确定,则确定了一个具体的灰度增强方法。,灰度变换主要针对独立的像素点进行处理,通过改变原始图像数据所占据的灰度范围而使图像在视觉上得到良好的改观,没有利用像素点之间的相互空间关系。,根据 ,可以将灰度变换分为线性变换和非线性变换。,48,4.2 二值化和阈值处理,非零元素取一法,固定阀值法,双固定阀值法,49,非零元素取一法,非零元素取一法是最基础的二值化算法。非0取1就是对于灰度图像f,若某像素灰度值为0,则其灰度值不变,仍为零;对于灰度值不为零的像素,将其像素值全部变为255。非零元素取一法的阈值T=1。,非零元素取一法的变换函数表达式如下:,f(x)=,0 x1,255,255,g,0 1 255 f,非零元素取一法灰度变换函数,50,固定阀值法,固定阀值法就是为灰度图像f设定一个阀值T,把灰度值小于给定阈值T的像素置为0,大于阈值T的像素置为255,从而对灰度图像实现二值化变换。,固定阀值法的变换函数表达式如下:,f(x)=,0 xT,255,其中T为指定的阈值。,g,255,f,255,0 T,固定阀值法灰度变换函数,51,固定阀值法,(a) 原图 (b) 以100作为阈值二值化的图,52,双固定阀值法,双固定阀值法预先设置了两个阀值T1和T2,T1T2,当对图像进行处理时,如果某个像素的灰度值小于T1则置0(或者255);如果大于T1并且小于T2时,则置255(或者置0);如果大于T2时,则置0(或者255)。,0-255-0型固定阀值法的变换函数表达式如下:,0 x,T2,其中T1、T2为指定的阈值。,g g,255 255,0 T1 T2 255 f,0 T1 T2 255 f,(a)0-255-0,型灰度变换函数,(b)255-0-255,型灰度变换函数,255 T1x1时,输出图像的对比度将增大;,当a1时,输出图像的对比度将减小;,当a=1且b不等于0时,使所有图像的灰度值上移或下移,其效果是使整个图像更暗或更亮;,当a=1,b=0时,输出图像和输入图像相同;,当a=-1,b=255时,输出图像的灰度正好反转;,当a0时,暗区域将变亮,亮区域将变暗,点运算完成了图像求补运算。,56,4.3 灰度的线性变换,效果图,反色变换处理结果图,57,4.4 窗口灰度变换处理,当图像中大部分像素的灰度级在L,U范围内,少部分像素分布在小于L和大于U的区间内时,可用两端“截取式”的变换使小于灰度级L和大于等于灰度级U的像素强行压缩为0和255。这种变换叫灰度的窗口变换。灰度的窗口变换也是一种常见的点运算。它限定一个窗口范围,该窗口中的灰度值保持不变;小于该窗口下限的灰度值直接设置为0;大于该窗口上限的灰度值直接设置为255。窗口灰度变换处理结合了双固定阀值法,与其不同之处在于窗口内的灰度值保持不变。,灰度窗口变换的变换函数表达式如下:,0 x U,式中L表示窗口的下限,U表示窗口的上限。,58,4.4 窗口灰度变换处理,效果对比图,(a) 改变窗口变换参数 (b)窗口变换效果图,59,4.5 分段线性变换,1理论基础,将图像灰度区间分成两段乃至多段,分别做线性变换称之为分段线性变换。,它的灰度变换函数 如图所示,函数表达式如下:,y1*x / x1 x x2,变换后的灰度,255 g,y2,y1,0 x1 x2 255 f,60,4.5 分段线性变换,式中(x1,y1)和(x2,y2)是图中两个转折点坐标。,该变换函数的运算结果是将原图在x1和x2之间的灰度拉伸到y1和y2之间。通过有选择的拉伸某段灰度区间,能够更加灵活地控制图像灰度直方图的分布,以改善输出图像质量。如果一幅图像灰度集中在较暗的区域而导致图像偏暗,可以用灰度拉伸功能来拉伸(斜率1)物体灰度区间以改善图像质量;同样如果图像灰度集中在较亮的区域而导致图像偏亮,也可以用灰度拉伸功能来压缩(斜率T,,g(i,j)= (5-1),f(i,j) 其它。,此式表明,若某点值与其邻域平均值相差超过 T,用平均值代替,进行平均处理,可去除噪声;否则还保留原值,不进行平均处理,从而减少模糊。这种算法对抑制椒盐噪声比较有效,同时也能交好地保护仅有微小灰度差的图像细节。,75,超限邻域平均法,2效果图,超限邻域平均法(阈值为100),76,NN均值滤波器,1理论基础,在本程序中当灰度图像f中以像素f(i,j)为中心的NN屏蔽窗口(N=3,5,7)内平均灰度值为a时,无条件作f(i,j)=a处理,N由用户给定,且取N值越大,噪声减少越明显。但平均是以图像的模糊为代价的。,77,选择式掩模平滑,1理论基础,噪声消除法和邻域平均法在消除噪声的同时,都不可避免的带来平均化的缺憾,致使尖锐变化的边缘或线变得模糊。考虑到图像中目标物体和背景一般都具有不同的统计特性,即不同的均值和方差,为保留一定的边缘信息,可采用自适应的局部平滑滤波。这样可以得到较好的图像细节。自适应平滑法是以尽量不模糊边缘轮廓为目的。,选择式掩模平滑法取5 5窗口,如图5-2所示。在窗口内以中心像素f(i,j)为基准点,制作4个五边形、4个六边形、1个边长为3的正方形共9种形状的屏蔽窗口,分别计算每个窗口内的平均值及方差,由于含有尖锐边沿的区域,方差必定较平缓区域为大,因此采用方差最小的屏蔽窗口进行平均化,这种方法在完成滤波操作的同时,又不破坏区域边界的细节。这种采用9种形状的屏蔽窗口,分别计算各窗口内的灰度值方差,并采用方差最小的屏蔽窗口进行平均化方法,也称作自适应平滑方法。,78,选择式掩模平滑,(a)周围9邻近 (b)左7邻近 (c)上7邻近,(d)右7邻近 (e) 下7邻近 (f) 左上7邻近,(g)右上7邻近 (h)右下7邻近 (i)左下7邻近,图5-2 55窗口选择式掩模平滑法,79,选择式掩模平滑,计算个掩模的均值(ai)及方差(ki)。,ai=,ki=,式中m=1,2,3.,Q;Q为各掩模对应的像素个数;,在此基础上,对ki排序,最小方差Kimin 随对应的掩模的灰度级均值ai 作为f(i,j)的平滑输出(凡含有尖锐边沿的区域,方差必定较平缓区域为大)G(i,j)。,80,选择式掩模平滑,(a)原图,(b)7*7均值滤波 (c) 选择式掩模平滑法,81,5.4 中值滤波,N*N中值滤波器,十字型中值滤波器,NN最大值滤波器,82,N*N中值滤波器,1. 理论基础,中值滤波一般采用一个含有奇数个点的滑动窗口,将窗口中各点灰度值的中值来替代指定点(一般是窗口的中心点)的灰度值。假设窗口内有五点,其值依次为1,4,6,0,7,重新排序后(从小到大)为0,1,4,6,7,则Med1,4,6,0,7=4。,计算灰度图像f中以像素f(i,j)为中心的NN屏蔽窗口(N=3,5,7)内灰度的中值为u, 无条件作f(i,j)=u处理,N由用户给定。,83,十字型中值滤波器,计算灰度图像f中以像素f(i,j)为中心得十字型屏蔽窗口(十字型的纵向和横向的长度为N, N=3,5,7)内灰度值的中值u, 无条件作f(i,j)=u处理,N由用户给定。,55十字型中值滤波器,84,NN最大值滤波器,本程序计算灰度图像f中以像素f(i,j)为中心的NN屏蔽窗口 (N=3,5,7)内灰度的最大值为u,无条件作f(i,j)=u处理,N由用户给定,NN中值滤波、十字型中值滤波、N*N最大值滤波之后的效果大体相同。,中值滤波图,85,5.5 产生噪声,随机噪声,椒盐噪声,86,随机噪声,1. 理论基础,本程序通过计算机所产生的随机数给图像加噪声。,循环取得各点像素值;取得随机数(rand()/1024);该点像素值加上随机数;,87,椒盐噪声,本程序通过计算机所产生的随机数的大小来给图像加噪声。,循环取得各点像素值;若产生的随机数大于特定值,把该点置0;,2,. 处理效果,(a) 随机噪声 (b) 椒盐噪声,88,第六章 图像锐化处理及边缘检测,6.1 图像边缘锐化的基本方法,6.2 微分运算,6.3 梯度锐化,6.4 边缘检测,6.5 高斯-拉普拉斯算子,89,6.1 图像边缘锐化的基本方法,利用计算机进行图像锐化处理有两个目的,一是与柔化处理相反,增强图像边缘,使模糊的图像变得更加清晰起来,颜色变得鲜明突出,图像的质量有所改善,产生更适合人观察和识别的图像,二是希望经过锐化处理后,目标物体的边缘鲜明,以便于计算机提取目标物体的边界、对图像进行分割、目标区域识别、区域形状提取等,为图像理解和分析打下基础。,90,6.2 微分运算,纵向微分运算,横向微分运算,双方向一次微分运算,91,6.2 微分运算,边缘是由相邻域灰度级不同像素点构成的,若想增强边缘,就应该突出相邻点间灰度级的变化。如下图所示,不难发现原图中左边暗,右边亮,中间存在着一条明显的边界。,0 0 1 255 255 255 255,1 1 1 254 253 254 254,0 0 0 255 255 253 253,1 1 0 254 254 254 254,为了与f ( x,y)表示法相一致,图像f(i,j)中的i代表列,j代表行。如果用右列减去左列,即每一个像素的值为:,G ( i, j ) = f ( i , j )- f ( i-1, j ),92,6.2 微分运算,结果如下:,0 1 254 0 0 0,0 0 253 -1 1 0,0 0 255 0 -2 0,0 - 1 254 0 0 0,G ( i, j ) = f ( i , j )- f ( i-1, j )就起到了垂直边沿检测的作用。,如对于上面那幅图像转置,得到如下图像数据:,0 1 0 1,0 1 0 1,1 1 0 0,255 254 255 254,255 253 255 254,255 254 253 254,255 254 253 254,G ( i, j ) = - f ( i, j-1 ) + f ( i , j ),图像上得到一条很明显的亮边。,93,纵向微分运算,1理论基础,对灰度图像在纵方向进行微分实现了将图像向左平移一个像素,再用原图像减去平移后图像。相减的结果反映了原图像亮度变化率的大小。原图像中像素值保持不变的区域,相减的结果为零,即像素为黑;原图像中像素灰度值变化剧烈的区域,相减后得到较大的变化率,对应的像素很亮,而且像素灰度值差别越大,则得到的像素就越亮,所以图像的垂直边缘得到增强。,该算法的数学表达式为:,G ( i, j ) = f ( i , j ) - f ( i , j-1 )+,该算法用如下卷积核:,94,纵向微分运算,2效果对比图,(a)原图 (b)纵向微分运算,95,横向微分运算,1理论基础,该算法的数学表达式为:,G ( i, j ) = f ( i , j ) - f ( i , j-1 )+,该算法用如下卷积核:,96,横向微分运算,2效果对比图,横向微分运算,97,双方向一次微分运算,1理论基础,对灰度图像f在纵方向和横方向两个方向进行微分。该算法是同时增强水平和垂直方向的边缘。该算法的数学表达式为:,G(i,j)=sqrtf(i,j)-f(i,j-1)*f(i,j)-f(i,j-1)+f(i,j)-f(i- 1,j)* f(i,j)-f(i-1,j),对于含小数的G ( i , j )可四舍五入。,该算法用如下卷积核:,使用水平方向卷积核得出像素值为m,使用垂直方向卷积核得出像素值为n,该像素边界强度为:sqrt(mm)+(nn)。该算法是同时增强水平和垂直方向的边缘。,水平(i方向) 垂直(j方向),98,双方向一次微分运算,2处理结果,(a)原图 (b)纵向微分运算,(c) 横向微分运算 (d) 双方向一次微分运算,99,6.3 梯度锐化,直接以梯度值代替,辅以门限判断,给边缘规定一个特定的灰度级,给背景规定灰度级,根据梯度二值化图像,100,直接以梯度值代替,利用双方向一次微分运算,算出梯度后让梯度值等于该点的灰度值。,即f(i,j)= Gf(i,j)。,Gf(i,j)= f(i,j) - f(i-1,j)2+ f(i,j) - f(i,j-1)2 1/2,或Gf(i,j)=| f(i,j)- f(i-1,j)|+| f(i,j)- f(i,j-1)|,这种方法直截了当。但在均匀的区域,因梯度值Gf(i,j)很小,会表现出图像很暗的特性,这在某些场合是不适宜的。就像在前面看到的微分效果一样,除了黑色的背景,几乎看不出什么边界,所以在这里我们就不作介绍了。,101,辅以门限判断,门限判断梯度锐化的公式如下:,Gf(i,j)= f(i,j) - f(i-1,j)2+ f(i,j) - f(i,j-1),2,1/2,Gf(i,j)+100; Gf(i,j)T,g(i,j)=,f(i,j); 其它,102,辅以门限判断,该方法基本上不破坏图像的背景,又可增强边缘。这是因为Gf(i,j)表示的是两个像素点之间灰度差的大小,也就是梯度的大小。对于图像而言,物体和物体之间,背景和背景之间的梯度变化一般很小,灰度变化较大的地方一般集中在图像的边缘上,也就是物体和背景交接的地方,当设定一个合适的阈值T,Gf(i,j)大于T就认为该像素点处于图像的边缘,对结果加100,以使边缘变亮,而对于Gf(i,j)不大于T就认为像素点是同类像素(同是物体或同是背景)。这样既增亮了物体的边界,同时又保留了图像背景原来的状态。,103,辅以门限判断,2处理效果图,(a) 原图 (b)辅以门限判断效果图,104,给边缘规定一个特定的灰度级,Gf(i,j)= f(i,j) - f(i-1,j)2+ f(i,j) - f(i,j-1),2,1/2,La; Gf(i,j)T,g(i,j)= f(i,j); 其它,La为一指定的灰度值。这种处理实际上是门限锐化的一种特殊形式,它将边界的灰度值统一化,这样可以使边界更加清晰明显。该方法基本上不破坏图像的背景,又可找到边缘,并根据需要增强边缘。,105,给边缘规定一个特定的灰度级,2效果对比图,(a)原图 (b)给边缘规定一个特定的灰度级,106,给背景规定灰度级,Gf(i,j); Gf(i,j)T,g(i,j)= Lb; 其它,Lb为一对背景指定的灰度值。这种处理的原理和上一节介绍的给边缘规定一个特定的灰度级的原理是一样的,只不过这种处理将图像的背景灰度值统一化了,因此在这里不重复介绍了。,107,根据梯度二值化图像,1.理论基础,对阶跃边缘,在边缘点其一阶导数取极值。由此,我们对数字图像f(i,j)的每个像素取它的梯度值G(i,j),适当取门限T作如下判断:若G(i,j)T则(i,j)点为阶跃状边缘点,G(i,j)称为梯度算子的边缘图像,La; Gf(i,j)T,g(i,j)= Lb; 其它,La 和 Lb 的意义同上。 梯度是向量,各向同性。梯度方向对应于F(i,j)最大变化率方向上,即,Q=arctan /,108,根据梯度二值化图像,梯度幅度比例于邻像素的灰度级,在灰度陡变区域,梯度值大,在灰度相似区,梯度值小,在灰度级为常数区,梯度为零。这样处理可以使图像锐化的结果更加清晰,把图像中我们关心的部分突出出来,去除了我们不感兴趣的部分。,109,根据梯度二值化图像,2处理效果图,(a) 原图 (b)根据梯度二值化效果图,110,6.4 边缘检测,Roberts边缘检测算子,Sobel边缘检测算子,Prewitt边缘检测算子,Krisch边缘检测,111,Roberts边缘检测算子,Roberts边缘算子采用的是对角方向相邻的两个像素之差。从图像处理的实际效果来看,边缘定位准,对噪声敏感。Roberts边缘检测算子是一种利用局部差分算子寻找边缘的算子,它由下式给出:,Roberts算子:Gi,j=|fi,j-fi+1,j+1|+|fi+1,j-fi,j+1|;,Gi,j=(fi,j-fi+1,j
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 中学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!