2
(同濟(jì)大學(xué)1.中德學(xué)院,2.機(jī)械與能源工程學(xué)院,上海 201804)
發(fā)展智能制造對(duì)推動(dòng)我國(guó)制造業(yè)轉(zhuǎn)型升級(jí)具有重要意義,而智能裝配則是其中重要的組成部分。在當(dāng)前的產(chǎn)品裝配領(lǐng)域,結(jié)合人機(jī)交互、機(jī)器視覺、智能數(shù)據(jù)采集等技術(shù)的人機(jī)融合式裝配系統(tǒng)是解決人工裝配中質(zhì)量和效率問(wèn)題的最佳途徑。為了更好地控制裝配質(zhì)量,將產(chǎn)品質(zhì)量檢測(cè)轉(zhuǎn)移到裝配過(guò)程中來(lái),本文研究了基于機(jī)器學(xué)習(xí)的裝配圖像識(shí)別技術(shù)。
機(jī)器學(xué)習(xí)領(lǐng)域的算法眾多,根據(jù)訓(xùn)練數(shù)據(jù)是否有標(biāo)簽,可將這些算法分為監(jiān)督學(xué)習(xí)和無(wú)監(jiān)督學(xué)習(xí)兩大類。監(jiān)督學(xué)習(xí)的訓(xùn)練數(shù)據(jù)有人為標(biāo)簽,希望從訓(xùn)練數(shù)據(jù)集中學(xué)習(xí)對(duì)象的劃分規(guī)則,并應(yīng)用此規(guī)則在測(cè)試數(shù)據(jù)中預(yù)測(cè)結(jié)果和輸出標(biāo)簽,主要算法包括線性回歸,邏輯回歸,人工神經(jīng)網(wǎng)絡(luò)和支持向量機(jī)。無(wú)監(jiān)督學(xué)習(xí)用于處理沒(méi)有標(biāo)記的數(shù)據(jù)集,且事先不需要經(jīng)過(guò)訓(xùn)練,它更類似于人類的學(xué)習(xí)方式,主要包括聚類和降維算法[1]。
機(jī)器視覺是人工智能的重要分支,主要任務(wù)是通過(guò)圖像處理程序代替人的大腦完成測(cè)量、檢查和判斷等工作。將相機(jī)獲取到的圖像進(jìn)行預(yù)處理操作,使用機(jī)器學(xué)習(xí)算法即可實(shí)現(xiàn)圖像識(shí)別。在產(chǎn)品質(zhì)量檢測(cè)領(lǐng)域,機(jī)器視覺技術(shù)發(fā)揮了重要的作用[2~3]。
(1)硬件部分
裝配圖像識(shí)別需要利用相機(jī)來(lái)檢測(cè)當(dāng)前步驟零件是否正確裝配,并且需要把檢測(cè)結(jié)果反饋給裝配系統(tǒng)的主程序。本文的研究采用被廣泛使用的普通工業(yè)相機(jī),具有圖像采集的功能但不帶有圖像識(shí)別的功能,圖像識(shí)別軟件通過(guò)自主開發(fā)并融入到裝配系統(tǒng)中。當(dāng)前市場(chǎng)上類似的相機(jī)選擇很多也普遍廉價(jià),本方案中選取相機(jī)分辨率為1600*1200 px,幀速范圍從1600*1200 5fps到320*240 30fps,感光尺寸為1/2.7’CMOS。
圖1 圖像識(shí)別硬件系統(tǒng)
一個(gè)機(jī)器視覺系統(tǒng)的組成主要有三個(gè)部分:相機(jī)、鏡頭和光源。根據(jù)裝配臺(tái)的布局,相機(jī)和裝配區(qū)域之間的垂直距離約為1.1米,所以選擇焦距為16mm的鏡頭。為了保證環(huán)境光照穩(wěn)定,系統(tǒng)選用亮度可調(diào)節(jié)的環(huán)形LED燈作為光源。結(jié)構(gòu)如圖1所示。
(2)軟件部分
設(shè)計(jì)的圖像識(shí)別系統(tǒng)是整個(gè)人機(jī)融合式裝配系統(tǒng)中的一個(gè)模塊,結(jié)合機(jī)器學(xué)習(xí)相關(guān)算法在MATLAB平臺(tái)上開發(fā)。使用時(shí),操作者只需要在該模塊中創(chuàng)建正確裝配和一些典型錯(cuò)誤的類,調(diào)用工業(yè)相機(jī)在每個(gè)類中拍攝數(shù)張照片,系統(tǒng)會(huì)自動(dòng)訓(xùn)練分類器,不需要操作者進(jìn)行特征選取。在裝配過(guò)程中,系統(tǒng)根據(jù)裝配步驟調(diào)用對(duì)應(yīng)的分類器對(duì)圖像進(jìn)行識(shí)別并向主程序反饋?zhàn)R別結(jié)果。
本研究的人機(jī)融合式裝配系統(tǒng)中訓(xùn)練圖像易于獲取,并可以同時(shí)得到其標(biāo)簽,因此選擇基于機(jī)器學(xué)習(xí)的方式,利用監(jiān)督算法通過(guò)訓(xùn)練分類器來(lái)實(shí)現(xiàn)圖像識(shí)別。
基于機(jī)器學(xué)習(xí)的圖像識(shí)別過(guò)程主要分以下幾步:信息的獲取、預(yù)處理、特征抽取和選擇、分類器設(shè)計(jì)和分類決策。其中特征提取是指使用數(shù)學(xué)的方法將圖像本身的特征進(jìn)行抽取。圖像識(shí)別過(guò)程中分類器根據(jù)抽取出的特征對(duì)圖像進(jìn)行分類,所以特征抽取對(duì)圖像識(shí)別至關(guān)重要[4]。常用的圖像特征提取算法有SIFT(Scale Invariant Feature Transform),SURF(Speeded-Up Robust Features),HOG(Histogram of Oriented Gridients),LBP(Local Binary Pattern),Haar-like等。分類器設(shè)計(jì)指的是使用帶有標(biāo)簽的訓(xùn)練數(shù)據(jù)進(jìn)行訓(xùn)練而得到的一種識(shí)別規(guī)則,利用該識(shí)別規(guī)則能夠?qū)Ρ蛔R(shí)別的圖片進(jìn)行分類,即對(duì)未知類的圖像預(yù)測(cè)標(biāo)簽。當(dāng)前使用比較廣泛并且適用于圖像分類的分類器算法主要有卷積神經(jīng)網(wǎng)絡(luò)(CNN),支持向量機(jī)(SVM),詞袋模型(BoW)等。
使用以上三種分類器算法,結(jié)合不同的圖像特征提取算法對(duì)各個(gè)算法進(jìn)行測(cè)試,比較這些算法的圖像識(shí)別準(zhǔn)確率、訓(xùn)練和分類耗時(shí)以及訓(xùn)練所需數(shù)據(jù)量。通過(guò)測(cè)試確定選擇何種算法來(lái)實(shí)現(xiàn)裝配系統(tǒng)中的裝配過(guò)程質(zhì)量檢測(cè),同時(shí)實(shí)驗(yàn)結(jié)果也可用于后續(xù)步驟中訓(xùn)練數(shù)據(jù)的擴(kuò)展和分類器的微調(diào)。由于SVM算法已經(jīng)被證明最適合和HOG特征結(jié)合使用,所以對(duì)于SVM算法只結(jié)合HOG特征進(jìn)行測(cè)試[5]。CNN算法通過(guò)卷積核掃描圖像得到圖像特征,所以也不需要結(jié)合圖像特征提取算法進(jìn)行使用。對(duì)于BoW,則需結(jié)合常用的五種圖像特征提取算法以找出最優(yōu)方案。
實(shí)驗(yàn)以某電磁閥產(chǎn)品裝配過(guò)程為例,選擇該產(chǎn)品裝配過(guò)程中最難以識(shí)別是否正確裝配的步驟,根據(jù)實(shí)際情況選取圖像感興趣區(qū)域。如圖2所示,2 (a)為該步驟正確裝配,2 (b)為墊片裝反的情況,2 (c)為漏裝墊片的情況,2 (d)為漏裝閥芯的情況,共4個(gè)類,每個(gè)類各獲取120張圖片分別用于算法的訓(xùn)練和測(cè)試。由圖中可以看出,墊片正反面的情況較難區(qū)分,僅有表面粗糙度不同,這給識(shí)別帶來(lái)了很大的難度,并且對(duì)墊片放置的角度沒(méi)有固定的要求,所以選取的算法若能對(duì)該步驟準(zhǔn)確識(shí)別,則該算法也能滿足其他步驟的識(shí)別要求。
圖2 測(cè)試圖像的四個(gè)類
該實(shí)驗(yàn)研究的問(wèn)題是隨著訓(xùn)練數(shù)據(jù)的量的變化,各分類器的分類準(zhǔn)確性及耗時(shí)如何。實(shí)驗(yàn)訓(xùn)練數(shù)據(jù)量由每個(gè)類一張圖片開始,直到60張結(jié)束,每次實(shí)驗(yàn)時(shí),訓(xùn)練圖像都從數(shù)據(jù)集中隨機(jī)選取,除訓(xùn)練圖像外,其余圖像用作對(duì)分類器的測(cè)試,則隨著訓(xùn)練數(shù)據(jù)的增加,測(cè)試數(shù)據(jù)由119張逐漸下降到60張。為了減少實(shí)驗(yàn)誤差,實(shí)驗(yàn)的每一個(gè)步驟都隨機(jī)選取訓(xùn)練數(shù)據(jù)和測(cè)試數(shù)據(jù)執(zhí)行五次,取其均值。實(shí)驗(yàn)用到的算法均基于MATLAB平臺(tái)實(shí)現(xiàn),并在MATLAB上進(jìn)行測(cè)試。實(shí)驗(yàn)結(jié)果如圖3~5所示。
圖3 各算法運(yùn)行耗時(shí)
由圖3結(jié)果可知,SVM和BoW+SURF算法表現(xiàn)接近,平均運(yùn)行所需時(shí)間最短,且隨著訓(xùn)練數(shù)據(jù)的增加,運(yùn)行所需時(shí)間并沒(méi)有出現(xiàn)明顯的增長(zhǎng)。對(duì)于CNN,算法耗時(shí)隨著訓(xùn)練數(shù)據(jù)數(shù)量增加而逐漸上升,特別是當(dāng)訓(xùn)練圖片數(shù)量超過(guò)50張時(shí),CNN運(yùn)行耗時(shí)大幅提升。BoW+LBP和BoW+HOG運(yùn)行所需時(shí)間隨著訓(xùn)練數(shù)據(jù)的增加都沒(méi)有出現(xiàn)明顯的增長(zhǎng),運(yùn)行耗時(shí)處于中間水平。
圖4 各算法對(duì)測(cè)試圖片集識(shí)別正確率
由圖4結(jié)果可知,隨著訓(xùn)練圖片數(shù)量的增加,所有算法對(duì)測(cè)試圖片的識(shí)別準(zhǔn)確度都明顯得到提高,并在訓(xùn)練圖片數(shù)量超過(guò)30張后趨于穩(wěn)定。對(duì)于BoW+SURF、SVM和CNN這三種算法,當(dāng)訓(xùn)練數(shù)據(jù)超過(guò)25張時(shí),識(shí)別準(zhǔn)確率都能達(dá)到97%以上,它們的平均準(zhǔn)確率分別為99.70%,99.30%和98.00%。對(duì)于其余四種算法,它們對(duì)于測(cè)試圖像的識(shí)別效果一般,普遍難以達(dá)到90%以上。
圖5 各算法對(duì)訓(xùn)練圖像集識(shí)別正確率
由圖5結(jié)果可知,BoW+SURF和SVM對(duì)訓(xùn)練圖片的識(shí)別準(zhǔn)確率始終保持在100%的水平,除此以外,其余算法對(duì)于訓(xùn)練圖片的識(shí)別準(zhǔn)確率的波動(dòng)都很大,并處于一個(gè)較低的水平。
綜合以上分析,識(shí)別效果較好的有BoW+SURF、SVM和CNN三種算法,其余各算法的準(zhǔn)確率均達(dá)不到工業(yè)應(yīng)用的要求。并且當(dāng)訓(xùn)練圖像數(shù)量處于25到35張范圍內(nèi)時(shí),三種算法的測(cè)試圖像識(shí)別準(zhǔn)確率分別為99.38%、98.28%和98.00%,訓(xùn)練圖像識(shí)別準(zhǔn)確率分別為100%、100%和99.77%,均已具備良好的可行性。下一步是對(duì)這三種算法進(jìn)一步改進(jìn)以在降低原始訓(xùn)練圖片數(shù)量的同時(shí)保持算法的識(shí)別準(zhǔn)確率。
為了降低系統(tǒng)使用的復(fù)雜程度,減少在使用過(guò)程中需要?jiǎng)?chuàng)建的訓(xùn)練數(shù)據(jù)的數(shù)量,同時(shí)提高算法的識(shí)別準(zhǔn)確率,現(xiàn)研究不同的訓(xùn)練數(shù)據(jù)擴(kuò)展方法將如何影響圖像識(shí)別結(jié)果。利用圖像處理擴(kuò)展訓(xùn)練數(shù)據(jù)是圖像識(shí)別系統(tǒng)設(shè)計(jì)中常用的操作,通過(guò)訓(xùn)練數(shù)據(jù)擴(kuò)展可減少原始訓(xùn)練數(shù)據(jù)數(shù)量并很好地提高分類準(zhǔn)確率[6]。
為了確定最優(yōu)的訓(xùn)練數(shù)據(jù)擴(kuò)展方案,以下使用上文中分類效果較好的三種算法:BoW+SURF、SVM和CNN,并利用上文中使用的數(shù)據(jù)集作為訓(xùn)練數(shù)據(jù)擴(kuò)展實(shí)驗(yàn)的原始數(shù)據(jù)集。在原始數(shù)據(jù)集中,每個(gè)類分別隨機(jī)選取若干張圖像作為分類器的原始訓(xùn)練數(shù)據(jù),原始數(shù)據(jù)集中剩下的圖像作為測(cè)試數(shù)據(jù)。在這若干個(gè)原始訓(xùn)練圖像中,通過(guò)圖像變換進(jìn)一步創(chuàng)建更多的訓(xùn)練圖像,然后利用原始訓(xùn)練圖像和變換圖像作為訓(xùn)練數(shù)據(jù)對(duì)分類器進(jìn)行訓(xùn)練。考慮到裝配車間中實(shí)際的生產(chǎn)環(huán)境對(duì)相機(jī)可能產(chǎn)生的影響,創(chuàng)建擴(kuò)展訓(xùn)練圖像時(shí)使用以下圖像變換:
1) 鏡像:以x或y軸為對(duì)稱軸生成原始圖片的鏡像;
2) 旋轉(zhuǎn):以原始圖像的中心作為旋轉(zhuǎn)中心,旋轉(zhuǎn)角度為0到自定義的極限角度范圍內(nèi)的隨機(jī)值;
3) 位移:原始圖像可以在圖像的0%到自定義的極限位移范圍內(nèi)進(jìn)行隨機(jī)移動(dòng),可以選擇沿x軸或者y軸方向進(jìn)行位移;
4) 旋轉(zhuǎn)+位移:對(duì)原始圖像同時(shí)進(jìn)行旋轉(zhuǎn)和位移操作以產(chǎn)生擴(kuò)展訓(xùn)練圖像;
5) 亮度變化:改變?cè)紙D像的亮度產(chǎn)生更亮或更暗的圖像,這是為了使分類器更獨(dú)立于相機(jī)的曝光設(shè)置,因?yàn)榄h(huán)境光照可能不會(huì)處于完全穩(wěn)定的狀態(tài);
6) 對(duì)比度變化:改變?cè)紙D像的對(duì)比度;
7) 高斯噪聲:對(duì)原始圖像添加高斯噪聲;
8) 椒鹽噪聲:對(duì)原始圖像添加椒鹽噪聲;
9) 位移+旋轉(zhuǎn)+高斯噪聲:對(duì)原始圖像同時(shí)執(zhí)行位移、旋轉(zhuǎn)和高斯噪聲操作。
實(shí)驗(yàn)中原始訓(xùn)練圖像數(shù)量取30張,數(shù)據(jù)集中剩下的圖像作為測(cè)試數(shù)據(jù),實(shí)驗(yàn)重復(fù)執(zhí)行五次,并且每次實(shí)驗(yàn)的訓(xùn)練圖像都是隨機(jī)選取的,記錄每次實(shí)驗(yàn)各算法對(duì)訓(xùn)練和測(cè)試圖像的識(shí)別正確率并取均值作為實(shí)驗(yàn)結(jié)果。實(shí)驗(yàn)結(jié)果如表1所示,表中第一列為利用原始數(shù)據(jù)創(chuàng)建擴(kuò)展訓(xùn)練數(shù)據(jù)的操作。
表1 原始訓(xùn)練圖像30張各算法運(yùn)行情況
由運(yùn)行數(shù)據(jù)可得,圖像識(shí)別準(zhǔn)確率最高的算法是BoW+SURF,準(zhǔn)確率高達(dá)99.82%,此時(shí)擴(kuò)展訓(xùn)練數(shù)據(jù)使用的是0%~20%位移+0%~10%旋轉(zhuǎn)+高斯噪聲??梢钥吹?,在使用原始訓(xùn)練數(shù)據(jù)訓(xùn)練分類器時(shí),三個(gè)算法的分類準(zhǔn)確率都達(dá)到了99%以上,幾乎沒(méi)有提升的空間。對(duì)于BoW+SURF,幾乎所有使用了擴(kuò)展訓(xùn)練數(shù)據(jù)的情況的準(zhǔn)確率都能保持在99%以上。即采用各種不同的擴(kuò)展訓(xùn)練數(shù)據(jù)都能使BoW+SURF算法達(dá)到非常高的識(shí)別準(zhǔn)確率。對(duì)于SVM,加入擴(kuò)展訓(xùn)練數(shù)據(jù)后的準(zhǔn)確率變化有升高也有下降,整體表現(xiàn)較為普通。而CNN只有在使用3張0%~90%旋轉(zhuǎn)時(shí)準(zhǔn)確率得到了提高,此時(shí)準(zhǔn)確率也能達(dá)到99.73%的高水平,但是其余情況下均不及僅使用原始訓(xùn)練數(shù)據(jù)的水平。
圖6 簡(jiǎn)單分類任務(wù)運(yùn)行結(jié)果
綜合實(shí)驗(yàn)數(shù)據(jù)可知,在使用擴(kuò)展訓(xùn)練數(shù)據(jù)后,CNN的運(yùn)行結(jié)果明顯不如SVM和BoW+SURF,它的分類準(zhǔn)確率最低并且運(yùn)行耗費(fèi)的時(shí)間也遠(yuǎn)高于另外兩種算法,在絕大多數(shù)情況下準(zhǔn)確率甚至遠(yuǎn)不如僅使用原始訓(xùn)練數(shù)據(jù)的情況,特別是使用圖片平移操作來(lái)擴(kuò)展訓(xùn)練數(shù)據(jù)時(shí),CNN分類準(zhǔn)確率大幅下降。這種情況是由CNN本身的特性決定的,歸因于全局共享權(quán)值和池化操作,CNN具有平移不變性。即當(dāng)小尺寸的圖像發(fā)生平移時(shí),CNN會(huì)出現(xiàn)識(shí)別錯(cuò)誤的現(xiàn)象,并且這一現(xiàn)象是普遍的[7]。對(duì)于SVM算法,其分類準(zhǔn)確率處于中間水平,但運(yùn)行速度最快,在加入擴(kuò)展訓(xùn)練數(shù)據(jù)時(shí),SVM的識(shí)別正確率會(huì)因?yàn)閿U(kuò)展操作的不同而出現(xiàn)不同程度升高或下降。算法BoW+SURF的效果最好,在大多數(shù)情況下,加入擴(kuò)展訓(xùn)練數(shù)據(jù)都能使算法的分類準(zhǔn)確率得到提高,并且準(zhǔn)確率都非常高,完全能夠滿足工業(yè)應(yīng)用的需求。究其原因,SURF算法提取的是圖像中對(duì)尺度縮放、旋轉(zhuǎn)和亮度變化無(wú)關(guān)的特征,所以當(dāng)圖像出現(xiàn)平移、旋轉(zhuǎn)等變化時(shí),SURF提取的圖像特征變化并不大。BoW+SURF算法耗時(shí)相對(duì)SVM要多一些,但是也處于能接受的范圍。
考慮到裝配車間環(huán)境較為復(fù)雜,可能有光照、噪聲變化等情況,在獲取訓(xùn)練數(shù)據(jù)或者系統(tǒng)實(shí)際運(yùn)行過(guò)程中會(huì)受到一定影響,而BoW+SURF算法的抗干擾能力最強(qiáng),識(shí)別準(zhǔn)確率也最高,運(yùn)行時(shí)間也處于可接受的范圍,所以最終確定BoW+SURF作為系統(tǒng)的裝配圖像識(shí)別算法。同時(shí),綜合考慮車間環(huán)境和用戶操作誤差可能帶來(lái)的影響,為對(duì)每個(gè)原始訓(xùn)練圖像進(jìn)行0%~20%位移+0°~10°旋轉(zhuǎn)+高斯噪聲的操作來(lái)生成擴(kuò)展訓(xùn)練數(shù)據(jù),這種操作最能模擬車間環(huán)境和用戶操作誤差可能帶來(lái)的影響,也能在保持分類準(zhǔn)確率的同時(shí)減少原始訓(xùn)練數(shù)據(jù)的采集數(shù)量。
在產(chǎn)品的實(shí)際裝配過(guò)程中,大部分的裝配圖像分類任務(wù)是相對(duì)簡(jiǎn)單的。還是以該電磁閥產(chǎn)品的裝配為例,選取其中線圈安裝步驟這個(gè)較為簡(jiǎn)單的分類任務(wù)進(jìn)行測(cè)試,它有三個(gè)類,線圈安裝正確,線圈未安裝和線圈安裝反向。測(cè)試結(jié)果如圖6所示??梢钥闯?,簡(jiǎn)單分類任務(wù)對(duì)于分類器非常容易解決,當(dāng)原始訓(xùn)練圖像超過(guò)5張時(shí),準(zhǔn)確率基本上就可以高達(dá)100%。所以,對(duì)于簡(jiǎn)單的任務(wù),只需要少數(shù)原始訓(xùn)練數(shù)據(jù),減少了員工的工作量。
利用工業(yè)相機(jī)結(jié)合機(jī)器學(xué)習(xí)的方式實(shí)現(xiàn)裝配圖像識(shí)別的技術(shù),通過(guò)搭建裝配圖像識(shí)別模塊,利用多種監(jiān)督算法進(jìn)行分類器訓(xùn)練,分析識(shí)別準(zhǔn)確率、耗時(shí)以及所需數(shù)據(jù)量,并進(jìn)一步研究不同的訓(xùn)練數(shù)據(jù)擴(kuò)展方法對(duì)識(shí)別結(jié)果的影響,得到最適于應(yīng)用的算法方案。圖像識(shí)別技術(shù)的引入,為構(gòu)建人機(jī)融合式的裝配輔助系統(tǒng)提供了有力支持,可以及時(shí)準(zhǔn)確地發(fā)現(xiàn)人工裝配過(guò)程中每一步的錯(cuò)誤,有助于實(shí)現(xiàn)裝配質(zhì)量的精準(zhǔn)控制,提高裝配過(guò)程的智能化程度。