馬 欽 萬傳峰 衛(wèi) 建 汪瑋韜 吳才聰
(1.中國農(nóng)業(yè)大學(xué)信息與電氣工程學(xué)院, 北京 100083; 2.農(nóng)業(yè)農(nóng)村部農(nóng)機(jī)作業(yè)監(jiān)測與大數(shù)據(jù)應(yīng)用重點(diǎn)實驗室, 北京 100083)
保護(hù)性耕作是東北黑土地保護(hù)利用的有效途徑[1],其中包括秸稈深埋還田、覆蓋還田等方式,統(tǒng)稱為秸稈還田[2]。秸稈還田是一種保護(hù)水土肥力的重要措施,不但可以減少秸稈焚燒帶來的環(huán)境污染以及資源的浪費(fèi),對于改善土壤結(jié)構(gòu)、保留土壤水分、增加土壤養(yǎng)分起到重要作用[3]。
秸稈覆蓋率是評價免耕還田程度的一個重要指標(biāo),但是傳統(tǒng)秸稈覆蓋人工統(tǒng)計方法如拉繩法、采樣法、目測法需要消耗更多的人力物力且效率低,更容易受主觀因素的影響。圖像處理方法和機(jī)器學(xué)習(xí)算法可以實現(xiàn)秸稈檢測及其覆蓋率計算。文獻(xiàn)[4]提出一種基于多閾值的多目標(biāo)秸稈圖像自動分割優(yōu)化算法(DE-AS-MOGWO),提高了圖像分割的準(zhǔn)確性和處理速度。文獻(xiàn)[5]采用神經(jīng)網(wǎng)絡(luò)和紋理特征結(jié)合的方式提取秸稈,方法耗時較長,無法滿足實際作業(yè)需求。文獻(xiàn)[6]提出了一種隨機(jī)決策森林算法對土壤中的殘留物進(jìn)行分類,使用簡單的像素比較和具有訓(xùn)練偏移量的鄰近像素對單個像素進(jìn)行分類。文獻(xiàn)[7]將快速傅里葉變換和SVM相結(jié)合對秸稈圖像進(jìn)行識別,設(shè)計多尺度占比濾波器,對圖像中的噪聲和空洞進(jìn)行修補(bǔ),算法適用于多種情況。文獻(xiàn)[8]提出一種Sauvola和Otsu算法相結(jié)合的方式進(jìn)行圖像的閾值分割來檢測秸稈覆蓋率,對于干擾因素較多的區(qū)域檢測效果不理想。文獻(xiàn)[9]通過K-means聚類和秸稈圖像分區(qū)尋優(yōu)方法結(jié)合進(jìn)行圖像分割,為秸稈覆蓋率在線計算提供一種新方法。文獻(xiàn)[10]依據(jù)圖像行平均灰度標(biāo)準(zhǔn)差對圖像進(jìn)行分類,針對有秸稈圖像進(jìn)行分塊,使用Otsu閾值分割計算秸稈覆蓋率,提高檢測方法的適用性。但是傳統(tǒng)閾值分割方法受背景因素、光線因素、陰影等噪聲的影響較大,曬干的秸稈顏色和土壤相近,難于區(qū)分秸稈和土壤。農(nóng)田秸稈形態(tài)多樣,對于分散的細(xì)碎秸稈識別困難。隨著深度學(xué)習(xí)的發(fā)展,圖像語義分割技術(shù)已經(jīng)成為當(dāng)下的研究熱點(diǎn),語義分割是圖像在像素級別的分類操作。目前,語義分割技術(shù)主要應(yīng)用在遙感圖像[11-12]、自動駕駛[13-14]、醫(yī)學(xué)影像[15]等領(lǐng)域。文獻(xiàn)[16-17]利用遙感圖像進(jìn)行秸稈檢測,標(biāo)準(zhǔn)誤差分別為4.846%和8.46%。文獻(xiàn)[18]利用低空無人機(jī)獲得現(xiàn)場圖像,用改進(jìn)的U-Net(ResNet18-U-Net)建立語義分割算法進(jìn)行覆蓋率檢測。文獻(xiàn)[19-20]基于語義分割的DSRA-UNet算法檢測秸稈覆蓋率,一定程度上能解決圖像中的陰影問題。但是無人機(jī)航拍圖像數(shù)據(jù)需要單獨(dú)采集,無法和農(nóng)機(jī)播種的其他作業(yè)環(huán)節(jié)相結(jié)合。
針對田間秸稈細(xì)碎分散、形態(tài)多樣、秸稈和土壤受光照影響難以區(qū)分等難點(diǎn),本文使用車載相機(jī)采集秸稈圖像數(shù)據(jù),對復(fù)雜秸稈圖像進(jìn)行圖像預(yù)處理,篩選有效識別區(qū)域,以U-Net網(wǎng)絡(luò)和特征圖金字塔網(wǎng)絡(luò)作為基礎(chǔ)結(jié)構(gòu)進(jìn)行改進(jìn),以提高細(xì)碎分散秸稈和陰影區(qū)域秸稈的識別能力。
秸稈覆蓋率檢測主要采用計算機(jī)視覺的方法,通過車載相機(jī)設(shè)備采集農(nóng)田秸稈圖像數(shù)據(jù)集。結(jié)合農(nóng)田秸稈形狀多樣的特點(diǎn),針對農(nóng)田場景有逆光或光照遮擋導(dǎo)致的陰影問題,先對秸稈圖像進(jìn)行圖像裁剪,獲取相機(jī)拍攝的正前方有效區(qū)域,去除農(nóng)田外的干擾背景后進(jìn)行圖像投影變換,減少相機(jī)拍攝時產(chǎn)生的透視畸變。使用Labelme標(biāo)注得到真值,使用數(shù)據(jù)增強(qiáng)技術(shù)進(jìn)行數(shù)據(jù)集擴(kuò)充。在模型設(shè)計階段為了提高秸稈在復(fù)雜場景下的提取能力,使用ResNet34加深模型的網(wǎng)絡(luò)層數(shù);在模型層數(shù)增加的情況下為了避免產(chǎn)生網(wǎng)絡(luò)梯度消失現(xiàn)象,在模型中加入殘差結(jié)構(gòu);同時使用改進(jìn)的特征金字塔網(wǎng)絡(luò)和多分支非對稱空洞卷積塊,利用不同的感受野,增加不同形狀尺寸秸稈和細(xì)碎秸稈的提取能力;最后用快速上卷積進(jìn)行特征圖上采樣,避免網(wǎng)絡(luò)上采樣過程中出現(xiàn)過多的無效數(shù)據(jù)。由網(wǎng)絡(luò)模型輸出得到預(yù)測圖,結(jié)合手動標(biāo)注的真值圖像,使用平均交并比、像素準(zhǔn)確率和運(yùn)行時間等指標(biāo)進(jìn)行模型評估。檢測流程如圖1所示。
圖1 秸稈檢測流程圖Fig.1 Flow chart of straw detection
由于免耕播種有作業(yè)補(bǔ)貼,需要進(jìn)行作業(yè)面積監(jiān)測,同時無人機(jī)采集數(shù)據(jù)要單獨(dú)作業(yè),難以區(qū)分農(nóng)田的邊界和識別地塊歸屬,所以選擇在播種機(jī)作業(yè)時,使用播種監(jiān)控設(shè)備上的攝像頭進(jìn)行秸稈圖像數(shù)據(jù)的采集。本文所用秸稈圖像數(shù)據(jù)為2020年5月采集于黑龍江省齊齊哈爾市龍江縣,由北京德邦大為科技股份有限公司的車載監(jiān)控設(shè)備采集得到,所用農(nóng)機(jī)為DEBONT2BMG-2型播種機(jī),監(jiān)控設(shè)備包括顯控終端、北斗定位終端、紅外補(bǔ)光攝像頭等,使用前后雙攝像頭拍攝,后攝像頭主要監(jiān)控作業(yè)情況,需要拍攝到農(nóng)具,前攝像頭拍攝范圍為車前20 m以上,圖像分辨率為640像素×480像素。從13塊作業(yè)田塊中選取200幅有效圖像進(jìn)行試驗,訓(xùn)練集和驗證集共150幅,測試集圖像50幅。通過圖像翻轉(zhuǎn)、縮放、對比度增強(qiáng)等數(shù)據(jù)增強(qiáng)技術(shù)將訓(xùn)練集和驗證集圖像共擴(kuò)增到1 250幅圖像,其中訓(xùn)練集圖像為1 000幅,驗證集圖像250幅。圖2所示為不同覆蓋等級下的秸稈圖像數(shù)據(jù),由圖2e可知,田間的細(xì)小秸稈較多時,秸稈之間會有空隙(放大圖中的橢圓框區(qū)域),這些像素點(diǎn)對應(yīng)的是土壤,在進(jìn)行秸稈檢測時容易識別成秸稈區(qū)域,給秸稈覆蓋度檢測帶來困難。
圖2 不同覆蓋等級的秸稈拍攝圖像Fig.2 Shooting images of straws with different mulching levels
由于不同農(nóng)機(jī)相機(jī)安裝位置、角度不同,導(dǎo)致圖像拍攝視角產(chǎn)生差異,會有天空、房屋、樹林等其他干擾背景存在,在圖像預(yù)處理階段,人工判定田塊區(qū)域占整幅圖像區(qū)域3/4以上為有效圖像,并以此標(biāo)準(zhǔn)進(jìn)行圖像裁剪,去除天空區(qū)域。先使用圖像行像素和的方式查找有效區(qū)域,天空區(qū)域?qū)?yīng)的像素灰度大部分為230~250,田內(nèi)土壤的像素灰度大部分在150以下,兩者差異較大。根據(jù)圖像的行像素和變化規(guī)律可知,一般情況下,水平分界線從天空區(qū)域到田內(nèi)的過程中,行像素灰度總和逐漸減少,當(dāng)有樹林等其他干擾因素時,行像素和局部上升,臨近分界線時像素和快速減少,因此圖像的像素行數(shù)在[0,120]范圍內(nèi),判斷田內(nèi)和田外分界處的一個條件就是當(dāng)行像素灰度和連續(xù)下降且下降的差值最大時,對應(yīng)的水平線位置就是分界處,結(jié)果如圖3a~3c黃線所示,分界線識別流程如圖4所示。
圖3 圖像裁剪過程Fig.3 Process of image cropping
圖4 分界線識別流程圖Fig.4 Flow chart of dividing line recognition
由圖3e可知分界線位置(紅色虛線),計算分界線下方區(qū)域的高與圖像高的比例,對圖像的寬進(jìn)行等比例裁剪見圖3h,最后將裁剪圖縮到原尺寸得到結(jié)果圖。
車載相機(jī)在采集圖像數(shù)據(jù)時,秸稈圖像存在近大遠(yuǎn)小的透視畸變,為了改善這種情況,文中采用圖像透視變換[21]進(jìn)行處理,如圖5所示,可以在一定程度上減小誤差,投影變換公式為
圖5 圖像投影變換結(jié)果Fig.5 Result of image projective transformation
(1)
式中T——轉(zhuǎn)換矩陣
(u、v)——圖像像素坐標(biāo)
(x、y)——轉(zhuǎn)換之后歸一化的圖像坐標(biāo)
(x′、y′、z′)——轉(zhuǎn)換后未歸一化的圖像坐標(biāo)
圖像行灰度和檢測到的有效區(qū)域圖像,進(jìn)行人工標(biāo)注,生成標(biāo)注圖像作為真值,來評估語義分割模型的性能。使用Labelme標(biāo)注工具,將圖像分為土壤、秸稈兩類,標(biāo)簽圖中黑色表示土壤,紅色表示秸稈。將圖像中的物體按照不同的類別分別圈選并做好標(biāo)記,用Python腳本語言生成標(biāo)注圖,結(jié)果如圖6所示。
圖6 圖像標(biāo)注結(jié)果Fig.6 Result of image annotation
U-Net網(wǎng)絡(luò)是一種有編碼器和解碼器結(jié)構(gòu)的網(wǎng)絡(luò),通過跳躍連接將編碼器階段的特征圖和解碼器階段的特征圖信息進(jìn)行融合。本文基于U-Net和FPN提出新的網(wǎng)絡(luò)結(jié)構(gòu),如圖7所示,其中特征圖下方標(biāo)注了該特征的尺寸和通道數(shù)。
圖7 改進(jìn)U-Net + FPN算法網(wǎng)絡(luò)架構(gòu)Fig.7 Network architecture of U-Net + FPN algorithm
網(wǎng)絡(luò)模型包含特征編碼器模塊、最高語義信息層特征提取模塊和特征解碼器模塊。編碼階段采用ResNet34的前4層網(wǎng)絡(luò)結(jié)構(gòu),先進(jìn)行卷積核尺寸為7×7的卷積和池化核為2×2的最大池化,然后通過多層串聯(lián)的殘差網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行4次特征提取。最高語義信息層特征提取模塊在密集空洞卷積[22]的基礎(chǔ)上提出多分支非對稱空洞卷積塊(Multibranch asymmetric dilated convolutional block,MADC Block),使用多個分支的非對稱空洞卷積對特征圖進(jìn)行不同尺度的信息提取。特征解碼模塊使用快速上卷積塊代替普通上采樣進(jìn)行位置信息的恢復(fù),同時用跳躍連接獲取編碼階段同一層級的特征信息。跳躍連接中對編碼階段的特征信息通過密集特征金字塔網(wǎng)絡(luò)(Dense feature pyramid networks,DFPN)模塊獲取不同尺度的特征圖信息,前3次跳躍連接的DFPN模塊之后使用標(biāo)準(zhǔn)殘差塊保持網(wǎng)絡(luò)的收斂性,避免網(wǎng)絡(luò)訓(xùn)練過程中的梯度消失現(xiàn)象。經(jīng)過4次上采樣得到的特征圖通過殘差塊運(yùn)算后與第4次跳躍連接得到的特征圖進(jìn)行融合,最后進(jìn)行1次反卷積得到與輸入圖像相同尺寸的結(jié)果圖。
FCN網(wǎng)絡(luò)模型[23]提出了編碼-解碼結(jié)構(gòu),用卷積層替換傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)最后的全連接層,使用跳躍連接進(jìn)行特征融合,擺脫了輸入圖像尺寸的限制。在FCN之后,同樣使用編碼-解碼結(jié)構(gòu)的U-Net[24]和SegNet[25]網(wǎng)絡(luò)在此基礎(chǔ)上進(jìn)行了相應(yīng)的改進(jìn)。編碼-解碼結(jié)構(gòu)主要是在網(wǎng)絡(luò)中包含一個編碼器模塊和一個解碼器模塊,編碼器模塊主要負(fù)責(zé)圖像的特征提取,圖像從空間信息轉(zhuǎn)換到深層的語義類別信息,并記錄每一個類別像素點(diǎn)的位置;解碼模塊對編碼塊輸出的信息進(jìn)一步優(yōu)化,根據(jù)像素點(diǎn)的類別信息和位置信息進(jìn)行復(fù)原,并將特征圖放大到原輸入圖像的尺寸。
MADC模塊根據(jù)空洞卷積[26-27]思想,加入非對稱空洞卷積(Asymmetric dilated convolution,ADC)進(jìn)行秸稈信息識別,目的是為了擴(kuò)大感受野同時,不降低圖像分辨率且不引入額外參數(shù)量,非對稱結(jié)構(gòu)在不改變感受野的條件下,增強(qiáng)秸稈邊緣關(guān)鍵點(diǎn)提取能力,提升對秸稈圖像識別的魯棒性。結(jié)合Inception[28-29]結(jié)構(gòu)思想進(jìn)行多尺度不同感受野的秸稈信息的獲取,在增加網(wǎng)絡(luò)寬度和深度的同時減少參數(shù)量,如圖8所示,大感受野更好地提取大片覆蓋秸稈信息并生成更抽象的特征,小感受野可以更好地提取小范圍細(xì)碎秸稈信息。模塊共有5個分支,第1個分支使用3×3卷積核,設(shè)置擴(kuò)張率為1;第2個分支使用擴(kuò)張率為3的3×3非對稱卷積,之后進(jìn)行擴(kuò)張率為1的1×1卷積;第3個分支先使用擴(kuò)張率為1的3×3卷積,后跟擴(kuò)張率為3的3×3非對稱卷積,再進(jìn)行擴(kuò)展率為1的1×1卷積;第4個分支依次使用擴(kuò)展率為1的3×3卷積、擴(kuò)張率為3的3×3非對稱卷積、擴(kuò)張率為1的5×5非對稱卷積和擴(kuò)張率為1的1×1卷積;第5個分支使用原始輸入特征圖;MADC模塊中每次卷積之后都采取ReLU函數(shù)保持非線性。
圖8 MADC模塊結(jié)構(gòu)圖 Fig.8 Diagram of MADC module structure
在一定范圍內(nèi),網(wǎng)絡(luò)深度越深,擁有越好的性能,能夠更好地提取秸稈特征,但是隨著網(wǎng)絡(luò)深度的增加,會導(dǎo)致梯度消失、梯度爆炸等問題出現(xiàn)[30],ResNet34[31]使用的殘差網(wǎng)絡(luò)可以緩解梯度消失現(xiàn)象,通過增加一條捷徑學(xué)習(xí)融合原始特征信息,在增加網(wǎng)絡(luò)非線性的同時保持網(wǎng)絡(luò)的原有特征,以增強(qiáng)表達(dá)能力。網(wǎng)絡(luò)結(jié)構(gòu)如圖9所示。
圖9 卷積殘差塊結(jié)構(gòu)圖Fig.9 Diagram of residual block
特征金字塔網(wǎng)絡(luò)[32](Feature pyramid network, FPN)主要是為了解決目標(biāo)尺寸差異較大時的檢測缺陷,細(xì)小秸稈的像素信息較少,在網(wǎng)絡(luò)下采樣過程中容易丟失,在上采樣過程中無法恢復(fù),導(dǎo)致最后識別不成功。FPN網(wǎng)絡(luò)通過將語義信息較強(qiáng)的低分辨率特征圖和空間信息更多的高分辨率特征圖進(jìn)行融合,構(gòu)建多尺度的特征金字塔結(jié)構(gòu)。在FPN的基礎(chǔ)上,本文提出密集特征金字塔結(jié)構(gòu),如圖10所示。網(wǎng)絡(luò)結(jié)構(gòu)通過稠密連接的方式,將下采樣過程中的所有特征圖都使用到特征圖的上采樣過程中,從而更充分地利用秸稈圖像的細(xì)節(jié)信息。以第2次上采樣過程為例,不同通道數(shù)的輸入特征圖(x1,x2,x3)使用3×3卷積轉(zhuǎn)換到相同通道數(shù)。x2、x3卷積生成的低分辨率特征圖使用SE[33]模塊(Squeeze-and-Excitation block,SEBlock)增強(qiáng)秸稈信息的特征,然后上采樣到x1特征圖的相同尺寸。將得到的3個特征圖進(jìn)行拼接,再用多尺度的深度可分離卷積進(jìn)行秸稈信息提取,以應(yīng)對秸稈形狀多樣的問題,之后使用1×1卷積進(jìn)行通道數(shù)轉(zhuǎn)換生成特征圖F1。最后將前一個上采樣過程中生成的特征圖x4依次進(jìn)行深度可分離卷積改變通道數(shù)和上采樣改變特征圖尺寸,與生成特征圖F1相加。
其中SE模塊先在通道維度進(jìn)行全局池化,得到通道的全局特征,然后使用全連接層和激活函數(shù)來獲取通道之間的關(guān)系。第1個全連接層起降維的作用,降低模型的復(fù)雜度并且可以提升網(wǎng)絡(luò)的泛化能力,后面跟ReLU激活函數(shù),第2個全連接層負(fù)責(zé)將通道數(shù)恢復(fù)到原特征圖的維度,后面使用Sigmoid函數(shù)激活,將各個通道的特征值縮到0~1之間,最后將各個通道的激活值乘以x2、x3卷積生成低分辨率特征圖,提取每個通道中的主要信息。SE模塊基于通道注意力機(jī)制的方式,得到通道權(quán)重,來增強(qiáng)特征圖中的秸稈特征,抑制其他干擾因素的特征。
常見的上采樣方法有插值法、轉(zhuǎn)置卷積和反池化。插值法在上采樣時沒有考慮圖像邊緣的信息,縮小了特征圖不同特征邊界處的差異,導(dǎo)致圖像的邊緣模糊。轉(zhuǎn)置卷積會導(dǎo)致生成的圖像中產(chǎn)生棋盤效應(yīng)。反池化原理是特征圖的下采樣過程中,最大池化時記錄最大值的索引位置,在上采樣時將特征值填入記錄的位置,并將其余位置補(bǔ)零,來增大特征圖的尺寸,但是這種方法因為引入大量0,在后續(xù)的卷積過程中大多計算是無效的。本文使用快速上卷積塊[34](Fast up-convolution block,F(xiàn)UC Block)進(jìn)行特征圖的上采樣,結(jié)構(gòu)如圖11所示。對于原始特征圖,反池化之后會增加75%的0值,后續(xù)使用3×3卷積計算時,相當(dāng)于對原始特征圖進(jìn)行2×2、2×1、1×2和1×1的有效參數(shù)計算。因此本文分別使用2×2、2×1、1×2和1×1的卷積核對原始特征圖進(jìn)行卷積,然后將生成的4個特征圖拼接,并使用子像素卷積將拼接圖的每個通道對應(yīng)位置元素重新組合,生成尺寸比原始特征圖增大一倍的特征圖,來替代普通的上采樣方法,在達(dá)到相同效果時,快速上卷積塊比普通上采樣方法計算量更小,加快了運(yùn)算速度。
損失函數(shù)反映了模型預(yù)測值和真實值之間的差距,深度學(xué)習(xí)模型訓(xùn)練過程中使用損失函數(shù)進(jìn)行模型評估和監(jiān)測[35-36],本文使用二分類的交叉熵?fù)p失函數(shù),在進(jìn)行梯度下降計算時可以避免網(wǎng)絡(luò)出現(xiàn)梯度彌散的現(xiàn)象,加快網(wǎng)絡(luò)的學(xué)習(xí)深度,定義為
(2)
式中n——像素點(diǎn)總量
i——像素點(diǎn)序號
y——像素點(diǎn)真實值,若像素點(diǎn)為秸稈,取1,否則取0
a——像素點(diǎn)被預(yù)測為秸稈的概率,取0~1
網(wǎng)絡(luò)模型使用Adam優(yōu)化器,在每一個epoch中計算損失函數(shù)的梯度,從而進(jìn)行參數(shù)更新;學(xué)習(xí)率為10-4;batch size設(shè)置為10;訓(xùn)練迭代周期為200,激活函數(shù)使用ReLU函數(shù)。
為了檢驗?zāi)P妥R別秸稈的準(zhǔn)確性,使用秸稈圖像分割平均交并比(Mean intersection over union,MIOU)、像素準(zhǔn)確率(Pixel accuracy,PA)和單幅圖像平均處理時間等來衡量算法性能。
本文使用的模型預(yù)測平臺GPU配置為Tesla V100 32GB,訓(xùn)練時間約5 h,為了更好地比較各個修改結(jié)構(gòu)的效果,以U-Net為基礎(chǔ),使用控制變量法,逐步添加改進(jìn)的結(jié)構(gòu),在訓(xùn)練集上進(jìn)行模型訓(xùn)練,并通過驗證集的指標(biāo)準(zhǔn)確率來比較模型的效果,如表1所示。
表1 編碼階段不同網(wǎng)絡(luò)結(jié)構(gòu)的準(zhǔn)確率Tab.1 Accuracy results of different network structures in encoding stage %
為了更具體地比較每個結(jié)構(gòu)對模型改進(jìn)的效果,進(jìn)行了5組不同模型結(jié)構(gòu)的試驗,結(jié)果如表2所示。試驗1為初始網(wǎng)絡(luò)U-Net,試驗2將U-Net編碼階段的網(wǎng)絡(luò)結(jié)構(gòu)替換為ResNet34,試驗3表示在試驗2的基礎(chǔ)上加入MADC Block,試驗4在試驗3的基礎(chǔ)上添加了DFPN模塊,試驗5在試驗4的基礎(chǔ)上,將上采樣時的反卷積結(jié)構(gòu)替換為FUC Block。各網(wǎng)絡(luò)結(jié)構(gòu)在驗證集上進(jìn)行準(zhǔn)確率比較。
表2 添加不同模塊后效果對比Tab.2 Comparison of effects after adding different modules
由表2可知,使用U-Net網(wǎng)絡(luò)進(jìn)行農(nóng)田秸稈分割,MIOU為82.19%,本文改進(jìn)網(wǎng)絡(luò)的MIOU提高2.59個百分點(diǎn),達(dá)到84.78%,由于網(wǎng)絡(luò)結(jié)構(gòu)中加入了MADC、DFPN等模塊,增加了訓(xùn)練參數(shù),導(dǎo)致模型參數(shù)量和運(yùn)行時間有所增加。對比試驗2、3可以看出,MADC模塊可以更好地獲取特征圖中秸稈的空間信息,比未使用MADC模塊時的MIOU提高1.53個百分點(diǎn)。對比試驗3、4可以看出,DFPN模塊可以將深層特征圖語義信息和淺層的空間信息相結(jié)合,其中包含通道注意力機(jī)制用來減少干擾信息,進(jìn)一步提高網(wǎng)絡(luò)的特征提取能力,網(wǎng)絡(luò)模型的MIOU提高0.81個百分點(diǎn)。對比試驗4、5可以看出,加入快速上卷積模塊比試驗4的MIOU提高0.19個百分點(diǎn),主要原因是FUC Block使用多個尺寸不同卷積核對特征圖進(jìn)行卷積,并使用子像素卷積進(jìn)行特征圖的信息融合,對于特征圖的邊界信息提取得更加準(zhǔn)確。
對于DFPN結(jié)構(gòu)中的SEBlock,其中第1個全連接層起降維作用,降維系數(shù)r是一個超參數(shù),為了找到合適的降維系數(shù),以及在降維過程中避免信息丟失,本文將超參數(shù)取值2、4、8、16進(jìn)行試驗對比,結(jié)果如表3所示。由表3可知,當(dāng)r取值8時,模型準(zhǔn)確率最高,在提高模型泛化能力同時可以加快模型的運(yùn)算速度,因此本文SE模塊選擇r=8作為超參數(shù)。
表3 不同超參數(shù)取值的準(zhǔn)確率Tab.3 Hyperparameters of running results of different algorithms
為了更直觀地展示網(wǎng)絡(luò)模型改進(jìn)效果,選擇表2中的試驗1、3、4、5共4組網(wǎng)絡(luò)模型,分別代表U-Net網(wǎng)絡(luò),以及U-Net編碼階段替換為ResNet34后依次添加MADC Block、DFPN Block、FUC Block結(jié)構(gòu),選取不同環(huán)境下的田間圖像進(jìn)行預(yù)測,以Labelme工具標(biāo)注得到的二值圖像作為真值,結(jié)果如圖12所示。
圖12 不同覆蓋率下網(wǎng)絡(luò)預(yù)測效果對比Fig.12 Comparison of network prediction effects in different situations
由圖12可知,在有陰影干擾情況下,原始U-Net網(wǎng)絡(luò)的識別不夠精細(xì),陰影區(qū)域的秸稈識別不夠完整,但是改進(jìn)后的U-Net網(wǎng)絡(luò)能夠更精確地識別出秸稈位置,在一定程度上解決由陰影所帶來的干擾。在秸稈覆蓋率50%~100%時,改進(jìn)的U-Net網(wǎng)絡(luò)和原始U-Net識別結(jié)果相差不大,主要區(qū)別在秸稈和土壤的邊界處分割更加精細(xì)。在秸稈覆蓋率處于30%~50%時,改進(jìn)網(wǎng)絡(luò)對遠(yuǎn)處離散的秸稈區(qū)域識別的更加準(zhǔn)確。當(dāng)秸稈覆蓋率為0~30%時,秸稈主要以細(xì)碎分散的秸稈為主,改進(jìn)網(wǎng)絡(luò)對于細(xì)碎秸稈的分割更接近真實情況,對秸稈覆蓋區(qū)域中夾雜的土壤區(qū)域也能分離出來。由以上分析可以看出,本文改進(jìn)的算法在大部分情況下都能比原始U-Net更好地完成分割任務(wù)。
本文通過和其他算法運(yùn)行結(jié)果相比來評估本算法的性能。使用卷積核為3×3的U-Net算法、加入注意力機(jī)制的Attention-U-Net算法、CE-Net[22]算法、CPF-Net[37]算法進(jìn)行了對比,結(jié)果如表4所示。
表4 不同算法運(yùn)行結(jié)果比較Tab.4 Comparison of running results of different algorithms
由表4可知,本文算法MIOU和PA指標(biāo)高于其他算法,在細(xì)碎秸稈識別上更加精細(xì),網(wǎng)絡(luò)通過增加非對稱空洞卷積和特征圖金字塔網(wǎng)絡(luò)結(jié)構(gòu),增強(qiáng)了網(wǎng)絡(luò)的特征提取能力。由于網(wǎng)絡(luò)結(jié)構(gòu)中參數(shù)多,模型復(fù)雜度高,網(wǎng)絡(luò)對圖像處理時間更長,是相對于其他網(wǎng)絡(luò),但整個模型對640像素×480像素 的圖像平均處理時間在3 ms以下,滿足實際作業(yè)需求。
使用人工測量和本試驗算法對6個不同田塊秸稈的覆蓋率進(jìn)行計算,計算方式為識別結(jié)果圖中秸稈像素點(diǎn)除以整個圖像的像素點(diǎn),對比結(jié)果如表5所示,誤差率為真實覆蓋率和預(yù)測覆蓋率之間的差值絕對值。由表5可知,算法預(yù)測的覆蓋率和人工測量的覆蓋率相近,最大誤差率為3.8%。
表5 不同田塊的覆蓋率計算Tab.5 Calculation of coverage rate of different fields %
試驗另外隨機(jī)選取驗證集中的136幅秸稈圖像數(shù)據(jù),分別按覆蓋率等級進(jìn)行劃分,劃分為0~10%、10%~20%、20%~30%、30%~50%、50%~100% 5個集合,結(jié)果如圖13所示。其中0~10%等級共27幅圖像,10%~20%等級共36幅圖像,20%~30%等級共34幅圖像,30%~50%等級共28幅圖像,50%~100%等級共11幅圖像。根據(jù)結(jié)果可知,不同覆蓋等級下,算法識別的準(zhǔn)確率和人工標(biāo)注測量的覆蓋率大致相等,算法識別準(zhǔn)確率的折線圖在人工測量折線圖上下波動,誤差較小。
圖13 不同覆蓋率等級效果對比Fig.13 Comparison of effects of different coverage levels
(1)將編碼階段網(wǎng)絡(luò)結(jié)構(gòu)替換為ResNet34結(jié)構(gòu),通過殘差連接加深網(wǎng)絡(luò)層數(shù),避免網(wǎng)絡(luò)訓(xùn)練中梯度消失問題,增加網(wǎng)絡(luò)復(fù)雜度,提升秸稈特征提取能力。
(2)在網(wǎng)絡(luò)最高語義信息層使用多分支的非對稱空洞卷積,空洞卷積提高卷積核的感受野,非對稱結(jié)構(gòu)增強(qiáng)了秸稈局部關(guān)鍵點(diǎn)的權(quán)重,提高了模型魯棒性。
(3)結(jié)合FPN網(wǎng)絡(luò),提出密集特征金字塔網(wǎng)絡(luò),結(jié)合高層特征圖和底層特征圖信息,對不同尺寸秸稈的識別能力更強(qiáng)。
(4)使用快速上卷積模塊替換普通上采樣方式,避免網(wǎng)絡(luò)訓(xùn)練過程中的無效參數(shù)運(yùn)算。
(5)提出的改進(jìn)U-Net,結(jié)合改進(jìn)的FPN網(wǎng)絡(luò)等結(jié)構(gòu),提高了網(wǎng)絡(luò)的分割精度,分割MIOU為84.78%,相較于原U-Net提高2.59個百分點(diǎn),平均處理時間低于3 ms,符合農(nóng)機(jī)正常作業(yè)時秸稈覆蓋檢測的要求。