姚 州, 譚 焓, 田 芳, 周 勇, 章 程*
(1.華中農業大學信息學院,湖北武漢430070 ;2.武漢軟件工程職業學院,湖北武漢430205;3.甘肅省金昌市畜牧獸醫總站,甘肅金昌737100)
養羊業是我國畜牧業發展的重要組成部分,在農業經濟中占有重要的地位。 羊肉具有高蛋白質、低脂肪的特點,深受人們的喜愛(馬友記等,2011)。 隨著信息化技術的發展,我國養羊業正由散養型向大規模、集約化、精準化方向發展。 通過將物聯網技術、大數據技術、計算機視覺等現代智能技術與養羊業相結合,可以更高效率、更高收益地實現養羊業的發展,即智慧羊場。智慧羊場可以實現智能化、精準化管理,實現肉制品的溯源以及疫情的及時監測。
計算機視覺技術包括圖像處理、 圖像理解、智能識別等方面,主要是通過模擬人的視覺系統來實現對周圍空間物體的傳感、抽象、判斷(嚴勁濤,2019)。 隨著人工智能的快速發展,計算機視覺技術已在農業、畜牧業、工業等領域得到廣泛應用(孫哲南等,2019)。 本文總結了計算機視覺技術在羊場個體識別、行為識別、體尺與體重的估測、疾病監測中的國內外研究現狀,對其優缺點進行分析總結,并提出未來發展的趨勢,以期為該領域相關的研究提供參考。
個體識別是實現智慧羊場的基礎,即賦予每只羊唯一ID,在管理羊的生長狀態、追溯等方面具有重要意義。 過去,針對羊個體的識別主要靠人工識別(程洪花,2011),主觀意識太強,容易識別錯誤。 目前,在大規模養羊場的個體識別主要依靠接觸式的射頻識別技術(王玲等,2014;鄒小昱等,2013)來實現,其主要由電子標簽、天線、視頻識別器構成。 在一定范圍內,視頻識別器可以對電子標簽進行識別。 但是,電子標簽戴在羊的耳朵,容易造成羊的損傷,不利于羊的福利;在羊運動過程中還易造成電子標簽的脫落或損傷。因此,急需具備易于操作、時效性強、特征突出以及無害處理的高效、準確、非接觸式的識別羊個體的方法。 生物圖像識別正好滿足這一要求,也將是未來個體識別的主流趨勢。
生物圖像識別主要依靠計算機視覺技術對生物特征進行識別。 目前,羊的生物特征主要包括面部、虹膜、DNA 指紋等(Felmer 等,2006)。 羊DNA指紋的識別雖然準確率較高,但需要兩至三天的時間,目前當今科學界滿足實時性這一需求,因此不被采納作為羊個體的識別。 羊的虹膜具有唯一性,可以準確實現羊的識別。但是該技術需要精密的虹膜采集儀器,并且采集過程也非常困難,成本較高。因此, 羊的面部識別是研究羊個體識別的熱點問題。 Corkery 等(2007)提出羊臉識別作為綿羊生物特征識別的初步研究。 主要通過針對50 只綿羊面部采用獨立分量技術進行整體分析,運用預先分類器實現評估。 結果表明,當提取180 ~200 組分時,識別率高達95.3%~96%。 但是,實驗過程中,每只羊僅采集到2 ~4 張羊臉數據,數據集較小,在大規模羊臉數據集中不適應。 Yang 等(2015)通過分析綿羊的面部,將三重插值特征引入到級聯姿態回歸框架中,來定位稀疏分布的面部標注點,得到了較為精確的結果。 但是,該方法的前提是已經檢測到了羊臉,無法在自然環境下提取到羊臉目標。 而自然環境下標準的羊臉識別,第一步為羊臉的目標檢測,第二步為針對檢測結果進行識別。 由于提取羊臉目標不僅可以降低背景噪聲的干擾,而且可以提高羊臉識別準確率。 Salama 等(2019)提出了一種基于貝葉斯優化的混合深度學習的羊臉識別方法。針對采集的52 只羊的羊臉數據集,運用貝葉斯優化技術自動調節卷積神經網絡,經過參數測試與調整,最終識別準確率高達98%。
在智慧羊場中, 個體識別領域未來的發展趨勢是借助計算機視覺技術對羊臉進行識別來實現羊個體的識別。而目前,羊臉識別更多地借鑒人臉識別相關領域的方法進行, 采集到的羊臉數據集相對有限,在較大規模數據集上的研究較少;羊臉數據集都由研究者自己采集, 無大型公開的數據集供其參考。在今后數據采集中,希望可以收集大規模不同種類羊只的數據集, 借鑒人臉識別的優秀成果,運用遷移學習、深度學習等方法提高羊臉識別的準確性、魯棒性。
動物行為是指在特定的條件下, 生理和心理方面所產生的自然反應, 可以反映出動物的整體態度, 可以通過其表現的不同狀態了解到動物的需求(劉艷秋等,2019)。羊的行為包括運動檢測與跟蹤、母羊分娩檢測、飲水與排便、攻擊等。準確地對羊的行為進行識別可以及時發現異常。目前,大多數的養羊場都依靠人工來判別, 不能及時統計羊的行為, 而運用計算機視覺技術可以及時檢測羊的各種行為。
羊的行為識別可以判別羊運動的活躍程度。韓丁(2018)通過K-means 聚類算法實現了羊的站立、臥息、行走、其他四種行為的識別,結果表明,臥息行為識別高達95.6%,其余行為識別率在60%左右。 為解決這一問題,引入GPS 速度信息對其矯正, 最終識別準確率為89.2%。 朱偉杰(2018)針對奶山羊遮擋問題,提出了一種基于上下文的信息與超像素級特征實現奶山羊的跟蹤,最終精確度達到76.5%,成功率達到61%;為了適應多變的養殖環境, 提出一自適應加權的粒子濾波跟蹤方法, 其特征提取主要是依靠顏色直方圖與HOG 的自適應融合,精確度為70.5%,成功率為54.3%。但是該方法對尺度變化較為敏感,同時識別精度和成功率有待提高。
母羊的產前行為識別,有助于預測母羊的分娩時間以及產前的健康狀態(Forbes,2018)。 劉艷秋(2017)通過對母羊產前的站立、行走、刨地、趴窩、飲水、采食六種行為進行識別,進而推斷母羊產前的健康狀態以及預測分娩時間。通過運用K-means算法對羊的趴窩行為進行識別, 識別準確率為99%,BP 神經網絡對站立、行走、刨地行為進行識別,平均準確率為78.93%。 通過對母羊產前15 天和產后5 天的六種行為進行統計分析,得出母羊產前行走以及站立逐漸增多,刨地幾乎沒有,飲水采食逐漸減少;生產日行走明顯增多,飲水采食減少,刨地頻率較多;產后行走站立持基本平穩,刨地幾乎沒有,飲水采食逐漸增多的特點。 但是本實驗沒有在復雜變換的環境下進行,在變化環境下的魯棒性有待研究。 Ceyhan 等(2012)以初產母羊、經產母羊作為研究對象, 通過視攝像機采集分娩過程,通過特征提取識別羊的行為,結果表明,初產母羊熟悉度較低,站立、行走次數較多,而經產母羊是熟悉度較高。 Sun 等(2019)針對母羊分娩中、分娩后對初生羔羊的檢測, 選用以VGG16 為提取特征基礎網絡,soft-NMS 算法的Faster-RCNN 可以實現較高的檢測準確率,AP 指標可達95.43%。 但是,該實驗是將每一只母羊單獨分開來檢測,未考慮同一場景多只母羊同時分娩的情況。
針對公羊的運動量來提供飼料的供給, 以及健康的監測。張曦宇等(2018)通過在羊的背部、頸部、前腿、后腿采集加速度傳感器的信息,對羊的靜立、行走、奔跑三種行為進行識別,通過區間閾值分類法實現三種行為的平均準確率為96.21%。但是通過傳感器獲取的信息,增加了損耗,下一步的發展趨勢是通過方便快捷的圖像處理技術來實現。 韓佳臻等 (2019) 通過深度學習網絡SEDenseNet 對奶山羊的站立、趴臥、進食、蜷縮四種行為進行識別,識別準確率為93.18%左右。 但是,由于采集的數據集有限, 容易造成過擬合現象。Ren 等(2018)通過3D 視覺系統對4 只羊的站立、趴臥行為進行監測,通過深度視頻流和紅外視頻流對羊的站立、趴臥行為進行識別,結果表明,站立行為準確率為96.4%,趴臥行為準確率為94.16%。
綜合分析羊的行為識別, 運用計算機視覺技術實現羊的飲食、 運動情況等是智慧羊場完善的趨勢。 目前, 計算機視覺技術在羊的行為識別還處于探索階段。 今后,在目標跟蹤、行為識別算法的有效性,目標識別、跟蹤的時效性有待提高。 在行為識別算法的泛化能力方面, 應當針對復雜的羊場環境分析,增強算法的魯棒性。
羊的體尺與體重是監測羊成長、 發育狀態的重要指標, 是養羊場選擇優質種羊的參考指標之一(張帆等,2012;白俊艷等,2011)。 據調研,目前大多養羊場需要人工進行體尺體重的測量, 在體尺測量時, 需要一個人固定羊, 一個人用尺子測量,一個人用來記錄數據,這樣不僅費時又費力;在測量體重時,每只羊至少需要兩個人來完成,由于人與羊之間無法交流, 測量過程中容易因運動而造成測量不準,耗費人力資源,而且會對羊造成應激,影響其發育。計算機視覺技術可通過羊的視頻或照片, 根據適合的算法規則實現無應激條件下測量羊的體尺與體重,可以實現方便、快捷、有效。 因此,運用計算機視覺技術對羊的體尺、體重估測是當前國內外學者研究的熱點問題之一。
江杰等(2014)通過背景差分法分割羊體,獲得羊的輪廓, 然后根據D-P 算法和海倫-秦九紹公式尋找羊的包絡線上曲率最大的點作為臀部測點,依據該點,從上往下、從左往右搜索鄰域內的三個點,最后用該四點可確定羊的體尺。但是,該方法容易受到背景圖分割不完整而帶來的干擾,對光線不具有抗干擾性。 牛林等(2014)通過運用臀部、肩頸、前后腳四點計算羊的體尺, 并將其應用在便攜式Linux系統中。 另外,Menesatti 等(2014)通過雙目系統獲得同源點三維信息,通過圖像處理得到點在空間中的位置和點之間的距離,用偏最小二乘回歸法對點間距離進行了修正,得到體尺參數有較小的誤差。江杰(2015)通過引入視頻幀選取關鍵幀,并結合臀部測點、肩頸點、空間分布率來確定羊的體尺。 實驗結果表明,在一定范圍內獲得的關鍵幀,相對誤差平均3%。 受測量數量的限制,無法證明在大規模數據中的準確性,不益于推廣。張麗娜(2017)通過從羊的左側、右側、上側來獲取羊的圖像,側視圖通過分區、輪廓擬合、測點提取,進而實現體尺的測量,俯視圖通過骨架的對稱擬合算法, 實現較高精度的胸寬、腹寬、臀寬的測量。曾德斌等(2018)通過對羊的前后蹄測量點、臀部的測量點和最高點、耆甲的測量點、胸骨前緣測量點、頭部的最高點的測量與定位,根據距離計算公式可確定羊的體尺參數,最終通過對十只羊的參數測量, 平均相對誤差小于1%。 周艷青等(2018)針對復雜環境的羊體分割,通過融合多尺度分水嶺、模糊C 均值方法、改進的Graph Cut 分割方法來實現羊的背景分隔(Zhou 等,2018),進而通過包絡線分析方法實現體尺測點檢測,最終實現羊體尺的測量,獲得較好的測量結果。 Bai 等(2017)通過雙目攝像機獲得兩只羊的側視圖,通過空間分辨率獲得目標點與成像點之間的關系,體長是兩個相應測量點之間的距離。 肩高和臀高是將相應測量點與地面連接的垂直長度。 申云輝(2019)基于雙目視覺系統對羊側視圖進行輪廓提取,在輪廓線拐點的基礎上提取測點,進而實現體尺的計算,并將其測量結果在可視化系統界面顯示。
羊體尺的測量經歷了從人工測量、 單目視覺測量、 雙目視覺測量、 多目視覺測量的發展進程(張麗娜等,2016)。大體趨勢是朝著基于計算機視覺的體尺測量。 但目前的研究都是基于小規模數據集,根據數學原理提取相應的特征點,再根據幾何關系來確定體尺參數,當面對大規模數據集時,測量準確率是否可以達到目前水平有待研究,可否快速識別有待驗證。因此,雙目視覺系統以及多目視覺系統是未來測量的趨勢, 將會由二維視覺系統上升為三維視覺系統, 獲取更加完整的羊的信息。 同時,借鑒深度學習技術,應用于羊體尺測量的研究,更好的實現智慧羊場的智能化。
羊的體重值不僅可以作為羊成長發育情況的參考,還可以作為智慧羊場中分群的重要指標。在羊的體重測量方面, 由于無法讓羊在體重秤上固定不動,因此,動態測量羊的體重是目前較為主流的方案。 在大型體重秤上,給羊唯一的通道,體重秤實時采集羊的體重, 對采集的體重信息分析處理, 可以得到羊的準確體重, 降低人工的勞動強度。對采集到的體重信息進行處理,主要有位移積分法、平均法、EMD 分解等(張俊慧等,2014)。 位移積分法(張俊慧等,2014)對噪聲比較敏感,目前不被采納。由于在羊上體重秤和下體重稱階段,體重信息測量不準確, 因此造成平均測量結果不準確。 為解決這一問題,對均值法進行改進,剔除羊上體重秤和下體重稱階段的值, 并將剩余采集的體重值進行排序、分組,組內進行均值,再對組間進行均值,進而使測得的體重較為準確(劉斯達,2017)。EMD 算法(呂乾濤等,2016)的目的在于將性能不好的信號分解為一組性能較好的IMFs 和殘余量,逐步得到較好的結果,但其最大的缺點是在其動態調整最優解時,時間效率不固定,在測量過程中時間最慢需要30 秒,無法實時得到羊的體重值。 為解決這一問題,EMD 算法 (王中立等,2017)被提出,在EMD 算法的基礎上,隨機加入高斯白噪聲來降低或消除EMD 的模態混疊現象。而這些測量方法雖然減輕了人工勞動強度,但其大型體重秤的設備較貴, 且設備出現問題不能及時解決。運用計算機視覺技術,可以實現無接觸測量,可以避免因設備原因造成的測量不準確。
羊的體尺參數(體長、體高、胸圍、管圍、胸深、胸寬)與體重呈正相關,且胸圍和體長對羊的相關性最高(白雅琴等,2019;陸會寧等,2019;陳華峰等,2018)。 張麗娜等(2017)通過支持向量機方法實現體質量與體尺參數的非線性模型, 通過體尺預估體質量,準確率高達95.38%。 孫煒等(2018)通過胸圍的平方乘以體長再除以10800 得到羊體重的預估值。 Menesatti 等(2014)通過羊的體長、胸深、體高的參數,運用對數變換的最小二乘回歸算法實現羊的體重估測。 郝雪萍(2015)等通過將羊的體長、體高、胸圍、胸寬與體重值建立多元線性回歸模型, 對羊的體重進行預測, 平均誤差為4.1%。 許鑫(2017)通過回歸模型分析方法,探討分析了七種羊體尺相關參數對體重的影響, 并證明了決定每種羊體重的重要參數。
目前,對羊體重模型的估測,主要通過計算機視覺技術測量羊的體尺參數, 然后將體重值與體尺參數建立回歸模型,進而預測羊的體重。由于在計算羊的體尺時, 容易因姿態偏差而造成體尺參數的測量失誤,進而導致羊的體重值預估不準確。未來,羊體重模型的估計主要有兩個趨勢:一是依靠精確的測量體尺模型, 以及精確的體尺與體重回歸模型,進而精確預測羊的體重值。 但是,不同品種的體尺與體重回歸模型有較大差異, 在模型泛化方面較弱, 因此該方法僅適合單一品種羊的體重預測。 二是依靠精確的視覺系統采集不同姿態下羊的視覺圖像, 建立相應的數學模型來估計羊的體重值。這種方法目前研究的比較少,但其受其他因素較小,因此泛化能力較強,是未來研究無接觸測量羊體重的主要方向。
羊場疾病的監測是羊日常管理的重中之重。目前,羊的疾病主要靠人工巡視監測,不能及時發現羊的異常狀態。 當羊生病時,會出現食欲不振、行為異常、面部痛苦、呼吸急促等特征。因此,可以運用計算機視覺技術實時監測羊的生理狀態,及時預警異常狀態的羊, 防止因延遲發現病羊而造成疾病傳播所帶來的經濟損失。 良好養殖的自動化系統對于減少痛苦、 縮短時間和優化綿羊生產是非常必要的。
為了識別羊面部的痛苦表情,McLennan 等(2016)提出了一種標準化的綿羊面部表情疼痛量表SPFES。結果表明,該方法可以準確理解綿羊的痛苦表情。 Hutson 等(2017)通過人工智能來識別綿羊面部表情的自動評估技術。 通過手動標記了480 只綿羊面部的表情特征,包括鼻孔變形、每只耳朵的旋轉和每只眼睛寬窄程度。 為此,他們開發了一種人工智能系統來檢測綿羊面部表情的方法。該系統可用于識別五種面部表情,并評估其是否處于疼痛狀態,以及疼痛的極端程度。Lu 等(2017)提出了一種多層次的方法來實現綿羊的面部表情識別。首先,運用Viola-Jones 目標檢測框架用于羊的正臉檢測,采用級聯姿態回歸方法(CPR)實現羊的面部標志點(耳朵、眼睛、鼻子)檢測。運用基于特征的歸一化方法對耳、眼、鼻進行歸一化處理,然后通過方向梯度直方圖(HOG)來實現綿羊面部表情特征的描述。最后將支持向量機(SVM)應用于疼痛水平的估計。 但是該方法僅考慮到羊的正臉部分,未考慮到不同姿勢的羊臉的面部表情。Noor(2019)通過運用卷積神經網絡構建羊面部表情疼痛量化表。該研究在進行羊臉表情訓練前,通過中值濾波器處理技術消除高斯和脈沖噪聲,利用殘差學習去噪卷積神經網絡去除高斯噪聲。 然后, 通過使用VGG16、ResNet 模型用于五種面部表情,分別得到了100%、85%的準確率。 通過對羊的面部表情識別,可以及時發現羊的痛苦,盡早地幫助他們緩解痛苦,可以帶來更大福利。
目前運用計算機視覺技術在羊疾病監測方面研究較少,處于初步探索階段。通過計算機視覺技術可以減輕飼養員的勞動強度, 可以實時監測羊的狀態。 未來可以通過計算機視覺技術監測羊的反芻行為、呼吸頻率、面部表情等,并結合機器視覺技術探索具有精準識別效率的算法。
計算機視覺技術在智慧羊場的探索正處于起步階段。在大數據時代,數據是基礎,方法是手段。不僅需要采集大量的數據, 還要不斷優化算法的性能,才能在根本上解決問題。 在應用領域,計算機視覺技術應當與5G 技術相結合, 實現實時的智能監測, 以代替高昂的電子傳感器設備監測技術。 在未來,隨著人工智能的發展,計算機視覺技術將在智慧羊場發揮重要的作用。