




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、形态学图像处理形态学图像处理n形态学即数学形态学(Mathematical Morphology)主要用于从图像中提取对表达和描绘区域形状有意义的图像分量。n基本思想:用具有一定形态的结构元素去度量和提取图像中的对应形状以达到对图像分析和识别的目的n 形态学图像处理的数学基础和所用语言是集合论n形态学图像处理表现为一种邻域运算形式;n一种特殊定义的邻域称之为“结构元素”(Structure Element),在每个像素位置上它与二值图像对应的区域进行特定的逻辑运算,逻辑运算的结果为输出图像的相应像素。n形态学运算的效果取决于结构元素的大小、内容以及逻辑运算的性质。 1. 基础知识基础知识n在形
2、态学运算中,把一幅图像或者感兴趣的区域称为集合,用大写字母A,B,C表示;元素通常指一个单个的像素,该像素坐标位置用z=(z1, z2)表示。n1、集合与元素n属于:对于某一集合(图像区域)A,若点 a 在A内,则称 a 为A的元素,a 属于 A,记为aA;反之,若点 b 不属于A,记为b A。n2、集合与集合n并集:C=z|zA or zB,记为C = AB,即A与B的并集C包含集合A与集合B的所有元素。n交集:C=z|zA and zB,记为C = AB,即A与B的交集C包含同时属于集合A与集合B的所有元素。n补集: =z|z A,即A的补集是不包含A的所有元素组成的集合。n差集:A-B=
3、z|zA, z B,即A与B的差由属于A 而不属于B的元素构成。n包含:集合A的每一个元素都是集合B的元素,则称A为B的子集,记为A BcA二值形态学二值形态学n3、反射和平移n反射:又名对称,定义为 即关于原集合原点对称n平移:将集合B移到点z=(z1, z2),定义为n4、结构元素n设有两幅图A,S。若A是被处理对象,而S是用来处理A的,则称S为结构元素。Bb,| bzzBBb ,|)(zbxxBz集合的反射显示 ,( ),zBw wb bBAc caz aA n对一个给定的目标图像X和一个结构元素 S,将S在图像上移动。在每一个当前位置x,S+x只有三种可能的状态n第一种情形说明S+x与
4、X相关最大,n第二种情形说明S+x与X不相关,n而第三种情形说明S+x与X只是部分相关n1、腐蚀及其实现n对于集合A和S,使用S对A进行腐蚀,记为A S,定义为:n如果当S的原点移到z点时S能够完全包含于A中,则所有这样的z点构成的集合即为S对A的腐蚀图像。n腐蚀运算的结果不仅与结构元素的形状(矩形、圆形、菱形等)选取有关,而且还与原点位置的选取有关。 2. 二值图像中形态学运算二值图像中形态学运算)( |ASzSAz腐蚀运算的示例腐蚀运算的示例n图(a)中的阴影部分为集合X,图(b)中的中的阴影部分为结构元素S,而图(c)中黑色部分给出了腐蚀结果。n由图可见,腐蚀将图像(区域)收缩小了。n把
5、B的中心点与X上的点一一对应,如果B上的所有点都包含在X的范围内,则该点保留,否则删除。nmatlab中与腐蚀相关的两个函数为n(1) imeroden I2=imerode(I, SE)nI为原始图像,对应为二值图像nSE为由strel函数返回的自定义或预设的结构元素对象n(2) strelnstrel函数为形态学运算生成结构元素SE,当生成供二值形态使用的结构元素时,调用形式为:n SE= strel(shape, parameters)n常用平坦结构元素的shape参数nI=imread(circles.png);nse=strel(square,3); % 33的正方形结构元素nIb=
6、imerode(I,se); % 腐蚀nse1=strel(0 1 0;1 1 1;0 1 0); % 33的十字结构元素nIc=imerode(I,se1);nse2=strel(square,5); % 55的正方形结构元素nId=imerode(I,se2);nse3=strel(disk,3); % 33的圆形结构元素nIe=imerode(I,se3);nse4=strel(disk,5); % 55的圆形结构元素nIf=imerode(I,se4);nsubplot(2,3,1),imshow(I),title(原图像);nsubplot(2,3,2),imshow(Ib);nti
7、tle(33的正方形结构元素腐蚀);nsubplot(2,3,3),imshow(Ic);ntitle(33的十字结构元素腐蚀);nsubplot(2,3,4),imshow(Id);ntitle(55的正方形结构元素腐蚀);nsubplot(2,3,5),imshow(Ie);ntitle(33的圆形结构元素腐蚀);nsubplot(2,3,6),imshow(If);ntitle(55的圆形结构元素腐蚀);不同的结构元素对腐蚀产生的影响n腐蚀的作用能够消融物体的边界,而具体的腐蚀结果与图像本身和结构元素的形状有关。n如果物体整体上大于结构元素,腐蚀的结果使物体变“瘦”一圈,而这一圈的大小是
8、由结构元素决定的;n如果物体本身小于结构元素,则腐蚀后的图像中物体将完全消失;n如果物体仅有部分区域小于结构元素,则腐蚀后物体会在细连通处断裂,分离为两部分。n2、膨胀及其实现n对于集合A和S,使用S对A进行膨胀,记为A S,定义为:n设原有图像S,当其自身原点平移至z点时S相对于自身的原点的映像和A有公共的交集,即映像和A至少有一个点是重叠的,则所有这样的z点构成的集合为S对A的膨胀图像。 |( )zASzSAn算法过程如下:将结构元素B的原点移至集合A的某一点,将结构元素中点的坐标与集合A中该点坐标相加,得到对集合中一点的膨胀运算结果.对集合对集合中所有元素重复该过程 1 1 1 1 1
9、1 1 1 1 1 2 1 2 1 1 2 1 2 1 1 2 1 1 2 2 1 1 1 1 1 1 (a)目标图像A (b)结构元素B (c)结构元素 B(d)膨胀运算结果图像 nimdilate函数用于图像膨胀n I2 = imdilate(I, SE)nI为输入原始图像nSE为由strel函数返回的自定义或预设的结构元素对象nI2为膨胀后的输出图像n膨胀的作用与腐蚀相反,膨胀能使物体边界扩大,具体的膨胀结果与图像本身和结构元素的形状有关。n膨胀通常用于将图像中原本断裂的同一物体桥接起来。bw=imread(text.png);se=strel(line,11,90); % 生成线性结构
10、元素bw2=imdilate(bw,se); % 膨胀subplot(1,2,1),imshow(bw);title(原始图像);subplot(1,2,2),imshow(bw2);title(膨胀后的图像);二值图像的膨胀SE=3*3方形结构单元 原图 SE膨胀后图像 SE腐蚀后图像不同结构单元对腐蚀和膨胀的影响不同结构单元对腐蚀和膨胀的影响 原图 SE膨胀后图像 SE腐蚀后图像SE=5*5方形结构单元不同结构单元对腐蚀和膨胀的影响不同结构单元对腐蚀和膨胀的影响BABAcc)(BABAcc)( 膨胀和腐蚀运算的对偶性可分别表示为:膨胀和腐蚀运算的对偶性可分别表示为: 对目标图像的膨胀运算,
11、相当于对图像背景的腐蚀运算操作;对目标图像的腐蚀运算,相当于对图像背景的膨胀运算操作。 n3、开运算及其实现n开运算和闭运算都由膨胀和腐蚀复合而成,开运算是先腐蚀后膨胀,而闭运算是先膨胀后腐蚀。n使用结构元素S对A进行开运算,记为A S,可表示为:()A SA SSo一般来说,开运算可以使图像轮廓变得光滑,还能使狭窄的连接断开和消除细毛刺。on以相同的结构元素先后调用imerode和imdilate即可实现开运算。Matlab也直接提供了开运算函数imopen:n I2 = imopen(I, SE)nI为原始图像nSE是由strel函数返回的自定义或预设的结构元素I=imread(circl
12、es.png);se=strel(square,6);Id=imerode(I,se);IO=imopen(I,se);subplot(1,3,1),imshow(I);title(原图像);subplot(1,3,2),imshow(Id);title(66的正方形结构元素腐蚀);subplot(1,3,3),imshow(IO);title(66的正方形结构元素开运算);相同结构元素的腐蚀与开运算比较图I=imread(circuit.tif);thresh=graythresh(I); % 求最优阈值bw1=im2bw(I,thresh); % 灰度图像变为二值图像se=strel(re
13、ctangle,20,10); % 定义矩形结构元素Id=imerode(bw1,se); % 腐蚀运算IO=imopen(bw1,se); % 开运算subplot(1,3,1),imshow(bw1); title(原图像);subplot(1,3,2),imshow(Id); title(矩形结构元素腐蚀);subplot(1,3,3),imshow(IO); title(矩形结构元素开运算);矩形结构元素腐蚀与开运算n4、闭运算及其实现n使用结构S对A进行闭运算,记为AS,表示为:n含义:先用结构元素S对A进行膨胀,然后用S对膨胀结果进行腐蚀n闭运算同样可以使轮廓变得平滑,但与开运算相
14、反,它通常能够弥合狭窄的间断,填充小的洞孔。()A SASSn以相同的结构元素先后调用imdilate和imerode即可实现闭操作,也可直接调用闭运算函数imclosen对于多次应用开运算和闭运算和只进行一次运算的效果相同BABB)(A ,)(BABBAnI=imread(circles.png);nse=strel(disk,5); % 55的圆形结构元素nId=imdilate(I,se); % 膨胀nIC=imclose(I,se); % 闭运算nsubplot(1,3,1),imshow(I),title(原图像);nsubplot(1,3,2),imshow(Id);ntitle(
15、55的圆形结构元素膨胀);nsubplot(1,3,3),imshow(IC);ntitle(55的圆形结构元素闭操作);相同结构元素的膨胀与闭操作的比较开闭运算的代数性质开闭运算的代数性质n对偶性 n扩展性(收缩性) n即开运算使原图像缩小,而闭运算使原图像扩大 3 . 二值图像中形态学的应用二值图像中形态学的应用n设有两幅图像A和B,如果AB ,那么称B击中A,其中 是空集合的符号;否则,如果AB= ,那么称B击不中A(a)B击中A; (b)B击不中A击中或击不中变换击中或击不中变换n击中与击不中变换用于某种形状的精确定位,是一种形状检测的基本工具。n记为A S,可表示为:n其中, 且 ,
16、实际上S1代表S中感兴趣的物体(要检测的形状)对应的集合,而S2对应S中背景部分对应的集合。(1)(2)cASA SAS12SSSS1S2n对二值图像进行击中击不中操作的函数是bwhitmiss,调用方法是:n bw2=bwhitmiss(bw1, SE1,SE2)n bw1是输入图像n SE1是一个结构元素,它的值规定了保留像素值的邻域;n SE2是一个结构元素,它的值规定了舍弃像素值的邻域。bw2=bwhitmiss(bw1,SE1,SE2)等同于imerode(bw1, SE1) & imerode(bw1,SE2)4. 边界提取与跟踪边界提取与跟踪n1、边界提取n对于二值图像来
17、说,如果它的像素值为1,而邻域中至少有一个像素值为0,则称为边界像素。n要在二值图像中提取物体的边界,可以将所有物体内部的点删除(置为背景)。n具体是逐行扫描图像,如果发现一个亮点(前景点)的8个邻域都是亮点,则该点为内部点,在目标图像中将其删除。n边界提取定义:n (A)= A(AB)n上式表示:先用B对A腐蚀,然后用A减去腐蚀得到的结果,B是结构元素。n实际上相当于采用一个33的结构元素对原图像进行腐蚀,使得只有那些8个邻域都有亮点的内部点被保留,再用原图像减去腐蚀后的图像,恰好删除了内部点,保留了边界像素。 物体A (b) 结构元素B (c) 用结构元素B腐蚀A (d) 物体A的边界I=
18、imread(circles.png);se=strel(disk,3); % 33的圆形结构元素Id=imerode(I,se); % 腐蚀留下内部点Iout=I-Id; % 减去内部点留下边界点subplot(1,2,1),imshow(I),title(原图像);subplot(1,2,2),imshow(Iout);title(边界图像);用腐蚀的方法提取边界nMatlab提供的边界检测函数:bwperimn bw2=bwperim(bw1)n bw2=bwperim(bw1,conn)nbw1输入的二值图像nconn规定了连通性,对于二值图像来说,conn可以是4或者8,默认值为4。
19、nbw=imread(circles.png);nbw2=bwperim(bw,8);nsubplot(1,2,1),imshow(bw);title(原始图像);nsubplot(1,2,2),imshow(bw2);title(边界图像);应用实例:人形上半身图像侧面轮廓提取n2、边界跟踪n为了依次纪录下边界上的各个像素,边界跟踪首先按照某种扫描规则找到目标物体边界上的一个像素,而后以该像素为起点,根据某种顺序(顺时针或逆时针)依次找出物体边界上的其余像素,直到又回到起点,完成整条边界的跟踪。n边界跟踪一般采用8邻域,从最左边开始按照顺时针顺序扫描。P0P1P2P3P4P5P6P7P8P9
20、P10P11P12P13P14p15P16P0扫描顺序示意图边界跟踪示意图nP0点的确定:n(1) 按照行从上到下从左到右(或者按列从左到右从上到下)的顺序,第一个不为0的点为P0,见图(a)、图(b)。n(2) 从任意一点开始,如果该像素的8-邻域存在为0的点,则该像素为边界像素,定义为P0,否则考察该像素左边的像素,见图(c)。图(a) 水平扫描图(b) 垂直扫描图(c) 依次向左扫描5. 骨架提取骨架提取n为了把图像目标缩小为直线而不改变图像的主要结构,可以使用bwmorph函数来提取图像中目标的骨架。调用方法如下:n bw2=bwmorph(bw,skel)n bw2=bwmorph(
21、bw,skel,n)n bw是输入的二值图像n skel是专门的形态学操作nn 是指该形态学操作执行的次数,可以为无限次,直到图像不发生变化为止。bw=imread(circles.png);bw1=bwperim(bw,8); % 边界图像bw2=bwmorph(bw,skel,inf); % 骨架图像subplot(1,3,1),imshow(bw);title(原图像);subplot(1,3,2),imshow(bw1);title(边界图像);subplot(1,3,3),imshow(bw2);title(骨架图像);边界与骨架的对比图6. 区域填充区域填充n区域填充可视为边界提取
22、的反过程,它是在已知边界的情况下得到边界包围的整个区域的形态学技术。n已知某一8-连通边界和边界内的某个点,要求从该点开始填充整个边界包围的区域,这一过程称为“种子”填充,填充的开始点称为“种子”。n算法描述如下:n初始化:B0=种子点,A为要填充的边界,S为填充结构元素n求出A的补集:n循环:nUntil1()ciiBBSAiiBB 1cAnMatlab工具箱中使用imfill函数对二值图像或者灰度图像进行填充,调用方法如下:n bw2=imfill (bw, locations)n bw2=imfill (bw, holes)n I2 = imfill (I)n bw2=imfill (bw, locations, conn)nbw是二值图像;nlocations规定了填充操作的起始点;nholes规定了填充二值图像中的孔洞;nI指灰度图像,即此函数可以填充灰度图像;nconn规定了连通性,对于二值图像来说可以为4或者8I=imread(coins.png);bw=im2bw(I); % 灰度图像转化为二值图像bw1=imfill(bw,holes); % 填充subplot(1,2,1),imshow(bw); title(原始二值图像);subplot(1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 哈尔滨电力职业技术学院《走向富足通过科技改变人类未来》2023-2024学年第二学期期末试卷
- 扬州环境资源职业技术学院《大数据内存计算》2023-2024学年第二学期期末试卷
- 青岛城市学院《经济学通论》2023-2024学年第二学期期末试卷
- 长春工程学院《近代仪器分析》2023-2024学年第二学期期末试卷
- 广东邮电职业技术学院《价值观教育专题研究》2023-2024学年第二学期期末试卷
- 辽宁机电职业技术学院《妇女社会工作》2023-2024学年第二学期期末试卷
- 湖南交通工程学院《大学生创新创业实践》2023-2024学年第二学期期末试卷
- 泰州2025年江苏泰州兴化市部分高中学校校园招聘教师22人笔试历年参考题库附带答案详解
- 湖南中医药高等专科学校《中学化学教学设计(含课程标准与教材研究)》2023-2024学年第二学期期末试卷
- 湘西民族职业技术学院《自动机械设计》2023-2024学年第二学期期末试卷
- 乡村建设规划许可培训
- 加气站安全课件
- 北师大版二年级数学下册各单元测试卷
- GB/T 45037-2024粮油机械扒谷机
- 品管圈PDCA改善案例-降低住院患者跌倒发生率
- 分布式计算平台设计与实现
- 团聚体与土壤有机质转化-洞察分析
- 公务车辆定点加油服务投标文件(技术方案)
- 膝关节镜手术后康复
- 安徽工程大学《回归分析》2023-2024学年第一学期期末试卷
- 人教版物理八年级下册 专项训练卷 (一)力、运动和力(含答案)
评论
0/150
提交评论