袁忠大,程秀全,王大偉
(1.廣州民航職業技術學院飛機維修工程學院,廣東廣州 510403;2.中國民航大學航空工程學院,天津 300300)
隨著飛機飛行安全水平的提高,飛機機械原因所導致的事故比例減少,而人為差錯導致的航空安全事故比例則不斷上升。因此,如何充分考慮與識別民航維修中的人為因素[1-3],是科技工作者的重要課題。
近年來,國內外學者針對機器視覺在產品缺陷或設備故障檢測中的應用進行了大量研究。徐立青[4]基于機器視覺對汽車精密零件表面缺陷展開了自動檢測研究。姚金寶[5]基于機器視覺對拉擠生產線斷紗缺陷檢測進行了研究。張良安等[6]基于機器視覺與深度學習對飛機防護柵裂紋檢測系統進行了深度研究。邵先鑫[7]基于機器視覺技術,對金屬表面缺陷檢測進行了設計與研究。王清晨[8]基于機器視覺對飛機板件裂紋測量系統進行了研究。魏秀琨等[9]系統地研究了機器視覺在軌道交通系統狀態檢測中的應用。WEI等[10]基于計算機視覺技術對鋼軌波紋進行了識別與評價。WEI等[11]基于圖像識別及機器深度學習技術對受電弓載玻片進行了缺陷檢測。YU等[12]基于由粗到精的卷積神經網絡模型對鋼軌表面缺陷進行檢測。
為運用機器視覺技術輔助飛機外觀檢查,本文作者通過收集飛機維修一線的飛機檢查圖片,并運用圖像處理與特征提取、光學、傳感器、計算機硬件等技術,設計一套自主化的基于機器視覺的飛機部件表面無損檢測模型。
機器視覺是代替人類的視覺和視覺判斷能力,采用相機和計算機完成檢測并執行巡檢任務;它對圖像進行自動采集和分析,以獲得控制所需的數據,評價一個特定的部分。
典型的基于PC的機器視覺系統由圖像采集系統、圖像處理系統、動作執行系統組成,如圖1所示。

圖1 機器視覺的一般模式
圖像采集系統由相機、鏡頭、光源等硬件組成,圖像采集是將物體的光信號轉換為電信號,進而得出所需要的數字圖像。
處理系統首先會對此圖像進行預處理,例如照明校正、二進制轉換、過濾和顏色提取等,最終對提取出的特征進行識別、測量、判斷等;得出的信息傳輸給動作執行系統,它會對得到的信息執行相應的動作,例如若判斷一個部件上面有瑕疵,則需要將它剔除出來。
綜上,機器視覺檢測的步驟[13-15]一般是:首先由CCD等圖像采集裝置獲取被測部件的數字化圖像,傳輸到計算機中;再由程序對圖像進行分析處理得到相應的檢測信息,并形成對被測部件的判斷決策,該決策信息最終將被發送到執行裝置,完成對被測部件的檢測。
CCD相機以體積小、數據傳輸速度快、性能穩定、分辨率清晰等優點[16]得到越來越廣泛的應用。CCD相機根據掃描方式的不同可以分為線陣相機和面陣相機。線陣相機的單幀只能獲得一行像素的圖像信息,所有被拍攝的物體需在采集時間內,從感光芯片前方向前直線運動才能拼湊成一張完整的圖像;面陣相機單幀可以獲得整個圖像信息。
CCD廠商一般會提供豐富的函數SDK庫,可以對相機進行二次開發,將它應用到軟件中。如果不需要在機器視覺軟件里控制工業相機,也可以用廠商提供的軟件進行設置。
鏡頭的主要作用是將目標物體的光線匯聚,成像到相機傳感器所在的平面上。鏡頭的質量直接影響圖像質量,從而影響機器視覺系統的整體性能。所以,在機器視覺系統設計的環節中,合理地選擇和安裝鏡頭非常重要。
無損系統的檢測相機采用德國工業相機Basler4096-80 km+200 mm接圈Schneider Makro-Symmar5.6/80,檢測光源采用CCS LNSP 100BL-DFSL4。
光照射到飛機部件表面會產生反射,反射光會被鏡頭捕捉。圖2所示為鏡頭捕捉的飛機部件表面反射圖像,包括機身劃痕、油漆起皮、鉚釘脫落、雷擊點及發動機進氣道劃痕。

圖2 鏡頭獲取的飛機部件表面圖像
將圖2中的圖像傳送至主機,通過主機中運行的軟件對圖像進行分析,機器視覺軟件界面如圖3所示。

圖3 機器視覺軟件界面
軟件界面左側為工具箱,具體為圖像、定位、測量、檢測、識別等子工具箱。其中圖像子工具箱中有導入圖像、圖像預處理、圖像平移等功能;定位子工具箱中有找點、找直線、找圓等功能;測量子工具箱中有卡尺、間隙測量、顏色提取等功能;檢測子工具箱中有Blob分析、劃痕檢測、邊緣缺陷等;識別子工具箱中有條碼識別、二維碼識別、分類器等。界面中部為流程圖及UI設計器、UI腳本編輯器;界面右側為算子塊屬性。
用機器視覺對飛機部件進行無損檢測的具體過程為:導入飛機維修員在一線維修工作中所拍攝圖片,并對它進行預處理;對圖片中的目標區域進行特征提取;利用統計信息量對飛機部件圖片進行識別和分析。
導入圖像界面(以機身劃痕為例)如圖4所示。

