李 寧,劉 青,熊 俊,董力文
(國(guó)網(wǎng)北京市電力公司電纜分公司,北京,100010)
森林、草原、野坡是大自然最好的“調(diào)劑師”,因其可促進(jìn)自然界的碳、水循環(huán),具有維護(hù)生態(tài)系統(tǒng)平衡和改善生態(tài)環(huán)境的功能,越來(lái)越受到人們的重視。我國(guó)雖然土地遼闊,但是存儲(chǔ)的森林、草原、野坡資源占比卻很小,如人均森林面積不足世界平均水平的四分之一[1,2]?;馂?zāi)的破壞力極強(qiáng),不但會(huì)燒毀大片的樹木,造成物種的滅亡,還會(huì)引起水土流失,威脅人民的生命財(cái)產(chǎn)安全[3]。因此關(guān)于火災(zāi)的巡檢技術(shù)受到了越來(lái)越多的學(xué)者和相關(guān)部門的關(guān)注。盡早發(fā)現(xiàn)火情,并精準(zhǔn)掌握火災(zāi)環(huán)境態(tài)勢(shì),指揮中心便可以采取有效的撲救措施進(jìn)行火災(zāi)控制與撲滅。
目前人工巡檢與觀測(cè)塔的方式是國(guó)內(nèi)最常見的火災(zāi)監(jiān)測(cè)手段,該方法存在周期長(zhǎng)、效率低、工作量大的缺點(diǎn)。此外通過衛(wèi)星監(jiān)測(cè)的方式,雖然可以大范圍監(jiān)測(cè)火災(zāi),但其存在實(shí)時(shí)性差、分辨率低等缺點(diǎn)。隨著航空技術(shù)的發(fā)展,有人駕駛飛機(jī)巡檢監(jiān)測(cè)和無(wú)人機(jī)巡檢監(jiān)測(cè)成為較為有效的火災(zāi)監(jiān)測(cè)手段,具有效率高、成本低、實(shí)時(shí)性強(qiáng)的優(yōu)勢(shì)[4-6]。
本文通過無(wú)人機(jī)系統(tǒng)與基于視頻圖像的計(jì)算機(jī)視覺技術(shù)結(jié)合,設(shè)計(jì)了一套智能森林火災(zāi)巡檢系統(tǒng),實(shí)現(xiàn)了在無(wú)人參與的情況下,無(wú)人機(jī)可自動(dòng)起飛并按預(yù)設(shè)軌跡飛行。當(dāng)檢測(cè)到火災(zāi)后,無(wú)人機(jī)可自動(dòng)抵近偵察并沿火線邊緣飛行,進(jìn)一步采集森林火災(zāi)現(xiàn)場(chǎng)更多的信息。針對(duì)常用的基于圖像的檢測(cè)算法難以同時(shí)滿足超大目標(biāo)和小目標(biāo)同步檢測(cè)的問題,本文提出了一種improved-YOLOv3的火災(zāi)檢測(cè)算法,實(shí)時(shí)處理無(wú)人機(jī)平臺(tái)采集的圖像,有效地提高了火災(zāi)檢測(cè)的實(shí)時(shí)性和準(zhǔn)確性。
本文針對(duì)當(dāng)前存在的問題,設(shè)計(jì)了一套基于無(wú)人機(jī)的火災(zāi)巡檢系統(tǒng)。通過無(wú)人機(jī)搭載圖像采集設(shè)備,將巡檢圖像實(shí)時(shí)傳回地面服務(wù)器,通過基于深度學(xué)習(xí)算法的智能識(shí)別,判斷是否有火災(zāi)發(fā)生。當(dāng)檢測(cè)到火災(zāi)發(fā)生時(shí),無(wú)人機(jī)可根據(jù)機(jī)載端火線提取算法,自動(dòng)沿火線邊緣飛行。本系統(tǒng)實(shí)現(xiàn)了森林火災(zāi)的智能識(shí)別、區(qū)域定位和態(tài)勢(shì)感知功能,可有效、實(shí)時(shí)、全天候自動(dòng)監(jiān)測(cè)火災(zāi)并具有作業(yè)效率高、運(yùn)營(yíng)成本低等優(yōu)勢(shì)。本森林火災(zāi)巡檢系統(tǒng)分為:無(wú)人機(jī)子系統(tǒng)、圖像采集子系統(tǒng)、機(jī)載處理器子系統(tǒng)、地面服務(wù)器子系統(tǒng),系統(tǒng)組成如圖1所示。
圖1 森林火災(zāi)巡檢系統(tǒng)組成Fig. 1 Composition of forest fire inspection system
無(wú)人機(jī)子系統(tǒng)為飛行平臺(tái)的載體,通過其自身裝載的傳感器如GPS、IMU和氣壓計(jì)等,利用多傳感器融合技術(shù),解算出無(wú)人機(jī)的位置及姿態(tài)信息,為其自身控制及火災(zāi)位置提取提供多維度的信息源。無(wú)人機(jī)通過串級(jí)PID控制算法,進(jìn)行姿態(tài)、速度、位置自動(dòng)控制。根據(jù)本文載重、航時(shí)、抗風(fēng)等性能要求,采用六軸多旋翼無(wú)人機(jī)為飛行載體,載重量3 kg,航時(shí)為45 min。
圖像采集系統(tǒng)主要由云臺(tái)、圖傳、可見光相機(jī)三個(gè)設(shè)備構(gòu)成。云臺(tái)起到了消除無(wú)人機(jī)高頻抖動(dòng)、使畫面穩(wěn)定的功能。在無(wú)人機(jī)飛行時(shí)會(huì)出現(xiàn)一定的角度傾斜,云臺(tái)也能起到抵消角度傾斜的作用。圖傳為圖像無(wú)線傳輸設(shè)備,將機(jī)載端采集的圖像傳輸?shù)降孛娣?wù)器。本文采用瑞沃UT1900-S型號(hào)的圖數(shù)一體化設(shè)備,通過其中數(shù)傳模塊可將地面服務(wù)器的命令指令發(fā)送至無(wú)人機(jī)端??梢姽庀鄼C(jī)采用索尼A7R,其主要性能參數(shù)如表1所示。
表1 索尼A7R主要參數(shù)表
地面服務(wù)器系統(tǒng)通過地面端圖傳模塊接收相機(jī)的圖像信號(hào),通過深度學(xué)習(xí)算法對(duì)視頻信號(hào)進(jìn)行森林火災(zāi)的智能檢測(cè),當(dāng)檢測(cè)到發(fā)生火災(zāi)情況時(shí),發(fā)出報(bào)警信號(hào),并向無(wú)人機(jī)發(fā)送抵近偵查指令。
機(jī)載處理器主要完成抵近偵察功能的無(wú)人機(jī)控制指令計(jì)算。機(jī)載處理器同樣接收相機(jī)視頻信號(hào),當(dāng)需要抵近偵察時(shí),通過圖像火災(zāi)像素位置、無(wú)人機(jī)位置、云臺(tái)姿態(tài),進(jìn)行火災(zāi)位置的初步計(jì)算。無(wú)人機(jī)將按照此位置進(jìn)行火災(zāi)搜索,實(shí)現(xiàn)抵近偵察森林火災(zāi)情況功能。
針對(duì)規(guī)劃的待巡檢森林區(qū)域,無(wú)人機(jī)設(shè)備規(guī)劃好固定的巡檢航線,以其自身的自動(dòng)航線飛行功能,無(wú)人機(jī)搭載云臺(tái)、相機(jī)及其他設(shè)備,即可開展巡檢工作。固定巡檢航線以蛇形航線為主,吊艙以正射模式工作。自動(dòng)飛行過程中,相機(jī)可將圖像信號(hào)通過圖傳傳輸至地面服務(wù)器,進(jìn)行本幀圖像內(nèi)森林是否發(fā)生火災(zāi)的智能判斷。
當(dāng)?shù)孛娣?wù)器發(fā)現(xiàn)有火災(zāi)發(fā)生后,發(fā)出報(bào)警信號(hào),并向無(wú)人機(jī)發(fā)送抵近偵察指令。無(wú)人機(jī)接收到此指令后,啟動(dòng)配備智能識(shí)別算法的機(jī)載處理器,執(zhí)行自動(dòng)抵近偵察工作。相機(jī)的視頻信號(hào)一路接至機(jī)載處理器中,識(shí)別發(fā)生火災(zāi)的像素位置,如果火災(zāi)邊緣全在當(dāng)前畫幅中,則控制無(wú)人機(jī)自動(dòng)飛行到火災(zāi)中心點(diǎn)上方,隨后根據(jù)火災(zāi)區(qū)域占畫幅比,控制無(wú)人機(jī)高度降低,至畫幅比滿足要求。其中自動(dòng)飛行原理如下,根據(jù)火災(zāi)中心點(diǎn)的像素位置,將該像素位置與圖像中心點(diǎn)像素位置偏差輸入PID控制器,轉(zhuǎn)化為無(wú)人機(jī)地理坐標(biāo)系下的控制量,控制無(wú)人機(jī)移動(dòng),從而改變火災(zāi)中心點(diǎn)位置,形成閉環(huán)負(fù)反饋。其控制框圖如圖2所示。
圖2 控制策略框圖Fig. 2 Control strategy block diagram
如果檢測(cè)到火災(zāi)發(fā)生時(shí),火災(zāi)邊緣不全在畫幅中,即著火面積比較大,此時(shí)需調(diào)整無(wú)人機(jī)航向,至火災(zāi)邊緣某點(diǎn)與圖像上邊緣中心點(diǎn)像素重合,再控制無(wú)人機(jī)向前飛行,至圖像中心點(diǎn)出現(xiàn)火災(zāi)邊緣點(diǎn)。通過機(jī)載處理器實(shí)時(shí)檢測(cè)火災(zāi)邊緣,實(shí)現(xiàn)沿大面積著火區(qū)域的邊緣飛行,實(shí)現(xiàn)大面積火場(chǎng)的態(tài)勢(shì)感知。
YOLOv3網(wǎng)絡(luò)可以分為兩部分,如圖3所示。一是特征提取網(wǎng)絡(luò),該部分提取輸入圖像的特征,其基礎(chǔ)網(wǎng)絡(luò)是darknet-53,使用了53個(gè)卷積層,作為YOLOv3特征提取的主要網(wǎng)絡(luò)結(jié)構(gòu),該結(jié)構(gòu)使用一系列的3*3和1*1大小的卷積層,與殘差層res相結(jié)合,具有較好的特征提取能力。圖中resn中n代表數(shù)字,表示此res_block含有n個(gè)res_unit。res_unit為兩個(gè)DBL模塊串聯(lián)后與輸入相加組成的殘差結(jié)構(gòu)。二是目標(biāo)定位與預(yù)測(cè)網(wǎng)絡(luò),即yolo層部分,YOLOv3的特征交互層分為了三個(gè)尺度,在每個(gè)尺度內(nèi)通過卷積核的方式實(shí)現(xiàn)局部的特征交互[7-9]。三個(gè)yolo層的分析如下:
第一個(gè)yolo層:輸入為13*13的特征圖,一共有1024個(gè)通道,經(jīng)過一系列的卷積操作后,輸出75個(gè)通道的13*13的特征圖,用于分類和位置回歸。
第二個(gè)yolo層:輸入為512通道的13*13的特征圖,輸出256個(gè)通道13*13的特征圖,然后上采樣生成256通道的26*26大小的特征圖,同時(shí)與61層的26*26的中尺度特征圖進(jìn)行融合,再經(jīng)過一系列的卷積操作,生成75通道的26*26大小的特征圖,用于分類和位置回歸。
第三個(gè)yolo層:將256個(gè)通道的26*26大小的特征圖進(jìn)行卷積操作,生成128通道的26*26的特征圖,然后上采樣生成128通道的52*52大小的特征圖,同時(shí)與36層的52*52的特征圖進(jìn)行融合,再進(jìn)行一系列的卷積操作,得到75個(gè)通道的52*52大小的特征圖,用于分類和位置回歸。
在特征交互階段,以416*416大小的圖像為例,用于分類和位置回歸的特征圖尺寸分別為13、26、52,感受野偏小,影響大目標(biāo)的檢測(cè)能力。本文的研究對(duì)象初期火焰較小,占比小,屬于小目標(biāo)檢測(cè)范疇;隨著煙霧彌漫整個(gè)圖像畫面,屬于超大目標(biāo)檢測(cè)范疇。因此需要針對(duì)yolo層進(jìn)行改進(jìn),使其能同時(shí)兼顧小目標(biāo)與超大目標(biāo)的檢測(cè)。
圖3 原YOLOv3網(wǎng)絡(luò)結(jié)構(gòu)圖Fig. 3 Original YOLOv3 network structure diagram
通過以上網(wǎng)絡(luò)結(jié)構(gòu)的解析及實(shí)際測(cè)試,YOLOv3對(duì)過大的目標(biāo)存在檢測(cè)能力不足的情況。如本項(xiàng)目中的煙霧,在原生態(tài)網(wǎng)絡(luò)中煙霧的漏檢率達(dá)到43%,因此需要從網(wǎng)絡(luò)結(jié)構(gòu)上進(jìn)行改進(jìn),提高模型的檢測(cè)能力。
在特征交互階段,416*416大小的圖像用于分類和位置回歸的特征圖尺寸分別為13、26、52、104、208,增加了與第4層和第11層的大尺度特征融合,感受野范圍增大。另外原YOLOv3使用k-means生成9種anchor,改進(jìn)后的網(wǎng)絡(luò)(因改進(jìn)后網(wǎng)絡(luò)有5個(gè)yolo層,故下文中稱為:YOLOv3-5)使用15種anchor,每三種對(duì)應(yīng)一個(gè)yolo層,提高了目標(biāo)的檢測(cè)能力。改進(jìn)的網(wǎng)絡(luò)片段如圖4所示,具體改進(jìn)描述如下:
第一個(gè)yolo層:輸入為13*13的特征圖,一共有1024個(gè)通道,經(jīng)過一系列的卷積操作,輸出75個(gè)通道的13*13特征圖,用于分類和位置回歸。
第二個(gè)yolo層:輸入為79層的512通道的13*13的特征圖,輸出256個(gè)通道的13*13特征圖,然后上采樣生成256通道的26*26大小的特征圖,同時(shí)與61層的26*26的中尺度特征圖進(jìn)行融合,再經(jīng)過一系列的卷積操作,生成75通道的26*26大小的特征圖,用于分類和位置回歸。
第三個(gè)yolo層:將91層的256個(gè)通道的26*26大小的特征圖進(jìn)行卷積操作,生成128通道的26*26的特征圖,然后上采樣生成128通道的52*52大小的特征圖,同時(shí)與36層的52*52的特征圖進(jìn)行融合,再進(jìn)行一系列的卷積操作,得到75個(gè)通道的52*52大小的特征圖,用于分類和位置回歸。
第四個(gè)yolo層:將103層的128個(gè)通道的52*52大小的特征圖進(jìn)行卷積操作,生成128通道的52*52的特征圖,然后上采樣生成128通道的104*104大小的特征圖,同時(shí)與11層的104*104的特征圖進(jìn)行融合,再進(jìn)行一系列的卷積操作,得到75個(gè)通道的104*104大小的特征圖,用于分類和位置回歸。
第五個(gè)yolo層:將115層的64個(gè)通道的104*104大小的特征圖進(jìn)行卷積操作,生成128通道的104*104的特征圖,然后上采樣生成128通道的208*208大小的特征圖,同時(shí)與4層的208*208的大尺度特征圖進(jìn)行融合,再進(jìn)行一系列的卷積操作,得到75個(gè)通道的208*208大小的特征圖,用于分類和位置回歸。
圖4 improved-YOLOv3網(wǎng)絡(luò)結(jié)構(gòu)圖Fig. 4 Improved YOLOv3 network structure diagram
(1)數(shù)據(jù)集基本情況
本數(shù)據(jù)集來(lái)自UAV采集的3 800張火場(chǎng)圖像,主要包含以下場(chǎng)景:森林火場(chǎng)、草原火場(chǎng)、山火、道路車輛起火、郊區(qū)建筑物起火等?;馂?zāi)狀態(tài)囊括了大火、小火、零星火、薄煙、濃煙等。
(2)數(shù)據(jù)集標(biāo)注
由于火焰本身形狀不規(guī)則,邊緣細(xì)節(jié)不夠明顯,通過航拍得到的火焰圖像較難進(jìn)行圖像分割標(biāo)注。因此,采用labelimage軟件標(biāo)注成voc格式的目標(biāo)識(shí)別數(shù)據(jù)集,記錄火焰的位置坐標(biāo)等信息。即:將數(shù)據(jù)集分為JPEGImages和Annotations兩部分,其中JPEGImages文件夾中存放圖像數(shù)據(jù),Annotations文件夾中存放每個(gè)圖像對(duì)應(yīng)的xml格式的label信息。標(biāo)注時(shí)將煙霧和火焰分開標(biāo)注,分為:fire和smoke兩類。
(3)數(shù)據(jù)集增廣
①翻轉(zhuǎn)增廣
由于本項(xiàng)目中采用俯視的方式進(jìn)行圖像采集,可以通過圖像翻轉(zhuǎn)模擬得到無(wú)人機(jī)從不同的方向飛行采集的圖像,在此選擇圖像翻轉(zhuǎn)來(lái)得到無(wú)人機(jī)從不同方向飛來(lái)時(shí)的圖像,從而達(dá)到數(shù)據(jù)增廣的目的。
圖5 翻轉(zhuǎn)效果示例Fig. 5 Flip effect example
② 混合增廣
由于采集的圖像場(chǎng)景有限,為了豐富場(chǎng)景,采用混合背景的方法對(duì)圖像進(jìn)行增廣,即隨機(jī)選擇一張圖像做背景,在有火焰的圖像上將火焰摳出,然后通過圖像融合技術(shù)將火焰與背景圖像進(jìn)行融合,得到新場(chǎng)景的火災(zāi)圖像。
圖6 混合增廣示例Fig. 6 Hybrid augmentation example
(1)重新聚類anchor
改進(jìn)后的網(wǎng)絡(luò)需要15種anchors ,比原生態(tài)網(wǎng)絡(luò)多了6種anchors,因此通過K-means方法在本文數(shù)據(jù)集上聚類出15種anchors,分別為(22,32)、(39,63)、(93,74)、(58,121)、(134,127)、(101,224)、(252,129)、(192,222)、(135,405)、(250,325)、(431,202)、(381,361)、(285,551)、(269,375)、(492,554)。
(2)學(xué)習(xí)率調(diào)整
在網(wǎng)絡(luò)訓(xùn)練過程中采用了不同階段適配不同的學(xué)習(xí)率機(jī)制,網(wǎng)絡(luò)一共訓(xùn)練了40 000次,分別在20 000、30 000、35 000次時(shí)進(jìn)行學(xué)習(xí)率調(diào)整,共調(diào)整三次。初始學(xué)習(xí)率為10-3,前兩次每次調(diào)整為當(dāng)前學(xué)習(xí)率的十分之一,最后一次調(diào)整為當(dāng)前學(xué)習(xí)率的五分之一。
(3)前向推理階段,合并BN層到卷積層
為了提升模型前向推理的速度,將BN(Batch Normalization)層的參數(shù)合并到了卷積層中。BN層的加入,加速了網(wǎng)絡(luò)的收斂并且能夠有效地控制過擬合,在訓(xùn)練過程中起到了積極作用。但是其增加了運(yùn)算量,占用了更多的內(nèi)存或顯存空間,因此將其與卷積層合并,達(dá)到提升前向推斷速度的效果。
為測(cè)試本文提出的improved-YOLOv3網(wǎng)絡(luò)的性能,采用對(duì)比測(cè)試的方式進(jìn)行評(píng)估。對(duì)比的網(wǎng)絡(luò)有:原生態(tài)YOLOv3、SSD原生態(tài)網(wǎng)絡(luò)。分別對(duì)煙霧、火焰的識(shí)別準(zhǔn)確率和推理速度進(jìn)行了測(cè)試。實(shí)驗(yàn)過程中:數(shù)據(jù)集、迭代次數(shù)、數(shù)據(jù)預(yù)處理方式嚴(yán)格保持一致,輸入網(wǎng)絡(luò)的圖像大小統(tǒng)一為608*608,分別訓(xùn)練得到最優(yōu)模型。最后將相同的測(cè)試集分別輸入到不同的模型中進(jìn)行推理測(cè)試,對(duì)推理結(jié)果進(jìn)行統(tǒng)計(jì)比較,比較結(jié)果如表4所示。經(jīng)壓縮優(yōu)化處理后的模型大小為9.9 K。
由表4可以看出,本文所提出的improved-YOLOv3網(wǎng)絡(luò)模型的平均準(zhǔn)確率達(dá)到了96.5%,均高于原生態(tài)的YOLOv3和SSD網(wǎng)絡(luò)模型,漏檢率較于其他兩種算法也有明顯降低,達(dá)到了2.6%。在響應(yīng)時(shí)間上由于添加了網(wǎng)絡(luò)層的合并操作,時(shí)間消耗并沒有因?yàn)樵黾恿藋olo層而增加,反而略有下降,響應(yīng)時(shí)間為7.8 ms。
表2 測(cè)試結(jié)果統(tǒng)計(jì)表
為了驗(yàn)證提出的improved-YOLOv3算法的實(shí)際性能,在模擬場(chǎng)地的模擬火場(chǎng)中開展無(wú)人機(jī)火情圖像采集,然后利用本文算法進(jìn)行實(shí)時(shí)識(shí)別,圖7給出了部分檢測(cè)結(jié)果。
圖7 火災(zāi)現(xiàn)場(chǎng)檢測(cè)效果圖Fig. 7 Effect drawing of fire site detection
從現(xiàn)場(chǎng)檢測(cè)效果圖中可以看出,本文所提出的算法既能檢測(cè)出大面積的煙霧,也能同步對(duì)零星的小火焰進(jìn)行識(shí)別,兼顧了超大目標(biāo)與小目標(biāo)的同步檢測(cè),為森林火災(zāi)的檢測(cè)提供了有力保障。本文從可見光圖像的角度有效地提取了煙霧和火焰,實(shí)現(xiàn)了精準(zhǔn)的火災(zāi)檢測(cè)。今后的研究重點(diǎn)是如何結(jié)合紅外圖像滿足夜間及光線較暗的環(huán)境下的火災(zāi)檢測(cè)。
本文設(shè)計(jì)并開發(fā)了一種基于無(wú)人機(jī)系統(tǒng)的智能火災(zāi)檢測(cè)系統(tǒng)。系統(tǒng)通過無(wú)人機(jī)搭載圖像采集設(shè)備實(shí)時(shí)采集圖像,并將圖像實(shí)時(shí)傳輸至地面服務(wù)器,地面服務(wù)器通過智能檢測(cè)算法實(shí)現(xiàn)了火災(zāi)的實(shí)時(shí)檢測(cè)。通過對(duì)比測(cè)試和現(xiàn)場(chǎng)試驗(yàn),系統(tǒng)的檢測(cè)準(zhǔn)確性、漏檢率和檢測(cè)效率均達(dá)到了實(shí)際應(yīng)用的水平,從而證明了系統(tǒng)的可行性和實(shí)用價(jià)值。