黃世國(guó), 洪銘淋, 張飛萍, 何海洋, 陳億強(qiáng), 李小林,*
(1.福建農(nóng)林大學(xué), 生態(tài)公益林重大有害生物防控福建省高校重點(diǎn)實(shí)驗(yàn)室, 福州 350002;2.福建農(nóng)林大學(xué), 智慧農(nóng)林褔建省高校重點(diǎn)實(shí)驗(yàn)室, 福州 350002)
蝴蝶屬于鱗翅目昆蟲,其種類眾多,人工鑒定費(fèi)時(shí)費(fèi)力,基于計(jì)算機(jī)視覺的昆蟲自動(dòng)識(shí)別則是解決這些問題的關(guān)鍵技術(shù)(黃世國(guó)等, 2010; 竺樂慶和張真, 2013; 竺樂慶等, 2015)。但昆蟲圖像中的背景會(huì)嚴(yán)重干擾計(jì)算機(jī)自動(dòng)識(shí)別昆蟲的性能(Norouzietal., 2014; Jingetal., 2020)。為了消除干擾,一些學(xué)者應(yīng)用傳統(tǒng)的圖像分割方法分割出昆蟲的前背景(程小梅等, 2008; 黃世國(guó)等, 2008; 劉國(guó)成等, 2015)。同時(shí),基于深度學(xué)習(xí)的語義圖像分割技術(shù)也已用于解決鱗翅目昆蟲圖像的自動(dòng)分割問題(竺樂慶等, 2018),其分割效果優(yōu)于傳統(tǒng)方法。這些研究主要處理昆蟲標(biāo)本圖像數(shù)據(jù),這些圖像背景單一,目標(biāo)種類數(shù)量易確定,采用基于深度學(xué)習(xí)的語義圖像分割技術(shù)可以獲得良好的圖像分割結(jié)果。但由于蝴蝶野外棲息環(huán)境多樣,拍攝的蝴蝶圖像背景復(fù)雜,目標(biāo)的種類數(shù)量難以確定,易造成分割準(zhǔn)確性下降。因此,基于深度學(xué)習(xí)的語義圖像分割較難解決背景復(fù)雜的蝴蝶圖像的前背景分割問題。
顯著性目標(biāo)檢測(cè)(也稱為顯著性目標(biāo)分割)是一種二分的圖像分割技術(shù),把圖像中的目標(biāo)分為顯著性目標(biāo)和非顯著性目標(biāo),不需要指定圖像中目標(biāo)的種類數(shù)量。傳統(tǒng)的顯著性目標(biāo)檢測(cè)技術(shù)一般基于人工設(shè)計(jì)的特征(如顏色、紋理和邊緣梯度)及其組合(張鵬和王潤(rùn)生, 2004; Chengetal., 2014; Chengetal., 2015),但特征設(shè)計(jì)的過程復(fù)雜,得到的顯著性目標(biāo)邊緣較模糊且不準(zhǔn)確,需要復(fù)雜的圖像后處理方法才能得到較好的分割結(jié)果。
隨著全卷積神經(jīng)網(wǎng)絡(luò)技術(shù)的發(fā)展,許多學(xué)者提出了基于該結(jié)構(gòu)的深度學(xué)習(xí)顯著性目標(biāo)檢測(cè)算法。圍繞如何得到具清晰邊緣的顯著性目標(biāo),不同的學(xué)者提出了多種不同層次的特征融合方法,并加入明確的邊緣特征信息以及不同的評(píng)價(jià)方法,有效地提高了前背景分割的效果(Wangetal., 2016; Liuetal., 2018; Wangetal., 2018; Zengetal., 2018; Wuetal., 2019; Zhaoetal., 2019)。F3Net算法除了考慮上述方法外,提出了級(jí)聯(lián)解碼器的新框架,并采用反饋機(jī)制對(duì)每個(gè)層次的信息進(jìn)行補(bǔ)充,得到了良好的顯著性圖(Weietal., 2020)。
本研究以具復(fù)雜背景的蝴蝶圖像作為昆蟲前背景自動(dòng)分割的例子。其分割的目的是將蝴蝶和其背景區(qū)分開,形成前景區(qū)域即蝴蝶區(qū)域和背景區(qū)域。該目的和顯著性目標(biāo)檢測(cè)的目的是一致的,也就是將顯著性目標(biāo)檢測(cè)中的顯著性區(qū)域和蝴蝶區(qū)域?qū)?yīng),將非顯著性目標(biāo)區(qū)域和背景區(qū)域?qū)?yīng)。本研究旨在探索利用F3Net顯著性目標(biāo)檢測(cè)算法實(shí)現(xiàn)蝴蝶圖像前背景自動(dòng)分割,為野外調(diào)查拍攝的昆蟲圖像自動(dòng)分割提供新的技術(shù)解決方案。
利茲蝴蝶數(shù)據(jù)集為開源數(shù)據(jù)集,包含10種蝴蝶(分別為黑脈金斑蝶Danausplexippus、黃條袖蝶Heliconiuscharitonius、藝神袖蝶Heliconiuserato、鹿眼蛺蝶Junoniacoenia、紅灰蝶Lycaenaphlaeas、喪服蛺蝶Nymphalisantiopa、美洲大芷鳳蝶Papiliocresphontes、白粉蝶Pierisrapae、優(yōu)紅蛺蝶Vanessaatalanta、小紅蛺蝶Vanessacardui)(Wangetal.,2009)。每種蝴蝶的圖像數(shù)量不等,每個(gè)種最少有55幅,最多有100幅,共832幅蝴蝶圖像。拍攝的圖像大部分為野外拍攝的照片,圖像背景復(fù)雜。圖1展示了該數(shù)據(jù)集中部分原始圖像(上行圖)及其對(duì)應(yīng)的前景蒙板(下行圖)。
圖1 蝴蝶圖像及其前景蒙板示例
本文使用的F3Net算法是最近提出的顯著性目標(biāo)檢測(cè)算法(Weietal., 2020)。F3Net模型采用ResNet50作為主干。對(duì)于大小為H×W的輸入圖像,ResNet50在5個(gè)級(jí)別上提取其特征,用分辨率來表示{fi|i=1,…,5}。由于低階特征耗費(fèi)計(jì)算資源多,對(duì)性能影響較小,因此,F(xiàn)3Net僅使用4個(gè)層即f2,f3,f4和f5,作為顯著性目標(biāo)檢測(cè)的骨架。其結(jié)構(gòu)如圖2中左邊粉色區(qū)域所示。
圖2 F3Net的網(wǎng)絡(luò)結(jié)構(gòu)圖
ResNet50可以提取圖像的低層特征(記為FL)和高層特征(記為FH)。低層特征保留了豐富的細(xì)節(jié)和背景噪聲,具有清晰的邊緣;高層特征則保留了目標(biāo)的輪廓,但丟失了邊緣消息。對(duì)上述4個(gè)層進(jìn)行交叉特征模塊(cross feature module, CFM)、級(jí)聯(lián)反饋解碼器(cascade feedback decoder, CFD)和像素感知損失(pixel position aware loss, PPAL)等處理。不同模塊之間的交互見圖2。
CFM通過不同層的信息融合實(shí)現(xiàn)信息互補(bǔ),得到具清晰邊緣的顯著性圖。具體步驟是:(1)對(duì)3×3卷積處理過的不同層次的特征,分別進(jìn)行卷積、批歸一化和ReLU激活;(2)對(duì)第1步處理過的特征做元素乘法操作,得到FL和FH的公共部分(記為FC);(3)對(duì)FC做卷積、批歸一化和ReLU激活;(4)對(duì)第3步的結(jié)果應(yīng)用元素加法分別與FL和FH進(jìn)行融合。經(jīng)上述4個(gè)步驟,不同的層可以相互吸收有用的信息,抑制低層的噪聲,銳化高層的邊緣。其結(jié)構(gòu)模塊見圖3。
圖3 CFM模塊
CFD模塊由多個(gè)解碼器構(gòu)成,前一個(gè)解碼器的輸出作為后一個(gè)解碼器的輸入。在每個(gè)解碼器中,采用自底向上策略通過CFM模塊逐步融合高層次特征和較低層次特征,直至最低層得到顯著性圖。對(duì)該顯著性圖采用自頂向下的策略經(jīng)下采樣后與每層處理過的特征做元素加法,然后將結(jié)果作為下一解碼器的輸入。
(1)
(2)
其中:第一項(xiàng)對(duì)應(yīng)于所有子解碼器損失的平均值,第二項(xiàng)對(duì)應(yīng)輔助損失的加權(quán)和,其中高層損失因誤差較大而給予較小的權(quán)重。
在本研究中,考慮到本數(shù)據(jù)集中蝴蝶的圖像數(shù)量較少,也研究了F3Net和遷移學(xué)習(xí)相結(jié)合的方法。此時(shí),假設(shè)主干網(wǎng)絡(luò)部分的參數(shù)已經(jīng)是最優(yōu)的,即不需要對(duì)主干網(wǎng)絡(luò)的參數(shù)進(jìn)行訓(xùn)練和修改,而僅訓(xùn)練F3Net模塊進(jìn)一步提高算法的預(yù)測(cè)性能。
為了全面評(píng)價(jià)前背景分割結(jié)果,我們用精度、召回率、F測(cè)度、平均絕對(duì)誤差(MAE)、S測(cè)度、E測(cè)度和平均IoU 7個(gè)指標(biāo)來評(píng)價(jià)分割結(jié)果。
精度(precision)的計(jì)算公式如下:
(3)
其中:TP表示真陽,是指實(shí)際為前景預(yù)測(cè)也為前景的像素個(gè)數(shù);FP表示假陽,是指實(shí)際為背景而錯(cuò)誤預(yù)測(cè)為前景的像素個(gè)數(shù)。
召回率(recall)的計(jì)算公式如下:
(4)
其中:FN表示假陰,是指實(shí)際為前景而錯(cuò)誤預(yù)測(cè)為背景的像素個(gè)數(shù)。
F測(cè)度(F-measure)的計(jì)算公式如下:
(5)
其中,β2=0.3。
平均絕對(duì)誤差(mean absolute error, MAE)的計(jì)算公式如下:
(6)
其中:H和W分別表示圖像的長(zhǎng)度和寬度,P和G分別表示預(yù)測(cè)顯著性圖和前景蒙板。
S測(cè)度(S-measure)(Fanetal., 2017)的計(jì)算公式如下:
Sm=α·So+(1-α)·Sr
(7)
其中,α=0.5,So和Sr分別用于計(jì)算目標(biāo)結(jié)構(gòu)相似性和區(qū)域結(jié)構(gòu)相似性。
E測(cè)度(E-measure)(Weietal., 2018)的計(jì)算公式如下:
(8)
IoU的計(jì)算公式(Rahman and Wang, 2016)如下:
(9)
F3Net算法在Ubuntu系統(tǒng)的PC機(jī)上使用Pytorch框架實(shí)現(xiàn),CPU為Intel(R)Xeon(R),內(nèi)存為12 GB。GPU為Tesla T4,顯存為16 GB。為了比較F3Net在蝴蝶前背景圖像分割中的性能,我們用了幾種2017年以來提出的基于深度學(xué)習(xí)的顯著性目標(biāo)檢測(cè)算法進(jìn)行對(duì)比。這些算法分別為EGNet(Zhaoetal., 2019), SCRN(Wuetal., 2019), ASNet(Wangetal., 2018), lps(Zengetal., 2018)和PiCANet(Liuetal., 2018)。鑒于FCN語義分割算法已用于昆蟲標(biāo)本圖像前背景分割中(竺樂慶等, 2018),本文也給出了該算法對(duì)具復(fù)雜背景的蝴蝶圖像的分割結(jié)果及平均IoU、最大IoU和最小IoU值。根據(jù)顯著性目標(biāo)檢測(cè)算法一般采用DUTS-TR數(shù)據(jù)集(Yangetal., 2013)預(yù)測(cè)其他數(shù)據(jù)集,本研究利用該數(shù)據(jù)集作為訓(xùn)練集得到訓(xùn)練模型,然后將該模型用于預(yù)測(cè)蝴蝶數(shù)據(jù)集的前背景。進(jìn)一步,為了符合蝴蝶圖像數(shù)據(jù)的特點(diǎn),從利茲數(shù)據(jù)集的832張蝴蝶圖像中隨機(jī)選取其中582張圖片作為訓(xùn)練集,剩余的250張為測(cè)試集。將遷移學(xué)習(xí)方法用于F3Net(記為F3NetTL),保持ResNet50主干網(wǎng)絡(luò)不變,使用訓(xùn)練集對(duì)CFM, CFD和PPAL模塊重新訓(xùn)練得到新的預(yù)測(cè)模型,然后用該模型分割蝴蝶圖像前背景,設(shè)計(jì)參數(shù)batch為4,epoch為32。
分析結(jié)果(表1)表明,基于深度學(xué)習(xí)的目標(biāo)檢測(cè)算法在不同的指標(biāo)上均獲得了較好的效果(除平均絕對(duì)誤差值越小表示性能越好外,其他指標(biāo)值越大表示性能越好)。從表1可知,S測(cè)度值最小均在0.90以上,E測(cè)度值則在0.91以上,F(xiàn)測(cè)度和精度值除了ASNet低于0.90以外,其他均在0.90以上,平均IoU值均在0.81以上,MAE值則均在0.06以下。這說明上述這些算法用于蝴蝶圖像的前背景分割時(shí)均獲得了較好的分割效果,證明了顯著性目標(biāo)檢測(cè)算法用于前背景分割是可行的。同時(shí),與FCN語義分割算法在IoU指標(biāo)上進(jìn)行比較,發(fā)現(xiàn)所有的顯著性目標(biāo)檢測(cè)算法其平均IoU值均在0.8以上,最大IoU值均在0.96以上,最小IoU值均在0.34以上。而FCN語義分割算法的平均IoU值僅為0.703,最大和最小IoU值僅分別達(dá)到0.840和0.233。這說明FCN語義分割算法在處理具復(fù)雜背景的蝴蝶圖像分割時(shí)性能有待進(jìn)一步提高。
表1 不同顯著性目標(biāo)檢測(cè)算法以及FCN語義圖像分割的性能比較
進(jìn)一步比較F3Net和其他5種算法的性能。由表1可知,F(xiàn)3Net在各項(xiàng)指標(biāo)上均獲得了更優(yōu)的性能,如F3Net算法7個(gè)指標(biāo)S測(cè)度、E測(cè)度、F測(cè)度、平均絕對(duì)誤差、精度、召回率和平均IoU(除了最大IoU和最小IoU)值分別為0.940, 0.945, 0.938, 0.024, 0.929, 0.978和0.909,與ASNet相比分別改進(jìn)了0.038, 0.030, 0.069,-0.033, 0.056, 0.056和0.098。
由于F3Net的性能優(yōu)于其他5種算法,對(duì)其進(jìn)一步比較使用遷移學(xué)習(xí)后的效果。從表1可知使用F3NetTL后性能得到了進(jìn)一步提升(除召回率略有降低外)。F3NetTL在上述7個(gè)指標(biāo)(除了最大IoU和最小IoU)比F3Net分別改進(jìn)了0.021, 0.019, 0.025,-0.011, 0.036,-0.011和0.029。這說明結(jié)合遷移學(xué)習(xí)的F3Net算法有效提取了蝴蝶圖像的特征,從而進(jìn)一步提高了前背景自動(dòng)分割的性能。
圖4給出了蝴蝶圖像測(cè)試數(shù)據(jù)集的前背景自動(dòng)分割結(jié)果。該圖中第1列為原圖像,第2列為手工標(biāo)注的前景蒙板即去除了背景后的參考標(biāo)準(zhǔn)圖像。第3列為結(jié)合遷移學(xué)習(xí)的F3Net算法(F3NetTL)的分割結(jié)果,第4-10列分別為F3Net, ASNet, EGNet, SCRN, lps, PiCANet和FCN語義分割的結(jié)果。從FCN語義分割結(jié)果(第10列)可以看出該算法將前背景分為兩類后,只得到了不完整的昆蟲圖像分割結(jié)果,且內(nèi)部產(chǎn)生碎片,無法準(zhǔn)確得到具復(fù)雜背景的蝴蝶圖像分割結(jié)果。從前3行第4-9列可以看出所有的6種算法均獲得了較好的前背景分割結(jié)果,這說明顯著性目標(biāo)檢測(cè)算法將蝴蝶圖像分為顯著性目標(biāo)和非顯著性目標(biāo)較好地對(duì)應(yīng)了蝴蝶圖像前背景自動(dòng)分割的問題。同時(shí),從第4-5行的第4-9列可知用公共數(shù)據(jù)集訓(xùn)練的模型有時(shí)會(huì)把圖像中的其他顯著性目標(biāo)和蝴蝶目標(biāo)產(chǎn)生混淆,此時(shí),應(yīng)用F3Net的預(yù)測(cè)效果不理想。從第4-5行的第3列和第4列比較可知,結(jié)合遷移學(xué)習(xí)算法的F3NetTL由于重新訓(xùn)練了顯著性目標(biāo)檢測(cè)網(wǎng)絡(luò),將錯(cuò)誤的顯著性目標(biāo)從蝴蝶前景中去除,得到了比F3Net更好的圖像分割效果。為了進(jìn)一步說明遷移學(xué)習(xí)的性能,選取了F3Net中IoU最小的兩幅圖像,比較其采用遷移學(xué)習(xí)前后的效果(圖5)。由圖5可知,原圖像存在多個(gè)顯著性目標(biāo),其區(qū)域面積甚至比蝴蝶所占面積大,導(dǎo)致其分割效果很差(見圖5第4列),應(yīng)用遷移學(xué)習(xí)后則得到了很好的圖像分割效果(見圖5第3列)。
圖4 蝴蝶圖像前背景分割結(jié)果的定性比較
圖5 最小IoU值圖像的遷移學(xué)習(xí)性能
具有復(fù)雜背景的蝴蝶圖像前背景自動(dòng)分割難以用傳統(tǒng)的圖像分割算法或者基于深度學(xué)習(xí)的語義圖像分割算法實(shí)現(xiàn)。本研究應(yīng)用顯著性目標(biāo)檢測(cè)算法,將顯著性目標(biāo)和非顯著性目標(biāo)分別和蝴蝶區(qū)域和背景區(qū)域?qū)?yīng),很好地解決了以往研究需事先給定待分類類別數(shù)量的難題。對(duì)蝴蝶圖像數(shù)據(jù)集分割的定量分析和定性分析結(jié)果表明基于深度學(xué)習(xí)的顯著性目標(biāo)檢測(cè)算法均能較好地分割出蝴蝶圖像前背景,其中F3Net在所有的指標(biāo)上表現(xiàn)最優(yōu),其7個(gè)指標(biāo)S測(cè)度、E測(cè)度、F測(cè)度、MAE、精度、召回率和平均IoU值分別達(dá)到了0.940, 0.945, 0.938, 0.024, 0.929, 0.978和0.909。而FCN算法較難獲得好的分割效果。同時(shí),結(jié)合遷移學(xué)習(xí)的F3Net算法進(jìn)一步提高了分割效果的準(zhǔn)確性,其上述7個(gè)指標(biāo)值分別進(jìn)一步達(dá)到了0.961, 0.964, 0.963, 0.013, 0.965, 0.967和0.938,其分割效果可以達(dá)到人工標(biāo)注的水平。本研究為野外拍攝的蝴蝶圖像前背景自動(dòng)分割提供了新的技術(shù)解決方案。由于顯著性目標(biāo)檢測(cè)主要關(guān)注顯著性區(qū)域和非顯著性區(qū)域,本方法較FCN等非卷積網(wǎng)絡(luò)方法可以用于更多種類的蝴蝶圖像分割。同時(shí),該方法也可以方便地用于其他種類昆蟲的自動(dòng)分割。本研究提出的方法為后續(xù)的昆蟲自動(dòng)識(shí)別消除了背景干擾,可以進(jìn)一步提高昆蟲分類識(shí)別的性能,為昆蟲多樣性野外調(diào)查過程中的昆蟲識(shí)別提供了有力的預(yù)處理步驟。同時(shí),本研究也拓寬了顯著性目標(biāo)檢測(cè)算法的應(yīng)用范圍。