空域滤波是图像处理的核心技术之一,将用三节将简要介绍Halcon中有关空域滤波的算子。本节主要介绍常见的非线性平滑滤波技术。
目录
1. 引言
2. 统计排序类
2.1 中值滤波器类
(a) mean_image
3. 其它类
1. 引言
对于空域平滑滤波器,非线性滤波的数量比线性滤波器多,功能也更多样。
本节将Halcon中实现的空域非线性滤波器大致分为两类:
- 统计排序类:如中值滤波器、中点滤波器、最大值/最小值滤波器等
- 其他类:除了统计排序类的其他非线性滤波器,如等。
2. 统计排序类
统计排序滤波器的基本思路是:根据模板,选取特定的像素点,并对各点的强度值按照从小到大进行排序,然后根据需要,返回位于特定位置的像素点作为返回值。
各种统计排序滤波器的主要差异在于选取返回值对应的排序序号,如果返回的是最小强度值对应的像素点,就称为“最小值滤波器”,如此类推。
2.1 中值滤波器类
中值滤波器,顾名思义,返回值对应于排序结果中位于中间位置的像素点的灰度值。
在Halcon中,给出了基本的中值滤波器,并进行了适当的扩展,在此列出各种中值滤波器的算子及使用方法。
(a) median_image
Halcon使用median_image算子实现对图像的中值滤波操作。
算子声明:
median_image(Image : ImageMedian : MaskType, Radius, Margin: )
参数说明:
- Image(输入):待处理的图像。
- ImageMedian(输出):处理后的图像。
- MaskType(输入):掩模类型,决定中值计算的邻域形状。常见选项有:'circle':圆形邻域;'square':方形邻域。
- Radius(输入):邻域半径,控制平滑程度,半径越大,平滑效果越强。
- Margin : 边界延拓方式。有以下几种类型:
- gray value:假定图像边界外的像素为恒定值(使用指定的灰度值)。
- 'continued':延续图像边界处的灰度值。
- 'cyclic':在图像边界处进行循环延续。
- 'mirrored':在图像边界处对像素进行镜像反射。
注意事项:
- MaskType 和 Radius 的选择会影响处理效果和速度,需根据具体需求调整。其中模板形状被约束为正方形和圆形两类。如果想改变模板形状,需要用另外的算子。
- Radius越大,计算量越大,处理时间变长。
小结:
中值滤波器类算子可有效处理椒盐噪声等场景。
3. 其它类
(未完待续,最新更新2025-02-14)
本专栏将介绍基于Halcon的各种传统经典的数字图像处理技术,所介绍内容基本与Gonzalez的教材基本保持一致。作为学习和实践DIP技术的入门教程。
感谢大家的支持和浏览,本专栏将持续更新(每周至少更新1篇),每篇的篇幅控制在5000字左右,这样大家阅读起来也比较轻松。估计2025年上半年完成全部内容,欢迎加收藏。但由于到了假期,更新的速度不会很快。
在专栏全部完成之前,所有内容将一直免费。