?

基于改進YOLOX算法的給水管道內缺陷智能識別與定位

2024-01-15 00:44蘇常旺胡少偉張海豐潘福渠單常喜
測繪通報 2023年12期
關鍵詞:給水管注意力損失

蘇常旺,胡少偉,張海豐,潘福渠,單常喜

(1. 重慶大學土木工程學院,重慶 400045; 2. 鄭州大學水利與土木工程學院,河南 鄭州 450001;3. 山東龍泉管道工程股份有限公司,江蘇 常州 277599; 4. 山東東信塑膠科技有限公司,山東 聊城 252000)

給水地下管道作為城市基礎設施建設的重要內容之一,其安全運行直接影響著百姓民生。然而,近年來,給水管道因為自然災害或人為因素導致的如漏損、堵塞乃至地面塌陷等各類事故層出不窮,后續需要大量管道修復或替換工作,造成國家嚴重經濟損失,同時還存在潛在的環境影響[1]。因此,對給水管道進行實時高效的內部病害檢測是十分必要的。

針對給排水管道內檢測技術,國內外采用較多也最先進的是CCTV技術,即內窺式管道機器人檢測技術[2]。在此基礎上,國內對傳統的管道機器人進行了不斷的更新改造工作,研發了更多適用于有水環境下的新型管道機器人。然而,不論是傳統的CCTV技術,還是各類新型管道機器人,通常均采用人工對管道內部圖像進行判讀的方式,費時費力,且容易產生主觀誤判?;诖?國內外學者針對給排水管道內缺陷對自動化檢測展開了深入研究,且主要集中于排水管道,對于給水管道缺陷識別研究很少。早期一般采用圖像用技分割及特征提取處理技術[3],如今,隨著計算機視覺領域的快速發展,其中最火熱的卷積神經網絡(CNN)[4]成為學者進行管道缺陷智能分類的常用技術。而對于管道內缺陷檢測定位,通常采用R-CNN或Fast R-CNN等技術[5-8]。但這些算法雖然識別精度較高,但操作復雜,識別速度不夠快[9],難以滿足實時檢測的需求。因此,本文基于新型管道機器人在給水管道工程中的檢測視頻,采用識別速度更快、精度較高的YOLOX[10]算法模型展開研究,提出一種更加高效精準的分類與定位方法,為給水管道內部缺陷識別定位提供技術支撐。

1 YOLOX算法簡介及其改進

1.1 目標檢測算法發展及YOLOX算法簡介

在計算機視覺領域,早期的研究通常集中在圖像分類上,卷積神經網絡(CNN)就是其中的佼佼者。自2012年,圖像目標檢測成為學者們的研究重點[11],如圖1所示。而YOLO算法[12]作為用于目標檢測的神經網絡算法之一,其特點在于處理速度快。以前的方法,如R-CNN及其變種,屬于Two-Stage類算法,即需要分步完成圖像識別與定位,雖然精度很高但必須設計多個神經網絡來執行任務,通常運行緩慢,也很難優化,因為每個單獨的組件都必須單獨訓練。而YOLO算法只需要設計一個神經網絡,訓練簡單。

圖1 目標檢測算法發展歷程

YOLOX算法作為YOLO算法的新變種,其擺脫了先驗框約束(即anchor free,傳統YOLO算法會采用K-means聚類等方法確定幾種固定尺寸的先驗框,利用這些先驗框作預測,其缺點在于泛化能力差,計算量較大);同時創新性地以解耦預測頭(decoupled head)代替傳統的預測頭(coupled head),其原因在于目標檢測時往往會包含分類(classification)與回歸(regression)兩類損失(loss)的計算,兩者如果放在一起進行運算,可能會產生沖突從而影響預測精度,因此在YOLOX中又將兩者分開,解耦頭示意如圖2所示。YOLOX主體網絡結構可分為4個部分:①輸入端;②網絡骨架(Backbone),此部分與傳統的YOLOV3[13]算法結構基本相同;③頸端(Neck)部分,主要用于圖像特征融合,采用FPN[14](特征金字塔)策略,形成3種不同尺寸的特征圖像,其目的在于可同時滿足預測大中小目標的要求;④預測端(Prediction),主要包含解耦頭結構及最后的預測部分?;诠艿廊毕葑R別建立的YOLOX主體結構如圖3所示。

