趙世達(dá) 王樹才,2 郝廣釗 張一馳 楊華建
(1.華中農(nóng)業(yè)大學(xué)工學(xué)院, 武漢 430070; 2.農(nóng)業(yè)農(nóng)村部長(zhǎng)江中下游農(nóng)業(yè)裝備重點(diǎn)實(shí)驗(yàn)室, 武漢 430070;3.青島建華食品機(jī)械制造有限公司, 膠州 266300)
羊肉分體是依據(jù)家畜屠宰行業(yè)分割標(biāo)準(zhǔn)將羊胴體分割后得到的產(chǎn)物,一般為6分體、8分體兩大類,與大眾飲食習(xí)慣息息相關(guān),同時(shí)與家畜產(chǎn)品增值存在直接關(guān)系。目前,我國(guó)羊肉產(chǎn)品生產(chǎn)加工企業(yè)大多采用半自動(dòng)化生產(chǎn)工藝,特別是羊肉分體分揀環(huán)節(jié),全部依賴人工完成,工作量大,環(huán)境惡劣,且存在一定的食品安全隱患[1-2]。因而對(duì)羊肉分體進(jìn)行自動(dòng)化分揀很有必要,但完成以上目標(biāo)的先決條件在于羊肉分體種類的準(zhǔn)確、快速獲取,因此,實(shí)現(xiàn)羊肉多分體的實(shí)時(shí)分類檢測(cè)具有重要意義。
近年來(lái),在羊體目標(biāo)檢測(cè)研究中,廣泛采用的方法大多基于圖像處理、光譜技術(shù)結(jié)合機(jī)器學(xué)習(xí)展開。即根據(jù)羊體或各羊肉分體在圖像中所呈現(xiàn)的不同特征表達(dá)進(jìn)行特征提取,例如顏色、紋理、輪廓、區(qū)域中心坐標(biāo)等,再將各特征以機(jī)器學(xué)習(xí)的方式構(gòu)建分類器[3-6]。這些方法雖然可以實(shí)現(xiàn)特定羊體參數(shù)準(zhǔn)確識(shí)別,但存在人工提取目標(biāo)特征困難,工作繁瑣,選用機(jī)器學(xué)習(xí)設(shè)計(jì)的模型適應(yīng)性差、實(shí)時(shí)性不足的缺點(diǎn),特別是羊肉分體種類多樣、自然特征表達(dá)復(fù)雜、部分特征具有相似情形,同時(shí),輸送帶場(chǎng)景中包含多個(gè)、多類且可能遮擋的羊肉分體,以上特點(diǎn)對(duì)上述文獻(xiàn)方法的展開帶來(lái)困難。
基于深度卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測(cè)方法具備對(duì)簡(jiǎn)單、抽象特征的強(qiáng)大自主學(xué)習(xí)能力,其準(zhǔn)確率、泛化能力均優(yōu)于基于傳統(tǒng)HOG[7]、SIFT[8]等人為特征結(jié)合機(jī)器學(xué)習(xí)的檢測(cè)方法,能夠較好地解決上述問題?,F(xiàn)階段,眾多學(xué)者將基于深度學(xué)習(xí)的目標(biāo)檢測(cè)應(yīng)用至各家畜目標(biāo)識(shí)別任務(wù)中[9-14]?;谏疃葘W(xué)習(xí)的目標(biāo)檢測(cè)算法在家畜養(yǎng)殖領(lǐng)域中的良好表現(xiàn),使得探討將該方法用于羊肉多分體實(shí)時(shí)分類檢測(cè)成為可能。
目前,基于深度卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測(cè)主要包括兩類,一類是先生成候選區(qū)域,再對(duì)候選區(qū)域進(jìn)行分類和回歸的二階段檢測(cè)器,檢測(cè)精度高,但速度較慢[15]。代表有Faster R-CNN[16]、Mask R-CNN[17]、TridentNet[18];另一類是不需要產(chǎn)生候選區(qū)域,基于回歸思想直接進(jìn)行目標(biāo)分類和回歸的單階段檢測(cè)器,較二階段檢測(cè)器具備較優(yōu)的實(shí)時(shí)性,但精度較差[19-20],例如YOLO v1-v3[21]、SSD[22]、RetinaNet[23]等。本文首先建立羊肉分體圖像數(shù)據(jù)集,然后基于檢測(cè)速度較快的單階段目標(biāo)檢測(cè)算法YOLO v3針對(duì)羊肉多分體圖像數(shù)據(jù)集展開研究,獲取輸送帶場(chǎng)景下圖像中的多個(gè)、多類羊肉分體的類別與位置,然后更換主干網(wǎng)絡(luò)為輕量級(jí)神經(jīng)網(wǎng)絡(luò)MobileNet V3[24]優(yōu)化羊肉多分體識(shí)別模型的檢測(cè)速度。在此基礎(chǔ)上,建立包含亮、暗兩種亮度水平的附加光照數(shù)據(jù)集以及代表羊肉分體遮擋情形的附加遮擋數(shù)據(jù)集,用以驗(yàn)證優(yōu)化后模型的泛化能力以及抗遮擋能力,并且通過(guò)選用形體差異較為顯著的頸部、腹肋肉分體測(cè)試優(yōu)化后模型的魯棒性。最后引入Mask R-CNN、Faster R-CNN、Cascade R-CNN、SSD 4種常用的目標(biāo)檢測(cè)算法進(jìn)行對(duì)比試驗(yàn),并驗(yàn)證MobileNet V1[25]、ResNet34、ResNet50[26]共3種特征提取網(wǎng)絡(luò)下模型的識(shí)別性能。
試驗(yàn)以成年波爾山羊經(jīng)分割后得到的羊肉6分體作為研究對(duì)象,圖像采集于內(nèi)蒙古自治區(qū)美洋洋食品股份有限公司的羊胴體分割生產(chǎn)車間。在輸送帶場(chǎng)景下,固定華谷動(dòng)力科技公司生產(chǎn)的WP-UC600型CCD相機(jī)于羊肉分體樣本正上方0.6 m處,搭配Z4S-LE-SV-1214H型歐姆龍鏡頭獲取圖像,期間無(wú)特定背景及光源,不限定拍攝時(shí)間。由于同分割批次的羊胴體存在質(zhì)量、體態(tài)、年齡相似情況,為增大羊肉各分體之間的差異性以提高模型的泛化能力,隨機(jī)采集6批次羊胴體,共計(jì)2 100副。最終經(jīng)人工篩選后得到3 600幅包含多個(gè)、多類的羊肉分體圖像,分辨率為2 448像素×3 264像素。圖像采集裝置示意圖與樣本示例如圖1、2所示。
圖1 羊肉多分體圖像采集裝置示意圖Fig.1 Illustration of image acquisition device1.相機(jī) 2.羊肉多分體 3.輸送帶
圖2 羊肉多分體圖像樣本示例Fig.2 Example of multipartite images of mutton
本文羊肉6分體分別為腰椎骨、胸椎骨、頸部、腹肋肉、肩胛骨和腿骨,其中,腰椎骨與胸椎骨是制作羊蝎子和法排的原材料,腹肋肉使用場(chǎng)景更為廣泛,其它3類也有其獨(dú)特價(jià)值,如圖3所示??梢钥闯龈黝愌蛉夥煮w表現(xiàn)出的顏色、紋理、輪廓等特征差異明顯,并且尺寸區(qū)別較大。另外,通常情況下由于羊體尺寸不同導(dǎo)致相同種類的羊肉分體尺寸也存在較大的差異,多尺度特征顯著。以上特點(diǎn)要求羊肉多分體識(shí)別方法需要具備多尺度特征檢測(cè)能力。
圖3 羊肉各分體圖像樣本示例Fig.3 Sample image samples of each split of mutton
基于深度卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測(cè)精度與樣本數(shù)據(jù)集規(guī)模顯著相關(guān),在保證圖像自然特征表達(dá)情況下,擴(kuò)充訓(xùn)練圖像數(shù)量不僅能夠提高模型準(zhǔn)確率,還可以滿足深層網(wǎng)絡(luò)對(duì)數(shù)據(jù)的要求,減少過(guò)擬合現(xiàn)象[27],因此,對(duì)本試驗(yàn)小規(guī)模羊肉分體圖像進(jìn)行圖像增廣以擴(kuò)充數(shù)據(jù)量很有必要。本文采用翻轉(zhuǎn)、旋轉(zhuǎn)、平移3種方式進(jìn)行圖像數(shù)據(jù)擴(kuò)充,再以比例不變性原則將圖像縮放至412像素×412像素,建立羊肉多分體圖像數(shù)據(jù)集,其中訓(xùn)練集7 200幅,測(cè)試集1 400幅,驗(yàn)證集400幅。另外,參考VOC數(shù)據(jù)集格式使用LabelImg圖像標(biāo)注工具對(duì)6類羊肉分體進(jìn)行標(biāo)記,設(shè)定腰椎骨、胸椎骨、頸部、腹肋肉、肩胛骨和腿骨的標(biāo)簽分別為Sheep1、Sheep2、Sheep3、Sheep4、Sheep5和Sheep6。最終,據(jù)統(tǒng)計(jì),羊肉多分體圖像數(shù)據(jù)集中上述各類羊肉分體的數(shù)量比例分布趨近于5∶4∶3∶6∶2∶7,各分體的數(shù)量如表1所示。
表1 羊肉分體數(shù)據(jù)集種類及其數(shù)量Tab.1 Types and quantities of mutton multi-part datasets
1.3.1YOLO v3網(wǎng)絡(luò)結(jié)構(gòu)
YOLO v3屬于單階段目標(biāo)檢測(cè)算法的一種,該網(wǎng)絡(luò)結(jié)構(gòu)由DarkNet53特征提取網(wǎng)絡(luò)與YOLO v3多尺度分支兩部分組成。其中DarkNet53特征提取網(wǎng)絡(luò)通過(guò)設(shè)置階躍連接加深網(wǎng)絡(luò)深度,以提高特征提取能力,同時(shí)加快模型收斂。YOLO v3多尺度分支部分引入特征金字塔(Feature pyramid networks,F(xiàn)PN)結(jié)構(gòu)將網(wǎng)絡(luò)劃分為3個(gè)分支,分別對(duì)應(yīng)檢測(cè)小目標(biāo)、中目標(biāo)和大目標(biāo),利用獲取目標(biāo)多尺寸特征圖感受野的形式,增強(qiáng)多尺度目標(biāo)檢測(cè)能力,提升模型的魯棒性。YOLO v3網(wǎng)絡(luò)結(jié)構(gòu)如圖4所示。
圖4 YOLO v3網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.4 Architecture for YOLO v3 network
首先,將尺寸為412像素×412像素的羊肉多分體圖像輸入DarkNet53特征提取網(wǎng)絡(luò),經(jīng)特征通道數(shù)為32與64、卷積核尺寸為3×3的卷積核以步長(zhǎng)1和步長(zhǎng)2遍歷圖像。然后卷積層(Conv)輸出特征由批歸一化(BN)和Leaky_ReLU激活函數(shù)處理后得到208×208×64的特征圖。最后輸入卷積核尺寸為1×1的殘差模塊,通過(guò)下采樣輸出尺寸為104×104×128的特征圖,之后交替卷積,直至輸出尺寸為13×13×1 024的特征向量至YOLO v3多尺度分支的大目標(biāo)和中目標(biāo)分支。其中,中目標(biāo)分支將特征向量上采樣后與DarkNet53網(wǎng)絡(luò)中輸出尺寸為26×26×512的特征圖拼接,經(jīng)多次卷積后一部分輸入至小目標(biāo)分支,另一部分輸出尺寸為26×26×255的特征結(jié)果。輸入至小目標(biāo)分支的特征向量上采樣后與52×52×256的殘差模塊輸出特征拼接,最終得到52×52×255的特征圖,由于該特征圖感受野較小,使得YOLO v3對(duì)小尺寸目標(biāo)能夠保持較高的檢測(cè)精度。
1.3.2邊界框預(yù)測(cè)及損失函數(shù)
YOLO v3依據(jù)多尺度分支的3種特征圖尺寸(S=13,26,52),將輸入圖像劃分為S×S個(gè)網(wǎng)格,并對(duì)落入各網(wǎng)格中的目標(biāo)進(jìn)行滑動(dòng)窗口計(jì)算,輸出被檢目標(biāo)的邊界框及其置信度。該置信度由各網(wǎng)格包含目標(biāo)的概率與邊界框準(zhǔn)確度共同決定[28]。
YOLO v3采用9種錨點(diǎn)框(Anchor box),提高對(duì)多尺度目標(biāo)的檢測(cè)精度,各錨點(diǎn)框尺寸分別為10×13、16×30、33×23、30×61、62×45、59×119、116×90、156×198、373×326。其中,前3個(gè)錨點(diǎn)框適用于檢測(cè)小尺寸的肩胛骨,中間3個(gè)錨點(diǎn)框?qū)z測(cè)尺寸相對(duì)中等的腰椎骨、頸部和腿骨較為敏感,剩余錨點(diǎn)框更適用于檢測(cè)尺寸較大的胸椎骨和腹肋肉。然后基于錨點(diǎn)框得到各檢測(cè)目標(biāo)預(yù)測(cè)邊界框,再將置信度小于閾值的邊界框剔除,采用非極大值抑制算法(Non-maximum suppression,NMS)[29],獲取最終的被檢目標(biāo)邊界框(Bounding boxes),本文設(shè)定閾值為0.5。該邊界框尺寸與位置由4種參數(shù)bx、by、bw、bh決定,分別對(duì)應(yīng)邊界框相對(duì)于特征圖的中心點(diǎn)坐標(biāo)以及寬、高。圖5為YOLO v3邊界框原理圖,其中Cx、Cy代表預(yù)測(cè)邊界框中心所在網(wǎng)格左上角網(wǎng)格的坐標(biāo),Pw、Ph為該單元格對(duì)應(yīng)先驗(yàn)框的寬和高,tx、ty為預(yù)測(cè)邊界框中心距所處網(wǎng)格左上角的相對(duì)寬、高偏移量。bx、by、bw、bh計(jì)算式為
圖5 YOLO v3邊界框原理圖Fig.5 Schematic of YOLO v3 boundary frame
(1)
(2)
式中σ——sigmoid函數(shù)
tw——預(yù)測(cè)邊界框的寬方向偏移量
th——預(yù)測(cè)邊界框的高方向偏移量
損失函數(shù)用來(lái)判斷模型的預(yù)測(cè)值與真實(shí)值之間的差異程度,與網(wǎng)絡(luò)的性能直接相關(guān)。YOLO v3網(wǎng)絡(luò)訓(xùn)練過(guò)程中的損失值主要由邊界框定位損失、邊界框尺寸損失、置信度損失和類別損失4部分組成,該值越小則反映模型的訓(xùn)練效果越好,魯棒性越強(qiáng)。其計(jì)算式為
(3)
B——每個(gè)網(wǎng)格中預(yù)測(cè)邊界框的個(gè)數(shù)
xi、yi——第i個(gè)網(wǎng)格邊界框中心橫、縱坐標(biāo)
wi、hi——第i個(gè)網(wǎng)格邊界框?qū)挾?、高?/p>
Ci——預(yù)測(cè)目標(biāo)類別
pi——預(yù)測(cè)類別概率
λnoobj——懲罰權(quán)重系數(shù)
本文采用目標(biāo)檢測(cè)任務(wù)中常用的平均檢測(cè)精度(mAP)作為量化分析羊肉多分體識(shí)別模型對(duì)羊肉分體分類檢測(cè)效果的評(píng)判指標(biāo),該指標(biāo)反映的是模型對(duì)腰椎骨、胸椎骨、頸部、腹肋肉、肩胛骨和腿骨6類羊肉分體類別檢測(cè)精度(AP)的平均值,數(shù)值越大則表征模型的準(zhǔn)確度越高。
為滿足生產(chǎn)線實(shí)際需求,羊肉多分體識(shí)別模型不僅需要具備較高的檢測(cè)精度,還要求良好的實(shí)時(shí)性。因此,除獲取檢測(cè)精度之外,測(cè)試模型的檢測(cè)速度同樣重要。本文選用模型單幅圖像平均處理時(shí)間作為第二指標(biāo),判斷模型的實(shí)時(shí)性。
基于單階段目標(biāo)檢測(cè)算法的羊肉多分體實(shí)時(shí)分類檢測(cè)主要包含4個(gè)步驟:采集羊肉多分體圖像,經(jīng)過(guò)預(yù)處理后建立羊肉多分體圖像數(shù)據(jù)集;引入遷移學(xué)習(xí)針對(duì)羊肉多分體圖像數(shù)據(jù)集訓(xùn)練YOLO v3,返回檢測(cè)精度最優(yōu)模型,并更換最優(yōu)模型特征提取網(wǎng)絡(luò)為輕量級(jí)神經(jīng)網(wǎng)絡(luò)MobileNet V3,優(yōu)化模型的檢測(cè)速度;分別通過(guò)附加亮度、遮擋數(shù)據(jù)集驗(yàn)證優(yōu)化后模型的泛化能力和抗遮擋能力,以及測(cè)試優(yōu)化后模型的魯棒性;與常用目標(biāo)檢測(cè)算法進(jìn)行對(duì)比試驗(yàn),并進(jìn)一步更換模型的特征提取網(wǎng)絡(luò)驗(yàn)證優(yōu)化后模型的綜合檢測(cè)能力。流程如圖6所示。
圖6 羊肉多分體實(shí)時(shí)分類檢測(cè)試驗(yàn)流程圖Fig.6 Technical flowchart of experiment for real-time classification and detection test of mutton multipartite
本文試驗(yàn)基于深度學(xué)習(xí)框架Tensorflow在Dell T5810塔式圖形處理工作站上完成,計(jì)算機(jī)系統(tǒng)為Windows 10專業(yè)版操作系統(tǒng),搭載Intel core64至強(qiáng)3.70 GHz W-2145處理器,內(nèi)存和顯卡分別為64 GB、NVIDIA P4000-8G。
面對(duì)小規(guī)模數(shù)據(jù)樣本的深度學(xué)習(xí)模型訓(xùn)練時(shí),引入遷移學(xué)習(xí)可以降低過(guò)擬合及加速模型收斂,提升訓(xùn)練效果。因此,本文試驗(yàn)建立的所有模型在訓(xùn)練過(guò)程中均加載了基于ImageNet數(shù)據(jù)集的預(yù)訓(xùn)練權(quán)值。采用隨機(jī)梯度下降(Stochastic gradient descent,SGD)優(yōu)化器進(jìn)行梯度下降,設(shè)置初始學(xué)習(xí)率及動(dòng)量因子分別為0.001和0.9,batchsize和gamma系數(shù)為8和0.1。另外,設(shè)定訓(xùn)練過(guò)程中每迭代2 000次保存一次結(jié)果,共計(jì)40 000次,將保存的20個(gè)訓(xùn)練結(jié)果比較后,輸出最優(yōu)模型用于后期羊肉多分體圖像數(shù)據(jù)集的輸入。針對(duì)羊肉多分體圖像數(shù)據(jù)集,引入遷移學(xué)習(xí)和未引入遷移學(xué)習(xí)的YOLO v3網(wǎng)絡(luò)損失值及平均檢測(cè)精度隨迭代次數(shù)與循環(huán)次數(shù)的變化趨勢(shì)如圖7、8所示。
圖7 引入遷移學(xué)習(xí)與未引入遷移學(xué)習(xí)損失值隨迭代次數(shù)變化曲線Fig.7 Loss value changes with number of iterations during transfer learning and non-transfer learning
圖8 引入遷移與未引入遷移學(xué)習(xí)平均檢測(cè)精度隨循環(huán)次數(shù)變化曲線Fig.8 The mAP changes with number of epoch during transfer learning and non-transfer learning
由圖7、8可知,針對(duì)羊肉多分體圖像數(shù)據(jù)集,加載預(yù)訓(xùn)練權(quán)值的YOLO v3網(wǎng)絡(luò)損失值在訓(xùn)練初期迅速降低,當(dāng)?shù)螖?shù)達(dá)到8 000次時(shí)緩慢下降隨即平滑,直至收斂于1.07。未加載預(yù)訓(xùn)練權(quán)值網(wǎng)絡(luò)的訓(xùn)練損失值隨迭代次數(shù)變化趨勢(shì)與加載訓(xùn)練相似,均在訓(xùn)練開始時(shí)迅速減小,之后緩慢收斂,但其損失值明顯大于采用遷移學(xué)習(xí)的訓(xùn)練方式。另外,針對(duì)羊肉多分體圖像測(cè)試集,遷移學(xué)習(xí)訓(xùn)練得到的平均檢測(cè)精度達(dá)到88.72%,較未引入遷移學(xué)習(xí)提升6.78個(gè)百分點(diǎn),說(shuō)明基于遷移學(xué)習(xí)方法訓(xùn)練網(wǎng)絡(luò)可以降低羊肉多分體識(shí)別模型的損失值,提升識(shí)別精度。因此,為保證模型的識(shí)別準(zhǔn)確率,試驗(yàn)后期所采用模型的訓(xùn)練均基于遷移學(xué)習(xí)方式完成。
基于訓(xùn)練得到的最優(yōu)模型針對(duì)羊肉多分體驗(yàn)證集展開測(cè)試,獲取圖像中6類羊肉分體的類別和位置,得到識(shí)別平均檢測(cè)精度及單幅圖像處理時(shí)間,以判斷YOLO v3模型對(duì)羊肉多分體的識(shí)別精度和實(shí)時(shí)性。其中,獲取單幅圖像處理時(shí)間的方式為分別記錄驗(yàn)證集各圖像識(shí)別時(shí)間再求其均值。部分識(shí)別結(jié)果如圖9所示。
圖9 針對(duì)羊肉多分體驗(yàn)證集YOLO v3模型識(shí)別結(jié)果Fig.9 Recognition results of YOLO v3 model for mutton multipartite validation data sets
實(shí)際生產(chǎn)過(guò)程中,羊體分割以間歇性、周期性的作業(yè)方式完成,導(dǎo)致分割得到的羊肉分體在輸送帶上呈現(xiàn)出隨機(jī)片區(qū)的形式,表現(xiàn)為單幅圖像包含多個(gè)、多類且重復(fù)的羊肉分體現(xiàn)象,如圖9所示。圖中,YOLO v3模型檢測(cè)結(jié)果中沒有出現(xiàn)錯(cuò)檢與漏檢的現(xiàn)象,可以以較高的置信度檢測(cè)出各羊肉分體的類別,同時(shí),各羊肉分體的邊界框標(biāo)記完整、準(zhǔn)確,特別是圖9a、9b中小尺寸的肩胛骨以及圖9c、9d中尺寸明顯不同的頸部均可以準(zhǔn)確識(shí)別,以上結(jié)果說(shuō)明YOLO v3羊肉多分體模型具備較高的檢測(cè)精度以及良好的多尺度檢測(cè)能力。最終,YOLO v3對(duì)羊肉多分體驗(yàn)證集的平均檢測(cè)精度和單幅圖像平均處理時(shí)間分別達(dá)到87.79%和96.1 ms,精度滿足生產(chǎn)線的需求,但處理速度略慢,實(shí)時(shí)性有待提高。
YOLO v3的特征提取部分為包含53個(gè)卷積層的卷積神經(jīng)網(wǎng)絡(luò)DarkNet53,該網(wǎng)絡(luò)較深的多層結(jié)構(gòu)有利于提取羊肉分體的多種抽象特征用于目標(biāo)定位從而提升模型的識(shí)別精度,但隨之增加的浮點(diǎn)計(jì)算量也加大了模型推斷耗時(shí),為實(shí)時(shí)性要求較高的識(shí)別任務(wù)帶來(lái)困難。如果采用輕量級(jí)神經(jīng)網(wǎng)絡(luò)替代DarkNet53,則可以優(yōu)化YOLO v3的檢測(cè)速度。MobileNet V3網(wǎng)絡(luò)屬于輕量級(jí)神經(jīng)網(wǎng)絡(luò)中的一種,該網(wǎng)絡(luò)在MobileNet V1深度可分離卷積模塊(Depthwise separable convolution, DSC)和MobileNet V2逆殘差結(jié)構(gòu)(Inverse residual structure,IRS)的基礎(chǔ)上添加了引入注意力機(jī)制的逆殘差模塊(Squeeze-and-excitation,SE),極大地減少網(wǎng)絡(luò)參數(shù)量,有益于縮短模型的計(jì)算時(shí)間,同時(shí)采用H-Swish激活函數(shù)增加網(wǎng)絡(luò)提取低維特征的非線性,例如羊肉各分體的顏色、紋理等特征,其結(jié)構(gòu)如圖10所示。因此,采用輕量級(jí)神經(jīng)網(wǎng)絡(luò)MobileNet V3替換DarkNet53作為YOLO v3的特征提取網(wǎng)絡(luò),試圖在保證模型識(shí)別精度的前提下提升實(shí)時(shí)性。
圖10 引入注意力機(jī)制的逆殘差模塊結(jié)構(gòu)Fig.10 Structure of inverse residual module with SE
本文基于MobileNet V3替換特征提取網(wǎng)絡(luò)DarkNet53得到優(yōu)化后的YOLO v3-MobileNet V3模型,引入遷移學(xué)習(xí)進(jìn)行訓(xùn)練,另外為保證模型收斂,將迭代次數(shù)擴(kuò)充至60 000次,其余超參數(shù)設(shè)置與YOLO v3原始模型保持一致,之后針對(duì)羊肉多分體圖像驗(yàn)證集展開識(shí)別精度和速度測(cè)試。訓(xùn)練過(guò)程中YOLO v3-MobileNet V3模型的平均檢測(cè)精度隨迭代次數(shù)變化趨勢(shì)如圖11所示,隨著循環(huán)次數(shù)的增加,平均檢測(cè)精度相應(yīng)迅速提升然后平滑,直到穩(wěn)定于循環(huán)25次左右。最終,針對(duì)驗(yàn)證集,訓(xùn)練得到最優(yōu)YOLO v3-MobileNet V3模型的平均檢測(cè)精度達(dá)到88.05%,與原始模型差距不顯著,仍可以準(zhǔn)確識(shí)別圖像中羊肉多分體的類別與位置,但單幅圖像平均處理時(shí)間為64.7 ms,較原始模型縮短31.4 ms,檢測(cè)速度較原模型提升48.53%,說(shuō)明更換特征提取網(wǎng)絡(luò)為MobileNet V3,能夠有效縮短對(duì)羊肉多分體的檢測(cè)時(shí)耗,提升實(shí)時(shí)性,但對(duì)檢測(cè)精度無(wú)明顯影響。
圖11 優(yōu)化模型平均檢測(cè)精度隨循環(huán)次數(shù)變化曲線Fig.11 Change trend of mAP value of optimization model
為測(cè)試優(yōu)化后羊肉多分體識(shí)別模型的泛化能力,隨機(jī)選取600幅歸一化后的羊肉分體圖像,建立附加光照數(shù)據(jù)集,并將其RGB色彩空間轉(zhuǎn)換為HSV色彩空間,基于Matlab圖像處理工具箱設(shè)置1.3倍和0.7倍的圖像亮度,以模擬亮、暗兩種光照水平場(chǎng)景,進(jìn)行羊肉多分體識(shí)別模型的泛化能力試驗(yàn),其中調(diào)亮、調(diào)暗圖像各300幅。針對(duì)附加光照數(shù)據(jù)集,優(yōu)化后模型的部分識(shí)別結(jié)果如圖12所示。
圖12 針對(duì)附加光照數(shù)據(jù)集優(yōu)化模型識(shí)別結(jié)果Fig.12 Recognition results of optimize model for additional lighting data sets
根據(jù)圖12樣本1、樣本2識(shí)別結(jié)果可以看出,羊肉多分體在亮、暗兩種光照強(qiáng)度下,優(yōu)化后模型仍然可以準(zhǔn)確識(shí)別圖像中6類羊肉分體的類別,同時(shí)檢測(cè)得到的各分體邊界框標(biāo)記正確、完整,羊肉分體真實(shí)輪廓與標(biāo)記邊界框無(wú)明顯誤差現(xiàn)象。最終,針對(duì)附加驗(yàn)證集,優(yōu)化后羊肉多分體識(shí)別模型的平均檢測(cè)精度達(dá)到85.16%,說(shuō)明光照強(qiáng)度變化對(duì)該模型的識(shí)別效果影響并不明顯,能夠適應(yīng)于不同亮度場(chǎng)景的羊肉多分體識(shí)別,具備較強(qiáng)的泛化能力。
分割完成后的羊肉分體隨機(jī)散落在呈勻速運(yùn)動(dòng)的輸送帶上,這種不確定的散落方式使得輸送帶上的片區(qū)羊肉分體存在少量疊放狀況,造成部分羊肉分體被遮擋。如圖13a所示,可以看出頸部分體疊落在胸椎骨與腹肋肉之間,造成腹肋肉部分特征丟失,圖13c中胸椎骨分體置于腰椎骨上方,遮擋了部分腰椎骨,特別是頸部分體和腹肋肉分體的顏色、紋理特征十分相似,這種區(qū)域相交且特征相似的情況不利于被遮擋狀態(tài)下的羊肉多分體識(shí)別。但是,圖中羊肉分體未被遮擋部分仍保留了清晰、獨(dú)立的自然特征,有利于排除羊肉分體遮擋造成的識(shí)別干擾。為測(cè)試羊肉多分體識(shí)別模型對(duì)遮擋狀態(tài)下羊肉分體的識(shí)別效果,人工選取帶遮擋特征的羊肉多分體圖像200幅,作為附加遮擋數(shù)據(jù)集,對(duì)模型的綜合識(shí)別檢測(cè)能力展開測(cè)試,部分識(shí)別結(jié)果如圖13所示。
圖13 針對(duì)附加遮擋數(shù)據(jù)集優(yōu)化模型識(shí)別結(jié)果Fig.13 Recognition results of optimize model for additional occlusion data sets
根據(jù)圖13a樣本1、圖13c樣本2遮擋狀態(tài)下的羊肉多分體識(shí)別結(jié)果,優(yōu)化后的羊肉多分體識(shí)別模型可以準(zhǔn)確區(qū)分疊落、遮擋狀態(tài)下的頸部-胸椎骨、胸椎骨-腰椎骨。這可能是胸椎骨被頸部遮擋的像素區(qū)域面積相對(duì)未被遮擋區(qū)域較小,且存在粘連,對(duì)胸椎骨真實(shí)邊界框定位影響較弱,從而識(shí)別模型仍能排除干擾,確定胸椎骨在圖像中的位置,如圖13a、13b所示。而圖13c中腰椎骨被胸椎骨截?cái)酁橹?、小尺?部分,不利于單一目標(biāo)的識(shí)別,但YOLO v3結(jié)構(gòu)中的中目標(biāo)識(shí)別分支、小目標(biāo)識(shí)別分支,使得模型對(duì)截?cái)嗪蟮亩喾N尺寸部分敏感,仍然可以提取特征用于分類識(shí)別排除遮擋干擾。另外,YOLO v3的9種尺寸不同的錨點(diǎn)框能夠充分囊括同一類目標(biāo)被遮擋后的剩余部分,便于在求取真實(shí)邊界框過(guò)程中將像素交并比及邊界框置信度進(jìn)行比較和統(tǒng)一,降低遮擋部分的誤差。最終,針對(duì)附加遮擋數(shù)據(jù)集,優(yōu)化后的羊肉多分體識(shí)別模型的平均檢測(cè)精度達(dá)到83.47%,能夠準(zhǔn)確識(shí)別被遮擋羊肉多分體的類別及其位置,具備較強(qiáng)的抗遮擋能力與良好的識(shí)別性能。
羊肉多分體中同類分體之間存在個(gè)體尺寸差異較大的情況,為測(cè)試優(yōu)化后模型對(duì)尺寸差異羊肉分體的識(shí)別能力,選擇形體區(qū)別相對(duì)明顯的頸部和腹肋肉進(jìn)行魯棒性試驗(yàn)。采集2組頸部與腹肋肉樣本各200個(gè),共計(jì)400個(gè)樣本,建立附加多尺寸數(shù)據(jù)集?;谟?xùn)練過(guò)程保存的最優(yōu)優(yōu)化后模型針對(duì)附加多尺寸數(shù)據(jù)集展開測(cè)試,部分識(shí)別結(jié)果如圖14所示。
圖14 針對(duì)附加多尺寸數(shù)據(jù)集優(yōu)化模型識(shí)別結(jié)果Fig.14 Recognition results of optimize model for additional multi-dimensional data sets
由圖14可以看出,相同類別的頸部和腹肋肉在外形輪廓、體尺寸上存在明顯不同,特別是圖14a頸部樣本1中,頸部右側(cè)端部的鎖骨特征較頸部樣本2不顯著,圖14c腹肋肉樣本1與腹肋肉樣本2相比,尺寸偏大且相對(duì)飽滿,以上特點(diǎn)不利于模型的精準(zhǔn)識(shí)別。而根據(jù)圖14的識(shí)別結(jié)果,優(yōu)化后模型可以有效排除上述因多尺寸差異帶來(lái)的識(shí)別干擾,并且能夠以較高的置信度得到分體類別,同時(shí)預(yù)測(cè)邊界框位置誤差相對(duì)較小。最終,針對(duì)附加多尺寸數(shù)據(jù)集,優(yōu)化后模型的平均檢測(cè)精度為80.79%,說(shuō)明優(yōu)化后模型針對(duì)多尺度特征明顯的羊肉分體具備良好的魯棒性。
目前,隨著卷積神經(jīng)網(wǎng)絡(luò)的發(fā)展,基于該技術(shù)的目標(biāo)識(shí)別方法愈發(fā)多樣,但面對(duì)不同對(duì)象與任務(wù),不同方法的識(shí)別性能往往不同。為探究?jī)?yōu)化后羊肉多分體識(shí)別模型較其他常用識(shí)別算法的優(yōu)劣性,引入Mask R-CNN、Faster R-CNN、Cascade R-CNN、SSD進(jìn)行對(duì)比試驗(yàn),另外,更換YOLO v3網(wǎng)絡(luò)的特征提取網(wǎng)絡(luò)為MobileNet V1、ResNet34和ResNet50與優(yōu)化后羊肉多分體識(shí)別模型作進(jìn)一步對(duì)比分析。以上算法的訓(xùn)練超參數(shù)與YOLO v3原始模型保持一致,然后利用分別得到的最優(yōu)模型針對(duì)羊肉多分體驗(yàn)證集、附加亮度數(shù)據(jù)集、附加遮擋數(shù)據(jù)集展開測(cè)試,得到相應(yīng)的mAP和單幅圖像處理時(shí)間,用以評(píng)判各方法的識(shí)別效果。部分識(shí)別對(duì)比結(jié)果如圖15所示。
由圖15a可以看出,在原始、調(diào)亮、調(diào)暗和遮擋4種情況下,Mask R-CNN、Faster R-CNN、Cascade R-CNN均能夠?qū)崿F(xiàn)各羊肉分體的準(zhǔn)確識(shí)別,無(wú)漏檢現(xiàn)象,同時(shí)預(yù)測(cè)邊界框定位正確,較目標(biāo)真實(shí)位置無(wú)明顯誤差。特別是在調(diào)暗圖像中,相鄰腹肋肉分體緊密貼合處于黏連狀態(tài)形成整體,以上方法同樣能夠以較高的置信度預(yù)測(cè)得到被檢分體相應(yīng)的類別和邊界框位置。另外,在遮擋情況下,疊落狀態(tài)的肩胛骨對(duì)胸椎骨分體部分形成遮擋,上述方法依然可以準(zhǔn)確識(shí)別被遮擋的胸椎骨分體。而SSD面對(duì)羊肉多分體原始、調(diào)暗和遮擋狀態(tài)時(shí),產(chǎn)生漏檢現(xiàn)象,主要表現(xiàn)為未能準(zhǔn)確識(shí)別出相鄰的肩胛骨和腿骨,另外,在調(diào)亮狀態(tài)中,SSD方法預(yù)測(cè)得到的邊界框與真實(shí)位置誤差明顯,腿骨端部部分沒有完整標(biāo)記,同時(shí)調(diào)暗情況下尺寸相對(duì)較小的肩胛骨預(yù)測(cè)類別概率只有75%。以上現(xiàn)象說(shuō)明,針對(duì)羊肉多分體數(shù)據(jù)集,Mask R-CNN、Faster R-CNN、Cascade R-CNN具備較高的識(shí)別精度以及良好的泛化性和抗遮擋能力,在識(shí)別精度上能夠滿足實(shí)際的生產(chǎn)需求,而SSD識(shí)別能力較弱。其原因可能是基于候選區(qū)域思想設(shè)計(jì)Mask R-CNN、Faster R-CNN、Cascade R-CNN在圖像目標(biāo)檢測(cè)過(guò)程中,先進(jìn)行候選區(qū)域提取,區(qū)分可能存在目標(biāo)的區(qū)域與背景,再對(duì)候選區(qū)域進(jìn)行卷積、池化等運(yùn)算進(jìn)行邊框回歸與分類,有利于排除非目標(biāo)區(qū)域的干擾,在目標(biāo)密度較大時(shí)仍能保持較高的準(zhǔn)確率。而SSD直接對(duì)輸入圖像進(jìn)行處理,得到目標(biāo)位置坐標(biāo)值以及類別概率,再對(duì)位置進(jìn)行修正,易受特征相似情況的影響,同時(shí)SSD的特征金字塔層特征全部來(lái)自于特征提取網(wǎng)絡(luò)的最后一層,造成淺層包含小尺寸物體的特征信息丟失,因而對(duì)小尺寸的肩胛骨檢測(cè)準(zhǔn)確率較低。
圖15b為更換特征提取網(wǎng)絡(luò)為MobileNet V1、ResNet34和ResNet50后的YOLO v3識(shí)別模型與優(yōu)化后模型對(duì)羊肉多分體圖像在原始、調(diào)亮、調(diào)暗和遮擋4種狀態(tài)下的識(shí)別結(jié)果。可以看出,4種模型均未出現(xiàn)漏檢和錯(cuò)檢現(xiàn)象,但在識(shí)別精度上存在差異,例如,YOLO v3-MobileNet V1和YOLO v3-ResNet34在調(diào)亮和調(diào)暗狀態(tài)下對(duì)頸部分體、腿骨分體與肩胛骨的邊界框與真實(shí)位置誤差明顯,而YOLO v3-ResNet50和優(yōu)化后模型上述現(xiàn)象并不顯著,說(shuō)明YOLO v3-ResNet50與優(yōu)化后模型在識(shí)別精度和泛化性、抗遮擋能力上均優(yōu)于YOLO v3-MobileNet V1和YOLO v3-ResNet34。其原因可能是MobileNet V1采用的ReLU激活函數(shù)會(huì)破壞網(wǎng)絡(luò)提取低維空間特征的非線性,導(dǎo)致線性瓶頸,而MobileNet V3則通過(guò)H-Swish激活函數(shù)和注意力機(jī)制逆殘差模塊改善了以上缺點(diǎn),從而使得采用MobileNet V3的YOLO v3模型較MobileNet V1對(duì)羊肉分體特征定位更準(zhǔn)確。另外ResNet50較ResNet34更深的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),有利于深層抽象特征的提取,從而提高模型的識(shí)別精度。
圖15 優(yōu)化模型與其他模型和不同特征提取網(wǎng)絡(luò)下的識(shí)別對(duì)比結(jié)果Fig.15 Recognition results of optimized model compared with other models and different feature extraction networks
實(shí)際生產(chǎn)線對(duì)羊肉多分體識(shí)別方法除要求具備較高的識(shí)別精度之外,還需要較短的處理時(shí)耗,因此,判斷各方法針對(duì)羊肉多分體的識(shí)別實(shí)時(shí)性同樣重要。獲取了Mask R-CNN、Faster R-CNN、Cascade R-CNN、SSD、YOLO v3-MobileNet V1等方法針對(duì)羊肉多分體圖像驗(yàn)證集的單幅圖像處理時(shí)間以及平均檢測(cè)精度,如表2所示。
由表2可知,針對(duì)羊肉多分體圖像驗(yàn)證集,Mask R-CNN單幅圖像平均處理時(shí)間最久,為694.4 ms,其次為Faster R-CNN(575.8 ms),Cascade R-CNN在二階段目標(biāo)檢測(cè)算法中耗時(shí)最少,為237.5 ms,但仍比單目標(biāo)檢測(cè)算法中耗時(shí)最久的SSD多146.7 ms,其原因可能是二階段目標(biāo)檢測(cè)算法先確定目標(biāo)候選框再進(jìn)行回歸和預(yù)測(cè)的推理過(guò)程相對(duì)直接對(duì)圖像進(jìn)行回歸計(jì)算的單目標(biāo)檢測(cè)算法更為復(fù)雜,造成耗時(shí)較久的情況。單目標(biāo)檢測(cè)算法中,優(yōu)化后模型對(duì)單幅圖像平均處理時(shí)間最短,為64.7 ms,然后是YOLO v3-MobileNet V1(67.2 ms),另外,YOLO v3在特征提取網(wǎng)絡(luò)為ResNet34和ResNet50情況下單幅圖像平均處理時(shí)間相差不大,可能是ResNet50網(wǎng)絡(luò)深度雖然比ResNet34較深,但采用了1×1和3×3兩種尺寸的卷積核,使得其網(wǎng)絡(luò)參數(shù)量與只采用3×3尺寸卷積核的ResNet34相差不大,從而兩種模型在處理時(shí)耗上較為接近。以上說(shuō)明在實(shí)時(shí)性方面,優(yōu)化后模型性能最優(yōu),能夠滿足實(shí)際生產(chǎn)需求,而兩階段目標(biāo)檢測(cè)算法耗時(shí)較久,與羊肉多分體的實(shí)時(shí)分類檢測(cè)存在差距。在檢測(cè)精度方面,優(yōu)化后模型的平均檢測(cè)精度最高,為88.05%,較SSD、YOLO v3-MobileNet V1、YOLO v3-ResNet34、YOLO v3-ResNet50分別高20.77、3.70、7.82、0.77個(gè)百分點(diǎn)。對(duì)比試驗(yàn)表明,優(yōu)化后羊肉多分體識(shí)別模型可以兼顧較高的檢測(cè)精度和良好的實(shí)時(shí)性,綜合檢測(cè)能力最優(yōu)。
表2 各模型分類檢測(cè)結(jié)果Tab.2 Classification and detection results of each model
(1)基于單階段目標(biāo)檢測(cè)算法的羊肉多分體識(shí)別模型以YOLO v3為主要網(wǎng)絡(luò),能夠?qū)崿F(xiàn)輸送帶場(chǎng)景圖像中多個(gè)、多類羊肉分體類別的準(zhǔn)確檢測(cè),同時(shí)邊界框預(yù)測(cè)正確、完整,具備一定的多尺度檢測(cè)能力,對(duì)羊肉多分體圖像驗(yàn)證集的平均檢測(cè)精度達(dá)到87.79%,在精度上能夠滿足實(shí)際生產(chǎn)線的需求。
(2)通過(guò)更換羊肉多分體識(shí)別模型的主干網(wǎng)絡(luò)為MobileNet V3,可以有效提升實(shí)時(shí)性,但對(duì)檢測(cè)精度無(wú)顯著影響。針對(duì)羊肉多分體圖像驗(yàn)證集,優(yōu)化后模型單幅圖像處理耗時(shí)為64.7 ms,較原始模型提升48.53%,說(shuō)明本文方法在羊肉多分體實(shí)時(shí)分類檢測(cè)任務(wù)中可以兼顧較高的識(shí)別精度和良好的實(shí)時(shí)性。
(3)設(shè)計(jì)的基于單階段目標(biāo)檢測(cè)算法的羊肉多分體識(shí)別模型針對(duì)光照數(shù)據(jù)集、遮擋數(shù)據(jù)集、多尺度數(shù)據(jù)集平均檢測(cè)精度分別達(dá)到85.16%、83.47%和80.79%,對(duì)光照變化、遮擋狀態(tài)實(shí)際生產(chǎn)過(guò)程中常見的干擾因素及疊落情形具有較強(qiáng)的泛化能力和抗干擾能力,對(duì)多尺度特征顯著的羊肉分體具備良好的魯棒性。
(4)與Mask R-CNN、Faster R-CNN、Cascade R-CNN、SSD相比,對(duì)羊肉多分體圖像驗(yàn)證集,優(yōu)化后羊肉多分體識(shí)別模型較前3種模型識(shí)別精度相差不大,但單幅圖像平均處理時(shí)間縮短,與引入MobileNet V1、ResNet34和ResNet50 3種不同特征提取網(wǎng)絡(luò)的識(shí)別模型比較,優(yōu)化后模型的平均檢測(cè)精度為88.05%,較SSD、YOLO v3-MobileNet V1、YOLO v3-ResNet34、YOLO v3-ResNet50分別高20.77、3.70、7.82、0.77個(gè)百分點(diǎn),綜合檢測(cè)能力最優(yōu)。
農(nóng)業(yè)機(jī)械學(xué)報(bào)2022年3期