王祥,舒軍,雷建軍,楊莉
(1 湖北工業(yè)大學(xué) 電氣與電子工程學(xué)院,武漢430068;2 湖北第二師范學(xué)院 計(jì)算機(jī)學(xué)院,武漢430205)
碧根果加工過程中,為了使碧根果方便入味會(huì)進(jìn)行破殼處理.由于果殼硬度存在差異,使得部分碧根果未能取得理想的破殼效果,存在核仁大面積破損和未破殼的情況.為了保證碧根果的出售品質(zhì),需要對破殼狀態(tài)合格的碧根果進(jìn)行分級,目前主要通過傳統(tǒng)圖像處理方法[1-2]將圖片中的碧根果與背景分割開,測量果長與果徑進(jìn)行分級處理.由于傳送帶機(jī)械振動(dòng)造成果殼掉落、碧根果堆疊和打光角度變化造成陰影生成,使得傳統(tǒng)圖像處理方法不能很好地完成碧根果的分割任務(wù),無法區(qū)分破殼類別和碧根果堆疊時(shí)的單個(gè)實(shí)例,給后續(xù)的碧根果自動(dòng)分級造成很大的困難.因此,實(shí)現(xiàn)高可靠性的碧根果實(shí)例分割是目前亟需解決的問題.
近年來,實(shí)例分割發(fā)展主要有3個(gè)方向,第一個(gè)方向是自上而下基于錨框(anchor)[3]的方法.Mask R-CNN[4]算法先通過錨框產(chǎn)生ROI 區(qū)域,再對該區(qū)域進(jìn)行分類、邊界框回歸和掩膜預(yù)測.該算法的實(shí)例分割精度與檢測精度較高,但速度難以滿足工業(yè)需求.YOLACT 算法作為第1 個(gè)實(shí)時(shí)實(shí)例分割模型,利用網(wǎng)絡(luò)自身的平移可變性這一特性,生成對不同實(shí)例產(chǎn)生不同響應(yīng)的特征圖,將特征圖進(jìn)行線性組合,進(jìn)而區(qū)分不同實(shí)例.提出的Fast NMS 相較于傳統(tǒng)NMS[5]極大地提升了候選框篩選速度.YOLACT++[6]算法通過引入可變形卷積,增加更多比例的錨框和掩膜評分機(jī)制,進(jìn)一步提高檢測精度.BlendMask[7]借鑒YOLACT 算法中掩膜加權(quán)求和的思想,提出了一個(gè)融合了高層特征全局信息與低層特征位置信息的blender模塊,獲得高質(zhì)量的實(shí)例掩膜;第2 個(gè)方向是自下而上的基于語義分割的方法.SSAP[8]算法通過學(xué)習(xí)像素對的親和力金字塔,判斷兩個(gè)像素是否屬于同一實(shí)例,該算法精度不高且速度較慢.Deep Snake[9]算法通過提取圖像頂點(diǎn)特征,利用循環(huán)卷積預(yù)測頂點(diǎn)的偏移量逐步調(diào)整輪廓來逼近物體邊界,該算法經(jīng)過多次迭代才能獲得較為精準(zhǔn)的輪廓邊界;第3 個(gè)方向無需用到錨框與聚類算法,端到端地預(yù)測實(shí)例掩膜和語義類別.WANG等提出的SOLO[10]算法核心思想是按位置和目標(biāo)大小分割出不同實(shí)例.將圖片劃分為多個(gè)網(wǎng)格,將含有目標(biāo)中心點(diǎn)的網(wǎng)格單元同時(shí)進(jìn)行類別預(yù)測和實(shí)例掩膜預(yù)測.SOLOv2[11]通過采用動(dòng)態(tài)mask head 分支與Matrix NMS,提高算法的實(shí)例分割速度.
將上述部分實(shí)例分割模型用于碧根果數(shù)據(jù)集,發(fā)現(xiàn)YOLACT++邊緣分割效果與分割速度較高,但存在部分區(qū)域誤分割、預(yù)測框不精確和誤檢情況發(fā)生.為滿足碧根果自動(dòng)化加工需求,確保檢測與分割精度,本文提出基于改進(jìn)的YOLACT++算法用于碧根果的實(shí)例分割任務(wù).針對誤分割問題,在主干網(wǎng)絡(luò)中引入改進(jìn)的Res2Net[12]模塊增強(qiáng)主干網(wǎng)絡(luò)信息提取能力.采用CIoU[13]邊界框回歸損失函數(shù),提高預(yù)測框的精度.將DIoU[14]與Fast NMS 結(jié)合,改善預(yù)測框的誤檢情況.
碧根果檢測流程如圖1 所示.使用工業(yè)相機(jī)對破殼后的碧根果進(jìn)行圖像采集.服務(wù)器采用訓(xùn)練好的實(shí)例分割模型對碧根果圖像進(jìn)行實(shí)例分割,獲得不同破殼形態(tài)的掩膜和預(yù)測框.判斷預(yù)測框是否相交,若相交認(rèn)為碧根果堆疊,進(jìn)行回流處理.對破殼合格的碧根果通過掩膜測量果長與果徑進(jìn)行分級.同一顆碧根果檢測3 個(gè)角度的圖像,取其中兩次相同預(yù)測等級作為最終等級,否則回流處理.控制氣泵將不同級別的碧根果吹入對應(yīng)的收集桶中,對破損和未破殼狀態(tài)的碧根果進(jìn)行單獨(dú)收集.
圖1 碧根果檢測流程圖Fig.1 Pecan detection flow chart
YOLACT++算法網(wǎng)絡(luò)結(jié)構(gòu)如圖2 所示.基于ResNet101 構(gòu)造的主干網(wǎng)絡(luò)對輸入的圖像進(jìn)行特征提取,生成C1~C5 五個(gè)特征圖.將C3、C4、C5 三個(gè)特征圖作為特征金字塔的中間輸入層,經(jīng)過多個(gè)尺度的特征融合生成P3~P7 五個(gè)特征圖,再進(jìn)行兩個(gè)并行的分支任務(wù).第1 個(gè)分支將P3 特征圖通過原型分支(ProtoNet)產(chǎn)生k個(gè)不同區(qū)域響應(yīng)的原型掩膜;第2 個(gè)分支在預(yù)測頭中以特征圖的像素點(diǎn)為錨點(diǎn),生成長寬比為[1,1/2,2,1/3,3]的錨框,用于檢測是否存在實(shí)例,再分別進(jìn)行錨框分類(Class)、原型掩膜的系數(shù)預(yù)測(Mask Coefficients)、邊界框回歸(Bounding Box Regression).Fast NMS 對經(jīng)過邊界框回歸后的候選框進(jìn)行篩選,獲取最終的實(shí)例預(yù)測框.將原型掩膜與掩膜系數(shù)進(jìn)行線性組合,生成的圖像經(jīng)過預(yù)測框區(qū)域裁剪和閾值分割,進(jìn)而獲得最終的實(shí)例掩膜.
圖2 YOLACT++模型結(jié)構(gòu)Fig.2 YOLACT++model structure
YOLACT++采用基于ResNet-101 的主干網(wǎng)絡(luò),其中Bottleneck 殘差結(jié)構(gòu)作為ResNet-101 的基本模塊,其結(jié)構(gòu)如圖3(a)所示,該結(jié)構(gòu)在解決梯度消失的同時(shí)增強(qiáng)網(wǎng)絡(luò)的特征提取能力.為加強(qiáng)對圖像深層特征的提取,充分利用單層內(nèi)的特征,本文采用改進(jìn)的Res2Net 模塊替換主干網(wǎng)絡(luò)中的Bottleneck模塊,以獲得更強(qiáng)的分層多尺度表示能力.Res2Net結(jié)構(gòu)如圖3(b)所示.Res2Net 將經(jīng)過1 × 1 卷積的特征圖按通道均勻地分為4 個(gè)特征子圖,每個(gè)特征子圖含有相同的空間大小和通道數(shù).從第三個(gè)特征子圖開始,將特征子圖與前一個(gè)經(jīng)過3 × 3 卷積的特征子圖輸出相加作為該特征子圖對應(yīng)卷積的輸入,最后將4 個(gè)特征子圖的輸出結(jié)果進(jìn)行合并,并經(jīng)過1 × 1卷積輸出.通過對特征子圖的分割和拼接實(shí)現(xiàn)特征重用,擴(kuò)大了感受野,有利于全局和局部信息的提取,最后通過卷積輸出.改進(jìn)的Res2Net 增加了CBAM[15]注意力模塊,結(jié)構(gòu)如圖3(c)所示,對通道特征與空間特征進(jìn)行加權(quán),抑制無效特征,使得網(wǎng)絡(luò)更關(guān)注于目標(biāo)區(qū)域特征.
圖3 網(wǎng)絡(luò)結(jié)構(gòu)對比Fig.3 Network structure comparison
CBAM 結(jié)構(gòu)如圖4 所示,由通道注意力模塊和空間注意力模塊構(gòu)成.分別為特征圖生成一維的通道注意力權(quán)重和二維的空間注意力權(quán)重,用于加強(qiáng)網(wǎng)絡(luò)的特征提取能力.
圖4 CBAM結(jié)構(gòu)Fig.4 CBAM structure
在通道注意力模塊中將輸入的特征圖U(大小H×W×C)經(jīng)過全局最大池化和平均池化,獲得兩個(gè)1 × 1 ×C的特征圖,其結(jié)果分別輸入權(quán)值共享的兩層感知器(MLP),將輸出的特征相加并經(jīng)過激活函數(shù),生成通道注意力權(quán)重MC.最后將輸入特征圖與通道注意力權(quán)重相乘,生成通道注意力特征圖F",計(jì)算過程如下:
其中AvgPool表示全局平均池化,求取每個(gè)通道的像素平均值;MaxPool表示全局最大池化,保留每個(gè)通道的特征圖的像素最大值;f1表示輸入通道C,輸出通道C/16的全連接層;f2表示輸入通道C/16,輸出通 道C的 全 連 接 層;δ表 示ReLU 函 數(shù);σ表 示Sigmoid函數(shù).
在空間注意力模塊中將通道注意力特征圖F′ 作為輸入先進(jìn)行通道維度的平均池化和最大池化,獲得兩個(gè)H×W× 1 的特征圖,再將兩個(gè)特征圖拼接后通過7 × 7的卷積層,結(jié)果經(jīng)過Sigmoid函數(shù),得到二維單通道的空間注意力權(quán)重Ms.將空間注意力權(quán)重與通道注意力特征圖相乘,生成同時(shí)具有空間與通道注意力的特征圖F″,計(jì)算過程如下:
其中AVGPool表示通道維度平均池化,對每個(gè)通道的特征圖對應(yīng)像素相加取平均值;MAXPool表示通道維度最大池化,保留各個(gè)通道特征圖對應(yīng)位置的最大像素值;f3表示大小為7 × 7 的卷積,輸出通道為1.
邊界框回歸損失的目的是為了衡量預(yù)測框與真實(shí)框的位置差距,即預(yù)測框的回歸性能.YOLACT++采用SmoothL1 作為邊界框回歸損失函數(shù),對預(yù)測框的長、寬及中心點(diǎn)的橫、縱坐標(biāo)偏置量進(jìn)行損失計(jì)算,計(jì)算過程如下:
其中xa,ya,wa,ha表示anchor的中心點(diǎn)坐標(biāo)、長和寬;x*,y*,w*,h*表示真實(shí)框的中心點(diǎn)坐標(biāo)、長和寬;u表示網(wǎng)絡(luò)預(yù)測的anchor偏置矩陣.
原損失函數(shù)因?yàn)槿狈徊⒈龋↖oU)和最小外接矩形的計(jì)算,無法準(zhǔn)確衡量預(yù)測框的位置.引入的CIoU 損失函數(shù)將預(yù)測框與真實(shí)框的交并比、最小外接矩形、幾何中心距離及長寬比例均納入邊界框回歸損失計(jì)算范圍,相較原損失函數(shù)能更加精確地衡量邊界框回歸性能.邊界框損失函數(shù)LCIoU定義如下:
其中ρ表示預(yù)測框b與目標(biāo)框bgt幾何中心的距離;c表示預(yù)測框與目標(biāo)框最小外接矩形的對角線長度.
YOLACT++采用快速非極大值抑制(Fast NMS)算法消除多余的候選框,獲得最終預(yù)測框,F(xiàn)ast NMS算法的具體步驟如下:
(1)根據(jù)類別得分取每個(gè)類別的前n(n=200)個(gè)候選框,并按照得分大小排序,按順序分別計(jì)算每個(gè)候選框與其他n- 1 個(gè)候選框的IoU 值,獲得一個(gè)維度為n×n的IoU對角矩陣Xij:
(2)保留矩陣Xij的上三角區(qū)域,主對角線和其余區(qū)域元素設(shè)置為0,公式為:
(3)在上三角矩陣Xij中保留各列方向的元素最大值,獲得維度為1 ×n矩陣Kij,即某一候選框與得分高的候選框做比較,取最大IoU值,公式為:
(4)利用閾值比較Kij<t(t=0.5)來篩選需要保留的候選框.兩個(gè)候選框IoU 值大于閾值被認(rèn)為重合度高,F(xiàn)ast NMS將大于閾值的候選框刪除,即:
Fast NMS 算法雖然會(huì)極大地降低候選框的冗余,但容易造成重疊率較高的不同實(shí)例目標(biāo)候選框被誤刪除,使得部分相鄰的同類對象容易被視為一個(gè)實(shí)例.針對這一問題,本文在Fast NMS 計(jì)算中引入DIoU,DIoU的定義如下:
其中ρ表示候選框Bi與Bj中心點(diǎn)之間的歐式距離;C表示候選框Bi與Bj最小外接矩形的對角線長度.
通過比較圖5 中不同候選框的幾個(gè)位置,可以發(fā)現(xiàn)即使兩個(gè)候選框IoU 值相同,但對應(yīng)的DIoU 值均不同.中心點(diǎn)距離越近、外接矩形越小的候選框越容易判斷為同一實(shí)例的候選框,對應(yīng)的DIoU值也越大,可通過這一數(shù)據(jù)用于預(yù)測框的篩選.
圖5 不同候選框?qū)?yīng)IoU與DIoU值Fig.5 Different candidate boxes correspond to IoU and DIoU values
本研究以碧根果作為研究對象,對每顆碧根果采集3 個(gè)位置對應(yīng)不同角度的圖片,共采集1500張,并對圖片采用隨機(jī)翻轉(zhuǎn)、隨機(jī)裁剪、隨機(jī)亮度、色彩空間轉(zhuǎn)換這4 種數(shù)據(jù)增強(qiáng)技術(shù),將數(shù)據(jù)集擴(kuò)充到6000 張.用Labelme 標(biāo)注工具完成圖像的標(biāo)注工作,將圖像的語義分為4 類:背景、合格品、次品、回流品,對應(yīng)的標(biāo)簽分別為background、qualified、scrap、backflow.其中合格品表示果殼存在裂口且核仁未破損,次品表示果殼和核仁大部分破損,回流品表示未破殼的碧根果.部分標(biāo)注圖和數(shù)據(jù)增強(qiáng)圖片如圖6所示.
圖6 數(shù)據(jù)集處理Fig.6 Dataset processing
本文實(shí)例分割實(shí)驗(yàn)硬件配置及軟件平臺如表1所示.
表1 實(shí)驗(yàn)硬件平臺與軟件平臺Tab.1 Experimental hardware platform and software platform
選用AP(Average Precision)作為預(yù)測框和實(shí)例分割掩膜的評價(jià)指標(biāo).AP 計(jì)算如(26)~(28)式所示.由于IoU 閾值的選取會(huì)影響精確度和召回率大小,選用AP50(IoU=0.5),AP75(IoU=0.75),mAP(IoU=0.50:0.05:0.95)作為評價(jià)指標(biāo).
其中TP表示模型預(yù)測類別與真實(shí)標(biāo)注類別匹配的樣本數(shù)量;FP表示模型預(yù)測類別與真實(shí)標(biāo)注類別不匹配的樣本數(shù)量;FN表示預(yù)測為背景但真實(shí)標(biāo)注為其他類別的樣本數(shù)量.
網(wǎng)絡(luò)模型復(fù)雜度采用參數(shù)量(Parameter)和浮點(diǎn)計(jì)算量(FLOPs)作為評價(jià)標(biāo)準(zhǔn).對于一次卷積運(yùn)算,其模型參數(shù)和浮點(diǎn)計(jì)算量公式如下:
其中Cin、Cout分別為輸入、輸出特征圖通道數(shù),K為卷積核的大小,H×W為輸出特征圖的大小.由于激活函數(shù)(activation function)以及偏置(bias)等方面的不同,對FLOPs 的計(jì)算方式不盡相同.為便于對比分析,本文采用Pytorch 中的第三方庫thop 對模型參數(shù)量、浮點(diǎn)計(jì)算量進(jìn)行統(tǒng)一計(jì)算.
實(shí)驗(yàn)數(shù)據(jù)集內(nèi)共包含碧根果樣本6000張,其中用作訓(xùn)練集4800 張,測試集1200 張.訓(xùn)練epoch 為800 次,GPU 每次處理4 張圖片,使用隨機(jī)梯度下降(SGD)作為訓(xùn)練時(shí)的優(yōu)化器,初始動(dòng)量設(shè)置為0.9,學(xué)習(xí)率為0.001,權(quán)重衰減系數(shù)0.0001.
4.4.1 參數(shù)量與計(jì)算量對比結(jié)果
主干網(wǎng)絡(luò)的改進(jìn)將同一特征層的不同通道特征圖進(jìn)行多次多尺度的特征融合,使得主干在充分提取圖片語義信息的同時(shí)造成主干網(wǎng)絡(luò)模型尺寸與參數(shù)的增加,邊界框回歸損失函數(shù)與Fast NMS 改進(jìn)也在一定程度上增加了模型的計(jì)算量.網(wǎng)絡(luò)改進(jìn)前后的參數(shù)量及總浮點(diǎn)運(yùn)算量FLOPs 量化結(jié)果如表2 所示.可以看出網(wǎng)絡(luò)參數(shù)、模型大小、浮點(diǎn)運(yùn)算量相較于改進(jìn)前提升了9.8%、1.06%、6.7%.
表2 網(wǎng)絡(luò)改進(jìn)前后參數(shù)量與計(jì)算量對比Tab.2 Comparison of parameters and FLOPS before and after network improvement
4.4.2 主干網(wǎng)絡(luò)改進(jìn)前后熱力圖對比
采用Grad-CAM 生成主干網(wǎng)絡(luò)的熱力圖,對主干網(wǎng)絡(luò)的輸出進(jìn)行可視化分析,主干網(wǎng)絡(luò)改進(jìn)前后生成的熱力圖如圖7 所示.顏色越亮表示主干網(wǎng)絡(luò)對于該區(qū)域的關(guān)注力越強(qiáng),原主干網(wǎng)絡(luò)關(guān)注的區(qū)域包含碧根果的部分區(qū)域和背景區(qū)域,存在關(guān)注區(qū)域錯(cuò)誤的問題.改進(jìn)的主干特征提取網(wǎng)絡(luò)增強(qiáng)了對圖像深層信息的提取能力,引入CBAM注意力機(jī)制,使得主干網(wǎng)絡(luò)更關(guān)注于碧根果區(qū)域,并極大地抑制了背景的干擾.
圖7 主干網(wǎng)絡(luò)熱力圖Fig.7 Backbone network heat map
4.4.3 網(wǎng)絡(luò)分割效果對比
損失值用來衡量網(wǎng)絡(luò)預(yù)測結(jié)果與標(biāo)注之間的誤差,損失值越小表示模型預(yù)測性能越高,網(wǎng)絡(luò)每一次迭代訓(xùn)練過程中生成損失值,并記錄于訓(xùn)練日志中.網(wǎng)絡(luò)改進(jìn)前后的掩膜損失函數(shù)相同,均采用預(yù)測掩膜與標(biāo)注掩膜的二值交叉熵作為損失函數(shù).掩膜損失折線圖如圖8 所示,損失值隨著迭代次數(shù)的增加而下降,原網(wǎng)絡(luò)進(jìn)行800 次迭代后loss 值穩(wěn)定在0.52 左右.改進(jìn)后網(wǎng)絡(luò)損失值最終穩(wěn)定在0.22左右.
圖8 掩膜損失值曲線Fig.8 Mask loss value curve
從測試集中選擇不同條件下的圖片測試模型改進(jìn)前后分割效果.圖9 顯示出原YOLACT++網(wǎng)絡(luò)實(shí)例掩膜會(huì)受到預(yù)測框區(qū)域的限制,本文算法采用CIoU 作為邊界框回歸損失函數(shù),提升邊界框回歸精度.原算法對傳送帶上的陰影與臟污容易造成邊緣分割錯(cuò)誤,對果殼掉落與多果情況,存在果殼重疊造成分割區(qū)域識別錯(cuò)誤的問題,本文提出改進(jìn)的主干特征提取網(wǎng)絡(luò),在加強(qiáng)網(wǎng)絡(luò)對于圖像深層信息的提取能力同時(shí)使得主干網(wǎng)絡(luò)更關(guān)注于碧根果區(qū)域,減少背景干擾,增強(qiáng)掩膜分割的準(zhǔn)確率.對于碧根果堆疊情況,原算法缺乏對預(yù)測框中心距離考量,重合度高的碧根果預(yù)測框被刪除,造成部分堆疊的碧根果被識別為同一個(gè)實(shí)例.采用改進(jìn)后的Fast NMS 能保留更多的候選框進(jìn)行判斷,一定程度上解決了部分重疊目標(biāo)預(yù)測框被誤刪除的問題.
圖9 不同情景下的分割結(jié)果Fig.9 Segmentation results in different scenarios
4.4.4 不同改進(jìn)點(diǎn)對比
為了驗(yàn)證不同改進(jìn)點(diǎn)的有效性,本文做了8 組對比實(shí)驗(yàn),對比結(jié)果如表3 所示.通過對比實(shí)驗(yàn)1 和實(shí)驗(yàn)2 可以發(fā)現(xiàn)主干網(wǎng)絡(luò)中改進(jìn)的Res2Net 模塊的引入使得預(yù)測框與掩膜的mAP 有部分提升,分別提升1.79%,1.88%.對比實(shí)驗(yàn)1 與實(shí)驗(yàn)6 可以發(fā)現(xiàn)邊界框回歸損失與非極大值抑制的改進(jìn)使得預(yù)測框的mAP有顯著提升,預(yù)測框mAP提升4.91%.對比實(shí)驗(yàn)1 與實(shí)驗(yàn)8,相較于原算法在預(yù)測框mAP 與掩膜mAP 上分別提升5.49%與5.18%,但速度上降低了6.5FPS.
表3 不同改進(jìn)點(diǎn)的實(shí)驗(yàn)對比結(jié)果Tab.3 Experimental comparison results of different improvement points
4.4.5 樣本等級預(yù)測實(shí)驗(yàn)
為了驗(yàn)證網(wǎng)絡(luò)改進(jìn)前后碧根果的分級效果,將4 個(gè)等級的碧根果樣本送入訓(xùn)練好的模型中進(jìn)行等級預(yù)測實(shí)驗(yàn),樣本等級預(yù)測結(jié)果如表4、表5所示.碧根果分級標(biāo)準(zhǔn)如下:1 級(長大于45mm,寬大于26mm)、2級(長大于40mm小于45mm,寬大于21mm小于26mm)、3 級(長大于35mm 小于40mm,寬大于15mm 小于21mm)、4 級(長小于35mm,寬小于15mm).
表4 網(wǎng)絡(luò)改進(jìn)前碧根果分級召回率與精確率Tab.4 Recall and precision of pecans classification before network improvement
表5 網(wǎng)絡(luò)改進(jìn)后碧根果分級召回率與精確率Tab.5 Recall and precision of pecans classification after network improvement
原網(wǎng)絡(luò)分割出的碧根果掩膜受到打光陰影及預(yù)測框的影響較大,進(jìn)而影響到掩膜的區(qū)域,造成果長、果徑測量失誤,導(dǎo)致分級準(zhǔn)確率較低.改進(jìn)后的網(wǎng)絡(luò)極大抑制了背景陰影的干擾,提高了預(yù)測框的精度,使得碧根果的分級準(zhǔn)確率得以提升.
4.4.6 不同算法對比
為進(jìn)一步驗(yàn)證本文算法的實(shí)例分割效果,將本文算法與當(dāng)前先進(jìn)的實(shí)例分割算法進(jìn)行對比,利用碧根果數(shù)據(jù)集分別對Mask R-CNN、BlendMask、Deep Snake、SOLOv2、YOLACT++與本文算法進(jìn)行訓(xùn)練,用訓(xùn)練好的模型驗(yàn)證碧根果的檢測與分割效果.訓(xùn)練結(jié)果對比如表6 所示.從表6 可以看出,本文算法掩膜mAP 相較于相較Mask R-CNN、BlendMask、Deep Snake、SOLOv2 分 別 高 出4.40%、6.07%、5.46%、1.38%,預(yù)測框mAP 相較于Mask R-CNN、BlendMask 分別高出4.76%、3.84%.在對比6 種算法的檢測效果圖可以看出,Mask R-CNN分類準(zhǔn)確率較高,但碧根果堆疊時(shí)存在單個(gè)實(shí)例檢測錯(cuò)誤的問題.YOLACT++算法預(yù)測框的回歸存在較為明顯的問題.Deep Snake 算法對于邊緣細(xì)節(jié)的精確度較低.BlendMask 與SOLOv2 能夠較為準(zhǔn)確地識別單個(gè)實(shí)例,但存在邊緣誤分割問題.本文算法在YOLACT++的基礎(chǔ)上增強(qiáng)主干特征提取能力,改進(jìn)了檢測框的檢測精度,進(jìn)而提升了掩膜分割精度.
表6 不同算法數(shù)據(jù)對比Tab.6 Data comparison of different algorithms
4.4.7 公共數(shù)據(jù)集對比實(shí)驗(yàn)
MS COCO數(shù)據(jù)集是微軟開發(fā)維護(hù)的大型圖像數(shù)據(jù)集.本實(shí)驗(yàn)采用COCO2017實(shí)例分割數(shù)據(jù)集進(jìn)行實(shí)例分割算法對比實(shí)驗(yàn),該數(shù)據(jù)集提供了80個(gè)類別的數(shù)據(jù)及對應(yīng)標(biāo)簽.本文在訓(xùn)練時(shí)盡可能保證主干網(wǎng)絡(luò)相同、避免引入任何訓(xùn)練技巧,以達(dá)到算法性能比較的公平性,訓(xùn)練結(jié)果如表7所示.由于COCO數(shù)據(jù)集圖片相較于碧根果數(shù)據(jù)集具有更加復(fù)雜的背景,實(shí)例目標(biāo)的尺寸和數(shù)目差異較大,導(dǎo)致掩膜平均精度低于碧根果數(shù)據(jù)集.APS、APM、APL表示對小尺寸(面積小于322像素)、中尺寸(面積大于322像素小于962)、大尺寸(面積大于962像素)的目標(biāo)分別計(jì)算掩膜平均精度.可以看出改進(jìn)后的YOLACT++算法對于不同尺寸的實(shí)例掩膜平均精度相較改進(jìn)前均有所提升,且精度略高于BlendMask等先進(jìn)算法.本文算法掩膜mAP值相較于Mask R-CNN、YOLACT++、BlendMask、Deep Snake、SOLOv2 分 別 高 出3.20%、4.91%、1.51%、3.79%、1.31%,網(wǎng)絡(luò)具有較高的泛化性.
表7 公共數(shù)據(jù)集實(shí)例分割對比實(shí)驗(yàn)Tab.7 Comparison experiment on instance segmentation of public data set
本文分析了碧根果自動(dòng)化加工生產(chǎn)線上的關(guān)鍵問題,提出了一種基于YOLACT++改進(jìn)的實(shí)例分割算法用于碧根果的檢測任務(wù),采用數(shù)據(jù)增強(qiáng)完成碧根果數(shù)據(jù)集的擴(kuò)充.在YOLACT++主干網(wǎng)絡(luò)引入改進(jìn)的Res2Net 模塊,加深了主干網(wǎng)絡(luò)模型對于碧根果圖像的信息提取能力,使得網(wǎng)絡(luò)的關(guān)注區(qū)域更集中于碧根果區(qū)域,改善了傳送帶陰影或臟污被錯(cuò)誤識別的問題.邊界框回歸中引入CIoU 損失函數(shù),改善了邊界框預(yù)測不精確的問題.并將DIoU 與Fast NMS 結(jié)合,解決部分重疊度高的候選框丟失造成的碧根果誤檢問題.通過測試實(shí)驗(yàn)結(jié)果表明,訓(xùn)練出的模型在處理背景臟污、碧根果堆疊和果殼脫落等圖片時(shí)均有較好的檢測效果,改進(jìn)的算法在碧根果數(shù)據(jù)集上的預(yù)測框mAP 達(dá)到67.21%,掩膜mAP 達(dá)到了65.81%,相較于原始網(wǎng)絡(luò)平均精度分別提升了5.49%,5.18%,分級準(zhǔn)確率達(dá)到98.5%,可以滿足工業(yè)現(xiàn)場需求.改進(jìn)的算法應(yīng)用于公共數(shù)據(jù)集,相較于Mask R-CNN、BlendMask、Deep Snake、SOLOv2、YOLACT++具有更好的分割效果,因此本文算法具有良好的泛化性,也可應(yīng)用于其他數(shù)據(jù)集.