图像处理第6章ppt课件.ppt_第1页
图像处理第6章ppt课件.ppt_第2页
图像处理第6章ppt课件.ppt_第3页
图像处理第6章ppt课件.ppt_第4页
图像处理第6章ppt课件.ppt_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

28 03 2020 物理系 MATLAB应用图像处理 第六章二值形态学操作 本章要点 二值形态学基本运算膨胀和腐蚀的MATLAB实现方法形态操作应用二进制图像的形态学应用 28 03 2020 物理系 MATLAB应用图像处理 6 1二值形态学基本运算 6 1 1二值形态学概念形态学的基本思想是使用具有一定形态的结构元素来度量和提取图像中的对应形状 从而达到对图像进行分析和识别的目的 使用形态学操作可以完成增强对比度 消除噪声 细化 骨架化 填充和分割等常用图像处理任务 28 03 2020 物理系 MATLAB应用图像处理 其基本运算有四种 膨胀 或扩张 腐蚀 或侵蚀 开启和闭合 二值形态学中的运算对象是集合 通常给出一个图像集合和一个结构元素集合 利用结构元素对图像进行操作 结构元素是一个用来定义形态操作中所用到的邻域的形状和大小的矩阵 该矩阵仅由0和1组成 可以具有任意的大小和维数 数值1代表邻域内的像素 形态学运算都是对数值1的区域进行的运算 28 03 2020 物理系 MATLAB应用图像处理 6 1 2膨胀和腐蚀 膨胀的运算符图像集合A用结构元素B来膨胀用B对A进行膨胀的过程是 首先对B作关于原点的映射 再将其映像平移x A与B映像的交集不为空集时 B的原点就是膨胀集合的像素 28 03 2020 物理系 MATLAB应用图像处理 也就是说 用B来膨胀A得到的集合是B 的位移与A至少有一个非零元素相交时B的原点的位置集合 如果将B看成是一个卷积模板 膨胀就是对B作关于原点的映像 然后再将映像连续地在A上移动而实现的 P102图6 1膨胀运算示意图 28 03 2020 物理系 MATLAB应用图像处理 腐蚀的运算符号A用B腐蚀的结果是所有满足将B平移x后 B仍全部包含在A中的x的集合 从直观上看就是B经过平移后全部包含在A中的原点组成的集合 P102图6 2腐蚀运算示意图P103原点不包含在结构元素中的膨胀或腐蚀运算示意图 28 03 2020 物理系 MATLAB应用图像处理 6 1 3膨胀和腐蚀的对偶性 使用结构元素对图像进行腐蚀操作相当于使用该结构元素的映像对图像背景进行膨胀操作 反之亦然 P104图6 6膨胀与腐蚀对偶性示意图 28 03 2020 物理系 MATLAB应用图像处理 6 1 4开启和闭合 使用同一个结构元素对图像先进行腐蚀 然后再进行膨胀的运算称为开启 先进行膨胀 然后再进行腐蚀的运算称为闭合 开启的运算符为 A用B来开启记为A B闭合的运算符为 A用B来闭合记为A B开启和闭合不受原点位置的影响 无论原点是否包含在结构元素中 开启和闭合的结果都是一定的 根据膨胀和腐蚀的对偶性可知 开启和闭合也具有对偶性 28 03 2020 物理系 MATLAB应用图像处理 6 2膨胀和腐蚀的MATLAB实现方法 6 2 1图像处理的膨胀和腐蚀概念在MATLAB图像工具箱中 膨胀一般是给图像中的对象边界添加像素 而腐蚀则是删除对象边界像素 在形态学的膨胀和腐蚀操作中 输出图像中所有给定像素的状态都是通过对输入图像中相应像素及其邻域使用一定的规则来确定的 28 03 2020 物理系 MATLAB应用图像处理 膨胀和腐蚀规则 P105图6 7图6 8 进行膨胀操作时 输出像素值是输入图像相应像素邻域内所有像素的最大值 在二进制图像中 如果任何一个像素值为1 那么对应的输出像素值为1 而在腐蚀操作中 输出像素值是输入图像相应像素邻域内所有像素值的最小值 在二进制图像中 如果任何一个像素值为0 那么对应的输出像素值为0 28 03 2020 物理系 MATLAB应用图像处理 膨胀和腐蚀操作使用的填充方法 膨胀 超出图像边界的像素值定义为该数据类型允许的最小值 对于二进制图像 这些像素值被设置为0 对于灰度图像 uint8类型的最小值也是0 腐蚀 超出图像边界的像素值定义为该数据类型允许的最大值 对于二进制图像 这些像素值被设置为1 对于灰度图像 uint8类型的最大值是255 28 03 2020 物理系 MATLAB应用图像处理 6 2 2结构元素 膨胀和腐蚀操作的基本组成部分就是用来测试输入图像的结构元素 结构元素的原点都定义在对输入图像感兴趣的位置处 结构元素的原点指定了图像中需要处理的像素范围 结构元素中数值为1的点决定了结构元素邻域中的像素在进行膨胀或腐蚀操作时是否需要参与计算 28 03 2020 物理系 MATLAB应用图像处理 二维 平面 结构元素由一个数值为0或1的矩阵组成 通常比待处理的图像小得多 三维或非平面的结构元素使用0和1来定义结构元素在X和Y平面上的范围 采用第三维来定义高度 28 03 2020 物理系 MATLAB应用图像处理 MATLAB的形态函数使用以下函数来获得任意大小和维数的结构元素的原点坐标 origin floor size nhood 1 2 在以上语句中 nhood是指结构元素定义的邻域 结构元素在MATLAB中被定义为一个称为STREL的对象 getsequence函数返回一个分解后的结构元素数组 NOTE 通常可以选择一个与希望处理的输入图像相同形状的结构元素 28 03 2020 物理系 MATLAB应用图像处理 可以使用MATLAB图像处理工具箱函数strel来创建任意大小的STREL对象 Strel函数支持许多种常用形状 如线形 line 钻石形 diamond 圆盘形 disk 球形 ball 和任意形状 arbitrary 等 如 以下语句将创建一个平面钻石结构元素 se strel diamond 3 28 03 2020 物理系 MATLAB应用图像处理 6 2 3图像膨胀 MATLAB使用imdilate函数进行图像膨胀 调用格式 BW2 imdilate BW SE 其中 BW是待处理的输入图像 SE是结构元素 P107例6 1 28 03 2020 物理系 MATLAB应用图像处理 6 2 4图像腐蚀 MATLAB使用imerode函数进行图像腐蚀 调用格式 BW2 imerode BW SE P108例6 2 28 03 2020 物理系 MATLAB应用图像处理 6 2 5综合使用膨胀和腐蚀操作 MATLAB图像处理工具箱中提供了函数imopen来实现对图像的开启操作 综合使用imdilate和imerode同样可以实现图像的开启操作 P109例6 3 28 03 2020 物理系 MATLAB应用图像处理 6 2 6基于膨胀和腐蚀的形态操作 MATLAB图像处理工具箱中基于膨胀和腐蚀的形态操作函数主要有 bwhitmiss 图像的逻辑 与 操作 该函数使用一个结构元素对图像进行腐蚀操作后 再使用第二个结构元素对图像进行腐蚀操作 调用格式 BW2 bwhitmiss BW SE1 SE2 其中 BW是二进制图像 SE1和SE2分别是结构元素 28 03 2020 物理系 MATLAB应用图像处理 imbothat 从原始图像中减去经过形态关闭后的图像 该函数可以用来寻找图像中的灰度槽 其调用格式 IM2 imbothat IM SE 其中 IM为输入图像 SE为结构元素 imclose 闭合操作 该函数首先对图像进行膨胀 然后再对膨胀后的图像进行腐蚀 两个操作使用同样的结构元素 其调用格式 IM imclose IM SE 28 03 2020 物理系 MATLAB应用图像处理 imopen 开启操作 该函数首先对图像进行腐蚀 然后再对腐蚀后的图像进行膨胀 两个操作使用同样的结构元素 其调用格式 IM imopen IM SE imtophat 从原始图像中减去形态开启后的图像 可以用来增强图像的对比度 其调用格式 IM imtophat IM SE MATLAB工具箱还有一些较为复杂的形态复合操作 例如 bwmorph bwperim等 28 03 2020 物理系 MATLAB应用图像处理 6 3形态操作应用 6 3 1形态重构形态重构是图像形态处理的重要操作之一 通常用来强调图像中与掩模图像指定对象相一致的部分 同时忽略图像中的其他对象 形态重构根据一幅图像 称之为掩模图像 的特征对另一幅图像 称之为标记图像 进行重复膨胀 重点是要选择一个合适的标记图像 使膨胀所得的结果能够强调掩模图像中的主要对象 每一次膨胀处理从标记图像的峰值点开始 整个膨胀过程将一直重复 直到图像的像素值不再变化为止 28 03 2020 物理系 MATLAB应用图像处理 形态重构操作具有一些独有的特性 1 形态重构处理是基于两幅图像的 一个是标记图像 另一个是掩模图像 而不仅仅是一幅图像和一个结构元素 2 重构将一直重复直至图像稳定 即图像不再变化 3 形态重构是基于连通性概念的 而不是基于结构元素的 P111 图6 15一维图像形态重构过程及结果示意图 28 03 2020 物理系 MATLAB应用图像处理 表6 1MATLAB标准二维和三维连通类型 P112MATLAB形态重构实现方法P112图6 17首先要创建标记图像 标记图像的峰值应该确定掩模图像中希望强调对象的位置 MATLAB使用函数imsubtract将掩模图像减去一个常数 例如 marker imsubbtract A 2 然后调用函数imreconstruct进行图像的形态重构 28 03 2020 物理系 MATLAB应用图像处理 调用格式 IM imreconstruct MARKER MASK CONN 其中 MARKER和MASK分别表示标记图像和掩模图像 CONN是可选项 用来指定连通类型 缺省值为对二维图像使用8连通 对三维图像使用26连通 形态重构所得的图像仅仅包含原始图像的主要对象 其他次要对象都被忽略了 28 03 2020 物理系 MATLAB应用图像处理 6 3 2填充操作 填充操作是一种根据像素边界求取像素区域的操作 也是形态学的一种常用操作 MATLAB图像处理工具箱函数imfill可以用来实现灰度图像和二进制图像的填充操作 对于二进制图像 imfill函数将相邻的背景像素 数值为0 设置为对象的边界像素 数值为1 对于灰度图像 imfill函数将被较亮区域围绕的黑暗区域的灰度值 设置为与围绕区域的像素值相同的数值 从效果上来看 imfill函数将删除没有连接到边界的局部极小值 28 03 2020 物理系 MATLAB应用图像处理 这个操作在删除图像中的人为痕迹是非常有用的 Imfill函数有许多种调用格式 最常用的 BW2 imfill BW1 LOCATIONS 其中 BW1为输入二进制图像 LOCATIONS表示填充的起始点 实现填充操作主要通过三个步骤 首先要指定填充操作的连通性 然后指定二进制图像填充起始点 最后进行二进制图像和灰度图像区域的填充 Helpimfill 28 03 2020 物理系 MATLAB应用图像处理 6 3 3图像的极值处理方法 如果将灰度图像视为三维图像 其中x和y轴描述像素位置 而Z轴表示每一个像素的亮度 那么在这种理解下 灰度值就可以代表地图中的高度值 图像的高灰度值和低灰度值处就相当于地图的峰和谷 通常图像的峰 谷都代表相关的图像对象 具有重要的形态特征 28 03 2020 物理系 MATLAB应用图像处理 MATLAB图像工具箱提供函数imregionalmax和imregionalmin来确定图像的所有局部极大值和极小值 另外 还提供imextendedmax和imextendedmin函数来确定所有大于或小于指定值的局部极大值和极小值 这些函数以灰度图像作为输入参数 返回一个二进制图像 在输出的二进制图像中 局部极大值或极小值被设置为 其他像素则被设置为0 28 03 2020 物理系 MATLAB应用图像处理 调用格式 BW imregionalmax I CONN BW imregionalmin I CONN BW imextendedmax I H CONN BW imextendedmin I H CONN 其中 I表示输入图像 CONN表示连通类型 H为一个非负标量 表示搜索阈值 28 03 2020 物理系 MATLAB应用图像处理 Imregionalmax函数返回的二进制图像将会查明所有局部极大值 可以通过函数imextendedmax函数找到那些灰度变化最大的区域 即像素与其邻域像素间的灰度变化大于一个固定阈值的区域 使用函数imhmax和imhmin 可压制所有其他高度h的极大值或大于h的极小值 调用格式 I2 imhmax I H CONN I2 imhmin I H CONN NOTE i

温馨提示

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

最新文档

评论

0/150

提交评论