MaskR-CNN的籠養死鴨識別算法,在自動化養殖中,怎樣提高准確率

那是兩面包夾知識 2024-05-16 05:10:03

文|面包夾知識

編輯|面包夾知識

«——【·前言·】——»

高效識別鴨舍中的死鴨,已成爲肉鴨自動化養殖模式中,亟待解決的重要問題之一。

養殖場鴨苗的日均死亡率通常在0.05%~0.1%,例如,在河北某一個存欄量爲1×105只的肉鴨廠,平均每日需揀出50~100只死鴨。

由于肉鴨的高密集養殖,死鴨的識別仍然依賴人工操作,這導致效率低下、勞動強度大和養殖成本高昂。

一方面管理人員的行爲會導致肉鴨應激,死亡率提高,降低生産效率;另一方面鴨舍內死鴨對空氣的汙染可能會對工作人員身體造成傷害。

因此,開展籠內死鴨識別模型算法的研究對于家禽養殖業至關重要,爲了采集數據需要研發一款適用于肉鴨舍的自主巡檢裝備。

目前機器視覺在畜禽養殖中應用廣泛,顯著改善了勞動力短缺的情況,不僅可以代替人類從事危害健康的工作,還能夠降低生産成本和節約能源。

例如,南京某大學設計的死雞自動識別系統,采用熱紅外采集技術,基于卷積神經網絡模型識別雞場存在的死雞,但該方法主要用于平養肉雞,對于籠養目標識別准確率不高。

河北某研究基地,基于MaskR-CNN和LiteFlowNet網絡構建了一種,多目標背景下基于視頻關鍵幀的死兔識別模型,但該方法檢測速度有待優化

再加上,北京某大學設計的基于機器人技術、紅外熱成像技術及圖像處理等技術設計一種基于溫度判斷的死雞識別算法,但總體識別率只有80%。

以YOLOv5s目標檢測算法爲基礎,通過加入SE注意力模塊,構成改進後的YOLOv5s-SE模型的檢測准確率達到了97.7%,但缺乏適配的圖像采集工具。

此外,還有一些修複圖像遮擋的創新技術,基于深度卷積神經網絡(CNN)引入了3個跳躍連接反卷積和卷積運算,對單幅圖像去除雨痕遮擋的效果達到了80%以上。

然而,盡管這些技術在其他養殖領域得到了應用,但關于肉鴨識別模型的研究報道較少。

在立體層疊式籠養肉鴨環境下,使用自主巡航機器人自動追蹤群養肉鴨,采集肉鴨圖像,采用深度學習的方法實現圖像的處理,並在此基礎上分析死鴨識別模型的准確率。

«——【·材料與算法·】——»

實驗于2023年7月至8月期間,在南京市六合區的某個肉鴨養殖場進行,共持續42d。

鴨舍采用立體層疊式籠養模式,共有3層籠具,中間過道寬度爲0.8m,每個單籠的尺寸爲160cm×70cm×40cm,養殖密度爲15只/m2,並且配備自動化水線以減少人工對動物的幹擾,如圖1所示。

自主巡檢機器人的主要任務是根據需求在鴨舍內按照規定路線行走,采集所需位置的圖像。

自主巡檢機器人建模圖,和實物如圖2所示,總體尺寸爲64cm×48cm×210cm。

機器人采用履帶式結構以適應鴨舍的環境,並降低巡檢時的噪聲。兩電機差速底盤被用作驅動結構,以確保機器人可以在鴨舍內的任何地點自由轉向。

機器人采用磁條導航來保證巡檢平台始終沿著鋪設的磁條運行,自主巡檢機器人依照事先鋪設的磁條軌道進行系統巡檢。

當機器人行駛于磁條軌道時,一旦磁條傳感器探測到磁條寬度發生變化並且達到指定寬度時,上位機將發出指令,車輪停止旋轉,並同時向工業相機發出圖像采集指令。

相機完成圖像采集任務後,將反饋結果,若發現鴨籠內有死亡禽類,系統將通過通信模塊將此信息傳送至終端,隨後繼續巡檢下一個鴨籠。

