劉艷秋 宣傳忠 武 佩 張麗娜 張永安 李美安
(1.內(nèi)蒙古農(nóng)業(yè)大學(xué) 機(jī)電工程學(xué)院,呼和浩特 010018;2.內(nèi)蒙古農(nóng)業(yè)大學(xué) 計(jì)算機(jī)與信息工程學(xué)院,呼和浩特 010018;3.內(nèi)蒙古師范大學(xué) 物理與電子信息學(xué)院,呼和浩特 010022)
養(yǎng)羊業(yè)對內(nèi)蒙古自治區(qū)的經(jīng)濟(jì)發(fā)展起到了極大的促進(jìn)作用[1]。近年來,羊的養(yǎng)殖方式由放養(yǎng)轉(zhuǎn)變?yōu)樯犸暼︷B(yǎng),飼養(yǎng)方式的轉(zhuǎn)變對懷孕母羊的生長及生產(chǎn)帶來了不良影響[2-3]:第一,圈舍內(nèi)外環(huán)境和飼養(yǎng)條件差[4],導(dǎo)致懷孕母羊感染疾病幾率增加,進(jìn)而出現(xiàn)先兆流產(chǎn)、難產(chǎn)、死胎等現(xiàn)象;第二,羊只的密集程度增加,使其活動范圍受限,運(yùn)動量不足,導(dǎo)致母羊的體能下降,出現(xiàn)產(chǎn)前癱瘓[5];第三,單調(diào)的環(huán)境會抑制母羊的天性,使其表現(xiàn)出啃食異物、相互撕咬等異常行為[6-7]。有研究指出母羊在臨近分娩時(shí)一般表現(xiàn)為來回的走動、站立與趴臥行為變換頻繁、回顧腹部、用力刨地等行為[8-10],這些運(yùn)動行為在一定程度上能夠反應(yīng)母羊的生長及生產(chǎn)狀況[11]。因此,對孕期母羊運(yùn)動行為進(jìn)行研究,可以對其健康狀況進(jìn)行實(shí)時(shí)評估,進(jìn)而保障母羊的生產(chǎn)力和繁殖效率。
傳統(tǒng)的家畜行為識別大都采用人工觀測方法[12],該方法雖操作簡單易于實(shí)現(xiàn),但工作強(qiáng)度大,要求一定的專業(yè)知識,且主觀性強(qiáng)。隨著畜牧養(yǎng)殖智能化技術(shù)的不斷更新,基于感知方式的家畜行為監(jiān)測技術(shù)成為研究的熱點(diǎn)。國內(nèi)已有研究采用K-means算法、支持向量機(jī)、結(jié)構(gòu)相似子序列等多種算法對奶牛[13-15]、分娩母豬[16-17]、仔豬[18]以及山羊[19-20]的典型運(yùn)動行為進(jìn)行分類識別,來對其健康狀態(tài)進(jìn)行評估,算法的識別率也較高。國外已有研究以三軸加速度傳感器為核心,設(shè)計(jì)了針對母牛[21-22]、母豬[23]的運(yùn)動行為、放牧綿羊[24]的運(yùn)動及采食行為信息無線采集裝置,來獲取家畜的行為信息,并采用多算法進(jìn)行行為識別,能夠準(zhǔn)確地獲取母牛的分娩時(shí)間、母豬的健康狀況及羊只生長狀態(tài),以此對家畜的福利化養(yǎng)殖進(jìn)行評價(jià)。目前國內(nèi)外對家畜運(yùn)動行為識別已有研究,但是對懷孕母羊的產(chǎn)前運(yùn)動行為識別研究還處于初級階段,而且與牛和豬的運(yùn)動行為特征相比,羊的運(yùn)動行為發(fā)生的較快且變換頻繁?;诖?,本研究擬采用K-means聚類算法與BP神經(jīng)網(wǎng)絡(luò)算法依次對母羊產(chǎn)前典型行為進(jìn)行分類識別,以期為母羊的智能化、福利化養(yǎng)殖提供技術(shù)支持。
試驗(yàn)于2015-10-14—11-03在內(nèi)蒙古農(nóng)業(yè)大學(xué)海流圖科技園區(qū)肉羊養(yǎng)殖基地進(jìn)行,試驗(yàn)對象為體況基本一致,同期配種,預(yù)產(chǎn)期相近,健康無病、月齡為10個(gè)月左右的本地純種小尾寒羊初產(chǎn)母羊。在分娩前的第15天將試驗(yàn)對象轉(zhuǎn)入育羔欄內(nèi),并佩戴運(yùn)動行為監(jiān)測裝置獲取數(shù)據(jù)。試驗(yàn)過程中母羊可以自由飲水,每天07:30—08:30和17:00—18:00分別喂1次飼料。本試驗(yàn)利用視頻監(jiān)測設(shè)備同步記錄母羊行為,結(jié)合行為發(fā)生的時(shí)間及視頻對算法識別效果進(jìn)行驗(yàn)證。
1.2.1數(shù)據(jù)采集
試驗(yàn)選取MPU6050三軸加速度傳感器進(jìn)行數(shù)據(jù)采集,其特點(diǎn)為體積小(15.24 mm×15.24 mm×2 mm)、精度高(0.01 g)。試驗(yàn)數(shù)據(jù)通過無線模塊USR-C215傳輸至PC機(jī)。經(jīng)過無線傳輸?shù)募铀俣葦?shù)據(jù)內(nèi)容見表1。
表1 三軸加速度數(shù)據(jù)內(nèi)容
所設(shè)計(jì)的監(jiān)測裝置實(shí)物及母羊佩戴裝置方式見圖1。本研究采用LabVIEW軟件實(shí)現(xiàn)對數(shù)據(jù)的獲取、顯示及存儲。
監(jiān)測裝置將傳感器模塊、無線模塊及電源模塊封裝于防水盒內(nèi),并通過背帶佩戴于母羊背部。所設(shè)計(jì)背帶可以根據(jù)母羊體型大小調(diào)整松緊程度。當(dāng)試驗(yàn)羊只佩戴監(jiān)測裝置并處于靜止站立狀態(tài)時(shí),三軸加速度傳感器的指向?yàn)椋篨軸正向指向母羊的頭部方向,Y軸正向指向母羊身體的右側(cè)方向,Z軸正向?yàn)榇怪钡孛嫦蛳?圖1(b))。監(jiān)測裝置采用容量為4 800 mA的可充電鋰電池,標(biāo)準(zhǔn)電壓3.7 V。對采集的加速度信號做了頻譜分析,獲取加速度數(shù)據(jù)的頻率特性約為10 Hz。根據(jù)奈奎斯特定理確定監(jiān)測裝置的采樣頻率為20 Hz。
1.電源;2.天線;3.加速度傳感器;4.無線模塊
1.2.2數(shù)據(jù)預(yù)處理
通常對采集到的加速度數(shù)據(jù)要進(jìn)行預(yù)處理操作[25],本研究對數(shù)據(jù)進(jìn)行去噪、加窗和校正處理。當(dāng)傳感器處于水平靜止?fàn)顟B(tài)時(shí),X、Y軸的加速度值為0,Z軸的加速度值為重力加速度g。但實(shí)際監(jiān)測時(shí)會因?yàn)檠蛑坏倪\(yùn)動而使監(jiān)測裝置位置發(fā)生偏移,使3個(gè)軸向上的值發(fā)生偏差,故需對數(shù)據(jù)進(jìn)行校正。設(shè)傳感器豎直方向的軸與g的方向夾角為θ,g在傳感器XOY水平面上的投影與羊只前進(jìn)方向的夾角為α(選取重力加速度g=9.8 m/s2),根據(jù)空間幾何知識推算α、θ的三角函數(shù)值。設(shè)靜止時(shí)加速度傳感器3個(gè)軸向的測量值為a1x,a1y,a1z,則有:
用ax,ay,az表示加速度傳感器測得的3個(gè)軸向上的值,則可由式(1)~(3)計(jì)算得到校正后的Ax、Ay、Az:
Ax=axsinθsinα-aysinθcosα+aycosθsinα
(1)
Ay=axsinθcosα+aysinθsinα-aycosθcosα
(2)
Az=azsinθ-axcosθ+aycosθ
(3)
校正前、后的加速度數(shù)據(jù)見圖2,校正后的數(shù)據(jù)接近標(biāo)準(zhǔn)狀態(tài)下的值。
圖2 校正前(a)和校正后(b)加速度數(shù)據(jù)的變化
對校正后的數(shù)據(jù)采用小波閾值去噪,以濾除在采集過程中監(jiān)測裝置及母羊自身產(chǎn)生的噪聲。不同行為其周期不同,本研究通過確定站立、行走、刨地3種行為周期的最大公倍數(shù),進(jìn)而確定采用時(shí)長為3.2 s的矩形窗對原始加速度信號進(jìn)行分割。由于信號的采樣頻率為20 Hz,故所加窗的長度為64個(gè)采樣點(diǎn),且相鄰的窗重疊半個(gè)窗長。加窗后的數(shù)據(jù)效果見圖3。
圖3 加速度信號加窗處理效果
對母羊產(chǎn)前運(yùn)動行為包括行走、站立、趴臥以及刨地進(jìn)行識別。各行為的定義與描述[26]見表2。
表2 母羊不同運(yùn)動行為定義與描述
母羊的站立和趴臥屬于靜態(tài)行為,且四蹄著地,具有類似模式,使得行為識別率較低。針對此問題,本研究充分利用K-means聚類算法對數(shù)據(jù)采樣率及數(shù)據(jù)誤差的不敏感性,將母羊的趴臥行為與其他行為準(zhǔn)確的區(qū)分出來,在此基礎(chǔ)上采用神經(jīng)網(wǎng)絡(luò)算法對站立、行走及刨地3種行為進(jìn)一步的識別,識別流程見圖4。
圖4 母羊產(chǎn)前運(yùn)動行為識別流程
本研究利用MATLAB軟件編寫K-means聚類算法對母羊產(chǎn)前4種運(yùn)動行為進(jìn)行識別。
通過母羊運(yùn)動行為的定義及描述,結(jié)合試驗(yàn)采集的同步視頻,確定某一時(shí)刻母羊發(fā)生的行為類別,并與K-means聚類算法的聚類結(jié)果進(jìn)行比對。
對4種行為進(jìn)行聚類,故將輸入?yún)?shù)設(shè)置為4;輸入的數(shù)據(jù)為單只母羊20 min內(nèi)X、Y、Z3個(gè)軸向的連續(xù)的加速度值,共計(jì)24 000個(gè)數(shù)據(jù)。隨機(jī)選取初始聚類中心,聚類結(jié)果見圖5。
圖5 K-means算法聚類前(a)和聚類后(b)加速度數(shù)據(jù)
2.2.1特征參數(shù)提取
1)特征提取。由于加速度傳感器所采集的原始數(shù)據(jù)是一串連續(xù)的、波動的值,表面上并不能體現(xiàn)出母羊的行為,故需要進(jìn)行特征提取,建立數(shù)據(jù)與行為之間的關(guān)系。目前在行為識別中,所提取的特征均為時(shí)域、頻域和時(shí)頻域特征[27-28]。其中時(shí)域中的方差可體現(xiàn)數(shù)據(jù)的波動程度,可用來對母羊的靜態(tài)、動態(tài)行為進(jìn)行區(qū)分。頻率特征相對穩(wěn)定,數(shù)據(jù)不受外界因素的影響。頻率能量描述的是一段時(shí)間內(nèi)的能量大小,在相同時(shí)間內(nèi)不同行為的能量不同,故可以用頻率能量區(qū)分母羊的行走和刨地兩種動態(tài)行為。本研究提取X、Y、Z3個(gè)軸向加速度數(shù)據(jù)的方差、主峰頻率的均值、頻率能量的前5個(gè)值,共計(jì)19個(gè)特征值。試驗(yàn)選取500個(gè)不同行為樣本數(shù)據(jù),計(jì)算其特征值的平均值,結(jié)果見表3。結(jié)果顯示不同行為其特征值差異較大,表明所選特征可以很好地描述母羊不同行為。
表3 母羊產(chǎn)前不同運(yùn)動行為各參數(shù)特征值
2)特征降維。為提高行為識別的正確率,通常提取多維特征,然而較高維度的特征會降低識別的效率,也會出現(xiàn)“過學(xué)習(xí)”或“過訓(xùn)練”的現(xiàn)象。針對此現(xiàn)象,一般采用特征降維,主成分分析方法(Principal Component Analysis)是最常用的降維方法,即用較少的新特征取代原來的特征,而這些較少的新特征盡可能多地保留原來特征所反映的信息[29]。本研究在MATLAB軟件平臺實(shí)現(xiàn)PCA降維,各特征貢獻(xiàn)率結(jié)果見圖6。試驗(yàn)選取累積貢獻(xiàn)率達(dá)到95%的6個(gè)主成分作為新的特征集。
圖6 PCA各主成分貢獻(xiàn)率和累積貢獻(xiàn)率
2.2.2BP算法識別過程
1)參數(shù)選擇。經(jīng)過試驗(yàn)確定最優(yōu)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)為3層,即輸入層、一層隱含層及輸出層。BP神經(jīng)網(wǎng)絡(luò)的輸入為降維后的6維特征向量,所以輸入層神經(jīng)元為6個(gè)。由于要識別行走、站立、刨地及其他共4種行為,所以輸出層神經(jīng)元為4個(gè)。參考式(4)設(shè)置隱含層神經(jīng)元的個(gè)數(shù)y。
(4)
式中:m、n分別為輸入層、輸出層神經(jīng)元個(gè)數(shù)。a為[1,10]之間的一個(gè)常數(shù)。在式(4)估算的基礎(chǔ)上,根據(jù)網(wǎng)絡(luò)學(xué)習(xí)的結(jié)果對隱含層神經(jīng)元個(gè)數(shù)再做調(diào)整,最終確定隱含層神經(jīng)元個(gè)數(shù)為5[30]。
2)BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練。試驗(yàn)輸入樣本為5 720例,包括行走行為908例、站立行為4 306例、刨地行為303例,其他行為203例。選取每種運(yùn)動行為數(shù)據(jù)70%的樣本訓(xùn)練神經(jīng)網(wǎng)絡(luò),15%用于模型的驗(yàn)證,剩余15%用于對模型的測試。
3)識別系統(tǒng)設(shè)計(jì)。本研究設(shè)計(jì)了基于Matlab平臺的母羊產(chǎn)前運(yùn)動行為識別系統(tǒng)。該系統(tǒng)包括對采集的三軸加速度數(shù)據(jù)的獲取、去噪、加窗分段、特征提取以及行為的識別結(jié)果。在所設(shè)計(jì)的系統(tǒng)內(nèi)也能夠調(diào)取并顯示相應(yīng)時(shí)間段的視頻,以此驗(yàn)證BP神經(jīng)網(wǎng)絡(luò)的識別效果。
試驗(yàn)選取母羊產(chǎn)前站立行為4 308例、行走行為908例、趴臥行為8 218例、刨地行為303例,由K-means算法進(jìn)行聚類,結(jié)果見表4:K-means聚類算法對母羊的趴臥行為識別率最高,為99.2%,但對于其他3種行為的識別率均只有35%左右。分析原因可能為行走、刨地與站立行為具有相似的行為模式,彼此之間容易混淆,所以K-means聚類算法對這3種行為的識別率較低?;诖耍岢鲈贙-means聚類算法的聚類結(jié)果基礎(chǔ)之上,采用BP神經(jīng)網(wǎng)絡(luò)對母羊的站立、行走及刨地行為進(jìn)一步識別。
在Matlab軟件平臺上對母羊產(chǎn)前運(yùn)動行為進(jìn)行識別。加速度數(shù)據(jù)的特征采用降維后的6維參數(shù)。選取站立行為133例、行走行為27例、刨地行為10例、其他行為18例輸入到神經(jīng)網(wǎng)絡(luò),識別結(jié)果見表5??梢?,算法對母羊產(chǎn)前站立行為的識別率為85.7%;行走行為的識別率較高,達(dá)到了88.9%;由于刨地行為發(fā)生的時(shí)間較短,且與行走行為的特征較接近,所以識別率偏低,為80.0%;對母羊發(fā)生的其他運(yùn)動行為,如蹭欄桿、用腳撓耳朵等行為識別率較低為61.1%,究其原因?yàn)槟秆蛟诎l(fā)生該類行為時(shí)仍然處于站立狀態(tài),同時(shí)該類行為一般發(fā)生的時(shí)間非常短,所以算法對其他運(yùn)動行為識別效果不是特別理想。
表4 K-means對母羊產(chǎn)前不同運(yùn)動行為識別結(jié)果
表5 神經(jīng)網(wǎng)絡(luò)對母羊產(chǎn)前不同運(yùn)動行為識別結(jié)果
對特征值進(jìn)行PCA降維前后算法的識別效果進(jìn)行了對比(表6),降維前模型對4種行為的平均識別率為69.0%,降維后的識別效果有明顯的改善,平均識別率達(dá)到了78.9%,提高了9.9%。說明特征維度操作既可以降低計(jì)算的復(fù)雜度,又可以提高行為的識別效果。
表6 特征降維前后不同運(yùn)動行為識別率
目前,國內(nèi)僅有郭冬冬[19]對羊只運(yùn)動行為分類識別進(jìn)行了研究,所識別的行為,躺臥、站立、采食均為偏靜態(tài)行為,而對動態(tài)行為如行走和刨地未能識別。沈明霞等[16-18]及李頎[31]分別采用K-means聚類及支持向量機(jī)算法對豬的運(yùn)動行為,躺臥、站立、進(jìn)食進(jìn)行識別,識別率達(dá)到87%以上,識別率較高,但是該研究在識別時(shí)均將慢走與站立視為同一類行為,對母豬的動態(tài)進(jìn)行未能進(jìn)行詳細(xì)的分類,對家畜運(yùn)動行為識別的精細(xì)度較低。因此,采用單一算法對母羊產(chǎn)前站立和趴臥行為識別時(shí)精度較低,且母羊在分娩前發(fā)生趴臥行為時(shí)會因即將臨產(chǎn)而出現(xiàn)頭部不斷向上延伸的現(xiàn)象,此時(shí)母羊的趴臥行為數(shù)據(jù)會出現(xiàn)波動,即表現(xiàn)出與非妊娠狀態(tài)不同的趴臥行為。本研究對母羊產(chǎn)前運(yùn)動行為識別時(shí)首先采用K-means聚類算法將趴臥行為識別出來,在此基礎(chǔ)上利用BP神經(jīng)網(wǎng)絡(luò)對其他運(yùn)動行為進(jìn)行識別,提高了算法的精度。
本研究設(shè)計(jì)了以三軸加速度傳感器為核心的可穿戴式母羊產(chǎn)前運(yùn)動行為監(jiān)測裝置,對母羊產(chǎn)前運(yùn)動行為包括行走、站立、趴臥、刨地的加速度數(shù)據(jù)進(jìn)行采集。對所采集數(shù)據(jù)進(jìn)行了校正、濾波及加窗分段預(yù)處理操作,并對預(yù)處理后的數(shù)據(jù)進(jìn)行特征提取,通過主成分分析得到了降維后的6維特征參數(shù)。采用K-means聚類與BP神經(jīng)網(wǎng)絡(luò)算法相結(jié)合的方式對母羊產(chǎn)前運(yùn)動行為進(jìn)行識別。經(jīng)驗(yàn)證對母羊產(chǎn)前站立、行走、趴臥、刨地4種行為平均識別率達(dá)到88.5%;經(jīng)過PCA降維后的識別率與降維之前相比提高了9.9%。
中國農(nóng)業(yè)大學(xué)學(xué)報(bào)2021年3期