Halcon 灰度形态学及太阳能电池片缺陷检测应用
一、基本概念
Halcon灰度形态学方法是图像处理领域内的一种核心技术,在该领域内该技术能够实现对图像灰度值的操作,并且这些操作基于像素及其周围区域的变化情况
灰度形态学可被视为形态学的一种扩展,在与二值形态学相比时不仅影响了图像的空间尺度参数还会相应地改变了图像的灰度分布特性。这种技术提供了丰富的一系列算子集合...这些算子有助于实现图像细节的平滑处理或增强特定结构特征
二、基本运算
灰度膨胀 :
- 功能:扩大亮区范围的同时抑制暗区亮度并减少其面积。
- 每个像素都被赋以其邻域的最大灰度值。
灰度腐蚀 :
- 功能:通过减少明亮区域的抑制并扩大暗部区域。
- 实现方式:输入图像中的每个像素经过计算后被赋予其邻域内的最小灰度值。
灰度开运算 :
- 定义:该处理流程是先执行腐蚀操作再配合膨胀操作完成的特征性步骤。
- 作用:通过参数设置可有效去除图像中的微小明亮区域。
- 应用:该方法适用于消除图像中的噪声以及独立存在的微小亮点区域。
灰度闭运算 :
- 定义:通过先进行膨胀操作后再执行腐蚀过程。
- 作用:通过参数设置增强微光区域。
- 应用:能够有效填充微小孔隙并修复细微裂纹。
三、运算实现
在Halcon系统中,默认提供了灰度形态学功能,默认会调用一组特定的灰度形态学操作函数。例如 gray_dilation_rect 等等命令即可实现基于矩形核的灰度膨胀操作;而 gray_erosion_rect 则用于执行基于矩形核的灰度侵蚀操作;类似的命令还包括 gray_opening_rect 和 gray_closing_rect 等命令用于执行开闭操作。此外还可以通过调用一组高级操作命令 gray_dilation_shape 等等来实现基于自定义形状(例如八边形、矩形和菱形)的操作功能。这些高级命令支持选择不同形状(例如八边形、矩形和菱形)作为结构元素完成形态学运算
gray_opening_shape (Image, ImageOpening, 7, 7, 'octagon')
gray_closing_shape (Image, ImageClosing, 7, 7, 'octagon')
dyn_threshold (ImageOpening, ImageClosing, RegionDynThresh, 75, 'not_equal')
代码解释
原图

灰度形态学开运算

灰度形态学闭运算

检测结果图

四、太阳能电池片缺陷检测应用,优化TT
必须提取太阳能电池片上的栅格线与电极线。参考上述内容可知,我们不需要使用滤波器了.因为过滤同志工作起来确实比较费时费力.

使用灰度形态学闭运算结果图
gray_erosion_rect (Image, ImageMin, 4, 2)
代码解释

再改变mask的长宽,可得到:
gray_erosion_rect (Image, ImageMin, 1, 25)
代码解释

五、分析一波
1、灰度形态学去除横线
原理 :
灰度形态学操作遵循集合论原理作为图像处理的方法,在这一类方法中主要包含腐蚀、膨胀以及开闭运算等基本操作步骤。该方法涉及的基本操作包括腐蚀、膨胀等技术手段以实现对图像细节的精细处理效果。通过采用合适结构元素的方式有助于从图像中提取或抑制特定形状或特征
步骤 :
- 将其转为灰度图,并选择合适的对比度以确保清晰可见。
- 创造一个与水平线方向正交的结构元素,并根据具体需求调整其尺寸和形状。
- 通过腐蚀运算移除图像中的线条,并适当调整参数以避免过度侵蚀关键区域。
(可选)采用膨胀运算来恢复被腐蚀后的线条细节;然而,请注意这种方法可能导致去除区域的边缘变得模糊不清。 -
优点 :
- 具有高度准确的能力去除图像中的特定形状(例如横线)。
- 该方法对图像中除目标形状之外的其他结构的影响程度较低。
缺点 :
- 当选择的结构组件不合适时, 可能会导致目标无法彻底消除或过度消除。
- 膨胀运算可能导致被移除线条边缘出现模糊不清的情况。
2、滤波去除横线
原理 :
- 滤波是一种基于邻域像素的线性组合或其他算法来进行图像去噪的过程。
- 各种类型的滤波器(如均值滤波器、高斯滤波器及中值滤波器等)各自具有独特的去噪特性和性能表现。
步骤 :
- 将原始图像转换为灰度图像。
- 从均值滤波器、高斯滤波器到中值滤波器等不同类型的滤波器均可选择。
- 应用相应的平滑处理方法于该图像。
优点 :
* 能够平滑图像中的噪声和不规则结构。
* 对图像的整体结构影响较小。
缺点 :
- 可能存在无法完全去除图像中某些特定形状(如线条结构)的情况。
- 使用该方法可能导致图像细节信息被模糊化。
- 在面对特定类型噪声(例如高斯噪声)时, 滤波效果难以达到形态学操作预期的效果。
3、对比总结
精确性 :
- 灰度形态学擅长精准去除图像中的特定形状(如横线),这要求选用合适的形态学结构。
- 滤波过程倾向于消除图像中噪声与不规则图案的影响,并不能完全消除特定形状。
对图像结构的影响 :
- 灰度形态学在处理图像细节方面表现稳健,在处理非目标结构时效果显著。
- 滤波过程可能导致图像细节受损或出现模糊现象,
然而通过调节滤波器参数可以有效缓解这一问题。
- 滤波过程可能导致图像细节受损或出现模糊现象,
适用性 :
- 灰度形态学更适合于去除具有特定几何形状的物体或区域。
- 滤波技术则更适合于消除图像中的噪声和复杂纹理或细节,并且在保留图像整体结构方面表现优异。
PS:代码能跑就行,TT就是浮云
