高 云,陳 斌,廖慧敏,雷明剛,黎 煊,李 靜,羅俊杰
群養豬侵略性行為的深度學習識別方法
高 云1,2,陳 斌1,廖慧敏1,雷明剛2,3,黎 煊1,2,李 靜1,羅俊杰1
(1. 華中農業大學工學院,武漢 430070;2. 生豬健康養殖協同創新中心,武漢 430070;3. 華中農業大學動物科技學院動物醫學院,武漢 430070)
為了解決因傳統機器視覺和圖像處理方法的局限性以及復雜的豬體姿態和豬舍環境導致對群養豬侵略性行為識別的有效性、準確率較低的問題,該文基于深度學習的方法,提出使用3D CONV的群養豬侵略性行為識別算法- 3DConvNet。分3個批次采集18頭9.6 kg左右的大白仔豬視頻圖像,選用第一批次中包含28 d內各個時段的撕咬、撞擊、追逐、踩踏4大類,咬耳、咬尾、咬身、頭撞頭、頭撞身、追逐以及踩踏7小類侵略性行為以及吃食、飲水、休息等非侵略性行為共計740段(27 114幀)視頻作為訓練集和驗證集,訓練集和驗證集比例為3:1。結果表明,3D ConvNet網絡模型在訓練集上的識別準確度達96.78%,在驗證集上識別準確度達95.70%。該文算法模型對于不同訓練集批次的豬只以及不良照明條件下依然能準確識別侵略性行為,算法模型泛化性能良好。與C3D模型進行對比,該文提出的網絡模型準確率高出43.47個百分點,單幀圖像處理時間為0.50 s,可滿足實時檢測的要求。研究結果可為豬場養殖環境中針對豬只侵略性行為檢測提供參考。
卷積神經網絡;機器視覺;模型;行為識別;侵略性行為;深度學習;群養豬
集約化的養豬中侵略性行為(包括打斗,追逐等)經常在豬群中發生,侵略性的行為易對豬只身體造成傷害,在惡劣的豬舍環境中引起豬只感染,嚴重時導致死亡,對豬場造成損失[1-3]。侵略性行為的發生還會影響豬舍內的食物配給,豬群體系中弱勢等級的豬只缺失食物和飲水進給,導致豬只生長緩慢,影響母豬繁殖力,造成嚴重的經濟損失[4-7]。目前豬場對于豬只侵略性行為的監測識別主要是依靠人工觀察記錄,這在集約化養殖的豬場內會產生高昂的人工成本,且針對侵略性行為的觀察記錄會不可避免的造成大量的漏檢,也無法保證集約化的豬場內對于侵略性行為監測的實時性,準確性和高效性。集約化環境下的群養豬侵略性行為的自動檢測識別,是提高豬只福利及經濟效益的重要基礎[8-11]。
目前,國內外已有許多研究者針對豬只侵略性行為的檢測識別做了相應的研究。Oczak等利用圖像處理技術和人工神經網絡針對豬舍內發生的高、中程度的侵略性行為的分類問題進行了研究,實現了高、中程度的侵略性行為的分類,但是需要對圖像兩幀的像素變化進行計算提取特征,會產生大量的計算,無法對大批量數據的處理保持高效性[12]。Viazzi等提出的采用線性判別分析(linear discriminant analysis, LDA)對豬只運動歷史圖像中提取的特征進行分類來識別侵略行為,該方法需要先獲取所有豬只的歷史運動圖像然后從中提取相關運動強度特征,同樣導致了當樣本量很大時產生大量的計算代價,且LDA對于樣本分類過分依賴均值信息,實際豬舍環境內豬只會發生很多運動強度很小的侵略性行為,如咬尾、咬耳等,其泛化能力還有待驗證[13]。Chen等使用層次聚類算法提取豬只的加速度特征,用于識別侵略性行為。豬只的加速度是侵略性行為的重要特征,但是在該方法中作者僅關注了視頻幀中最先開始發生侵略性行為的豬只,丟棄了其余非侵略性的豬只,這導致其余豬只的信息被完全拋棄,而這部分信息是有可能發生侵略性行為的[14]。Jonguk等使用支持向量機(support vector machine,SVM)處理運動豬只速度有關的5個特征,實現了對侵略性行為發生與否的識別,雖然該研究實現了較高的識別準確度,但是僅是針對追逐和敲擊兩種侵略性行為,且提取豬只速度的特征需進行額外計算,也存在一定計算代價問題,難以實現實時檢測[15]。以上學者關于豬只侵略性行為識別的研究都是基于圖像處理技術提取豬只圖像中的某一特征,再結合機器學習等手段對特征進行處理。但在實際應用中,傳統的圖像處理技術需要額外提取特征,存在效率低、工作量大的問題。由于不同種類豬只個體差異性大,隨著豬只質量的增長,豬只非剛性的軀體也會隨著發生變化,故提取的特征可能不具有普適性。此外由于豬舍內豬體粘連、遮擋、不良照明條件以及豬只的侵略性行為復雜等原因,傳統的方法難以在集約化養殖的豬場內做到對于豬只侵略性行為的實時、高效的檢測。
近幾年深度學習相比于傳統方法在圖像和視覺領域展現了其強大的優越性,深度學習通過對低維特征到高維特征的提取學習,能夠做到對絕大部分場景下各類任務進行檢測識別[16-20]。正是在其他領域展現了其強大的學習泛化能力,深度學習也在豬只行為檢測方面得到了大量的應用。Yang等基于Fast R-CNN檢測豬只進食行為[21]。Yang等使用全卷積神經網絡的方法分割母豬和仔豬,使用母豬幾何特征和仔豬的動態計算乳房區域以及提取對應的空間信息,再從視頻幀中提取運動強度和占領指數以識別母豬母性護理行為[22]。楊秋妹等使用卷積神經網絡針對個體豬只飲水行為做出相應的研究[23]。Zheng 等使用Faster R-CNN來對母豬的站立、躺臥等行為做出識別[24]。深度學習在豬只的簡單行為上均展現了優異的性能,但目前針對存在多頭豬只狀態交互的較高級的侵略性行為研究還比較少見[8]。
本文采用深度學習的方法,搭建3D卷積神經網絡模型,并將其用于對群養豬中侵略性行為的識別,避免了傳統圖像處理方法中復雜、繁瑣的特征選擇、處理等問題。通過對網絡模型進行訓練,得到了一個端到端的,有效識別侵略性行為的模型,并通過對不同批次豬只、視頻長短、不良照明條件的試驗,驗證算法的泛化性與可行性。
豬只的侵略性行為涉及到群養豬中多頭豬只的狀態交互,是一個復雜,漸進的行為。在發生侵略性行為的初期,豬只通過鼻子嗅聞、輕推等方式進行初步試探,隨后侵略性行為逐漸加劇,往往伴隨著更激烈的擠壓,咬,撞擊等行為[2]。在侵略性行為最劇烈的時候,會出現咬耳朵,咬身體等現象。撕咬通常持續時間長,往往會造成皮膚損傷,創口等[1,6,22]。故在此項研究中定義的侵略性行為是撕咬、擠壓、撞擊、追逐,如表1所示。

