冷天熙,錢發(fā)斌,胡文萍
(云南省林業(yè)調(diào)查規(guī)劃院,云南 昆明 650051)
經(jīng)過60多年的發(fā)展,我國森林資源監(jiān)測技術(shù)不斷進步,體系日臻完善。然而,隨著國際國內(nèi)形勢的深刻變化和林業(yè)現(xiàn)代化建設(shè)的深入推進,森林資源監(jiān)測工作面臨著前所未有的挑戰(zhàn)。監(jiān)測時效性、協(xié)同性差,現(xiàn)勢性弱,信息采集能力不足,信息服務(wù)水平不高的問題也日益顯現(xiàn)出來[1]。人工智能是研究、開發(fā)應(yīng)用于模擬人的智能理論、方法、技術(shù)及應(yīng)用系統(tǒng)的一門新的技術(shù)科學(xué)[2]。人工智能已成為繼自動化、電氣化和信息化之后新一輪工業(yè)革命的基石,人工智能不僅應(yīng)用在工業(yè)領(lǐng)域,還在教育、醫(yī)療和金融等領(lǐng)域得以運用,均是革命性的技術(shù)創(chuàng)新[3]。國家林業(yè)和草原局《關(guān)于促進林業(yè)和草原人工智能發(fā)展的指導(dǎo)意見》(林信發(fā)〔2019〕105號)中關(guān)于森林生態(tài)系統(tǒng)保護的主要任務(wù)為:通過接收衛(wèi)星影像并進行分析,跟蹤森林生態(tài)系統(tǒng)實時變化,運用機器視覺技術(shù)和深度學(xué)習(xí)算法,及時發(fā)現(xiàn)森林消長變化,進行動態(tài)監(jiān)測,有效評價森林生態(tài)健康狀況。
目前,我國森林資源監(jiān)測主要通過對衛(wèi)星影像進行人工判讀來發(fā)現(xiàn)森林資源變化圖斑,但人工判讀工作效率低且對判讀人員工作經(jīng)驗及技術(shù)水平要求較高。如何實現(xiàn)從海量的遙感影像中高效準(zhǔn)確地獲取森林資源變化數(shù)據(jù),成為森林資源監(jiān)測領(lǐng)域日益迫切的需求。為此,以云南省芒市為研究對象,利用2019年森林資源監(jiān)測成果數(shù)據(jù)及衛(wèi)星影像,結(jié)合人工智能深度學(xué)習(xí)方法,開展基于人工智能的衛(wèi)星影像分類研究,希望能夠為人工智能在森林資源監(jiān)測領(lǐng)域的深入開展提供借鑒和幫助。
收集芒市2019年衛(wèi)星影像及2019年林地一張圖成果,將全市衛(wèi)星影像裁剪成正方形面積為666.67 m2的影像。在裁剪出的影像中,每個地類隨機抽取 4 000 張圖片作為樣本使用自定義ResNet18網(wǎng)絡(luò)進行深度學(xué)習(xí)。因疏林地、苗圃地、未利用地等地類所占面積較少,本次只按林地、非林地、有林地、灌木林地、未成林地、耕地、建設(shè)用地共7個類別進行分類識別。
PyTorch是Facebook在深度學(xué)習(xí)框架Torch的基礎(chǔ)上使用Python重寫的一個全新的深度學(xué)習(xí)框架,PyTorch具有豐富的API,設(shè)計簡潔高效,本次采用PyTorch作為學(xué)習(xí)框架。
2.2.1深度學(xué)習(xí)
深度學(xué)習(xí)是機器學(xué)習(xí)的一個分支,而機器學(xué)習(xí)是實現(xiàn)人工智能的必經(jīng)路徑。深度學(xué)習(xí)通過組合低層特征形成更加抽象的高層表示屬性類別或特征,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示。研究深度學(xué)習(xí)的動機在于建立模擬人腦進行分析學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò),其模仿人腦的機制來解釋數(shù)據(jù),例如圖像,聲音和文本等[4]。深度學(xué)習(xí)模型有卷積神經(jīng)網(wǎng)絡(luò)( convolutional neural network,CNN)、循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural netword,RNN)等,近年來卷積神經(jīng)網(wǎng)絡(luò)在圖像識別領(lǐng)域得到廣泛應(yīng)用。在林業(yè)領(lǐng)域?qū)⒕矸e神經(jīng)網(wǎng)絡(luò)用于植物葉片病害檢測、害蟲識別、煙霧識別等方面已有較多研究及應(yīng)用。
2.2.2深度神經(jīng)網(wǎng)絡(luò)(ResNet)結(jié)構(gòu)
采用卷積神經(jīng)網(wǎng)絡(luò)中的深度神經(jīng)網(wǎng)絡(luò)(ResNet)結(jié)構(gòu),ResNet網(wǎng)絡(luò)結(jié)構(gòu)由華人何凱明提出,ResNet網(wǎng)絡(luò)增加短路機制形成殘差學(xué)習(xí)(圖1),一定程度上解決了傳統(tǒng)的卷積網(wǎng)絡(luò)在信息傳遞過程中可能因信息丟失而導(dǎo)致梯度消失或者梯度爆炸問題。ResNet在2015年獲得ImageNet分類任務(wù)第一名后,分類、檢測、分割等任務(wù)大規(guī)模使用ResNet作為網(wǎng)絡(luò)骨架。
圖1 ResNet塊示意圖
2.2.3模型及參數(shù)
本研究在深度學(xué)習(xí)時優(yōu)化器使用Adam,Adam是比較常見的優(yōu)化算法,其利用梯度的一階矩與二階矩動態(tài)地估計調(diào)整每一個參數(shù)的學(xué)習(xí)率,是一種學(xué)習(xí)率自適應(yīng)算法,可以使模型更快收斂。損失函數(shù)使用交叉熵( Cross Entropy Loss)函數(shù)。
自定義ResNet18網(wǎng)絡(luò)進行模型訓(xùn)練,網(wǎng)絡(luò)學(xué)習(xí)率為0.001,迭代次數(shù)(epoch)為50。ResNet18網(wǎng)絡(luò)中輸入數(shù)據(jù)的通道數(shù)(in_channel)為3,卷積核大小(kennel_size)為3,步長(stride)為1,填充值(paddnig)為1,自定義ResNet18網(wǎng)絡(luò)具體實現(xiàn)代碼如下:
class ResBlk(nn.Module):
def __init__(self,ch_in,ch_out,stride=1):
super(ResBlk,self).__init__()
self.conv1=nn.Conv2d(ch_in,ch_out,kernel_size=3,stride=stride,padding=1)
self.bn1=nn.BatchNorm2d(ch_out)
self.conv2=nn.Conv2d(ch_out,ch_out,kernel_size=3,stride=1,padding=1)
self.bn2=nn.BatchNorm2d(ch_out)
self.extra=nn.Sequential()
if ch_out != ch_in:
self.extra=nn.Sequential(
nn.Conv2d(ch_in,ch_out,kernel_size=1,stride=stride),
nn.BatchNorm2d(ch_out)
def forward(self,x):
out=F.relu(self.bn1(self.conv1(x)))
out=self.bn2(self.conv2(out))
out=self.extra(x)+ out
(4)加強噴混植生施工成本控制體系的研究。當(dāng)前噴混植生施工成本偏高,在市場競爭激烈的條件下,不利于該項技術(shù)的普及推廣,應(yīng)著力研究:施工材料購置成本的控制,施工工藝的降耗途徑,低養(yǎng)護成本的管理體系,噴混植生整體技術(shù)效益的監(jiān)控。通過上述研究和開發(fā),促使噴混植生形成成熟的成套技術(shù),為我國資源與環(huán)境保護科學(xué)的發(fā)展作出創(chuàng)新貢獻。
out=F.relu(out)
return out
class ResNet18(nn.Module):
def __init__(self,num_class):
super(ResNet18,self).__init__()
self.conv1=nn.Sequential(
nn.BatchNorm2d(16)
)
self.blk1=ResBlk(16,32,stride=3)
self.blk2=ResBlk(32,64,stride=3)
self.blk3=ResBlk(64,128,stride=2)
self.blk4=ResBlk(128,256,stride=2)
self.outlayer=nn.Linear(256*3*3,num_class)
def forward(self,x):
x=F.relu(self.conv1(x))
x=self.blk1(x)
x=self.blk2(x)
x=self.blk3(x)
x=self.blk4(x)
x=x.view(x.size(0),-1)
x=self.outlayer(x)
return x
將裁剪后的影像按有林地、灌木林地、未成林地及耕地、建設(shè)用地5個類別用自定義ResNet18模型進行深度學(xué)習(xí),并對學(xué)習(xí)結(jié)果進行驗證。實驗結(jié)果顯示:在模型訓(xùn)練過程中,當(dāng)所選樣本中10%用于模型訓(xùn)練,90%用于模型測試時,最高模型訓(xùn)練準(zhǔn)確率為 0.793 2(圖2)。
圖2 自定義ResNet18及遷移學(xué)習(xí)ResNet18的訓(xùn)練準(zhǔn)確率
隨著迭代次數(shù)增加,模型的損失值逐漸減小,收斂較好(圖3)。
當(dāng)所選樣本中60%用于模型訓(xùn)練,40%用于模型測試時,最好識別準(zhǔn)確率為0.8549。訓(xùn)練樣本越多,準(zhǔn)確率越高。
將裁剪后的影像分為林地、非林地、有林地、灌木林地、未成林地及耕地、建設(shè)用地7個類別。將7個類別分別兩兩使用自定義ResNet18模型進行深度學(xué)習(xí),其中10%用于模型訓(xùn)練,90%用于模型測試。結(jié)果顯示,針對各地類識別均有較高的準(zhǔn)確率,除灌木林地與未成林地、灌木林地與耕地,其余準(zhǔn)確率均大于0.9(表1)。
表1 地類間的分類識別準(zhǔn)確率
從研究結(jié)果看,基于深度學(xué)習(xí)的衛(wèi)星影像分類準(zhǔn)確且高效。林地與非林地分類識別準(zhǔn)確率高于93%,有林地與其它地類分類準(zhǔn)確率高于94%,其中有林地與建設(shè)用地分類準(zhǔn)確率高達(dá)99.58%,而準(zhǔn)確率最低的灌木林與未成林地的分類也接近80%,后續(xù)仍可通過增加樣本及調(diào)整參數(shù)、模型等方法進行提升。
森林資源監(jiān)測工作作為我國國情林情普查的重要組成部分,必須順應(yīng)新時代的發(fā)展要求,以創(chuàng)新發(fā)展為驅(qū)動,不斷加強監(jiān)測能力和服務(wù)能力建設(shè),不斷增強依法治林、科學(xué)興林的保障作用,為生態(tài)文明建設(shè)和經(jīng)濟社會發(fā)展做出更大貢獻[1]。隨著新一代人工智能技術(shù)不斷取得應(yīng)用突破,全球加速進入智慧化新時代,人工智能將成為未來第一生產(chǎn)力,對人類生產(chǎn)生活、社會組織和思想行為帶來顛覆性變革[5]。將人工智能應(yīng)用于森林資源監(jiān)測,將傳統(tǒng)的監(jiān)測數(shù)據(jù)及技術(shù)與人工智能相結(jié)合,建立快捷高效、準(zhǔn)確實用的森林資源監(jiān)測平臺顯得尤為必要。