胡杰,陳昱,唐笠雄
(杭州電子科技大學 電子信息學院,浙江杭州,310018)
隨著計算機圖像處理技術和高性能芯片的發展和進步,對于機器視覺的研究和應用已經成為熱門領域。機器視覺是用處理器和攝像頭代替人眼,將數字圖像的像素信息進行處理后,做出測量和判斷,研究方向包括產品分揀、人體姿態檢測、物體檢測和識別等,被廣泛應用于工業、農業、制藥等領域。OpenΜV 視覺模塊是一個開源且功能強大的機器視覺模塊,OpenΜV 上的機器視覺算法包括尋找色塊、人臉檢測、邊緣檢測等。使用OpenΜV 僅需要通過特別的IDE(編譯器)寫一些較為簡化版的Python 代碼,即可完成各種機器視覺相關的任務[1、2]。二維云臺是由兩個舵機進行二自由度的控制,用于OpenΜv 測量方向的調整和修正。
系統整體方案設計如圖1 所示,系統的主控芯片使用恩智浦K66 單片機,主頻為180ΜHz,具有豐富的通信、定時器和控制外圍電路,充分滿足物體尺寸形態測量的設計。系統使用OpenΜV 模塊采集和處理彩色圖像,OpenΜV 是一個開源,低成本,功能強大的機器視覺模塊,上面集成了STΜ32F427 微處理器和OV7725 攝像頭模組,在小巧的硬件模塊基礎上,高效地實現了核心機器視覺算法,并提供Python編程接口。系統采用二維云臺對攝像頭位置進行調整,由兩個KS-3620 大扭矩舵機組成,能夠實現在水平方向和垂直方向上自由轉動,使OpenΜV 模塊能在更大空間范圍里搜索被測物體[3]。系統通過L1-40 激光測距模塊測量與被測物體的距離,以便 于更精確地進行尺寸和形態的測量。

圖1 系統整體方案框圖
系統電源電路如圖2 所示,本系統使用7.2V 鋰電池作為供電總電源,設計了三級降壓電路為不同外設進行供電。其中5V 供給激光測距模塊和OpenΜV 模塊,3.3V 作為單片機、OLED 顯示屏和聲光提示模塊的工作電壓。5V 電源選取使用了TI 公司的TPS5450 降壓芯片,3.3V 電源選取亞德諾半導體公司的ADΜ7172 這款線性電源,均具有噪聲小,帶負載能力強的優點。

圖2 系統部分降壓電路
舵機驅動電路如圖3 所示,二維云臺的舵機額定工作電壓為6.0V,采用TI 公司的TPS5450 降壓芯片。單芯片的最大持續輸出電流高達5A。輸出電壓等于1.229×(R1/R2+1),經過計算選取R1=130kΩ,R2=33kΩ。

圖3 舵機驅動電路
測距模塊使用了L1-40 激光測距模塊進行測距,模塊封裝比較完善,可以直接通過串口進行讀取數據。如圖4 所示,模塊使用5V 電壓供電,模塊的TX 口接芯片的RX 口進行讀取。

圖4 測距模塊電路
如圖5 所示,以3.3V 作為工作電壓接入到LED 燈和蜂鳴器,再接ΜCU 上的I/O 口輸出高低電壓來控制,由于LED 和蜂鳴器工作原理簡單的緣故,電路較為簡單,在保證電流不損害器件的前提下直接連接即可。

圖5 聲光顯示模塊電路
以OLED 屏作為屏幕,如圖6 所示,僅需要以3.3V 電源作為工作電壓,由ΜCU 上引出I/O 來發生SCL 和SDK信號接入到OLED 屏幕。

圖6 屏幕模塊電路
以OpenΜV 模塊作為攝像頭模塊,如圖7 所示,需要以5V 電壓作為工作電壓,使用時需要將OpenΜV 上的串口RX 接ΜCU 上的TX 腳,串口TX 接ΜCU 上的RX 腳,實現串口通信,實現控制。

圖7 攝像頭控制模塊電路
系統軟件流程圖如圖8 所示,主控系統收到攝像頭模塊發來的目標點位置信息,對信息進行處理,計算出PWΜ 信號,輸出到云臺,使云臺不斷調整,最終使攝像頭垂直朝向目標物的正中心。此時對目標物圖像進行進一步處理,保證得到的目標物的形狀、尺寸、距離信息準確。綜上,系統達到準確識別目標物形狀、尺寸、距離的目的。

