李喜柱 陳智超 汪順利 王飛亞 王永根
(1. 中國商飛5G創(chuàng)新中心,上海 201324; 2. 上海飛機設計研究院,上海 201210)
某型號民用飛機是我國具有自主知識產(chǎn)權的民用飛機,其外觀損傷檢查是其試飛和航線運營階段必要的適航性安全檢查工作。本文中所述表面損傷包括但不限于飛機外觀表面的損傷、裂紋、污染等情況。目前,世界范圍內的飛機外觀表面檢查還是主要依靠人工進行繞機目視檢查,成本高、效率低,且檢查效果易受人員視力、身體狀態(tài)等人為因素影響。
相對于人工繞機目視檢查的手段,利用機器視覺技術,對飛機外觀損傷進行智能檢測與分類的方法,具有效率高、成本低和不受人為因素影響的優(yōu)勢。本文研究基于YOLO V3視覺算法處理,主要解決深度學習網(wǎng)絡智能檢測已知類別的損傷,同時對未知損傷具有一定的檢測分析?,F(xiàn)場測試和應用表明,本文提出的方法可以克服傳統(tǒng)人工目視檢測的弊端,有效縮短飛機外觀表面檢測的時間,提高飛機維修維護檢查的效率。
利用機器人進行飛機外觀損傷檢查的關鍵與難點在于表面損傷區(qū)域的準確定位、不同損傷類型的快速分類識別和對損傷的定量檢查分析。本文首先采用YOLO檢測網(wǎng)絡粗略獲取損傷位置,并對外觀損傷進行分類;其次針對不同的損傷類型特點,采用區(qū)域生長算法和水平集算法獲取圖像塊中更精準的損傷位置;最后根據(jù)精細化后的結果,對表面損傷進行量化分析,定量判斷外觀表面損傷分為兩個步驟:(1)對采集的圖像進行損傷的智能檢測;(2)對檢測到的損傷通過相機內部參數(shù)和拍攝距離推算損傷真實尺寸。
本文解決了機器人繞機檢查模式中,基于機器視覺技術實現(xiàn)對飛機外觀表面損傷的快速定位、分類和定量預估分析問題,檢查方法和模式能夠解決深度學習網(wǎng)絡智能檢測已知類別的損傷,對未知損傷具有較強容忍度,使得算法具有較大的靈活性與適應性。
飛機外觀檢查工程實踐中,不同類型損傷的特征差異性較大,部分損傷類型并無明確的邊界,因此無法直接通過分割算法實現(xiàn)損傷的精準定位。針對飛機外觀損傷快速定位和分類難題,采用基于YOLO的檢測算法可以實現(xiàn)損傷的粗定位和分類,網(wǎng)絡結構如圖1所示。其檢測準確率評估公式如式(1)所示:

圖1 YOLO 結構示意圖

(1)
其中,tp和fp分別代表真陽性和假陽性個數(shù)。
為進一步精確定位損傷位置,針對不同的損傷類型,采用不同的傳統(tǒng)算法進行精準定位。在常見的飛機外觀損傷類型中,磕碰、污染會引起外觀表面的凹陷和凸起,外表面凹陷和凸起處在光照下則會有不均勻的光反射。根據(jù)圖片或視頻關鍵幀采集特征,通過增強對比度,采用LOG
算子的檢測算法提取目標損傷所在區(qū)域,LOG
算子如式(2)所示:
其中損傷檢測的主要原理是檢測圖像中比周圍像素灰度值大或小的區(qū)域。相似地,磕碰、磨損也具有表面凹陷的特點,但不同之處則是磨損在表面上可能存在間斷。為解決上述問題,可采用區(qū)域生長算法進行處理:首先對圖像進行損傷類型檢測,其次將損傷檢測結果作為區(qū)域生長初始點來獲取損傷的完整輪廓,從而實現(xiàn)損傷的精準提取。根據(jù)上述方法可以得到表面損傷的精準定位,通過計算其最小外接矩陣,將矩陣的長和寬作為標準來進行定量分析。與上述兩種損傷不同,污染難以根據(jù)尺寸來進行定量分析,其主要特點是:形狀隨機、種類多樣,例如血污、油污(液壓油、燃油、潤滑油)、污垢等。針對外觀表面污染的特點,通過對污染類圖像梯度預設范圍區(qū)間,獲取圖像梯度直方圖,以對應梯度在預設范圍中的頻率作為污染標準進行量化測量。
在機器視覺領域,利用水平集方法可實現(xiàn)圖像的分割,水平集法處理前圖像處理流程如圖2所示。

