今日头条
背景
在实际的机器视觉项目应用当中图像质量效果是视觉处理方案能否准确和稳定运行的关键因素。在遇到存在噪点的图像时,最常用的图像预处理方法就是进行中值滤波。
中值滤波去除图像上存在孤立的噪声点有很好的应用效果,它能提高图像的平滑度。 它在去除噪点时,能够保护图像的边缘,使之不被模糊,保留大部分边缘信息。
我们可以选择合适的滤波器尺寸值来修复被噪声点污染的像素点,因此它的图像预处理效果好。(注意:在使用中值滤波时要注意滤波器尺寸的选择。如果滤波器尺寸选得太大,也容易使图像变模糊。)处理效果如下图所示:
在上期课程中,我们讲述了如何使用VPLC系列机器视觉运动控制一体机使用相机进行图像阈值分割的课程。本期课程正运动小助手给大家分享一下VPLC系列视觉运控一体机进行中值滤波去除噪点的课程。
01VPLC控制器
(一)VPLC516E构架图
(二)课前准备
1.电脑一台,安装ZDevelop3.10以上版本软件
2.VPLC516E一台
3.24V直流电源一个
4.网线一根
5.WinSCP软件
6.电线若干
02课程主要使用的指令
ZV_MEDIANBLUR(src,dst,size) -- 中值滤波
参数说明:
src:ZVOBJECT 类型,源图像为单通道或三通道图像
dst:ZVOBJECT 类型,滤波后图像
size:滤波器尺寸,范围[1,201],最好为奇数,若输入偶数算子内 部会自动转换成最接近的奇数
原理: 它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值。
03软件实现
1. 打开ZDevelop软件:新建名称为“中值滤波.zpj”项目→新建“HMI”文件→新建“Basic.bas”文件 (用于编写界面响应函数、并开启HMI自动运行任务) →新建“相机采集.bas”文件 (用于实现相机采集功能) →新建“初始化.bas”文件 (用于初始化测量参数) →文件添加到项目。
2.设计HMI主界面和关联它的控件变量。
3.编写实现中值滤波的执行函数。
GLOBAL sub main()
ZV_IMGCOPY(GrabImg,testImg) '复制图像
ZV_MEDIANBLUR(testImg,ResImg,med_filter)'3*3中值滤波器
ZV_LATCH(ResImg,1)
ENDSUB
本次,正运动技术【机器视觉运动控制一体机小课堂】三分钟实现中值滤波去除噪点,就分享到这里。
审核编辑:汤梓红
全部0条评论
快来发表一下你的评论吧 !