若未檢測到異常情況,則機器人將持續執行巡線任務。攝像頭采用USB輸出的IMX588相機模組,相機固定在機器人側方,距離籠底面0.8m,傾斜45°俯拍,位置如圖3所示。

在圖像采集過程中,確保肉鴨始終在拍攝範圍內,並盡量減小鏡頭畸變的影響。相機通過USB線連接到巡檢機器人內部的一台計算機上。

采用Python算法實現圖像的自動抓取,6個攝像頭依次采集6f/min,間隔10s,農業機械學報最終,獲得1075幅死鴨圖像以及大量正常肉鴨圖像,用于構建死鴨目標識別模型數據集。

卷積神經網絡是一種深度學習模型,廣泛應用于處理圖像和視覺數據的計算機視覺任務中。

MaskR-CNN是一種廣泛應用于目標檢測和實例分割的深度學習模型,它擴展了FasterR-CNN框架,通過添加額外的分割分支來生成目標實例的精確掩碼。

MaskR-CNN的核心思想是將目標檢測和實例分割任務結合在一起,使模型能夠檢測目標的位置並爲每個目標實例生成像素級別的掩碼,從而提供更詳細的目標分割。

在死鴨識別和檢測任務中,CNN通過卷積和池化操作自動學習和提取圖像中的特征,如邊緣、紋理、形狀等,從而准確地識別死鴨。

MaskR-CNN網絡是一種基于深度學習的實例分割算法,不僅可以實現對圖像的目標檢測、目標分類和語義分類,還能對每個單獨目標的。

像素進行分類。它是一種典型的兩階段網絡算法,包括了區域提取和邊界框回歸及分類兩個階段。

其結構包括主幹網絡、區域提取網絡、RoIAlign(RegionofInterestAlign)和功能型網絡,如圖4所示。

其中,采用ResNet-101深度殘差網絡和特征金字塔FPN(Featurepyramidnetwork)的組合作爲特征提取網絡。

ResNet-101具有較深的網絡結構,通過殘差連接能夠有效地提取圖像中的高級語義特征。

而FPN通過構建多層特征金字塔,將不同尺度和語義層次的特征進行融合,從而更好地捕捉目標肉鴨的細節和上下文信息。

區域候選網絡負責生成候選目標區域(RoIs),通過利用錨框和候選框回歸來定位可能包含肉鴨的圖像區域。

RoI分類網絡根據RoIs中的特征進行分類,爲每個RoI預測其所屬的類別;掩膜生成網絡在RoIs的基礎上生成目標的像素級掩膜,實現精確分割。

不過與傳統ViT中的多頭自注意(MSA)相比,MSA缺乏跨窗口的連接,SwinTransformer中的W-MSA作爲一個單元控制窗口中的計算區域。

減少了網絡計算的數量,降低了圖像的複雜度,如圖5所示。SW-MSA的位置與W-MSA層相連,因此,SW-MSA需要在之後提供不同的窗口分割方法(W-MSA)實現跨窗口通信。

通過W-MSA對輸入圖像的窗口分割結果如圖所示,圖像的每個周期向上和向左移動一半窗口的大小,然後將圖5中的藍色和紅色區域移至圖像的下方和右側,如圖5所示。

W-MSA雖然降低了計算複雜度,但是不重合的窗口之間缺乏信息交流,在2個連續的SwinTransformerBlock中交替使用W-MSA和SW-MSA解決了不同窗口的信息交流問題。

移動窗口的劃分方式使上一層相鄰的不重合窗口之間引入連接,大大增加了感受野,極大提高了SwinTransformer的計算效率,使2個窗口有了交互,從而達到了全局建模的能力。

SwinTransformer模型的特征提取過程分爲4個階段,采用了分層自注意力機制,信息可以在不同的層次之間流動,有助于模型從局部到全局捕獲不同尺度的深層次特征。

具體網絡結構如圖6:

SwinTransformer模型的特征提取過程分爲4個階段,采用了分層自注意力機制,信息可以在不同的層次之間流動,有助于模型從局部到全局捕獲不同尺度的深層次特征。

網絡結構如圖6所示,具體網絡結構如圖6,修改輸入分辨率、通道數等確保新的骨幹網絡的輸入和輸出與MaskR-CNN的其他部分兼容。

