
数字图像处理复习ppt课件.ppt
27页第二章 数字图像处理基础 1、图像的数字化、图像的数字化-包括采样和量化两个过程包括采样和量化两个过程2、采样和量化参数的选择对图像数据量的影响、采样和量化参数的选择对图像数据量的影响3、、BMP位图格式:包括位图文件头、位图信息头、调色板〔位图格式:包括位图文件头、位图信息头、调色板〔彩色图像无调色板〕和像素点阵〔位图数据)彩色图像无调色板〕和像素点阵〔位图数据)4、位图文件头的大小、位图信息头的大小、调色板的大小、位图文件头的大小、位图信息头的大小、调色板的大小5、像素点阵数据量大小以及包括文件头在内的整个图像所占、像素点阵数据量大小以及包括文件头在内的整个图像所占字节:字节:一幅大小为一幅大小为M×N、灰度级数为、灰度级数为G的图像所需的存储空间,即图的图像所需的存储空间,即图像的数据量〔不包括文件头),像的数据量〔不包括文件头),G=2g,大小为,大小为M×N×g ((bit))= M×N×g/8(byte)6、位图数据每一行的字节数必须是、位图数据每一行的字节数必须是4的整数倍,否则需要补齐的整数倍,否则需要补齐7、、BMP文件的数据存放格式为从下到上,从左到右读取文件的数据存放格式为从下到上,从左到右。
读取BMP文件时,先读取的是最下面的数据,然后依次从下往上读取数文件时,先读取的是最下面的数据,然后依次从下往上读取数据 8、数字图像根据灰度级数的差异可分为:黑白图像、灰度图像和、数字图像根据灰度级数的差异可分为:黑白图像、灰度图像和彩色图像彩色图像9、位图文件头、位图文件头BITMAPFILEHEADER结构如下:结构如下: typedef struct tagBITMAPFILEHEADER{ WORD bfType; /*指定文件类型,必须是指定文件类型,必须是0x424D,,即字符串即字符串“BM” */ DWORD bfSize; /*指定文件大小指定文件大小 */ WORD bfReserved1;/*保留字保留字 */ WORD bfReserved2; /*保留字保留字 */ DWORD bfOffBits;/*文件头到实际的位图数据的偏移文件头到实际的位图数据的偏移字节数字节数 * / }BITMAPFILEHEADER, FAR *LPBITMAPFILEHEADER;该结构的长度是固定的,为该结构的长度是固定的,为14个字节个字节 。
bfType—用来标识本文件为用来标识本文件为BMP位图文件位图文件bfSize—记录此位图文件的实际长度记录此位图文件的实际长度bfOffBits—位图阵列相对于文件头的偏移距离位图阵列相对于文件头的偏移距离10、位图信息头、位图信息头BITMAPINFOHEADER结构的长度为结构的长度为40个节个节 ,, 其结构如下:其结构如下: typedef struct tagBITMAPINFOHEADER{ DWORD bfSize; /* 指定这个结构的大小,为指定这个结构的大小,为40个字个字节节 LONG biWidth; /*指定图像的宽度,单位是像素指定图像的宽度,单位是像素 LONG biHeight; /*指定图像的高度,单位是像素指定图像的高度,单位是像素 WORD biPlanes; /*必须是必须是1 WORD biBitCount; /*指定表示颜色位数,指定表示颜色位数,1(黑白黑白)8〔〔256色)、色)、24〔真彩色)〔真彩色) DWORD biCompression; /*指定是否压缩指定是否压缩,分别为分别为BI_RGB、、BI_RLE4、、BI_RLE8,一般情况下置为,一般情况下置为BI_RGB不压缩不压缩模式模式 DWORD biSizeImage; /*指定实际的位图数据占用的指定实际的位图数据占用的字节数字节数 LONG biXPelsPerMeter; /*指定目标设备的水平分指定目标设备的水平分辨率辨率 LONG biYPersPerMeter; /*指定目标设备的垂直指定目标设备的垂直分辨率分辨率 DWORD biClrUsed; /*指定本图像实际用到的颜色指定本图像实际用到的颜色数数 DWORD biClrImportant; /*指定本图像中重要的颜指定本图像中重要的颜色数色数 }BITMAPINFOHEADER, FAR *LPBITMAPINFOHEADER; 11、、 palette〔调色板)〔调色板) 调色板实际上是一个数组调色板实际上是一个数组 ,数组中每个元素的类型为一个数组中每个元素的类型为一个RGBQUAD结构,占结构,占4个字节。
结构定义如下:个字节结构定义如下:typedef struct tagRGBQUAD{ BYTE rgbBlue; BYTE rgbGreen; BYTE rgbRed; BYTE rgbReserved; }RGBQUAD; 有些位图,比如真彩色图,没有调色板他们的位图信息头后有些位图,比如真彩色图,没有调色板他们的位图信息头后直接是位图数据直接是位图数据12、位图数据、位图数据 它分两种情况:对于用到调色板的位图,图像数据就是该像它分两种情况:对于用到调色板的位图,图像数据就是该像素颜色在调色板中的索引值;对于真彩色图,图像数据就是实素颜色在调色板中的索引值;对于真彩色图,图像数据就是实际的际的R、、G、、B值对于某一坐标点值对于某一坐标点(x,y)处的地址计算公式为〔处的地址计算公式为〔以原点以原点(0,0)在在BMP图像左下角为例):图像左下角为例):灰度图:位图象素点阵首地址+灰度图:位图象素点阵首地址+y*图像宽度图像宽度(必须是必须是4的倍数的倍数)+x彩色图:位图象素点阵首地址+彩色图:位图象素点阵首地址+y*图像宽度图像宽度×3(图像宽度图像宽度×3必须必须是是4的倍数的倍数)+x×3举例说明:举例说明:lena.bmplenacaise.bmp图像信息:图像信息:灰度灰度BMP图像;图像;彩色彩色BMP图像;图像;宽度为宽度为140;;宽度为宽度为140;;高度为高度为140;;高度为高度为140;;不压缩;不压缩;不压缩;不压缩;采用灰度调色板;采用灰度调色板;没有调色板;没有调色板;文件长度文件长度20680。
文件长度文件长度58856根据上述这些信息,利用根据上述这些信息,利用VC以二进制方式打开文件并找出文以二进制方式打开文件并找出文件中在文件头部分所对应的值件中在文件头部分所对应的值图片信息比较:图片信息比较:lena.bmplenacaise.bmp文件头:文件头:bfType “BM” “BM”bfSize 2068058856bfReserved100bfReserved200bfOffBits107854信息头:信息头:bfSize4040biWidth140140biHeight140140biBitCount824位图文件头位图文件头—lena.bmp在在VC中打开的二进制内容中打开的二进制内容bfType-’BM’bfSize-文件实际长度0x000050C8=20680bfOffsets-偏移距离0x00000436=1078位图信息头位图信息头—lena.bmp在在VC中打开的二进制内容中打开的二进制内容bfSize-40高度高度-140图像宽度-图像宽度-140颜色位数颜色位数-8说明为灰度图像说明为灰度图像biPlanes-1调色板调色板—lena.bmp在在VC中打开的二进制内容中打开的二进制内容bfType-’BM’位图文件头位图文件头— lenacaise.bmp在在VC中打开的二进制内容中打开的二进制内容bfType-’BM’bfSize-文件实际长度0x0000E5E8=58856bfOffsets-偏移距离0x00000036=54位图信息头位图信息头— lenacaise.bmp在在VC中打开的二进制内容中打开的二进制内容bfSize-40高度高度-140图像宽度-图像宽度-140颜色位数颜色位数-24说明为彩色图像说明为彩色图像biPlanes-1上述内容中无调色板上述内容中无调色板对于灰度图像,如何定位图像中任一点在图像文件中的位置,对于灰度图像,如何定位图像中任一点在图像文件中的位置,并找到该点象素的值?并找到该点象素的值?如图如图(x,y)=(100,39)(x,y)=(100,39)处地址:位图象素点阵首地址+处地址:位图象素点阵首地址+3939××140140++100100==6638=0x19EE6638=0x19EE,如下图,如下图(0x4E)=(78)(0x4E)=(78)::(78)对于真彩色图,对于真彩色图,3 3个字节才能表示个字节才能表示1 1个像素,如何定位图像中任个像素,如何定位图像中任一点在图像文件中的位置,并找到该点象素的值?一点在图像文件中的位置,并找到该点象素的值?如图如图(x,y)=(100,39)(x,y)=(100,39)处地址:位图象素点阵首地址+处地址:位图象素点阵首地址+3939××140140××3 3字节+字节+100100××3 3字节=字节=5454++1638016380++300300==1673416734==0x415E0x415E,如下图:,如下图:(73,47,130)举例说明:举例说明:lena.bmplenacaise.bmp图像信息:图像信息:灰度灰度BMP图像;图像;彩色彩色BMP图像;图像;宽度为宽度为140;;宽度为宽度为140;;高度为高度为140;;高度为高度为140;;不压缩;不压缩;不压缩;不压缩;采用灰度调色板;采用灰度调色板;没有调色板;没有调色板;根据上述已知的这些信息,计算灰度图和彩色图文件头大小根据上述已知的这些信息,计算灰度图和彩色图文件头大小(其中位图文件头、信息文件头、调色板分别多少其中位图文件头、信息文件头、调色板分别多少)、位图象素、位图象素点阵大小?点阵大小?12、访问、访问DIB API重要函数重要函数1)ReadDIBFile(CFile& file) ---该函数将指定文件中的该函数将指定文件中的DIB对象读到指定内存区对象读到指定内存区域中。
域中 2)DIBWidth(LPSTR lpDIB)---该函数返回该函数返回DIB中图像的宽度中图像的宽度 3)DIBHeight(LPSTR lpDIB)---该函数返回该函数返回DIB中图像的高度中图像的高度 4)DIBBitCount(LPSTR lpbi)---该函数返回该函数返回DIB图像中读取的象素位数图像中读取的象素位数 5)DIBNumColors(LPSTR lpbi) ---该函数返回该函数返回DIB中调色板的颜色的种数中调色板的颜色的种数 6)FindDIBBits(LPSTR lpbi)---返回返回DIB图像象素点阵起始地址图像象素点阵起始地址 7)WIDTHBYTES(bits) ---该函数获取每行图像占用的字节数该函数获取每行图像占用的字节数 8)SaveDIB(HDIB hDib, CFile& file) ---该函数将指定的该函数将指定的DIB对象保存到指定的对象保存到指定的CFile中中 , CFile由调用程序打开和关闭由调用程序打开和关闭 9)PaintDIB(HDC hDC,LPRECT lpDCRect, HDIB hDIB,LPRECT lpDIBRect,CPalette* pPal)---该函数主要用来绘制参数该函数主要用来绘制参数hDIB图像对象图像对象 ,输,输出的设备由参数出的设备由参数hDC指定;绘制的目的矩形区域由参数指定;绘制的目的矩形区域由参数lpDCRect指定;输出指定;输出DIB的源矩形区域由参数的源矩形区域由参数lpDIBRect指定。
指定第四章 图像增强1、灰度直方图的定义以及计算方法、灰度直方图的定义以及计算方法2、图像直方图均衡化变换原理及方法、计算流程〔见作业)、图像直方图均衡化变换原理及方法、计算流程〔见作业)3、图像平滑和锐化、图像平滑和锐化-模板卷积的计算方法〔见作业)模板卷积的计算方法〔见作业)在具体计算时:在具体计算时: 将模板中心和图像中待处理的某像素点重合,将模板各元素值将模板中心和图像中待处理的某像素点重合,将模板各元素值与模板下各自的对应像素值相乘与模板下各自的对应像素值相乘 将模板输出响应作为当前模板中心所处像素的灰度值将模板输出响应作为当前模板中心所处像素的灰度值4、常用的梯度算子、常用的梯度算子-Roberts,Prewitt,Sobel〔会写出各自模板)〔会写出各自模板)例:例:一幅图像各象素灰度值分布如右图:一幅图像各象素灰度值分布如右图: 若用若用 掩模模板对其进行处理,掩模模板对其进行处理,请写出原图像方框中的像素经其掩模处理后的结果请写出原图像方框中的像素经其掩模处理后的结果14 13 10 9 10 810 12 5 10 4 97 8 19 22 5 88 17 23 16 18 95、中值滤波的原理及方法、中值滤波的原理及方法中值滤波是对一个滑动窗口内的诸像素灰度值排序,用中值滤波是对一个滑动窗口内的诸像素灰度值排序,用中值代替窗口中心像素的原来灰度值,因此它是一中值代替窗口中心像素的原来灰度值,因此它是一种非线性的图像平滑方法。
种非线性的图像平滑方法例:采用例:采用1×3窗口进行中值滤波窗口进行中值滤波原图像为: 原图像为: 2 2 6 2 1 2 4 4 4 2 4处理后为:处理后为: 2 2 2 2 2 2 4 4 4 4 4(见作业)(见作业)例:一幅图像各象素灰度值分布如右图:例:一幅图像各象素灰度值分布如右图: 请用请用3×3的十字形窗口对方框中各像素点进行中值滤波的十字形窗口对方框中各像素点进行中值滤波处理14 18 12 11 10 810 11 9 15 8 97 8 13 30 5 88 7 10 6 8 5第五章 图像分割与边缘检测1、阈值分割算法、阈值分割算法—确定一个阈值确定一个阈值T,对于图像中的每个像素,若,对于图像中的每个像素,若其灰度值大于其灰度值大于T,置为目标点,否则置为背景点,或者相反,,置为目标点,否则置为背景点,或者相反,从而将图像分为目标区域与背景区域从而将图像分为目标区域与背景区域。
2、迭代阈值的选取方法〔、迭代阈值的选取方法〔P82))3、区域生长分割算法的基本原理、区域生长分割算法的基本原理4、几种常用的边缘检测算子及具有某种方向边缘检测功能的算、几种常用的边缘检测算子及具有某种方向边缘检测功能的算子并能分别写出其模板子并能分别写出其模板罗伯特交叉罗伯特交叉Roberts算子算子蒲瑞维特蒲瑞维特Prewitt算子算子索贝尔索贝尔Sobel算子算子5、利用上述算子对图像进行检测〔见作业)、利用上述算子对图像进行检测〔见作业)例:一幅图像各象素灰度值分布如右图:例:一幅图像各象素灰度值分布如右图: 用用Robert、、Prewitt、、Sobel边缘检测算子对其进行处理,边缘检测算子对其进行处理,请写出三种边缘检测算子的模板以及原图像方框中的像素请写出三种边缘检测算子的模板以及原图像方框中的像素经其处理后的结果经其处理后的结果14 13 10 9 10 810 12 5 10 4 97 8 19 22 5 88 17 23 16 18 96、区域生长的算法实现、区域生长的算法实现1〕根据图像的不同应用选择一个或一组种子,它或者〕根据图像的不同应用选择一个或一组种子,它或者是最亮或最暗的点,或者是位于点簇中心的点。
是最亮或最暗的点,或者是位于点簇中心的点2〕定义适当的区域内部隶属规则〕定义适当的区域内部隶属规则 3〕从该种子开始向外扩张,首先把种子像素加入集合,〕从该种子开始向外扩张,首先把种子像素加入集合,然后不断将与集合中各个像素连通、且满足区域内然后不断将与集合中各个像素连通、且满足区域内部隶属规则的像素加入集合部隶属规则的像素加入集合4〕上一过程进行到不再有满足条件的新的像素加入集〕上一过程进行到不再有满足条件的新的像素加入集合为止注:区域内部隶属规则是根据图像的灰度特性、纹理注:区域内部隶属规则是根据图像的灰度特性、纹理特性以及颜色特性等多种因素确定的区域生长成特性以及颜色特性等多种因素确定的区域生长成功与否的关键在于选择合适的区域内部隶属规则功与否的关键在于选择合适的区域内部隶属规则7、区域生长重要举例、区域生长重要举例 如:内部隶属规则定义为邻点的灰度级相对于区如:内部隶属规则定义为邻点的灰度级相对于区域内平均灰度级接近程度,灰度接近程序设为域内平均灰度级接近程度,灰度接近程序设为<2Mean=9 8.25 8终终止止若灰度接近程序设为若灰度接近程序设为<3、、<4,区域生长情况又是,区域生长情况又是怎样?怎样?第八章 数学形态学及其应用1、集合论基本概念、集合论基本概念-元素、集、交集、并集、补集、平移和反射元素、集、交集、并集、补集、平移和反射2、二值形态学中两个最基本的运算、二值形态学中两个最基本的运算-腐蚀与膨胀腐蚀与膨胀3、腐蚀和膨胀的集合表达式〔至少写出一种)、腐蚀和膨胀的集合表达式〔至少写出一种)X⊝ ⊝S={x| S+x X}X⊝ ⊝S= ∩{X+s| -s∈∈S} XS= ∪∪{X+s| s∈∈S}XS= ∪∪{S+x| x∈∈X}4、腐蚀和膨胀实例〔见作业)、腐蚀和膨胀实例〔见作业)画图画图 (1) 画出用一个半径为画出用一个半径为r/4的圆形结构元素膨的圆形结构元素膨胀一个半径为胀一个半径为r的圆的示意图;的圆的示意图; (2) 画出用上述结构元素膨胀一个画出用上述结构元素膨胀一个r×r的正方的正方形的示意图;形的示意图; (3) 画出用上述结构元素膨胀一个侧边长为画出用上述结构元素膨胀一个侧边长为r的等腰三角形的示意图;的等腰三角形的示意图; (4) 将将(1)、、(2)、、(3)中的膨胀改为腐蚀,分中的膨胀改为腐蚀,分别画出示意图。
别画出示意图 如下图,左图的黑框部分为物体集合如下图,左图的黑框部分为物体集合X,右图黑框部,右图黑框部分为结构元素分为结构元素S〔标有〔标有”+”处为原点),试分别写出处为原点),试分别写出物体集合物体集合X被结构元素被结构元素S腐蚀和膨胀的结果图,用黑框腐蚀和膨胀的结果图,用黑框标出。
