張澤宏, 吉衛(wèi)喜,2, 徐 杰, 陸家輝
(1.江南大學 機械工程學院,江蘇 無錫 214122; 2.江蘇省食品制造裝備重點實驗室,蘇州 無錫 214122)
近些年,機器視覺技術得到了飛速的發(fā)展,應用視覺技術可以大幅提升運動機器人的性能和可靠性。離線自動上下料機器人的運動路徑是預設的,相對比較固定,因此在機器人安裝調(diào)試后,仍需要考慮機器人與周圍環(huán)境、尤其是被抓取工件與機床進出料門窗的碰撞干涉問題,在研究此問題過程中,視覺技術能夠更加直接地對目標位置的機器人、物件、機床之間是否會產(chǎn)生碰撞干涉進行監(jiān)測,是更有效的預判方法。本文先使用距離傳感器核定預判位置,通過視覺技術對記錄工件和門框狀態(tài)的圖像進行語義分割,從而判斷整體是否即將產(chǎn)生碰撞干涉。
本文應用像素分類型的圖像分割方法,按照處理特點細分為若干種不同的子方法,比如基于全卷積網(wǎng)絡(fully convolutional networks,FCN)的方法、基于編碼器—解碼器的方法、基于概率圖模型的方法、基于特征融合的方法、基于循環(huán)神經(jīng)網(wǎng)絡(RNNs)的方法等[1]。其中,Long J等人[2]對卷積神經(jīng)網(wǎng)絡( convolutional neural networks,CNN)進行改進,提出了FCN的圖像分割算法,實現(xiàn)了精準的圖像分割。
其在光線因素、隨機噪點等問題上做了算法優(yōu)化,在圖像分割領域是一個重要突破。但由于FCN模型存在部分像素的空間位置信息丟失,且未有效地考慮圖像上下文(image context)信息,導致圖像分割結(jié)果存在區(qū)域模糊和分割邊界不完整、不連續(xù)的問題。針對此類問題,Ronneberger O等人[3]利用編碼器—解碼器結(jié)構(gòu)提出了一種對生物醫(yī)學圖像的分割模型U-Net網(wǎng)絡。與FCN相比,U-Net能較好地還原圖像的空間維度和像素的位置信息,但是網(wǎng)絡訓練參數(shù)過多,不能滿足實時處理。Lin G S等人[4]綜合利用CNN與條件隨機場(conditional random field,CRF)的優(yōu)勢來探索圖像中復雜的上下文信息,提出一種深度結(jié)構(gòu)化模型(deep structured model,DSM)進行圖像分割,提高了分割準確率。
在基于視覺與傳感器的檢測方法中,提出將機器人抓取工件與機床門窗之間的三維位置關系拆分為二維平面交叉位置關系和一維進深位置關系。依靠距離傳感器保證進深方向安全,再利用視覺技術對圖像進行語義分割,通過神經(jīng)網(wǎng)絡學習分割對象在二維平面位置關系是否交叉來預判碰撞,系統(tǒng)示意圖如圖1,系統(tǒng)流程圖如圖2。
圖1 系統(tǒng)示意
圖2 系統(tǒng)流程圖
VGG—16是一種經(jīng)典的CNN結(jié)構(gòu),由牛津大學科學工程系的Simonyan K和Zisserman A提出[5]。最突出的特點就是模型的參數(shù)數(shù)量相對較少,非線性表達能力強,較高的分類準確率。本文以預訓練的VGG—16網(wǎng)絡為基礎網(wǎng)絡,應用殘差網(wǎng)絡(residual network,ResNet)的遠程殘差連接方法構(gòu)建等效殘差塊改進FCN,初步提升分割結(jié)果的精細程度。
1.2.1 FCN的上采樣層
上采樣層采用的是反卷積(deconvolution)的方式,反卷積相對于卷積在神經(jīng)網(wǎng)絡結(jié)構(gòu)的正向和反向傳播中做相反的運算,起到放大還原圖像特征的作用。運算時通過計算轉(zhuǎn)置卷積的方法來還原原有特征向量,過程中會損失精度,下文1.2節(jié)中提出相應的彌補措施。反卷積以VGG—16池化后通過卷積層生成的熱圖特征圖為輸入特征,通過32倍、16倍、8倍的轉(zhuǎn)置卷積核實現(xiàn)上采樣。
1.2.2 FCN的跳躍連接
ResNet是由何愷明等人發(fā)明[6],提出了一種“跳躍連接”的思路,即在神經(jīng)網(wǎng)絡中提供捷徑,使得淺層網(wǎng)絡中的輸出可以跳過若干中間層作為深層網(wǎng)絡的輸入。ResNet發(fā)明的初衷是解決神經(jīng)網(wǎng)絡訓練過程中的梯度消失和梯度爆炸問題。由于原始的FCN的特征圖通常較為粗糙,此時考慮結(jié)合“跳躍連接”的思路,加入更多前層的細節(jié)信息,通過將淺層的高分辨率的特征圖引入到深層網(wǎng)絡參與上采樣過程,融合多層的特征,兼顧局部與全局的信息,可以改善分類結(jié)果的粗糙程度。
全卷積網(wǎng)絡已經(jīng)能夠?qū)崿F(xiàn)像素級的圖像分割,但由于卷積過程的精度損失,不能詳盡表現(xiàn)出圖像中的細節(jié)特征,分割結(jié)果也缺乏空間的一致性。隨機場是統(tǒng)計學的概念,全連接條件隨機場(full-connected conditional random field,FCCRF)是一種鑒別式機率模型。已有研究表明[7],使用全卷積網(wǎng)絡得到像素級分類結(jié)果之后,再使用條件隨機場綜合圖像的空間信息,能夠得到更加精細并且具有空間一致性的結(jié)果。因此,本文參考Google的DeepLab v3圖像分割模型后端的處理結(jié)構(gòu)[8],在所設計的FCN末端,加上全連接條件隨機場。
假設目標圖像中的隨機區(qū)域X={X1,X2,…,Xi,…,XN},N表示圖像像素量,Xi是像素i的分類標注,所有標注組成了標注集L={l1,l2,…,li,…,lK},K表示標簽類別數(shù);存在另一隨機區(qū)域I={I1,I2,…,Ii,…,IN},Ii是像素i的顏色特征向量。對于全連接條件隨機場(I,X)給出概率函數(shù)P(X|I)有
(1)
式中xi,xj均屬于X,Z(I)為歸一化因子,ψμ(xi)為一元勢函數(shù),即FCN分割結(jié)果對應的勢能轉(zhuǎn)換函數(shù);ψp(xi,xj)為二元勢函數(shù),描述像素點之間位置關系,勢函數(shù)之和為能量函數(shù)E(X|I),ψp(xi,xj)的表達式為
(2)
式中 對像素i和j有,μ(xi,xj)為標簽匹配函數(shù),約束了類別標簽的傳導方向;ω(m)為權重向量,fi與fj為i和j的特征向量,p表示位置信息;I表示顏色信息;ω為線性組合權重;θα,θγ用于控制位置信息的尺度,θβ用于控制顏色相似度的尺度。最后通過求解能量函數(shù)E(X|I)的最小值,可得到模型最優(yōu)解[9]。在2.4節(jié)中將對FCCRF涉及的尺度參數(shù)θα,θβ和θγ進行比選。
本文提出一種全卷積網(wǎng)絡與條件隨機場組合模型,結(jié)構(gòu)如圖3所示。模型使用VGG16作為基礎網(wǎng)絡,對采集的圖像進行預處理,再在FCN結(jié)構(gòu)下得到初步的每一個像素屬于工件、框體、背景的概率結(jié)果。然后,使用全連接條件隨機場,對FCN的輸出結(jié)果進行像素空間信息和位置信息的優(yōu)化,得到邊緣更細致、整體上更準確的工件抓取分割結(jié)果,最后基于全監(jiān)督學習的神經(jīng)網(wǎng)絡通過判斷分割對象二維平面位置關系來預判碰撞。
圖3 FCN-FCCRF模型結(jié)構(gòu)示意圖
實驗選擇均像素精度(mean pixel accuracy,MPA) 和均交并比(mean intersection over union,MIoU)共同作為分割效果的評價指標。選擇判準率(estimation accuracy,EA)作為系統(tǒng)預判操作效果評價指標。
在圖像分割中,像素精度(pixel accuracy,PA)即神經(jīng)網(wǎng)絡預測正確的像素數(shù)量占比,能夠反映神經(jīng)網(wǎng)絡的整體準確率。在實際評估時采用全局評價作為指標,即均值化后的均像素精度MPA。交并比(intersection over union,IOU)即預測區(qū)域與標記區(qū)域的交集和并集的比值,能夠反映神經(jīng)網(wǎng)絡監(jiān)督學習的程度。實際評估時,采用均值,即均交并比(MIOU)[10]。在訓練之前對所有圖像即有標注,因此系統(tǒng)判準率即神經(jīng)網(wǎng)絡系統(tǒng)的總準確率(system accuracy,SA),由神經(jīng)網(wǎng)絡模型輸出。具體計算時,假設如下:標注集L={l1,l2,…,li,…,lK},共有K個標簽類別,nij表示本屬于li類,被預測為lj類的像素數(shù)量,即nii表示真正的數(shù)量,而nij和nji表示假正和假負的數(shù)量,則上文中的各類評價指標計算如下
(3)
(4)
(5)
實驗器材包括:1)六自由度機器人(華數(shù)HSR-JR620L);2)工業(yè)相機與鏡頭組件 (相機:Basler,acA4600—7gc,鏡頭:Basler Lens,C125—0418—5M F1.8 f4 mm),相機分辨率為1 400萬像素,采用短焦鏡頭以獲得更大的視場(尺寸:1.21 m×0.87 m),相機安裝在機器人大臂的附件位上,通過POE(Power On Ethernet)線纜連接至計算機,實現(xiàn)圖像的拍攝、存儲;3)紅外測距傳感器(夏普,GP2Y0A51SK0F 測量距離:20~300 mm);4)光源×2(升軒照明,LED投光燈 DC12V-20 W);5)實驗用工件:階梯圓柱毛胚(Q235鋼),長方體毛胚(Q235鋼),另有其他樣式的注塑件。所有器材均經(jīng)過數(shù)據(jù)核對和精度調(diào)試,以保證實驗數(shù)據(jù)準確性;材料均為實驗用料,滿足樣品多樣性。
工業(yè)相機采集的圖像原始尺寸為4 608像素×3 288像素,圖像大小均值為43 MB,由于使用的廣角鏡頭,采集圖像存在一定程度的畸變,因此需要圖像預處理。
利用OpenCV的圖像處理方法,批量處理3 106幅采集圖像,處理后圖像為JPEG格式,保持原有色彩,分辨率降為1 152像素×822像素,圖像大小均值為950 kB,較原圖下降了97.8 %,去除106幅殘次品圖像,保留3 000幅。
采用基于透鏡方程的直線投影展開方法模型[11],利用MATLAB對樣本池圖像進行畸變校正。此方法技術相對成熟,快速可靠,校正前后的圖像對比示例如圖4所示。
圖4 圖像畸變矯正對比
2.3.1 預訓練與微調(diào)
本文FCN網(wǎng)絡搭建與訓練均基于Keras深度學習框架。FCN基礎的編碼器網(wǎng)絡為VGG—16,是常用的分類網(wǎng)絡,故在稍做微調(diào)即可應用于FCN。將 VGG—16初始權重取到最后一個池化層(圖3中的P5),并重新定義P5輸出的連接個數(shù),匹配本文的類別數(shù)量,重新定義損失函數(shù)為交叉熵損失函數(shù),選用Adam優(yōu)化器[12]。初始化學習率α=10-4;一階矩估計的指數(shù)衰減率為β1=0.9;二階矩估計的指數(shù)衰減率為β2=0.999;常量ε=10-8;學習衰減率decay=10-8。
2.3.2 模型訓練
軟件環(huán)境為Python3.6,Keras底層調(diào)用TensorFlow,訓練集共1 800張圖像,按照2.3.1中的參數(shù)設定,每次訓練60張,訓練周期為100,共計迭代30 000次,對圖3所示的網(wǎng)絡進行訓練。表1是損失函數(shù)趨于收斂時的損失函數(shù)的損失值和訓練耗時。圖5是本文訓練過程可視化圖像輸出。
表1 全卷積網(wǎng)絡訓練損失和耗時
圖5 FCN輸出可視化示例
在FCN8s下對節(jié)2.2中所提的尺度參數(shù)θα,θβ和θγ采用網(wǎng)格搜索的方法開展比選實驗。比選數(shù)據(jù)如圖6。
圖6 θ取值比選
首先,固定θβ=80,θγ=20,考慮θα取值的影響,θα的值域為1~80,采用二分法取值。通過對圖6(a)的分析可以看出,隨著θα取值的不斷減小,均像素精度得到不斷提升,圖6(b)表明θα減小到5之前分割耗時沒有明顯增長。綜合考慮均像素精度和耗時,確定θα=5。然后,固定θα=5,θγ=20,則θβ的值域為1~80,同樣地,取值方法為二分法,確定θβ=10。最后,固定θα=5,θβ=10,θγ的取值范圍為1~20,依然采用二分法,取值θγ=20。最后取值確定為θα=5,θβ=10,θγ=20。
使用條件隨機場處理FCN-8s的輸出后,圖像細節(jié)特征表現(xiàn)明顯,像素空間位置得到了較好的校正。最后處理輸出的可視化圖像與原FCN-8s輸出圖像對比如圖7。
圖7 CRF優(yōu)化的結(jié)果對比
本文模型訓練結(jié)束后,利用驗證集600幅圖像對本文模型、未使用CRF優(yōu)化的FCN網(wǎng)絡、預訓練的U-Net和SegNet進行了評價指標對比,使用耗時代表性能,如表2。本文模型對部分測試樣本的分割結(jié)果如圖8。
表2 全卷積網(wǎng)絡訓練損失和耗時
圖8 部分測試樣本分割結(jié)果
由結(jié)果數(shù)據(jù)對分割結(jié)果分析如下:
1)從本文模型分割結(jié)果縱向?qū)Ρ?條件隨機場與FCN的結(jié)合有效彌補了原始FCN在分割精度上的不足,使得模型能夠在處理細微細節(jié)時能夠真實反映場景,如圖8中樣本ⅠA,ⅠB,ⅢB,機器人本體的走線遮擋了部分機床窗體邊框,使得邊框分割出微小的區(qū)域,以上樣本通過本文模型分割之后都能正確取出微小區(qū)域。
2)在不同模型間的橫向?qū)Ρ戎?從驗證集預測的結(jié)果可分析出,預訓練的U-Net的準確率和本文模型相差不大,但是U-Net模型體量巨大,U-Net耗時為本文模型的5.92倍,針對本文場景,U-Net顯然效率偏低。SegNet的優(yōu)勢在于能妥善平衡性能消耗與準確率。但其分割的圖像在細節(jié)上的處理又不及CRF的處理,缺乏精度。
1)本文應用視覺和傳感器的方法,將三維位置關系分解,并利用視覺和神經(jīng)網(wǎng)絡技術解決機器人碰撞預判問題,是一種創(chuàng)新。由神經(jīng)網(wǎng)絡負責二維位置關系辨識,用傳感器保障一維進深方向安全距離。與傳統(tǒng)的包圍盒建模方法相比,減少了大量的復雜的運算。
2)本文提出了一種組合改進型全卷積網(wǎng)絡與條件隨機場的圖像分割算法實現(xiàn)了被抓取工件的圖像分割,輸出機器人抓取工件與機床門窗碰撞的預判結(jié)果。結(jié)果表明,該模型分割的均像素精度達到99.17 %,均交并比達到85.32 %;3 000幅圖像判準率達99.96 %,均幅耗時0.86 s,在碰撞預判過程中,滿足系統(tǒng)整體所需的準確性和實效性性能和魯棒性均有較好的表現(xiàn)。
3)經(jīng)過驗證集對模型的驗證,與U-Net模型和SegNet模型相比,本文模型的均像素精度比這兩種方法分別提高3.62 %和8.34 %。耗時最短,整體而言是最合適的模型。