SwinTransformer需要一批圖像作爲輸入,修改MaskR-CNN的數據加載和處理代碼以滿足SwinTransformer的輸入要求。

根據SwinTransformer的特征輸出,調整FPN層級,以確保與SwinTransformer輸出兼容。基于SwinTransformer改進的MaskR-CNN網絡結構如圖7所示。

爲了提高後續死鴨檢測的可靠性,基于OpenCV對采集到的圖像進行圖像增強處理。

處理過程包括增加亮度、增強對比度以及增加飽和度的批處理操作,具體結果如圖8所示。

由于側方俯拍的方式,部分肉鴨會被籠網遮擋,爲了提高死鴨識別的准確率對遮擋圖像的籠網進行修複。

該算法使用計算機視覺和圖像處理技術,能夠自動化地進行圖像修複,以獲得清晰且完整的肉鴨圖像。

«——【·采用Labelme工具標注肉鴨·】——»

圖像中的籠網部分並保存爲JSON格式文件,利用OpenCV和Python構建圖像處理函數,處理使用MaskR-CNN網絡模型訓練得到的遮擋籠網部分的掩膜部分。

將訓練得到的遮擋籠網部分HSV顔色空間下界和HSV顔色空間上界作爲輸入參數。

函數讀取訓練得到的遮擋籠網圖像,並將其轉換爲HSV顔色空間,輔助實現更准確地選擇和處理目標顔色範圍,提高遮擋籠網部分修複的准確性。

在圖像處理過程中,算法首先獲取圖像的尺寸,然後通過順時針由外到內逐層遍曆圖像中的每個像素點,遍曆過程中,算法通過步驟對每個像素點進行處理。

在處理完該像素點後,順時針對下一個像素點進行上述處理,完成對圖像中所有像素點的遍曆後,修複後的圖像將去除遮擋籠網部分。

其中,采用不同顔色的籠網掩模修複效果不同,修複結果對比如圖9所示。

通過修複結果圖對比可以看出,綠色掩膜修複效果最佳。將該算法應用于肉鴨圖像的處理,可以有效地去除遮擋籠網部分,爲後續死鴨目標識別提供清晰可靠的圖像基礎。

使用肉鴨自主巡檢機器人作爲圖像采集工具,采集肉鴨圖像數據。圖像首先經過裁剪和增強處理,得到圖像應用圖像修複算法對遮擋籠網部分進行去除。

隨後使用SAM-Tool半自動標注工具快速標注死鴨目標,標簽類別名稱爲“dead_duck”,創建包含死鴨類別信息的json文件。

最終獲得構建死鴨目標識別模型數據集的圖像共1075幅,其中915幅爲訓練集,160幅爲驗證集。

爲了優化每個模型的性能以及有效完成死鴨目標識別任務,分別設置每個模型的學習率、批量大小、叠代次數和優化器選擇等訓練參數,如表1所示。

每個模型共訓練120輪,每叠代8個輪次保存一次模型權重,最終選擇識別精度最高的模型作爲結果。

«——【·死鴨識別模型實驗·】——»

選擇損失值和死鴨識別平均准確率(Averageprecision,AP)作爲評價死鴨識別模型性能的指標,主要考察。

在目標檢測和分割任務中,評估模型的性能主要考察邊界框平均精度均值和分割均值平均精度兩種性能指標。

bbox_mAP衡量模型在檢測和定位目標方面的准確性和精度,segm_mAP衡量模型在分割目標方面的准確性和精度。

由圖10可知,經過2×104次叠代後,SOLOv2和MaskR-CNN模型的損失值分別達到了0.097和0.115,MaskR-CNN+SwinTransformer和SOLO模型的損失值則分別爲0.156和0.206。

根據圖11a的結果,訓練經過75個叠代周期後,MaskR-CNN+SwinTransformer、MaskR-CNN和QueryInst模型的bbox_mAP分別達到了90.6%、86.6%和89.2%。

根據圖11b的結果,訓練90個叠代周期後,MaskR-CNN+SwinTransformer和SOLOv2模型的segm_mAP值最高,達到90.1%和88.9%。

