范玉瑩,何赟澤,孫高森,王洪金,劉 昊,李 杰
(1. 湖南大學(xué),湖南 長沙 410082; 2. 中南勘測設(shè)計研究院有限公司,湖南 長沙 410014)
在風(fēng)力發(fā)電機(jī)運(yùn)行期間,風(fēng)機(jī)葉片可能會遭受結(jié)構(gòu)損壞,表面或內(nèi)部出現(xiàn)損傷。為了獲取最大的運(yùn)營效率,應(yīng)定期對風(fēng)機(jī)葉片進(jìn)行巡檢。長時間高空作業(yè)的停機(jī)檢查會帶來昂貴的成本[1-2]。使用無人機(jī)對風(fēng)機(jī)葉片進(jìn)行自主巡檢可以降低風(fēng)電場運(yùn)營商的成本和成本不確定性;輪轂是風(fēng)力發(fā)電機(jī)的中心部位,也是自主巡檢的重要參考點(diǎn)。風(fēng)力發(fā)電機(jī)輪轂中心的高精度定位與快速跟蹤從是實現(xiàn)無人機(jī)達(dá)后續(xù)飛行控制的重要前提。目前國內(nèi)外文獻(xiàn)中提到的技術(shù)多使用直線特征定位風(fēng)機(jī)對象,通過提取的直線輪廓特征定位塔架、葉片,輪轂等風(fēng)機(jī)組件,根據(jù)圖像中風(fēng)機(jī)組件與無人機(jī)的相對位置關(guān)系實時調(diào)整無人機(jī)運(yùn)動狀態(tài)。2015年,Martin Stokkeland等人提出無人機(jī)巡檢的第一個步驟,在無人機(jī)與風(fēng)機(jī)對齊過程中采用直線檢測方法確定輪轂中心并設(shè)計控制策略導(dǎo)航無人機(jī)至風(fēng)機(jī)前方固定位置,算法可以在無人機(jī)的單板計算機(jī)上實時執(zhí)行[3]。2019年,Yizhuo Rao等人總結(jié)了現(xiàn)有的葉片檢測方法,包括望遠(yuǎn)鏡檢測,繩索塔吊檢測以及無人機(jī)檢測,但仍舊使用直線作為風(fēng)機(jī)的識別特征,計算輪轂位置[4]。2020年,Marko Car等人利用激光雷達(dá)進(jìn)行預(yù)飛行掃描風(fēng)機(jī),構(gòu)建風(fēng)力渦輪機(jī)結(jié)構(gòu)的3D模型,以推算風(fēng)機(jī)輪轂及葉片平面位置[5]。
盡管現(xiàn)有文獻(xiàn)多數(shù)提到利用直線檢測提取風(fēng)機(jī)特征,但該方法對運(yùn)行環(huán)境的條件要求嚴(yán)苛,單一的直線檢測會受地理環(huán)境,天氣,圖像視角等的影響。因而本文提出利用改進(jìn)YOLO目標(biāo)檢測算法以及卡爾曼濾波的非直線輪轂中心定位與跟蹤方法,使后續(xù)自主巡檢過程更加穩(wěn)定可靠。深度學(xué)習(xí)是近年來流行的一種多層結(jié)構(gòu)神經(jīng)網(wǎng)絡(luò),非線性的網(wǎng)絡(luò)結(jié)構(gòu)提高了復(fù)雜分類問題的泛化能力??梢赃_(dá)到更高的處理效率和準(zhǔn)確率以用于目標(biāo)檢測[6]。2013年,Girshick等人率先提出R-CNN目標(biāo)檢測方法。隨后在目標(biāo)檢測領(lǐng)域陸續(xù)出現(xiàn)了SPP-net、Fast RCNIN、Faster R-CNIN、R-FCN、YOLO、SSD等算法[7-10]。其中,YOLO系列深度卷積網(wǎng)絡(luò)以其強(qiáng)大的特征提取能力成為目標(biāo)檢測領(lǐng)域的研究熱點(diǎn)。單一的圖像檢測提取目標(biāo)位置信息會造成檢測結(jié)果的不穩(wěn)定,給后續(xù)無人機(jī)位置調(diào)整帶來突變導(dǎo)致抖動或失去檢測目標(biāo),經(jīng)典卡爾曼濾波以極低的參數(shù)量和計算時間成本對檢測目標(biāo)定位進(jìn)行校正,改進(jìn)YOLO目標(biāo)檢測算法與卡爾曼濾波的結(jié)合使定位有更高的精度,適用于無人機(jī)機(jī)載實時計算設(shè)備[11]。
輪轂作為風(fēng)機(jī)組件具有可以明顯區(qū)分的特征,對風(fēng)機(jī)輪轂中心的高精度、高穩(wěn)定度定位與跟蹤確定巡檢初始位置是自主巡檢的關(guān)鍵一步。本文設(shè)計了融合CBAM注意力機(jī)制的改進(jìn)YOLO目標(biāo)檢測方法;建立了無人機(jī)相機(jī)運(yùn)動模型,應(yīng)用卡爾曼濾波器實現(xiàn)對檢測目標(biāo)的穩(wěn)定跟蹤;并基于改進(jìn)YOLOv5和卡爾曼濾波器提出了一種非直線的風(fēng)機(jī)輪轂中心定位與跟蹤方法,相對現(xiàn)有的直線特征定位輪轂中心方法,大大提高了定位精度,為實現(xiàn)高精度無人機(jī)自主巡檢提供了新的輪轂定位跟蹤思路,并具有實際工程應(yīng)用價值。
通常情況下風(fēng)力發(fā)電機(jī)尺寸過大,實際工業(yè)應(yīng)用中難以獲取全尺寸的風(fēng)機(jī)圖像。輪轂為風(fēng)力發(fā)電機(jī)中心部件,通過輪轂可以確定與之對應(yīng)的風(fēng)機(jī)對象。本文選擇風(fēng)機(jī)輪轂作為無人機(jī)跟蹤目標(biāo),在無人機(jī)上升過程中對輪轂中心進(jìn)行檢測跟蹤,以便后續(xù)根據(jù)目標(biāo)在獲取圖像中的位置推算目標(biāo)與無人機(jī)間的相對位置關(guān)系進(jìn)而發(fā)布無人機(jī)控制指令。
首先對圖像進(jìn)行預(yù)處理,邊緣檢測算法提取輪廓,霍夫直線檢測對圖像直線進(jìn)行提取。根據(jù)三個葉片之間夾角為120°設(shè)計投票算法初步排除非葉片直線,計算葉片直線的兩兩交點(diǎn),圖1 (a)表示投票算法提取的葉片直線??紤]正Y及倒Y型風(fēng)機(jī)狀態(tài),交點(diǎn)計算必須將垂線考慮在內(nèi),因此塔筒垂線會對葉片直線提取產(chǎn)生影響。設(shè)置誤差范圍為±20°,計算夾角度數(shù),記錄在誤差范圍內(nèi)的直線交點(diǎn)。根據(jù)所計算的直線交點(diǎn),加入塔筒特征約束,排除距離塔筒垂線過遠(yuǎn)交點(diǎn)(根據(jù)圖像大小設(shè)置閾值),計算篩選后所有交點(diǎn)的平均值,作為計算的輪轂中心位置,如圖1 (b)所示。
圖1 直線檢測方法提取輪轂中心
2020 年 6 月,主流目標(biāo)檢測算法YOLOv5發(fā)布,YOLOv5的表現(xiàn)要優(yōu)于谷歌開源的目標(biāo)檢測框架 EfficientDet,開發(fā)者表明 YOLOv5 能在 Tesla P100 上實現(xiàn) 140 F/s 的快速檢測。YOLOv5具有輕量級檢測模型大小,處理速度高,準(zhǔn)確率高,因此選用YOLOv5作為風(fēng)機(jī)輪轂?zāi)繕?biāo)檢測方法。由以上風(fēng)機(jī)輪轂特征分析可知,輪轂獨(dú)特的夾角特征和中心區(qū)域類圓特征可以通過神經(jīng)網(wǎng)絡(luò)方法提取。且由于特征明顯,可使用小型網(wǎng)絡(luò)進(jìn)行處理。在最新的6.0版本的 YOLOv5中棄用了 Focus模塊,在Backbone模塊對CSP層與SPP層進(jìn)行了交換。Input模塊包含自適應(yīng)錨框和Mosaic數(shù)據(jù)增強(qiáng),支持圖片的隨機(jī)縮放、隨機(jī)裁剪、隨機(jī)排布。Backbone模塊中包含CSP(Cross Stage Partial Network)結(jié)構(gòu),增強(qiáng)CNN的學(xué)習(xí)能力的同時保持輕量化和準(zhǔn)確性。Neck模塊包含 FPN(Feature Pyramid Networks)和PAN(Pixel Aggregation Network)結(jié)構(gòu),F(xiàn)PN層自頂向下傳達(dá)強(qiáng)語義特征,而特征金字塔則自底向上傳達(dá)強(qiáng)定位特征。Prediction模塊采用GIOU-Loss損失函數(shù),同時關(guān)注重疊區(qū)域和非重疊區(qū)域,可以綜合反映目標(biāo)框的重合度。
CBAM(convolutional block attention module)是于2018年首次提出的結(jié)合通道域和空間域計算注意力圖的卷積注意力模塊,在通道維度對通道中的多特征進(jìn)行加權(quán),空間注意力模塊利用特征的空間關(guān)系生成空間注意力圖,是通道注意力的補(bǔ)充[12]。兩個模塊順序排列,均采用最大池化和平均池化產(chǎn)生輸出,極大提高了網(wǎng)絡(luò)提取關(guān)鍵信息的表達(dá)能力,如圖2所示。同時CBAM能夠以微小開銷集成至卷積神經(jīng)網(wǎng)絡(luò)中。
圖2 CBAM結(jié)構(gòu)
通道注意力計算過程如下:
本文設(shè)計適應(yīng)于YOLOv5主干網(wǎng)絡(luò)的CBAM模塊,根據(jù)CBAM特征提取特性,在網(wǎng)絡(luò)嵌入選擇上有兩種方法。其一,修改卷積層,以CBAM模塊替換。其二,選擇卷積層之間合適位置,嵌入CBAM模塊。經(jīng)實驗,增加模塊方法的mAP精度高于替換方法。因此,本文在選擇加入至主干網(wǎng)絡(luò)Backbone上層,一方面在上層獲取目標(biāo)關(guān)鍵信息,以最大程度上獲取有效通道,保留高注意力通道,棄用低注意力成分,另一方面由于忽略低注意力成分,達(dá)到一定的軟剪枝效果,提高了網(wǎng)絡(luò)的推理速率,并在實驗中得到了證明。改進(jìn)后的YOLOv5 Backbone模塊結(jié)構(gòu)組成如圖3所示。
圖3 改進(jìn)后的Backbone模塊
對于CBAM模塊,為與原網(wǎng)絡(luò)結(jié)構(gòu)對應(yīng),將接口設(shè)計為原始標(biāo)準(zhǔn)卷積層接口,并在其中嵌入通道和空間注意力機(jī)制,其中,卷積層卷積核個數(shù)設(shè)置為64,大小設(shè)置為3,步長為2??臻g注意力涉及通道軸方向卷積,卷積核大小設(shè)置為7。CBAM模塊結(jié)構(gòu)如圖4所示。
圖4 CBAM模塊組成
在定位輪轂中心的檢測過程中,由于輪轂檢測完全依賴于特征提取,當(dāng)出現(xiàn)檢測偏差時可能導(dǎo)致對輪轂的跟蹤出現(xiàn)突變[11];如當(dāng)無人機(jī)上升過程中相機(jī)視角范圍內(nèi)的背景出現(xiàn)其他特征明顯的風(fēng)機(jī)。為了解決這一現(xiàn)象,引入卡爾曼濾波器,結(jié)合云臺相機(jī)運(yùn)動的物理規(guī)律對檢測結(jié)果進(jìn)行跟蹤。
特征跟蹤要求跟蹤特征在一系列圖像中隨時間移動或演變,因而需要圖像幀之間更新有關(guān)其位置的狀態(tài)信息。將無人機(jī)運(yùn)行至輪轂中心正對等高的過程建模為二維平面的勻速運(yùn)動,使用卡爾曼濾波跟蹤圖像幀中輪轂中心的位置從而實現(xiàn)幀間的狀態(tài)信息更新??柭鼮V波包括預(yù)測和更新兩個操作,預(yù)測使用歷史信息產(chǎn)生當(dāng)前狀態(tài)變量及其不確定性的估計。對于風(fēng)機(jī)輪轂的跟蹤,觀測值為輪轂檢測位置,卡爾曼濾波結(jié)果為校正值??紤]風(fēng)機(jī)輪轂的跟蹤為線性系統(tǒng),建立狀態(tài)方程,預(yù)測過程如下:
考慮運(yùn)行條件及算力,采用的硬件設(shè)備及軟件平臺如表1所示。
表1 軟硬件平臺
實際風(fēng)電場實驗中利用無人機(jī)采集風(fēng)機(jī)輪轂正面及側(cè)面數(shù)據(jù),對風(fēng)機(jī)輪轂進(jìn)行標(biāo)注,建立風(fēng)力發(fā)電機(jī)輪轂數(shù)據(jù)集,然后利用本文的改進(jìn)YOLOv5_CBAM算法自動提取輪轂特征。數(shù)據(jù)集大小為590張風(fēng)機(jī)正面圖像,訓(xùn)練集大小為590,測試集大小為118,訓(xùn)練及驗證比例為9∶1,數(shù)據(jù)集標(biāo)注示例如圖5所示。
圖5 數(shù)據(jù)集標(biāo)注示例
進(jìn)行網(wǎng)絡(luò)訓(xùn)練時根據(jù)已有數(shù)據(jù)集運(yùn)行總結(jié)出了較好的數(shù)值,本數(shù)據(jù)集的超參數(shù)設(shè)置如表2所示。
表2 網(wǎng)絡(luò)訓(xùn)練超參數(shù)設(shè)置
模型精度評估指標(biāo)選用mAP(mean Average Precision),精確率(Percision)表示被預(yù)測為正樣本中預(yù)測正確的比率,召回率(Recall)表示正樣本中被預(yù)測正確的比例。設(shè)TP真正類,F(xiàn)P假正類,F(xiàn)N假負(fù)類,精確率與召回率可由式(8)計算[13-14]。
CBAM模塊的前16個特征圖的可視化效果如圖6所示。
圖6 CBAM可視化特征圖
選擇原始YOLOv5進(jìn)行訓(xùn)練并與改進(jìn)方法結(jié)果進(jìn)行比對,結(jié)果如圖7所示。其中,mAP_0.5:0.95表示當(dāng)置信度閾值以0.05的步長從0.5~0.95之間變化時,mAP在置信度上的平均精度。
圖7 網(wǎng)絡(luò)訓(xùn)練平均精度變化
當(dāng)置信度閾值為0.5時兩者訓(xùn)練收斂速度與精度相似,mAP達(dá)到99.5%。對mAP_0.5:0.95時的訓(xùn)練結(jié)果進(jìn)行比對,YOLOv5的收斂速度相對較快,改進(jìn)YOLOv5_CBAM方案的收斂速度雖然略低于YOLOv5,但最終在驗證集上表現(xiàn)出85.9%的精度,高于YOLOv5 1.2%,在測試集上表現(xiàn)出的80.4%精度,高于YOLOv5 0.7%。
由于模塊加入導(dǎo)致網(wǎng)絡(luò)結(jié)構(gòu)發(fā)生變化,使得YOLOv5預(yù)訓(xùn)練模型失效,改進(jìn)網(wǎng)絡(luò)的訓(xùn)練過程未采用預(yù)訓(xùn)練模型,實驗發(fā)現(xiàn)當(dāng)使用原數(shù)據(jù)隨機(jī)劃分訓(xùn)練集,進(jìn)行40epoch的訓(xùn)練模型作為預(yù)訓(xùn)練模型輸入后,驗證集精度達(dá)到85.3%,測試集精度達(dá)到83.7%,相對原始YOLOv5算法平均mAP提升了4.0%。
此外,由表3可得,YOLOv5_CBAM的推理速度相對于YOLOv5提高了115%,圖片處理的全耗時減小至原來的59.5%,處理速度達(dá)212.7 F/s,大大提高了圖片的處理速度,滿足無人機(jī)機(jī)載設(shè)備實時計算的要求。
表3 檢測方案性能對比
實際應(yīng)用過程中,數(shù)據(jù)采集環(huán)境為山區(qū)風(fēng)力發(fā)電場,實驗設(shè)備及風(fēng)場環(huán)境如圖8所示。其中,無人機(jī)使用大疆經(jīng)緯 Matrice 300 RTK行業(yè)應(yīng)用級四旋翼無人機(jī),配置禪思 Zenmuse H20T云臺相機(jī),禪思H20T可見光相機(jī)視頻分辨率1 920×1 080,幀率30 F/s。采集過程采用飛手遙控飛行方式定焦拍攝無人機(jī)沿塔筒至輪轂整個上升過程的視頻,并對視頻數(shù)據(jù)進(jìn)行抽幀進(jìn)行數(shù)據(jù)集制作。
圖8 無人機(jī)相機(jī)設(shè)備及風(fēng)場環(huán)境
網(wǎng)絡(luò)檢測時將圖像尺寸同比縮小至480×270,模型從第一幀開始檢測到輪轂。圖9為隨機(jī)挑選得到檢測結(jié)果的幀序號得到的檢測和濾波結(jié)果;圖中第一行為檢測結(jié)果,第二行為跟蹤結(jié)果。
圖9 改進(jìn)方案的檢測及濾波結(jié)果
由于無人機(jī)上升過程中保持水平居中,對視頻幀中風(fēng)力發(fā)電機(jī)輪轂中心檢測值的縱坐標(biāo)和濾波跟蹤結(jié)果的縱坐標(biāo)予以展示。將本文的改進(jìn)檢測方法和跟蹤結(jié)果與現(xiàn)有直線檢測與跟蹤結(jié)果進(jìn)行對比,可以看到采用本文方法后,輪轂檢測率達(dá)到100%,檢測精度得到了極大提升,卡爾曼濾波在檢測數(shù)據(jù)抖動強(qiáng)烈時展現(xiàn)了良好的跟蹤效果,如圖10、圖11所示。
圖10 直線檢測方案實驗結(jié)果
圖11 YOLOv5_CBAM改進(jìn)檢測方案實驗結(jié)果
本文設(shè)計的輪轂中心定位與跟蹤方案的性能如表4所示,均方誤差為2.10像素,推理速度為212.7 F/s,相較直線方案而言,定位精度和推理速度得到大幅提升。
表4 檢測方案性能對比
本文選取風(fēng)機(jī)輪轂作為無人機(jī)自主巡檢過程中用于定位的特征組件,基于改進(jìn)YOLOv5方法設(shè)計了風(fēng)力發(fā)電機(jī)輪轂檢測方案,將通道和空間卷積注意力融入目標(biāo)檢測算法,并應(yīng)用卡爾曼濾波算法,將主流卷積神經(jīng)網(wǎng)絡(luò)與經(jīng)典濾波器算法結(jié)合,得到穩(wěn)定高效的特征定位與跟蹤。實驗證明,相比于傳統(tǒng)直線檢測算法而言,雖然對計算性能和程序內(nèi)存要求更高,但對于現(xiàn)代具有高計算效率和大內(nèi)存的物理計算機(jī)而言并沒有壓力,均方誤差大幅度下降說明本文方法大大提高了輪轂檢測精度和速率。相對于原始YOLOv5方法,改進(jìn)的YOLOv5_CBAM在檢測精度和速度上都表現(xiàn)出更加優(yōu)異的性能,使用預(yù)訓(xùn)練策略將檢測精度提至高于原方法4.0%。尤其檢測速率提高115%,大大提升檢測速度,適用于高即時性要求的場景。結(jié)合卡爾曼濾波器的設(shè)計高效地對運(yùn)行位置進(jìn)行校正,使得運(yùn)行軌跡的跟蹤平穩(wěn)而連續(xù),以便后續(xù)對無人機(jī)發(fā)布控制指令。本方案算法對圖像質(zhì)量要求低,不易受外部情況干擾,檢測速度快,泛化性好,適用性高,在風(fēng)力發(fā)電機(jī)輪轂上表現(xiàn)了良好的檢測跟蹤性能。本文提出的方案優(yōu)于風(fēng)電領(lǐng)域現(xiàn)有的基于直線特征的輪轂提取方案,滿足實時系統(tǒng)的精度和速度要求,具有實際工程應(yīng)用價值。