圖2 外觀損傷圖片處理流程
以變量n為實值函數(shù)的水平集函數(shù)表示如下:

f
就可以描述一個曲面。3個變量能得到一個等值面,大于3則為水平超面,其對應的圖像如圖3所示。
圖3 曲面的等高線集合
圖3類似于等高線圖,每一條線對應著一個常數(shù)c
的水平集,目標區(qū)域在圖3上變成四個圓圈密集的點。在圖像分割中,每個物體的包絡曲線在xy坐標系下演化,在二維圖像平面上曲線函數(shù)為:y
=g(x
)(4)
此函數(shù)求解可用水平集的思想和方法來解決:
1)將這個曲線看成是某個三維曲面下的某一條等高線:z=f
(x,y),f
(x,y)就可以看做是一個xy的隱函數(shù)方程。2) 在二維圖像領域將函數(shù)z=f
(x,y)設置為0,曲面的零水平集就是圖像上的邊緣包絡。z
=f(x
,y
)=0(5)
或者更為標準的形式如下:
Γ=(x
,y
)∣z
(x
,y
)=0(6)
這時,z(x,y)=f
(x,y)就是輔助函數(shù),用三維的曲面來輔助表示二維的曲線。為獲得與圖像邊緣相適應的結果,z需要進行演化才能使得其0水平集所描述的曲線很好地包裹住需要分割的物體,那么此時就涉及到方程的演化:
Γ(t
)=(x
,y
)∣z(x
,y
)=0(7)
z/t
=v
|Δz
|tz
=v
|Δz
|(8)
要促使邊緣演化成包絡object
的形式,需利用圖像中的梯度作為圖像力組成部分驅動曲線演化接近邊緣。利用水平集法進行圖割所獲得的下列檢測示意圖,表面油跡污染檢測效果如圖4所示,表面摩損檢測效果如圖5所示,表面磕碰損傷檢測效果如圖6所示。
圖4 表面油跡污染檢測示意圖

圖5 表面磨損檢測示意圖

圖6 表面磕碰損傷檢測示意圖
利用水平集算法可以在三維的空間進行曲線、曲面的演化而不需要知道其曲線、曲面的參數(shù),正適應于飛機外觀智能檢測過程中用來擬合損傷。
通過前述的飛機外觀表面損傷檢測技術,可以得到每個損傷的類型、位置、最小外接矩形區(qū)域和最小外接曲形區(qū)域。利用小孔成像原理,根據(jù)上述獲取的損傷在物理成像平面上的信息,可以求解出外觀表面損傷的真實尺寸,如圖7所示。

