余長(zhǎng)生 秦倫明 王悉 陳鵬
摘? 要:為解決大型工程機(jī)械不規(guī)范施工導(dǎo)致輸電線路出現(xiàn)故障的問題,提出一種改進(jìn)YOLOv4的大型工程機(jī)械設(shè)備檢測(cè)方法。當(dāng)前YOLOv4算法存在識(shí)別準(zhǔn)確率低、漏檢率高的缺點(diǎn),文章借鑒熱重啟機(jī)制思想,設(shè)置學(xué)習(xí)率按余弦函數(shù)周期性衰減來減小loss值,提高識(shí)別準(zhǔn)確率。引入標(biāo)簽平滑對(duì)正負(fù)樣本的標(biāo)簽值進(jìn)行微調(diào)整,避免網(wǎng)絡(luò)過擬合,降低漏檢率。實(shí)驗(yàn)結(jié)果表明,改進(jìn)后的WRLS-YOLOv4算法識(shí)別大型工程機(jī)械較Faster-RCNN、SSD、YOLOv3、YOLOv4效果更好,能夠?yàn)檩旊娋€路進(jìn)行工程機(jī)械監(jiān)測(cè)提供參考依據(jù)。
關(guān)鍵詞:輸電線路;目標(biāo)檢測(cè);深度學(xué)習(xí);YOLOv4
中圖分類號(hào):TP391? ? ? ? ?文獻(xiàn)標(biāo)識(shí)碼: A文章編號(hào):2096-4706(2021)23-0159-04
Detection of Large Construction Machinery Based on WRLS-YOLOv4
YU Changsheng1, QIN Lunming1, WANG Xi2, CHEN Peng1
(1.College of Electronics and Information Engineering, Shanghai University of Electric Power, Shanghai? 200090, China; 2.School of Electronic and Information Engineering, Beijing Jiaotong University, Beijing? 100044, China)
Abstract: In order to solve the problem of transmission line failure caused by non-standard construction of large construction machinery, a detection method for large construction machinery and equipment based on improved YOLOv4 is proposed. The current YOLOv4 algorithm has the disadvantages of low recognition accuracy and high missed detection rate. This paper draws on the idea of hot restart mechanism and set the learning rate to decrease the loss value by periodically decaying the cosine function, improve the recognition accuracy. The label smoothing is introduced to fine-tune the label values of positive and negative samples to avoid network overfitting and reduce the missed detection rate. The experimental results show that the improved WRLS-YOLOv4 algorithm recognizes large construction machinery better than Faster-RCNN, SSD, YOLOv3 and YOLOv4, and can provide a reference basis for construction machinery monitoring on transmission lines
Keywords: transmission line; object detection; deep learning; YOLOv4
0? 引? 言
輸電線路作為電力網(wǎng)絡(luò)中的一環(huán),承擔(dān)著傳輸電能的角色,其安全穩(wěn)定的運(yùn)行是電力系統(tǒng)的重要保障。據(jù)統(tǒng)計(jì),在外力破壞造成的輸電線路跳閘事故中,有超過70%是由于大型施工機(jī)械特別是塔吊,挖掘機(jī),吊車等在施工過程中碰線而引起的[1]。因此,對(duì)輸電線路周圍環(huán)境進(jìn)行大型工程機(jī)械監(jiān)測(cè)是十分有必要的。
目前,在大型施工機(jī)械檢測(cè)的研究上,存在識(shí)別準(zhǔn)確率低,漏檢率高的情況。為解決上述問題,本文提出一種WRLS-YOLOv4(Warm Restart & Label Smoothing-YOLOv4)的大型施工機(jī)械檢測(cè)算法。最后以5種典型的工程機(jī)械為例,構(gòu)建圖像數(shù)據(jù)集,通過多組實(shí)驗(yàn)對(duì)模型進(jìn)行訓(xùn)練、驗(yàn)證以及測(cè)試,結(jié)果表明,本文算法較原YOLOv4算法mAP提高了5.43%,平均漏檢率降低了0.11。
1? 算法原理
1.1? YOLOv4算法原理
YOLOv4算法在YOLOv3的基礎(chǔ)上,使用了多種優(yōu)化策略,在精度和檢測(cè)速度上均有較大的提升。YOLOv4采用了CSPDarknet53代替YOLOv3的Darknet53作為主干特征提取網(wǎng)絡(luò),該網(wǎng)絡(luò)的卷積模塊使用Mish激活函數(shù),其表達(dá)式為:
Mish=x×tan[ln(1+ex)]? ? (1)
為了解決圖像由于裁剪和拉伸而失真的問題,YOLOv4還引入了SPP結(jié)構(gòu)和PANet結(jié)構(gòu)。
1.2? 熱重啟機(jī)制
Loshchilov等[2]提出了基于熱重啟機(jī)制的梯度下降算法SGDR,在每個(gè)訓(xùn)練周期開始時(shí),將學(xué)習(xí)率調(diào)整為初始學(xué)習(xí)率,在下一個(gè)周期開始前,學(xué)習(xí)率逐漸減小,到達(dá)下一個(gè)訓(xùn)練周期時(shí),學(xué)習(xí)率重置為初始學(xué)習(xí)率。研究結(jié)果表明,學(xué)習(xí)率熱重啟策略雖然在短期內(nèi)loss值會(huì)增大,但在最終的訓(xùn)練結(jié)果上,比傳統(tǒng)的學(xué)習(xí)率逐代衰減策略更好,可以使模型逃離局部最優(yōu),加快模型的收斂速度,最終提高模型的識(shí)別準(zhǔn)確率。
1.3? 獨(dú)熱編碼
對(duì)于多分類問題,通常采用one-hot編碼[3]的方式對(duì)樣本所屬類別給定一個(gè)標(biāo)簽概率值(0或1),例如在一個(gè)人、貓和狗的三分類任務(wù)中,一個(gè)樣本的one-hot編碼為x=[0,0,1],樣本經(jīng)過網(wǎng)絡(luò)最后一層的輸出為x=[2,3,5],經(jīng)softmax歸一化[4]后的預(yù)測(cè)結(jié)果為y=[0.042,0.114,0.844],公式為:
(2)
模型會(huì)更加關(guān)注softmax預(yù)測(cè)結(jié)果中接近1的概率值,讓0.844越來越接近1。
2? WRLS-YOLOv4算法
2.1? 余弦退火衰減學(xué)習(xí)率
本文借鑒熱重啟機(jī)制的思想,在模型學(xué)習(xí)過程中,隨著時(shí)間的推移讓學(xué)習(xí)率動(dòng)態(tài)變化。讓學(xué)習(xí)率在每個(gè)周期先從初始學(xué)習(xí)率線性增加至最大學(xué)習(xí)率,再以余弦函數(shù)的方式衰減至最小學(xué)習(xí)率,以此為一個(gè)周期,下一個(gè)周期開始時(shí),學(xué)習(xí)率重置為初始學(xué)習(xí)率。在學(xué)習(xí)率衰減過程中,網(wǎng)絡(luò)向局部最優(yōu)點(diǎn)靠攏,在學(xué)習(xí)率增大時(shí),網(wǎng)絡(luò)又跳出該局部最優(yōu)點(diǎn),向著下一個(gè)最優(yōu)點(diǎn)靠近,如此循環(huán)往復(fù),有助于模型的收斂,可以減小loss值,提高算法的識(shí)別準(zhǔn)確率。
余弦退火衰減學(xué)習(xí)率的衰減函數(shù)為:
(3)
其中ηt表示t時(shí)刻的學(xué)習(xí)率,ηmax為最大學(xué)習(xí)率,本文設(shè)為0.001,ηmin為最小學(xué)習(xí)率,本文設(shè)置為0,Tcur是上一次學(xué)習(xí)率衰減至當(dāng)前時(shí)刻已迭代的次數(shù),Ti為兩次學(xué)習(xí)率衰減t之間相差的迭代次數(shù),本文設(shè)為20。
2.2? 標(biāo)簽平滑策略
本文引入標(biāo)簽平滑來調(diào)整樣本的標(biāo)簽值,調(diào)整公式為:
(4)
式中qi和qi′分別為第i個(gè)樣本調(diào)整前和調(diào)整后的標(biāo)簽值,K為類別總數(shù),ε是一個(gè)較小的超參數(shù),本文設(shè)為0.05,用以對(duì)分類準(zhǔn)確性進(jìn)行微調(diào),緩解one-hot編碼導(dǎo)致的過擬合問題。適當(dāng)?shù)卣{(diào)整正負(fù)樣本的標(biāo)簽值,可以防止模型過于關(guān)注正樣本的預(yù)測(cè)值,減小正負(fù)樣本的輸出值差值,從而提高模型的泛化能力和魯棒性,減小漏檢率。
3? 數(shù)據(jù)集與實(shí)驗(yàn)
3.1? 實(shí)驗(yàn)數(shù)據(jù)集
本文的數(shù)據(jù)集一共14 785張圖片,均拍攝于實(shí)際施工現(xiàn)場(chǎng),圖中包含塔吊、吊車、挖掘機(jī)、鏟車和水泥泵車共5類大型工程機(jī)械。對(duì)上述工程機(jī)械圖像,運(yùn)用Labellmg來標(biāo)注圖像中每種工程機(jī)械的真實(shí)框并生成xml文件,將圖片及對(duì)應(yīng)的標(biāo)注信息制作成標(biāo)準(zhǔn)的VOC2007數(shù)據(jù)集格式。
3.2? 實(shí)驗(yàn)環(huán)境與訓(xùn)練策略
本文所使用電腦操作系統(tǒng)為Windows10,使用GPU顯卡為NVIDA GRID P40,顯存11 GB。本文所使用的軟件環(huán)境為CUDA10.0,CUDNN7.4.1以及Tenserflow-gpu1.13.1。
在訓(xùn)練之前,劃分10%的數(shù)據(jù)集用于測(cè)試,90%用于訓(xùn)練。在訓(xùn)練過程中,再把用于訓(xùn)練部分的數(shù)據(jù)集劃分10%用于驗(yàn)證。由于訓(xùn)練過程需要耗費(fèi)大量時(shí)間,本文通過粗略訓(xùn)練和精細(xì)訓(xùn)練的方式進(jìn)行訓(xùn)練,均采用提前終止機(jī)制[5]防止訓(xùn)練結(jié)果過擬合。
3.3? 評(píng)價(jià)標(biāo)準(zhǔn)
本文使用平均精度AP、平均精度均值mAP、平均漏檢率mMR以及每秒幀數(shù)FPS來對(duì)各個(gè)算法訓(xùn)練的模型進(jìn)行評(píng)價(jià)。
AP值是指精準(zhǔn)率和召回率曲線下的面積,精準(zhǔn)率和召回率的公式如下:
(5)
(6)
其中,TP是分類器認(rèn)為正樣本,實(shí)際也是正樣本的例子,F(xiàn)P是被分類器認(rèn)為是正樣本,實(shí)際上是負(fù)樣本的例子,F(xiàn)N表示分類器認(rèn)為是負(fù)樣本,實(shí)際上是正樣本的例子。由不同的精準(zhǔn)率和召回率的點(diǎn)的組合可繪出P-R曲線,AP即是該曲線下的面積。mAP則是把所有類別的AP計(jì)算出來然后根據(jù)式(7)求平均值。
(7)
其中K為類別總數(shù)。
MR是單一類別的漏檢率,mMR即為所有類別漏檢率的平均值,單一類別的漏檢率計(jì)算公式為:
(8)
式中,xi為第i張圖片的漏檢率,M為某一類圖像的總數(shù),mMR值越小,模型性能越好。
FPS是指每秒內(nèi)處理圖片的數(shù)量,可以反映模型的檢測(cè)速度能否達(dá)到實(shí)時(shí)檢測(cè)的要求。FPS值受設(shè)備性能影響,本文均在同一設(shè)備下對(duì)各個(gè)模型的FPS進(jìn)行對(duì)比分析。
4? 實(shí)驗(yàn)結(jié)果與分析
4.1? 余弦退火衰減實(shí)驗(yàn)
本文首先設(shè)置了兩組實(shí)驗(yàn),分別使用學(xué)習(xí)率逐代衰減和學(xué)習(xí)率按余弦退火方式衰減兩種策略在相同的數(shù)據(jù)集下進(jìn)行訓(xùn)練并各迭代120次,查看兩組實(shí)驗(yàn)下loss值的下降情況,兩種訓(xùn)練策略分別在75和100次迭代過后出現(xiàn)早停,繪制loss值按迭代次數(shù)變化曲線如圖1所示,其中train_loss和val_loss分別代表訓(xùn)練集和驗(yàn)證集的loss值。
由圖1(a)可見,在學(xué)習(xí)率逐代衰減的方式下,訓(xùn)練集和驗(yàn)證集的loss值在迭代到30次左右趨于平穩(wěn),說明模型學(xué)習(xí)遇到瓶頸,train_loss和val_loss最終趨于5.1和5.6左右。圖1(b)是運(yùn)用余弦退火衰減學(xué)習(xí)率的loss值變化情況,由于本文設(shè)置每20次為一個(gè)周期進(jìn)行學(xué)習(xí)率先上升后下降。從圖中可以看到訓(xùn)練集和驗(yàn)證集的loss分別在第20、40、60和80次有明顯的增大,隨后繼續(xù)減小,最終train_loss和val_loss都能降到4以下。說明運(yùn)用學(xué)習(xí)率余弦退火衰減策略可以使模型學(xué)習(xí)跳出局部最優(yōu),尋找一下個(gè)最優(yōu)點(diǎn),相較于學(xué)習(xí)率逐代衰減的方法,最終的loss值更小,從而提高算法的識(shí)別準(zhǔn)確率。
4.2? 標(biāo)簽平滑實(shí)驗(yàn)
設(shè)置運(yùn)用標(biāo)簽平滑以及不使用標(biāo)簽平滑的兩組實(shí)驗(yàn),均在相同的訓(xùn)練集和驗(yàn)證集下進(jìn)行訓(xùn)練并迭代100次,其中包括30次粗略訓(xùn)練,70次精細(xì)訓(xùn)練,再用相同的測(cè)試集對(duì)訓(xùn)練好的模型進(jìn)行測(cè)試,比較每一類工程機(jī)械的Precision、AP值以及單類別漏檢率MR。
在YOLOv4的基礎(chǔ)上,引入標(biāo)簽平滑后,在略有犧牲鏟車AP值以及漏檢率不變的情況下,吊車,水泥泵車,塔吊以及挖掘機(jī)的AP值分別提高了2.86%、4.41%、1.13%、0.73%,漏檢率減小了0.04、0.03、0.02、0.02,說明引入標(biāo)簽平滑能夠提高樣本的平均精度,提高模型的泛化能力,降低漏檢率。
4.3? 余弦退火和標(biāo)簽平滑組合對(duì)比實(shí)驗(yàn)
通過對(duì)余弦退火衰減學(xué)習(xí)率和標(biāo)簽平滑兩種策略進(jìn)行不同的組合,在相同的訓(xùn)練集和驗(yàn)證集下進(jìn)行訓(xùn)練并迭代100次,其中包括30次粗略訓(xùn)練,70次精細(xì)訓(xùn)練,比較不同組合方法下的模型的檢測(cè)效果,計(jì)算其mAP,得到如表1所示。
從表1可以看出,YOLOv4在單獨(dú)引入余弦退火衰減學(xué)習(xí)率以及標(biāo)簽平滑的策略后,mAP較原YOLOv4分別提升了1.66%和1.69%,說明兩種策略對(duì)模型的訓(xùn)練都有一定的提升作用。本文在YOLOv4的基礎(chǔ)上,同時(shí)引入兩種策略來訓(xùn)練模型,mAP可達(dá)88.20%,較原YOLOv4提升了5.43%,表明兩種方法配合使用相比于單獨(dú)使用得到的模型效果更優(yōu)。
4.4? 不同算法對(duì)比實(shí)驗(yàn)
給定相同的訓(xùn)練集和測(cè)試集,設(shè)置相同的訓(xùn)練條件,分別使用Faster RCNN、SSD、YOLOv3、YOLOv4和本文算法分別進(jìn)行100次迭代的訓(xùn)練,包括30次粗略訓(xùn)練以及70次精細(xì)訓(xùn)練,比較各個(gè)算法訓(xùn)練模型的mAP,mMR以及FPS指標(biāo),結(jié)果如表2所示。
從實(shí)驗(yàn)結(jié)果可以看出,5種算法中,F(xiàn)aster RCNN的mAP達(dá)89.13%,雖略高于WRLS-YOLOv4算法,但其FPS僅有4.6,遠(yuǎn)不能滿足實(shí)時(shí)檢測(cè)的要求。SSD算法的檢測(cè)速度最快,F(xiàn)PS可達(dá)44.8,但其mAP只有74.81%,檢測(cè)準(zhǔn)確率較低且平均漏檢率較高。WRLS-YOLOv4算法的平均精度均值可達(dá)88.20%,較SSD、YOLOv3以及YOLOv4提升了13.39%、10.5%、5.43%,平均漏檢率較原YOLOv4減小了0.11,有效改善了YOLOv4漏檢率高的缺陷。
為更直觀地驗(yàn)證本文方法的檢測(cè)效果,分別應(yīng)用4種算法以及本文算法對(duì)大型工程機(jī)械圖像檢測(cè)。
在場(chǎng)景1的對(duì)比中,SSD存在明顯的漏檢情況,其他算法均能檢測(cè)到3個(gè)吊車。在場(chǎng)景2中,YOLOv3和SSD沒有檢測(cè)到遠(yuǎn)點(diǎn)的塔吊,本文算法和其他兩種算法可以檢測(cè)到全部4個(gè)工程機(jī)械。場(chǎng)景3中,共有6個(gè)塔吊,SSD僅檢測(cè)到兩個(gè),YOLOv3漏檢1個(gè),YOLOv4檢測(cè)到了全部6個(gè)塔吊,但本文算法檢測(cè)到的塔吊準(zhǔn)確率均高于YOLOv4。在場(chǎng)景4的對(duì)比中,只有本文算法檢測(cè)到了遠(yuǎn)點(diǎn)的挖掘機(jī)。通過對(duì)比不同算法模型的檢測(cè)效果可以看出,本文方法訓(xùn)練出的模型效果更優(yōu),識(shí)別準(zhǔn)確率更高,漏檢率更低。
5? 結(jié)? 論
本文針對(duì)大型工程機(jī)械不規(guī)范施工而導(dǎo)致輸電線路故障以及對(duì)YOLOv4算法識(shí)別準(zhǔn)確率低,漏檢率高的問題進(jìn)行研究,提出一種WRLS-YOLOv4的大型工程機(jī)械檢測(cè)算法。以YOLOv4為基礎(chǔ)網(wǎng)絡(luò)結(jié)構(gòu),引入學(xué)習(xí)率余弦退火衰減策略,加速模型跳出局部最優(yōu),提高識(shí)別準(zhǔn)確率。通過標(biāo)簽平滑對(duì)樣本標(biāo)簽值進(jìn)行調(diào)整,提升模型泛化能力,減小漏檢率,并針對(duì)輸電線路周圍常見的工程機(jī)械建立數(shù)據(jù)集,進(jìn)行多組實(shí)驗(yàn)測(cè)試及驗(yàn)證。通過對(duì)比不同算法效果,表明本文算法比原始的YOLOv4方法檢測(cè)效果好,在識(shí)別準(zhǔn)確率以及漏檢率方面都有提升,可以對(duì)輸電線路周圍環(huán)境的大型工程機(jī)械進(jìn)行檢測(cè)識(shí)別,為其安全運(yùn)行提供保障。
參考文獻(xiàn):
[1] 劉建偉,周婭,黃祖欽,等.高壓輸電線路除冰技術(shù)綜述 [J].機(jī)械設(shè)計(jì)與制造,2012(5):285-287.
[2] LOSHCHIOV I, HUTTER F. SGDR:Stochastic Gradient Descent with Warm Restarts [J/OL].arXiv:608.03983 [cs.LG].[2021-11-03].http://arxiv.org/abs/1608.03983,2016.
[3] 邱志斌,朱軒,廖才波,等.基于目標(biāo)檢測(cè)的電網(wǎng)涉鳥故障相關(guān)鳥種智能識(shí)別 [J].電網(wǎng)技術(shù),2022,46(1):369-377
[4] 朱松豪,趙云斌.基于半監(jiān)督生成式對(duì)抗網(wǎng)絡(luò)的異常行為檢測(cè) [J].南京郵電大學(xué)學(xué)報(bào),2020,40(4):50-56.
[5] 謝斌紅,袁帥,龔大立.基于RDB-YOLOv4的煤礦井下有遮擋行人檢測(cè) [J/OL].計(jì)算機(jī)工程與應(yīng)用,(2021-04-20).https://kns.cnki.net/kcms/detail/detail.aspx?dbcode=CAPJ&dbname=CAPJLAST&filename=JSGG2021041800B&uniplatform=NZKPT&v=3Qinehu7XHJ1uiLWDnHwCMeat_k_uuMqdTuQF5FxoOrvXKBp-3BWElhF90pYeA29.
作者簡(jiǎn)介:余長(zhǎng)生(1996—),男,漢族,四川內(nèi)江人,碩士在讀,主要研究方向:異物檢測(cè);通訊作者:秦倫明(1983—),男,漢族,江蘇靖江人,講師,博士,主要研究方向:電力設(shè)備在線監(jiān)測(cè)、多源圖像視頻信息處理等;王悉(1980—),男,漢族,河北邯鄲人,副教授,博士,主要研究方向:列車智能駕駛,模型預(yù)測(cè)控制;陳鵬,(1997—),男,漢族,山東青島人,碩士在讀,主要研究方向:深度學(xué)習(xí)與目標(biāo)檢測(cè)。