?

基于YOLOv5s的母豬基礎行為識別

2024-02-27 06:34陳敏權鐘金鵬劉士靜孟凡盛
安徽科技學院學報 2024年1期
關鍵詞:豬只注意力母豬

陳敏權, 陳 豐, 鐘金鵬, 劉士靜, 孟凡盛

(安徽科技學院 機械工程學院,安徽 鳳陽 233100)

在豬場日常管理中,母豬養殖要求高難度大。目前豬場管理主要使用的是人工管理方式,人力資源耗費大,而且母豬對環境的感知敏感,長時間與人接觸所產生的應激反應以及與人接觸而導致的疾病傳播都會給豬場帶來巨大的經濟損失[1],因此國內外眾多學者致力研究智能化技術在母豬養殖業中的應用,希望找到智能化養殖的方法。目前研究最多的是通過滑道或者巡檢機器人[2]搭載攝像頭對豬只進行拍照識別,根據識別結果調整飼喂結構,并對突發狀況進行及時處理[3]。

機器視覺技術[4]是實現智能化養殖的一項重要技術,具有無接觸、可持續、成本低等優勢,在實現智能化養殖過程中起到舉足輕重的作用。機器視覺技術主要應用于母豬的姿態識別[5],主要是對母豬的一些特殊行為進行識別[6]。

早期的視覺識別主要是對圖像的分割以及目標的提取[7],通過經驗高低閾值[8]、灰度差異[9]、直方圖均衡化等對靜態單幀豬只目標進行提取[10],通過背景減去法以及二值化處理對動態多幀豬只目標進行提取[11]。

目前,有不少研究人員將機器視覺應用于母豬行為識別[12],莊晏榕等[13]基于AlexNet卷積神經網絡通過識別豬發情時耳朵豎起動作判斷母豬是否發情;Yang等[14]提出一種基于時空特征的母豬爬跨行為識別來檢測豬是否發情;劉龍申等[15]利用EfficientDet網絡對產床內母豬圖像進行深層次特征提取,通過母豬產前產后行為變化預測母豬分娩時間。

除行為識別以外,豬只個體識別[16]和體尺測量[17]也備受研究人員青睞,為豬的保種工作奠定基礎[18]。李廣博等[19]采用改進后的YOLOv5s模型識別豬臉,通過添加注意力機制提高模型特征提取的能力,用來識別豬臉,判斷個體身份。耿艷利等[20]提出基于點云語義分割的豬只體尺測量方法基于Pointnet網絡,結合注意力模塊構建語義分割模型,針對不同分割部位設計豬只體尺測量方法。左若雨等[21]采用YOLOv4對豬耳部進行識別,為識別豬只病變提供依據。

綜上,基于機器視覺的母豬行為識別雖然可以識別出單豬的行為,但是因為豬是一種群居動物,遮擋現象嚴重,所以本研究在YOLOv5s的基礎上進行改進,旨在實現對復雜環境下豬基礎行為(如站、趴、爬等行為)的識別,從而根據識別母豬基礎動作判斷母豬狀態,實現智能化養殖。

1 材料與方法

1.1 數據采集

本研究數據來源于網絡圖片以及養殖場視頻。養殖場視頻由手持攝像機采集,試驗圖片集包含母豬的站、坐、躺、趴、爬等5種動作,并通過更換圖片背景以及更改圖片亮度、飽和度和色差來減少燈光、背景環境等因素對訓練結果的影響,效果如圖1所示。通過篩選去除質量較差的圖片后形成圖片集為1 000張。

圖1 圖像預處理Fig.1 Image preprocessing

1.2 數據集制作

對上述圖片集使用Labelimg標注工具進行人工標定,目標標簽為stand、lie、sit、climd、crawl,生成格式為txt的標簽文件。通過pycharm使用分類函數對標簽文件進行均分,形成訓練集、驗證集、測試集為7∶2∶1。

