• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于頭頸部輪廓擬合直線斜率特征的奶牛跛行檢測方法

      2018-08-21 06:51:08宋懷波何東健
      農(nóng)業(yè)工程學報 2018年15期
      關(guān)鍵詞:跛行斜率奶牛

      宋懷波,姜 波,吳 倩,李 通,何東健

      (1. 西北農(nóng)林科技大學 機械與電子工程學院,楊凌712100 2. 農(nóng)業(yè)農(nóng)村部農(nóng)業(yè)物聯(lián)網(wǎng)重點實驗室,楊凌 712100 3. 陜西省農(nóng)業(yè)信息感知與智能服務(wù)重點實驗室,楊凌 712100)

      0 引 言

      跛行是導(dǎo)致奶牛高淘汰率與低產(chǎn)奶率的重要原因,預(yù)防跛行的發(fā)生對于奶牛業(yè)的健康發(fā)展尤為重要。奶牛跛行疾病會導(dǎo)致牛奶產(chǎn)量和生殖的損失[1]。隨著奶牛養(yǎng)殖規(guī)模的不斷擴大,人工檢測奶牛跛行的難度也越來越大。因此,為了減少治療成本,開展奶牛跛行的早期檢測是目前最佳的解決方式,對于提升奶牛養(yǎng)殖業(yè)的現(xiàn)代化水平具有重要的研究意義。

      在奶牛跛行檢測研究方面,眾多學者進行了研究并取得了一批研究成果。針對奶牛跛行對其身體負重程度不一樣的現(xiàn)狀,Pastell等[2]提出了一種利用測量奶牛質(zhì)量分布來檢測奶牛跛行的方法,當2個閾值LWR (ratio of weight to legs, LWR)和NRS(numerical rating scores, NRS)分別大于3與3.5時可用于檢測奶牛跛行,該方法避免了環(huán)境因素對奶牛跛行檢測的影響,但該方法粗略地評估了奶牛質(zhì)量與奶牛跛行之間的關(guān)系,在奶牛質(zhì)量與奶牛跛行對應(yīng)關(guān)系之間會存在較大的誤差。

      為減少上述誤差對奶牛跛行檢測的影響,Chapinal等[3]提出了奶牛腿部質(zhì)量檢測與步態(tài)評估的方法來檢測奶牛是否跛行。上述方法均是以測量單個奶牛質(zhì)量或者測量奶牛蹄肢質(zhì)量為前提的奶牛跛行檢測方法,一般情況下,在測量過程中可能會引起被測奶牛的應(yīng)激反應(yīng),導(dǎo)致數(shù)據(jù)誤差增大。由于現(xiàn)代奶牛業(yè)的規(guī)模化養(yǎng)殖多為室外開放環(huán)境,奶牛數(shù)量較多,上述檢測方法可能會引起檢測成本的增加。在養(yǎng)殖場中,監(jiān)控攝像頭每天可捕獲大量的奶牛視頻數(shù)據(jù),Magee等[4]提出了重采樣冷凝與多流循環(huán)隱馬爾可夫模型相結(jié)合的奶牛跛行檢測方法,通過對奶牛目標跟蹤與時間建模,取得了較好的跟蹤結(jié)果,但該方法在環(huán)境魯棒性方面較弱,長時間檢測效果差。Zhao等[5]采用局部背景拼接的方法在復(fù)雜環(huán)境下建立了背景模型,分離、提取效果較好,但該方法對環(huán)境、視頻畫質(zhì)敏感,不利于推廣應(yīng)用。Poursaberi等[6]提出了利用測量奶牛后背曲率來檢測奶牛跛行的方法,檢測跛行的平均正確率達到了96.55%。

      重度跛行奶牛因其癥狀比較明顯,通過飼養(yǎng)員進行觀察即可發(fā)現(xiàn)。早期輕、中度跛行的檢測更為重要。但不難發(fā)現(xiàn),在奶牛養(yǎng)殖場規(guī)模較大的情況下,對于突發(fā)的重度跛行奶牛,受到奶牛數(shù)量的影響,可能難以及時發(fā)現(xiàn),導(dǎo)致預(yù)防與治療不及時,會引起養(yǎng)殖場不必要的經(jīng)濟損失。更重要的,為了解決奶牛早期輕、中度跛行的及時檢測,本研究中將樣本分為正常、輕度跛行與中重度跛行 3類,以期為現(xiàn)代大規(guī)模奶牛養(yǎng)殖提供跛行奶牛的在線實時檢測問題,尤其是為輕度跛行檢測提供一種可靠方案。

      筆者課題組研究發(fā)現(xiàn),當奶牛跛行時,奶牛頭部、頸部及背部連接處也有明顯的特征變化,故將其特征用于奶牛跛行檢測,并進行驗證。視頻分析技術(shù)成本低,省時省力,并有快速響應(yīng)的優(yōu)勢,同時避免了與奶牛直接接觸所帶來的一些問題。近來,視頻對象跟蹤[7-14]和數(shù)據(jù)分類[15-19]引起了越來越多研究學者的興趣。因此,利用視頻分析技術(shù)對目標區(qū)域或感興趣區(qū)域進行跟蹤并對其有效特征數(shù)據(jù)連續(xù)獲取,這對檢測奶牛跛行具有重要的意義。但目前來看還存在 3個問題:1) 奶牛連貫性運動參量獲取方式可靠性不足;2) 現(xiàn)有奶牛視頻處理方法尚未涉及奶牛連貫性運動參量與奶牛跛行之間的關(guān)系;3) 因輕度跛行奶牛特征不明顯,尚難以實現(xiàn)奶牛輕度跛行的檢測。本研究擬提出一種基于NBSM-LCCCT-DSKNN(normal background statistical modellocal circulation center compensation track-distilling data of KNN)的奶牛跛行檢測算法,通過對視頻中奶牛進行跟蹤并提取目標奶牛的頭部、頸部以及與頸連接的背部輪廓線擬合直線斜率數(shù)據(jù),提取出大量的斜率數(shù)據(jù)經(jīng)過數(shù)據(jù)清洗之后,將其放入KNN分類器中實現(xiàn)奶牛輕度跛行與中重度的跛行的檢測,以期為診斷與預(yù)測奶牛跛行提供一種新方法。

      1 材料與方法

      1.1 試驗視頻材料

      試驗視頻于2013年 7月至8月采集自陜西楊凌科元克隆股份有限公司的奶牛養(yǎng)殖場,試驗對象為處于泌乳中期的美國荷斯坦奶牛。本研究共獲取30頭奶牛的視頻片段。每頭奶牛得到12段視頻,共計360段視頻,每段視頻持續(xù)時長約為10 ~40 s,從中隨機挑取6段中重度跛行奶牛行走視頻,6段輕度跛行奶牛行走視頻,6段正常奶牛行走視頻(采集信息見表 1),本文將奶牛跛行檢測任務(wù)視為分類任務(wù),在分類任務(wù)中,類別不平衡會導(dǎo)致分類結(jié)果向樣本多的一類傾斜[20-24],為避免類別不平衡問題,本文采用樣本類別比例為 1∶1∶1。采集視頻為PAL(phase alteration line)制式并保存在攝像機本地存儲卡內(nèi),幀率/碼率為25 fps/2000 kbps,分辨率為704 ×576像素。

      視頻處理平臺處理器為 Inter Core i5-7200M,主頻為3.40 GHz,8 GB 內(nèi)存,500 GB 硬盤,算法開發(fā)平臺為MATLAB 2016b。

      奶牛視頻信息,包含飛鳥、工人、夜間飛蟲、不同天氣等干擾因素,進一步加劇了奶牛跛行檢測的難度。

      表1 奶牛視頻集包含的信息Table 1 Video information of cow video set

      1.2 奶牛跛行檢測方法

      本研究擬采用的技術(shù)路線如圖 1所示。算法主要包括3部分,第一部分為NBSM模型,主要用于將目標奶牛與背景分離,獲取目標奶牛像素區(qū)域;第二部分為LCCCT模型,主要用于獲取奶牛感興趣區(qū)域(region of interest, ROI),并進行局部像素點中心進行補償,獲得補償后的感興趣區(qū)域(compensation- region of interest,C-ROI)計算其質(zhì)心并進行跟蹤;第三部分用于獲得跟蹤區(qū)域奶牛身體上輪廓的擬合直線斜率數(shù)據(jù),進而訓練DSKNN分類器。

      1.2.1 NBSM模型

      在分析奶牛視頻中每幀圖像的像素分布特性時,發(fā)現(xiàn)在奶牛目標像素與背景像素大致滿足雙峰分布,如圖2所示是視頻中某一幀圖像及其對應(yīng)的灰度直方圖,在圖像的灰度值擬合曲線中有明顯區(qū)域峰值,故本研究采用正態(tài)分布的目標奶牛與背景檢測方法來描述像素分布的過程。

      奶牛視頻中每幀圖像的像素分布特性中奶牛目標與背景像素分布規(guī)律如圖3所示。幀圖像像素點按照式(1)映射在極坐標中獲得到圖 3a。本文將圖像幀中的內(nèi)容視為奶牛目標與背景,且背景像素一定比目標像素數(shù)目多,故在極坐標中幀圖像像素會呈現(xiàn)增-減-增-減的狀態(tài)。擬合曲線極徑總體變化狀態(tài)呈現(xiàn)增-減-增-減,表明幀圖像像素分為目標奶牛像素與背景像素2部分。

      式中x為灰度值,y為灰度值所對應(yīng)的像素數(shù),θ為極角,ρ為極徑。

      圖1 基于NBSM-LCCCT-DSKNN的奶牛跛行檢測方法流程圖Fig.1 Flowchart of lameness detection for dairy cows based on NBSM-LCCCT-DSKNN model

      圖2 幀圖像及其灰度直方圖Fig.2 Frame-image and its grayscale histogram

      圖3b是像素在羽狀圖的分布規(guī)律,折線表示灰度值所對應(yīng)的像素點數(shù)量,由于只將圖像內(nèi)容視為奶牛目標與背景 2部分,且背景在圖像中所占比例遠大于奶牛占圖像的比例,由圖3b中發(fā)現(xiàn)折線密集區(qū)域也由2個部分組成,折線密集區(qū)域和折線稀疏區(qū)域分別對應(yīng)目標奶牛像素與背景像素。

      將幀圖像目標奶牛像素與背景像素分布可近似為 2個正態(tài)分布的疊加,如式(2)、式(3),其中包括背景正態(tài)分布與目標奶牛正態(tài)分布2部分,并根據(jù)式(2)計算重率比。其中Pb是灰度直方圖中最大值與圖像中所有像素的比值。重率比是區(qū)分幀圖像像素分布當中的背景像素和目標奶牛像素的依據(jù),當?shù)谝粋€正態(tài)分布所對應(yīng)的重率比小于第二個正態(tài)分布所對應(yīng)的重率比且小于1,說明第二正態(tài)分布重率比越接近1,其越可能屬于背景像素點的分布。

      式中x為灰度圖像像素點;μi、σi分別為正態(tài)分布的均值和方差;λi為2個正態(tài)分布分別所占比重;∑xi為對應(yīng)正態(tài)分布的像素點數(shù)目;Xw為圖像中像素點總數(shù)。

      在奶牛發(fā)生跛行時,奶牛頭頸部區(qū)域會發(fā)生較大幅度的變化,因此,其頭頸部區(qū)域(前半部像素區(qū)域)的完好分割有利于后期跛行行為的檢測,而奶牛軀干及臀部區(qū)域(后半部像素區(qū)域)與之無關(guān)。圖 4為模型各階段處理的結(jié)果,可以發(fā)現(xiàn),由于奶牛頭頸部的運動幅度大于奶牛軀干及臀部區(qū)域的運動幅度,且NBSM模型對運動幅度大的區(qū)域敏感,在利用NBSM模型進行奶牛目標分離時,奶牛前部區(qū)域較為完整,因此可通過該特征將奶牛前半部像素區(qū)域提取出來。為了使奶牛身體前部像素區(qū)域更加完整,擬利用LCCCT模型進行處理。

      1.2.2 LCCCT模型

      局部循環(huán)中心補償跟蹤模型LCCCT用于補償通過正態(tài)分布背景統(tǒng)計模型分離得到的不完整的奶牛像素區(qū)域,并進行奶牛身體前部區(qū)域的跟蹤,該模型主要由局部循環(huán)中心補償算法、質(zhì)心跟蹤算法2部分構(gòu)成。

      基本形式:給定二維目標循環(huán)矩陣

      xm,iT與卷積窗口矩陣G進行卷積運算,卷積結(jié)果ym,iT為卷積中心所對應(yīng)的循環(huán)矩陣X中的數(shù)值進行補償。

      式中p,q代表像素點在圖像中的位置,xm,iT為二維矩陣,尺寸大小為3×3,卷積窗口G采用3×3的歸一化平均矩陣,Y=[ym,1T;ym,2T;··;ym,iT;··;ym,nT]為結(jié)果矩陣,λ為給定閾值,由于卷積矩陣G是一個二維矩陣,尺寸大小為3×3,且矩陣中每一個元素均為1/9,即進行均勻卷積,故λ取值為卷積結(jié)果的0.5倍,C為補償結(jié)果矩陣。

      圖3 幀圖像像素分布規(guī)律Fig. 3 Frame-image pixel distribution law

      循環(huán)矩陣進行上式(4)~(6)計算時,可將補償區(qū)域最大化,故而需要將所提取得到的奶牛身體前部像素區(qū)域矩陣進行循環(huán)矩陣化,如式(7)所示。

      式中P、Q是排列矩陣,T是目標奶牛身體前部像素區(qū)域矩陣。

      循環(huán)矩陣與卷積窗口矩陣卷積過程如圖 5所示,圖5a中卷積窗口矩陣G與循環(huán)矩陣X中子矩陣塊xm,iT進行卷積運算,得到y(tǒng)m,iT結(jié)果矩陣的子矩陣塊,在圖5b中,得到的 ym,iT進行閾值判別,若 ym,i(p,q) 大于等于給定閾值λ,則C(p,q)m,i=1;若ym,iT(p,q)小于λ,則C(p,q)m,i=0。上述過程可以達到像素區(qū)域補償?shù)哪康摹?/p>

      圖4 模型各階段處理的效果Fig.4 Effect of each stage of model

      對 NBSM 模型處理過的圖像按式(6)進行循環(huán)矩陣化,卷積窗口矩陣G與處理過后的循環(huán)矩陣進行滑動卷積,得到卷積之后的結(jié)果矩陣Y,即將所有像素進行增強處理,通過判別函數(shù)來判別當前圖像中的像素是否為孤立的像素區(qū)域,若是,則進行歸零處理,若否,則進行保留,最終得到補償結(jié)果矩陣C,即圖4c。從圖4c可以發(fā)現(xiàn),LCCC算法對目標奶牛區(qū)域保留了奶牛身體前部的形狀,補償了奶牛身體前部區(qū)域丟失或損失的像素區(qū)域,同時,由于在算法中加入了孤立像素區(qū)域的抑制策略,對于非完整的奶牛后部像素區(qū)域,可以進行較好地去除處理,在保證前部像素完整性的前提下起到了抑制后部像素區(qū)域的效果,為進行奶牛身體前部區(qū)域的跟蹤奠定了基礎(chǔ)。

      圖5 循環(huán)矩陣與卷積窗口矩陣卷積示意圖Fig.5 Cyclic matrix and convolution window matrix convolution

      將局部循環(huán)中心補償算法處理過的圖像視為新的圖像f(x,y),由于補償后的新圖像中只有奶牛前部像素區(qū)域一個目標,不受每次提取目標部分大小的影響,即可根據(jù)式(7)計算補償后的目標奶牛像素區(qū)域的質(zhì)心,根據(jù)質(zhì)心的變化進行奶牛身體前部跟蹤。

      式中mpq是圖像f(x,y)的p+q階矩;m10、m01為其1階矩、m00為其0階矩;iC、jC分別為圖像f(x,y)的質(zhì)心橫坐標和縱坐標。

      為了驗證跟蹤效果,利用表1所述視頻進行了測試,結(jié)果表明,視頻1-17均可以準確跟蹤,僅視頻18因奶牛運動幅度過小而導(dǎo)致跟蹤失敗的問題,表明跟蹤算法對普通運動幅度奶牛的跟蹤效果具有普遍意義。

      圖4d為在18段奶牛視頻中(除視頻序號為18的奶牛視頻)隨機選取一段奶牛視頻跟蹤試驗效果可以看出,跟蹤奶牛身體前部區(qū)域均能準確跟蹤其位置,為提取奶牛身體前部上輪廓線奠定了基礎(chǔ)。

      1.2.3 數(shù)據(jù)清洗

      數(shù)據(jù)清洗(data cleaning)是對數(shù)據(jù)進行重新審查和校驗的過程,用于刪除重復(fù)信息、糾正錯誤數(shù)據(jù)并提供數(shù)據(jù)一致性[25-28]。數(shù)據(jù)清洗按功能主要分為4類:1)解決不完整數(shù)據(jù)的方法;2)錯誤值的檢測及解決方法;3)重復(fù)記錄的檢測及消除方法;4)不一致性的檢測及解決方法。

      本文采取數(shù)據(jù)清洗方法是異常值檢測混合模型[29]。將對所有未清洗的數(shù)據(jù)集中的每一個數(shù)據(jù)計算其評價函數(shù)的值(本研究采用馬氏距離函數(shù)[30]),根據(jù)評價函數(shù)值來判斷當前數(shù)據(jù)是否為異常點值。具體過程為:1)初始化:在時刻t=0,令Gt包含所有對象,而Bt為空;令?(Gt, Bt)為好壞觀測點劃分的評價函數(shù)(馬氏距離);2)對屬于Gt的每個點 xt,將 xt從 Gt移動到 Bt,產(chǎn)生新的數(shù)據(jù)集合Gt+1和Bt+1,計算?的新的評價函數(shù)的值;3)計算差值:△=?(Gt+1, Bt+1)-F(Gt, Bt);4)若△<c,將觀測xt分類為異常,其中c是給定閾值。

      閾值c的取值采用的是3σ準則[31],經(jīng)過上述數(shù)據(jù)清洗算法,可將大部分異常點或強影響點剔除,為提高分類器的分類精度奠定基礎(chǔ)。

      1.2.4 線性斜率K最近鄰分類器模型

      對提取出來的目標奶牛身體前部像素區(qū)域,進行Sobel算子輪廓邊緣提取,并利用傅里葉描述子進行邊緣平滑[32],然后將奶牛身體前部像素區(qū)域中線以下設(shè)為0,該過程可以提取目標奶牛身體上部輪廓線,并進行線性擬合,得到擬合直線斜率。

      本文對身體上部輪廓線定義為:奶牛身體上部輪廓線是從奶牛頭部的鼻尖起始,超過頸部線結(jié)束。若提取的輪廓線屬于定義的區(qū)域范圍,則認為是有效的輪廓線,超出此范圍區(qū)域則認為提取的是異常或具有強影響的輪廓線。奶牛低頭、抬頭以及左右轉(zhuǎn)頭等動作會影響頭頸部擬合直線的斜率。但每一類奶牛的擬合直線斜率都存在不同的斜率范圍,故而對檢測結(jié)果沒有影響。

      如圖6為所示獲取輪廓擬合直線處理過程及效果。

      每一段視頻中都有大量的目標奶牛頭、頸及背部連接處的輪廓線的擬合直線斜率數(shù)據(jù),可將其作為分類特征值進行奶牛跛行的識別及檢測。

      對18段奶牛視頻進行處理,獲得頭部、頸部及背部連接處的擬合直線斜率數(shù)據(jù)集。試驗采用加噪法,增加樣本的多樣性,從而可以檢測算法對環(huán)境魯棒性的強弱。對于 3類(正常奶牛、輕度跛行奶牛、中重奶牛跛行)18個樣本數(shù)據(jù)集按Bootstrap抽樣法[33-37]隨機分3層抽取3次,將抽取到不重復(fù)的樣本作為訓練樣本,剩下樣本作為測試樣本,所得到的訓練樣本集約占總數(shù)據(jù)集的63.2%。

      本研究采用 K最近鄰分類器(K-nearest neighbor,KNN)進行數(shù)據(jù)分類[38]。KNN 算法的思路是:如果一個樣本在特征空間中的 K個最相似(即特征空間中最鄰近)的樣本中的大多數(shù)屬于某一個類別,則該樣本也屬于這個類別。

      該方法在定類決策上只依據(jù)最鄰近的一個或者幾個樣本類別來決定待分樣本所屬的類別。由于KNN方法主要靠周圍有限的鄰近樣本,而不是靠判別類域的方法來確定所屬類別的,因此對于類域的交叉或重疊較多的待分樣本集來說,KNN方法較其他方法更為適合。本研究在利用KNN算法時采用的距離度量方式是標準歐幾里得距離[39],無距離加權(quán)函數(shù),K值為3,即輕度跛行奶牛、中重度跛行奶牛、正常奶牛3類。

      圖6 獲取頭頸部輪廓擬合直線處理過程及效果Fig.6 Process and effect of fitting line of head and neck contour

      2 試驗與結(jié)果分析

      2.1 試驗設(shè)計

      為了驗證該方法的有效性,分別使用了SVM[40]、樸素貝葉斯(naive bayes, NB)[41]分類器以及KNN的分類器對奶牛頭部、頸部及背部連接處的斜率數(shù)據(jù)清洗前后進行效果對比試驗,本研究用10折交叉的方法在數(shù)據(jù)集上做分類測試。

      2.2 使用分類算法對奶牛跛行檢測的結(jié)果

      2.2.1 3種分類器性能結(jié)果分析

      表2為SVM、Naive Bayes及KNN在未清洗的測試數(shù)據(jù)集的試驗結(jié)果比較??梢钥闯?,SVM和Naive Bayes的平均值均達到了82.78%,但比 KNN的平均分類精確度81.67%高1.11個百分點。由于未清洗的數(shù)據(jù)集呈現(xiàn)復(fù)雜度高、特征值分布雜等特點,SVM和Naive Bayes這類統(tǒng)計性分類算法,比只將訓練數(shù)據(jù)與測試數(shù)據(jù)進行距離度量來實現(xiàn)分類的KNN算法更加合適在未清洗的數(shù)據(jù)集上進行分類。從結(jié)果上來看,在未清洗的數(shù)據(jù)集上,3種分類器的準確率均不高,但選取奶牛頭部、頸部及背部連接處特征能夠進行奶牛跛行的檢測。

      表2 SVM、Naive Bayes及KNN在數(shù)據(jù)清洗前后對測試數(shù)據(jù)集的分類正確率比較Table 2 Comparison of classification accuracy by SVM, Naive Bayes, and KNN algorithm on test data sets before and after data cleaning %

      3種算法在未清洗的數(shù)據(jù)集上的訓練所需時間及正確率比較如圖7所示。從圖7a可以看到,SVM和Naive Bayes訓練所需時間很接近,SVM花費的時間要比Naive Bayes略高,主要原因是SVM算法要對未清洗的數(shù)據(jù)集作分類超平面的統(tǒng)計,而KNN所用時間相對較短,主要原因是KNN不需要進行模型訓練而只需要進行距離度量的計算。從圖7b可以看到,在未清洗的數(shù)據(jù)集上,SVM和Naive Bayes的正確率略高于KNN;試驗結(jié)果說明使用SVM與Naive Bayes分類器在未清洗的數(shù)據(jù)集上將正常奶牛、輕度跛行奶牛、中重度跛行奶牛錯誤分類的可能性很小。

      2.2.2 數(shù)據(jù)清洗后3種分類器性能結(jié)果分析

      如圖 8所示為正常、輕度跛行、中重跛行奶牛斜率未清洗的數(shù)據(jù)集箱圖,由于奶牛行進方向不一致,得到的斜率有正有負。當奶牛由左往右行進,得到的斜率數(shù)據(jù)為負,反之為正。為了數(shù)據(jù)保持一致性及規(guī)律性,將為負的斜率數(shù)據(jù)按式(8)進行轉(zhuǎn)換成正斜率數(shù)據(jù)。在圖8中,每一個箱體代表一段視頻中的斜率數(shù)據(jù)集,箱體中的線段為該段視頻里斜率數(shù)據(jù)的中位數(shù)(中位線),奶牛低頭、抬頭以及轉(zhuǎn)頭等動作會影響頭頸部擬合直線的斜率,在奶牛視頻中若突然出現(xiàn)上述動作,則斜率會發(fā)生突變,即與其他幀圖像所獲得的斜率差異較大,這些突變的斜率視為異常點,即箱體外的點標記代表異常點。其中,第 1、2、5組中重度跛行奶牛、輕度跛行奶牛以及正常奶牛的箱圖雖然有交疊區(qū)域,但中重度跛行奶牛的箱體中位線均在其箱體圖的 50%以下,輕度跛行奶牛的中位線基本保持在同一水平線,正常奶牛的中位線均處于上述2者中位線之上,具有明顯的區(qū)分度。第4組視頻箱圖里,中重度跛行奶牛箱圖分布發(fā)生異常,是由于在該段奶牛視頻里的奶牛跛行程度嚴重且發(fā)生了多次的低頭、抬頭以及轉(zhuǎn)頭等動作,即異常點增多,常規(guī)斜率數(shù)據(jù)點減少,但在第4組視頻中箱圖仍然可以發(fā)現(xiàn),3類奶牛箱圖中位線區(qū)分明顯,不影響奶牛跛行的檢測結(jié)果。發(fā)現(xiàn)正常、輕度跛行、中重跛行奶牛斜率未清洗的數(shù)據(jù)集中均存在異常點,這些異常點會影響分類器的分類準確率。將異常點剔除,即將奶牛抬頭、低頭等行為的干擾影響消除。

      式中xi為負的斜率數(shù)據(jù), xi*為新的正斜率數(shù)據(jù)

      圖7 未清洗的數(shù)據(jù)集上訓練所需時間及正確率比較Fig.7 Result of comparison for training time and accuracy on uncleaned data sets

      圖8 正常、輕度跛行、中重跛行奶牛未清洗的斜率數(shù)據(jù)集箱圖Fig.8 Boxplot of uncleaned slope data set for normal, mild claudication, moderate-to-heavy lame dairy cows

      針對清洗之后的新數(shù)據(jù),進行SVM、Naive Bayes以及KNN分類算法的試驗,試驗結(jié)果見表2。

      雖然SVM和 KNN的平均值分別達到了91.11%和93.89%,但KNN的平均分類精確度高出SVM分類精確度2.78個百分點,而Naive Bayes的分類精確度,相比未清洗的數(shù)據(jù)上進行分類精度雖有增長,但在此次試驗結(jié)果中是分類精度最低的分類器。由于新數(shù)據(jù)集具有較少的強影響點或者沒有異常點,所以KNN這類只進行距離度量來實現(xiàn)分類的算法要優(yōu)于SVM和Naive Bayes這類統(tǒng)計性分類算法,在新數(shù)據(jù)集上KNN算法更加合適進行分類。但從分類結(jié)果上來看,在清洗之后的新數(shù)據(jù)集上,3種分類器中的SVM與KNN的準確率均較高。

      3種算法在清洗之后的數(shù)據(jù)集上的訓練所需時間及準確率比較如圖9所示。從圖9a可以看到,SVM訓練所需時間很長,而Naive Bayes訓練所需時間次之從圖9b可以看到,在新的數(shù)據(jù)集上,KNN的錯誤分辨率明顯高于SVM和Naive Bayes,KNN的平均正確率接近94%。試驗結(jié)果說明使用KNN分類器將在未清洗的數(shù)據(jù)集上將正常奶牛、輕度跛行奶牛、中重度跛行奶牛錯誤分類的可能性很小,且因為時間是以秒計算,實際應(yīng)用中在大量數(shù)據(jù)的情況下KNN訓練所需時間的優(yōu)勢非常明顯。

      圖9 在數(shù)據(jù)清洗后數(shù)據(jù)集上訓練所需時間及正確率比較Fig.9 Result of comparison for training time and accuracy on cleaned data sets

      2.3 斜率異常點值或強影響點對分類結(jié)果的影響

      本文提出的算法通過奶牛頭部、頸部及背部連接處的擬合直線斜率能夠檢測到奶牛跛行的種類,包括正常奶牛、輕度跛行奶牛、中重度奶牛 3類,在不同環(huán)境影響下通過本文提出的算法進行了環(huán)境魯棒性的試驗,結(jié)果如圖10所示。

      數(shù)據(jù)清洗將未清洗的斜率數(shù)據(jù)中的異常突變值進行了剔除,通過減少異常突變值的方式,得到的奶牛跛行類型概率平均提高了10.00個百分點,可以發(fā)現(xiàn)該算法在晴天、陰天以及白天與夜間均能得到正確結(jié)果,表明該算法具有較好的環(huán)境魯棒性。

      獲得頭部、頸部及背部連接處的擬合直線斜率數(shù)據(jù)的未清洗的數(shù)據(jù)集中,存在強影響點值與異常點值,這兩種數(shù)據(jù)會影響分類器的分類準確度。產(chǎn)生這兩類點是由于局部循環(huán)中心補償算法的局限性,算法由于數(shù)學關(guān)系決定了其只適用于各像素位置間距較小的情況,而出現(xiàn)這類情況根本原因是奶牛整體運動幅度過小導(dǎo)致的。如圖 11a~圖 11c所示,這類像素位置間距較大的情況LCCCT算法效果不明顯。

      由于這一原因,在奶牛跛行跟蹤的過程中,容易將跟蹤區(qū)域平移,將目標區(qū)域錯過。圖11a所示,跟蹤框偏離了目標跟蹤區(qū)域,圖11b~圖11e提取了偏離目標跟蹤區(qū)域的像素區(qū)域,并進行了上輪廓線的提取,導(dǎo)致圖11f中擬合直線誤差非常明顯,無法表達此時可奶牛頭部、頸部及背部連接處真實斜率數(shù)據(jù),即所得斜率數(shù)據(jù)也是異常點數(shù)值或強影響點數(shù)值。這類情況所產(chǎn)生的數(shù)據(jù)會導(dǎo)致分類器的分類準確率降低。

      圖10 數(shù)據(jù)清洗前后算法環(huán)境魯棒性試驗結(jié)果Fig.10 Results of algorithm environment robustness test before and after data cleaning

      圖11 產(chǎn)生奶牛斜率異常點或強影響點的情況Fig.11 Produce a point of abnormal cows or strong impact point of the situation

      3 結(jié) 論

      為了解決現(xiàn)有人工跛行檢測存在的不夠及時,難以發(fā)現(xiàn)問題,本研究基于視頻分析技術(shù),利用NBSM-LCCCT-DSKNN模型實現(xiàn)了奶牛跛行檢測,所取得的主要結(jié)論如下:

      1) 利用文中算法提取出未清洗的頭頸部斜率數(shù)據(jù),在SVM、Naive Bayes以及KNN算法進行跛行的分類檢測對比可以發(fā)現(xiàn)中,SVM與Naive Bayes分類算法準確率相同且最高均為82.78%,表明選取奶牛頭部、頸部及背部連接處特征檢測奶牛跛行是有效的、可行的。

      2)在清洗后數(shù)據(jù)集上進行跛行的分類檢測,在SVM、Naive Bayes以及KNN算法進行跛行的分類檢測對比中,SVM 與 Naive Bayes分類算法準確率分別為 91.11%、86.11%,KNN算法分類準確檢測率達到了94.44%,表明在數(shù)據(jù)清洗的基礎(chǔ)上進行奶牛跛行分類有助于提升其分類精度。KNN算法訓練時間明顯小于其他二者算法的訓練時間,其更適合進行奶牛跛行檢測。

      3)由于在局部循環(huán)中心補償算法中其循環(huán)矩陣的局限性,進行跛行的分類檢測過程時,數(shù)據(jù)集中的異常點與強影響點均會降低奶牛跛行分類準確檢測率;本文算法能夠?qū)φD膛?、輕度跛行奶牛、中重度跛行奶牛進行準確的跛行判斷,但未能對運動幅度過小、存在其他異常行為的奶牛做出正確的分類檢測,尚需進一步深入研究。

      猜你喜歡
      跛行斜率奶牛
      乍暖還寒時奶牛注意防凍傷
      夏季奶牛如何預(yù)防熱應(yīng)激
      物理圖像斜率的變化探討
      物理之友(2020年12期)2020-07-16 05:39:16
      奶牛吃草
      求斜率型分式的取值范圍
      間歇性跛行常見兩種病
      基于子孔徑斜率離散采樣的波前重構(gòu)
      MMC-MTDC輸電系統(tǒng)新型直流電壓斜率控制策略
      電測與儀表(2016年6期)2016-04-11 12:05:54
      高壓氧治療各期糖尿病足間歇性跛行的療效觀察
      黑龍江東部某牛場泌乳牛跛行調(diào)查及其與產(chǎn)奶量、胎次和干物質(zhì)采食量的關(guān)系研究
      慈溪市| 启东市| 周宁县| 方山县| 溧阳市| 新田县| 监利县| 化州市| 顺义区| 洞口县| 南华县| 天峨县| 乌兰县| 德昌县| 增城市| 九龙坡区| 拉萨市| 务川| 卓尼县| 古浪县| 墨脱县| 永寿县| 德昌县| 即墨市| 商水县| 建平县| 乐亭县| 莎车县| 黄陵县| 福贡县| 如皋市| 荥经县| 遂川县| 娄烦县| 犍为县| 九江县| 贺兰县| 厦门市| 金塔县| 湘乡市| 峨山|