高桂雨 李丁祎 趙娟娟 宋美 楊雅君 牛彥霖
摘要:森林火災(zāi)監(jiān)測是保障我國森林資源的重要手段,也是亟待解決的難題。該文基于TensorFlow框架,利用目標(biāo)檢測SSD算法結(jié)合YOLO算法中的回歸思想和Faster-RCNN算法中的Anchor機(jī)制,實(shí)現(xiàn)森林火災(zāi)的監(jiān)測報(bào)警,可輔助有關(guān)部門及時(shí)發(fā)現(xiàn)山火,提醒人們迅速做出滅火反應(yīng),在一定程度上減少森林火災(zāi)造成的損失。
關(guān)鍵詞:森林火災(zāi)監(jiān)測;目標(biāo)檢測;SSD算法
中圖分類號:TP18 ? ? ?文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2022)02-0013-02
1引言
森林作為國家最為重要的自然資源之一,其生物基因種類繁多,水、碳能源儲量豐富,對人類的生存繁衍、國民經(jīng)濟(jì)發(fā)展及地球生態(tài)循環(huán)有著不可替代的效用。森林火災(zāi)頻發(fā)于全球范圍的森林生態(tài)系統(tǒng),是森林三大自然災(zāi)害之最,被稱為世界性的林業(yè)災(zāi)害。世界范圍內(nèi),森林火災(zāi)每年發(fā)生量約為幾十萬次,破壞森林面積高達(dá)幾百萬公頃,占全球森林面積0.1%[1]。森林火災(zāi)危害性極大,不僅蠶食動植物,損壞微生物資源,造成土壤沙化和水土流失,造成難以估量的人員及經(jīng)濟(jì)損失,同時(shí),燃燒過程中產(chǎn)生大量懸浮顆粒,形成霧霾天氣;釋放出大量溫室氣體,加劇全球溫室效應(yīng),影響氣候變化;產(chǎn)生的氮氧化物(NO、NO2、N2O)同樣對人體具有危害,其中NO可直接侵入肺泡,釋放一種蛋白分解酶,破壞肺泡,引起肺水腫[2]等疾病。森林火災(zāi)是世界滅火的難題[3],一旦產(chǎn)生,其規(guī)模之大,燃燒速度極快,森林資源損失巨大。因此,監(jiān)測森林火災(zāi)是保障我國森林資源的重要手段,也是亟待解決的難題。
森林火災(zāi)的監(jiān)測技術(shù)近些年來發(fā)展迅速,相關(guān)設(shè)備也日趨先進(jìn),監(jiān)測時(shí)效性更強(qiáng),使得我國的森林火災(zāi)防護(hù)水平大幅度提升。王威等[4]通過傳感器獲取濕度、溫度等信息,并結(jié)合雷達(dá)數(shù)據(jù),建立了基于雷達(dá)的多源信息林火監(jiān)測模型。朱雪等[5]利用 SVM 分類方法,火焰特征作為輸入數(shù)據(jù),創(chuàng)建森林火災(zāi)的識別系統(tǒng),并通過圖像處理技術(shù)識別火災(zāi)規(guī)模實(shí)現(xiàn)林火監(jiān)控。丁毓峰,徐鑫[6]提出一種基于 POS-KELM 的森林火災(zāi)圖像識別方法,利用粒子群算法進(jìn)行參數(shù)尋優(yōu)。Wang等[7]將傳統(tǒng)的圖像處理技術(shù)與卷積神經(jīng)網(wǎng)絡(luò)相結(jié)合,引入自適應(yīng)池化方法,避免了傳統(tǒng)特征提取過程中的盲目性。秦鈺林等[8]人基于NB-IoT窄帶通信技術(shù)、無線傳感網(wǎng)技術(shù)設(shè)計(jì)了一套監(jiān)測系統(tǒng),將傳感器測量的數(shù)據(jù)傳入微控制器,若數(shù)據(jù)超過設(shè)定閾值,將進(jìn)入警報(bào)狀態(tài)。張海波等[9]提出了一種改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)三通道擬合的林火識別算法。同時(shí)采用PCA 算法改進(jìn)模型,提高模型迭代速率。曹毅超等[10]運(yùn)用循環(huán)神經(jīng)網(wǎng)絡(luò)算法進(jìn)行森林火災(zāi)識別,以林火視頻場景為研究對象,該方法不僅可以提取具有區(qū)分性的空間特征,還可以通過循環(huán)神經(jīng)網(wǎng)絡(luò)提取時(shí)序特征。Liu等[11]提出了一種基于深度學(xué)習(xí)的多層次森林火災(zāi)檢測方法。使用GAN (General Advanced Networks)生成了高質(zhì)量的火災(zāi)樣本,通過卷積神經(jīng)網(wǎng)絡(luò)(CNN)和支持向量機(jī)(SVM)用來進(jìn)行火災(zāi)區(qū)域識別。韋海成等[12]提出了一種基于 K-Means 聚類下樣本熵值判別算法,采用計(jì)算歐氏距離的 K-Means 聚類算法,通過計(jì)算火災(zāi)區(qū)域和非火災(zāi)區(qū)域的熵值差異大小,確認(rèn)聚類的圖像子集是否存在火災(zāi)。
本文將基于TensorFlow框架,利用SSD學(xué)習(xí)算法結(jié)合YOLO算法中的回歸思想和Faster-RCNN算法中的Anchor機(jī)制,實(shí)現(xiàn)森林火災(zāi)的監(jiān)測,最大程度上減少林火造成的損失。該算法使用全圖各個(gè)位置的多尺度區(qū)域進(jìn)行回歸,既能保持YOLO算法速度快的特性,也可保證窗口預(yù)測同 Faster-RCNN算法一樣精準(zhǔn)。
2基于目標(biāo)檢測SSD算法的森林火災(zāi)監(jiān)測模型研究
人工智能的研究領(lǐng)域里,研究的熱點(diǎn)已經(jīng)轉(zhuǎn)變?yōu)椴煌J较碌哪繕?biāo)和對象識別。目前,目標(biāo)檢測的算法主要有兩種:一種是首先確定區(qū)域,然后目標(biāo)分類,代表有R-CNN、SPP-net;另一種是采用網(wǎng)絡(luò)一步到位,達(dá)到檢測目標(biāo)的作用,代表有YOLO、SSD等。由于SSD有準(zhǔn)確性高、效率高的優(yōu)點(diǎn),所以本文采用SSD融合了YOLO的回歸思想和Faster R-CNN的候選框機(jī)制優(yōu)化了模型來進(jìn)行森林火災(zāi)檢測,既保持了Faster R-CNN的精準(zhǔn)性,也具有了YOLO速度快的特性。
2.1模型概述
SSD算法全稱為Single Shot MultiBox Detector,是屬于one-stage方法的一種目標(biāo)檢測算法。SSD在原始VGG16的基礎(chǔ)上延伸了4個(gè)卷積層擴(kuò)張視野,可以用于檢測不同尺度的物體。該算法利用了與Faster RNN相似的固定大小與寬高的PrioBox作為區(qū)域生成,但不同的是,SSD在6個(gè)不同尺度都設(shè)置預(yù)選框,由于各層特征圖具有不同的尺度與感受野,故使用淺層特征圖上較小的PrioBox檢測小物體,用深層特征圖上較大的PrioBox檢測大物體。在正、負(fù)樣本的選取與損失計(jì)算方面,SSD算法利用[3×3]的卷積在6個(gè)特征圖上進(jìn)行特征提取,并分為分類與回歸兩個(gè)分支,通過預(yù)選框與真實(shí)框的匹配,利用IoU篩選出正樣本與負(fù)樣本,最終計(jì)算出分類損失與回歸損失。
2.2模型應(yīng)用框架
利用TensorFlow庫中的Tensorflow object detection API來識別圖像或視頻中火災(zāi)的神經(jīng)網(wǎng)絡(luò)。為了提高模型的精確度,選擇了多個(gè)角度不同火勢的山火航拍圖。由于森林火災(zāi)監(jiān)測預(yù)警模型是基于各種不同角度不同清晰度的圖像數(shù)據(jù)訓(xùn)練得到的,因此可以根據(jù)建立的森林火災(zāi)監(jiān)測預(yù)警模型識別森林火災(zāi)。森林火災(zāi)有不可預(yù)測以及難以預(yù)防的特性,所以根據(jù)模型輸出的結(jié)果推測火勢處于什么狀況下報(bào)警能使火災(zāi)的損失最小化。整體應(yīng)用框架構(gòu)思如圖1所示:
2.3 數(shù)據(jù)的準(zhǔn)備
本文利用數(shù)據(jù)集網(wǎng)站及其他網(wǎng)站搜集森林火災(zāi)的圖像和視頻,選取下載了400余張火災(zāi)圖片并將其存入“site-packages”文件夾中。為了提高模型的可靠性和精確度,選取的森林火災(zāi)圖像火勢大小不同、火勢區(qū)域不同,山勢地形不同等。數(shù)據(jù)集獲取完畢后,利用Labelme軟件將數(shù)據(jù)集中的所有圖像進(jìn)行人工標(biāo)記,判斷并勾選出圖像中存在火焰的區(qū)域,即選擇需要學(xué)習(xí)識別的物體。標(biāo)記完成后,得到新的文件“object_detection”,其用于存儲選定的圖像邊界框的XML文件。
2.4 數(shù)據(jù)的處理
將儲存好的圖像數(shù)據(jù)集按照3:1的比例隨機(jī)拆分成兩份。前者作為訓(xùn)練集,用來調(diào)整參數(shù)和訓(xùn)練模型;后者作為檢驗(yàn)集,用來模型性能和準(zhǔn)確率的檢驗(yàn)。分別導(dǎo)入原圖像及對應(yīng)的XML文件以創(chuàng)建新的數(shù)據(jù)集,利用Python代碼將XML文件轉(zhuǎn)換為Tensorflow可讀取的形式,即Tfrecord格式,提取XML文件中的特征值至Excel表格中。
2.5訓(xùn)練過程
基于谷歌提供的object detection api圖像識別框架,采用SSD_MobileNet_v1算法對訓(xùn)練集進(jìn)行模型訓(xùn)練。其核心思想是深度可分離卷積操作,在與標(biāo)準(zhǔn)卷積操作設(shè)置權(quán)值參數(shù)相同的情況下,可大大減少計(jì)算量,從而提高運(yùn)算速度。
在開始訓(xùn)練前,筆者進(jìn)行了一系列參數(shù)設(shè)置。首先,由于數(shù)據(jù)集中的圖片大小規(guī)格不一,故選擇fixed_shape_resizer對輸入圖像進(jìn)行控制,將height和width均設(shè)置為300,使輸入的森林火災(zāi)圖像的大小規(guī)格統(tǒng)一為300[×]300。其次,由于待檢測目標(biāo)只有一個(gè),因此將分類數(shù)目設(shè)為1,類別名稱為制作數(shù)據(jù)集時(shí)對火焰的標(biāo)記fire。而在box編解碼處,因?yàn)镾SD算法借鑒了Faster-RNN的思想,故選擇faster_rcnn_box_coder參數(shù),以default box為參照系,將預(yù)測框和人工標(biāo)記的真實(shí)框轉(zhuǎn)換為相對于default box的數(shù)值表示,以及將預(yù)測框和真實(shí)框轉(zhuǎn)換為用絕對坐標(biāo)系數(shù)值表示。另外,鑒于SSD算法采用了最大值策略,對于default box和真實(shí)框的匹配策略設(shè)置參數(shù)選擇argmax_matcher,并設(shè)置二者的閾值均為0.5,用以判別正、負(fù)樣本。此處,為防止出現(xiàn)中間態(tài)樣本,增加了negatives_lower_than_unmatched參數(shù),并設(shè)置其值為true,即將中間態(tài)樣本記為負(fù)樣本;為防止模型出現(xiàn)漏檢的情況,又設(shè)置參數(shù)force_match_for_each_row的值為 true。
準(zhǔn)備好上述條件后,對預(yù)測器做出一系列設(shè)置,使predicted box可輸出顯示兩類預(yù)測:(1)predicted box中目標(biāo)的類別;(2)交并比IOU的值。
經(jīng)過3000次訓(xùn)練,模型的定位損失值和分類損失值均已穩(wěn)定于一常數(shù)附近,最終選取了損失值最小的模型,并記錄了參數(shù)組合。整個(gè)模型的主要參數(shù)設(shè)置如表1:
2.6 模型檢驗(yàn)
經(jīng)檢驗(yàn),使用該模型對不同大小不同清晰度的森林航拍圖片中火焰的檢測平均準(zhǔn)確率達(dá)93%,對于森林航拍視頻中火焰的均可檢測并標(biāo)記出,且IOU值達(dá)90%以上。
3 結(jié)論
本文就基于目標(biāo)檢測SSD算法的森林火災(zāi)檢測模型,進(jìn)行了系列研究探索。將該模型嵌入無人機(jī)進(jìn)行森林巡檢可以提高護(hù)林巡檢效率,減少巡護(hù)人力物力的消耗,對初發(fā)期森林火災(zāi)及時(shí)作出反應(yīng)降低林火危害。
參考文獻(xiàn):
[1] 傅欣蕾,韓久同,劉敏.基于CiteSpace的森林火災(zāi)研究文獻(xiàn)可視化分析[J].安徽林業(yè)科技,2020,46(5):56-61.
[2] 向臨川,王秋華,龍騰騰,等.森林火災(zāi)燃燒產(chǎn)物研究概述[J].森林防火,2020(3):28-33.
[3] 高艷霞.林火監(jiān)測與預(yù)警在森林防滅火中的運(yùn)用探究[J].南方農(nóng)業(yè),2020,14(27):86-87.
[4] 王威,何筱仙,張深壽.基于雷達(dá)的多源信息森林火災(zāi)監(jiān)測模型應(yīng)用研究[J].氣象科技進(jìn)展,2020,10(6):101-105.
[5] 朱雪,姜樹海,崔嵩鶴,等.基于機(jī)器視覺的森林火災(zāi)識別系統(tǒng)[J].林業(yè)機(jī)械與木工設(shè)備,2020,48(12):12-20.
[6] 丁毓峰,徐鑫.基于POS-KELM的森林火災(zāi)圖像識別方法[J].數(shù)字制造科學(xué),2020,18(4):283-288.
[7] Wang Y B,Dang L F,Ren J Y.Forest fire image recognition based on convolutional neural network[J].Journal of Algorithms & Computational Technology,2019,13:174830261988768.
[8] 秦鈺林,周若麟,張珂欣,等.基于NB-IoT窄帶通信和多傳感器組網(wǎng)技術(shù)的森林火災(zāi)監(jiān)測預(yù)警系統(tǒng)[J].物聯(lián)網(wǎng)技術(shù),2020,10(6):14-16,19.
[9] 張海波,趙運(yùn)基,張新良.三通道擬合的改進(jìn)卷積神經(jīng)網(wǎng)絡(luò)林火識別算法[J].傳感器與微系統(tǒng),2020,39(11):134-136,140.
[10] 曹毅超,吳澤鵬,周宇飛,等.基于循環(huán)神經(jīng)網(wǎng)絡(luò)的森林火災(zāi)識別研究[J].林業(yè)與環(huán)境科學(xué),2020,36(5):34-40.
[11] Liu Z C,Zhang K,Wang C Y,et al.Research on the identification method for the forest fire based on deep learning[J].Optik,2020,223:165491.
[12] 韋海成,王生營,許亞杰,等.樣本熵融合聚類算法的森林火災(zāi)圖像識別研究[J].電子測量與儀器學(xué)報(bào),2020,34(1):171-177.
[13] Zhang J D,Xu J B,Zhu L Y,et al.An improved MobileNet-SSD algorithm for automatic defect detection on vehicle body paint[J].Multimedia Tools and Applications,2020,79(31/32):23367-23385.
[14] 陳燕紅.基于卷積神經(jīng)網(wǎng)絡(luò)的無人機(jī)森林火災(zāi)檢測研究[D].西安:西安理工大學(xué),2019.
[15] Chen T H,Wu P H,Chiou Y C.An early fire-detection method based on image processing[C]//2004 International Conference on Image Processing,2004.ICIP '04.October 24-27,2004,Singapore.IEEE,2004:1707-1710.
[16] Foggia P,Saggese A,Vento M.Real-time fire detection for video-surveillance applications using a combination of experts based on color,shape,and motion[J].IEEE Transactions on Circuits and Systems for Video Technology,2015,25(9):1545-1556.
[17] 傅天駒,鄭嫦娥,田野,等.復(fù)雜背景下基于深度卷積神經(jīng)網(wǎng)絡(luò)的森林火災(zāi)識別[J].計(jì)算機(jī)與現(xiàn)代化,2016(3):52-57.
[18] 張飛.基于卷積神經(jīng)網(wǎng)絡(luò)的林火識別[D].長沙:中南林業(yè)科技大學(xué),2019.
【通聯(lián)編輯:唐一東】