圖4 導入圖像界面
界面左側為導入圖像顯示,右側上部為導入路徑,具體有現場拍照及本地上傳2種方式;右側下部為圖片循環加載、畸變校正及坐標系3種功能。其中,圖片循環加載可利用相機實時拍攝圖像或對本地文件夾圖像進行連續處理,完全實現自動化機器視覺檢測。
由于拍攝環境噪聲等的影響,圖片質量通常并不理想,直接影響后續算法對圖像的特征提取等,因而需要先對圖像進行預處理,這是整個機器視覺過程的重要組成部分。
以機身劃痕為例,此系統對拍攝圖片進行了以下預處理。
3.2.1 通道提取
在處理彩色圖像前需進行降維處理,常用的方法有圖像灰度化處理和圖像通道拆分。為保證圖像處理精度,采用HSV顏色模型。用以下公式[17]將常用的RGB顏色模型轉成HSV顏色模型:
(1)
(2)
V=Imax
(3)
將RGB圖像轉換為HSV圖像后,圖像顏色由彩色變為黑白,其區域特征更明顯,為下一步的特征提取及系統分析打好基礎,處理結果如圖5所示。
3.2.2 Sobel濾波處理
Sobel算子主要用作邊緣檢測,它是以離散性差分算子計算凸顯兩素函數的灰度之近似值。在圖像的任何一點使用Sobel算子,將會產生對應的灰度矢量或法矢量。
該算子包含2組3×3的矩陣,分別為橫向和縱向,將其與圖像做平面卷積,即可分別得出橫向及縱向的亮度差分近似值,若以A代表原始圖像,Gx及Gy分別代表經橫向及縱向邊緣檢測的圖像灰度值,其公式如下:
(4)
(5)
圖像每一像素的橫向以及縱向灰度值通過以下公式計算該點灰度的大小:
(6)
Sobel濾波處理結果如圖6所示。

圖6 Sobel濾波處理結果
3.2.3 二值化處理
利用OpenCV中的函數cvThreshold(dst,dst,230,255,CV_THRESH_BINARY_INV)實現圖片的二值化,可手動指定一個閾值,以此閾值進行二值化處理。
處理結果如圖7所示。可知:經過二值化處理后,圖片中的機身劃痕特征更加明顯。

圖7 二值化處理結果
采用周期法和局部二值化法對預處理后的圖像進行分析[18]。通過周期法對圖像相鄰周期的像素進行比較,得到差異圖像,再將差異圖像二值化,利用二值圖的Blob分析法對圖像中相同像素的連通域進行分析,得到相關的特征量,如圖像中斑點的數量、位置、形狀和方向,還可提供相關斑點間的拓撲結構,從而檢出缺陷。
上述局部二值化法可以把灰度圖像轉換成二值圖像。把大于某個臨界灰度值的像素灰度設為灰度極大值,把小于這個值的像素灰度設為灰度極小值,將灰度圖像變換成二值圖像,再利用二值圖的Blob分析法得到相關的特征量,從而檢出缺陷。
定位單個Blob的方法是計算此連通區域的面積和重心,區域面積計算是像素累加的過程,計算公式如下所示[19]:
(7)
式中:D為連通區域像素的集合。
重心坐標計算將當前像素點的灰度值作為參考值,具體計算過程為
(8)
基于Blob分析,編寫圖像處理代碼并對預處理后的圖像進行分析。由圖8可知:通過對Blob的檢測,圖像中的缺陷均能得到精確檢測及定位。
系統針對不同圖像可自動重復上述步驟,利用上位機統計軟件得到表1數據,可知:基于機器視覺的飛機部件表面無損檢測模型的檢測準確率為100%,完全能夠滿足航空公司對安全效益和經濟效益的要求,同時符合民航業內對智慧民航的發展需求,具有極其重要的行業應用和推廣價值。

表1 缺陷檢測結果
(1)航空公司的航線和定檢檢查工作量較大,需要人工不斷進行目視檢查,由于人為因素的影響,經常導致不必要的事故隱患。文中基于機器視覺技術開發了飛機部件表面無損檢測系統,有效避免了人為因素在飛機維修目視檢查中的負面影響,大大提高了航空公司的安全效益和經濟效益;同時也為國產大飛機的使用和維護奠定了可靠的檢修技術基礎。
(2)未來項目團隊將借助無人機自動飛行對飛機相關部件表面進行圖像提取,同時可借助無人機飛行控制系統的升級實現整個飛機檢修任務在無人干預的情況下全自動執行。最終則是經過數據的采集、分析處理,通過人工智能檢測缺陷,提升民航維修的自動化和智能化程度,從而切實提高航空公司的安全和經濟效益。