高皓章,唐 友*,辛 鵬,朱國(guó)東
(1.吉林化工學(xué)院,吉林 吉林 132022;2.吉林農(nóng)業(yè)科技學(xué)院,吉林 吉林 132101;3.一汽東機(jī)工減振器有限公司,吉林 長(zhǎng)春 130001)
農(nóng)業(yè)生產(chǎn)是國(guó)人關(guān)注的民生問題,糧食問題也一直處于國(guó)家戰(zhàn)略核心地位。大豆作為重要的經(jīng)濟(jì)作物,我國(guó)每年進(jìn)口量占據(jù)全球總出口量的近六成。大豆生長(zhǎng)過程中存在眾多因素制約大豆的最終產(chǎn)量,其中雜草的消極影響非常明顯,雜草不止?fàn)帄Z豆苗生長(zhǎng)過程中所需的土地肥力,也容易滋生病害傳染豆苗。因此,在農(nóng)業(yè)生產(chǎn)中,識(shí)別出作物與非作物,解決作物生長(zhǎng)環(huán)境中的雜草是不可避免的重要任務(wù)。在傳統(tǒng)生產(chǎn)過程中,處理雜草一般是用噴灑農(nóng)藥的方式,但這種方法不僅效率低下,還會(huì)造成人力浪費(fèi)和環(huán)境污染。隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,機(jī)器學(xué)習(xí)和計(jì)算機(jī)視覺技術(shù)得到了廣泛的應(yīng)用。為了實(shí)現(xiàn)無污染除草,研究者需要找到理想的作物與雜草圖像分割算法,幫助機(jī)器人實(shí)現(xiàn)自動(dòng)除草,這對(duì)未來農(nóng)業(yè)有重大意義。
目前,計(jì)算機(jī)技術(shù)在農(nóng)業(yè)發(fā)展中發(fā)揮著越來越重要的作用,而圖像分割是目前圖像處理技術(shù)中最理想的方法之一,但是分割算法仍有很大的改進(jìn)空間。本研究使用大豆田間雜草分割數(shù)據(jù)集,旨在提高對(duì)自然環(huán)境下雜草進(jìn)行識(shí)別分割的精度與效率,這將驅(qū)動(dòng)農(nóng)機(jī)裝備升級(jí),為雜草的精準(zhǔn)識(shí)別做出貢獻(xiàn)。
卷積神經(jīng)網(wǎng)絡(luò)[1]在計(jì)算機(jī)視覺領(lǐng)域中的應(yīng)用一直是主流方式之一,它的應(yīng)用范圍涵蓋了圖像分類、目標(biāo)檢測(cè)以及語義分割等各種任務(wù)。在不同的變體算法模型中也是最常見的基礎(chǔ)算法,但是卷積神經(jīng)網(wǎng)絡(luò)由于其像素級(jí)的運(yùn)算對(duì)計(jì)算機(jī)的運(yùn)算負(fù)擔(dān)過大,嚴(yán)重影響著實(shí)際應(yīng)用中的效率和速度,所以研究人員提出了多種優(yōu)化方案,如減少卷積核數(shù)量或者使其與其他算法融合創(chuàng)新等。
Version Transformer的設(shè)計(jì)基于上下文關(guān)系的注意力機(jī)制,自2021年由Google團(tuán)隊(duì)提出后[2],便受到研究者的廣泛關(guān)注。該模型將輸入的圖像分割成一個(gè)個(gè)小塊,將每個(gè)小塊看作是單獨(dú)的向量,經(jīng)過全連接層的編碼及Transformer多頭注意力機(jī)制的處理,使各個(gè)小塊之間的語義關(guān)系不被運(yùn)算所掩蓋[3]。這種模型設(shè)計(jì)在各計(jì)算機(jī)視覺領(lǐng)域的應(yīng)用效果也得到廣泛認(rèn)可。
TransUNet算法旨在通過融合卷積神經(jīng)網(wǎng)絡(luò)和Transformer,彌補(bǔ)Transformer在特征處理方面的不足。該算法利用CNN提取更加細(xì)致的像素細(xì)節(jié),并使用12個(gè)Transformer層對(duì)CNN特征提取模塊中獲得的特征向量進(jìn)行長(zhǎng)距離上下文建模[4],從而關(guān)注到全局信息,表現(xiàn)更加卓越。此外,TransUNet算法采用了U形結(jié)構(gòu),以減少在提取細(xì)致像素信息的過程中的損失,并通過加入Transformer對(duì)空間細(xì)節(jié)進(jìn)行補(bǔ)充,從而提高了分割效果。
在智慧農(nóng)業(yè)中,準(zhǔn)確分割植物葉片是植物表型檢測(cè)工作以及機(jī)器人作業(yè)規(guī)劃的關(guān)鍵步驟。為了提高植物葉片分割精度,眾多研究者基于葉片的形狀、顏色等特征進(jìn)行分割。Omrani等[5]利用K均值聚類算法對(duì)多種植物葉片進(jìn)行識(shí)別及分割。該算法以聚類中心的特征分布,完成對(duì)目標(biāo)區(qū)域的葉片劃分,最終將分割結(jié)果映射回原圖像。最后,他們采用支持向量機(jī)對(duì)不同植物葉片進(jìn)行分類檢測(cè)。Praveen Kumar等[6]提出了一種基于深度卷積神經(jīng)網(wǎng)絡(luò)的植物葉片分割算法。該算法主要運(yùn)用DCNN來提取目標(biāo)區(qū)域中的葉片信息,并通過正交變換,實(shí)現(xiàn)對(duì)蓮座植物葉片的精確分割。在分割過程中,他們還使用了CMYK顏色空間來進(jìn)行去噪處理,從而進(jìn)一步提高對(duì)葉片邊緣的檢測(cè)效率[7]。鄒龍等[8]提出了一種LU-ReNet模型,結(jié)合使用Unet和ResNet模型結(jié)構(gòu)。該模型保證了植物葉片有高的分割準(zhǔn)確度,同時(shí)提高了模型的泛化能力[9]。
本文的數(shù)據(jù)集來源于公開數(shù)據(jù)集:https://doi.org/10.15454/JMKP9S,該數(shù)據(jù)集使用六波段的多光譜相機(jī)采集于真實(shí)的大豆種植基地,并考慮了多種天氣因素的影響。此外,每張圖像中葉片的多邊形邊界都考慮了真實(shí)的地形情況,使得數(shù)據(jù)集中包含各種天然雜草,與本研究的內(nèi)容和目標(biāo)高度契合。雖然對(duì)該數(shù)據(jù)集的語義分割挑戰(zhàn)并不多,本實(shí)驗(yàn)仍確定在此數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),為后續(xù)的研究提供基礎(chǔ)依據(jù)和支持。
該數(shù)據(jù)集中的每張圖片基本具有1 200×900的分辨率。然而,分辨率過高會(huì)導(dǎo)致對(duì)計(jì)算機(jī)的運(yùn)算負(fù)擔(dān)過大。本實(shí)驗(yàn)在參數(shù)設(shè)置時(shí)將圖片的預(yù)處理分辨率設(shè)置為496×496。實(shí)驗(yàn)環(huán)境為兩個(gè)4110處理器和NVIDIA RTX3090 GPU平臺(tái),使用的是Linux系統(tǒng),Pytorch框架和Anaconda環(huán)境,學(xué)習(xí)率設(shè)置為0.002 5,Epoch設(shè)置為300,Batch Size設(shè)置為6。
TransUNet算法采用了CNN與Transformer的融合結(jié)構(gòu)。該算法借鑒了U型結(jié)構(gòu)并結(jié)合卷積神經(jīng)網(wǎng)絡(luò)提取的高分辨率特征信息與Transformer編碼的全局上下文信息[4],實(shí)現(xiàn)了圖像上采樣還原。具體而言,算法采用了Transformer作為編碼器[10]。在該步驟中,首先對(duì)輸入圖像進(jìn)行序列化。若輸入圖片大小為H×W,圖像塊大小為P×P,則分割數(shù)量為N=(H×W)/(P×P)。接著進(jìn)行跳躍連接,以提取精確的低級(jí)細(xì)節(jié)來提高分割細(xì)節(jié)。Chen等[11]對(duì)跳躍連接的數(shù)量進(jìn)行了消融實(shí)驗(yàn),發(fā)現(xiàn)添加更多的跳躍連接通常會(huì)帶來更好的分割性能。TransUNet的算法結(jié)構(gòu)如圖1所示。
圖1 TransUNet算法結(jié)構(gòu)
圖像分割中,遷移學(xué)習(xí)能夠充分利用已有的訓(xùn)練數(shù)據(jù)和模型,從而加快模型的訓(xùn)練過程。通過將已有模型的部分或全部參數(shù)應(yīng)用于新的分割任務(wù),可以大大減少模型所需的訓(xùn)練時(shí)間和數(shù)據(jù)量,并且可以提高分割的精度和效果。此外,遷移學(xué)習(xí)可以在不同領(lǐng)域之間傳輸知識(shí)。例如,將在自然圖像領(lǐng)域上訓(xùn)練得到的模型應(yīng)用于醫(yī)學(xué)圖像分割或航空?qǐng)D像分割領(lǐng)域,都能取得明顯的效果提升。因此,本實(shí)驗(yàn)引入遷移學(xué)習(xí),將其他實(shí)驗(yàn)的訓(xùn)練權(quán)重作為本實(shí)驗(yàn)初始化權(quán)重。首先,引入遷移學(xué)習(xí)提升了算法訓(xùn)練速度。其次,使用大數(shù)據(jù)預(yù)訓(xùn)練權(quán)重,極大地提高了葉片分割精度。但由于算法結(jié)構(gòu)的不同,直接引用遷移學(xué)習(xí)存在不適配問題,因此在初始化過程中,實(shí)驗(yàn)增加了權(quán)重自適應(yīng)調(diào)整,使得遷移學(xué)習(xí)權(quán)重文件適應(yīng)本算法結(jié)構(gòu)。通過權(quán)重自適應(yīng)代碼,可以更加便捷地實(shí)現(xiàn)遷移學(xué)習(xí)的可替代性,增加實(shí)驗(yàn)代碼的替代集成化。
本實(shí)驗(yàn)采用了多種評(píng)價(jià)指標(biāo)來評(píng)估該算法在大豆田間雜草數(shù)據(jù)集上的表現(xiàn),如平均交并比mIoU,像素準(zhǔn)確率Accuracy,模型準(zhǔn)確率和召回率的加權(quán)平均值F1Score,召回率Sensitivity,特異度Specifity,Dice相似系數(shù)等。
mIoU: 它是交并比(Intersection over Union,IoU)的平均值,其中交集指的是預(yù)測(cè)的分割結(jié)果和真實(shí)標(biāo)簽的交集,而并集則是兩者的并集。mIoU的計(jì)算方式就是對(duì)圖像中每個(gè)像素的IoU求平均數(shù):mIoU=1/N×∑(x,y)(TP/(TP+FN+FP)),其中,TP表示真陽性(True Positive),TN表示真陰性(True Negative),FN表示假陰性(False Negative),FP表示假陽性(False Positive)。像素準(zhǔn)確率Aaccuracy:即預(yù)測(cè)正確的像素?cái)?shù)量除以總像素?cái)?shù),計(jì)算方式為:Aaccuracy=(TP+TN)/(TP+FP+TN+FN)。在 U-Net 模型預(yù)測(cè)二分類問題中,像素準(zhǔn)確率通常需要和其他指標(biāo)一起考慮,以全面地評(píng)估模型預(yù)測(cè)能力。F1-score是評(píng)估二分類模型精度的一種常用指標(biāo),它是模型準(zhǔn)確率和召回率的加權(quán)平均值。F1-score值越高,表示模型預(yù)測(cè)的準(zhǔn)確性和召回率都比較高。Sensitivity用于衡量所有實(shí)例中被正確地預(yù)測(cè)為正類的比例。Specificity用于衡量負(fù)例中被正確預(yù)測(cè)為負(fù)例的比例。Dice系數(shù)是基于集合的相似性度量,計(jì)算公式為:Dice=2×TP/(2×TP+FP+FN)。本實(shí)驗(yàn)評(píng)價(jià)指標(biāo)的記錄,如表1所示。
表1 算法結(jié)果評(píng)價(jià)指標(biāo)
從以上所有的評(píng)價(jià)指標(biāo)所示信息可知,由于使用了遷移學(xué)習(xí),實(shí)驗(yàn)?zāi)苓_(dá)到較高性能水平,多種方式也能全面地對(duì)實(shí)驗(yàn)性能給出合理的評(píng)價(jià)。
為解決田間雜草的分割問題,本文利用Transformer與卷積神經(jīng)網(wǎng)絡(luò)結(jié)合算法TransUNet在雜草分割數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),驗(yàn)證了該算法在此數(shù)據(jù)集上的可行性與優(yōu)越性。從評(píng)價(jià)指標(biāo)結(jié)果可知,該算法在此數(shù)據(jù)集上的表現(xiàn)也非常出色,效果顯著,驗(yàn)證了Transformer與卷積神經(jīng)網(wǎng)絡(luò)結(jié)合的算法設(shè)計(jì)思路的可行性,為后期實(shí)驗(yàn)的算法設(shè)計(jì)提供了參考,也為雜草分割研究提供了新的實(shí)驗(yàn)方案。
對(duì)于分割效果來說,目前還有很大的提升空間。具體而言,在邊緣精細(xì)程度和微小目標(biāo)識(shí)別方面,仍需要進(jìn)一步優(yōu)化。本實(shí)驗(yàn)的結(jié)果并不是雜草分割實(shí)驗(yàn)的最終成果,而僅僅是該研究的起始實(shí)驗(yàn)。未來的研究將在本實(shí)驗(yàn)的基礎(chǔ)之上展開,以進(jìn)一步完善該算法的分割能力。