杜太行,李亞杰,孫曙光,劉 輝,梁 杰,安春暉
(1.河北工業(yè)大學(xué)人工智能與數(shù)據(jù)科學(xué)學(xué)院,天津 300130;2.河北省工業(yè)機械手控制與可靠性技術(shù)創(chuàng)新中心(河北水利電力學(xué)院),河北滄州 061000;3.河北水利電力學(xué)院,河北滄州 061000)
自動化生產(chǎn)是制造業(yè)長期發(fā)展的目標(biāo)之一[1],機械手采用自動化技術(shù)代替人力,降低勞動強度的同時保證抓取的穩(wěn)定程度,提升生產(chǎn)效率,有力地提高了企業(yè)市場競爭力。中空玻璃上下片機械手主要用于鋼化玻璃貼合、磨砂以及鍛造等工序,生產(chǎn)過程中需要根據(jù)玻璃尺寸變化調(diào)整抓取結(jié)構(gòu);同時工件臺到機械手的距離并不固定,因此距離測量的快速與準(zhǔn)確性影響到機械手抓取的效率。為實現(xiàn)機械手的自動生產(chǎn),文獻(xiàn)[2]采用光電傳感器作為控制開關(guān)實現(xiàn)機械手抓取,整體設(shè)計較為完整但對物料大小和玻璃機械手進(jìn)給距離仍需人工設(shè)定。周晶等[3]設(shè)計了氣動回路和電氣控制系統(tǒng)實現(xiàn)玻璃貼標(biāo)機自動上料,但是其測量效率低且在物料變換后不能自動調(diào)整控制策略。潘寧等[4]設(shè)計了基于運動控制指令實現(xiàn)數(shù)控機床的自動上下料,系統(tǒng)未對物料的尺寸信息、深度信息等進(jìn)行測量。
目前上下料機械手系統(tǒng)大多采用運動控制指令實現(xiàn)上下料操作,工作流程不能對物料尺寸和工件臺到機械手的距離變化進(jìn)行自動測量與調(diào)整。因此為解決上述問題,引入視覺系統(tǒng)實現(xiàn)對玻璃尺寸和工件臺與機械手之間距離的測定,提升機械手工作效率與智能程度。
在機械手視覺系統(tǒng)方面,文獻(xiàn)[5]提出了基于多目立體視覺構(gòu)建機械臂智能控制系統(tǒng),實現(xiàn)對目標(biāo)物體的自動識別與定位。文獻(xiàn)[6]基于樹莓派控制器配合高清攝像頭組成嵌入式機器視覺系統(tǒng),實現(xiàn)機械手對產(chǎn)品的精確定位和分類。文獻(xiàn)[7]利用攝像頭采集目標(biāo)圖像并傳輸?shù)缴衔粰C,基于Opencv視覺庫對圖像進(jìn)行處理,確定目標(biāo)信息,實現(xiàn)機械手對目標(biāo)的控制。以上研究引入視覺系統(tǒng),使得機械手的生產(chǎn)效率與智能化水平顯著提升。
針對視覺系統(tǒng)中測距方法的設(shè)計,目前多采用單目測距與雙目測距的方法,文獻(xiàn)[8]基于雙目視覺設(shè)計了電力巡線機器人障礙物定位測距系統(tǒng),實現(xiàn)對障礙物的定位測距。文獻(xiàn)[9]基于單目視覺,實現(xiàn)了與前方車距的測量。文獻(xiàn)[10]采用單目視覺,基于目標(biāo)物體成像尺寸的變化進(jìn)行距離測量,提高了單目視覺檢測精度。通過對比發(fā)現(xiàn)雙目視覺精度相對較高,但其配置時需要基線和攝像機光軸處于同一平面,操作復(fù)雜且造價高。單目視覺操作簡單且成本低,通過采用固定參照物可以實現(xiàn)中近距離的測量。
綜上所述,本文設(shè)計中空玻璃上下片機械手的視覺檢測系統(tǒng),基于玻璃邊緣與滾輪所獨有的顏色特征進(jìn)行識別,利用改進(jìn)骨架提取算法實現(xiàn)玻璃尺寸測量;采用單目視覺測量方法基于滾輪的長寬比與像素區(qū)域面積實現(xiàn)機械手進(jìn)給距離測量。該視覺系統(tǒng)可實現(xiàn)玻璃邊緣和滾輪多個目標(biāo)檢測,且處理速度和精度滿足實際生產(chǎn)需要,提升了中空玻璃上下片機械手抓取效率。
中空玻璃上下片機械手整體結(jié)構(gòu)如圖1所示。機械手通過電機驅(qū)動伸縮軸進(jìn)行前進(jìn)后退,通過調(diào)節(jié)翻轉(zhuǎn)角度,保證機械手末端與工件臺保持平行,之后吸盤進(jìn)行真空操作,實現(xiàn)對玻璃的抓取。引入視覺系統(tǒng)后,即通過相機采集圖像并處理得到機械手伸縮軸進(jìn)給距離和玻璃尺寸。
圖1 系統(tǒng)整體結(jié)構(gòu)
實際生產(chǎn)測量中,玻璃生產(chǎn)線上玻璃測量尺寸測量如圖2所示,允許誤差范圍值在2 cm以內(nèi),同時經(jīng)觀察發(fā)現(xiàn),由于玻璃本身透光性的影響導(dǎo)致圖形產(chǎn)生重影,玻璃檢測困難。
機械手進(jìn)給距離誤差在5 cm以內(nèi)不影響吸附強度,其抓取的工作效率為6~7片/min,針對單片抓取時,測量與調(diào)整的時間允許范圍約為8 s,因此對視覺系統(tǒng)高效準(zhǔn)確測量提出了新要求。
基于機械手工作需求分析,測量的快速與準(zhǔn)確性是視覺測量系統(tǒng)設(shè)計的主要問題。針對測距問題,根據(jù)本文的需求與誤差分析,采用單目視覺測距。同時為提高處理的快速性,視覺測距的同時實現(xiàn)玻璃尺寸的檢測,因此需要設(shè)計針對性的測量方法實現(xiàn)目標(biāo)檢測。
系統(tǒng)構(gòu)成包括視覺硬件和軟件系統(tǒng)。本設(shè)計檢驗的玻璃目標(biāo)可達(dá)150 cm,按照每個像素最低1 mm的精度,最終選用GigE Vision V2.0協(xié)議的1 280 pixel×1 024 pixel CMOS相機,鏡頭焦距為3.3 mm。采用LED燈為光源,垂直照射玻璃。軟件處理系統(tǒng)通過Windows系統(tǒng)下的QT開發(fā)環(huán)境進(jìn)行設(shè)計。
機械手整體系統(tǒng)由圖像采集與處理模塊和運動控制模塊組成,如圖3所示。圖像采集與處理模塊由相機、鏡頭、光源、計算機等組成,運動控制模塊通過PLC控制步進(jìn)電機和氣缸,得到參數(shù)后控制機械手運動,實現(xiàn)機械手對玻璃的抓取。
圖3 系統(tǒng)總體結(jié)構(gòu)圖
為保證視覺測量系統(tǒng)的準(zhǔn)確與快速性,需要設(shè)計具有針對性的檢測方法對目標(biāo)進(jìn)行檢測獲取所需參數(shù)。采集玻璃圖像時由于玻璃的透光性導(dǎo)致檢測困難,采用單側(cè)垂直光源對玻璃進(jìn)行照射,由于不同介質(zhì)間的光傳播產(chǎn)生散射效應(yīng),玻璃邊緣部分產(chǎn)生綠色光條區(qū)域且無重影現(xiàn)象,如圖4所示。同時觀察發(fā)現(xiàn)工件臺上的滾輪位置固定且形狀顏色特征明顯,且光條部分與滾輪區(qū)域兩者之間存在明顯差異。
圖4 相機采集圖像
因此通過測量綠色邊緣部分即可獲取玻璃尺寸;進(jìn)給距離采用單目視覺成像幾何關(guān)系法測量,將滾輪作為目標(biāo)對象;對所采集圖像信息進(jìn)行圖像預(yù)處理,提取不同特征實現(xiàn)檢測。由于兩者目標(biāo)區(qū)域均由其顏色特征進(jìn)行提取,因此只需在圖像預(yù)處理過程中設(shè)置不同參數(shù)大小即可實現(xiàn)目標(biāo)區(qū)域提取。圖像預(yù)處理完成后分別設(shè)計了玻璃尺寸和距離測量算法。
玻璃邊緣光條部分與滾輪的顏色特征差異較大,RGB圖像轉(zhuǎn)化為HSV圖像可以減少干擾信息,突出目標(biāo)區(qū)域。并采用伽瑪變換對光照矯正,增強圖像效果,設(shè)f(i,j)為輸入的待處理圖像,fmax為圖像f的最大像素值,1-cf(i,j)整體為伽瑪參數(shù),cf(i,j)為與鄰域信息與直方圖相關(guān)的加權(quán)累計概率和,G(i,j)為伽瑪變換處理完成的圖像,從而可得:
(1)
為提取目標(biāo)區(qū)域采用基于HSV參數(shù)值方法對圖像進(jìn)行雙閾值分割,對HSV圖像色調(diào)、飽和度和亮度的值進(jìn)行選取,確定雙閾值分割的高閾值與低閾值。雙閾值分割過程可以用式(2)表示。
(2)
式中:I(i,j)為雙閾值分割后圖像;Tl、Th分別為雙閾值分割時的閾值下限與閾值上限。
整體代表意義為將參數(shù)值位于灰度值區(qū)間的區(qū)域賦值為0;低于低閾值與高于高閾值部分賦值為1,即可得到分割后區(qū)域。通過對玻璃邊緣光條部分和滾輪部分的閾值分別進(jìn)行篩選確定目標(biāo)區(qū)域,為后續(xù)的測量打下基礎(chǔ)。
雙閾值分割后獲取到玻璃邊緣部分圖像如圖5所示,測量玻璃的尺寸就是將獲取提取部分區(qū)域的長度。
圖5 玻璃邊緣綠色光條部分分割效果圖
觀察發(fā)現(xiàn)由于邊緣部分光散射效果的存在,導(dǎo)致圖像處理效果并不是平整的矩形區(qū)域,因此為了更準(zhǔn)確地測量長度值,需要實現(xiàn)邊緣部分的直線擬合誤差減小。因此對玻璃邊緣部分進(jìn)行細(xì)化處理,采用骨架提取算法獲得符合整體特征的直線特征。其原理為:對于一幅二值圖像的一個區(qū)域T,其邊界為F,對T中的點P,尋找P到F最接近的鄰點。如果P有多個最近鄰點,則認(rèn)為點P屬于T的中軸。圖像內(nèi)每個像素點與其周圍的鄰域像素點組成3×3矩陣,各像素點位置及編號如圖6所示。
圖6 骨架提取細(xì)化算法的相鄰關(guān)系排列
P1為像素值為1的點。N(P1)為P1非零鄰點的個數(shù),S(P1)是P2~P9按序排列時點的值從0到1變化的次數(shù)。通過以下2個步驟實現(xiàn):
步驟1:循環(huán)遍歷所有前景像素點,對同時滿足下列條件的邊界點,進(jìn)行刪除處理(置 0),如下式所示。
2≤N(P1)≤6
(3)
S(P1)=1
(4)
P2·P4·P6=0
(5)
P4·P6·P8=0
(6)
步驟2:重復(fù)上述步驟,再次循環(huán)遍歷所有前景像素點,進(jìn)行刪除處理。
由于步驟條件中的S(P1)=1阻止了多余像素點的刪除,為避免骨架提取后骨架中出現(xiàn)多余毛刺,影響整幅圖像的結(jié)構(gòu)。對算法進(jìn)行改進(jìn),增加2個對角方向的刪除模板,即圖像與刪除模板進(jìn)行與操作,即圖像內(nèi)的像素點需同時滿足如下要求:
(P2·P8=1)&P5=0
(7)
(P4·P6=1)&P9=0
(8)
(P8·P6=1)&P3=0
(9)
(P2·P4=1)&P7=0
(10)
單目視覺中心投影透視成像模型如圖7所示。
圖7 成像模型圖
根據(jù)成像模型可知,目標(biāo)到光軸的距離Z和像平面到光軸的距離D滿足幾何光學(xué)中相似三角形的線性關(guān)系,如式(11)所示:
(11)
式中:X為實際物體長度;x為圖像平面長度。
將滾輪的尺寸特征作為目標(biāo)進(jìn)行測量。同時由成像原理可知對于同一目標(biāo),距離與圖像中對象的像素大小成反比。因此引入像素區(qū)域進(jìn)行測距,從而提高測距的穩(wěn)定性。經(jīng)過檢測之后設(shè)定x為目標(biāo)像素寬度,y為目標(biāo)像素高度;X為目標(biāo)實際寬度,Y為目標(biāo)實際高度。fx為相機x方向焦距,fy為相機y方向焦距,因此可得:
(12)
引入像素面積s,其與距離d關(guān)系如下:
(13)
(14)
距離測量過程中,由于生產(chǎn)過程振動對相機和工件臺的影響,在相同距離測量時所得的目標(biāo)像素寬度x,高度y存在誤差。為提高測量精度,采用卡爾曼濾波器對目標(biāo)像素寬度與高度進(jìn)行處理,得到優(yōu)化后的目標(biāo)像素寬度與高度,之后帶入距離測量公式(15)。
Xk=FkXk-1+wk
Zk=HkXk+νk
(15)
式中:Zk為系統(tǒng)k時刻的系統(tǒng)狀態(tài)觀察值;Xk、Xk-1為系統(tǒng)k、k-1時刻的測量值;Fk為狀態(tài)轉(zhuǎn)移矩陣;Hk為觀測矩陣;wk、νk分別為過程和測量噪聲,滿足正態(tài)分布。
卡爾曼濾波是一種遞歸的估計,即只要獲知上一時刻狀態(tài)的估計值以及當(dāng)前狀態(tài)的觀測值就可以計算出當(dāng)前狀態(tài)的估計值,如下所示:
(16)
(17)
(18)
Pk|k=Pk|k-1-KkHkPk|k-1
(19)
設(shè)計開發(fā)的中空玻璃上下片機械手檢測系統(tǒng)主界面如圖8所示,系統(tǒng)包括結(jié)果視頻監(jiān)控、圖像采集與效果處理、測量結(jié)果顯示等功能。為驗證系統(tǒng)有效性,對臥式中空玻璃上下片機械手測試,其進(jìn)給距離范圍為0~150 cm。將相機固定于機械手平臺側(cè)方,且與伸縮軸初始位置保持同一水平線。采用各型號玻璃共100片,進(jìn)行分析驗證。
圖8 測量系統(tǒng)主界面
選用骨架算法和最小矩形框法依次對玻璃圖像進(jìn)行檢測,測量效果如圖9所示。
(a)骨架算法
(b)最小外接矩形
(c)改進(jìn)骨架圖9 提取效果對比圖
通過對比圖9(c)與圖9(a)可知,改進(jìn)骨架算法實現(xiàn)了骨架毛刺的剔除,保證了所得骨架是單像素寬度,為長度測量減少干擾信息。對比圖9(c)與圖9(b)可知,改進(jìn)骨架提取得到邊緣提取效果更符合提取輪廓,對玻璃尺寸測量更準(zhǔn)確。
在此基礎(chǔ)上,基于改進(jìn)骨架提取方法,對不同尺寸的玻璃進(jìn)行測量,數(shù)據(jù)結(jié)果如表1所示。
表1 玻璃尺寸測量結(jié)果
通過表1可知,整體的測量時間在0.9 s左右,同人工測量相比大大縮短了檢測時間,系統(tǒng)的誤差范圍在5 cm左右,滿足抓取要求。
在實驗過程中,采用相機幀率為30幀/s,焦距為固定值3.3 mm,為體現(xiàn)基于卡爾曼濾波的進(jìn)給距離實時測量效果,設(shè)定工件臺到機械手的距離勻速變化,對測距方法進(jìn)行測試,測距效果如圖10所示。
圖10 測距效果圖
通過圖10可以看出在測量過程中無濾波的測量值較實際位置差異明顯,對距離變化不能準(zhǔn)確跟隨,相比較之下經(jīng)卡爾曼濾波處理后可以使測量更加準(zhǔn)確和穩(wěn)定。
進(jìn)一步對部分特殊距離進(jìn)行多次測距取均值,結(jié)果如表2所示。系統(tǒng)可以實現(xiàn)距離測量的準(zhǔn)確實時測量,整體的測量時間在0.5 s以內(nèi),同人工測量相比大大縮短了檢測時間。并且通過觀測中間測量結(jié)果發(fā)現(xiàn),系統(tǒng)的誤差范圍在0.2 cm左右,滿足系統(tǒng)抓取要求。
表2 距離測量效果
本文設(shè)計了中空玻璃上下片機械手視覺檢測系統(tǒng),基于玻璃邊緣區(qū)域顏色特征和單目視覺測距的方法,采用改進(jìn)骨架化提取實現(xiàn)玻璃尺寸測量,測量時間在0.9 s內(nèi),平均誤差范圍在5 cm以內(nèi);基于卡爾曼濾波和滾輪尺寸特征實現(xiàn)進(jìn)給距離測量,測量時間在0.5 s以內(nèi),平均誤差范圍在2 cm以內(nèi);從整體的測量速度和精度來看,完全滿足系統(tǒng)的檢測需求。提高了機械手在生產(chǎn)線上的生產(chǎn)效率,與行業(yè)內(nèi)其他型號的機械手相比檢測更加智能化。