背景
圖像拼接的 原理 是將多幅來自同一 拍攝場景的小視野圖像合成為一幅無縫的、分辨率高、大視野的全景圖像 。
圖像拼接技術(shù) 在實際的視覺檢測項目過程中 ,遇到大尺寸、視覺檢測和定位精度要求高的工件時,這時就需要采用分多小視野拍攝一組圖像將它們拼接在一起 去創(chuàng)建更大的視野圖像,或全景圖像。
圖像拼接技術(shù)已經(jīng)廣泛應(yīng)用于各個領(lǐng)域上,例如醫(yī)學(xué)成像、工業(yè)上大尺寸工件生產(chǎn)現(xiàn)場等。
圖像拼接效果如下面四幅圖所示:

將圖像無縫拼 接完成之后,我們就可以進行圖像檢測、提取目標(biāo)特征、建立圖像坐標(biāo)系等圖像處理。
注意:拼接圖像前確保圖像的像素數(shù)量、 拍攝視野、焦距和圖像灰度一致,才能確保拼接圖像之間無縫平鋪組合成一張全景圖像。
在上期課程中,我們講述了如何使用 VPLC系列機器視覺運動控制一體機進行進行 灰度匹配 的課程。 本期課程正運動小助手給大家分享一下 VPLC系列機器視覺運動控制一體機進行 圖像拼接 的課程。
01VPLC控制器
(一)VPLC516E構(gòu)架圖

(二)課前準備
1.電腦一臺,安裝ZDevelop3.10以上版本軟件
2.VPLC516E一臺
3.24V直流電源一個
4.網(wǎng)線一根
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)
描述:
將圖像列表中的圖像平鋪組合成一個大圖。
參數(shù):
imgs:輸入的圖像列表,ZVOBJECT類型,列表類型,列表中的圖像尺寸通道類型都要相同0
img:平鋪組合生成的輸出圖像,ZVOBJECT類型
numCols:圖像平鋪的列數(shù),大于1
type:選擇圖像平鋪方式,如下圖所示

03軟件實現(xiàn)
1.打開ZDevelop軟件:新建名稱為“圖像拼接.zpj”項目→新建“HMI”文件→新建“basic.bas”文件(用于編寫界面響應(yīng)函數(shù)、并開啟HMI自動運行任務(wù))→新建“相機采集.bas”文件(用于實現(xiàn)相機采集功能)→新建“初始化.bas”文件(用于初始化測量參數(shù))→文件添加到項目。

2.設(shè)計HMI主界面,并關(guān)聯(lián)它的控件變量。
?

3.?編寫實現(xiàn)對圖像進行灰度匹配的執(zhí)行函數(shù)。
?
'圖像拼接執(zhí)行程序
GLOBAL sub main()
? ?ZV_clear(grablist)? ? '清空數(shù)據(jù)
? ?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)) '設(shè)置鎖存的大小
? ?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)) '設(shè)置鎖存的大小
? ? ? ZV_LATCHCLEAR(0)
? ? ? wa(10)
? ? ? ZV_latch(ga_GrabImg(0),0)
? ? ? gv_imgtrans=0
? ? ? wa(100)
? ?endif
ENDSUB
?
本次,正運動技術(shù)【機器視覺運動控制一體機小課堂】三分鐘進行圖像拼接,就分享到這里。
審核編輯:湯梓紅
評論