? 孔得溦 李尚 陳義明
摘要:針對(duì)傳統(tǒng)人工判別克氏原螯蝦性別效率低、成本高的問題,提出了一種基于YOLO v5的克氏原螯蝦性別檢測(cè)模型,實(shí)現(xiàn)了克氏原螯蝦性別特征的自動(dòng)判別。采用自主設(shè)計(jì)裝置拍攝克氏原螯蝦圖像,使用Labelme工具進(jìn)行基于雄蝦交接器檢測(cè)和基于區(qū)域特征檢測(cè)兩種方法的數(shù)據(jù)標(biāo)注,在Pytorch框架下以Resnet-18為特征提取網(wǎng)絡(luò)訓(xùn)練二分類模型,基于YOLO v5訓(xùn)練交接器檢測(cè)和區(qū)域特征檢測(cè)兩種模型。結(jié)果表明:基于區(qū)域特征檢測(cè)的模型具有較高的檢測(cè)性能和準(zhǔn)確性,能夠高效、低成本地提取克氏原螯蝦性別特征,對(duì)克氏原螯蝦品種改良具有重要意義。
關(guān)鍵詞:YOLO v5;目標(biāo)檢測(cè);克氏原螯蝦;深度學(xué)習(xí);卷積神經(jīng)網(wǎng)絡(luò)
中圖分類號(hào):TP391.4文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1006-060X(2024)03-0059-05
A Gender Detection Method for Crayfish Based on YOLO v5
KONG De-wei,LI Shang,CHEN Yi-ming
(College of Information and Intelligence, Hunan Agricultural University, Changsha 410128, PRC)
Abstract: In response to the low efficiency and high cost of traditional manual discrimination of the gender of crayfish (Procambarus clarkii), this study proposed a gender detection model for crayfish based on YOLO v5, achieving automatic discrimination of the gender of crayfish. Crayfish images were captured using a self-designed device, and data annotation was performed using two methods, i.e., detection based on the petasma and detection based on regional features, using the Labelme tool. A binary classification model was trained using Resnet-18 as the feature extraction network under the Pytorch framework, and two models, one for petasma detection and the other for regional feature detection, were trained based on YOLO v5. The results showed that the model based on regional feature detection had high detection performance and accuracy, efficiently and cost-effectively extracting the gender characteristics of crayfish, which was of great significance for the breeding improvement of crayfish.
Key words: YOLO v5; target detection; crayfish; deep learning; convolutional neural network
克氏原螯蝦(Procambarus clarkii),俗稱小龍蝦,是我國(guó)淡水養(yǎng)殖的品種之一[1-2]??耸显r在湖南省的漁業(yè)發(fā)展中具有重要的地位和作用。2022年,湖南省克氏原螯蝦養(yǎng)殖面積達(dá)到24.13萬hm2,年產(chǎn)量為42.35萬t,養(yǎng)殖面積和產(chǎn)量均居全國(guó)第三位,已成為湖南省發(fā)展農(nóng)村經(jīng)濟(jì)、提高農(nóng)民收入的重要途徑。
獲取小龍蝦的表現(xiàn)型數(shù)據(jù)是研究小龍蝦基因型、環(huán)境和表現(xiàn)型相互關(guān)聯(lián)性,從而指導(dǎo)遺傳育種的重要環(huán)節(jié)。性別是小龍蝦的一個(gè)重要特征,克氏原螯蝦的性別特征明顯,雄蝦第1、2腹足演變成管狀交接器,而雌蝦第1腹足退化,第2腹足羽化[3]。因此,雌雄螯蝦具有比較明顯的性別特征,且該特征易被機(jī)器識(shí)別,如圖1所示。
近年來,針對(duì)人工觀察和測(cè)量獲取螯蝦表現(xiàn)型數(shù)據(jù)耗時(shí)耗力的問題,學(xué)者們將圖像分析技術(shù)引入克氏原螯蝦的生產(chǎn)和監(jiān)測(cè)過程,實(shí)現(xiàn)了對(duì)克氏原螯蝦的自動(dòng)識(shí)別與檢測(cè)。Tan等[4]利用遠(yuǎn)程操控水下潛水器獲取視頻序列,通過目標(biāo)檢測(cè)與跟蹤算法對(duì)水下克氏原螯蝦數(shù)量進(jìn)行統(tǒng)計(jì);Sistler[5]采用彩色圖像處理方法,通過分析克氏原螯蝦脫殼前顏色的變化來預(yù)測(cè)脫殼時(shí)間;盧文超等[6]應(yīng)用近紅外光譜技術(shù),建立克氏原螯蝦新鮮度與光譜特征之間的數(shù)學(xué)模型,實(shí)現(xiàn)對(duì)螯蝦新鮮度的快速檢測(cè)。
以克氏原螯蝦為研究對(duì)象,對(duì)螯蝦的第1、2腹足處進(jìn)行檢測(cè),并采集、標(biāo)注數(shù)據(jù)集,構(gòu)建和訓(xùn)練基于螯蝦區(qū)域特征檢測(cè)的深度學(xué)習(xí)模型,實(shí)現(xiàn)螯蝦性別的自動(dòng)、準(zhǔn)確識(shí)別,具體工作包括:設(shè)計(jì)和建造螯蝦表現(xiàn)型數(shù)據(jù)獲取設(shè)備,采集螯蝦腹部圖像;使用標(biāo)注軟件工具Labelme對(duì)螯蝦的第1、2腹足處進(jìn)行標(biāo)注,獲取訓(xùn)練數(shù)據(jù)集;構(gòu)建并訓(xùn)練螯蝦區(qū)域特征檢測(cè)模型,用訓(xùn)練好的模型對(duì)測(cè)試集進(jìn)行檢測(cè)識(shí)別。
1 材料與方法
1.1 圖像采集
2022年7—8月,于湖南省長(zhǎng)沙市開福區(qū)水產(chǎn)科學(xué)研究所進(jìn)行了數(shù)據(jù)采集。該研究自主設(shè)計(jì)了克氏原螯蝦活體檢測(cè)平臺(tái),平臺(tái)由1個(gè)機(jī)箱和6個(gè)??低晹z像頭構(gòu)成,能夠同時(shí)從6個(gè)不同的角度對(duì)克氏原螯蝦進(jìn)行拍攝,每只克氏原螯蝦的拍攝時(shí)間為60 s,所采集圖像的分辨率為2 560像素×1 920像素。該研究的目的是判別克氏原螯蝦的性別,因此只需提取2號(hào)攝像頭拍攝的螯蝦腹部圖像,檢測(cè)其第1、2腹足處,拍攝圖像如圖2所示。
1.2 圖像標(biāo)注
從采集的數(shù)據(jù)中,隨機(jī)選取了1 680幅圖像作為克氏原螯蝦數(shù)據(jù)集。由于樣本數(shù)量較少,為了避免數(shù)據(jù)出現(xiàn)過擬合問題,在訓(xùn)練數(shù)據(jù)集里囊括了設(shè)備光照條件改進(jìn)前后2種采集環(huán)境下的數(shù)據(jù),并使用Labelme軟件對(duì)數(shù)據(jù)集中的圖像進(jìn)行了標(biāo)注[7]。
1.2.1 基于雄蝦交接器檢測(cè)的數(shù)據(jù)標(biāo)注 該數(shù)據(jù)標(biāo)注方法只對(duì)雄性克氏原螯蝦的腹部交接器進(jìn)行標(biāo)注,標(biāo)注的數(shù)據(jù)量少,可節(jié)省人工成本。但螯蝦腹部數(shù)據(jù)集的圖像質(zhì)量差,圖中交接器特征不明顯,影響對(duì)交接器的特征提取和數(shù)據(jù)標(biāo)注。
1.2.2 基于區(qū)域特征檢測(cè)的數(shù)據(jù)標(biāo)注 該數(shù)據(jù)標(biāo)注方法對(duì)雌雄2種性別的克氏原螯蝦的第1、2腹足處進(jìn)行矩形框標(biāo)注,并給出雌和雄2種類別,分別用0和1表示?;趨^(qū)域特征的檢測(cè)模型能夠提取低清晰度的圖像特征,增強(qiáng)模型的檢測(cè)精度和可靠度,獲得更好的訓(xùn)練效果。
1.3 檢測(cè)模型
YOLO系列模型是基于深度學(xué)習(xí)的單階段目標(biāo)檢測(cè)模型,它使用卷積神經(jīng)網(wǎng)絡(luò)直接進(jìn)行目標(biāo)區(qū)域定位和目標(biāo)類別判斷,而無需先產(chǎn)生候選框再進(jìn)行后續(xù)的分類和回歸,因而具有訓(xùn)練和推斷速度快的優(yōu)勢(shì)[8]。筆者使用YOLO v5模型對(duì)克氏原螯蝦進(jìn)行檢測(cè),從而推斷螯蝦的性別。
1.3.1 模型輸入輸出 模型輸入端讀入具有3個(gè)通道的RGB圖像,并將每張圖像規(guī)范為640像素×
640像素的大小,送入特征提取主干網(wǎng)絡(luò)。圖像經(jīng)過8、16和32倍的降采樣特征提取后,依次輸出3個(gè)80×80×21、40×40×21和20×20×21的特征圖,分別表示將輸入圖像劃分為80×80、40×40和20×20的網(wǎng)格,其中每個(gè)單元格用來預(yù)測(cè)3個(gè)邊界框,每個(gè)邊界框用一個(gè)7維向量表示,分別為置信度C,矩形框參數(shù)中的邊界框中心點(diǎn)的平面直角坐標(biāo)系坐標(biāo)(cx,cy)、邊界框長(zhǎng)度h、邊界框?qū)挾葁和2個(gè)類別(0和1)。因此,特征圖的第3個(gè)維度大小21表示預(yù)測(cè)的3個(gè)邊界框的結(jié)果。
1.3.2 特征提取網(wǎng)絡(luò) 克氏原螯蝦第1、2腹足檢測(cè)模型的特征提取網(wǎng)絡(luò)結(jié)構(gòu)主要分為3個(gè)部分:Backbone、Neck和Head,模型如圖3所示。
Backbone部分包括Conv模塊、C3模塊和SPPF(Spatial Pyramid Pooling Fusion)模塊,作用是提取圖像中的物體信息,用于后續(xù)的目標(biāo)檢測(cè)。YOLO v5網(wǎng)絡(luò)在Backbone部分采用CSPDarknet53作為主干網(wǎng)絡(luò),CSP(Cross Stage Partial)結(jié)構(gòu)是Backbone部分中的重要組成模塊,可以減少特征圖的通道數(shù)、降低計(jì)算量、減少內(nèi)存占用,同時(shí)保持特征的多樣性和豐富性[9]。Conv模塊由Conv2d、BatchNorm2d(BN)和激活函數(shù)SiLU構(gòu)成,Conv模塊會(huì)將特征圖的寬高減半,得到下采樣特征圖,同時(shí)提取目標(biāo)特征。
C3模塊在Backbone中作為主要的特征提取模塊,由3個(gè)Conv模塊和1個(gè)Bottleneck模塊組成。特征圖進(jìn)入C3后,將會(huì)分為2路,左路經(jīng)過Conv和1個(gè)Bottleneck,右路只經(jīng)過1個(gè)Conv,最后將2路進(jìn)行Concat連接,再經(jīng)過1個(gè)Conv。C3中的3個(gè)Conv模塊均為1×1卷積,起到降維或升維的作用。
SPPF模塊將3個(gè)kernel為5×5的MaxPool做串行計(jì)算,第一個(gè)MaxPool表示較大的尺度,第二個(gè)MaxPool在第一個(gè)MaxPool的基礎(chǔ)上進(jìn)一步做池化,進(jìn)一步縮小產(chǎn)生的尺度。SPPF能將任意大小的特征圖轉(zhuǎn)換成固定大小的特征向量,并且保持較快的處理速度。
Neck部分的網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)采用了FPN+PAN的結(jié)構(gòu)。FPN(Feature Pyramid Networks)是用自頂向下的側(cè)邊連接,在所有尺度構(gòu)建出高級(jí)語義特征圖,構(gòu)造了特征金字塔的經(jīng)典結(jié)構(gòu)[10]。FPN中間經(jīng)過多層的網(wǎng)絡(luò)后,底層的目標(biāo)信息已經(jīng)非常模糊,因此PAN(Path Aggregation Network)又加入了自底向上的路徑[11]。PAN是一種路徑聚合網(wǎng)絡(luò),增加自底向上的路徑,使高層特征能夠獲得低層特征的細(xì)節(jié),加強(qiáng)了定位信息,實(shí)現(xiàn)了特征的多尺度融合。Head的主體部分是3個(gè)檢測(cè)器,檢測(cè)器進(jìn)行檢測(cè)的過程即為利用基于網(wǎng)格的邊界框在不同尺度的特征圖上進(jìn)行目標(biāo)檢測(cè)的過程。
2 結(jié)果與分析
2.1 試驗(yàn)設(shè)置
試驗(yàn)環(huán)境為Python 3.7.4,Pytorch 1.13.0;模型為YOLO v5 7.0;硬件配置為AMD Ryzen 7 5800H CPU,內(nèi)存32 G,Tesla T4 GPU。數(shù)據(jù)集中訓(xùn)練集、驗(yàn)證集與測(cè)試集的比例為8∶1∶1。
由于數(shù)據(jù)集樣本較少,需進(jìn)行圖像增強(qiáng)以擴(kuò)充樣本數(shù)量。筆者主要采取以下幾種方式進(jìn)行圖像增強(qiáng):對(duì)圖片進(jìn)行Mosaic增強(qiáng),將4張不同的圖像拼接成一張新的圖像;HSV隨機(jī)選擇色彩變換的參數(shù)對(duì)圖像進(jìn)行變換;用Fliplr將圖像的每個(gè)像素沿著水平方向翻轉(zhuǎn)。這些變換后的圖像會(huì)被直接用于模型的訓(xùn)練,而不會(huì)被保存為新的圖像文件,可以有效減少存儲(chǔ)空間的占用,并保證訓(xùn)練過程中數(shù)據(jù)的實(shí)時(shí)性和多樣性,提高模型的泛化能力和魯棒性。
2.2 參數(shù)配置
克氏原螯蝦數(shù)據(jù)集為小樣本數(shù)據(jù)集,但圖像復(fù)雜度高且特征不明顯,模型易過擬合。將超參數(shù)epoch(即訓(xùn)練輪數(shù))設(shè)為1 000,并采用早停機(jī)制,參數(shù)patience設(shè)為100,表示模型效果在100輪內(nèi)未提升則提前停止訓(xùn)練。采用較大的訓(xùn)練輪數(shù)和適當(dāng)?shù)脑缤C(jī)制可以有效防止模型過擬合。batch_size為每次訓(xùn)練時(shí)在訓(xùn)練集中一次取的訓(xùn)練樣本個(gè)數(shù)。根據(jù)數(shù)據(jù)集特點(diǎn)和硬件條件,采用小批次訓(xùn)練,將batch_size設(shè)為16,使梯度下降更平滑,以增加模型的泛化能力;將workers設(shè)置為4,加快訓(xùn)練和模型推理的速度。
2.3 評(píng)價(jià)指標(biāo)
混淆矩陣(Confusion Matrix)是機(jī)器學(xué)習(xí)中評(píng)估分類模型預(yù)測(cè)結(jié)果的情形分析表,體現(xiàn)模型對(duì)不同類別樣本判斷正確和錯(cuò)誤的情況[12],如表1所示。
準(zhǔn)確率(Average Precision,AP)的平均值。AP是一個(gè)綜合召回率和準(zhǔn)確率的指標(biāo),反映了模型在不同的置信度閾值下,能夠正確檢測(cè)出目標(biāo)的概率[13]。mAP按公式(3)計(jì)算。
筆者采用了2種mAP評(píng)價(jià)指標(biāo):mAP@0.5表示交并比(Intersection over Union,IoU)閾值為0.5時(shí)所有類別AP的平均值;mAP@0.5:0.95表示在不同的IoU閾值(從0.5到0.95,步長(zhǎng)為0.05)計(jì)算該IoU閾值對(duì)應(yīng)的mAP,最終將區(qū)間內(nèi)求得的所有mAP取平均值,代表模型在多個(gè)IoU閾值下的綜合性能。
2.4 試驗(yàn)結(jié)果
為了避免過擬合,使用早停機(jī)制,在第668輪完成訓(xùn)練集上的模型訓(xùn)練,損失函數(shù)隨訓(xùn)練輪數(shù)收斂的曲線如圖4所示。
在同樣的訓(xùn)練集上,將所有的螯蝦圖像分為雄蝦和雌蝦2類,以Resnet-18為特征提取網(wǎng)絡(luò)訓(xùn)練一個(gè)二分類模型實(shí)現(xiàn)對(duì)螯蝦的雌雄分類,作為本實(shí)驗(yàn)的對(duì)照組。從表2可以看出,與Resnet-18二分類方案和基于雄蝦交接器檢測(cè)的方案相比,基于區(qū)域特征檢測(cè)的方案具有絕對(duì)的優(yōu)勢(shì),檢測(cè)準(zhǔn)確率達(dá)96.55%,比Resnet-18模型高6.97個(gè)百分點(diǎn),比基于雄蝦交接器檢測(cè)的模型高0.7個(gè)百分點(diǎn);召回率達(dá)99.54%,比Resnet-18模型高7.54個(gè)百分點(diǎn),比基于雄蝦交接器檢測(cè)的模型高0.75個(gè)百分點(diǎn);mAP@0.5和mAP@0.5:0.95比基于雄蝦交接器檢測(cè)的YOLO v5分別高1.76和44.44個(gè)百分點(diǎn)。檢測(cè)結(jié)果表明,基于區(qū)域特征檢測(cè)的YOLO v5模型平均檢測(cè)時(shí)間為8 ms,較其他2個(gè)模型而言,檢測(cè)性能大幅增強(qiáng),能夠完成高速、精確獲取螯蝦性別特征的任務(wù)。模型在驗(yàn)證集上的預(yù)測(cè)結(jié)果如表2所示。將訓(xùn)練好的模型應(yīng)用到測(cè)試集,結(jié)果發(fā)現(xiàn)模型可以準(zhǔn)確檢測(cè)出螯蝦的性別,并輸出性別標(biāo)簽和置信度,準(zhǔn)確率達(dá)96.00%。
3 結(jié)論
筆者構(gòu)建了一個(gè)基于YOLO v5神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測(cè)模型,對(duì)克氏原螯蝦的第1、2腹足處進(jìn)行特征檢測(cè),實(shí)現(xiàn)了克氏原螯蝦的性別特征提取。訓(xùn)練后得到的模型在常用評(píng)價(jià)指標(biāo)上達(dá)到了較高的水平,在測(cè)試集中表現(xiàn)優(yōu)異,能夠高速、精確地獲取螯蝦性別特征,完成克氏原螯蝦的性別分類檢測(cè),有助于高效、低成本地提取克氏原螯蝦性別特征,對(duì)克氏原螯蝦的品種改良具有重要意義。
參考文獻(xiàn):
[1] 陸劍鋒,賴年悅,成永旭. 淡水小龍蝦資源的綜合利用及其開發(fā)價(jià)值[J]. 農(nóng)產(chǎn)品加工(學(xué)刊),2006(10):47-52,63.
[2] 于秀娟,郝向舉,黨子喬,等. 中國(guó)小龍蝦產(chǎn)業(yè)發(fā)展報(bào)告(2022)[J].
中國(guó)水產(chǎn),2022(6):47-54.
[3] 劉其根,李應(yīng)森,陳藍(lán)蓀. 克氏原螯蝦的生物學(xué)[J]. 水產(chǎn)科技情報(bào),2008,35(1):21-23.
[4] TAN C S,LAU P Y,CORREIA P L,et al. Automatic analysis of deep-water remotely operated vehicle footage for estimation of Norway lobster abundance[J]. Frontiers of Information Technology & Electronic Engineering,2018,19(8):1042-1055.
[5] SISTLER F E. Grading agricultural products with machine vision[C]//IEEE International Workshop on Intelligent Robots and Systems 90 Towards a New Frontier of Applications. Ibaraki,Japan:IEEE,1990:255-261.
[6] 盧文超,邱亮,熊光權(quán),等. 近紅外光譜技術(shù)快速檢測(cè)小龍蝦新鮮度[J]. 肉類研究,2022,36(6):36-41.
[7] RUSSELL B C,TORRALBA A,MURPHY K P,et al. LabelMe: a database and web-based tool for image annotation[J]. International Journal of Computer Vision,2008,77(1):157-173.
[8] REDMON J,F(xiàn)ARHADI A. YOLO9000:better,faster,stronger[C]//2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu,HI:IEEE,2017:6517-6525.
[9] WANG C Y,MARK LIAO H Y,WU Y H,et al. CSPNet:a new backbone that can enhance learning capability of CNN[C]//2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops. Seattle,WA,USA:IEEE,2020:1571-1580.
[10] LIN T Y,DOLLAR P,GIRSHICK R,et al. Feature pyramid networks for object detection[C]//2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu,HI:IEEE,2017:936-944.
[11] LIU S,QI L,QIN H F,et al. Path aggregation network for instance segmentation[C]//2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Salt Lake City,UT:IEEE,2018:8759-8768.
[12] TOWNSEND J T. Theoretical analysis of an alphabetic confusion matrix[J]. Perception & Psychophysics,1971,9(1):40-50.
[13] HENDERSON P,F(xiàn)ERRARI V. End-to-end training of object class detectors for mean average precision[C]//Asian Conference on Computer Vision. Cham:Springer,2017:198-213.
(責(zé)任編輯:王婷)