圖2 YOLOX解耦頭

圖3 基于增加注意力機制的管道缺陷識別的YOLOX網絡框架

1.2 基于增加注意力機制后的改進YOLOX算法

1.2.1 注意力機制的基本原理

注意力機制[15](attention mechanism)源自自然語言處理(NLP)中的Transformer模型。其原理類似于人類眼睛關注事物的機理,當人們集中注意力時,往往可以抓住事物整體中最重要的部分。延伸至深度學習領域,可以理解為一種通過掃描全局、調整關鍵參數,獲取重點領域信息的方法。通過引入注意力機制,可有效解決深度學習模型因參數量過多、信息量大而無法重點關注模型訓練關鍵點的問題。隨著研究的深入,其應用已不僅僅局限于NLP領域,在其他深度學習領域也開始逐漸得到應用,并取得了不錯的效果。注意力函數的基本計算公式具體如下

(1)

1.2.2 在YOLOX算法中引入注意力機制

注意力機制為一個即插即用的網絡模塊,理論上可以放在網絡結構的任意部分,本文為了避免改變網絡主干部分(Backbone)而導致結果變化過大的問題,選擇提高特征加強提取部分的效率,因而考慮在頸端(Neck)部分加入通道混合注意力機制(CABM),即在上下采樣操作環節加入該網絡模塊,具體網絡結構如圖3所示。

2 YOLOX算法簡介及其改進

2.1 平臺搭建與數據集構建

本文采用的深度學習框架為Pytorch 1.8.0,CPU為AMD R7 4800 h,GPU配置為NVIDIA GeForce GTX 3060,數據集源自適用于水下環境的管道機器人采集的實際工程視頻,對視頻中的圖像進行抽幀,提取圖像并利用幾何變換、顏色變換、Mosaic、Mixup技術擴增使數據集數量達到7940張。其中,Mosaic增強技術原理在于選取4張圖片進行隨機裁剪與拼接,從而獲得一張新的圖像;而Mixup增強技術原理是將兩種不同類圖像進行混合雜糅所形成的一張整體圖像。兩種技術的展示效果如圖4所示。

圖4 兩種數據增強技術在本數據集中的應用

根據工程專家鑒定情況,將缺陷劃分為6類:泄漏點、泥沙堆積、石塊堆積、氣囊、其他雜物、正常管道,如圖5所示。訓練集、驗證集與測試集比例均為8∶1∶1,具體數據集劃分見表1。為了進一步提高訓練質量,本文還采用了遷移學習策略,即利用類似數據集對網絡結構進行預訓練后再用新的數據集進行正式訓練。

表1 數據集劃分

圖5 管道缺陷樣本展示

2.2 模型訓練與預測

在完成平臺搭建、整理并得到給水管道內缺陷數據集,以及完成預訓練工作后,正式開始模型訓練,訓練次數根據計算平臺實際情況確定為300次,共包含15 000次迭代。模型具體訓練流程如下:

(1)輸入端輸入標注好的訓練集,經過骨架層,對圖像進行一系列卷積、歸一化、激活、合并(concat)操作,得到不同大小尺寸的圖像。

(2)選取3種尺寸的圖像(分別為80×80、40×40、20×20),進入頸端,主要對3種圖片進行特征融合,采取策略為FPN(特征金字塔),主要包括卷積、歸一化、激活、合并、上采樣、下采樣操作,從而進一步得到用于3種滿足大、中、小目標檢測的特征圖像。

(3)對3種特征圖像利用解耦頭進行解耦,以便于進行分類與回歸的損失(loss)函數計算。其中,YOLOX模型的損失函數主要由3部分組成,公式為

(2)