表1 侵略性行為的定義
1.2.1試驗條件
試驗數據采集分別于2018年3月12日-4月9日,2018年4月19日-5月16日以及2018年6月9日-7月6日在湖北省武漢市華中農業大學試驗豬場內進行3個批次的數據采集。3個批次氨氣濃度分別為<3.80,15.18,37.95 mg/m3。其中<3.80 mg/m3組為模擬仔豬舍在通風良好的條件下的氨氣濃度。因豬舍內總有糞便,會產生一定的氨氣,因此將試驗環境的氨氣控制到<3.80 mg/m3作為對照。試驗對象為18頭9.6 kg左右的大白保育豬,豬只外觀顏色均勻。18頭豬養殖在課題組前期研究設計的環境多變量控制養殖箱中[25],養殖箱內部空間長、寬、高為2、1.5、2 m,底部糞槽深度設計為0.45 m,養殖箱內部設有進食槽、飲水槽。試驗中溫度控制在27.0~27.4 ℃,相對濕度控制在50%~70%。為保證豬只正常生活習性,每天08:00與17:00喂食兩次,飼喂模式一致。箱內采用自動控制的LED燈照明,照明時間設定為07:00至18:00,其余時間LED燈關閉。
1.2.2 視頻采集
試驗通過Kinect V2攝像頭采集RGB視頻,位于養殖箱的上部。鏡頭距養殖箱內部地板高度約為1.8 m,采用頂視角度的方式,可以獲取整個養殖箱內部6頭豬只的全部信息,不會出現漏拍豬只現象。攝像頭連接一臺便攜式筆記本電腦,將采集的養殖箱內部6頭豬只的頂視角度彩色視頻存儲在SEAGATE移動硬盤上,出于存儲成本的考慮,錄制視頻幀率為5幀/s,存儲像素為1 920×1 080,存儲為AVI格式。數據采集平臺及養殖箱如圖1所示。

圖1 數據采集平臺
1.2.3 視頻數據預處理與標注
為了訓練和評估侵略行為識別模型的性能,需要將獲取的數據進行標注。通過人工查閱采集的約900 h的視頻數據,對視頻進行處理,分為侵略性行為和非侵略性行為2種類別,視頻長度取決于豬只侵略性行為持續的時間。根據前文中侵略性行為的定義,為區分侵略性行為與非侵略行為,僅將至少持續5幀的侵略行為進行標注。在一個侵略性行為發生之后的5 s內若再有侵略性行為發生,則將其歸為同一次侵略性行為,即設置侵略性行為間隔為5 s。將錄制的視頻中存在掉幀現象的視頻段舍棄。最終定義侵略性行為視頻時長最少為3 s。
通過在Python 3.6上編輯的程序代碼,對視頻進行標注。將標注的數據集隨機劃分為訓練集,驗證集以及測試集,并獲取對應的訓練集、驗證集以及測試集文檔目錄,網絡模型將會依賴這個目錄實現對數據集的讀取。
1.2.4 數據集介紹
根據表1中定義的侵略性行為,對視頻圖像進行了剪輯分段處理。在群養豬侵略性行為發生過程中,常涉及到多種侵略性行為同時發生,或是一個行為結束后另一個行為的再次發生,故視頻中至少包含一種所定義的侵略性行為,經過細致的分類后最終得到的3批數據中對應的侵略性行為發生的次數統計如表2所示。

