The value of Zmotion is to bring customers more success!
(一)VPLC516E构架图
1. ZV_OPENING -- 开运算
src:ZVOBJECT类型,源图像
dst:ZVOBJECT类型,开运算后的图像
kw:结构元素宽度,大于0
kh:结构元素高度,大于等于0,若为 0 则 kh = kw
ZV_CLOSING(src,dst,kw[,kh = 0])
参数:
src:ZVOBJECT类型,源图像
dst:ZVOBJECT类型,闭运算后的图像
kw:结构元素宽度,大于0
kh:结构元素高度,大于等于0,若为 0 则 kh = kw
3.原理
图像开运算与闭运算与膨胀和腐蚀运算有关,由膨胀和腐蚀两个运算的复合与集合操作(并、交、补等)组合成的运算构成 。
A.开运算
它是先对图像腐蚀后膨胀。通过腐蚀能够去除小范围内非目标区域,同时也能把阈值范围相近的元素分隔开,最后通过膨胀填补腐蚀过大造成的小间隙。
因此,它可以去除一些孤立、细小的点,平滑毛躁的样品边缘,同时目标区域内的面积也不会有明显的变化,类似于给样品“去毛刺”的处理效果。 所下图所示:
通过以上对比图可得知,原图经过开运算处理后,可见目标主体边缘的干扰被消除,图像上的目标主体更突出。
B.闭运算
它是先对图像膨胀后腐蚀。它处理图像上目标区域内部的空洞、外部孤立的点、目标区域的外观和面积不会有所明显的变化,简单来说它类似于“填补空隙”。它与之前课程中讲述到单独进行膨胀运算不同的是,它在填补缝隙的同时不会使目标边缘轮廓加粗。下图所示:
通过以上对比图可得知,原图经过闭运算处理后,可见目标主体边缘与四周引脚没有连接和边缘缺失的部分得到了填充,使图像上的目标主体形状变得更完整。
C.总结
综上所述可知,开运算更适合去除图像上的杂点和噪声等非目标主体的特征元素。而闭运算则是相反,它是用于填补区域中小空隙等目标主体缺失的部分。所以开运算和闭运算与进行膨胀腐蚀相比,它们是不会改变目标主体特征的核心形态。
1. 打开ZDevelop软件:新建名称为“开闭运算.zpj”项目→新建“HMI”文件→新建“main.bas”文件 (用于编写界面响应函数、并开启HMI自动运行任务) →新建“图像采集.bas”文件 (用于实现相机采集功能) →新建“初始化.bas”文件 (用于初始化测量参数) →文件添加到项目。
2.设计HMI主界面和关联它的控件变量。
3.编写实现对图像进行开运算和闭运算的执行函数。
GLOBAL sub main()
ZV_IMGCOPY(GrabImg,testImg) '复制图像
if gv_open_switch=1 THEN
ZV_OPENING(testImg,testImg,ga_open(0),ga_open(1)) '矩形结构的图像开运算
endif
if gv_clos_switch=1 THEN
ZV_CLOSING(testImg,testImg,ga_closed(0),ga_closed(1)) '矩形结构的图像闭运算
endif
ZV_LATCH(testImg,1)
ENDSUB
4.效果演示视频可点击→开闭运算操作演示部分查看。
正运动技术专注于运动控制技术研究和通用运动控制软硬件产品的研发,是国家级高新技术企业。正运动技术汇集了来自华为、中兴等公司的优秀人才,在坚持自主创新的同时,积极联合各大高校协同运动控制基础技术的研究,是国内工控领域发展最快的企业之一,也是国内少有、完整掌握运动控制核心技术和实时工控软件平台技术的企业。主要业务有:运动控制卡_运动控制器_EtherCAT运动控制卡_EtherCAT控制器_运动控制系统_视觉控制器__运动控制PLC_运动控制_机器人控制器_视觉定位等等。
本次,正运动技术【机器视觉运动控制一体机小课堂】三分钟实现开运算和闭运算,就分享到这里。
更多精彩内容请关注“ 正运动小助手 ”公众号,需要相关开发环境与例程代码,请咨询正运动技术销售工程师: 400-089-8936 。
本文由正运动技术原创,欢迎大家转载,共同学习,一起提高中国智能制造水平。文章版权归正运动技术所有,如有转载请注明文章来源。