葉佳英 趙大旭 劉怡珺 王毓綜 王佩欣 壽國忠
[摘 要]為解決當前珍珠分揀自動化、智能化水平低等問題,針對珍珠形狀的視覺識別,設計實現(xiàn)了一套基于單目動態(tài)視覺的珍珠形狀分揀系統(tǒng)。主要研究了利用單目攝像機快速獲取珍珠多表面的方法以及幾何形狀檢測方法。根據研究內容,實現(xiàn)了該系統(tǒng)的珍珠檢測平臺,其主要功能為圖像采集、數據/信息處理、網絡通信等,為機械臂的分揀控制提供了依據。
[關鍵詞]珍珠;單目動態(tài)視覺;形狀檢測;機械臂;分揀系統(tǒng)
[中圖分類號]TP391.4 [文獻標識碼]B
近年來,隨著工業(yè)4.0的概念提出,各地都掀起了一股“智能”熱,其項目主要分為:智能工廠、智能生產和智能物流。其中,計算機視覺技術是一項重要的支撐(感知)技術,在獲取外形、外觀特征和位置信息等方面已廣泛地應用于各種檢測中。因此設計一套能較好地滿足實際生產需求的珍珠分揀系統(tǒng),具有重要意義。
1 系統(tǒng)的設計和實現(xiàn)
1.1 系統(tǒng)硬件結構設計
機器視覺珍珠分揀系統(tǒng)主要分為三大部分:(1)圖像識別系統(tǒng);(2)分揀系統(tǒng)(機械臂);(3)計算機軟件控制機構。
系統(tǒng)工作時,首先將珍珠由送料機構逐顆送至圖像獲取分揀平臺的漏斗裝置中;珍珠受到氣導管中氣流作用在漏斗形裝置中做翻滾運動,攝像機在一個檢測周期內獲取足夠多幀不同角度珍珠圖像后停止吹氣操作,珍珠被送至分揀臺(平臺表面覆蓋黑色毛皮,防止珍珠大幅度滾動),計算機對圖像處理分析之后將分類結果以及珍珠定位信息發(fā)出,分揀機構(機械臂)將珍珠放入對應位置。其中送料機構、相機和漏斗裝置氣流由計算機控制,機械臂氣吸式抓取所用氣壓由機械臂控制。
1.2 軟件控制流程
上述工作過程通過計算機進行控制。計算機軟件發(fā)送信號控制送料;在控制吹氣和停止吹氣的整個過程同時控制拍攝;其后對獲取的圖像利用識別算法對珍珠形狀進行識別,并確定珍珠最后位置;進而將結果信息發(fā)送給機械臂,直至發(fā)送成功;再由機械臂接收處理信息,成功后發(fā)送反饋信號;計算機在收到反饋信號后,在機械臂執(zhí)行分揀動作的同時進行新一輪的控制。以此循環(huán),實現(xiàn)連續(xù)的分揀動作。
2 圖像識別
2.1 單目動態(tài)視覺圖像采集
由前述內容可知,獲取珍珠全表面清晰的圖像是該系統(tǒng)能夠有效工作的關鍵環(huán)節(jié)。單顆珍珠從形狀分類的角度可大致分為圓形、橢圓、扁平和異形等,除圓形外其他形狀的珍珠單從個別角度判斷存在片面性,必須從盡可能多的角度才能綜合地正確地判斷珍珠的形狀。為了解決上述問題,研究并設計了一種單目動態(tài)視覺的珍珠圖像采集裝置。
為動態(tài)獲取清晰的珍珠圖像,對此裝置進行了試驗研究。試驗所用的裝置漏斗內徑為10cm,深度為6.5cm,氣導管內徑為0.4cm,氣壓為0.2Mpa,漏斗底部限制為小孔出氣。為了方便珍珠的后期圖像處理,將漏斗內壁涂成黑色簡化圖片背景。試驗首先對珍珠翻滾速度進行研究,進行高速和低速等速度對比確定氣壓為0.2Mpa時速度適宜;再通過光亮對比試驗,確定合適的光亮來獲取清晰圖像。
為確定所需幀數及檢測周期長度,對此裝置做了進一步研究。在每秒十張的基礎上不斷縮短獲取十張圖像的時間,最終確定在0.1s內獲取10幀圖像。試驗對比了不規(guī)則珍珠和正圓珍珠的檢測效果,為了便于區(qū)分不同表面,事先對珍珠表面進行了標記。對于不規(guī)則的珍珠,10幀圖像中存在5幀可獲取珍珠全部表面(無重復地),此5幀圖像在10幀圖像中分布順序無明顯規(guī)律,多于此5幀開始出現(xiàn)重復覆蓋視角;對于做了六面不同標記的圓形珍珠,10幀中選出5幀也能獲取6個標記點,其余幀數作為輔助判斷。由此可見該裝置能獲得較完整的珍珠表面圖像。
2.2 珍珠形狀判斷
對于珍珠形狀的描述,該研究基于前人的研究基礎,考慮到珍珠形狀的幾何特性,使用幾種形狀描述子組合的形狀分析方法,逐步區(qū)分出每個類別的珍珠。圖1所示,首先利用輪廓的凸包缺陷檢測珍珠形狀的光滑性,并結合余弦相似度檢測輪廓的對稱性,以此區(qū)分出異形;其次在排除異形后利用改進的Freeman鏈碼檢測區(qū)分出至少存在一面近似平面的扁圓形珍珠;最后在排除前兩項的基礎上通過檢測輪廓的圓度值(這里采用輪廓最小外接圓與輪廓的面積比值Rd)來區(qū)分出圓形和橢圓形下的五個小類。
試驗中,將單幅圖像的檢測結果與標準分類結果相比較。其中標準分類的確定過程為:通過最長最短軸、橢圓擬合兩種方法求得國家標準中的直徑差百分比,將其與人眼觀察對比,確定后者相對準確;人眼觀察難以區(qū)分形狀近似的類別;由此確定對比標準以橢圓擬合直徑差百分比結果為主,人眼判斷為輔,差別大時參考最長最短軸直徑差百分比,若三者差距都大則剔除。表中將243個表面圖像剔除5張問題圖,剩余238張作為七個類別的分類樣本。該方法的試驗將珍珠分為7個形狀類別,平均錯誤率為5.38%,最高錯誤率不超過8.70%;李氏將珍珠分為5類且平均錯誤率為6.60%,最高錯誤率不超過9.90%。相較于李氏研究結果,該方法分類多了2個類別,平均錯誤率降低了1.22%且最高錯誤率也降低了1.20%。
3 人機交互系統(tǒng)設計/實現(xiàn)
基于圖像識別的基礎上實現(xiàn)珍珠檢測軟件平臺,提供界面顯示、視覺識別、通信交互和記錄保存等功能。
3.1 圖像采集控制模塊
圖像采集模塊主要負責控制攝像頭獲取圖像。通過廠商提供的驅動并利用視頻流操作函數實現(xiàn)對攝像頭的打開、關閉操作;使用Windows MFC編程建立平臺界面,將攝像頭采集的圖像信息實時地顯示在界面上;在MFC中通過消息機制設置定時器,拍攝信號到達時定時器啟動,通過試驗對比確定每隔0.01s截取一幀圖像,0.1s后終止定時器完成一顆珍珠的拍攝。
3.2 數據/信息處理模塊
數據/信息處理模塊主要實現(xiàn)了對珍珠圖像的識別,主要包括圖像預處理(圖像分割等)、綜合檢測、形狀分析。在識別完珍珠的形狀以后需要獲得珍珠的最后位置方能控制機械臂準確地將目標珍珠抓取、分類。為了確定珍珠在三維空間的幾何位置與其在圖像中對應點之間的相互關系,采用張正友標定法對相機進行標定以確定目標珍珠在世界坐標系中的位置信息。此后,通過剛體變換將標定的世界坐標系轉換為機械臂全局坐標系,即將機械臂與目標珍珠位置相對應。