表2 各類侵略性行為統計
根據表2可以看出,在所有的行為類別中咬耳和咬身體行為出現的次數最多,在3期試驗完成后均發現多數豬只的耳部和部分豬只身上都有傷口,無疑侵略性行為對豬只的健康和福利造成了嚴重的影響。
為了訓練和評估所搭建的網絡,將采集的第一批在2018年3月12日-4月9日,在37.95 mg/m3的氨氣濃度下采集的試驗數據按照60%、20%、20%的比例作為網絡的訓練集、驗證集與測試集。后面兩批試驗數據(2018年4月19日-5月16日,15.18 mg/m3;2018年6月9日-7月6日,<3.80 mg/m3)中選取一部分侵略性行為與非侵略性行為制作為測試集,數據集詳情如表3所示。

表3 數據集劃分
1.3.1 2D與3D CONV網絡模型
現有的采用深度學習方法針對豬群行為的研究,通常是使用常規的2D卷積核(2D CONV)搭建卷積神經網絡。2D CONV是針對單張圖片進行卷積操作,提取的是圖片的空間特征。針對豬只的分割,識別,行為檢測取得了很好的成果[21-24,26]。但是針對豬只的侵略性行為識別而言,僅通過單張圖片進行識別并不準確,侵略性行為是一個隨時間進行的一個完整的行為,如果只在一幀圖像上得出結果對侵略性行為做出判斷,這樣將會丟失了侵略性行為在時間維度上的運動信息,導致很高的錯誤識別率,難以做出有效的判斷。所以針對豬只侵略性行為的識別,需要結合時間和空間維度上的信息。
3D卷積核(3D CONV)是一種在2D CONV中加入了時間維度信息的卷積,如圖2所示是3D CONV對于視頻幀進行卷積運算時的操作,在對圖像中的特征進行學習的卷積運算過程中,3D CONV多了在時間維度上的運算,其卷積核大小為。卷積核在對當前幀圖像進行卷積操作時,還會在時間維度上對接下來- 1幀圖像進行相應的卷積操作,即提取了時間序列上幀圖像的信息。取決于網絡所定義的卷積核的尺寸。3D CONV使得卷積提取的特征融合了在時間維度上的附近時間域上的信息,保留了運動信息,為模型提取時間和空間上的特征奠定了基礎。3D CONV搭建的卷積神經網絡依然具有2D CONV的局部連接,權值共享,多層次結構等優點,這使得使用3D CONV的卷積神經網絡具有很強大的學習能力[27]。

注:點、線均代表卷積運算中的計算過程。
1.3.2 3D CONV侵略性行為識別網絡模型
本文在C3D[28]網絡結構的基礎上,對C3D網絡結構進行重新構建和優化,通過比較不同網絡層數和卷積核大小對網絡模型準確度的影響,確定最佳的識別群養豬侵略性行為的網絡參數和模型。
如圖3所示,最終提出的模型為3D CONVNet,在C3D的基礎上做了4項改進:
1)C3D網絡只有8層,對于卷積神經網絡而言,網絡的層數越深所能提取到的特征越多,所學習到的特征也越來越抽象。針對本文的侵略性行為識別的任務而言,需要低級和高級抽象的特征相結合才能對任務做出準確識別。所以在充分考慮計算代價和模型性能的情況下,將網絡層數加深到了19層。
2)3D CONV與2D CONV相比,在時間維度上多了一個深度為大小的卷積運算,導致運算量劇增,故需要大量數據進行訓練得到一個較優的模型。在數據量不充足的情況下,網絡通常會遭受過擬合的風險。所以在網絡結構中加入了Dropout[29],這不僅可以有效的防止過擬合,還顯著減少了計算代價,可以更容易地去添加卷積層數以學習更有意義的特征,還增強了網絡的魯棒性。
3)在網絡結構中添加了Batch Normalization(BN)層[30],這是為了保證各層的參數數據分布不會隨著卷積操作的進行發生劇烈的變化,網絡在一個不變的數據分布范圍內更容易學習到有用的特征。此外,可有效避免在深層卷積神經網絡中可能出現的梯度消失問題,還可提高網絡訓練速度。
4)在網絡中采用了多尺度特征融合的方法,多尺度特征融合在最新的目標檢測算法SSD和YOLO v3中都得到了應用[31-33],SSD和YOLO v3都是目前在目標檢測方面最先進的算法。在網絡中融合不同尺度的特征是提高模型性能的重要手段,采用的特征融合讓模型充分利用到了各個階段所提取的時間和空間上的特征,在學習更抽象、更高級的特征時,仍然結合了低層的信息。這有效利用了各層卷積核所提取特征的側重點不同的特性。多尺度特征融合的引入,讓網絡融合更多的低層信息,對于網絡模型待解決的涉及到低層與高層特征相關聯的識別任務而言,起到了關鍵作用。
如圖3a所示,所提出的侵略性行為識別網絡由前置特征提取網絡,中間特征融合提取網絡以及最后的輸出網絡三部分組成。
前置特征提取網絡由3個卷積塊組成,前置特征提取網絡及卷積塊的構成如圖3b所示。前置特征提取網絡在網絡進行更進一步的特征提取和特征融合之前,提取出一些有效的特征,減少有可能存在的噪聲,減少一些無效信息對于模型性能的影響。前置特征提取網絡第一個卷積塊卷積核大小為3×3×1,第二、三卷積塊大小均為3×3×3,卷積塊輸出通道數逐漸增多,分別為16,32,64。為了在進行特征融合之前,保留更多的有效特征信息,所以在第一個卷積操作時,并不對時間序列上的運動信息進行采集,更多的利用當前幀的信息,且采用的Max-pooling在前置特征提取網絡的步長為(2,2,1),這會讓網絡更多的保留當前所提取的特征圖信息,而不是和后序時序特征融合,讓網絡保留更多的當前幀圖像的特征。卷積層后增加了Batch Normalization層、Relu激活層,以及Max-pooling層。
多尺度特征融合由特征融合提取網絡完成,如圖3c所示。在這個特征融合提取階段,主干網絡上設置了3個卷積階段,網絡仍然會繼續提取更深層次的特征。為了避免一些無效的特征被多次計算,導致計算代價的提高和網絡模型性能的下降,僅在一個卷積階段完成后再進行特征融合。在每個卷積階段內設置了5層卷積,卷積核的大小均為3×3×3,卷積通道數依次增長到64,128,256,512,卷積步長均為(1,1,1)。在跨越式的特征融合里,因為特征的通道數并不相同,所以并不能直接進行融合,在特征傳遞的連接中設置了尺寸為1×1×1的卷積核,以保證特征融合時的通道數一致。

