机器视觉Halcon学习笔记-关于低通空间滤波器

关于低通空间滤波器

首先得对空间滤波器有一定的了解,空间滤波简单来说就是直接在灰度值上进行滤波操作。大部分线性的空间滤波器(比如均值滤波器),是在空间上进行一些灰度值上的操作,这个线性空间滤波器与频域滤波器有一一对应的关系(比如均值滤波器其本质就是低通滤波器),这样会有助于理解这个滤波器的特性。
滤波器的运算使用的就是卷积。
下面这个博客是对空间滤波写的比较详细。

https://blog.csdn.net/zhoufan900428/article/details/12884981

边界问题,当滤波器的中心靠近图像边缘时候,滤波器的一部分会位于图像外,那么此时,我们通常会采用填0的操作来解决。但是,一些场合,直接填0操作会使得操作后的图像出现黑边。所以,常用的操作还有,①选择距离最近的点填充,②填充的点为圆图像的镜像,③将原图像当做周期信号来填充。

关于halcon里的滤波算子应用可以看看这个
问题: 用一个3×3的低通空间滤波器反复对一幅数字图像处理的结果。给出采用的空间滤波器和处理的结果图。处理中,可以不考虑边界的影响。
我们使用均值滤波器
算子如下

mean_image(Image : ImageMean : MaskWidth, MaskHeight : )

机器视觉Halcon学习笔记-关于低通空间滤波器_第1张图片

滤波前

机器视觉Halcon学习笔记-关于低通空间滤波器_第2张图片

滤波后

很容易可以看出来,图片经过了低通空间滤波以后,去掉了图像的高频分量,所以会让图像的轮廓变得模糊。

dev_close_window()
read_image (Image1, 'monKey')
rgb1_to_gray (Image1, GrayImage)
mean_image (GrayImage, ImageMean, 3, 3)
get_image_size(GrayImage,width,height)
dev_open_window(0,0,width/1.2,height/1.2,'black',windowhandle)
dev_display(GrayImage)
dev_open_window(height/1.2, 0, width/1.2, height/1.2, 'black', WindowHandle1)
dev_set_window(WindowHandle1)
dev_display(ImageMean)

你可能感兴趣的:(机器视觉Halcon学习笔记-关于低通空间滤波器)