顧偉, 王巧華,李慶旭,施行,張洪洲
華中農(nóng)業(yè)大學(xué)工學(xué)院/農(nóng)業(yè)農(nóng)村部長(zhǎng)江中下游農(nóng)業(yè)裝備重點(diǎn)實(shí)驗(yàn)室,武漢 430070
棉種在軋花、脫絨或磨光等過(guò)程中,都會(huì)有不同程度的破損,這將直接影響棉花的產(chǎn)量和品質(zhì)[1]。新疆南疆地區(qū)是我國(guó)重要的棉花生產(chǎn)基地,棉籽精選對(duì)提高該地區(qū)的棉花產(chǎn)量具有重要意義。目前,國(guó)內(nèi)外有關(guān)種子檢測(cè)方法的研究較多,如王亞麗等[2]、Tigabu等[3]使用近紅外(NIR)光譜分別對(duì)玉米種子和松樹種子進(jìn)行分類;董翠翠等[4]、閆彬等[5]采用機(jī)器視覺(jué)對(duì)種子的顏色以及破損情況進(jìn)行研究與分選;余淑華等[6-7]運(yùn)用色選理論對(duì)棉籽的成熟度以及完整度進(jìn)行識(shí)別;Golshan等[8]、Brennen等[9]利用不同的算法自動(dòng)檢測(cè)圖像中的種子;Dean等[10]利用種子的密度成功分選了候選突變體。以上研究大多都針對(duì)單粒種子的檢測(cè),單粒棉籽的檢測(cè)效率低,實(shí)際應(yīng)用很難滿足生產(chǎn)需求,因此提高棉籽檢測(cè)效率是該研究的主要方向。
基于傳統(tǒng)的機(jī)器學(xué)習(xí)方法實(shí)現(xiàn)破損棉籽的鑒別,需要人工提取棉籽數(shù)據(jù)特征才能建立破損棉籽的判別模型,因此該方法的檢測(cè)效率很難滿足生產(chǎn)需要[11]。卷積神經(jīng)網(wǎng)絡(luò)(deep convolutional neural network)自動(dòng)提取圖像特征優(yōu)勢(shì)明顯,且在農(nóng)業(yè)檢測(cè)領(lǐng)域應(yīng)用廣泛[12-13]。由于棉籽尺寸較小,在圖像中屬于小目標(biāo),手動(dòng)提取特征較為困難。SSD-VGG16網(wǎng)絡(luò)能夠快速檢測(cè)出圖像中的棉籽,并識(shí)別其類別與位置信息,適用于多目標(biāo)檢測(cè),但對(duì)于群體棉籽的品質(zhì)檢測(cè)還需要進(jìn)一步的改進(jìn)。
本研究在SSD網(wǎng)絡(luò)[14]的基礎(chǔ)上,提出一種基于ResNet50網(wǎng)絡(luò)[15]改進(jìn)的群體棉籽破損檢測(cè)方法,利用ResNet50網(wǎng)絡(luò)作為基礎(chǔ)網(wǎng)絡(luò)自動(dòng)提取棉籽圖像特征,并利用SSD網(wǎng)絡(luò)對(duì)群體棉籽實(shí)現(xiàn)破損判別,旨在為檢測(cè)群體破損棉籽信息提供新的思路,加速分選棉籽智能化,進(jìn)一步提高棉籽檢測(cè)效率,為后續(xù)研發(fā)相關(guān)自動(dòng)化設(shè)備提供技術(shù)支持。
棉籽采集裝置主要是由暗箱、光源、相機(jī)、鏡頭、背景板以及計(jì)算機(jī)組成(圖1)。相機(jī)使用AD-080GE工業(yè)相機(jī),分辨率為1 024×768 dpi,幀率為30 FPS,品牌為JAI;鏡頭使用Kowa公司制造的LM6NC3型號(hào)。光源為12 W的正白光LED環(huán)形光源,采集計(jì)算機(jī)為L(zhǎng)enovo B50-30,采集軟件為JAI SDK。棉籽在暗箱內(nèi)的物距、焦距和光圈在采集過(guò)程中保持不變。
1.暗箱 Black box; 2.背景板 Background plate; 3.棉籽 Cottonseed; 4.相機(jī)和鏡頭 Camera and lens; 5.環(huán)形光源 Ring light; 6.數(shù)據(jù)傳輸線 Data transmission line; 7.計(jì)算機(jī) Computer.
非破損棉籽原圖如圖2 A所示,破損棉籽圖像如圖2 B所示,采集得到的群體棉籽圖像如圖2C所示,通過(guò)棉籽表面可以明顯觀察出破損棉籽與非破損棉籽的區(qū)別,破損棉籽表面坑洼,非破損棉籽表面光滑。
圖2 棉籽采集圖像Fig.2 Image collection of cottonseed
取新疆新路早棉籽10 000粒,其中破損與非破損棉籽數(shù)量比例為1∶1。將破損與非破損棉籽按1∶1比例均勻?yàn)⒙湓诒尘鞍迳希肅CD相機(jī)采集群體棉籽圖像,之后用LabelImg軟件對(duì)采集的圖像進(jìn)行人工標(biāo)注,分別標(biāo)注出破損棉籽與非破損棉籽,其中訓(xùn)練、驗(yàn)證、測(cè)試集按7∶2∶1比例劃分,10 000粒棉籽圖像具有足夠的泛化代表性,以此來(lái)驗(yàn)證棉籽檢測(cè)的準(zhǔn)確率。
共采集500張群體棉籽圖片,每張圖片約有20粒棉籽,分辨率為1 024×768 dpi,將圖像分辨率調(diào)小至300×300 dpi,在使用SSD訓(xùn)練數(shù)據(jù)前,需要手動(dòng)標(biāo)記并制作tfrecord標(biāo)簽文件,圖像標(biāo)注時(shí)利用棉籽的最小外接矩形進(jìn)行標(biāo)注,保證每粒棉籽盡量在1個(gè)矩形框里。標(biāo)注完成將會(huì)生成含有類別和位置信息的xml文件。標(biāo)注完成后將500幅圖像劃分為訓(xùn)練集、測(cè)試集和驗(yàn)證集,其中訓(xùn)練集350幅圖像、測(cè)試集100幅圖像、驗(yàn)證集50幅圖像。每幅圖像含有約20個(gè)棉籽樣本,500幅圖像中含邊框標(biāo)注樣本個(gè)數(shù)為10 000(其中破損棉籽和非破損棉籽的比例為1∶1),訓(xùn)練集中棉籽7 000粒,測(cè)試集中棉籽2 000粒,驗(yàn)證集中棉籽1 000粒,能夠滿足深度學(xué)習(xí)樣本數(shù)量要求,具體數(shù)據(jù)如表1所示。
表1 棉籽試驗(yàn)數(shù)據(jù)集Table 1 Cottonseed test data sets
1)改進(jìn)前SSD模型結(jié)構(gòu)。本研究主要目標(biāo)是從采集的一幅群體棉籽圖像中檢測(cè)出棉籽目標(biāo)并將其分類。SSD是基于前向傳播的 CNN 網(wǎng)絡(luò),經(jīng)典SSD 模型主網(wǎng)絡(luò)是由 VGG16中部分卷積層組成,并將最后2層的 Conv6 和 Conv7 換成全連接層,用來(lái)進(jìn)行圖像分類。訓(xùn)練模型時(shí),檢測(cè)框架的損失函數(shù)用位置損失(Lconf)和置信損失(Lloc) 的加權(quán)和表示,如公式(1)所示。對(duì)于目標(biāo)檢測(cè),基于區(qū)域的卷積神經(jīng)網(wǎng)絡(luò)有RCNN[16]、Fast RCNN[17]和 Faster RCNN[18],核心思想是在卷積層后接入了感興趣區(qū)域(region of interest,ROI),池化層使網(wǎng)絡(luò)可以定位ROI[19],然后在當(dāng)前區(qū)域內(nèi)進(jìn)行分類。SSD的檢測(cè)框架由2個(gè)部分組成(圖3),一部分是前面的卷積神經(jīng)網(wǎng)絡(luò),經(jīng)典模型中采用的是VGG16,用于對(duì)圖像特征的初步提取,第二部分是位于后端的多尺度特征檢測(cè)網(wǎng)絡(luò),用于對(duì)前端網(wǎng)絡(luò)產(chǎn)生的特征層進(jìn)行不同尺度條件下的特征提取,利用多尺度特征檢測(cè)網(wǎng)絡(luò)當(dāng)中的淺層特征圖尺寸較大的特點(diǎn),檢測(cè)棉籽這一類尺寸較小的物體。圖 3 所示 SSD 針對(duì) Conv4_3、FC7、Conv8_2、 Conv9_2、Conv10_2 和 Conv11_2 特征層的每個(gè)單元按照不同長(zhǎng)寬比分別提取4~6個(gè)默認(rèn)框,最終獲取8 732個(gè)默認(rèn)框,訓(xùn)練階段利用公式(1)為預(yù)測(cè)框做坐標(biāo)偏移的回歸分析,使其盡可能接近標(biāo)注框。測(cè)試階段每個(gè)默認(rèn)框都和標(biāo)注框進(jìn)行重疊率匹配,并按照匹配分?jǐn)?shù)從高到低排序,利用非極大值抑制[20]的方法,去掉所有冗余框,保留置信度最大的框。
圖3 改進(jìn)前的SSD網(wǎng)絡(luò)結(jié)構(gòu)Fig.3 Improving the former SSD network structure
(1)
其中:
(2)
(3)
(4)
2)改進(jìn)SSD模型。SSD-ResNet網(wǎng)絡(luò)是基于經(jīng)典的SSD網(wǎng)絡(luò)改進(jìn)而來(lái)的目標(biāo)檢測(cè)算法,ResNet在ImageNet數(shù)據(jù)集上的錯(cuò)誤率遠(yuǎn)低于VGG網(wǎng)絡(luò)。本研究選用ResNet50代替原有的VGG16模型作為SSD的基礎(chǔ)網(wǎng)絡(luò),來(lái)提取群體棉籽的特征??紤]到生產(chǎn)實(shí)際應(yīng)用,需要綜合考慮算法的效率以及精度,模型大小不宜太大,因此未選用更深層次的網(wǎng)絡(luò)對(duì)SSD進(jìn)行改進(jìn)。經(jīng)典SSD網(wǎng)絡(luò)可分為基礎(chǔ)網(wǎng)絡(luò)和輔助網(wǎng)絡(luò),SSD-ResNet50將基礎(chǔ)網(wǎng)絡(luò)使用ResNet50的前4個(gè)卷積階段代替原SSD中的VGG16的前5個(gè)卷積階段,并將ResNet50的第4個(gè)卷積階段的步長(zhǎng)都改為1,以實(shí)現(xiàn)對(duì)輸入圖像特征的提取。ResNet網(wǎng)絡(luò)引入了一種殘差學(xué)習(xí)框架,以應(yīng)對(duì)傳統(tǒng)網(wǎng)絡(luò)的退化問(wèn)題,由試驗(yàn)可知,這種殘差學(xué)習(xí)框架有利于棉籽的檢測(cè),如圖4所示為普通結(jié)構(gòu)與殘差結(jié)構(gòu)的差異。
圖4 普通與殘差對(duì)比圖Fig.4 Comparison between ordinary and residual
ResNet使用的方法就是對(duì)多層的殘差映射進(jìn)行擬合,假設(shè)H(x)為幾個(gè)網(wǎng)絡(luò)層堆疊的期望映射,x即為當(dāng)前堆疊塊的入口,使用的relu激活函數(shù)縮短學(xué)習(xí)周期,使用relu激活函數(shù)越多,節(jié)省的參數(shù)就越多,在使用relu激活函數(shù)過(guò)程中,必須保持經(jīng)過(guò)殘差的堆疊塊x和最后輸出的期望映射H(x)的高度、寬度、維度一致。假設(shè)n個(gè)非線性層可近似地表達(dá)為某個(gè)復(fù)雜函數(shù)(殘差函數(shù)),將堆疊起來(lái)的網(wǎng)絡(luò)層擬合成為另一個(gè)映射,映射為F(x)=H(x)-x,從而基礎(chǔ)映射便成為H(x)=F(x)+x。引入殘差學(xué)習(xí)框架,可以大幅降低提取特征的重復(fù)度、減少網(wǎng)絡(luò)模型的計(jì)算量、增強(qiáng)網(wǎng)絡(luò)的泛化能力,對(duì)比VGG網(wǎng)絡(luò),ResNet網(wǎng)絡(luò)訓(xùn)練完成后,隨機(jī)去除某個(gè)網(wǎng)絡(luò)層,并不會(huì)導(dǎo)致網(wǎng)絡(luò)大幅度的退化,而VGG網(wǎng)絡(luò)刪減任何一層都會(huì)導(dǎo)致模型的性能崩潰。
3)基于ResNet50改進(jìn)SSD模型?;A(chǔ)網(wǎng)絡(luò)(base network)是用于圖像分類的標(biāo)準(zhǔn)神經(jīng)網(wǎng)絡(luò),基礎(chǔ)網(wǎng)絡(luò)的理論基礎(chǔ)是生成模型,生成模型可以自適應(yīng)地從輸入圖像中學(xué)習(xí)重要的特征,以解決傳統(tǒng)的全連接網(wǎng)絡(luò)特征提取能力不足的問(wèn)題。但是由于生成模型提取到的特征信息冗余太多,無(wú)法得到棉籽的準(zhǔn)確信息,所以使用基礎(chǔ)網(wǎng)絡(luò)對(duì)輸入數(shù)據(jù)進(jìn)行特征提取,為后續(xù)網(wǎng)絡(luò)層提供輸入信息,以加快后續(xù)棉籽檢測(cè)的訓(xùn)練速度,提高網(wǎng)絡(luò)的表達(dá)能力。ResNet通過(guò)引入殘差學(xué)習(xí)來(lái)提高模型的檢測(cè)性能,殘差學(xué)習(xí)模塊的構(gòu)造是合并n個(gè)堆疊塊,構(gòu)造塊定義為:
y=F(x,Wi)+x
(5)
式(5)中:x為模塊輸入向量;y為輸出向量;Wi為權(quán)重層參數(shù);F(x,Wi)為當(dāng)前網(wǎng)絡(luò)想要學(xué)習(xí)的殘差結(jié)構(gòu)。
在殘差模塊的第1層公式F=W2σ(W1x)中,σ為relu激活函數(shù); 第2層則通過(guò)快捷連接來(lái)執(zhí)行F+x操作,當(dāng)公式(5)中的輸入向量x和函數(shù)F的維度一致時(shí),需要對(duì)輸入向量x執(zhí)行線性投影Ws來(lái)實(shí)現(xiàn)維度匹配:
y=F(x,Wi)+Wsx
(6)
為了提升棉籽檢測(cè)網(wǎng)絡(luò)的檢測(cè)速度以及減小其參數(shù)量,選擇Resnet 50殘差結(jié)構(gòu)進(jìn)行網(wǎng)絡(luò)替換,選取的特征提取層為conv1_x(卷積核大小為7×7×64),conv2_x(卷積核大小為1×1×64,3×3×64,1×1×256), conv3_x(卷積核大小為1×1×128,3×3×128,1×1×512), conv4_x(卷積核大小為1×1×256,3×3×256,1×1×1 024),卷積過(guò)后得到第1個(gè)預(yù)測(cè)特征層大小為(38×38×1 024),再經(jīng)過(guò)conv5_x分別進(jìn)行卷積、Batch Normalization、relu得到第2個(gè)預(yù)測(cè)特征層,后5個(gè)階段均按照此方法進(jìn)行,一共得到6個(gè)預(yù)測(cè)特征層。其中在conv5_x、conv6_x、conv7_x前3個(gè)階段中步距均為2,Padding均為1,后2個(gè)階段的步距均為1,Padding均為0,最后得到的后5個(gè)預(yù)測(cè)特征層大小分別為(19×19×512)、(10×10×512)、(5×5×256)、(3×3×256)、(1×1×256),后5個(gè)階段相比較原來(lái)的VGG16都添加了Batch Normalization層,可加速網(wǎng)絡(luò)的收斂并提升準(zhǔn)確率[21]。圖5為SSD-ResNet50的網(wǎng)絡(luò)結(jié)構(gòu)圖。
圖5 基于ResNet50改進(jìn)的SSD網(wǎng)絡(luò)結(jié)構(gòu)Fig.5 Improved SSD network structure based on ResNet50
4)訓(xùn)練參數(shù)設(shè)置。不同層的特征圖在卷積神經(jīng)網(wǎng)絡(luò)中感受域大小也不同,此處采用不同位置的默認(rèn)框?qū)?yīng)不同的區(qū)域和目標(biāo)尺寸。設(shè)有m個(gè)特征圖用來(lái)預(yù)測(cè), 則每個(gè)特征圖中默認(rèn)框的尺寸為:
(7)
式(7)中:Smin為網(wǎng)絡(luò)結(jié)構(gòu)中最底層的默認(rèn)框尺度,值為0.2;Smax為最高層的默認(rèn)框尺度,值為0.95。
使用不同的寬高比取值ar∈{1,2,3,1/2,1/3},則計(jì)算默認(rèn)框的寬、高分別為:
(8)
(9)
(10)
本研究建立SSD-ResNet50訓(xùn)練模型,選擇Softmax作為損失函數(shù),公式為:
(11)
其中,Sj為類別j的得分,yi為目標(biāo)的真實(shí)標(biāo)簽。不同類別上的目標(biāo)分值離散程度越高,損失值越低,模型性能越好。
5)遷移學(xué)習(xí)。在深度學(xué)習(xí)領(lǐng)域中,利用遷移學(xué)習(xí)這種模型訓(xùn)練手段可以避免隨機(jī)初始化網(wǎng)絡(luò)權(quán)重和偏置等參數(shù)導(dǎo)致的模型收斂速度慢和網(wǎng)絡(luò)的不穩(wěn)定[22]等問(wèn)題。利用大數(shù)據(jù)集下已經(jīng)訓(xùn)練好的預(yù)訓(xùn)練模型,通過(guò)共享網(wǎng)絡(luò)前端的權(quán)值參數(shù)和微調(diào)網(wǎng)絡(luò)后端的參數(shù),可以使新任務(wù)下的模型收斂更為迅速,在小數(shù)據(jù)集下也只需要少量的訓(xùn)練時(shí)間和計(jì)算資源開銷,便可以實(shí)現(xiàn)對(duì)新任務(wù)的適應(yīng)。本研究利用COCO數(shù)據(jù)集下預(yù)訓(xùn)練好的模型權(quán)重初始化SSD網(wǎng)絡(luò)的權(quán)重,通過(guò)訓(xùn)練對(duì)SSD網(wǎng)絡(luò)參數(shù)進(jìn)行微調(diào),進(jìn)一步減少了模型的訓(xùn)練時(shí)間與資源。
模型訓(xùn)練的硬件平臺(tái)為:GPU為NIVIDIA GeForce RTX 2080Ti;CPU為AMD Ryzen Threadripper 2920X @3.5 GHz;內(nèi)存為128 G。軟件平臺(tái)為:CUDA Toolkit 9.2 + CUDNN V9.2 + Python 3.5 +Tensorflow-GPU 1.8.0。由于深度學(xué)習(xí)需要大量的數(shù)據(jù)進(jìn)行訓(xùn)練,本研究在采集得到圖片后,將其標(biāo)為破損與非破損,訓(xùn)練、驗(yàn)證、測(cè)試集比例按7∶2∶1劃分,本研究訓(xùn)練和測(cè)試時(shí)均使用GPU加速。
模型訓(xùn)練的過(guò)程是模型不斷調(diào)整自身參數(shù),使得預(yù)測(cè)值與真實(shí)值不斷接近的過(guò)程,訓(xùn)練過(guò)程中使用的目標(biāo)損失函數(shù)為公式(11),基于ResNet 50改進(jìn)的SSD模型底層權(quán)重均使用遷移學(xué)習(xí)的方法進(jìn)行初始化,其余權(quán)重采用均值為0、方差為0.03的高斯分布進(jìn)行隨機(jī)初始化。梯度更新是訓(xùn)練過(guò)程中不斷調(diào)整權(quán)重和偏置的方法,從而使模型的性能不斷優(yōu)化,本研究使用批量隨機(jī)梯度下降算法尋找梯度下降方向。初始學(xué)習(xí)率設(shè)置為0.03,學(xué)習(xí)率衰減方法為指數(shù)衰減法,衰減率設(shè)置為0.98。訓(xùn)練的批次圖像數(shù)量(batch size)設(shè)置為16,最大訓(xùn)練次數(shù)設(shè)置為1×105,單步訓(xùn)練時(shí)間約為2 s,每訓(xùn)練10 min保存1次模型的參數(shù),改進(jìn)前后模型訓(xùn)練參數(shù)保持一致。以基于ResNet 50網(wǎng)絡(luò)改進(jìn)的SSD群體棉籽檢測(cè)網(wǎng)絡(luò)的訓(xùn)練過(guò)程為例,改進(jìn)前的VGG16版本訓(xùn)練過(guò)程與之類似。圖6為使用了遷移學(xué)習(xí)損失函數(shù)變化曲線圖,從曲線可以看出模型的訓(xùn)練過(guò)程?;赗esNet50改進(jìn)的SSD網(wǎng)絡(luò)在使用遷移學(xué)習(xí)進(jìn)行訓(xùn)練10 743次后維持在較低水平的小幅度震蕩。
圖6 遷移學(xué)習(xí)損失函數(shù)曲線Fig.6 Transfer learning loss function curve
目前評(píng)價(jià)深度學(xué)習(xí)目標(biāo)檢測(cè)模型性能優(yōu)劣的主要手段是測(cè)試模型在驗(yàn)證集數(shù)據(jù)上的檢測(cè)效果。常用的評(píng)價(jià)指標(biāo)有準(zhǔn)確率(precision)、召回率(recall)、漏檢率(missed detection rate)、檢測(cè)速度(speed)和模型大小(parameter size)。本研究利用訓(xùn)練好的SSD-ResNet50模型和改進(jìn)前SSD模型分別對(duì)驗(yàn)證集50幅圖像(含1 000粒棉籽)進(jìn)行測(cè)試,采用上述5個(gè)評(píng)價(jià)指標(biāo)對(duì)比兩者的優(yōu)劣。漏檢率定義為:
(12)
式(12)中,N為棉籽的總數(shù)量,B為誤將棉籽當(dāng)做背景的數(shù)量。
對(duì)50幅群體棉籽圖像的測(cè)試結(jié)果進(jìn)行統(tǒng)計(jì),包括準(zhǔn)確率、召回率、漏檢率、檢測(cè)速度和模型大小5項(xiàng)評(píng)價(jià)指標(biāo)。共1 000粒棉籽,SSD-ResNet50錯(cuò)判了39粒棉籽,其中將無(wú)損棉籽錯(cuò)判為破損22粒,將破損棉籽判為無(wú)損棉籽17粒,漏檢0粒。SSD-VGG16錯(cuò)判了75粒,其中將無(wú)損棉籽錯(cuò)判為破損36粒,將破損棉籽判為無(wú)損棉籽25粒,漏檢14粒。此外,使用本研究所提出的方法與目前比較成熟的YOLOV3進(jìn)行了詳細(xì)的對(duì)比,3種模型的測(cè)試結(jié)果如表2所示。其中,YOLOV3網(wǎng)絡(luò)參數(shù)設(shè)置值與上述SSD網(wǎng)絡(luò)參數(shù)設(shè)置值保持一致。
表2 模型測(cè)試結(jié)果Table 2 Model test results
由表2可知,基于ResNet50改進(jìn)的SSD模型在精度和速度方面均優(yōu)于改進(jìn)前的SSD-VGG16網(wǎng)絡(luò),精度更優(yōu)于現(xiàn)在成熟的YOLOV3網(wǎng)絡(luò)。在使用ResNet50過(guò)程中,將破損棉籽錯(cuò)判為無(wú)損的原因是部分破損棉籽的裂紋過(guò)細(xì),即棉籽損傷過(guò)小,導(dǎo)致誤判。將非破損棉籽錯(cuò)判為破損的原因是部分棉籽脫絨不干凈,棉籽上面殘留少量棉絨,導(dǎo)致誤判為破損的棉籽。YOLOV3的準(zhǔn)確率較低的原因在于YOLO、FasterRCNN等算法只會(huì)在最后一層做錨框(anchor),因此它沒(méi)有多尺度的特征,對(duì)尺度變化不敏感。因此,對(duì)于棉籽這類尺寸較小的物體使用SSD目標(biāo)檢測(cè)效果比較好。
綜合考慮檢測(cè)精度和速度,基于ResNet50改進(jìn)的SSD模型對(duì)群體棉籽的識(shí)別效果最佳。基于ResNet50改進(jìn)的SSD模型的檢測(cè)速度可以達(dá)到86 FPS,快于改進(jìn)前的59 FPS,且模型大小僅為11.10 Mb,滿足部署到嵌入式系統(tǒng)的模型參數(shù)要求。此外,漏檢率是衡量模型可靠性的重要指標(biāo),改進(jìn)后SSD模型的漏檢率為0,說(shuō)明模型的可靠性高于SSD-VGG16網(wǎng)絡(luò)以及YOLOV3的網(wǎng)絡(luò)。圖7 A、B分別為同一幅群體棉籽圖像模型和基于ResNet50和VGG16改進(jìn)的SSD模型的檢測(cè)結(jié)果,圖7C為YOLOV3模型檢測(cè)結(jié)果。本研究并未使用當(dāng)前最新網(wǎng)絡(luò)對(duì)棉籽進(jìn)行檢測(cè),主要原因是后續(xù)將群體棉籽檢測(cè)模型應(yīng)用到生產(chǎn)實(shí)際,需要考慮網(wǎng)絡(luò)的成熟度以及抗干擾能力,所以選用已經(jīng)成熟的網(wǎng)絡(luò)作為棉籽檢測(cè)的框架。將模型應(yīng)用到實(shí)際生產(chǎn),檢測(cè)精度需大于95%,速度不小于20 FPS,綜合考慮速度與精度,本研究選用SSD-ResNet50對(duì)群體棉種進(jìn)行破損識(shí)別。
圖7 不同模型的檢測(cè)圖Fig.7 Test charts of different models
本研究以新路早-50#脫絨群體棉籽為研究對(duì)象,使用基于ResNet50網(wǎng)絡(luò)改進(jìn)的SSD模型對(duì)群體棉籽中的破損棉籽和無(wú)損棉籽進(jìn)行識(shí)別檢測(cè),研究結(jié)果顯示其對(duì)群棉籽中無(wú)損和破損的識(shí)別性能最佳,準(zhǔn)確率和召回率分別為96.1%、97.3%。模型大小為11.10 Mb,檢測(cè)速度達(dá)到了86 FPS。本研究通過(guò)遷移學(xué)習(xí),將COCO大數(shù)據(jù)集下預(yù)訓(xùn)練好的模型權(quán)重遷移到群體棉籽中破損和無(wú)損檢測(cè)的任務(wù)下,加速了群體棉籽檢測(cè)模型的收斂速度,節(jié)約了模型的訓(xùn)練成本;同時(shí)本研究解決了群體棉籽圖像難以分割的問(wèn)題,直接利用卷積神經(jīng)網(wǎng)絡(luò)獲取棉籽的位置和類別信息,不必再使用傳統(tǒng)圖像識(shí)別方法,將群體棉籽中的個(gè)體單獨(dú)分割出來(lái)進(jìn)行檢測(cè)。