圖7 表面小孔成像原理示意圖
整個測量過程中,繞機機器人攜帶高清變焦相機Z
30對繞飛機外圍進行外觀表面進行圖像采集,測距雷達同時進行相機到飛機表面距離d的計算。通過查閱Z
30相機的規(guī)格型號表得到相機的焦距和感光元件尺寸數(shù)據(jù),查詢可得相機的CMOS
參數(shù)為1/
2.8″,12.8mm
*9.6mm
的標準面積,對角線長為16mm
,計算出相機感光元件長寬尺寸:4.571 4mm
*3.428 5mm
。由于Z
30相機分辨率為FHD
:1 920×1 080 25/
30p
,進一步可以解算出相機在像素平面上,每一像素點在長寬方向上所對應的像元大小為(4.571 4/
1 920)*(3.428 5/
108 0)=0.002 38mm
*0.003 17mm
。假設當前時刻下,測距雷達測算出Z
30相機與飛機外觀表面之間的距離d=2 000mm
,采集的外觀表面圖像檢測出的損傷如圖4所示,該損傷的外界矩形像素尺寸大小為:(1 055p
-1 004p
)*(774p
-443p
)=51p
*331p
那么該損傷所占的總像元大小為:
(51p
*0.002 38mm
)*(331p
*0.003 17mm
)=0.120 469 136mm
*1.048 839 506mm
最后,通過下式可以反推出飛機表面損傷的真實尺寸:

(9)
那么該損傷計算出的真實大小為5.252 615 9mm
*45.734 277mm
:在工程應用實踐過程中,由于飛機試飛或航線的航前、航后工作時,可能有臨時性工作介入,如臨時工作梯介入(如圖8所示),統(tǒng)籌安全因素,為保障繞機機器人在繞機線路上不被臨時障礙物所阻擋,機器人繞機線路一般要求與飛機保持必要的工作距離。

圖8 機器人繞飛機現(xiàn)場檢查應用
應用實踐中,繞機機器人的繞機線路一般離飛機的距離設定為3m
,繞機部分路線圖如圖9所示,由于飛機機體的曲面結構,相機與飛機外觀目標檢測點實際距離需要機器人自配測距激光根據(jù)各個點位拍攝目標具體測量。
圖9 機器人繞機檢查運行線路
為了評估本文算法的性能,本文測試了兩類攝像機,一種是定焦超高分辨率相機,另一種是30倍變焦相機。通過測試發(fā)現(xiàn),定焦的超高分辨率相機在繞機檢測的環(huán)境下無法工程應用,本文研究選取了30倍變焦相機Z
30作為項目的圖像采集設備。經(jīng)實驗室測試,Z
30能夠自動檢測外觀表面劃傷、污染、磕碰等損傷,外觀損傷檢查準確率達到90%
以上;通過相機內參與拍攝距離推算損傷真實尺寸,在靜止情況下,精度小于0.5mm
,在行駛拍攝過程中,精度可達到0.5mm
~4mm
。由于目前現(xiàn)場驗證主要集中在飛機的生產(chǎn)試飛階段,某型號飛機的相關損傷相對較少,因此現(xiàn)場采集的原始樣本數(shù)較少。如表1所示,研究機器人繞機采集到的損傷圖片發(fā)現(xiàn),圖片中往往不只有單個損傷,且受采集時飛機的光線環(huán)境、位置及拍攝角度等影響,因此可以通過裁剪、翻轉、亮度、位移等圖像增強方式將原始圖片數(shù)量大幅度增多。通過將樣本集按照90%
和10%
的比例分成訓練樣本和測試樣本,本文達到的平均精度在90%
以上。
表1 損傷圖像檢測樣本及精度
對于檢測正確的損傷,我們利用損傷的最小外接矩形尺寸,以及相機內參與拍攝距離,可以推算出真實的損傷尺寸。通過查閱Z
30相機的規(guī)格型號表得到相機的焦距和感光元件尺寸數(shù)據(jù),具體數(shù)據(jù)如表2。
表2 相機規(guī)格型號表
查表可得相機的CMOS
參數(shù)為1/
2.8″,根據(jù)相機感光元件12.8mm
*9.6mm
的標準面積,對角線尺寸為16mm
,可以計算出Z
30相機mm
單位下的感光元件尺寸大?。?/
2.8″CMOS
=(12.8/
2.8)*(9.6/
2.8)=4.571 4mm
*3.428 5mm
(10)
由于Z
30相機分辨率為FHD
:1 920×1 080 25/
30p
,進一步可以解算出相機在像素平面上每一像素點在長寬方向上所對應的像元大小為4.571 4mm/
1 920mm
*3.428 5mm/
1 080=0.002 38mm
*0.003 17mm
。在不同運動狀態(tài)、不同拍攝距離下,相機拍攝測量會影響機器視覺測量的準確度。工程實踐中,分別對3組樣本進行不同距離下的靜止拍攝和運動拍攝,飛機表面損傷尺寸的機器視覺測量值與實際尺寸測量值及誤差值如表3和表4所示。
表3 靜止拍攝測量誤差 (單位:mm)

