金守峰,林強強,馬秋瑞
(1.西安工程大學 機電工程學院,陜西 西安 710600; 2.西安工程大學 服裝與藝術設計學院,陜西 西安 710600)
筒子紗作為紡紗工藝的一個終端產品,應用非常廣泛,筒子紗在轉運、上下紗架及包裝時均需要大量人工來完成,勞動強度大、效率低。隨著人力成本的提高,以勞動密集型為特點的紡織行業受到了巨大的沖擊,勞動力短缺愈加嚴重,機器人等自動化設備開始應用于紡織領域[1]。紡織領域的產業技術與生產設備進行升級,是提升企業競爭力、降低成本的有效舉措,將紡織業從勞動密集型產業轉型為以技術為支撐的高科技產業成為必然趨勢[2]。
機器人抓取作業目標已經廣泛應用于各個領域,如在農業采摘方面,周俊等[3]應用壓敏電阻采集機器人抓取時手爪的壓力變化信號,將信號通過短時傅里葉變換和離散小波變換分析滑覺信號并完成作業目標抓??;姬偉等[4]基于廣義比例積分方法控制機器人以減小采摘過程中機器人對果蔬表面的損傷。在以零件為作業目標的抓取任務中,范荻等[5]結合SURF算法、快速視網膜特征點、漢明距離以及仿射變換等相關技術解決了背景復雜、零件形狀多樣性導致識別和定位精度低的問題。隨著計算機技術的發展,基于深度學習的機器人作業目標抓取研究逐漸增多,郭毓等[6]應用深度學習方法構建了機器人作業目標檢測及空間定位系統,基于雙目視覺系統和Faster R-CNN(更快速區域卷積神經網絡)的方法,在光照變化和復雜的作業場景中可以滿足配電線路維護機器人的測量和定位要求。在筒子紗抓取和上紗過程中,目前主要應用固定的程序和位置完成抓取和上紗,在抓取之前需要人工將筒子紗放在傳送帶上,這種方法自動化和柔性程度低。
為提高筒子紗上紗過程中的自動化和柔性化程度,基于單目視覺系統構建筒子紗上紗平臺,在完成標定的單目視覺系統中,采集筒子紗的數據集,應用GAN(生成式對抗神經網絡)擴充數據集,得到單個筒子紗不同形態的數據集,將筒子紗的位置標記后加載到構建完成的Faster R-CNN神經網絡模型中,達到對筒子紗的識別和定位。由于在下層的筒子紗被上層筒子紗遮擋,部分特征不夠明顯,而輸入到Faster R-CNN神經網絡模型中的筒子紗是完整的,圖像特征明顯,被遮擋的筒子紗得分值較低,因此在機器人抓取過程中,首先應抓取得分值最高的筒子紗目標,而后由上到下完成上紗任務。
掛紗是整經或者筒子紗染色過程中極其重要的環節。掛紗主要是將筒子紗從料斗里經過步進輸送組件運送到掛紗機器人旁邊,經過掛紗機器人掛到紗架上的過程。掛紗過程如圖1所示。
圖1 掛紗過程
現有掛紗系統由于在料斗里的筒子紗都處于隨機擺放的狀態,需要借助人工將筒子紗擺放在步進傳送帶上,然后再由機器人掛到紗架上,不僅耗費人力而且增加了一個工位,且占用廠房面積。本文構建的新掛紗系統,該系統應用Faster R-CNN神經網絡構建筒子紗識別與定位系統,可以直接在料斗里抓取筒子紗而省去了人工擺正以及傳送帶的輸送環節,節省人力和廠房空間。新掛紗系統結構示意圖如圖2所示。
該系統主要由工業相機、六自由度HIWIN上紗機器人、計算機系統和待抓取筒子紗構成。采用大恒圖像水星系列MER-502-79U3M工業相機,獲取圖像為灰度圖像,最大幀率為79 fps。HIWIN上紗機器人可以通過六軸聯動將末端手爪移動到空間范圍的任意一個位置,最大限度的縮小機械手臂移動的距離,較大幅度的提升工作效率,機械手臂每個關節都有準確的位置記憶,工作時不需要每次都返回原點,節省時間。六自由度HIWIN機器人的驅動方式為伺服電動機與步進電動機混合驅動,末端執行機構為氣動手爪。
圖2 新掛紗系統結構示意圖
本文使用單目視覺系統如圖3所示。
圖3 單目視覺系統
相機安裝的位置與工作平面垂直,且位置固定不變,因此內外參數也固定不變,其中相機內參數是由相機本身的參數決定的,例如焦距、像素大小等,外參數則是相機在實際坐標系下的參數,例如旋轉方向和位置等。圖3(a)中,在相機的光軸中心建立坐標系,Zc軸的方向平行于相機光軸,規定相機到筒子紗的方向為正方向,Xc軸方向為圖像坐標沿水平增加的方向[7]。筒子紗作業目標的坐標系原點Ow可選擇相機光軸中心線與作業平面的交點,Zw軸與Zc軸同方向,Xw軸與Xc軸同方向。在保證攝像機位置和內外參數不變的情況下,設工業相機光軸與圖像平面交點為(u0,v0),X、Y軸為圖像坐標系,(u,v)為像面坐標系,二者關系見圖3(b)。
在工作平面上,筒子紗坐標可表示為(xw,yw,0)。則可以獲得筒子紗在相機坐標系下對應坐標為[8]:
式中d為光軸中心Oc到零件平面的距離。
假定采用四參數攝像機模型,且在忽略攝像頭發生畸形變化情況下,任意選取工作平面上的2個點P1=(xw1,yw1,0)和P2=(xw2,yw2,0),則可以得到:
式中:(u1,v1)是P1點的圖像坐標;(u2,v2)是P2點的圖像坐標;kxd、kyd是標定出的攝像機參數。
在沒有畸變的情況下,可以采用工作平面上2個已知的坐標點標定單目二維視覺測量中的攝像機參數。在抓取筒子紗時,可以任意選擇一個已知平面坐標和圖像坐標的點作為測量的參考點,通過任意點的圖像坐標可以計算出這個點相對于參考點的位置[9]。
傳統的樣本擴充方式主要是采用圖像的鏡像、旋轉、拼接、隨機裁剪、仿射變換等方法[10],這些方法多用于圖像的擴充,且對于織物圖像的細節特征擴充不理想,影響數據集的真實性以及神經網絡的訓練正確率。
GAN(Generative Adversarial Nets)是由Goodfellow等[11]在2014年提出的一種生成式模型,其核心思想是二人零和博弈,即博弈雙方的利益之和是一個常數。該模型主要有2個模塊:生成器模型G(Generator)和判別器模型D(Discriminator),在GAN網絡訓練的過程中,由生成器模型G接收一個隨機噪聲z從而生成織物的上邊緣坐標G(z);判別器D的輸入為真實的織物上邊緣數據x,整個模型的目標是使判別器模型D(x)無論對于真實數據集坐標還是生成的數據集坐標,輸出的概率均為0.5,無法判別數據集的真假,即達到納什均衡[12],優化目標如式(5)所示:
A=Ex~pdata(x)[logD(x)]
B=Ez~pz(z)[log(1-D(G(z))]
(5)
式中:A為判別器D的熵;x為真實數據;pdata(x)為真實數據的概率分布;B為隨機數經過生成器G的熵;z為來自概率分布p(z)的隨機數;V(D,G) 是判別器的目標的最大化函數,生成器是令其最小化。
應用GAN生成筒子紗數據集模型,如圖4所示。
由于GAN對抗神經網絡生成的筒子紗數據集含有高斯噪聲,因此對生成的筒子紗數據集應用5×5模板高斯濾波,得到完整的筒子紗數據。而后應用Faster R-CNN神經網絡對筒子紗識別定位。
Faster R-CNN神經網絡是在Fast R-CNN(快速區域卷積神經網絡)的基礎上引入區域生成網絡(Region Proposal Network,RPN),使用RPN網絡取代了Fast R-CNN 網絡中的Selective Search(選擇性搜索),即采用RPN網絡代替Selective Search進行候選區域的生成,然后將這2個部分整合為一個網絡結構模型,因此在保證精度的同時又提高了檢測速度[13-14]。與Fast R-CNN相比,由于RPN網絡的引入,并且RPN網絡與Faster R-CNN 網絡共享卷積層,因此Faster R-CNN比Fast R-CNN在圖像檢測過程中訓練速度提高了近10倍。Faster R-CNN神經網絡主要包括: 數據集、特征提取器、RPN(區域建議網絡) 和Fast R-CNN 網絡等四大部分,Faster R-CNN神經網絡結構圖如圖5所示[15-16]。
圖4 筒子紗數據集模型
圖5 Faster R-CNN神經網絡結構
將筒子紗圖像輸入VGG(Visual Gemetry Group)網絡,經過VGG網絡的卷積層將織物特征表征在最后一個卷積層上,并且通過RPN網絡提取缺陷區域候選框,在池化層(ROI pooling)中將每個候選框尺寸重置為固定大小,然后經過全連接層,得到固定大小的特征向量,最后分別在各自的全連接層上進行筒子紗區域的回歸和定位。
應用Matlab2018a環境和圖2平臺進行實驗,使用單目相機分別獲取單個筒子紗的不同位置作為初始數據集,并應用GAN對抗生成神經網絡對數據集多樣性擴充,共獲取數據集500張,部分不同形態筒子紗如圖6所示。對各個形態的筒子紗位置標記后輸入Faster R-CNN神經網絡完成訓練。
在實際抓取過程中,筒子紗的形態各異,無規則的擺放在料斗里,并且部分筒子紗被遮擋,在抓取時需要先抓取上面的筒子紗,而后逐層完成抓取任務。應用訓練好的Faster R-CNN神經網絡模型識別和定位單個不同形態的筒子紗形態,如圖7所示。
由圖7可知,對于單個筒子紗的識別及定位過程準確度高,可以引導機器人完成抓取上紗任務。這4種筒子紗擺放的位置經過識別定位后所對應的位置以及得分值如表1所示。
圖6 不同形態筒子紗
圖7 單個不同形態的筒子紗識別定位
表1 單目標識別定位結果
在實際的作業環境中,料斗里有很多待抓取的筒子紗,因此必須在獲得抓取順序的前提下才能對筒子紗進行識別定位。在單個筒子紗的基礎上,對訓練的網絡采取多個筒子紗完成識別定位,多個筒子紗抓取結果如圖8所示。
圖8 多個目標識別定位
多個筒子紗識別和得分以及位置如表2所示。根據Faster R-CNN神經網絡模型識別定位以及得分值的判斷,可以完成筒子紗的抓取上紗任務。在每次抓取時,抓取得分值最高的目標,而后依次完成抓取。圖8中,經過第4次抓取后筒子紗分散開,相當于單個筒子紗的抓取。綜合以上實驗結果可得,應用Faster R-CNN神經網絡模型可以識別和定位筒子紗,引導機器人完成上紗任務。
表2 多目標識別定位結果
本文基于單目視覺系統構建了機器人抓取筒子紗上紗系統,與傳統的上紗過程相比,本文構建的系統自動化和柔性化程度高,省去了人工將筒子紗擺放在步進傳送帶的過程,而直接在單目視覺系統的引導下抓取料斗里的筒子紗,與此同時可節約安裝空間。得出結論:
①應用單目視覺系統構建筒子紗抓取上紗系統,提高了抓取系統的柔性化和自動化程度。
②將獲得的單個筒子紗數據集應用GAN對抗神經網絡擴充,提高數據集的多樣性,以獲得更多的筒子紗數據集。
③應用獲得的單個筒子紗數據集訓練Faster R-CNN神經網絡,引導機器人抓取筒子紗完成上紗任務。由于下層筒子紗被遮擋特征不明顯從而得分值較低,因此在抓取時優先抓取得分值最高的筒子紗,而后由上而下完成抓取任務。