胡曉軒, 甄希金, 朱 琦, 王 浩
(1.上海船舶工藝研究所,上海 200032;2.上海申博信息系統工程有限公司,上海 200032)
船舶焊接占船舶制造30%~40%的工作量[1],在中小組立生產線上存在多種工藝類型的焊接,大致可分為手工焊、機器焊、機器人焊,每一種工藝類型所產生的焊接表面質量不一,基本采用人工檢查,工作量較大且檢測準確度依賴人工經驗,檢測效率不高。
近年來,隨著人工智能中的深度遷移學習框架的快速發展,基于圖像的缺陷目標檢測越來越多應用于各行各業。劉夢溪等[2-3]通過改進深度學習中的卷積神經網絡(Convolutional Neural Network,CNN)結構及算法,提高焊接缺陷識別率達93.26%;HOU等[4]在神經網絡的改進過程中使用時滯細胞神經網絡(Delayed Cellular Neural Network,DCNN)模型對x-射線焊接缺陷分類,分別為小孔、裂紋、未熔合、未焊透,識別率為97.2%。結果表明深度學習對焊接特征識別具有較高精度。
焊接表面缺陷均含有獨有的特征,首先需要采集大量手工焊和機器人焊的圖像樣本,對表面特征進行分析;然后通過選擇合適的深度遷移學習方法,設計合理的深度遷移學習模型作為模型層;最后建立船舶焊接表面缺陷智能檢測系統,在系統中調用檢測算法,實現焊接表面缺陷的批量檢測。
根據船廠的生產制造特點,提出以車間焊接中小組立生產線為對象的研究框架(見圖1),通過現場專用攝像機采集焊接表面圖像數據,這些樣本數據一部分作為訓練集,一部分作為測試集,傳輸至上層的船舶焊接表面缺陷智能檢測系統,進行模型的深度遷移學習;完成訓練的模型經部署可使用日常的采樣數據進行再學習,不斷優化檢測模型,檢測結果通過船舶焊接表面缺陷智能檢測系統進行展示。

圖1 深度遷移學習下的船舶焊接表面缺陷智能檢測系統研究框架
深度學習對數據具有較大的依賴性,在焊接機器人領域,由于工況較復雜且成本高,難以獲取數量龐大的標注數據集,因此在很大程度上限制深度學習的使用和發展,而結合遷移學習則可作為解決焊接缺陷學習樣本不足的手段之一。根據深度遷移學習中的不同遷移學習技術,可將深度遷移學習分為4類:基于實例(Instance-based,IB)深度遷移學習、基于映射(Mapping-based,MB)深度遷移學習、基于網絡(Network-based,NB)深度遷移學習和基于對抗(Adversarial-based,AB)深度遷移學習。
SqueezeNet[5]、MobileNet[6]、Xception[7]、ShuffleNet[8]、MobileNet V2[9]、ShuffleNet V2[10]等屬于較輕量級模型,在優化CNN卷積層計算方式上起到作用,較大程度地提高CNN的效率。以MobileNet V2模型和焊接缺陷圖像特征引入DropBlock方法優化神經網絡,生成DBMobileNet V2[11]模型,基于該模型進行焊接表面缺陷目標檢測及焊接表面質量評估。
根據《承壓設備無損檢測》和《鋼的弧焊接頭缺陷質量分級指南》,常見焊接缺陷類型包括裂紋、焊瘤、焊穿、弧坑、氣孔、夾渣、咬邊、未熔合、未焊透等,如圖2所示。

圖2 常見焊接缺陷類型
圖像類別可通過圖像分類任務進行區分。目標檢測是對圖像中的某類別物體進行標記,用邊界框標記物體的位置和大小。目標檢測算法分為3類:單級(one-stage)類,包括YOLO V1、SSD、YOLO V2、RetinaNet和YOLO V3;雙級(two-stage)類,包括Fast R-CNN和Faster R-CNN;多級(multi-stage)類,包括R-CNN和SPP-Net。在檢測速度測試中,單級類算法較為優異,但在檢測準確度方面不及雙級類,而多級類已逐漸被邊緣化。
YOLO V3算法是YOLO算法和YOLO V2算法的改進版。YOLO V3算法在COCO數據集上均值平均精度(mean Average Precision,mAP)的指標mAP-50比YOLO V2算法高13.9%,檢測速度是R-CNN算法的1 000倍、Fast R-CNN算法的100倍,在輸入尺寸為416×416像素時檢測速度可達29 ms/frame。
Darknet-53是YOLO V3算法的主干網絡,主要用于特征提取,采用Leaky ReLU作為激活函數,通過使用殘差網絡提高特征提取的準確率。針對船舶焊接表面缺陷目標較小的情況,在YOLO V3算法中,YOLO負責對焊接缺陷圖像尺寸進行預測,Darknet-53用于提取缺陷特征。經多尺寸卷積和上采樣,Darknet-53輸出特征圖,進行標準卷積運算。經Darknet-53特征提取處理的焊接表面缺陷預測圖像如圖3所示。

圖3 焊接表面缺陷預測圖像
對于焊接缺陷而言,YOLO V3算法在特征提取部分采用提取多特征層進行目標檢測:特征層分為3層,即位于Darknet-53的中間層(52,52,256)、中下層(26,26,512)和底層(13,13,1024);焊接圖像分為13×13網格、26×26網格和52×52網格,每個網絡點負責1個區域對焊接缺陷進行檢測,預測結果對應3個預測框,通過reshape函數得到結果為(N,13,13,3,85)、(N,26,26,3,85)和(N,52,52,3,85)。YOLO V3算法通過解碼將每個網絡點加上其對應的偏移量x_offset和y_offset得到預測框的中心,再計算預測框的長和寬,即可得到焊接缺陷的具體位置。激活函數可在模型上增加標簽,在焊接檢測中可將氣孔、夾渣等作為標簽,從而使模型進行對象識別。
系統設計采用msSQL 2016作為數據庫服務器,并使用.net core跨平臺框架和ABP開發框架進行服務端開發,以此提高服務端的穩定性和功能完整性。前端界面使用AngularJS 8.2.5框架及Bootstrap框架進行頁面設計。系統包括登錄、數據預處理(數據清洗、圖像優化)、批量檢測(一鍵檢測、圖形化展示)、檢測參數管理(參數設置、模型管理)和權限管理(用戶管理、角色管理、系統管理)等模塊。系統模塊功能如表1所示。

表1 系統模塊功能
目前,已在船廠中小組立智能焊接生產線試驗焊接表面缺陷智能檢測系統,對傳統焊機、手工焊機、智能焊接機器人的焊接進行檢測等,如圖4所示。

圖4 焊接表面缺陷智能檢測
船舶焊接表面缺陷智能檢測系統試驗檢測結果如表2所示,初步達到檢測預期效果。

表2 焊接表面缺陷試驗檢測結果 個
為提高船舶焊接表面缺陷檢測系統的精確性和易用性,研究深度遷移學習下的船舶焊接缺陷目標檢測方法,運用采用DropBlock方法進行卷積核優化的MobileNet焊接分類模型和YOLO V3算法,初步實現船舶焊接表面缺陷的智能檢測,在試驗階段取得預期效果,為船舶焊接表面缺陷檢測在船廠實際應用落地探索一條可行路線。