輸出網絡如圖3d所示,在做最終的輸出預測之前,網絡對融合的特征進行了一次卷積操作,卷積核大小為1×1×1,步長為(1,1,1),并將網絡的通道數提升到1 024,這有利于網絡充分整合時間和空間上的信息。在連接到全連接層之前對特征圖進行平均池化處理,然后經全連接層后輸入到Softmax完成最終的類別預測和置信度計算。
網絡的任務是識別侵略性行為與非侵略性行為,屬于一個二分類問題。網絡采用Adam梯度下降法的反向傳播更新優化模型,網絡的損失函數采用categorical_crossentropy loss,如式(1)所示。


1.3.3 訓練參數設置
網絡采用的激活函數均為整流線性單元(rectified linear unit, relu),采用的優化算法為Adam梯度下降法,batch_size設定為32,momentum為0.9,設置迭代次數為20,基礎學習率為0.005,Dropout失活率為0.5,使用L2正則化函數,正則化權重衰減系數weight_decay為0.005。
為了全面、合理的對網絡模型性能做出評價,采用準確率(Accuracy),查準率(Precision),召回率(Recall)和F1值4個指標來評估模型的性能,如式(2)~(5)所示。




式中TP是正確識別侵略性行為的個數,TN是正確識別非侵略性行為的個數,FP是將非侵略性行為識別位侵略性行為的個數,FN是將侵略性行為識別為非侵略性行為的個數。
群養豬侵略性行為的識別檢測試驗步驟如下。
1)從采集的數據中提取出包含侵略性行為的視頻片段,制作出訓練集,驗證集和測試集;2)搭建群養豬侵略性行為識別檢測網絡;3)將制作好的訓練集作為網絡的輸入進行訓練;4)使用驗證集對網絡模型進行測試,得到loss函數以及網絡識別準確度;5)根據得到的網絡識別準確度作為評價指標,調整網絡參數,如學習率,Batch_size,weight_decay等;6)調整參數后再次訓練網絡,重復3)~5),直至Loss曲線收斂,訓練集與驗證集識別準確度相近。
在試驗平臺上,使用搭建的3D CONVNet對訓練集數據集進行20次迭代的訓練,同時也采用驗證集對網絡模型訓練狀況做一個初步的評價。網絡在包含380個侵略性行為片段(14 074幀),360個非侵略性行為片段(13 040幀)的數據集上的訓練集和驗證集識別準確度和模型loss曲線如圖4所示。

圖4 模型訓練曲線
由圖4可以看出,網絡存在一個明顯的訓練優化過程,隨著迭代次數不斷增加,訓練集和驗證集的分類誤差Loss曲線逐漸降低,迭代至15次時,Loss曲線趨近于收斂。模型在訓練集上的準確度達到了96.78%,在驗證集上的準確度也由剛最初的37%逐漸上漲至95.70%。從第10次迭代過后,訓練集和驗證集的準確度的差距逐漸減小,最終兩者的準確度差在一個良好范圍內,在迭代20次過后,Loss和識別準確度基本不再變化。識別準確度曲線以及Loss曲線展現了一個良好的深度學習模型的訓練過程,模型逐漸學習到正確識別群養豬侵略性行為的特征,達到了一個較好的訓練效果,且模型沒有陷入過擬合和局部最優。
模型對群養豬侵略性行為有較好的識別性能。如圖5所示,是隨機抽取的模型對圖像幀中侵略性行為和非侵略性行為的識別效果,圖5a是豬只在進食狀態中,系統判定為非侵略性行為(Nor),置信度為0.967;圖5b為發生進食行為之外又發生撕咬行為,系統判定為侵略性行為(Attack),置信度為0.821。
對于追逐、撞擊、踩踏、咬身體等侵略性行為,模型均具有良好的表現。模型對于不同環境狀態下的侵略性行為識別有很好的魯棒性,如在群養的6頭豬只中,侵略性行為僅發生在2頭豬只中,其余4頭豬只處于吃食,飲水等非侵略性行為下,模型可準確識別出侵略性行為的發生;在一次侵略性行為發生后的幾秒鐘之后,豬群中再次發生侵略性行為,模型也可準確識別出侵略性行為;在涉及到多頭豬只的侵略性行為亦可準確識別。此外,模型還可以對當前行為做出判斷的同時給出一個置信度分數,這更有利于網絡模型對于識別是否為侵略性行為提供依據和可解釋性。