式中,Lcls為分類損失;Lreg為定位損失;Lobj為置信度損失;λ為定位損失的平衡系數,默認設置為5.0;Npos為被分為正樣的錨點數。

對于Lcls和Lobj,采用的都是二值交叉熵損失函數(BCELoss),具體計算公式為

(x,y)=L={l1,l2,…,lN}·

(3)

ln=-wn[yn·logxn+(1-yn)·log(1-xn)]

(4)

式中,ln為預測該樣本第n個類別的損失;wn為該樣本對應第n個類別的權重參數;yn為對應第n個真實類別的值,一般為0或1;xn為對應第n個類別的預測值。

對于Lreg采用的是IoULoss,即預測框與真實框的重合面積與總和面積的比值,公式為

(5)

式中,A為預測框的面積;B為真實框的面積。在完成損失訓練后,得到最小損失下的網絡權重,將初始權重修改為最小損失下的權重,即可進行預測。

3 預測結果與對比分析

完成訓練后,對訓練結果進行處理并展開預測。在整個訓練過程中,損失函數隨訓練次數增加而穩定下降。當驗證損失值不再下降時,即可判斷為收斂,其訓練與驗證損失值分別由最開始的9.13、7.71最終下降到2.67、2.83,具體如圖6所示。

圖6 訓練及驗證損失下降

部分測試集預測結果如圖7所示,圖片中標注部分主要由缺陷類別和預測置信度組成。結果表明,該模型預測整體效果良好,整體平均識別精度為94%,其中,預測準確度最高的為石塊堆積缺陷,達到了98%,最低的泄漏點缺陷預測準確度也達到了89%,具體如圖8所示。產生精度差異的原因主要由兩部分組成: ①石塊堆積缺陷圖像整體更加清晰,噪點少; ②石塊堆積圖像數據集數量更多,對于模型訓練而言,往往數據集越多,訓練后達到的效果也越好。

圖7 數據集預測結果效果

圖8 管道內缺陷預測精度矩陣

為進一步驗證改進的YOLOX算法的優越性,將此數據集分別利用傳統卷積神經網絡(Fast R-CNN)算法及YOLOv3算法進行訓練預測并作對比,其對比評價指標主要包括平均精度(AP)與識別速度。其中,AP為召回率與準確率曲線所包含的下方面積,而均值平均精度(mAP)為所有類別的AP和除以類別數C,具體見表2??芍? YOLOX無論是mAP還是平均識別速度均超過YOLOV3,而Fast R-CNN雖然mAP略高于YOLOX模型,但平均識別速度遠不如YOLOX,因此,綜合來看,YOLOX在3種算法識別模型中表現最好。

表2 3種算法模型的mAP值與識別速度對比

4 結 語

本文基于實際工程中的給水管道內檢測視頻,通過增加注意力機制,建立了基于改進YOLOX算法的給水管道內缺陷智能識別與定位模型,達到快速識別定位管道缺陷的效果。結果表明,改進YOLOX算法模型相較于傳統的目標檢測模型,具有較高的精度和更快的識別速度,其mAP達到了0.84,平均識別速度相較于前代YOLOv3模型及Fast R-CNN模型分別提升了31%和138%,綜合性能超過了其他兩種對比的目標檢測模型。同時,該算法模型適用于視頻實時檢測,可以進一步應用到實際工程中,從而達到替代人工檢測,高效、精確地識別定位管道內缺陷的目的。

盡管如此,本文建立的算法模型還有進一步發展空間: ①數據集的質量與數量有待提升,以進一步提升模型的訓練效果和泛化能力; ②進一步優化相關訓練參數,如學習率、權重值等,以提高訓練效率。

猜你喜歡
給水管注意力損失
讓注意力“飛”回來
胖胖損失了多少元
◆ 塑料管
玉米抽穗前倒伏怎么辦?怎么減少損失?
“揚眼”APP:讓注意力“變現”
A Beautiful Way Of Looking At Things
美國PVC給水管材的質量控制
PPR管在給水管道施工中的應用
一般自由碰撞的最大動能損失
損失
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合