陸清嶼,李秋潔,童岳凱,王明霞,袁鵬成
(南京林業(yè)大學(xué)機(jī)械電子工程學(xué)院,南京 210037)
行道樹資源調(diào)查是現(xiàn)代林業(yè)資源調(diào)查的重要工作,目前主要采用人工實(shí)測、抽樣調(diào)查的方法獲取行道樹樹種、科屬、胸徑、樹高、冠幅等參數(shù),工作量大,效率低下,不能及時準(zhǔn)確地反映行道樹動態(tài)變化情況[1],因此快速高效地獲取行道樹參數(shù)具有重要的理論意義和實(shí)踐價值。獲取行道樹參數(shù)的首要問題是如何快速從多樣化的城市道路中分割出行道樹。當(dāng)前行道樹信息采集方法主要有激光雷達(dá)掃描和圖像拍攝兩種[2-3],激光雷達(dá)作為一種主動遙感技術(shù),運(yùn)用激光波束掃描道路兩側(cè)地物信息獲得街道三維點(diǎn)云數(shù)據(jù),并對行道樹劃分網(wǎng)格索引[4-5],結(jié)合使用ICP、N-cut等算法,最終分割出行道樹[6-7]。圖像數(shù)據(jù)具有分辨率高、成本低、易獲取的特點(diǎn),并且可以更直觀地反映行道樹的色澤、紋理、樹種等特征,已有的樹木圖像分割方法主要采用傳統(tǒng)圖像處理方法,如運(yùn)用顏色的不連續(xù)性劃分、基于相似區(qū)域增長、基于小波變換、基于局部二值特征等[8-11]。這些方法存在一定的局限性,具體體現(xiàn)在:街道環(huán)境較為復(fù)雜,較難分辨樹林、草叢、灌木等與行道樹相似的地物,難以濾除房屋、路面、路燈、汽車、廣告牌等其他地物;行道樹存在樹冠相粘連的情況,在單木尺度上進(jìn)行行道樹分割也存在一定困難;空間位置和顏色屬于各圖像數(shù)據(jù)的底層固有特征,為實(shí)現(xiàn)精細(xì)分割應(yīng)提取更加復(fù)雜的特征,如樹冠結(jié)構(gòu)、紋理等。
深度學(xué)習(xí)是近年來不斷發(fā)展的新興學(xué)科,利用端到端的模型處理方式,在林業(yè)的樹種分類、森林預(yù)測、木材缺陷檢測等方面都有成功的應(yīng)用。目前行道樹分割模型的研究大多基于卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)模型,主要研究行道樹的目標(biāo)檢測問題,即預(yù)測行道樹的類別和邊界框,如張良[12]采用基于YOLO深度學(xué)習(xí)算法進(jìn)行分類以獲取行道樹的樹種和邊界框信息;喬蓮花等[13]將隨機(jī)森林模型與深度學(xué)習(xí)網(wǎng)絡(luò)結(jié)合提取行道樹的位置信息;沈雨等[14]基于Faster R-CNN提出一種分部加權(quán)策略實(shí)現(xiàn)行道樹的目標(biāo)檢測。綜合主流的目標(biāo)檢測網(wǎng)絡(luò),可提高算法的計(jì)算效率,如董彥鋒等[15]采用YOLO-v2網(wǎng)絡(luò)先完成目標(biāo)定位再做實(shí)例分割;姚英楠[16]利用Mobile NetV2替換RPN網(wǎng)絡(luò)等。
基于深度學(xué)習(xí)的行道樹目標(biāo)檢測算法僅輸出行道樹的分類和邊界框,無法解決有樹冠相連的行道樹分割問題,且無法提取行道樹的精確形狀。筆者基于深度學(xué)習(xí)的Mask R-CNN算法提出一種行道樹實(shí)例分割(instance segmentation)方法,即對于圖像的每個行道樹實(shí)例都產(chǎn)生與原圖相同大小的一層分割掩膜(mask),從而實(shí)現(xiàn)行道樹的精細(xì)分割。本方法通過遷移學(xué)習(xí)的策略共享模型參數(shù),并在行道樹圖像數(shù)據(jù)集上實(shí)現(xiàn)實(shí)例分割。
本研究提出的行道樹實(shí)例分割算法可分為數(shù)據(jù)集采集、數(shù)據(jù)集標(biāo)注、數(shù)據(jù)變換與擴(kuò)充、模型訓(xùn)練和檢測結(jié)果分析5個部分。其具體流程見圖1。
圖1 行道樹實(shí)例分割算法Fig. 1 Instance segmentation algorithm of street trees
Mask R-CNN算法在2018年由He等[17]首次提出,該算法以Faster R-CNN為基礎(chǔ),不僅能夠準(zhǔn)確分類目標(biāo)實(shí)例,輸出目標(biāo)邊界框,還能精細(xì)分割出實(shí)例的分割掩膜,該算法流程見圖2[18]。模型首先將原始圖像輸入主干CNN網(wǎng)絡(luò)提取特征,再將CNN輸出的特征向量和原圖一起輸入?yún)^(qū)域建議網(wǎng)絡(luò)(region proposal network,RPN)生成候選區(qū)域。RPN輸出的候選區(qū)域和對應(yīng)特征向量將會進(jìn)入感興趣區(qū)域(region of interest,RoI)對齊層,對齊層的輸出分成兩個分支,其中分類檢測分支經(jīng)過全連接層轉(zhuǎn)換后,對每個RoI區(qū)域輸出概率最高的類別,并預(yù)測邊界框。掩膜預(yù)測分支使用全卷積網(wǎng)絡(luò)(fully convolutional network,F(xiàn)CN)針對RoI區(qū)域?qū)γ總€分類都生成一幅二值掩膜圖,根據(jù)先前計(jì)算的分類輸出概率最高分類的二值掩膜,完成像素級分割。Mask R-CNN可用于多分類問題,本研究設(shè)置分類數(shù)量時僅采用兩個類別,即背景和行道樹。
圖2 Mask R-CNN算法Fig. 2 Mask R-CNN algorithm
Mask R-CNN算法針對實(shí)例分割問題,進(jìn)行了兩點(diǎn)改進(jìn)。
1)在RPN網(wǎng)絡(luò)中引入了特征金字塔網(wǎng)絡(luò)(feature pyramid network,F(xiàn)PN)[19],F(xiàn)PN對不同維度的特征圖進(jìn)行特征融合,以提升特征提取的效率。FPN的網(wǎng)絡(luò)結(jié)構(gòu)見圖3。FPN主要由3種不同路徑構(gòu)成,第1種為自底向上的降采樣過程(圖3①),該過程每次將特征圖的長寬縮小為前一層的一半,從而得到多種不同大小的語義特征;第2種為自頂向下的上采樣過程(圖3②),每層特征圖的長寬擴(kuò)大到前一層的2倍;第3種為橫向連接過程(圖3③),指的是第2種路徑在上采樣前會與第一種路徑中相同尺寸的區(qū)域進(jìn)行特征融合;融合后的結(jié)果采用3×3的卷積核進(jìn)行提取,最終輸出特征圖既有良好的空間信息又具有豐富的語義特征。
圖3 特征金字塔網(wǎng)絡(luò)Fig. 3 Feature pyramid network
2)在RoI對齊層引入雙線性插值算法,使后端網(wǎng)絡(luò)的掩膜分割結(jié)果更加精細(xì)準(zhǔn)確。雙線性插值算法和RoI對齊層的處理方法見圖4。雙線性插值是數(shù)值分析中的一種插值算法(圖4a),該算法主要用于解決坐標(biāo)為浮點(diǎn)數(shù)的像素點(diǎn)數(shù)值的計(jì)算問題。其原理[20]簡述如下。
設(shè)待插值節(jié)點(diǎn)為P(x,y),其周圍的整數(shù)坐標(biāo)節(jié)點(diǎn)分別為M11(x1,y1)、M12(x1,y2)、M21(x2,y1)、M22(x2,y2),中間節(jié)點(diǎn)坐標(biāo)分別為N1(x,y1)、N2(x,y2),各點(diǎn)處的像素值用f(·)表示。先對x方向進(jìn)行線性插值:
(1)
(2)
再對y方向進(jìn)行線性插值:
(3)
對特征區(qū)域的每個候選單元,利用上述的雙線性插值算法計(jì)算4個固定坐標(biāo)像素值,再進(jìn)行最大池化操作(圖4b),得到RoI對齊層的輸出。
圖4 RoI對齊層Fig. 4 RoI align layer
訓(xùn)練深度學(xué)習(xí)模型需要巨大的計(jì)算資源或使用龐大的數(shù)據(jù)集,在樣本量過小時模型難以收斂,也無法具備很好的檢測能力。為解決行道樹圖像數(shù)據(jù)集規(guī)模較小的問題,模型初始化時采用遷移學(xué)習(xí)的策略,將大型圖片數(shù)據(jù)集中已經(jīng)預(yù)訓(xùn)練好的網(wǎng)絡(luò)參數(shù)遷移到圖像數(shù)據(jù)集的Mask R-CNN模型上來,這樣模型已經(jīng)具有了一定的特征提取能力,方便模型快速收斂。
本研究采用COCO圖像數(shù)據(jù)集來進(jìn)行模型預(yù)訓(xùn)練,它是由微軟公司在2014年創(chuàng)建的一個權(quán)威性的用于目標(biāo)檢測的大型圖像數(shù)據(jù)集,包括91類目標(biāo)、328 000幅圖像和約2 500 000個圖像掩膜標(biāo)注。
模型訓(xùn)練時采取多任務(wù)損失函數(shù)來計(jì)算損失,計(jì)算公式為:
L=Lcls+Lbox+Lmask
(4)
式中:Lcls為分類損失,指的是RPN在預(yù)測錨點(diǎn)時分類是否正確的二分類平均交叉熵?fù)p失;Lbox為邊界框的回歸損失,指的是每個邊界框結(jié)果與真實(shí)邊界框之間各個偏移量之和的平均交叉熵?fù)p失;Lmask為將每個RoI區(qū)域的掩膜與真值掩膜進(jìn)行各像素比較,并將結(jié)果經(jīng)過sigmoid函數(shù),最后計(jì)算平均交叉熵?fù)p失。
采用平均交并比(mean intersection of union,mIoU)、平均查準(zhǔn)率(average precision,AP)、平均查全率(average recall,AR)3個指標(biāo)對模型檢測結(jié)果進(jìn)行評價。交并比rIoU用于衡量檢測結(jié)果掩膜與真值掩膜之間的重疊程度,即:
(5)
式中:Ωtr為檢測結(jié)果掩膜;Ωgt為真值掩膜;SΩtr∩Ωgt為兩掩膜相交的部分面積;SΩtr∪Ωgt為兩掩膜所占有的所有面積。rIoU值越接近1,說明檢測結(jié)果掩膜與真值掩膜越接近,實(shí)例分割的效果越好。
查準(zhǔn)率指標(biāo)rap為正確識別出的行道樹數(shù)量與總識別出的行道樹數(shù)量之比,計(jì)算方法如下:
(6)
式中:ntp為正確識別出的行道樹數(shù)量;nfn為錯將背景識別成行道樹的數(shù)量。
查全率指標(biāo)rar為正確識別出的行道樹數(shù)量與真實(shí)的行道樹總數(shù)量之比,計(jì)算方法如下:
(7)
式中,ntn為未檢測出的行道樹數(shù)量。
根據(jù)行道樹實(shí)例分割方法,實(shí)驗(yàn)圖像數(shù)據(jù)集采用華為榮耀V30手機(jī)拍攝,共741張,每張圖像為jpg格式,尺寸是2 976×3 968像素,均為RGB三通道,拍攝地點(diǎn)在南京林業(yè)大學(xué)、南京玄武湖、江蘇鹽城大豐區(qū)南陽鎮(zhèn)附近;道路種類包含城市道路、鄉(xiāng)村道路、景區(qū)道路;樹種可分為常綠樹和落葉樹,落葉樹包括柳(Salix)、銀杏(Ginkgobiloba)、懸鈴木(Platanus)等,常綠樹包括香樟(Cinnamomumcamphora)、廣玉蘭(Magnoliagrandiflora)、棕櫚(Trachycarpusfortunei)等。圖像數(shù)據(jù)集共含行道樹1 028棵,各樹種圖片及樹木數(shù)量如表1所示。
表1 樹種圖片及樹木數(shù)量Table 1 Number of images and trees of different tree species
獲取行道樹圖像數(shù)據(jù)后,需對數(shù)據(jù)進(jìn)行標(biāo)注。實(shí)驗(yàn)采用開源圖像標(biāo)注軟件VGG Image Annotator(VIA)對行道樹圖像進(jìn)行人工標(biāo)注。標(biāo)注時,沿著行道樹樹冠和樹干邊緣取點(diǎn)組成一個多邊形,就完成了一棵行道樹的輪廓標(biāo)注。將標(biāo)注中的多邊形以頂點(diǎn)的形式保存,然后對每一棵標(biāo)注的行道樹建立一張與原圖像數(shù)據(jù)相同尺寸的圖像文件,將該文件中所有在行道樹輪廓內(nèi)的像素點(diǎn)設(shè)為白色,其他像素點(diǎn)設(shè)為黑色,按此方法構(gòu)造的圖像標(biāo)注即為掩膜。該軟件的在線版本標(biāo)注界面見圖5a,標(biāo)注后提取的掩膜文件示例見圖5b。
圖5 軟件標(biāo)注界面與生成的掩膜Fig. 5 Annotation software interface and generated masks
為保證圖像數(shù)據(jù)尺寸相同,本實(shí)驗(yàn)調(diào)整行道樹數(shù)據(jù)集的圖像文件和掩膜文件尺寸均為512×512×3。尺寸統(tǒng)一后帶掩膜的圖像數(shù)據(jù)文件見圖6。為擴(kuò)充樣本數(shù)量,緩解過擬合,對加入訓(xùn)練的圖像數(shù)據(jù)集采取水平翻轉(zhuǎn)的擴(kuò)充措施。
圖6 帶掩膜的圖像形成過程Fig. 6 Combination of images and masks
本實(shí)驗(yàn)數(shù)據(jù)經(jīng)預(yù)處理后,得到的圖像數(shù)據(jù)集圖片總數(shù)為1 482張。對圖像順序隨機(jī)打亂,并按6∶2∶2的比例進(jìn)行數(shù)據(jù)集劃分,劃分出894張作為訓(xùn)練集,294張作為驗(yàn)證集,294張行道樹圖像用于檢測。
實(shí)驗(yàn)使用的深度學(xué)習(xí)模型是Matterport開發(fā)的Mask R-CNN開源代碼,采用的基礎(chǔ)神經(jīng)網(wǎng)絡(luò)模型是Resnet-101殘差卷積網(wǎng)絡(luò)模型,在深腦鏈公司提供的GPU硬件平臺上進(jìn)行訓(xùn)練。實(shí)驗(yàn)平臺配置如表2所示。
表2 實(shí)驗(yàn)平臺配置Table 2 Experiment platform configuration
實(shí)驗(yàn)使用的模型配置參數(shù)如表3所示。
表3 模型參數(shù)配置Table 3 Model configuration parameters
對行道樹數(shù)據(jù)集的訓(xùn)練包括兩個階段:1)對除主干CNN以外的其他網(wǎng)絡(luò)訓(xùn)練,包括RPN、FCN、RoI對齊層和全連接層。這些網(wǎng)絡(luò)是隨機(jī)初始化的,先以0.001的學(xué)習(xí)率訓(xùn)練迭代20輪,每輪1 000次;2)對所有網(wǎng)絡(luò)微調(diào)。以0.000 1的學(xué)習(xí)率對所有網(wǎng)絡(luò)進(jìn)行微調(diào)訓(xùn)練迭代20輪,每輪1 000次,使網(wǎng)絡(luò)充分收斂,具備對行道樹實(shí)例分割能力。網(wǎng)絡(luò)訓(xùn)練過程中L1損失下降的情況見圖7。從圖中可看出,模型損失下降速度很快,約30輪后趨于收斂。
圖7 損失下降曲線Fig. 7 Loss reduction curve
測試集共使用294張圖片進(jìn)行檢測,并通過對比真值掩膜,計(jì)算相關(guān)評價指標(biāo)。實(shí)驗(yàn)中認(rèn)為,真值掩膜與檢測掩膜的rIoU≥0.5時,識別結(jié)果是正確的。部分代表性的檢測結(jié)果見圖8,相關(guān)評價指標(biāo)計(jì)算結(jié)果見表4。
表4 模型性能評價Table 4 Model performance assessment %
圖8 模型檢測結(jié)果Fig. 8 Detection results
對實(shí)驗(yàn)結(jié)果進(jìn)行分析,可得出以下結(jié)論:
1)檢測出的行道樹掩膜與真實(shí)行道樹掩膜的平均交并比指標(biāo)約為80%,能較好地實(shí)現(xiàn)行道樹輪廓的精細(xì)分割。對于樹冠枝葉相對密集、形狀規(guī)則的行道樹(如香樟、懸鈴木、銀杏等),樹冠輪廓的分割結(jié)果相對完整(圖8a、b、c、i、j);當(dāng)行道樹樹冠較稀疏且生長不規(guī)則時(如柳、櫟樹、烏桕、棕櫚等),樹冠的邊緣部分輪廓檢測不夠精確(圖8h、k、l、m)。
2)行道樹圖像的平均查準(zhǔn)率幾乎都能達(dá)到95%以上,對無粘連或粘連較小的多棵行道樹,能夠?qū)崿F(xiàn)精細(xì)分割(圖8b、f、i、n);模型將行道樹與路燈(圖8a)、草地(圖8j)、河流(圖8g)、建筑(圖8e)、行人(圖8l)、車輛(圖8i)等復(fù)雜地物進(jìn)行了有效分離;樹干部分的識別方面,若樹干部分拍攝光線較暗(圖8i)、涂白色石灰乳(圖8c、j)、與河流、草叢地物重合(圖8b、g)時,樹干會出現(xiàn)識別不完整的情況;當(dāng)樹干較粗、相機(jī)到樹木距離較近時,識別相對清晰(圖8d、m)。
3)行道樹圖像的平均查全率均超過95%,說明對不同樹種的行道樹,模型都能識別出來。當(dāng)只有不到一半的樹冠部分出現(xiàn)在圖像中時(圖8o),或行道樹在圖像中所占面積較小,或電線桿與樹木重疊時(圖p),可能存在漏檢情況。
4)檢測一張圖像平均消耗時間為0.476 s,由于行道樹參數(shù)檢測的實(shí)時性需求不高,因此該檢測效率可滿足行道樹資源調(diào)查的需要。
本研究針對行道樹實(shí)例分割問題,基于Mask R-CNN深度學(xué)習(xí)算法,提出一種行道樹圖像實(shí)例分割的策略,先對不同樹種的行道樹圖像進(jìn)行采集標(biāo)注,接著進(jìn)行圖像變換擴(kuò)充,最后訓(xùn)練行道樹實(shí)例分割模型。本方法利用遷移學(xué)習(xí)的思想,將COCO圖片數(shù)據(jù)集預(yù)訓(xùn)練的網(wǎng)絡(luò)參數(shù)遷移到行道樹實(shí)例分割模型上,并在此基礎(chǔ)上進(jìn)行微調(diào)。實(shí)驗(yàn)中采集了多個不同樹種的行道樹圖像,經(jīng)預(yù)處理得到1 482張的行道樹圖像數(shù)據(jù)集,模型訓(xùn)練好后在294張圖像上進(jìn)行測試,并對不同樹種的測試結(jié)果進(jìn)行對比分析。根據(jù)檢測結(jié)果及評價指標(biāo),平均交并比約80%,平均查準(zhǔn)率和查全率均達(dá)到95%,說明模型精度較高,能有效分割出行道樹輪廓;相比傳統(tǒng)方法,該模型不容易受到相近顏色、光照強(qiáng)度、照片亮度、對比度等影響,在不同樹種的行道樹圖片數(shù)據(jù)集上有較強(qiáng)的泛化能力;模型檢測速度大致為0.476 s/張。今后的工作準(zhǔn)備在以下方面進(jìn)行改進(jìn):為解決Mask R-CNN實(shí)時性不足的問題,可綜合主流的目標(biāo)檢測網(wǎng)絡(luò),以減少M(fèi)ask R-CNN模型的運(yùn)行時間;通過優(yōu)化網(wǎng)絡(luò)結(jié)構(gòu)和行道樹圖像數(shù)據(jù)集質(zhì)量,增強(qiáng)樹干部分和樹冠輪廓等細(xì)節(jié)的分割完整性。