1.3 YOLOv5s模型

YOLOv5有4種模型,分別為YOLOv5s、YOLOv5m、YOLOv5l、YOLOv5x,通過使用自制數據集對這4種模型進行訓練對比,結果如表1所示,其中YOLOv5s模型小,檢測速度快且準確率相對較高,所以本研究選擇使用YOLOv5s模型。

表1 YOLOv5不同模型的訓練結果Table 1 Analysis of experimental results of different models of YOLOv5

YOLOv5s模型由輸入端、基準網絡、Neck網絡、預測輸出組成,網絡結構如圖2所示。

圖2 YOLOv5s網絡結構圖Fig.2 YOLOv5s network structure

1.3.1 輸入端 主要包括mosaic數據增強,通過對圖像的隨機縮放、裁剪、排布,從而提高對目標的檢測與識別效果。

1.3.2 基準網絡 主要包括Focus結構與CSP結構。Focus結構包含4個切片與一個卷積,將608×608×3的圖像轉化為304×304×12的特征圖;CSP結構通過將淺層特征圖一分為二,一部分直接向后傳播,另一部分跨層與特征提取模塊融合,從而得到更豐富的特征圖。

1.3.3 Neck網絡 主要包括PAN和FPN結構,YOLOv5通過這兩種結構分別進行自頂而下和自下而上的聚合,并將特征進行融合,通過將不同尺度的特征圖進行融合以提高檢測性能。

1.3.4 預測輸出 在YOLOv5原網絡中預測輸出層主要包括一個損失函數GIOU_Loss和一個非極大值抑制nms函數,YOLOv5通過預測框與實際框的面積比為判定依據進行計算,幾何關系如圖3所示。

圖3 預測框與輸出框幾何關系Fig.3 Geometric relationship between prediction box and output box

選取取預測框上兩點A(x1,y1)、C(x3,y3)以及實際框上兩點B(x2,y2)、D(x4,y4),兩框的相交面積為S1,并集面積為S2,所以兩框交并集面積如式(1)~(2)所示:

S1=(min(x3,x4)-max(x1,x2))×(min(y3,y4)-max(y2,y1))

(1)

S2=(x3-x1)×(y3-y1)+(x4-x2)×(y4-y2)-S1

(2)

從而得到交并比IoU為

(3)

但是常用的IoU評價標準不適用于評價矩形框沒有重合的情況,故引入兩框中心距l以及對角線距離ρ,最后加上框的長寬等信息,最終損失函數如式(4)所示:

(4)

其中,

(5)

(6)

經過損失函數計算,檢測出來可能有多個檢測框,YOLOv5使用非極大值抑制(NMS)刪除多余檢測框,保留最佳檢測框。

1.4 CBAM注意力模塊

CBAM(Convolutional Block Attention Module)注意力模塊用于增強卷積神經網絡感知能力,CBAM注意力模塊由2個子模塊組成:通道注意力模塊CAM(Channel Attention Module)和空間注意力模塊SAM(Spatial Attention Module),結構圖如圖4所示。

圖4 CBAM注意力模塊結構圖Fig.4 Structure diagram of CBAM attention module

CAM通過在每個通道上學習通道權重來對輸入特征圖進行加權,以強調重要的特征通道。它利用全局平均池化和全連接層來學習通道權重,然后將這些權重應用到輸入特征圖上,使得網絡能夠自動學習并關注對當前任務最有用的通道。

SAM則通過在每個空間位置上學習空間權重來對輸入特征圖進行加權,以提取空間上的重要特征。它利用最大池化和全連接層來學習空間權重,然后將這些權重應用到輸入特征圖上,從而增強感受野內不同位置的特征表示能力。

CBAM模塊將通道注意力和空間注意力結合在一起,通過同時關注通道和空間信息,可以提升對復雜特征的感知和區分能力,通過在卷積中添加CBAM模塊,提高模型對母豬的注意力,提高通道權重,進而提升模型在母豬相互遮擋背景下的檢測性能,引入CBAM注意力模塊后的結果如圖5所示。

