基于機器視覺的物體包裝盒實時貼標(biāo)系統(tǒng)設(shè)計
摘要:為了實現(xiàn)打印貼標(biāo)機智能貼標(biāo)的需求,提出了一種基于機器視覺的物體包裝盒實時貼標(biāo)系統(tǒng)設(shè)計方案,并完成了系統(tǒng)的軟件設(shè)計和整套硬件測試。該系統(tǒng)的硬件部分主要用來獲取圖像數(shù)據(jù)以及進(jìn)行打印貼標(biāo)操作,軟件部分采用基于輪廓提取和形狀特征識別相結(jié)合的圖像處理技術(shù),能夠完成對其輸出圖像進(jìn)行目標(biāo)識別和實時定位,并通過串口通信將數(shù)據(jù)轉(zhuǎn)發(fā)給控制系統(tǒng)。實際應(yīng)用表明,該系統(tǒng)具有操作簡便、測試準(zhǔn)確的特點,達(dá)到了設(shè)計要求。
關(guān)鍵詞:機器視覺;目標(biāo)識別;實時定位;串口通信
目前,工業(yè)生產(chǎn)上對物體包裝盒的貼標(biāo)主要采用光電傳感器等觸發(fā)機器的方式,并通過計算距離、速度等方式估算目標(biāo)物的位置,這樣貼出來的標(biāo)簽精度不高,需要再度進(jìn)行人工檢測,費時耗力,不能滿足大規(guī)模的高精度貼標(biāo)需求。由于機器視覺系統(tǒng)可以快速獲取大量信息,而且易于自動處理,也易于同設(shè)計信息以及加工控制信息集成,因此,機器視覺已廣泛應(yīng)用于工業(yè)檢測、工業(yè)探傷、精密測控、自動化生產(chǎn)、郵政自動化、糧食選優(yōu)、顯微醫(yī)學(xué)操作以及各種危險場合工作的機器人等領(lǐng)域。打印貼標(biāo)行業(yè)為了提高生產(chǎn)力,獲取快速、高效的貼標(biāo)方法,引進(jìn)機器視覺技術(shù)已成為大勢所趨,首先通過對目標(biāo)物的識別和實時定位來獲取所需的位姿信息,再通過攝像機標(biāo)定得到目標(biāo)物在線上的精確坐標(biāo),最后交由貼標(biāo)機器進(jìn)行貼標(biāo)操作。
可見,對目標(biāo)物的實時位姿信息的獲取變得非常重要。為了實現(xiàn)對目標(biāo)物的快速識別和準(zhǔn)確定位,在做了需求分析的基礎(chǔ)上,提出并設(shè)計了一種基于機器視覺的物體包裝盒實時貼標(biāo)系統(tǒng)(以下簡稱“貼標(biāo)系統(tǒng)”)設(shè)計方案。該系統(tǒng)能夠完成對目標(biāo)物準(zhǔn)確貼標(biāo),具有應(yīng)用價值。
1 系統(tǒng)需求分析
針對為滿足實時獲取物體包裝盒精確位置的需求,結(jié)合實際平臺與應(yīng)用場景,經(jīng)過分析主要從物體輪廓進(jìn)行切入,因所有物體的外包裝盒均為規(guī)則的長方體,故而采取經(jīng)過一系列圖像預(yù)處理后再對目標(biāo)物進(jìn)行矩形檢測的辦法得到包裝盒貼標(biāo)面的中心點坐標(biāo)。
要想完成以上系統(tǒng)的設(shè)計,需要做好以下幾個方面。首先需要能夠驅(qū)動工業(yè)相機,并通過硬件觸發(fā)的方式使相機能夠在合適的時機獲取多張圖片;其次,應(yīng)能對相機獲取到的圖片進(jìn)行有效的圖像處理,需進(jìn)行一系列的算法設(shè)計從而能夠?qū)崟r獲取目標(biāo)物的圖像坐標(biāo);再次,還應(yīng)進(jìn)行攝像機標(biāo)定,將獲取到的目標(biāo)物圖像坐標(biāo)轉(zhuǎn)換成世界坐標(biāo)系也就是機器線上的真實坐標(biāo);最后系統(tǒng)要能夠與上位機控制部分集成并能夠持續(xù)不間斷的運作,直到系統(tǒng)要求退出。
2 系統(tǒng)總體設(shè)計
該貼標(biāo)系統(tǒng)總體結(jié)構(gòu)圖如圖1所示,首先傳送帶將目標(biāo)物輸送至工業(yè)相機的視野,并觸發(fā)光電傳感器給出一個3.3~12 V高電平信號觸發(fā)相機進(jìn)行抓拍,獲取目標(biāo)物的圖像信息;然后,通過千兆網(wǎng)線將圖像數(shù)據(jù)傳輸至控制中心(上位機),上位機的視覺處理模塊將對獲取到的圖像進(jìn)行處理,并將處理得到的數(shù)據(jù)交由運動控制模塊;接著,運動控制模塊根據(jù)獲取到的有效數(shù)據(jù)實行對機器部件的命令控制;最后,機器部件根據(jù)上位機的指示進(jìn)行打印和貼標(biāo)操作,從而實現(xiàn)一次完整的貼標(biāo)過程。
3 系統(tǒng)硬件平臺
貼標(biāo)系統(tǒng)硬件平臺主要由光電傳感器、工業(yè)相機、傳送帶、工業(yè)PC、開關(guān)電源、打印貼標(biāo)模塊和檢測模塊等組成,系統(tǒng)硬件開發(fā)平臺如圖2所示。光電傳感器主要用來給出一個3.3~12 V高電平信號觸發(fā)工業(yè)相機進(jìn)行目標(biāo)物圖像的實時獲?。籑V-VEM系列千兆網(wǎng)絡(luò)相機采用幀曝CCD作為傳感器,能輸出高質(zhì)量,顏色還原性好的圖像,并以網(wǎng)絡(luò)作為輸出,將獲取到的圖像數(shù)據(jù)輸送至工業(yè)PC;打印貼標(biāo)模塊主要由打印機和貼標(biāo)機兩部分組成,打印機主要用來打印特定標(biāo)簽,貼標(biāo)機負(fù)責(zé)將標(biāo)簽貼在目標(biāo)物指定位置;檢測模塊用來最終檢測貼好的標(biāo)簽是否符合要求以及掃描出相應(yīng)標(biāo)簽的條形碼或者二維碼。工業(yè)PC是該貼標(biāo)系統(tǒng)的核心,用來實現(xiàn)系統(tǒng)中指令的發(fā)送、數(shù)據(jù)的采集與處理和測試結(jié)果的顯示等。
4 系統(tǒng)軟件設(shè)計
該貼標(biāo)系統(tǒng)的軟件采用MFC和OpenCV編程。OpenCV(Open Source Computer Vision Library)是由Intel公司資助的開源計算機視覺庫。它由一系列C函數(shù)和少量CH類所組成,實現(xiàn)圖像處理和計算機視覺方面的很多通用算法,例如特征檢測與跟蹤、運動分析、目標(biāo)分割與識別以及3D重建等,是近年來比較流行的圖像處理數(shù)據(jù)庫。系統(tǒng)軟件設(shè)計的結(jié)構(gòu)圖如圖3所示。
在軟件設(shè)計中,圖像采集模塊主要是采用西安維視公司生產(chǎn)的MV-VEM120C型號的千兆網(wǎng)絡(luò)工業(yè)相機,該相機具有高分辨率、高精度、高清晰度、色彩還原性好、低噪聲等優(yōu)點,能夠滿足工業(yè)級圖像處理要求,通過調(diào)用該相機的API,實現(xiàn)對目標(biāo)物圖像數(shù)據(jù)的采集。視覺檢測模塊主要用來對獲取到的圖像信息進(jìn)行實時處理,處理流程主要有以下幾步:首先通過圖像灰度化、圖像分割等一系列圖像預(yù)處理,生成二值圖像。然后利用形態(tài)學(xué)處理去除二值圖像噪聲。
形態(tài)學(xué)濾波是在數(shù)學(xué)形態(tài)學(xué)基礎(chǔ)上提出的一種噪聲去除方法,它由一組形態(tài)學(xué)代數(shù)運算子組成,包括膨脹、腐蝕、開啟和閉合4個基本運算。數(shù)學(xué)形態(tài)學(xué)方法利用一個稱為結(jié)構(gòu)元素的“探針”收集圖像的信息,當(dāng)“探針”在圖像中不斷移動時,便可考察圖像各個部分之間的相互關(guān)系,從而了解圖像的結(jié)構(gòu)特征。
接著在二值圖像中對物體包裝盒圖像進(jìn)行邊緣檢測,獲取到物體包裝盒的輪廓線條,然后對其進(jìn)行矩形檢測,從而實現(xiàn)對目標(biāo)物貼標(biāo)面頂點坐標(biāo)的提取,進(jìn)而可以求出貼標(biāo)面的中心點坐標(biāo),以及偏轉(zhuǎn)角度等信息;但是這里獲取到的坐標(biāo)數(shù)據(jù)只是圖像的像素坐標(biāo),仍然不能用于實際的定位,還需進(jìn)行攝像機標(biāo)定,將圖像數(shù)據(jù)轉(zhuǎn)換成世界坐標(biāo)系的坐標(biāo)數(shù)據(jù)。只有求出了目標(biāo)物在實際生產(chǎn)線上的坐標(biāo)位置,控制部分才能有效地將數(shù)據(jù)指令發(fā)送給貼標(biāo)機器,從而實現(xiàn)打印貼標(biāo)機準(zhǔn)確貼標(biāo)的任務(wù)。軟件設(shè)計的流程圖如圖4所示。測試過程中,在完成數(shù)據(jù)采集和檢測后,將數(shù)據(jù)發(fā)送給主控模塊,并顯示測試結(jié)果。
5 應(yīng)用測試
該貼標(biāo)系統(tǒng)用于上海科道物流科技有限公司自主研發(fā)的打印貼標(biāo)機上測試。在進(jìn)行測試時,首先運行該系統(tǒng)應(yīng)用軟件,初始化相關(guān)操作后,通過完成相應(yīng)的相機設(shè)置和參數(shù)配置等設(shè)置后,然后通過點擊主程序界面的“開始捕獲”按鈕進(jìn)行目標(biāo)物圖像的獲取,這時相機處于等待觸發(fā)狀態(tài),當(dāng)選擇為外部觸發(fā),相機將根據(jù)收到的高電平信號,進(jìn)行抓拍,也可選擇軟件觸發(fā)方式:在主界面中通過點擊“顯示結(jié)果”按
鈕,可以實現(xiàn)對輸出數(shù)據(jù)的實時顯示;“數(shù)據(jù)發(fā)送“按鈕負(fù)責(zé)將圖像處理得到的位置、速度、方向等數(shù)據(jù)實時發(fā)送給上位機主控模塊。程序面板的部分界面如圖5所示。該測試系統(tǒng)測試結(jié)果誤差在1 mm以內(nèi),達(dá)到實際應(yīng)用要求。
6 結(jié)論
該貼標(biāo)系統(tǒng)采用具有高度智能、高速度的打印貼標(biāo)機為硬件平臺,軟件設(shè)計采用模塊化設(shè)計思想,提高了系統(tǒng)的可靠性和維護(hù)性。該貼標(biāo)系統(tǒng)已用于上??频牢锪骺萍加邢薰旧a(chǎn)的貼標(biāo)打印機進(jìn)行測試,實際應(yīng)用表明該貼標(biāo)系統(tǒng)具有測試準(zhǔn)確、穩(wěn)定可靠、人機界面友好等特點,達(dá)到了設(shè)計要求。