陽茜汕,卓德兵
(吉首大學土木工程與建筑學院,湖南 張家界 427000)
鋼桁架結構因其受力體系簡單、結構輕盈、跨越能力強、綜合用鋼量省、施工方便等優點,近年來在工程建設領域中應用日益普遍。在鋼桁架結構桿件各類連接方式中,螺栓連接是最常見的方式之一。結構在使用過程中,由于受到溫度、濕度、荷載等一系列外界因素的影響,桿件連接螺栓不可以避免會發生松動甚至脫落。關鍵節點部位上的螺栓發生了松脫且尚未及時發現,將極有可能造成很大程度的安全損失甚至帶來災難性的后果。由此可見,對鋼桁架結構的螺栓病害進行及時檢測,不僅有利于保證結構的承載力,而且對結構的安全具有重大影響。傳統人工檢測螺栓的方法主要是通過人工攀爬和肉眼直接觀察的常規檢查方式[1-2]。這種螺栓檢查試驗方法安全風險高、工作量比較大、效率比較低下,工人們常常會因螺栓數量龐大產生動作疲勞及視覺疲勞,導致少部分螺栓緊固件出現錯檢、漏檢。基于此,開發一種新型高效的螺栓脫落連接損傷檢測技術迫在眉睫。
無人機系統通常定義的是一類具有可連續、重復使用功能的,機上裝備無人類飛行員、能夠完成自我控制驅動系統的小型航空器,其飛機可通過無人操作實施遙控自主飛行,或者本身具備有一定水平的高度自主巡航控制能力,以適應執行低空搜索、巡邏、交通安全監視、航拍、速遞等重要軍事或民用任務。無人機設備的主要系統由無人機、數據傳輸系統、任務荷載系統、地面站系統等構成。數據傳輸系統主要用于系統控制信號、檢查數據的傳輸。地面站系統則用于實時監控無人機飛行、檢查拍攝情況,從而及時糾正飛行軌跡和發現設備明顯病害。利用無人機進行結構健康檢測,突破傳統檢測方法自身的局限性,有效克服傳統方法效率低下、難度大、危險系數高等弊端,不僅節約人力物力,而且極大降低事故發生的概率,減少人員傷亡,使得基于無人機的結構健康監測方法擁有廣闊的應用前景[3-5]。但是在實際應用中,由于無人機在巡檢過程中所拍攝的圖像、視頻數量龐大,人工從這些海量數據中尋找有價值的信息并正確定位損傷仍然是一項艱巨的任務,近年來,隨著以深度學習為表征的人工智能目標檢測技術蓬勃發展,使得螺栓脫落智能檢測成為可能。目前使用比較普遍的深度學習目標檢測算法是以YOLO 為典型的基于回歸的一階段目標檢測算法。由于YOLO 只使用單個網絡,因此可以直接在檢測性能上進行端到端優化,使得基礎YOLO 模型相較于Faster R-CNN 及其改進方法在實例分割、目標檢測、人體關鍵點檢測等任務中能夠以更快的速度進行處理圖像。目前,YOLO 目標檢測方法已經廣泛應用于行人檢測、車輛識別、安全帽佩戴、電力巡檢、航拍圖像定位等不同環境中[6-8]。
本文以鋼桁架結構螺栓脫落目標檢測為背景,提出一種基于無人機與深度卷積神經網絡YOLOv5 目標檢測算法,該方法充分發揮了無人機拍攝技術在結構健康監測方面的優勢和YOLOv5 先進目標檢測算法優異的性能,以達到對螺栓脫落的智能檢測。
基于無人機圖像與YOLOv5 的鋼桁架螺栓缺失目標檢測模型的結構圖如圖1 所示。該方法可以分成模型訓練和模型測試兩個階段,模型訓練階段主要是通過使用無人機設備(或數碼相機)獲取足夠數量的螺栓連接完好及缺失工況圖像數據集,之后對圖像數據加以數據標注,進而通過設置模型參數,使用YOLOv5 完成訓練得到螺栓缺失目標檢測模型。而模型測試階段則是通過已經訓練好的目標檢測模型,對無人機拍攝所獲取的圖像或視頻進行測試得到最終測試結果。