其次是MaskR-CNN和QueryInst模型分別爲86.8%和86.4%,SOLO模型segm_mAP值最低爲83.3%。

在死鴨目標識別任務中的性能,設計了死鴨目標識別准確率試驗,分別使用死鴨目標識別誤檢率、漏檢率和准確率作爲評價指標,通過實驗選擇適合鴨舍環境的mAP。

由表2可知,SOLO和QueryInst網絡模型隨著mAP的提高,死鴨的漏檢率提升,SOLO模型在置信度阈值爲90%時,死鴨識別准確率僅爲83.3%,QueryInst模型爲91.7%。

如果將mAP設置的過低,模型可能會更容易檢測出死鴨,但這可能會導致誤檢率上升,以SOLO模型爲例,當mAP爲30%時,誤檢率達到了6.7%。

爲評估在死鴨圖像中去掉籠網前後,對死鴨檢測效果的影響。我們分別對去掉籠網前後的死鴨圖像進行標注,制作了數據集,用于訓練Mask算法。

因爲這樣就得到了2個權重文件,並在驗證集上進行了檢測。我們將mAP調整爲90%,選擇死鴨目標識別誤檢率、漏檢率和准確率作爲評價指標。

根據表3可以看出,使用去掉籠網後的圖像作爲訓練集對死鴨模型檢測效果有正面的提升。

在使用去掉籠網後的圖像訓練的模型進行驗證時,相較于模型在訓練集和驗證集都未去除籠網的情況下,提升效果顯著,達到了6.4個百分點。

當訓練集使用未去除籠網的圖像,而驗證集使用去除籠網的圖像時,死鴨檢測效果卻出現了下降,死鴨識別誤檢數增加。這種情況可能是由于光線不足,死鴨與籠網之間的過擬合導致的。

由表4可知,MaskR-CNN模型和SOLOv2模型在在識別0~7日齡和8~15日齡死鴨時均出現漏檢或錯檢的情況。

MaskR-CNN模型出現將健康肉鴨的腳錯檢成死鴨的問題,SOLOv2模型出現預測框(bbox)檢測錯誤的問題。

MaskR-CNN+SwinTransformer模型對0~7日齡和8~15日齡的死鴨識別准確率均爲100%,無漏檢與錯檢現象。

因此應用MaskR-CNN+SwinTransformer模型在自主巡檢裝備上檢測效果最優。

«——【·討論·】——»

SOLOv2、MaskSwinTransformer和MaskR-CNN模型,在死鴨識別任務中表現較好,死鴨識別准確率分別爲95.0%、95.8%和97.5%。

但隨後將其部署在死鴨自主巡檢裝備上,MaskR-CNN模型出現將健康肉鴨的腳錯檢成死鴨的問題。

MaskR-CNN+SwinTransformer模型能夠實現對0~7日齡和8~15日齡的死鴨准確識別,無漏檢與錯檢現象。

出現這種現象的原因可能是機器學習中的過擬合現象導致的,過擬合發生時,模型在訓練數據中學到了數據中的噪聲和隨機變化。

而不能很好地泛化到新的、未見過的數據,這導致模型對于訓練數據表現出高度適應性,但對于測試數據的泛化性能較差。

因此MaskR-CNN+SwinTransformer模型在實際應用中效果最優,且自注意力機制包含全局特征,增加了整合全局信息的能力。

一方面降低遮擋導致的目標漏檢誤檢概率,另一方面優化複雜環境下目標丟失的漏檢問題。

«——【·結語·】——»

構建一種高度適應性的死鴨識別模型,通過基于深度學習的遮擋籠網去除,基于OpenCV的圖像增強處理以及SwinTransformer與MaskR-CNN算法模型的融合應用。

以及基于SwinTransformer的增加自注意力機制和移動窗口的劃分方式,改進MaskR-CNN模型。

並開展了死鴨識別評估試驗,得出MaskR-CNN+SwinTransformer模型在實際應用中效果最優的結論,爲養殖場優化養殖工藝提供了技術和理論支撐。

0 阅读:3

那是兩面包夾知識

簡介:感謝大家的關注