林澤敏,袁清珂,鄭倍松,劉輝
(廣東工業(yè)大學(xué) 機(jī)電工程學(xué)院,廣州 510006)
鞋底上膠是鞋類生產(chǎn)過(guò)程中最為重要的工序之一,上膠效果的好壞直接決定了鞋子的質(zhì)量[1]。目前,對(duì)鞋底的涂膠一般采用人工作業(yè)的方式。手工涂膠的方式存在著一些明顯的缺點(diǎn):首先,涂膠的位置和涂膠的用量由操作工人決定,操作工人的熟練程度直接決定了涂膠的質(zhì)量。此外,在涂膠過(guò)程中,膠水揮發(fā)出的氣體對(duì)工人的健康造成嚴(yán)重的影響[2]。因此,實(shí)現(xiàn)鞋底的自動(dòng)化涂膠非常重要。
在科學(xué)技術(shù)進(jìn)步的推動(dòng)下,工業(yè)機(jī)器人在噴膠方面的應(yīng)用也越來(lái)越成熟[3]。將工業(yè)機(jī)器人應(yīng)用在鞋類噴膠上,將有效提高產(chǎn)品的質(zhì)量,減少膠水揮發(fā)出的氣體對(duì)人體的傷害,降低勞動(dòng)力成本[4]。
實(shí)現(xiàn)噴膠工序的自動(dòng)化關(guān)鍵在于噴膠路徑的自動(dòng)生成。針對(duì)這一問(wèn)題,Kwon等[5]提出了一種可以根據(jù)鞋底的輪廓自動(dòng)生成噴膠路徑的方法。該方法簡(jiǎn)單直觀,但提取的噴膠路徑是一條平面曲線,只適用于平面鞋底。Kim[6]提出了一種基于鞋底的三視圖自動(dòng)生成噴膠路徑的方法。該方法雖然適用于不同鞋底,但需要在不同的平臺(tái)實(shí)現(xiàn),操作復(fù)雜,且精度難以保證。
針對(duì)上述問(wèn)題,本文提出了一種新的基于激光視覺(jué)生成鞋底噴膠路徑的方法。使用線激光三維掃描儀掃描鞋底,對(duì)采集到的鞋底深度圖進(jìn)行研究。
利用線激光三維掃描儀采集到的鞋底深度圖像如圖1所示。圖像中像素點(diǎn)的像素值與鞋底實(shí)際高度成正比例關(guān)系。
圖1 深度圖
由于獲取的圖像中不可避免地會(huì)出現(xiàn)一些噪聲,因此需要對(duì)噪聲進(jìn)行消除,保留圖像的原始細(xì)節(jié)特征。噪聲的存在會(huì)干擾圖像的有效信息,如果處理不好會(huì)影響后續(xù)的圖像處理和分析[7]。中值濾波既能有效消除噪聲,也可以較好地保護(hù)圖像邊緣的細(xì)節(jié),所以選擇中值濾波進(jìn)行平滑處理。
中值濾波通過(guò)選擇一定形式的窗口在圖像的各點(diǎn)上移動(dòng),對(duì)窗內(nèi)的像素灰度值進(jìn)行排序,用排序中間值代替窗中心點(diǎn)處的像素灰度值[8]。對(duì)采集到的鞋底圖像進(jìn)行中值濾波處理,為了更加清楚地展示濾波效果,通過(guò)三維數(shù)據(jù)顯示中值濾波處理后的結(jié)果,如圖2所示。
圖2 去噪效果圖
鞋底內(nèi)邊緣是指鞋底內(nèi)側(cè)面與鞋底外側(cè)面的交線,由鞋底邊緣區(qū)域的最高點(diǎn)組成。在鞋底自動(dòng)化噴膠處理中,噴膠不能超出鞋底內(nèi)邊緣(是鞋底的邊界線),對(duì)鞋底噴膠的定位有重要作用。
圖像中的邊緣是像素灰度值發(fā)生加速變化而不連續(xù)的結(jié)果。邊緣可以粗略地分為階梯狀邊緣和屋頂狀邊緣[9]。階梯狀邊緣,它兩邊的像素灰度有明顯的突變,是由最大梯度方向的一階方向?qū)?shù)的極大值點(diǎn)所組成的集合。屋頂狀邊緣,它位于像素值從增加到減少或由減少到增加的變化轉(zhuǎn)折點(diǎn),可由一階方向?qū)?shù)的零交叉點(diǎn)確定。
鞋底內(nèi)邊緣類似于屋頂狀邊緣,則可以用基于一階導(dǎo)數(shù)的邊緣檢測(cè)算子進(jìn)行檢測(cè)?;谝浑A導(dǎo)數(shù)的邊緣檢測(cè)算子有Roberts算子、Prewitt算子、Sobel算子等[10]。
Roberts算子根據(jù)對(duì)角元素的差來(lái)近似偏導(dǎo)數(shù)。表達(dá)式如式(1)和式(2)所示:
其卷積模板為:
Prewitt算子和Sobel算子是在Roberts算子的基礎(chǔ)上改進(jìn),使得Prewitt算子和Sobel算子的近似比Roberts算子的近似更精確,采用3×3卷積模板,如下所述。
1)Prewitt算子卷積模板:
2)Sobel算子卷積模板:
如圖3所示,是各種算法算子(Roberts算子、Prewitt算子、Sobel算子)所提取邊緣輪廓的圖像。
圖3 邊緣檢測(cè)效果對(duì)比圖
如圖3所示,圖像提取的邊緣并不好,沒(méi)有完整地提取出需要的鞋底內(nèi)邊緣。同時(shí),仍有大量無(wú)用信息,需要額外處理,因此本文提出了一種分區(qū)最大值算法用于鞋底內(nèi)邊緣提取,算法的基本流程如圖4所示。算法具體描述如下:1)外邊緣輪廓提取。利用Moore邊界追蹤算法進(jìn)行鞋底外邊緣輪廓提取。2)獲取質(zhì)心。通過(guò)質(zhì)心定位算法獲取鞋底外邊緣輪廓的質(zhì)心。3)提取內(nèi)邊緣點(diǎn)。通過(guò)建立分區(qū),搜尋像素最大值的方法提取鞋底內(nèi)邊緣點(diǎn)。4)插值獲取內(nèi)邊緣。利用三次NURBS插值算法獲取平滑的內(nèi)邊緣。
圖4 算法流程
2.2.1 提取鞋底外邊緣輪廓
Moore邊界追蹤算法[11]是提取圖像中邊界信息的一種算法?;舅枷肴鐖D5所示,算法的步驟如下:1)找到一個(gè)黑色像素P,并將它定為起始像素(將從網(wǎng)格的左下角開(kāi)始掃描像素,直到遇到一個(gè)黑色的像素,將其作為起始像素)。2)當(dāng)遇到黑色像素P時(shí),將P設(shè)置為當(dāng)前邊界像素點(diǎn)。3)原路返回到先前到達(dá)的白色像素,以順時(shí)針?lè)较蛩阉鱌的摩爾鄰域內(nèi)的每一個(gè)像素,直到遇到下一個(gè)黑色像素。4)重復(fù)步驟2)和步驟3),直到第二次進(jìn)入起始點(diǎn)與第一次進(jìn)入的方向相同時(shí)算法停止。
圖5 Moore邊界追蹤算法的追蹤過(guò)程
在整個(gè)運(yùn)行過(guò)程中走過(guò)的黑色像素就是目標(biāo)的邊界像素。
利用Moore邊界追蹤算法獲取到的鞋底外邊緣輪廓如圖6所示。
圖6 外邊緣輪廓提取
2.2.2 獲取鞋底外邊緣輪廓的質(zhì)心
通過(guò)質(zhì)心定位算法[12]獲取鞋底外邊緣輪廓的質(zhì)心,假設(shè)質(zhì)心為I(X,Y),鞋底外邊緣輪廓點(diǎn)的坐標(biāo)分別為Q1(X1,Y1),Q2(X2,Y2),Q3(X3,Y3),…,Qn(Xn,Yn),質(zhì)心的坐標(biāo)計(jì)算公式為
式中:Xi為點(diǎn)的橫坐標(biāo),Yi為點(diǎn)的縱坐標(biāo)。
如圖7所示,交叉線的中心為外邊緣輪廓的質(zhì)心。
圖7 外邊緣輪廓的質(zhì)心
2.2.3 提取內(nèi)邊緣點(diǎn)
取鞋底外邊緣輪廓點(diǎn)Qi(i=1,2,…,n)與鞋底外邊緣輪廓的質(zhì)心I構(gòu)建直線段Li(i=1,2,…,n),搜索各直線段Li上像素值最大的點(diǎn)pi(i=0,1,…,n)加入內(nèi)邊緣點(diǎn)集P。
由此可以得到離散的內(nèi)邊緣點(diǎn),如圖8(b)所示。
圖8 分區(qū)極值法獲取內(nèi)邊緣點(diǎn)
為了獲得精度較高的噴膠路徑,需要對(duì)離散的內(nèi)邊緣點(diǎn)進(jìn)行插值處理,以獲得平滑的內(nèi)邊緣線。
利用三次NURBS插值算法[13]對(duì)離散的內(nèi)邊緣點(diǎn)進(jìn)行插值。三次NURBS曲線的表達(dá)式為
式中:u為NURBS曲線的自變量;di(i=0,1,…,n)為NURBS曲線的控制頂點(diǎn);wi為控制頂點(diǎn)的權(quán)因子,w0>0,wn>0,其余wi≥0,而且連續(xù)k個(gè)權(quán)因子不能同時(shí)為0;Ni,3(u)是三次規(guī)范B樣條基函數(shù),由節(jié)點(diǎn)矢量U=[u0,u1,…,un+4]決定。
Ni,3(u)滿足如下遞推關(guān)系:
利用積累弦長(zhǎng)參數(shù)化法[14]對(duì)內(nèi)邊緣點(diǎn)pi(i=0,1,…,n)參數(shù)化得到節(jié)點(diǎn)矢量U。
對(duì)于C2連續(xù)的三次NURBS閉曲線,其首末數(shù)據(jù)點(diǎn)重合,所以三次NURBS閉曲線的控制頂點(diǎn)的反算公式為
其中:
由式(8)和式(9)即可求得控制頂點(diǎn)di(i=0,1,…,n-2)。
根據(jù)節(jié)點(diǎn)矢量和控制頂點(diǎn),就可以得到所求的內(nèi)邊緣曲線。
理想的噴膠路徑應(yīng)該是鞋底內(nèi)邊緣線向鞋底內(nèi)側(cè)偏移得到的偏移曲線。
可以通過(guò)曲線等距偏移算法[15]對(duì)鞋底內(nèi)邊緣線進(jìn)行偏移,得到鞋底噴膠路徑。曲線等距偏置算法表達(dá)式為:
式中:D0(u)為偏移后的噴膠路徑曲線,D(u)為鞋底內(nèi)邊緣曲線,d為偏移距離,N(u)為鞋底內(nèi)邊緣曲線法矢量,D′(u)為鞋底內(nèi)邊緣曲線的一階導(dǎo)數(shù),D″(u)鞋底內(nèi)邊緣曲線的二階導(dǎo)數(shù)。
通過(guò)上述分析,將得到的坐標(biāo)數(shù)據(jù)點(diǎn)進(jìn)行分析處理,得到的鞋底內(nèi)邊緣和噴膠路徑如圖9所示。
圖9 鞋底內(nèi)邊緣和噴膠路徑
噴膠系統(tǒng)硬件上主要由ABB六軸工業(yè)機(jī)器人、工控機(jī)、PLC、光電開(kāi)關(guān)、線激光視覺(jué)掃描儀,傳送帶等幾個(gè)部分組成。系統(tǒng)結(jié)構(gòu)的組成如圖10所示。
圖10 系統(tǒng)結(jié)構(gòu)組成
系統(tǒng)工作原理可簡(jiǎn)述為:鞋底在傳送帶上運(yùn)動(dòng),當(dāng)鞋底經(jīng)過(guò)光電開(kāi)關(guān)時(shí),光電開(kāi)關(guān)會(huì)產(chǎn)生脈沖信號(hào)并傳送給PLC,觸發(fā)PLC輸出信號(hào),控制線激光三維掃描儀進(jìn)行拍照取圖,進(jìn)而在工控機(jī)上進(jìn)行圖像處理,以提取噴膠路徑。得到噴膠路徑并發(fā)送給工業(yè)機(jī)器人,當(dāng)鞋底隨傳送帶移動(dòng)定長(zhǎng)到達(dá)噴膠工位后,控制工業(yè)機(jī)器人噴膠。
試驗(yàn)借助ABB系列工業(yè)機(jī)器人完成鞋底的噴膠工作。將噴槍安裝在機(jī)械手末端,控制ABB機(jī)器人按獲取到的噴膠路徑噴膠。從噴膠試驗(yàn)結(jié)果圖11(b)中可以看出,鞋底內(nèi)邊緣沒(méi)有膠水溢出,鞋底內(nèi)部一周噴膠均勻,滿足制鞋工藝鞋底黏合要求;同時(shí),本文提取噴膠路徑算法所用時(shí)間為1.23 s左右,符合實(shí)際生產(chǎn)需求。
圖11 鞋底噴膠試驗(yàn)
本文提出了一種自動(dòng)生成鞋底噴膠路徑的方法。利用線激光三維掃描儀獲取鞋底深度圖,采用中值濾波方法對(duì)鞋底深度圖進(jìn)行預(yù)處理。利用邊緣檢測(cè)算法對(duì)鞋底深度圖像進(jìn)行分析。與邊緣檢測(cè)算法相比,分區(qū)最大值算法提取的內(nèi)邊緣輪廓更好。最后,通過(guò)將得到的內(nèi)邊緣曲線偏置得到噴膠路徑。通過(guò)機(jī)器人噴膠試驗(yàn),驗(yàn)證了該方法的有效性和可行性。該方法能有效地獲取噴膠路徑的三維信息,適用于不同型號(hào)的鞋底噴膠路徑生成,操作簡(jiǎn)單,通用性強(qiáng)。