張春慧 宣傳忠 于文波 郝 敏 劉飛龍
(1.內(nèi)蒙古農(nóng)業(yè)大學(xué)機電工程學(xué)院, 呼和浩特 010018;2.內(nèi)蒙古自治區(qū)草業(yè)與養(yǎng)殖業(yè)智能裝備工程技術(shù)研究中心, 呼和浩特 010018)
內(nèi)蒙古自治區(qū)豐富的草地資源為畜牧業(yè)的發(fā)展提供了良好的條件,作為畜牧業(yè)支柱產(chǎn)業(yè)的養(yǎng)羊業(yè),已經(jīng)成為內(nèi)蒙古自治區(qū)經(jīng)濟發(fā)展的主要動力[1-2]。放牧羊只的牧食行為特征是衡量其生長發(fā)育的主要指標,通過監(jiān)測羊只的牧食行為可評估其采食量和生長速度,用于指導(dǎo)羊只的選育、改善其某些特征以及預(yù)測未來羊只的性能[3]。同時,羊在患病初期發(fā)病癥狀表現(xiàn)不明顯,但反芻行為明顯減少,通過檢測其采食和反芻行為可評估羊只的健康狀況[4]。在生態(tài)學(xué)上,由于放牧羊只對草地資源的利用主要是通過牧食行為進行的,牧食行為與草資源的利用率、草地生態(tài)系統(tǒng)密切相關(guān),通過羊只牧食行為監(jiān)測及分析,可為牧區(qū)草場的劃區(qū)輪牧、草畜平衡提供決策依據(jù)[5-6]。
直接觀察法是國內(nèi)外目前應(yīng)用較多的方法,主要利用秒表、計數(shù)器、望遠鏡等跟蹤羊只連續(xù)觀測,記錄羊只采食行為、反芻行為及臥息、游走等行為,然后通過所得的觀測數(shù)據(jù)進行統(tǒng)計分析[7]。通過壓電傳感器、壓力應(yīng)變片檢測羊只采食和反芻時的下顎或顳窩運動,得出兩種行為的不同電壓變化曲線,實現(xiàn)了對這兩種行為的量化分析,可自動記錄采食和反芻數(shù)據(jù)等牧食行為[8-9]。通過在羊頸部或頭部佩戴傳聲器或其它記錄裝置來采集羊只采食、咀嚼及吞咽等所傳出來的聲信號,再經(jīng)過處理亦可得到羊只采食及反芻信息[10-12]。三軸加速度傳感器根據(jù)加速度信號可以得出物體的運動特征,能夠全面準確評估羊只的運動特性及牧食行為。國外利用三軸加速度計監(jiān)測牛、羊、豬等家畜運動行為起步較早[13-16],國內(nèi)研究還處在起步階段[17-18]。在監(jiān)測方法上,對于羊只牧食行為采用人工觀察及音視頻監(jiān)測較多。人工觀察費時費力,不利于長期觀測,音視頻監(jiān)測對監(jiān)測環(huán)境要求較為嚴格,算法處理較為困難,不適合實時采集和傳輸?;谏鲜鰡栴},本文提出利用全球定位系統(tǒng)(Global positioning system,GPS)、三軸加速度傳感器及無線傳輸相結(jié)合的方法進行放牧羊只牧食行為的監(jiān)測,通過搭建神經(jīng)網(wǎng)絡(luò)模型進行羊只牧食行為的分類識別,以得到羊只的采食、咀嚼、反芻3種牧食行為的實時監(jiān)測數(shù)據(jù)。
采用三軸加速度傳感器采集放牧羊只采食、咀嚼、反芻3種行為加速度數(shù)據(jù),系統(tǒng)方案如圖1所示,試驗系統(tǒng)由羊只牧食行為數(shù)據(jù)采集端和數(shù)據(jù)處理端組成,數(shù)據(jù)采集端集成了GPS定位傳感器和三軸加速度傳感器,試驗時,通過無線網(wǎng)絡(luò)將牧食行為的三軸加速度信號傳輸?shù)接嬎銠C,在計算機上開發(fā)信號分析處理算法,并搭建羊只牧食行為分類識別模型對采食、咀嚼和反芻行為進行識別。
選取InvenSense公司設(shè)計的加速度傳感器模塊,該傳感器模塊以6軸模式或9軸模式輸出歐拉角、加速度等數(shù)字信號,加速度測量范圍可控,自帶數(shù)字運動處理器硬件加速引擎,通過兩線式串行總線(Inter-integrated circuit,I2C)接口可以輸出傳感器數(shù)據(jù),參數(shù)如表1所示,三軸加速度傳感器采樣頻率設(shè)置為10 Hz。
表1 三軸加速度傳感器參數(shù)Tab.1 Parameters of three-axis acceleration sensor
無線數(shù)據(jù)傳輸模塊選用濟南有人物聯(lián)網(wǎng)技術(shù)有限公司生產(chǎn)的通用無線分組業(yè)務(wù)(General packet radio service,GPRS)模塊USR-GPRS232-7S3,可將串口數(shù)據(jù)通過無線通信網(wǎng)絡(luò)實時傳輸?shù)街付ǖ挠嬎銠C。
試驗地點在內(nèi)蒙古自治區(qū)四子王旗白音朝克圖鎮(zhèn)試驗草場,草原類型屬半荒漠化草原,試驗時間為2019年9—10月。選取體態(tài)相當?shù)拇?大于等于50 kg)、中(40~45 kg)、小(小于等于35 kg)3類蒙古羊各2只進行試驗,分別將加速度傳感器安裝在羊只額頭、頸部以及下顎等部位進行對比,安裝在羊只下顎的加速度信號明顯且羊只應(yīng)激反應(yīng)最小。
為了方便不同牧食行為的加速度信號處理,如圖2所示,采用固定和跟蹤兩種方式分別采集加速度信號,固定方式將羊只置于限制圍欄內(nèi),通過飼喂不同種類的牧草,分析采食、咀嚼和反芻行為的三軸加速度信號變化特征;利用羊只牧食行為分析系統(tǒng)跟蹤羊只牧食行為,并用攝像機記錄其牧食行為,并完善羊只牧食行為的信號處理和識別算法。
羊只進行采食、咀嚼、反芻等牧食行為時,采集的加速度數(shù)據(jù)信號包含X、Y、Z共3個方向,其數(shù)值分別用ax、ay、az表示,以采樣點數(shù)(時間線)為橫坐標、加速度為縱坐標,3種牧食行為的加速度數(shù)據(jù)曲線如圖3所示。
理想情況下,當羊只靜止不動時X、Y軸的數(shù)據(jù)為零,重力加速度為Z軸加速度,但通過試驗數(shù)據(jù)可知,由于加速度傳感器安裝位置不同,與重力加速度方向形成一定的傾角,加速度數(shù)據(jù)將偏離理想位置,從而導(dǎo)致采集數(shù)據(jù)與實際數(shù)據(jù)存在一定偏差[19-20]。還有一些噪聲信號,如羊只嬉戲、趴窩、驚嚇等引起羊只抖動以及檢測電路自身的噪聲等,為減小噪聲數(shù)據(jù)對牧食行為數(shù)據(jù)的干擾,這里引入合加速度A,以該數(shù)據(jù)反映羊只牧食行為的整體變化情況。合加速度的計算公式為
(1)
引入合加速度數(shù)據(jù)后,采食、咀嚼、反芻的加速度偏差明顯降低,因此合加速度的引入可一定程度消除傳感器安裝節(jié)點偏差對牧食行為數(shù)據(jù)的影響。
牧草種類對羊只牧食行為加速度信號有影響,主要表現(xiàn)在牧草的高度,但加速度信號的變化趨勢是一致的。羊只體型對牧食行為的影響主要是咀嚼信號的差異,體型較小的羊只咀嚼速度較快,大約為0.4 s/次,而中大型羊只的咀嚼速度大約為0.6 s/次,且咀嚼連續(xù)發(fā)生。采食行為信號時長為1~1.5 s,咀嚼行為和反芻行為信號發(fā)生時長均為0.5~0.8 s,X、Y軸上加速度有較明顯的波動變化,Z軸加速度幅值區(qū)間存在差異。為保證所截取的數(shù)據(jù)為完整的牧食動作,以1.5 s為時長截取牧食行為加速度數(shù)據(jù)。因三軸加速度傳感器的采樣頻率為10 Hz,故以15個采樣點數(shù)據(jù)為邊長進行數(shù)據(jù)加窗切割,組成ax、ay、az和合成加速度A的4×15的數(shù)據(jù)特征矩陣。
為實現(xiàn)放牧羊只牧食行為的分類識別,分別建立了反向傳播(Back-propagation, BP)神經(jīng)網(wǎng)絡(luò)模型、全連接深度神經(jīng)網(wǎng)絡(luò)模型和卷積神經(jīng)網(wǎng)絡(luò)模型,識別放牧羊只的采食、咀嚼、反芻、其他4種牧食行為。神經(jīng)網(wǎng)絡(luò)模型的數(shù)據(jù)集獲取方法為取大、中、小不同羊只牧食行為的平均加速度數(shù)據(jù),進行數(shù)據(jù)加窗分割處理,標記30 000條牧食行為樣本數(shù)據(jù)作為神經(jīng)網(wǎng)絡(luò)模型的數(shù)據(jù)集,其中采食數(shù)據(jù)7 500個、咀嚼數(shù)據(jù)7 800個、反芻數(shù)據(jù)6 200個、其他行為數(shù)據(jù)8 500個。將數(shù)據(jù)集分成訓(xùn)練集、測試集和驗證集3部分,各部分占比分別為70%、20%和10%,其中測試集樣本數(shù)據(jù)為:采食1 500個、咀嚼1 560個、反芻1 240個、其他行為1 700個。
BP神經(jīng)網(wǎng)絡(luò)模型對未進行訓(xùn)練的樣本有較強的預(yù)測能力,可用于羊只牧食行為的分類識別??紤]到網(wǎng)絡(luò)精度和識別效率的問題,采用4層網(wǎng)絡(luò)結(jié)構(gòu),即1層輸入層、2層隱含層和1層輸出層。
由于輸入的特征數(shù)據(jù)為ax、ay、az和合成加速度A的60維數(shù)據(jù),故輸入層的神經(jīng)元數(shù)為60;最終輸出層的神經(jīng)元數(shù)為4;隱含層采用經(jīng)驗公式確定神經(jīng)元數(shù)量范圍,再通過試湊法確定最佳神經(jīng)元數(shù),神經(jīng)元數(shù)經(jīng)驗公式為
(2)
式中l(wèi)——網(wǎng)絡(luò)隱含層節(jié)點數(shù)
m、n——輸入、輸出層節(jié)點數(shù)
a——調(diào)節(jié)常數(shù)
通過試湊法確定2層隱含層的最佳神經(jīng)元數(shù)為28和12。對該BP神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練直至模型收斂,對測試集的識別結(jié)果如表2所示。
表2 BP神經(jīng)網(wǎng)絡(luò)模型的牧食行為識別結(jié)果Tab.2 Recognition results of grazing behaviors based on BP neural network model
由表2可知,咀嚼行為被誤識別為反芻行為的概率為9.7%,而反芻行為被誤識別為咀嚼行為的概率為9.4%,說明該網(wǎng)絡(luò)模型對放牧羊群牧食行為的識別率不高。
采用全連接深度神經(jīng)網(wǎng)絡(luò)建立羊只牧食行為的分類識別模型,該模型由輸入層、隱含層、原始輸出層、Softmax層以及最終輸出層組成,全連接深度神經(jīng)網(wǎng)絡(luò)模型如圖4所示。
由于深度神經(jīng)網(wǎng)絡(luò)模型易出現(xiàn)網(wǎng)絡(luò)過擬合和梯度消失問題,建立羊只牧食行為識別模型時采用的改進方法為:①采用激活函數(shù)為ReLU函數(shù),該函數(shù)可以使部分輸入為負數(shù)的神經(jīng)元為0,使得網(wǎng)絡(luò)具有一定的稀疏性,減少參數(shù)間的相互依存關(guān)系,不但加快了網(wǎng)絡(luò)的訓(xùn)練,而且一定程度緩解了網(wǎng)絡(luò)的過擬合問題。②采用Dropout 丟棄算法,使得網(wǎng)絡(luò)訓(xùn)練在每次迭代時,都會隨機地刪除一部分節(jié)點,只訓(xùn)練剩下的節(jié)點,實現(xiàn)對神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的改動來避免過擬合。③網(wǎng)絡(luò)輸出增加Softmax層優(yōu)化分類結(jié)果,將神經(jīng)網(wǎng)絡(luò)的輸出變成概率分布[21-23]。
每條樣本輸入數(shù)據(jù)均由ax、ay、az和合成加速度A共60維組成,因此深度神經(jīng)網(wǎng)絡(luò)的輸入層神經(jīng)元數(shù)為60,隱含層設(shè)置5層,各層均添加ReLU激活函數(shù)和Dropout功能,其丟棄率均設(shè)置為0.5,各層的神經(jīng)元數(shù)分別為512、256、256、128、64,最終輸出層為4個神經(jīng)元。該網(wǎng)絡(luò)模型的其他網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)設(shè)置為:初始學(xué)習(xí)率為0.01,采用L2正則優(yōu)化,衰減率為0.99,訓(xùn)練批尺寸為50,迭代輪數(shù)為2 000。對該全連接深度神經(jīng)網(wǎng)絡(luò)模型進行訓(xùn)練得出最優(yōu)模型,對測試數(shù)據(jù)集的識別結(jié)果如表3所示。
表3 深度神經(jīng)網(wǎng)絡(luò)模型的牧食行為識別結(jié)果Tab.3 Recognition results of grazing behaviors based on deep neural network model
由表3可知,咀嚼被誤識別為反芻和反芻被誤識別為咀嚼的概率分別為5.5%和5.3%,說明全連接深度神經(jīng)網(wǎng)絡(luò)模型比BP神經(jīng)網(wǎng)絡(luò)模型的識別效果好,但仍沒有獲得較高的識別率。
卷積神經(jīng)網(wǎng)絡(luò)主要用于圖像的分類識別,可以將羊只牧食行為的加速度時域信號變換到頻域中,分析信號頻率特征隨時間變化的關(guān)系,通過時頻域聯(lián)合分析獲得頻譜圖,對頻譜圖建立卷積神經(jīng)網(wǎng)絡(luò)模型進行羊只牧食行為的分類識別[24-25]。圖5為羊只反芻行為的某個樣本時頻域譜圖,它由時域數(shù)據(jù)ax、ay、az和合成加速度A共計6 s的加速度信號變換而來。建立卷積神經(jīng)網(wǎng)絡(luò)模型時將圖5變換成灰度圖。
以卷積神經(jīng)網(wǎng)絡(luò)LeNet-5為參考,建立羊只牧食行為卷積網(wǎng)絡(luò)模型,如圖6所示,該模型具有1個輸入層、2個卷積層、2個池化層和2個全連接層。
輸入數(shù)據(jù)為樣本時頻語譜圖的灰度圖,色彩通道數(shù)為1,因此輸入數(shù)據(jù)的格式為11×11×1,卷積時采用全零填充,卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)參數(shù)設(shè)置如表4所示。第1個卷積層的卷積核設(shè)置為5×5,卷積核深度設(shè)置為32,第1個池化層的過濾器尺寸設(shè)置為3×3;第2個卷積層的卷積核尺寸設(shè)置為3×3,深度為64,第2個池化層的過濾器尺寸設(shè)置為2×2;2個全連接層神經(jīng)元數(shù)分別設(shè)置為512和4。
表4 卷積神經(jīng)網(wǎng)絡(luò)模型的參數(shù)設(shè)置Tab.4 Parameters of convolutional neural network model
對該卷積神經(jīng)網(wǎng)絡(luò)模型進行訓(xùn)練得出最優(yōu)模型,對測試數(shù)據(jù)集的識別結(jié)果如表5所示。由表5可知,卷積神經(jīng)網(wǎng)絡(luò)模型對測試集樣本的平均識別正確率為93.8%,對采食、咀嚼、反芻行為的正確識別率分別達到了94.7%、93.9%和94.2%,基本滿足放牧羊群牧食行為的識別要求,且網(wǎng)絡(luò)的適應(yīng)性和穩(wěn)定性較強。
表5 卷積神經(jīng)網(wǎng)絡(luò)模型的牧食行為識別結(jié)果Tab.5 Recognition results of grazing behaviors based on convolutional neural network model
羊只的牧食行為與其放牧草地環(huán)境有較強的相互作用關(guān)系。自然放牧條件下,羊只為了牧食要進行游走,因此結(jié)合羊只GPS地理位置數(shù)據(jù),通過分析羊只移動速度、采食區(qū)域等信息進而判斷植被分布及地理環(huán)境對羊只牧食行為的影響。該試驗?zāi)翀雒娣e約為58 hm2,放牧期間每天早上將羊群趕入牧場自由采食,傍晚再由人工趕回畜圈牧食,時間為10:00—18:00,放牧牧場內(nèi)有飲水設(shè)施。羊只某日的放牧軌跡如圖7所示,羊只平均每日行走距離為3.8 km,平均游走速度為3 km/h,平均奔跑速度為6 km/h。
由圖7可知,羊只在10:00—11:30活動范圍都集中在牧場南部靠近畜圈附近,11:30—17:30采食點逐漸向牧場北部偏移,但到17:30以后又向畜圈方向移動。這是因為羊只上午剛出圈時較為饑餓,選擇靠近畜圈附近采食;在采食一段時間后,羊只體力較為充沛,會選擇向遠處游走;而17:30后,羊只又返回畜圈附近。圖中紅色長方形區(qū)域的羊只活動較為集中,該區(qū)域為礦坑區(qū),較陰涼且牧草茂盛,羊只采食和休息時間長。利用卷積神經(jīng)網(wǎng)絡(luò)模型,對該區(qū)域截取一段26 min的羊只加速度信號進行識別及時長統(tǒng)計,可得到羊只采食、咀嚼和反芻3種牧食行為的時間,統(tǒng)計結(jié)果如表6所示。
表6 牧食行為時間統(tǒng)計Tab.6 Statistics on duration of grazing behaviors
通過羊只牧食行為發(fā)生的次數(shù)和時間,可以估測出羊只在該區(qū)域的采食量分布,為羊只放牧規(guī)劃和草畜平衡研究提供了理論依據(jù)。
采用三軸加速度傳感器采集放牧羊只牧食行為信號,分別設(shè)計BP神經(jīng)網(wǎng)絡(luò)模型、全連接深度神經(jīng)網(wǎng)絡(luò)模型和卷積神經(jīng)網(wǎng)絡(luò)模型實現(xiàn)放牧羊只采食、咀嚼和反芻3種牧食行為的分類識別,平均識別率分別為83.1%、89.4%和93.8%,其中卷積神經(jīng)網(wǎng)絡(luò)模型的識別度最高,且網(wǎng)絡(luò)的適應(yīng)性和穩(wěn)定性強,并可通過GPS監(jiān)測羊只的采食路徑。該研究可為牧場管理人員制定放牧制度、提高放牧水平提供理論依據(jù)。