圖5 引入CBAM注意力模塊Fig.5 CBAM attention module is introduced

1.5 試驗方法

本研究使用一種改進的母豬行為識別方法。首先構建多背景的母豬多種行為數據集,通過添加CBAM注意力機制,提高模型的檢測精度和檢測速度,識別框架如圖6所示。

圖6 母豬行為識別框架 Fig.6 Sow behavior recognition framework

2 結果與分析

2.1 試驗環境

本試驗采用pycharm搭建框架,操作平臺為64位Windows 10,顯卡為NVDIA GeFORCE GTX1650顯卡,數據集為多背景的母豬多種行為,數據集一組未添加注意力機制的YOLOv5s模型以及一組添加注意力機制的YOLOv5s模型,訓練輪數設置為400輪。本研究其他訓練參數如表2所示。

2.2 評價指標

本研究采用Precision、Recall、mAP作為衡量算法性能的指標,公式如式(7)~(10)所示:

(7)

(8)

其中,TP為母豬動作預測準確的數量;FN是預測正樣本預測為假的數量;FP是負樣本預測為真的數量。

(9)

(10)

其中,AP為精確率和召回率曲線圍成的面積;mAP為AP的平均值。

2.3 模型分析

經過YOLOv5s算法模型的訓練,最終訓練后的對比結果如表3所示,訓練過程中的準確率、召回率、MAP值變化曲線如圖7所示。遮擋問題是造成母豬行為識別精度低的主要原因之一。當母豬相互遮擋時,母豬目標輪廓缺失,特征提取困難,圖7(a)為原始數據集訓練出的結果,圖7(b)為添加了CBAM注意力模塊后訓練出的結果圖。

表3 2種模型的訓練結果對比表Table 3 Comparison table of training results of the two models

圖7 2種模型的訓練過程對比圖Fig.7 Comparison chart of the training process of the two models

由圖7(a)可以看出,原始數據集訓練出的結果圖波動大,在YOLOv5s模型中添加CBAM注意力模塊,提高對遮擋母豬的檢測效果,模型準確率等都有了提升,最終的訓練結果如圖7(b)所示。

從圖7(b)可以看出,優化后的數據集在前50輪訓練中,模型的Precision、Recll和mAP值上升較快,在300輪時已經達到比較高的精度,最終檢測的精度值較高,達到97.58%,召回率為89.69%。

實際檢測結果如圖8所示,針對部分遮擋的情況,圖中所示預測框的置信度較高,可以作為母豬狀態的判定依據。

圖8 母豬相互遮擋情況下的實際檢測結果Fig.8 Actual test results with sows shielding each other

3 結論與討論

本研究為實現母豬智能化養殖,對母豬行為進行識別,針對母豬行為檢測,建立了一種基于YOLOv5s的檢測模型,避免了人豬接觸產生的應激反應,有效提高了檢測效率,減少人工成本,降低工人工作強度,通過引入CBAM注意力機制,使訓練模型基本可以識別遮擋情況下豬的不同行為,且置信度相對較高,訓練精度提升了1.23%。在今后的研究中可以針對母豬動作變化以及各種行為持續時間判斷母豬狀態,從而實現智能化養殖。

猜你喜歡
豬只注意力母豬
降低日糧粗蛋白并添加單體氨基酸對斷奶—育肥豬生長性能和營養排泄的影響(中)
能繁母豬存欄半年減少235萬頭
讓注意力“飛”回來
母豬補血的必要性
豬胃潰瘍的病因與防治措施
如何防治母豬乳房炎
秋冬季防應激不可忽略飲水消毒
豬只硒缺乏癥的預防措施和治療方法
“揚眼”APP:讓注意力“變現”
A Beautiful Way Of Looking At Things
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合