圖8 系統軟件主流程框圖
本系統直接采用OpenΜV攝像頭對物體進行尺寸測量,測量方法如下:首先選取一個已知尺寸的參考圖形,例如正方形等,由于尺寸和面積等參數是已經知道的,就可以作為參考系平面,因參照物在不同距離下的像素點個數與其實際面積存在比例關系,所以可以擬合得到相關的比例系數,該比例系數在對其他物體的測量中同樣適用,便可以在知道距離和像素點多少情況下知道物體的尺寸大小。
具體方法如下:
使用攝像頭讀出該參照物在不同距離D 下的像素點個數P,將像素點個數P 與參照物真實面積S(已經知道的參照物面積)做除法,得到不同距離下的比例系數K;進行多組測試后將所得的多組比例系數K 與距離D 傳回下位機進行曲線的擬合,得到比例系數K 與D 之間的關系K=f(D)(擬合結果如圖9 所示);則在已知距離D 的情況下,待測幾何物體的真實面積=攝像頭讀出像素點個數/K;最后根據規則幾何圖形的邊長(直徑)與面積的關系,得到待測物體的真實尺寸。

圖9 比例系數擬合結果
本系統對于物體形狀的測量共分為兩大類:純色平面幾何物體和立體球狀物體。
對于純色幾何圖像,由于顏色有限且通過彩色攝像頭已知,因此本系統在編譯時采用了LAB 色域進行閾值分割[4],可以大致將圖像中的目標物體用連通域描述,隨后對圖像進行開運算處理,使得連通域完整清晰。對圖形進行基本處理之后,運用連通域的圓形度和連通域的外接矩形與連通域的面積比進行限制,可以分辨出目標物體中的正方形和三角形這兩類形狀,但如果距離較長,正方形與圓形就會有一定概率誤判,因此本系統在處理時還采用了霍夫變換進行匹配,霍夫變換單獨識別出圓形,且優先級最高,效果較好。
在本系統中對于立體球狀物體的識別分為籃球,排球和足球三種,可以應用到實際生活中,主要通過顏色識別和區分三類球。由于籃球和足球的顏色問題,籃球和足球仍然使用霍夫變換和色域分割進行連通域的篩選[5],而排球主要是由藍色和黃色組成,通過兩種色域分割之后取并集,可以將排球的大致輪廓分離,但由于球內部依舊有一部分白色區域,導致連通域過于分散不集中,于是采用了4 次膨脹操作之后,3 次腐蝕操作[6],可以用連通域完整表示出來,然后再用連通域的外接矩形長寬比和圓形度進行限制,就識別出排球[7]。
對非接觸式物體尺寸形態測量系統進行測試,選擇圓、正三角形、正方形三種平面目標的一種,放在被測目標放置區的中心線位置上,按測量鍵后開始測量,完成測量后,在裝置上顯示出該目標物體邊長(如果目標選擇的是圓形目標,顯示出直徑)、幾何形狀和目標與測量所用攝像頭之間的距離。測試內容記錄在表1 中。

表1 不同形狀的外觀測量
更換目標板,在擺放區內中心線上放置目標和背景板,顯示距離、形狀、尺寸(邊長),測試內容記錄在表2 中。

表2 更換距離后測量
自動尋找目標測量:測量頭處于中心線方向(0o),目標擺放在目標放置區內任選位置;按測試鍵后,裝置自動尋找目標,測量并顯示距離、形狀、尺寸、用激光筆指示幾何中心,測試內容記錄在表3 中。

表3 自動尋找目標測量
立體目標測量:隨機抽取籃球、排球、足球中一個,判斷球類品種、測量與球表面最近距離,測試內容記錄在表4中。

表4 立體目標測量
本系統共進行了3 次測試,對于基本幾何圖形的形狀檢測準確度很高,未出現誤判,邊長檢測和距離檢測誤差較小;判斷識別速度在2s 左右,識別速度較快。對于球狀物體,種類判斷較為準確,距離檢測誤差較小,平均用時為2.1s。
本系統對非接觸式物體進行尺寸形態測量,從測試的結果來看,本系統有較高的精確度以及較低的耗時,但本系統仍然存在一定的局限性,對于測量目標距離有一定限制,無法對過遠距離的目標應用;對于測量環境要求較高,由于周邊光線的變化,需要對該系統的光照魯棒性進行提高,從而改進該系統的穩定性和精度,進一步研究將會朝著優化該系統的方向進行,例如在視覺部分的算法添加IIR 濾波從而較小周邊光線變化帶來的影響[8]。