劉 宇, 魏希來, 王 帥, 戴 麗
(東北大學 機械工程與自動化學院, 遼寧 沈陽 110819)
隨著光纖的出現(xiàn),光纖繞線技術已被廣泛研究,但由于光纖直徑誤差、內(nèi)應力和靜電力等會影響排線精度,而這些因素又具有一定的隨機性,無法通過控制系統(tǒng)的預先設置而避免,因此需要引入光纖收卷檢測系統(tǒng)用以輔助繞線.
已有對光纖收卷檢測方法的研究大多是使用傳統(tǒng)圖像處理技術對光纖的排線狀態(tài)進行檢測.郭晨霞等[1-3]提出一種通過判斷光纖環(huán)的最小包圍矩形個數(shù)的方法來判斷正常、疊線、間隙和繞制到邊等4種情況的檢測方法.張萬成等[4]提出使用圖像識別技術檢測光纖繞線的滯后角來實現(xiàn)對排線狀態(tài)的檢測.楊瑞峰等[5]提出通過使用頂點定位法來判斷光纖收卷的各種特殊情況.
傳統(tǒng)的光纖收卷檢測方法有以下缺點:①模型泛化能力差.檢測方法依賴于形狀、紋理等特征,當光纖因內(nèi)應力和靜電力的作用而產(chǎn)生形變時,檢測方法需進行大量修改,甚至失效;②環(huán)境適應能力弱.當環(huán)境發(fā)生改變,檢測方法有失效的可能;③成本昂貴.需設計獨立的光照設備以使檢測的圖像特征更為明顯.因此,盡管傳統(tǒng)的光纖收卷檢測方法已提出多年,但仍無法在工業(yè)生產(chǎn)中實際應用.
近年來,深度學習在計算機應用領域得到了廣泛的研究.Nyalala等[6]提出了一種基于機器學習的計算機視覺方法來預測番茄的質(zhì)量和體積.Wang等[7]提出了一種基于深度學習的缺陷檢測方法,可在不損失準確性的前提下,識別和分類有缺陷的瓶子產(chǎn)品.盡管卷積神經(jīng)網(wǎng)絡已經(jīng)成功地應用于圖像分類的各個領域,但在光纖制備行業(yè)的應用仍未出現(xiàn).
本文將光纖收卷的應用要求和深度學習的算法特點相結合,提出采用基于深度學習的機器視覺方法對收卷過程中的收卷圖像進行分類來解決光纖收卷問題.實驗結果表明,該方法具有良好的實時識別準確度,且模型泛化能力和適應性均較強,是一種可以和控制系統(tǒng)相結合、替代人工收卷、實現(xiàn)自動精密繞線的良好方法.
收卷過程中,排線機構的橫移速度通常是由幾個因素共同決定的.收卷模型的側視模擬圖如圖1所示.
圖1 收卷模型模擬圖
圖1中,ω表示光纖盤的轉動速度,D表示光纖盤的直徑,d表示光纖直徑,v1表示排線機構的橫移速度,其方向沿紙面向里或沿紙面向外,v2表示排線機構的吐線速度,其方向沿光纖盤切線方向.光纖徑向方向剛度為K,光纖的線密度為ρ,Di表示第i層光纖所形成的圓周直徑.
為方便后續(xù)計算,本文做出如下假設:
1) 每圈光纖的長度固定,不會因為后圈光纖力的拉力而縮短長度;
2) 上層光纖對下層光纖的壓力集中于下層光纖的最高點;
3) 上層光纖在排線過程中始終處于下層兩根光纖的夾縫中.
針對滿足以上假設的模型,第(n+1)層光纖的直徑Dn+1可被表示為
(1)
式中,g為重力加速度.
結合光纖盤運動關系,可得在纏繞第(n+1)層光纖時,光纖盤轉動速度ω和排線機構橫移速度v1的關系式如式(2)所示,以及光纖盤轉動速度ω和排線機構吐線速度v2的關系式如式(3)所示.
(2)
(3)
結合式(1)~式(3),可將排線機構的橫移速度v1表示為
(4)
由式(4)可知,隨著n的改變,v1也是時刻改變的.但在實際生產(chǎn)中,v1通常為固定值.因此,光纖在收卷過程中常會出現(xiàn)以下兩種收卷缺陷:
1) 排線機構的橫移速度過快,導致下一條線在纏繞過程中與上一條線之間出現(xiàn)間隙,即間隙問題的產(chǎn)生.
2) 排線機構的橫移速度過慢,導致下一條線在纏繞過程中來不及到達下一位置,而疊放在上一條線上,即疊線問題的產(chǎn)生.
本文設計的基于深度學習的收卷系統(tǒng)檢測流程圖如圖2所示.
首先通過硬件設備對收卷進行實時的圖像采集,然后將圖像傳輸?shù)接嬎銠C中,由計算機對圖像進行分析處理并輸出結果.若發(fā)現(xiàn)存在問題,則報警并將狀態(tài)指示燈置為特殊顏色.在報警的同時,將檢測到的特殊情況通過TCP/IP協(xié)議傳輸給后端控制系統(tǒng).控制系統(tǒng)根據(jù)傳輸來的信號對排線機構的橫移速度做出相應的調(diào)整以完成對該情況的自動修復.
圖2 基于深度學習的收卷系統(tǒng)檢測流程圖
圖像采集使用德國映美精公司的DFK 72BUC02型工業(yè)相機和SPACE公司的HF6M-2型的1/2″鏡頭.相機采集的圖像尺寸為640像素×480像素,圖像格式為jpg.數(shù)據(jù)集中圖像示例如圖3所示.
圖3 數(shù)據(jù)集中圖像示例
標記過的圖片數(shù)據(jù)集按照7∶1∶2的比例分為訓練集、驗證集和測試集.每張圖片所屬集合隨機分配.集合間沒有圖片重復,各集合的圖片數(shù)量如表1所示.
表1 各集合的圖片數(shù)量
相機使用過程中,常會因光線不足、相機過熱等原因,導致采集到的圖像有高斯噪聲,進而降低檢測的可信度和準確性.因此,對采集到的圖像進行預處理前需進行高斯處理以抑制噪聲影響.本文采用一個核為5×5的高斯濾波器進行高斯處理,輸出像素值Ci,j的計算過程為
(5)
(6)
式中:Zi+s,j+t為輸入的像素值;Wi+s,j+t為通過高斯函數(shù)產(chǎn)生的濾波器對應位置的權值;σ是高斯函數(shù)標準差.
綜上,本文先采用高斯處理以完成對圖片的降噪處理,再通過其他多種方法,如縮放、旋轉等,對采集到的圖像進行預處理以增強圖片的多樣性.
圖4為圖片從形成數(shù)據(jù)集到保存網(wǎng)絡模型的完整流程.
從收卷圖像數(shù)據(jù)集中隨機抽取若干張圖片形成訓練集,再將之輸入網(wǎng)絡中進行n輪神經(jīng)網(wǎng)絡訓練.每輪訓練結束后,將驗證集輸入網(wǎng)絡中,記錄網(wǎng)絡在驗證集上的平均損失值和平均正確率以決定是否停止訓練.每輪訓練中,首先從訓練集中隨機抽取k張照片形成一個照片批次,對該批次照片依次進行高斯處理和預處理,而后同時輸入網(wǎng)絡中,進行一次網(wǎng)絡內(nèi)部參數(shù)迭代.一次迭代后,再輸入下一批次圖片進行參數(shù)迭代.通過程序設定,每張照片能且僅能進入一個批次,遍歷整個訓練集即完成一輪訓練.需注意的是,若最后一個批次的照片不足k張,則會從訓練集中隨機抽取照片補足k張.
本文考慮到識別的準確性以及神經(jīng)網(wǎng)絡模型的移動端部署問題,分別搭建了ResNet[8]系列網(wǎng)絡和MobileNet[9-11]系列網(wǎng)絡作為神經(jīng)網(wǎng)絡訓練及最終識別部分的網(wǎng)絡.ResNet[8]系列網(wǎng)絡提高了神經(jīng)網(wǎng)絡識別的準確度,其包含殘差結構,解決了之前的神經(jīng)網(wǎng)絡層數(shù)較多而準確度不高的問題.MobileNet[9-11]系列網(wǎng)絡則在正確率損失不大的前提下,大大降低了卷積神經(jīng)網(wǎng)絡對硬件運算能力與存儲的依賴.
因此,本文最終搭建了以下6種網(wǎng)絡模型作為訓練用的網(wǎng)絡,分別為ResNet-18,ResNet-34,ResNet-50,MobileNet-v1[9],MobileNet-v2[10]和MobileNet-v3-Small[11].
圖4 神經(jīng)網(wǎng)絡特征識別的系統(tǒng)流程
神經(jīng)網(wǎng)絡的搭建是在Python平臺上基于百度PaddlePaddle深度學習框架進行編程的,使用機器視覺庫OpenCV[12]作為圖像處理模塊.使用線上百度AI Studio(CPU為8 Cores;GPU為Tesla V100-16 GB)GPU環(huán)境進行訓練及測試,本地機 (CPU為Intel i5-4200U 1.6 GHz;RAM為8 GB) CPU環(huán)境進行測試.
本文采用遷移學習來加快神經(jīng)網(wǎng)絡訓練速度[13].其方法是Han等[14]提出的將在大數(shù)據(jù)集上訓練好的網(wǎng)絡參數(shù)作為新網(wǎng)絡的初始參數(shù)重新開始訓練的方法.本文使用的預訓練參數(shù)是在ImageNet大賽數(shù)據(jù)集上訓練好的網(wǎng)絡參數(shù).
學習率和梯度下降算法的選擇對神經(jīng)網(wǎng)絡的的訓練也尤為重要.學習率的選擇決定著神經(jīng)網(wǎng)絡能否收斂到局部最小值以及何時收斂到最小值.梯度下降算法的選擇決定著神經(jīng)網(wǎng)絡收斂的速度.本文的梯度下降算法選擇使用Adam梯度下降法[15].同時,本文遵循文獻[15]中建議的優(yōu)化器設置,將學習率設置為0.001.
本文將每批次輸入神經(jīng)網(wǎng)絡進行訓練的照片數(shù)量選取為64,即,前文2.3節(jié)中的k取值為64.同時,因本文使用了遷移學習,不需要龐大的訓練輪數(shù),本文將訓練輪數(shù)取為200,即,前文2.3節(jié)中的n取值為200.
本文采用平均正確率來檢驗神經(jīng)網(wǎng)絡的分類準確度.其計算公式為
(7)
式中:R為平均正確率,表示被正確分類的樣本比例;NT表示網(wǎng)絡預測結果與實際情況相吻合的圖片數(shù)量;NR表示網(wǎng)絡預測結果與實際結果不同的圖片數(shù)量.
在對超參數(shù)進行設置后,將訓練集的圖片輸入神經(jīng)網(wǎng)絡中進行訓練.每輪訓練結束后,將驗證集輸入網(wǎng)絡中得到平均損失值和平均正確率如圖5所示.
由圖5可發(fā)現(xiàn):隨著訓練輪數(shù)的增加,驗證集在不同神經(jīng)網(wǎng)絡上的平均損失值均在慢慢趨近于0,經(jīng)過200輪訓練后,各神經(jīng)網(wǎng)絡均已收斂.同時,隨著訓練輪數(shù)的增加,驗證集在不同神經(jīng)網(wǎng)絡上的平均正確率也在慢慢趨近于100%,故可得出:神經(jīng)網(wǎng)絡未發(fā)生過擬合現(xiàn)象.
本文在訓練結束后,將測試集輸入保存的網(wǎng)絡模型中進行預測.測試環(huán)境分別為AI Studio在線GPU環(huán)境和本地CPU環(huán)境,得到結果如表2所示.
表2中,t1和t2分別表示在AI Studio在線GPU環(huán)境下和本地CPU環(huán)境下,一張圖片自輸入程序至輸出結果所用的時間.從表2中可發(fā)現(xiàn):各網(wǎng)絡模型在測試集上的正確率均達到了95%以上,說明本文提出的方法的泛化能力和環(huán)境適應能力均較強.其中,ResNet-50的識別正確率最高,達到了99.19%,但是其處理時間較長,是其他網(wǎng)絡的2~3倍.而處理時間最短的MobileNet-v1的識別正確率又相對較低.
圖5 各個網(wǎng)絡模型訓練的平均損失值和平均正確率變化曲線
表2 不同網(wǎng)絡模型的預測結果
將高斯濾波階段和圖像預處理階段隔離出來發(fā)現(xiàn):高斯濾波階段和圖像預處理階段的平均耗時分別為6.78 ms和15.57 ms.因此,相比于CPU環(huán)境,GPU環(huán)境更適宜作為神經(jīng)網(wǎng)絡處理的環(huán)境.實際生產(chǎn)中光纖繞制機的轉速為60 r/min,因此,本文提出的采用神經(jīng)網(wǎng)絡作為識別主體的檢測系統(tǒng),無論在CPU環(huán)境下還是在GPU環(huán)境下,其檢測速度均可以滿足實時性的要求.
結合收卷實際情況、神經(jīng)網(wǎng)絡的分類正確率和處理時間,本文將ResNet-18和MobileNet-v3-Small在測試集上的分類結果以混淆矩陣的形式表示,如圖6和圖7所示.
圖6 ResNet-18網(wǎng)絡模型的混淆矩陣分類結果
圖7 MobileNet-v3-Small網(wǎng)絡模型的混淆矩陣分類結果
通過對混淆矩陣的分析可以發(fā)現(xiàn):①針對疊線情況,神經(jīng)網(wǎng)絡的預測結果與實際情況完全相符,預測的正確率為100%;②針對正常情況,兩種神經(jīng)網(wǎng)絡的分類正確率分別為96.47%和97.06%;③針對間隙情況,兩種神經(jīng)網(wǎng)絡的分類正確率分別為94.67%和95.33%.故可得出:神經(jīng)網(wǎng)絡可有效判別疊線情況,而對于正常情況和間隙情況,存在一定的誤判.將分類失誤的照片提取出來,發(fā)現(xiàn)這些照片上的光纖均存在較小的間隙,是很容易造成誤判的.
通過對誤判的照片進行分析后,認為:在正常繞線的過程中,光纖間有可能因為應力作用而產(chǎn)生較小的縫隙,盡管這類照片嚴格的分類應該是正常,但也允許將此類照片置為間隙的.同時,在排線過程中,光纖由正常轉為間隙的過程中,光纖間最初也會出現(xiàn)較小的縫隙,盡管這類照片嚴格的分類應該是間隙情況,但也允許將此類照片置為正常的.
綜上,本文提出收卷檢測方法的實時性和正確率均滿足實際生產(chǎn)要求,是可以應用在實際光纖生產(chǎn)中的光纖狀態(tài)檢測的.
本文在收卷實驗的基礎上,在Python平臺上開發(fā)了一個光纖收卷智能軟件,其界面如圖8所示.
圖8 光纖收卷智能軟件界面
該軟件除了有基本的光纖檢測功能外,還有人工標定模塊用于將當前照片保存到本地并生成對應標簽,以及相機調(diào)整模塊對相機參數(shù)進行適時調(diào)整.
通過表2對不同神經(jīng)網(wǎng)絡的分類正確率和處理時間的分析發(fā)現(xiàn):在損失率相差不大的前提下,MobileNet-v3-Small可以大大降低網(wǎng)絡對圖片的處理時間.因此,本文選擇MobileNet-v3-Small模型作為該軟件的檢測網(wǎng)絡.
經(jīng)測試,該軟件在本地機上的最高檢測速度可達每分鐘600張,而光纖繞制機的轉速為60 r/min,滿足實際生產(chǎn)檢測要求.
本文提出采用基于深度學習的機器視覺方法對收卷過程中的收卷圖像進行分類來解決光纖收卷問題.該方法泛化能力和適應能力強.通過實驗驗證,該方法對收卷過程中的疊線問題識別正確率為100%,對間隙問題的識別正確率在94.67%以上,且該方法檢測速度高于實際生產(chǎn)繞線速度,達到了實時性要求.因此,該方法是一種可以和控制系統(tǒng)相結合替代人工收卷,實現(xiàn)自動精密繞線的有效方法.