李浩,方偉泉,李浪浪,陳學(xué)永
(福建農(nóng)林大學(xué)機(jī)電工程學(xué)院,福州 350002)
松材線蟲(chóng)病被稱作“松樹(shù)的癌癥”,自入侵我國(guó)以來(lái)已在多個(gè)省份暴發(fā),造成了巨大的經(jīng)濟(jì)損失[1]。松材線蟲(chóng)主要以松褐天牛為中間宿主在林區(qū)中傳播,具有危害性強(qiáng)、防治難度高的特點(diǎn)[2]。健康松木在感染松材線蟲(chóng)后,會(huì)在1~2個(gè)月內(nèi)因樹(shù)株脫水而逐漸枯死,被感染后的松木需要及時(shí)發(fā)現(xiàn)并就地砍伐掩埋,防止進(jìn)一步擴(kuò)散到周邊松木。在廣袤林區(qū)內(nèi)及時(shí)、精準(zhǔn)、有效地實(shí)現(xiàn)對(duì)病害松木的監(jiān)測(cè),一直是林業(yè)病害防治工作中的重點(diǎn)[3]。
而在病害松木監(jiān)測(cè)方面,主要還是依靠護(hù)林人員的目測(cè)觀察和地面普查,該方式存在著時(shí)效性差和誤差較大的弊端,無(wú)法保證林區(qū)病害監(jiān)測(cè)的時(shí)效性與準(zhǔn)確性[4]。隨著機(jī)器學(xué)習(xí)與無(wú)人機(jī)技術(shù)的不斷發(fā)展,在林區(qū)病害監(jiān)測(cè)方面的科研工作也取得了一定的進(jìn)展,使得機(jī)器學(xué)習(xí)手段替代傳統(tǒng)人力勘察成為可能[5]。李衛(wèi)正等[6]利用小型無(wú)人機(jī)獲取病區(qū)遙感影像,并結(jié)合GeoLink軟件定位病害松木,該方法較傳統(tǒng)地面普查方法在成本和效率方面具有一定優(yōu)勢(shì)。張學(xué)敏[7]利用3種支持向量數(shù)據(jù)描述的方式對(duì)遙感影像中的病害松樹(shù)進(jìn)行識(shí)別,實(shí)現(xiàn)了無(wú)人機(jī)在可見(jiàn)光與紅外圖像條件下對(duì)病害松樹(shù)的分類識(shí)別。劉遐齡等[8]利用模板匹配法識(shí)別無(wú)人機(jī)遙感影像中的病害松木,并通過(guò)實(shí)地勘查方式證明了該方法在勘測(cè)效率和識(shí)別精度上均優(yōu)于傳統(tǒng)人工判讀方法。劉金滄等[9]利用CRF方法完成了對(duì)可見(jiàn)光遙感圖像中病害松木的高效判別,為小范圍病害精準(zhǔn)監(jiān)測(cè)工作提供了切實(shí)可行的技術(shù)手段。陶歡等[10]提出基于“色調(diào)-飽和度-明度”(HSV)的閾值分割法,證明其效果優(yōu)于RGB閾值分割法,有效提高了人工判讀的效率。隨著深度學(xué)習(xí)的出現(xiàn),YOLO、R-CNN、SSD等基于深度學(xué)習(xí)手段的目標(biāo)檢測(cè)算法逐漸在病害識(shí)別和目標(biāo)分類等領(lǐng)域大放異彩[11],深度學(xué)習(xí)技術(shù)也有效改善了傳統(tǒng)機(jī)器學(xué)習(xí)中廣泛存在的計(jì)算重復(fù)和效率低下的問(wèn)題。
針對(duì)當(dāng)下廣泛存在的遙感影像背景復(fù)雜、數(shù)據(jù)獲取處理難度高以及深度學(xué)習(xí)前期數(shù)據(jù)量較大的情況,筆者基于SSD、YOLO v3、Faster R-CNN深度學(xué)習(xí)目標(biāo)檢測(cè)算法,使用預(yù)訓(xùn)練模型調(diào)優(yōu)(fine-tuning)技術(shù)減少深度學(xué)習(xí)網(wǎng)絡(luò)前期數(shù)據(jù)量,引入深度殘差網(wǎng)絡(luò)(ResNet)代替VGG16以提高模型訓(xùn)練效率和識(shí)別精度,最終實(shí)現(xiàn)對(duì)林區(qū)遙感影像病害松木更加高效精準(zhǔn)的判別。
本次試驗(yàn)地點(diǎn)位于福建省東北部的建甌市,該地區(qū)屬于山區(qū)且交通不便,當(dāng)?shù)刂饕苑N植馬尾松(PinusmassonianaLamb)為主,屬于中亞熱帶海洋性季風(fēng)氣候,非常適合松材線蟲(chóng)病暴發(fā)蔓延,是福建省松材線蟲(chóng)病暴發(fā)的重點(diǎn)監(jiān)測(cè)區(qū)。為加強(qiáng)本試驗(yàn)的應(yīng)用性,本次采集樣張?jiān)囼?yàn)地點(diǎn)共3處,均是被當(dāng)?shù)亓謽I(yè)局確定的松材線蟲(chóng)病暴發(fā)集中區(qū)域。3個(gè)地區(qū)地理坐標(biāo)區(qū)間分別為27°3′0″~27°3′9″N,118°8′47″~118°25′38″E;27°0′50″~27°1′21″N,118°19′8″~118°19′38″E;27°14′39″ ~27°15′11″N,118°16′15″~118°16′45″E。病區(qū)森林總面積約為3 km2,林區(qū)中60%為松樹(shù),其余為毛竹以及少量桉樹(shù)。為確保試驗(yàn)后期對(duì)病害松木進(jìn)行有效驗(yàn)證,選用精靈Phantom 4 RTK無(wú)人機(jī),該機(jī)搭載像素2 000 萬(wàn)的F1.8鏡頭,型號(hào)為fc6310,像素尺寸為2.41 μm×2.41 μm。由Phantom 4 RTK所拍攝樣張中含有厘米級(jí)精度的GPS信息,后期可以實(shí)現(xiàn)對(duì)圖像中任意像素GPS信息的提取,從而實(shí)現(xiàn)對(duì)單株病害松木的精確定位。
本次工作數(shù)據(jù)采集時(shí)間為2019年8—11月,根據(jù)病害松木的病情進(jìn)展特點(diǎn),采樣期間以25 d為時(shí)間間隔進(jìn)行連續(xù)性圖像采集工作,在提高樣張基礎(chǔ)數(shù)據(jù)的同時(shí)進(jìn)一步增強(qiáng)網(wǎng)絡(luò)的范化性。工作時(shí)間設(shè)定在上午10:00—11:30,下午2:30—4:00,選擇晴朗無(wú)風(fēng)天氣,避免航拍過(guò)程受強(qiáng)風(fēng)以及過(guò)曝等因素干擾。本次工作拍攝原始圖像1 067張,樣張尺寸為5 472×3 648,因拍攝期間圖像間重疊度較高,剔除不相關(guān)背景圖像與多余重復(fù)圖像后剩余423張,再通過(guò)裁切、旋轉(zhuǎn)等操作增加321張,最終測(cè)試集單張尺寸為1 824×1 824,整體樣張數(shù)量為744張。按照病害進(jìn)展過(guò)程,松材線蟲(chóng)病理過(guò)程主要可以分為3個(gè)階段,如圖1所示。
注:a)針葉開(kāi)始變色,松木蒸騰作用下降;b)松木大部分針葉變成黃褐色甚至紅褐色,出現(xiàn)萎蔫;c)針葉大部分變成紅褐色,部分病死松木出現(xiàn)干枯褪色,部分針葉出現(xiàn)脫落。圖1 松木染病后各階段進(jìn)展Fig. 1 Progress in various stages after pine infection
針對(duì)林區(qū)中病害松木會(huì)在同一時(shí)期內(nèi)呈現(xiàn)不同程度病害的情況,利用標(biāo)記軟件labellmg對(duì)圖像中受到感染的病害松木進(jìn)行標(biāo)注,并將病害分為L(zhǎng)eve1 1、Leve1 2、Leve1 3共3種標(biāo)注策略,分別對(duì)應(yīng)感染輕度、重度、病死的松木,并按照整體3∶7的比例隨機(jī)將數(shù)據(jù)集分成測(cè)試集和訓(xùn)練集。圖像采集與數(shù)據(jù)標(biāo)注的整體流程如圖2所示。
圖2 試驗(yàn)區(qū)采集與數(shù)據(jù)集標(biāo)注Fig. 2 Test area collection and data set annotation
為保證標(biāo)記過(guò)程以及后期驗(yàn)證的準(zhǔn)確性,標(biāo)記分類過(guò)程也邀請(qǐng)福建省建甌市林業(yè)局相關(guān)專家進(jìn)行指導(dǎo),并對(duì)后期測(cè)試集準(zhǔn)確率進(jìn)行統(tǒng)計(jì),整體標(biāo)記數(shù)據(jù)如表1所示。
表1 病害松木標(biāo)注Table 1 Labeling of diseased pines
目前,基于深度學(xué)習(xí)的目標(biāo)檢測(cè)框架主要分為one-stage與two-stage兩類,基于two-stage的深度學(xué)習(xí)框架主要將檢測(cè)任務(wù)分為回歸(location)和分類任務(wù),如Fast R-CNN[12]、Faster R-CNN等,整體識(shí)別精度更高?;趏ne-stage的目標(biāo)檢測(cè)框架能夠同時(shí)完成檢測(cè)和回歸任務(wù), 如SSD、YOLO v3等,整體運(yùn)行速度相對(duì)較快。
Faster R-CNN是在Fast R-CNN的基礎(chǔ)上構(gòu)建區(qū)域預(yù)測(cè)網(wǎng)絡(luò)(RPN)并直接產(chǎn)生Region proposal來(lái)代替其他方法得到ROI,整體運(yùn)行速度相比R-CNN、Fast R-CNN得到巨大提升。YOLO v3[13]是在YOLO,YOLO v2基礎(chǔ)上對(duì)其缺點(diǎn)做出彌補(bǔ)與改進(jìn),顯著提升網(wǎng)絡(luò)的訓(xùn)練速度,可以實(shí)現(xiàn)任務(wù)的實(shí)時(shí)檢測(cè)。相比YOLO與R-CNN系列,SSD[14]則是同時(shí)借鑒了YOLO的網(wǎng)格化與Faster R-CNN的anchor機(jī)制,SSD在最后以及高層特征層處均產(chǎn)生經(jīng)過(guò)正負(fù)樣本篩選的anchor,整體上兼具了快速與準(zhǔn)確的識(shí)別特性。理論上,two-stage框架識(shí)別準(zhǔn)確率更高,在速率上處于弱勢(shì);one-stage框架運(yùn)行速度更快,但在識(shí)別精度上做出了一定的犧牲。綜合而言,對(duì)于不同的環(huán)境條件和不同任務(wù)對(duì)象,3種框架均有各自的優(yōu)劣。
在本次訓(xùn)練過(guò)程中,面對(duì)試驗(yàn)區(qū)較多,數(shù)據(jù)采集難度高、背景復(fù)雜、基礎(chǔ)數(shù)據(jù)相對(duì)較少的情況,使用fine-tuning來(lái)提高模型性能,即使用較大型數(shù)據(jù)量網(wǎng)絡(luò)中預(yù)訓(xùn)練好的模型參數(shù)初始化網(wǎng)絡(luò),可以顯著提升網(wǎng)絡(luò)訓(xùn)練的效率,節(jié)省訓(xùn)練時(shí)間,同時(shí)取得更好的識(shí)別精度[15]??紤]到本次工作主要用于輔助林場(chǎng)人員在后期實(shí)現(xiàn)對(duì)林區(qū)病害松木的判別和整體病情進(jìn)展監(jiān)測(cè),結(jié)合技術(shù)的實(shí)現(xiàn)成本和普及性,最終確定選用臺(tái)式計(jì)算機(jī)作為部署平臺(tái)。硬件主要信息如表2所示。
表2 計(jì)算機(jī)軟件硬件環(huán)境具體信息Table 2 Specific information of computer software and hardware environments
搭配好硬件與軟件平臺(tái)后,調(diào)整數(shù)據(jù)規(guī)模、設(shè)置訓(xùn)練參數(shù)對(duì)最終試驗(yàn)效果也有直接影響,要充分考慮訓(xùn)練模型的規(guī)模以及最終訓(xùn)練精度、訓(xùn)練速度之間的多重平衡。相同硬件條件下,模型規(guī)模較大的計(jì)算機(jī)訓(xùn)練速度變慢,嚴(yán)重影響訓(xùn)練進(jìn)程。在訓(xùn)練參數(shù)方面,batch-size、epochs、learning_rate的設(shè)定尤為重要。在訓(xùn)練過(guò)程中,batch-size的大小決定了單次訓(xùn)練迭代(epochs)時(shí)間和迭代(iteration)之間梯度的平滑程度,1個(gè)iteration等于使用batch-size個(gè)樣本訓(xùn)練1次;學(xué)習(xí)率(learning rate)的設(shè)置尤為重要,當(dāng)學(xué)習(xí)率設(shè)置過(guò)大或過(guò)小時(shí),會(huì)出現(xiàn)收斂過(guò)程異常緩慢甚至無(wú)法收斂的情況,最終導(dǎo)致試驗(yàn)失敗。結(jié)合試驗(yàn)環(huán)境、數(shù)據(jù)類型和各框架特性,最終試驗(yàn)參數(shù)設(shè)置見(jiàn)表3。
表3 各框架參數(shù)設(shè)置Table 3 Parameter settings of each frame
深度學(xué)習(xí)框架在訓(xùn)練過(guò)程中,損失函數(shù)與識(shí)別精度是評(píng)價(jià)模型準(zhǔn)確與效果的重要指標(biāo),其中,損失函數(shù)主要用于估計(jì)模型預(yù)測(cè)與實(shí)際之間的差別程度。損失函數(shù)是一個(gè)絕對(duì)值,損失函數(shù)的值越小,說(shuō)明該模型的擬合度越好。在本次試驗(yàn)中,SSD與Faster R-CNN框架選用網(wǎng)絡(luò)程度更深、運(yùn)算量更小的深度殘差網(wǎng)絡(luò)ResNet50[16]代替VGG16作為前置網(wǎng)絡(luò),并分別選用SmoothL1與CrossEntory;ObjLoss、BoxCenterLoss、BoxScaleLoss與ClassLoss進(jìn)行驗(yàn)證;YOLO v3則以darknet作為前置網(wǎng)絡(luò),選用ObjLoss、BoxCenterLoss、BoxScaleLoss以及ClassLoss進(jìn)行驗(yàn)證。作為機(jī)器學(xué)習(xí)中評(píng)價(jià)模型好壞的另一個(gè)指標(biāo),平均準(zhǔn)確率(mAP,公式中記為mAP)的數(shù)值也至關(guān)重要。mAP即平均AP(average precision,公式中記為AP)值,是對(duì)多個(gè)驗(yàn)證集求平均AP值,如式1所示:
(1)
式中:QR為驗(yàn)證集個(gè)數(shù);q為單個(gè)驗(yàn)證集。
處理過(guò)程的性能分析如圖3所示。從圖3中的運(yùn)行過(guò)程可以看到,YOLO v3、SSD、Faster R-CNN隨著迭代次數(shù)的不斷提升,損失函數(shù)曲線的數(shù)值也在逐漸降低,在經(jīng)過(guò)1 000次迭代訓(xùn)練之后,YOLO v3、SSD、Faster R-CNN的損失函數(shù)曲線都逐漸收斂并趨于平穩(wěn),驗(yàn)證了數(shù)據(jù)設(shè)置的合理性。在識(shí)別精度方面,整個(gè)訓(xùn)練過(guò)程中YOLO v3的震蕩最劇烈,SSD整體狀況居中,F(xiàn)aster R-CNN最出色,收斂情況較YOLO v3、SSD表現(xiàn)更好。通過(guò)對(duì)比,F(xiàn)aster R-CNN無(wú)論是在Level 1、Level 2、Level 3還是平均精度值上,均明顯優(yōu)于SSD與YOLO v3,在架構(gòu)上對(duì)識(shí)別精度做出一定犧牲的YOLO v3則表現(xiàn)最差。經(jīng)過(guò)統(tǒng)計(jì),最終結(jié)果如表4所示。
表4 各框架對(duì)不同病害程度松木識(shí)別效果Table 4 Recognition results of each frame on diseased pine with different degrees
圖3 各框架處理性能分析Fig. 3 Analysis of processing performance of each frame
憑借one-stage的架構(gòu)優(yōu)勢(shì),SSD與YOLO v3在圖像處理速度上的優(yōu)勢(shì)十分明顯,YOLO v3的處理速度是基于two-stage的Faster R-CNN的2.8倍,達(dá)到了7.40樣本/s,但是識(shí)別精度表現(xiàn)最差;Faster R-CNN處理速度為2.60樣本/s,相比于居中的SSD差距并不明顯?;趖wo-stage的Faster R-CNN在運(yùn)行速度上相比YOLO v3與SSD處于劣勢(shì),考慮到部署平臺(tái)并非無(wú)人機(jī),雖然整體運(yùn)行速度相對(duì)較慢,但結(jié)合Faster R-CNN在識(shí)別精度上展現(xiàn)出的巨大優(yōu)勢(shì),總體上依然是Faster R-CNN表現(xiàn)最佳。
在本次試驗(yàn)處理中,同一試驗(yàn)環(huán)境下分別使用Faster R-CNN、YOLO v3和SSD 3種主流目標(biāo)檢測(cè)框架,將標(biāo)記好的病害訓(xùn)練集進(jìn)行訓(xùn)練,并對(duì)最終的識(shí)別結(jié)果進(jìn)行分析對(duì)比,最終3種框架平臺(tái)的訓(xùn)練識(shí)別效果如圖4所示。
圖4 各框架最終識(shí)別效果Fig. 4 Final recognition results of each frame
由最終識(shí)別效果可知,在相同的試驗(yàn)環(huán)境下,基于one-stage架構(gòu)的YOLO v3最終識(shí)別效果最差,圖像中許多明顯已經(jīng)病死的松木都未能被成功識(shí)別,對(duì)松木病害程度的判定也出現(xiàn)了較為明顯的誤差;同樣基于one-stage架構(gòu)的SSD框架表現(xiàn)較好,能夠基本實(shí)現(xiàn)對(duì)病害松木的判別,但對(duì)于較為極端的情況,也存在對(duì)松木病害程度判別失準(zhǔn)的情況;相比而言,F(xiàn)aster R-CNN模型實(shí)現(xiàn)了對(duì)病死松木更加準(zhǔn)確的判別,對(duì)于病害松木存在不同程度病害的情況,檢測(cè)框也通過(guò)顏色和數(shù)值做出了詳細(xì)的分類,除了在個(gè)別樣張中存在錯(cuò)檢的情況,整體識(shí)別高效精準(zhǔn)。經(jīng)過(guò)最終識(shí)別與分析統(tǒng)計(jì),F(xiàn)aster R-CNN、YOLO v3和SSD的整體識(shí)別正確率如表5所示。
表5 各框架最終識(shí)別結(jié)果Table 5 Final recognition results of each frame
試驗(yàn)結(jié)果表明,在測(cè)試的3種目標(biāo)檢測(cè)框架中,F(xiàn)aster R-CNN識(shí)別效果最佳,在整體測(cè)試的樣本數(shù)量中正確率達(dá)到83.2%,相比SSD的66.2%以及YOLO v3的53.2%優(yōu)勢(shì)明顯。而從時(shí)間成本上考慮,利用深度學(xué)習(xí)框架對(duì)數(shù)據(jù)量較大的圖像進(jìn)行識(shí)別時(shí),相比傳統(tǒng)的人工標(biāo)記也具有明顯優(yōu)勢(shì),能夠更快更好地完成對(duì)林區(qū)病害的監(jiān)測(cè)。
從整體上看,基于ResNet網(wǎng)絡(luò)的Faster R-CNN目標(biāo)檢測(cè)框架對(duì)遙感影像中的病害松木做到了高效自動(dòng)識(shí)別,相比SSD以及YOLO v3的效果更好,對(duì)于遙感影像中容易出現(xiàn)的光線不均勻以及背景對(duì)比不明顯的情況能夠做到很好地克服,fine-tuning的加入使得在較少前期數(shù)據(jù)的情況也能達(dá)到較為理想的效果,高效快速地識(shí)別病害松木并判斷其病害程度。該方法可以替代傳統(tǒng)的人力勘測(cè)手段,滿足林區(qū)遙感影像病害識(shí)別工作的任務(wù)要求,也為相關(guān)工作的深入研究奠定了技術(shù)基礎(chǔ)。
對(duì)于識(shí)別過(guò)程中依然存在的個(gè)別誤判現(xiàn)象,綜合分析與圖像采集區(qū)域較為分散、背景環(huán)境過(guò)于復(fù)雜以及計(jì)算機(jī)性能有限有關(guān)。相對(duì)于其他研究大都使用同一研究區(qū)數(shù)據(jù)進(jìn)行測(cè)試和訓(xùn)練,本試驗(yàn)數(shù)據(jù)選自3個(gè)病害暴發(fā)區(qū),數(shù)據(jù)本身存在更多差異性,但結(jié)果更具適用性。同時(shí),計(jì)算機(jī)的性能相對(duì)有限也對(duì)最終試驗(yàn)結(jié)果有一定的影響。在后續(xù)可以著手于以下兩方面的研究:1)適當(dāng)提高樣張數(shù)據(jù)的圖像數(shù)量與質(zhì)量,如無(wú)人機(jī)搭載高光譜傳感器以獲取更高精度的影像資料,能夠?qū)崿F(xiàn)對(duì)病害死亡和正常死亡松木的精準(zhǔn)判別;2)采用更高性能、更強(qiáng)算力的計(jì)算平臺(tái)提高網(wǎng)絡(luò)的訓(xùn)練速度,徹底展現(xiàn)算法的能力,如設(shè)置更大的batch-size以取得更好的擬合效果。