a. 模型對非侵略性行為的識別a. Model identification of non-aggressive behaviorb. 模型對侵略性行為的識別b. Model identification of aggressive behavior
為進一步驗證模型性能,需要在實際豬舍環境下檢測算法的有效性以及泛化性能。本節試驗以相同養殖環境下不同豬只、不同視頻段時長、不良照明條件等因素,對模型性能進行試驗評估。
2.2.1 不同批次豬只對模型性能的影響
在實際的群豬養殖環境中,不同批次的同類豬只雖總體上沒有明顯區別,但是不同豬只受到環境等外界因素影響仍存在一定差異,如形體,身體部位輪廓,行為習慣等。針對不同批次豬只,使用了測試集1、測試集2以及測試集3對模型做出評價,表4是模型在3個測試集上的測試結果的混淆矩陣。

表4 模型在測試集上結果的混淆矩陣
從表3中統計出在全部測試集的1 066個視頻片段中,總共981段(侵略性+非侵略性)視頻被正確分類,85段(侵略性+非侵略性)視頻分類錯誤。準確率為92.03%,侵略性行為的查準率指標為94.86%,侵略性行為召回率指標為89.57%,調和Recall與Precision的F1值為92.14%。測試集1在3個測試集中取得了最優的表現性能,侵略性行為識別準確度為94.29%。這是由于測試集1與訓練集是來源于同一批次豬只,故模型對該批次豬只數據擬合得更好。測試集2、3與訓練集雖是來源于不同批次的豬只,但是通過統計計算得到測試集2、3的準確度指標分別為89.44%,85.91%。這充分說明了模型的泛化性能良好,在針對同一養殖環境下的不同豬只,該模型依舊可以以較高的準確地識別侵略性行為的發生與否。
2.2.2 視頻長短對模型性能的影響
因為侵略性行為發生的動因、種類以及豬只個數差異等原因,導致發生侵略性行為的時間長短不一。為分析侵略性行為持續時長對模型識別侵略性行為的性能的影響,將測試集2、測試集3中的侵略性行為視頻按時間段進行分類,不同時間段的分布及分類測試結果如圖6所示。

圖6 不同侵略性行為持續時長的測試結果
從圖6中統計計算得出,視頻段時長主要分布在>4~7 s內(220段)。這一時長段的視頻在測試集總數中的占比達到了57.74%,且識別準確度達到了89.55%,其中又以>4~5 s內的視頻段量最多,占比達到了24.41%,識別準確度達到了93.55%。3~4 s內的視頻與>6~7 s內的視頻占比基本一致,且識別準確度均達到80 %以上。但是從6~7及7~8 s的視頻中,視頻段占比呈逐漸減小的趨勢,識別準確度也是基本逐漸降低的趨勢,在7 s及以上的視頻段中僅取得了73.33%的識別準確度。
對于視頻誤識別的原因,主要有三點,一是在侵略性行為發生的過程中,受侵略豬只的身體部位特征被侵略性豬只所遮擋,如耳朵,尾部等部位,模型沒有檢測到受侵害部位,所以無法判斷是否發生侵略性行為;二是侵略性行為過于溫和,幀與幀之間基本無明顯變化,模型無法捕獲時間維度上的運動信息,做出了錯誤的識別結果;三是對于較長的視頻,3D CONVNet對視頻的逐幀處理時間過長,容易丟失時間維度上的運動信息,導致時間維度上的運動信息對模型進行識別的作用有限,網絡過分依賴于空間維度上的信息,導致了對長視頻的較高的誤識別率。
2.2.3 不良照明條件對模型性能的影響
試驗中,根據豬只作息習慣提供照明的LED燈在07:00-18:00開啟,其余時間僅通過養殖箱側壁窗口的自然光照明,但在實際的觀察中發現有部分侵略性行為發生在照明條件不佳的情況下。為了評估模型在不良照明條件下的侵略性行為識別的表現,在測試集中將不良照明條件下的視頻段進行篩選,將這批數據單獨進行測試,最終得到的結果如表5所示。

表5 不良照明條件視頻識別結果
由表5可以看出,模型對于不良照明條件下侵略性行為識別準確率依然達到了79.07%。在實際的豬只養殖過程中,不良照明現象是普遍存在的,而本文所提出的侵略性行為檢測模型,對于豬只侵略性行為識別依然可以在不良照明條件下取得較優的結果,體現了模型對于光照條件的良好的適應性,更能促進模型在實際的集約化養殖豬場內運用。
本文提出的3D ConvNet特征融合提取網絡中卷積核大小為3×3×3,卷積塊內部層數為5,該網絡參數設置是對特征融合提取網絡的不同網絡參數進行試驗驗證的基礎上,確定的最優的識別侵略性行為的網絡參數。通過對比試驗發現,當卷積核大小為3×3×3,卷積塊內部卷積層數為5時,網絡取得了95.70%的識別準確度。卷積核大小為3×3×1時,識別準確度僅為49.22%。卷積塊內部卷積層數設置為9層時,模型待訓練參數增加至7 401×103,識別準確度僅為63.67%。
將本文網絡模型與C3D模型以及其他基于C3D網絡的改進模型的檢測識別效果進行對比。采用的訓練集與驗證集均為前文所述的數據集。訓練參數的設置均保持一致。4個網絡模型在驗證集上檢測識別性能如表6所示。
C3D網絡模型在本文的數據的驗證集上僅取得了52.23%的識別準確度。在將C3D網絡的卷積層加深至19層后,得到C3D_1模型,識別準確度僅提升至64.58%,在實際訓練中C3D_1模型花費了大量的訓練時間。在C3D_1的基礎上,在網絡中增加了BN層得到C3D_2(BN)模型,在同樣的數據集上,C3D_2模型隨僅取得了少量的準確度提升,達到65.63%,但是在實際訓練中加入BN層加速了網絡收斂速度,網絡僅運行了5個epoch后loss函數便趨近于收斂。3D ConvNet模型與C3D模型相比,在驗證集上的準確度上提升了43.47個百分點,與同樣主干網絡結構的C3D_2模型以及C3D_1模型相比,3D ConvNet在引入了多尺度特征融合過后,識別準確度提高至95.70%,且實際訓練模型至收斂的時間大大縮短。

