正运动技术
正运动技术

协助伙伴成功,是我们的价值所在

The value of Zmotion is to bring customers more success!

首页 / 支持与服务 / 技术分享

Technical support

技术分享

【机器视觉运动控制一体机小课堂】三分钟进行图像拼接

1.png

背景

图像拼接的 原理 是将多幅来自同一 拍摄 场景的小 视野 图像合成为一幅无缝的、分辨率 高、大视野 的 全景 图像 。

图像拼接技术 在实际的视觉检测项目过程中 ,遇到大尺寸、视觉检测和定位精度要求高的工件时,这时就需要采用分多小视野拍摄一组图像将它们拼接在一起 去创建更大的视野图像,或全景图像。

图像拼接技术已经广泛应用于各个领域上,例如医学成像、工业上大尺寸工件生产现场等。

图像拼接效果如下面四幅图所示:

2.png

将图像无缝拼 接完成之后,我们就可以进行图像检测、提取目标特征、建立图像坐标系等图像处理。

注意:拼接图像前确保图像的像素数量、 拍摄视野、焦距和图像灰度一致,才能确保拼接图像之间无缝平铺组合成一张全景图像。

在上期课程中,我们讲述了如何使用 VPLC系列机器视觉运动控制一体机进行进行 灰度匹配 的课程。 本期课程正运动小助手给大家分享一下 VPLC系列机器视觉运动控制一体机进行 图像拼接 的课程。

教学视频



01
VPLC控制器


(一)VPLC516E构架图

3.png

(二)课前准备
1.电脑一台,安装ZDevelop3.10以上版本软件
2.VPLC516E一台
3.24V直流电源一个
4.网线一根
5.WinSCP软件
6.电线若干




02
课程主要使用的指令


1.ZV_LISTINSERT -- 插入元素

ZV_LISTINSERT(obj,list,pos)

描述:

向列表插入元素,用于向图像列表中插入一张图像。

参数:

obj:ZVOBJECT类型,待插入的元素

list:ZVOBJECT类型,列表

pos:元素插入列表的位置,默认值为-1,表示在列表的末尾插入元素


2.ZV_IMGTILE -- 图像组合

ZV_IMGTILE(imgs,img,numCols,type)

描述:

将图像列表中的图像平铺组合成一个大图。

参数:

imgs:输入的图像列表,ZVOBJECT类型,列表类型,列表中的图像尺寸通道类型都要相同0

img:平铺组合生成的输出图像,ZVOBJECT类型

numCols:图像平铺的列数,大于1

type:选择图像平铺方式,如下图所示


4.png




03
软件实现


1. 打开ZDevelop软件:新建名称为“图像拼接.zpj”项目→新建“HMI”文件→新建“basic.bas”文件 (用于编写界面响应函数、并开启HMI自动运行任务) →新建“相机采集.bas”文件 (用于实现相机采集功能) →新建“初始化.bas”文件 (用于初始化测量参数) →文件添加到项目。

5.png

2.设计HMI主界面,并关联它的控件变量。

6.png

3. 编写实现对图像进行灰度匹配的执行函数。

'图像拼接执行程序

GLOBAL sub main()

   ZV_clear(grablist)    '清空数据

   ZV_LISTINSERT(ga_GrabImg(0),grablist,-1)    '向列表插入元素

   ZV_LISTINSERT(ga_GrabImg(1),grablist,-1)    '向列表插入元素

   ZV_LISTINSERT(ga_GrabImg(2),grablist,-1)    '向列表插入元素

   ZV_LISTINSERT(ga_GrabImg(3),grablist,-1)    '向列表插入元素

   ZV_IMGTILE(grablist,testImg,2,combintype)    '图像组合

   wa(100)

   HMI_SHOWWINDOW(11, 6) 

   ZV_LATCHSETSIZE(0, HMI_CONTROLSIZEX(11, 1), HMI_CONTROLSIZEY(11, 1)) '设置锁存的大小

   ZV_LATCHCLEAR(0)

   wa(10)

   ZV_latch(testImg,0)

   gv_imgtrans=1 

ENDSUB


'界面切换

GLOBAL sub ImgTrans()

   if gv_imgtrans=1 THEN

      HMI_CLOSEWINDOW(11)

      ZV_LATCHSETSIZE(0, HMI_CONTROLSIZEX(10, 1), HMI_CONTROLSIZEY(10, 1)) '设置锁存的大小

      ZV_LATCHCLEAR(0)

      wa(10)

      ZV_latch(ga_GrabImg(0),0)

      gv_imgtrans=0

      wa(100)

   endif

ENDSUB


4.效果演示。


7.png

本次,正运动技术【机器 视觉运动控制一体机小课堂】三分钟进行图像拼接,就分享到这里。

更多精彩内容请关注“ 正运动小助手 ”公众号,需要相关开发环境与例程代码,请咨询正运动技术销售工程师: 400-089-8936


本文由正运动技术原创,欢迎大家转载,共同学习,一起提高中国智能制造水平。文章版权归正运动技术所有,如有转载请注明文章来源。


邮箱留言

Copyright © 2013 正运动技术有限公司 Design by Zmotion 版权所有   粤ICP备13037187号    Powered by www.zmotion.com.cn 运动控制器-运动控制卡

在线咨询