圖1 基于無人機圖像與YOLOv5 的鋼桁架螺栓缺失目標檢測模型結構圖
借助深度學習目標檢測算法YOLO 檢測圖像需要準備一定數量的數據集。數據集的數量及質量直接關系到最終識別結果的好壞。本文螺栓脫落識別圖像主要采集自一室外鋼桁架模型[9],該六邊形鋼桁架實驗模型共計4 層,6 米高,一共24 個節點,每根桿一端通過兩個高強螺栓與節點板相連。
螺栓圖像數據通過大疆無人機Mini3pro 進行采集,該型號無人機的最大飛行高度為500m,可傾斜角度為25°—40°,精確懸停范圍為0.5—10m。無人機操作過程中,由于不同區域采光不同,需要隨時調整無人機傾斜角度、鏡頭焦距、快門速度等相關技術參數,防止采集的照片過曝。數據采集時首先采集各節點螺栓未脫落照片,然后利用人為松動取下不同部位、不同數量的螺栓,以構造不同的螺栓脫落工況,為了使得后期訓練總體保持樣本基本平衡,脫落工況應當盡可能地多。最后將采集得到的圖像按照螺栓未脫落和脫落進行分類,最終得到156 張未脫落、144 張脫落共計300 張圖像用于訓練。
采集得到螺栓圖像數據以后還需要對這些圖像加以標注,本文主要通過使用數據標注工具Labelimg 對被選定的數據集進行人工標注[10],進而作為目標檢測模型訓練和檢測的數據集。使用Labelimg 軟件進行圖像標注時,僅對圖片中所出現的脫落螺栓進行逐個圈框和貼標簽,標簽的名稱記為“damage”,未脫落螺栓不進行標注。標注完成后,自動生成的xml 文件里面已經保存了每張圖片的所有數據,包括標注的螺栓的寬度、高度等。數據集標注完成后,便進行數據集的劃分,因此本文將數據集劃分為訓練集和驗證集兩類,采取隨機劃分的方式,將訓練集和驗證集劃分比例設置為8:2。
模型訓練測試服務器采用Windows 10 64 位操作系統,處理器采用Intel(R) Core(TM)i9-10980XE CPU,顯卡為NVIDIA GeForce RTX 3090*2 48G GPU,編程環境為Python3.7。
在利用YOLOv5 目標檢測算法進行模型訓練時,YOLOv5 模型深度控制參數depth_multiple 設置為0.33,模型寬度控制參數width_multiple 設置為0.6,最終得到的模型卷積神經網絡深度共計270 層,模型寬度值為32,總參數量為7030417。另外在訓練環境中,還可以對模型的其它參數進行初始化設計,選擇優化函數為Adam 函數,初始學習率參數為0.001,動量參數為0.937,權值衰減系數為0.0005,1 個batch 包含的樣本數目為32,訓練輪數為500。
模型評估結果中主要使用的有以下四個比較常見的模型評估參數:損失值(loss)、精度(Precision)、召回率(Recall)以及加權平均精度mAP(mean Average Precision)進行網絡模型評估統計。從圖2 模型訓練結果評價指標圖中可以清楚看到:隨著訓練的次數持續地在增加,訓練集和驗證集的損失值均在不斷下降,而精度和平均精度在不斷上升,最后逐漸趨于穩定并接近于一條水平線。當訓練次數達到500次時,損失值接近0.01,精度指標maP@0.5 接近1.0,maP@0.5:0.95 接近0.6,由此可見模型整體性能表現優異,泛化能力好。

圖2 模型訓練結果各評價指標圖
模型測試階段主要是通過YOLOv5 已經訓練好的目標檢測模型對無人機所收集到的各種螺栓連接圖像進行檢測,以驗證其有效性和準確率。由圖3 檢測效果圖不難看出,圖像中所脫落的螺栓全部都可以被識別出來,而且通過比較每個框選區域的置信度,可以看到一共出現了三種置信度,大多數高達90%,最高有100%,即完全被識別出,最低的也達到了80%,其中,置信度低的區域主要是由于被檢測目標相對整張圖像較小或者目標位于圖像較暗位置處,導致識別準確率相對較低。但整體而言,該方法建立的檢測模型在目標完整、清晰的情況下準確率更好,診斷效果也更佳。

圖3 檢測效果圖
本文提出了一種基于無人機與深度學習目標檢測算法YOLOv5 的鋼桁架結構螺栓脫落智能檢測的技術,該方法能夠實現對螺栓脫落進行精確識別,具有較高的工程應用價值。主要得到以下結論:
(1)將無人機技術與深度學習目標檢測算法YOLOv5 模型進行結合,在速度和效率上有效地克服了傳統螺栓脫落檢測方法的不足。
(2)深度卷積神經網絡模型訓練及檢測結果顯示,該算法能達到高效準確地識別鋼桁架結構中的螺栓是否脫落的目的。
(3)本文對于未來實現螺栓的自動化缺陷測試有著很重要的學術意義與巨大的開發空間。