表6 不同模型的性能比較
對照各算法的單幀圖像平均識別時間,3D ConvNet在C3D網絡的基礎上同時加深了網絡的寬度和深度后,由于Dropout以及Batch Normalization層的加入,使網絡模型待訓練參數數量減小至1 741×103,單幀圖像平均識別時間是0.5 s,為所有對比網絡中最短,且比次短時間C3D模型的2.3 s減少了1.8 s,大大提升了識別效率。
針對本研究的豬只侵略性行為識別的目的,在集約化養殖豬場內,要對群養豬的侵略性行為做到實時監測,模型大小和單幀圖像的平均識別時間極其重要,模型過大不易加載和運行,且在移動端占用內存嚴重,檢測識別時間過長,無法實現實時檢測。本文提出的網絡模型訓練過后的大小僅為76.3 MB,在移動端上的移植不會受到限制。且在CPU端(Intel(R)Core(TM)i5-7500)的單幀圖像檢測時間為0.50 s,基本滿足集約化群養豬侵略性行為實時檢測的要求。
本文基于深度學習研究了對群養豬侵略性行為進行識別的網絡模型,該網絡模型在識別測試集的1 066個視頻片段中取得到較好的效果,具體結論如下:
1)基于C3D網絡提出了一種用于對群養豬侵略性行為進行識別的3D ConvNet網絡模型,網絡結構在寬度和深度兩個方面進行改進。在深度上加深卷積層的數量,并添加BN層和Dropout層;在寬度上,在網絡模型中設置多尺度特征融合,實現了對侵略性行為發生與否的判斷以及置信度的輸出。
2)3D ConvNet網絡模型在測試集上取得了92.03%的準確率,在測試集的1 066個片段中,總共981段(侵略性+非侵略性)視頻被正確分類。侵略性行為的查準率指標為94.86%,侵略性行為召回率指標為89.57%,調和Recall與Precision的F1值為92.14%。且在相同環境的不同批次豬只的測試集上以及在照明不良條件下表現出良好的泛化能力。
3)與C3D網絡,C3D_1(19層)網絡和C3D_2(BN)網絡相對比,在相同訓練集和驗證集的條件下,3D ConvNet在驗證集上的識別準確率超過C3D網絡,C3D_1(19層)和C3D_2(BN)網絡,達到95.70%,在處理單幀圖像識別速度最快僅需0.5 s。網絡模型在高準確度的同時提高了圖像檢測時間,具有良好的有效性和實時性。
結果說明基于3D卷積核的群養豬侵略性行為識別網絡的模型是穩定有效的。該算法為群養豬侵略性行為識別提供方法和思路,為后續針對集約化養殖環境下的豬只行為自動監測識別打下了基礎。
[1]Turner S P, Farnworth M J, White I M S, et al. The accumulation of skin lesions and their use as a predictor of individual aggressiveness in pigs[J]. Applied Animal Behaviour Science, 2006, 96(3/4): 245-259.
[2]Kongsted, Grete A . Stress and fear as possible mediators of reproduction problems in group housed sows: A review[J]. Acta Agriculturae Scandinavica, Section A-Animal Science, 2004, 54(2): 58-66.
[3]朱志謙. 工廠化養豬對豬行為及性能的影響與對策[J]. 畜牧與獸醫,2007(12):40-41.
[4]Verdon M, Hansen C F, Rault J L, et al. Effects of group housing on sow welfare: A review[J]. Journal of Animal Science, 2015, 93(5): 1999.
[5]施正香,李保明,張曉穎,等. 集約化飼養環境下仔豬行為的研究[J]. 農業工程學報,2004,20(2):220-225.
Shi Zhengxiang, Li Baoming, Zhang Xiaoying, et al. Behaviour of weaning piglets under intensive farm environment[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2004, 20(2): 220-225. (in Chinese with English abstract)
[6]張振玲,Rachel S E Peden,Simon P Turner, 等.豬混群攻擊行為研究進展[J]. 豬業科學,2018,35(12):34-37.
[7]楊飛云,曾雅瓊,馮澤,等. 畜禽養殖環境調控與智能養殖裝備技術研究進展[J]. 中國科學院院刊,2019,34(2):163-173.
[8]何東健,劉冬,趙凱旋. 精準畜牧業中動物信息智能感知與行為檢測研究進展[J]. 農業機械學報,2016,47(5):231-244.
He Dongjian, Liu Dong, Zhao Kaixuan. Review of perceiving animal information and behavior in precision livestock farming[J]. Transactions of the Chinese Society for Agricultural Machinery, 2016, 47(5): 231-244. (in Chinese with English abstract)
[9]馬麗,紀濱,劉宏申,等. 單只豬輪廓圖的側視圖識別[J].農業工程學報,2013,29(10):168-174.
Ma Li, Ji Bin, Liu Hongshen, et al. Differentiating profile based on single pig contour[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2013, 29(10): 168-174. (in Chinese with English abstract)
[10]張萌,鐘南,劉瑩瑩. 基于生豬外形特征圖像的瘦肉率估測方法[J]. 農業工程學報,2017,33(12):308-314.
Zhang Meng, Zhong Nan, Liu Yingying. Estimation method of pig lean meat percentage based on image of pig shape characteristics[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2017, 33(12): 308-314. (in Chinese with English abstract)
[11]劉龍申,沈明霞,柏廣宇,等. 基于機器視覺的母豬分娩檢測方法研究[J]. 農業機械學報,2014,45(3):237-242.
Liu Longshen, Shen Mingxia, Bo Guangyu, et al. Sows parturition detection method based on machine vision[J]. Transactions of the Chinese Society for Agricultural Machinery, 2014, 45(3): 237-242. (in Chinese with English abstract)
[12]Oczak M, Viazzi S, Ismayilova G, et al. Classification of aggressive behaviour in pigs by activity index and multilayer feed forward neural network[J]. Biosystems Engineering, 2014, 119: 89-97.
[13]Viazzi S, Ismayilova G, Oczak M, et al. Image feature extraction for classification of aggressive interactions among pigs[J]. Computers and Electronics in Agriculture, 2014, 104: 57-62.
[14]Chen C, Zhu W, Ma C, et al. Image motion feature extraction for recognition of aggressive behaviors among group-housed pigs[J]. Computers and Electronics in Agriculture, 2017, 142: 380-387.
[15]Jonguk L, Long J, Daihee P, et al. Automatic recognition of aggressive behavior in pigs using a kinect depth sensor[J]. Sensors, 2016, 16(5): 631-641.
[16]孫鈺,周焱,袁明帥,等. 基于深度學習的森林蟲害無人機實時監測方法[J]. 農業工程學報,2018,34(21):74-81.
Sun Yu, Zhou Yan, Yuan Mingshuai, et al. UAV real-time monitoring for forest pest based on deep learning[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2018, 34(21): 74-81. (in Chinese with English abstract)
[17]Krizhevsky A, Sutskever I, Hinton G E. ImageNet classification with deep convolutional neural networks[C]// International Conference on Neural Information Processing Systems. Curran Associates Inc. 2012: 1097-1105.
[18]Ren S, He K, Girshick R, et al. Faster R-CNN: Towards real-time object detection with region proposal networks[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2017, 39(6): 1137-1149.
[19]Zeiler M D, Fergus R. Visualizing and understanding convolutional networks[C]//European Conference on Computer Vision. Springer, Cham, 2014: 818-833.
[20]Zhang Z, Fidler S, Urtasun R. Instance-level segmentation for autonomous driving with deep densely connected MRFs[C]// Computer Vision & Pattern Recognition. 2016.
[21]Yang Qiumei, Xiao Deqin, Lin Sicong. Feeding behavior recognition for group-housed pigs with the Faster R-CNN[J]. Computers and Electronics in Agriculture, 2018, 144: 453-460.
[22]Yang Aqing, Huang Huasheng, Zheng Chan. High-accuracy image segmentation for lactating sows using a fully convolutionalnetwork[J]. Biosystems Engineering, 2018, 176:36-47.
[23]楊秋妹,肖德琴,張根興. 豬只飲水行為機器視覺自動識別[J]. 農業機械學報,2018,49(6):232-238.
Yang Qiumei, Xiao Deqin, Zhang Genxin. Automatic pig drinking behavior recognition with machine vision[J]. Transactions of the Chinese Society for Agricultural Machinery, 2018, 49(6): 232-238. (in Chinese with English abstract)
[24]Zheng Chan, Zhu Xunmu, Yang Xiaofan. Automatic recognition of lactating sow postures from depth images by deep learning detector[J]. Computers and Electronics in Agriculture, 2018, 147: 51-63.
[25]高云,陳震撼,王瑜,等. 多環境參數控制的豬養殖箱設計及箱內氣流場分析[J]. 農業工程學報,2019,35(2):203-212.
Gao Yun, Chen Zhenhan, Wang Yu, et al. Design for pig breeding chamber under multiple environment variable control and analysis of internal flow field[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2019, 35(2): 203-212. (in Chinese with English abstract)
[26]高云,郭繼亮,黎煊,等. 基于深度學習的群豬圖像實例分割方法[J]. 農業機械學報,2019,50(4):179-187.
Gao Yun, Guo Jiliang, Li Xuan, et al. Instance-level segmentation method for group pig images based on deep learning[J]. Transactions of the Chinese Society for Agricultural Machinery, 2019, 50(4): 179-187. (in Chinese with English abstract)
[27]Ian Goodfellow, Yoshua Bengio, Aaron Courville. Deep Learning[M]. 北京:人民郵電出版社,2016.
[28]Tran D, Bourdev L, Fergus R, et al. Learning spatiotemporal features with 3D convolutional networks[C]//2015 IEEE International on Computer Vision and Pattern Recognition, 2015: 4694-4702.
[29]Srivastava N, Hinton G, Krizhevsky A, et al. Dropout: A simple way to prevent neural networks from overfitting[J]. Journal of Machine Learning Research, 2014, 15(1): 1929-1958.
[30]Ioffe S, Szegedy C. Batch normalization: Accelerating deep network training by reducing internal covariate shift[C]// International Conference on International Conference on Machine Learning. JMLR.org, 2015.
[31]Zhang Z, Zhang X, Peng C, et al. ExFuse: Enhancing feature fusion for semantic segmentation[C]// European Conference on Computer Vision. Springer, Cham, 2018.
[32]Liu W, Anguelov D, Erhan D, et al. SSD: Single shot MultiBox detector[C]// European Conference on Computer Vision. 2016.
[33]Joseph Redmon, Farhadi Ali. YOLOv3: An incremental improvement[EB/OL].[2018-04-08].https://arxiv.org/pdf/1804.02767.pdf.
Recognition method for aggressive behavior of group pigs based on deep learning
Gao Yun1,2, Chen Bin1, Liao Huimin1, Lei Minggang2,3, Li Xuan1,2, Li Jing1, Luo Junjie1
(1.430070,; 2.,430070,; 3.,,430070,)
Pigs like to fight with each other to form a hierarchy relationship in groups. Aggressive behaviors, mostly fighting, are frequently found in intensive pig raising facilities. Strong aggressive behaviors can cause other pigs lack of food and water, growing slowly, wounds, sick and even dead in serious situation. This considerably reduces health and welfare of pigs and further decreases economic benefits of pig industries. Monitoring and recognizing aggressive behaviors among pig group is the first step to manage the aggressive behaviors in group pigs effectively. Traditional human recording method is time-consuming and labor-intensive. This method can’t be used 24 hours a day, 7 days a week. Machine vision technique brings an automatic monitoring method to solve this problem. In this paper, we introduced a new method for aggressive behaviors monitoring based on deep learning. The experiments were held under controlled environments, which were achieved in an environment-controlled chamber designed previously. The details of the chamber were depicted in a published paper written by our research group. Nursery pigs were fed under three different concentration levels of NH3gas, which were <3.80, 15.18, 37.95 mg/m3, with a suitable temperature of around 27 ℃ and the comfortable humidity between 50%-70%. Each nursery group had six pigs and were weight around 9.6 kg. During each 28 days’ experiment of three concentration levels of NH3, videos were taken from the top of the chamber. An end-to-end network, named 3D CONVNet, was proposed for aggressive behavior recognition of group pigs in this paper, which based on a C3D network and built with 3D convolution kernels. The network structure of the 3D CONVNet was improved in both width and depth dimensions. The number of main convolutional layers was increased to 19, extra batch normalization and dropout layers were added to deepen the network. Furthermore, the multi-scale feature fusion method was introduced to widen the network. This improvement had bettered the performance of the algorithm considerably. To train the 3D CONVNet, 380 aggressive (14 074 frames) and 360 none-aggressive videos (13 040 frames) were chosen from experimental videos recording in experiments of two concertation levels. These videos were randomly divided into training set and validation set, and the ratio of each set is 3:1. Another 556 aggressive videos and 510 none-aggressive videos from the three experimental batches were chosen to build the testing set. There was no overlap among training set, validation set, and testing set. Results showed a total of 981 videos, including aggressive and non-aggressive behaviors, was correctly recognized from the whole 1066 testing videos. The precision of the 3D CONVNet was proved to be 92.03% on testing set. Among them, the precision, recall rate and F1-Score for aggressive behaviors were 94.86%, 89.57%, and 92.14%, respectively. The precision for different NH3concentration experimental levels were 94.29%, 89.44%, and 85.91%, respectively, which showed the generalization performance of the 3D CONVNet. With the similar heat environments, the 3D CONVNet also showed the good performances under different illumination condition. The comparison with C3D, C3D_1 (19 layers) and C3D_2 (BN) networks resulted in 95.7% on validation set, 43.47 percent point higher than the C3D network. The recognition on single image using the 3D CONVNet was only 0.5 s, which was much faster than the other three networks. Therefore, the 3D CONVNet was effective and robust in aggressive behavior recognition among group pigs. The algorithm provides a new method and technique for aggressive behavior auto-monitoring of group pigs and helps improve establishment of auto-monitoring system in pig farms and manage level of pig industry.
convolutional neural network; machine vision; models; behavior recognition; aggressive behavior; deep learning; group pigs
高 云,陳 斌,廖慧敏,雷明剛,黎 煊,李 靜,羅俊杰. 群養豬侵略性行為的深度學習識別方法[J]. 農業工程學報,2019,35(23):192-200.doi:10.11975/j.issn.1002-6819.2019.23.024 http://www.tcsae.org
Gao Yun, Chen Bin, Liao Huimin, Lei Minggang, Li Xuan, Li Jing, Luo Junjie. Recognition method for aggressive behavior of group pigs based on deep learning[J]. Transactions of the Chinese Society of Agricultural Engineering (Transactions of the CSAE), 2019, 35(23): 192-200. (in Chinese with English abstract) doi:10.11975/j.issn.1002-6819.2019.23.024 http://www.tcsae.org
2019-07-10
2019-10-29
“十三五”國家重點研發計劃項目(2016YFD0500506);中央高校自主創新基金(2662018JC003,2662018JC010,2662017JC028);現代農業技術體系(CARS-35)
高 云,副教授,博士,主要從事農業智能檢測與控制方面的研究。Email:angelclouder@mail.hzau.edu.cn
10.11975/j.issn.1002-6819.2019.23.024
TP391.41
A
1002-6819(2019)-23-0192-09