石鑫华视觉 发表于 2013-11-1 10:11:13

NI Vision Assistant教程 第七章 图像处理-Grayscale灰度 第三节 Gray Morphology

NI Vision Assistant视觉助手教程

第七章 图像处理-Grayscale灰度


第三节 Gray Morphology灰度形态学

石鑫华机器视觉网:Morphology形态学转换可以对图像的粒子进行提取和改变。主要分为两种,一种是二值形态学函数,适用于二值图像;另一种是灰度形态学函数,适用于灰度图像。在灰度形态学中,一个像素的值与其周围的邻域的值进行比较为了使像素的值是最小的在腐蚀过程中,或者是为了使像素的值是最大的在膨胀过程中。
使用灰度形态学函数可以用来过滤或平滑图像的像素强度。实际应用包括噪声滤波、不均匀背景校正和灰度级特征提取等。用户可以通过使用灰度形态学函数通过牺牲黑暗区域来扩大明亮区域的方法来改变区域的形状,反之通过牺牲明亮区域来扩大黑暗区域的方法也一样有效。这些形态学函数可以平滑逐渐变化的模式并提高区域边缘的对比度。
加载上一节中的数字图片,进入处理函数界面,选择下图中的Gray Morphology灰度形态学函数,如下图所示:
http://visionbbs.com/data/uploads/allimg/131101/2-131101100550.jpg
图1 Gray Morphology灰度形态学函数
点击灰度形态学函数后,进入函数配置界面,如下图所示:
http://visionbbs.com/data/uploads/allimg/131101/2-131101100555.jpg
图2 Gray Morphology灰度形态学函数配置界面
http://visionbbs.com/data/uploads/allimg/131101/2-131101100557.jpg
图3 Gray Morphology灰度形态学设置选项卡
在图3所示的灰度形态学设置选项卡中,是一个非常简单的选项卡,仅仅只有一个Setup选项卡,其中包含了步骤名、内置的形态学方法、Size尺寸大小(Structuring Element的大小,可以从3×3、5×5一直到199×199)、Structuring Element结构元素(掩模,使用二值掩模的一个二维数组来定义像素的邻域。用户可以通过点击来改变结构元素的单元格的值。如果单元格是黑的,那么他的值是1,如果单元格是白的或空的,则其值为0。如果单元格是黑的,则其相应的像素认为是邻域并且其值在形态学操作中将被使用)、内置的方形和圆形结构元素(专门用于设置Structuring Element的)、# of Iterations迭代次数(迭代次数,或叫重复次数,仅限于膨胀和腐蚀两个函数)。图2中显示的是使用的Image Source原始图像的效果,这个是不会改变图像的,略过。下面来看一下具体的形态学函数的效果:
Dilate膨胀
    一个灰度级的膨胀增加了每个像素的亮度,当这些像素点的邻域有更高的强度时。对于一个给定的像素点P0,使用结构元素处理后,P0的值将变成结构元素对应下的邻域中的最大值,即P0=Max(Pi),Pi为结构化元素(掩模)对应下的邻域中的像素值。像素的邻域由结构元素来决定。点击Dilate函数后,进入膨胀函数配置界面。如下图所示:
http://visionbbs.com/data/uploads/allimg/131101/2-131101100602.jpg
图4 Dilate膨胀函数配置界面
http://visionbbs.com/data/uploads/allimg/131101/2-131101100606.jpg
图5 膨胀效果
图5所示的膨胀效果,使用了最基本的参数进行膨胀。从中可以发现,数字8的整体变得更亮了。同时中间的许多白色的小点,也变粗变亮了。下面看一下不同参数变化时的效果:
http://visionbbs.com/data/uploads/allimg/131101/2-131101100610.jpg
图6 结构元素尺寸变成5×5效果
http://visionbbs.com/data/uploads/allimg/131101/2-131101100612.jpg
图7 在结构元素5×5基础上将结构元素转换成方形
http://visionbbs.com/data/uploads/allimg/131101/2-131101100620.jpg
图8 在方形5×5结构元素基础上重复次数为2
    从上面的几幅图中可以看到,结构元素的尺寸增加时,膨胀效果也会更剧烈,结构元素变大时,膨胀效果也会变剧烈。重复次数增加时,相当于进行了多次膨胀,效果更明显。
Erode腐蚀
      一个灰度级的腐蚀减少了每个像素的亮度,当这些像素点的邻域有更低的强度时。对于一个给定的像素点P0,使用结构元素处理后,P0的值将变成结构元素对应下的邻域中的最小值,即P0=Min(Pi),Pi为结构化元素(掩模)对应下的邻域中的像素值。像素的邻域同样由结构元素来决定。腐蚀相对于膨胀有相反的效果。因为他减少了明亮的区域而增加了黑暗的区域。
http://visionbbs.com/data/uploads/allimg/131101/2-131101100622.jpg
图9 腐蚀与膨胀效果对比例子
从对比效果来看,腐蚀可以有效的滤波离散的高亮噪点,而膨胀则滤除明亮区域中的黑点。从实际应用中来看,膨胀可以将图像目标特征中的噪点、边缘的凹坑等滤除掉。而腐蚀则可以将目标特征外的离散噪声、边缘凸起的毛刺等过滤掉。下面来看一下腐蚀的具体实例:
更多内容请订阅《基于NI Vision Assistant的图像处理实用教程》,https://item.taobao.com/item.htm?id=538756535591多谢支持。

页: [1]
查看完整版本: NI Vision Assistant教程 第七章 图像处理-Grayscale灰度 第三节 Gray Morphology

LabVIEW HALCON图像处理入门教程(24.09)
石鑫华机器视觉与LabVIEW Vision图像处理PDF+视频教程11种全套
《LabVIEW Vision函数实例详解2020-2024》教程-NI Vision所有函数使用方法介绍,基于NI VISION2020,兼容VDM21/22/23/24