表4 運動過程拍攝誤差 (單位:mm)
本文對靜止狀態(tài)繞機機器人拍攝圖像的測量誤差(表3)以及行駛狀態(tài)繞機機器人拍攝圖像的測量誤差(表4)分別進行評估,通過調整繞機機器人不同的拍攝距離,來衡量拍攝距離對誤差的影響,測量誤差與拍攝距離關系如圖10所示。

圖10 測量誤差與拍攝距離關系
通過分析表3、表4可知,靜止拍攝測量的誤差能夠達到0.5mm
左右;而行駛過程中拍攝損傷的測量誤差最高超過3mm
。行駛過程中的平均誤差要大于靜止狀態(tài)拍攝的,由于行駛過程中的機器人定位誤差、飛機三維重建誤差以及控制誤差,拍攝距離增大后,損傷真實尺寸與像平面的尺寸的比例增大,導致圖像檢測的誤差在反投影到飛機曲面后的真實尺寸誤差也相應地增大。具體而言,當前方案為繞機機器人搭載Z
30相機在距飛機表面3.6m
線路點上進行拍攝,相機6.5倍變焦的情況下,經(jīng)過測算,視野范圍約為64cm
* 37cm
;在距離飛機表面3.78m
時,視野范圍約為67.1cm
* 38.8cm
。當繞機機器人定位誤差為80mm
,三維重建誤差為100mm
時,以繞機機器人距飛機表面3.6m
和3.78m
時為例,視野范圍分別為64cm
* 37cm
和67.1cm
* 38.8cm
,放大倍數(shù)為1.05。設損傷直徑尺寸為X:
X
×1.05≥X
+0.1(11)
解得X ≥ 2.00,因此任何直徑達到2.00mm
的損傷在繞機機器人定位誤差下都將產(chǎn)生0.1mm
的尺寸檢測誤差。現(xiàn)場應用相機的分辨率為1 920 * 1 080,在繞機機器人距離飛機表面3.6m
并采用6.5倍變焦時,拍攝到的實際畫面大小為64cm
* 37cm
。因此,每個像素對應的實際尺寸約為(64cm/
1 920)*(37cm/
1 080)=0.33mm
*0.34mm
。因此,繞機機器人攜帶相機可檢測損傷的尺寸測量精度達到0.34mm
。實踐應用證明,在試飛和航線演示的航前、航后繞機檢查過程中,人工繞機檢查和機器人繞機檢查在同等實施條件下,機器人繞機檢查可以發(fā)現(xiàn)一些人工繞機目視檢查難以發(fā)現(xiàn)的細微外觀損傷,優(yōu)于人工一般目視檢查的標準要求。本文針對飛機表面的外觀損傷檢查工作,提出了一種基于機器視覺技術的飛機外觀表面損傷檢測框架和機器人繞機檢查工程應用方法。該框架能夠解決機器深度學習網(wǎng)絡智能檢測已知類別損傷,對未知損傷也具有較強容忍度,使得檢查具有較大的靈活性與適應性。本文研究方法能夠滿足飛機外觀表面損傷智能化檢測與分類需求,也可提供一定誤差范圍內的量化分析,可以為機器人智能繞機檢查工作的工程應用實施提供技術參考和支撐。