国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于MSRCP與改進YOLO v4的躺臥奶牛個體識別方法

2023-03-07 07:20司永勝肖堅星王克儉
農業(yè)機械學報 2023年1期
關鍵詞:圖像增強花紋特征提取

司永勝 肖堅星 劉 剛 王克儉

(1.河北農業(yè)大學信息科學與技術學院, 保定 071001; 2.河北省農業(yè)大數據重點實驗室, 保定 071001;3.中國農業(yè)大學農業(yè)農村部農業(yè)信息獲取技術重點實驗室, 北京 100083)

0 引言

奶牛的躺臥率能反映出奶牛的舒適度和健康情況[1]。躺臥奶牛的個體識別是自動監(jiān)測奶牛躺臥率的基礎。有學者利用機器視覺技術識別奶牛的躺臥行為[2-3]。但對躺臥狀態(tài)下的奶牛個體識別未見報道。躺臥奶牛的個體識別研究對于提高奶牛福利與養(yǎng)殖效率具有重要意義[4-5]。

傳統的奶牛個體識別靠人工識別安裝在牛耳部的耳標,人工成本較高,效率較低[6]?;赗FID(Radio frequency identification)技術識別奶牛個體得到了廣泛的應用,但是該方式需佩戴電子識別裝置,易丟失,且易引起奶牛的應激反應[7]。基于機器視覺的個體識別具有無應激、無接觸、成本低、效率高等優(yōu)點[4-5]。KUSAKUNNIRAN等[8]基于奶牛的鼻部圖像提取特征識別奶牛個體,識別準確率為100%。CAI等[9]基于奶牛的面部圖像識別奶牛個體,識別準確率為95.3%?;谂D?、牛鼻圖像的個體識別具有較高的準確率,但奶牛頭部經常晃動,圖像不易采集[10]。荷斯坦奶牛是國內最常見的奶牛品種,其身體具有獨特的黑白花紋信息。國內外學者利用荷斯坦奶牛的花紋信息,嘗試對奶牛進行個體識別。ZHAO等[11]利用奶牛的側視圖,采用了4種特征提取算法(FAST、SIFT、SURT、ORB),結合兩種特征匹配算法(BruteForce、FLANN)對奶牛進行個體識別,識別精度為96.72%。此方法基于灰度特征,易受光照影響。

隨著深度學習的快速發(fā)展,YOLO[12-14]、SSD[15]、CenterNet[16-17]、Faster R-CNN[18]等算法在目標檢測領域取得了良好的表現。HU等[10]采集奶牛的側視圖,使用YOLO算法檢測到奶牛的準確位置,利用卷積深度網絡分別對奶牛的頭部、軀干、腿部提取深度特征,然后將3個部位提取的特征進行融合,最后采用SVM算法識別奶牛個體,識別準確率為98.36%。側視圖包含豐富的信息,但容易出現奶牛間的遮擋情況,難以采集到理想的側視圖像。何東健等[19]在擠奶間的通道采集奶牛的背部圖像,基于改進YOLO v3模型識別奶牛個體,對89頭奶牛進行了實驗,識別準確率為95.91%。上述研究都是奶牛處于擠奶廳等限制性場所進行的,奶牛的花紋變化較小。當奶牛處于牛舍等非限制性環(huán)境中時,攝像機與奶牛之間的拍攝距離和拍攝角度會發(fā)生變化,奶牛躺臥時頭部與腿部位置不固定,這些變化會導致花紋在圖像中出現變形,造成識別困難。XIAO等[20]利用Mask R-CNN模型分割出奶牛的背部圖像,然后基于支持向量機對背部圖像進行分類,識別準確率為98.67%。但此方法只對站立的奶牛進行識別,沒有涉及躺臥姿態(tài)的奶牛。

躺臥奶牛個體識別存在以下困難:在牛舍內的非限制環(huán)境中,奶牛身體花紋變化較大,奶牛躺臥率的計算,需要全天監(jiān)測奶牛的躺臥狀況,而牛舍夜間光照質量較差,采集的圖像質量低。

YOLO是性能優(yōu)異的深度學習識別算法,本文對YOLO v4模型[21]進行改進,并將改進后的模型效果與YOLO v5進行對比分析。首先采用帶有顏色保護的多尺度視網膜算法(Multi-scale retinex with chromaticity preservation, MSRCP)對低光照下的低質量圖像進行圖像增強,然后基于YOLO v4模型在主干特征提取網絡中融合RFB-s結構,擴大模型特征提取的感受野,增強對奶牛身體斑紋變化的魯棒性,此外,對模型的NMS算法進行改進,以提高躺臥奶牛個體識別準確率。

1 圖像采集與預處理

1.1 圖像采集

于2021年11月2—30日在河北省保定市宏達牧場采集了奶牛躺臥區(qū)圖像數據,全天進行視頻采集。牛舍白天光照充足,夜間有燈光照明,但光線較弱。實驗牛舍長25 m,寬15 m,牛舍內有24頭處于產奶期的荷斯坦奶牛,實驗過程中通過交換3個不同牛舍中奶牛擴充實驗數據集,共采集了72頭奶牛數據。如圖1a所示,牛舍內有兩個休息區(qū),本文在第1個休息區(qū)共安裝了6個廣角攝像機(DH-IPC-HFW4838M-I2型,大華),安裝高度為7.5 m,每組攝像機之間相距6.25 m,攝像機俯視角約為80°(水平向下傾斜角度),每兩個攝像機為一組,每組攝像機分別采集休息區(qū)兩側奶牛的俯視圖,攝像機焦距3.6 mm,視頻幀率25 f/s,分辨率為2 560像素×1 440像素。圖像現場采集環(huán)境如圖1b所示。

圖1 實驗設置Fig.1 Experimental setup

每個攝像機有一個獨立網際協議地址,通過網線將數據傳輸到交換機中。交換機經過網線將數據傳輸到容量為10TB的網絡硬盤錄像機(DH-HCVR5104HS-V5型)中。最后將數據從錄像機中導入到計算機中進行處理。隨機選取各個時間段每個攝像機采集的含有奶牛的視頻數據,每10 s取一幀,每個攝像機選取1 500幅含有奶牛的圖像,6個攝像機共選取9 000幅圖像作為YOLO v4模型的數據集,按照比例7∶2∶1劃分為訓練集、驗證集、測試集。本文使用LabelImg圖像標注工具對數據集圖像進行標注,由于躺臥的奶牛通常有向左或向右躺臥兩種躺臥姿態(tài),所以本文對每個躺臥奶牛個體標記為兩種標簽。

實驗運行平臺采用Intel(R) Core(TM) i5-9400F CPU,主頻為2.10 GHz,運行內存為64 GB(RAM),顯卡為NVIDIA GeForce GTX1660,開發(fā)環(huán)境為Python 3,Windows 10系統。

1.2 圖像預處理

1.2.1圖像校正

由于本文采用的鏡頭為廣角鏡頭(焦距為3.6 mm),所采集的圖像存在徑向畸變,如圖2a所示。為了消除畸變,采用張正友標定法對畸變圖像進行校正[22],采用尺寸為120 cm×90 cm的標定板,黑白格尺寸為10 cm×10 cm。將標定板放在圖像視野中不同位置、不同角度下進行圖像采集,根據檢測到標定板中的特征點,求解無畸變情況下攝像機的內參與外參,使用最大似然估計對參數進行優(yōu)化,并采用最小二乘法求出實際的徑向畸變系數。最后根據得到的所有參數對畸變圖像進行校正,并將有效區(qū)域進行裁剪。校正結果如圖2b所示,由校正前后欄桿和路沿的形狀可見,圖像的畸變明顯消除。

圖2 畸變圖像校正結果 Fig.2 Result of distortion correction

1.2.2圖像增強

牛舍內夜間光線較暗,圖像質量較差,奶牛個體不易識別,如圖3a所示。本文對18:00— 07:00間光線較暗的圖像進行圖像增強。為了提高低光照圖像的質量,首先獲取圖像的亮度,亮度計算公式為

圖3 MSRCP圖像增強結果Fig.3 MSRCP image enhancement result

Y=0.299IR+0.587IG+0.114IB

(1)

式中IR、IG、IB——原始圖像的R、G、B通道分量

Y——亮度

當圖像亮度均值小于80時,圖像亮度相對較暗,本文對亮度小于80的圖像進行圖像增強。

本文采用MSRCP算法[23]提升低光照下的圖像質量。MSRCP算法是帶有色彩保護的多尺度 Retinex 算法,可以更好地恢復場景的真實顏色。

MSRCP算法是將強度通道圖像作為原始圖像,利用強度圖像和原始RGB圖像的比例映射到每個通道,在增強圖像的同時保留原始圖像顏色分布。強度圖像的獲取公式為

Int=(IR+IG+IB)/3

(2)

式中Int——強度圖像

為了使增強后的圖像色彩與原始圖像保持一致,求得放大因子A,計算公式為

(3)

其中

B=max(IRi+IGi+IBi)

(4)

式中B——色度

i——像素索引

分別對R、G、B3個通道利用放大因子A進行色彩調整,得到增強后的圖像。計算公式為

R(x,y)=AI(R,G,B)(x,y)

(5)

式中R(x,y)——增強后圖像

I(R,G,B)(x,y)——圖像在坐標(x,y)處的RGB特征圖

經過MSRCP算法對圖像增強后的效果如圖3b所示,可以看出不僅整個圖像的亮度與對比度得到了有效提高,色彩恢復效果也比較明顯。

2 躺臥奶牛個體識別

2.1 YOLO v4模型

相比于YOLO v3[24],YOLO v4[21]引入了Mosaic數據增強,另外在主干網絡、網絡訓練、激活函數、損失函數等方面均進行了優(yōu)化,進一步提高該算法的圖像檢測速度與精度。

可以利用絕緣的電阻表對電纜的故障點進行精準定位。但是需要注意的是,在進行測量故障點之前,一定要做好防護安全,在故障點發(fā)生地1m遠的地方切斷發(fā)生故障的相電纜,通過絕緣電阻表來對電纜進行電阻測量和終端檢測,最終得出精確的測量故障點。

2.2 改進YOLO v4模型

2.2.1融合RFB-s結構的YOLO v4模型

在牛舍內的非限制環(huán)境中,采集奶牛俯視圖像。受圖像采集角度與距離的變化,以及奶牛躺臥時腿部以及頭部晃動的影響,奶牛身體上花紋在圖像中會出現一定程度的變形。另外奶牛在個別位置存在欄桿遮擋身體花紋的情況。以上問題對識別躺臥奶牛造成了一定的困難。為提高YOLO v4模型對奶牛身體花紋變化、物體遮擋識別的魯棒性,本文在YOLO v4模型的主干網絡中融合RFB-s[25]網絡結構,增加多個尺度的特征信息,擴大有效特征層的感受野,豐富特征信息,增強特征提取的魯棒性,提高奶牛個體識別的準確率。

RFB網絡[25]通過模仿人類視覺感受野與偏心度加強網絡的特征提取能力,借鑒Inception網絡[26]的多分支結構,加入了不同尺度的常規(guī)卷積與不同膨脹率的空洞卷積,在分支中卷積核越大其空洞卷積的膨脹率越大。RFB網絡結構如圖4a所示,3個通道上的常規(guī)卷積核大小分別為1×1、3×3、5×5,對應的膨脹率分別為1、3、5,然后將3個分支的不同尺度的有效特征層進行拼接。最后采用1×1卷積層與輸入的有效特征層進行殘差連接,達到了融合不同大小感受野特征的目的。如圖4b所示,RFB-s網絡結構是RFB的改進版,相比于RFB網絡主要有兩點改進:用3×3卷積層代替5×5卷積層;用1×3卷積層和3×1卷積層代替3×3卷積層。RFB-s網絡結構相對于RFB網絡有更多的分支以及更少的卷積核,為了增加YOLO v4模型的感受野,本文選用參數更少的RFB-s網絡結構融合到YOLO v4模型的主干網絡中。

圖4 RFB與RFB-s網絡結構 Fig.4 RFB and RFB-s network structure

YOLO v4模型在中下層、中間層、高層3個有效特征層(圖5中head1~head3)上分別進行目標預測。由于淺層網絡感受野較小,且在淺層有效特征層能夠有效地表征奶牛身體上花紋的細節(jié)信息,所以本文在8倍下采樣(中間層)與16倍下采樣(中下層)的輸出特征圖后增加RFB-s結構,可以在增加少量參數的情況下增強淺層網絡的感受野,提高網絡的特征提取能力,改進YOLO v4網絡結構如圖5所示。

圖5 改進YOLO v4網絡結構 Fig.5 Improved YOLO v4 network structure

如圖6所示,以8號奶牛為例,受圖像采集角度與距離的影響,8號奶牛在不同位置躺臥,奶牛身體上的花紋具有一定形變。當8號奶牛在圖像中左側與中間位置躺臥時,YOLO v4模型能準確識別。當8號奶牛在最右側時,奶牛身體上的花紋形變較大,而且存在欄桿的遮擋,YOLO v4模型錯誤的將8號奶牛識別為5號奶牛。本文改進YOLO v4模型能準確識別8號奶牛在視野中的任何位置,且置信度高于YOLO v4模型。上述結果表明,融合RFB-s結構的YOLO v4模型對奶牛身體花紋的形變具有較高的魯棒性。

圖6 YOLO v4模型改進前后對8號奶牛不同位置的識別結果對比Fig.6 Comparison of identification performance of No.8 cow before and after improvement of YOLO v4

2.2.2NMS算法改進

在目標檢測過程中,在同一目標的位置上會產生大量的候選框,存在重疊現象,非極大抑制 (Non-maximum suppression, NMS)[27]算法則會尋找出最佳的目標邊界框,消除冗余的邊界框。NMS算法只能去除對每個奶牛個體預測的單一類別冗余的邊界框,當個別奶牛外觀特征十分相似時,YOLO v4模型可能會將一個奶牛同時預測為多個不同的奶牛個體,依然存在重疊框的情況,降低識別準確率。如圖7a所示,中間的奶牛被預測為兩個不同的奶牛個體。

圖7 NMS算法改進前后識別結果對比Fig.7 Comparison of identification results of NMS and improved NMS

奶牛在牛舍內是并列躺臥,每個固定的躺臥區(qū)域只存在一個奶牛。為去除多余的重疊框,本文對NMS算法進行改進,具體實現步驟如下:①采用NMS算法去除每個奶牛個體預測的冗余的邊界框。②根據置信度降序排列候選框列表。③選取置信度最高的邊界框A添加到輸出列表,并從其候選框列表中刪除。④計算邊界框A與候選框列表中所有框的IoU值,刪除大于設定邊界框閾值的候選框。⑤返回步驟②進行迭代,直到候選框列表為空,迭代結束,輸出最終候選框列表。

如圖7b所示,經過對NMS算法的改進,可以解決原模型將一個奶牛預測為多個不同奶牛個體而產生的重疊框問題,提高奶牛個體識別的準確率。

2.3 基于改進YOLO v4模型訓練參數設置

本文分別對YOLO v4模型與改進YOLO v4模型進行訓練,圖像尺寸設置為416像素×416像素,迭代次數(Epoch)設置為200,訓練批量大小(Batch_size)設置為4。COCO數據集中包括奶牛這一類別,為主干網絡添加COCO數據集的預訓練權重提高訓練速度,每次訓練過程保存相應的權重參數。訓練過程中首先凍結主干網絡參數訓練50次,學習率設置為0.001,加速網絡收斂,后150次訓練過程中,解凍主干網絡,學習率設置為0.000 1,逐步優(yōu)化到最優(yōu)解,使網絡訓練趨于穩(wěn)定,IoU設置為0.5。

2.4 躺臥奶牛個體識別評價指標

本研究采用精確率(Precision)、召回率(Recall)、平均精度均值(mAP)、調和平均值(F1值)、平均檢測時間評估模型的性能。

每個奶牛個體都可以根據召回率和精確率繪制一條曲線,曲線下的面積為平均精度(AP),平均精度均值(mAP)為所有奶牛個體的平均精度的均值。

3 結果與分析

3.1 低光照圖像增強結果

為了驗證本文采用的MSRCP算法對低光照圖像增強效果的有效性,分別與多尺度Retinex(MSR)算法和帶有色彩恢復的多尺度視網膜增強算法(MSRCR)進行對比。從主觀視覺效果和客觀質量評價兩方面進行分析。

如圖8所示,MSR增強后的圖像整體亮度都會提高,圖像整體泛白。MSRCR增強后的圖像在暗區(qū)域的對比度過高,出現了顏色失真的現象,降低了視覺效果。MSRCP算法增強后的圖像不僅提高了亮度,而且保持了原圖色彩,避免了圖像失真,整體圖像效果最好。本文采用標準差、灰度熵、彩色熵、峰值信噪比4個指標對不同的算法進行客觀評價。如表1所示,MSRCR增強后的圖像標準差最高,但是圖像對比度過高導致圖像失真。MSRCP增強后圖像的標準差高于MSR算法增強后圖像但小于MSRCR算法增強后圖像,說明MSRCR算法為了保持原色彩,犧牲了對比度。MSRCP增強后的圖像灰度熵和彩色熵均高于其他圖像,說明了本文算法具有較好的細節(jié)表現能力,增強了圖像的清晰度,并且保持了原圖的色彩。MSRCP增強后的圖像峰值信噪比最高,具有較高的噪聲抑制能力。綜合上述主觀評價與客觀評價,MSRCP算法對低光照下的圖像增強效果最好。

圖8 不同算法的圖像增強結果Fig.8 Image enhancement results of different methods

表1 不同圖像增強算法的客觀評價結果Tab.1 Comparison of objective evalution

本文隨機選取500幅低光照圖像作為測試集。用本文改進YOLO v4模型分別對采用不同算法增強后的圖像進行實驗測試,結果如表2所示。經過MSRCP增強后的圖像精確率、召回率以及mAP都最高,其中mAP相對于原圖提高17.74個百分點。

表2 圖像增強前后識別結果對比Tab.2 Comparison of recognition results before and after image enhancement %

個別奶牛身體黑色花紋較多,在夜間很難識別。采用改進YOLO v4模型識別低光照下的圖像結果如圖9a所示,最左邊的奶牛出現了漏檢,并且對其他奶牛識別的置信度較低。采用MSRCP算法對圖像進行增強后,檢測結果如圖9b所示,圖中所有奶牛都得到準確識別,并且置信度普遍高于圖像增強前的識別結果。MSRCP圖像增強算法不僅有效地改善了低光照圖像的質量,而且奶牛個體識別準確率得到了明顯提高。

圖9 改進YOLO v4模型檢測低光照圖像的結果對比Fig.9 Comparison of results of improved YOLO v4 model for detecting low-light images

3.2 不同模型檢測結果

為了驗證本文改進YOLO v4模型的檢測性能,采用本文的數據集分別對YOLO v4模型、YOLO v5模型、SSD模型、CenterNet模型、Faster R-CNN模型進行訓練。并利用測試集數據對這5個模型進行性能評估,實驗結果如表3所示。YOLO v4的精確率、召回率、mAP、F1值明顯高于YOLO v5、SSD與CenterNet模型,但是略低于Faster R-CNN模型,表明改進YOLO v4模型在識別奶牛個體方面有明顯優(yōu)勢。YOLO v5主干特征提取網絡中的感受野較小,對奶?;y的特征提取能力較弱,識別準確率較低。改進YOLO v4模型的精確率為97.84%,召回率為93.68%,mAP為96.87%,F1值為95.71%,單幀圖像處理時間為135.23 ms,其中mAP與F1值略高于Faster R-CNN模型。從圖像的處理時間來看,CenterNet模型檢測最快,單幀圖像處理時間僅為57.85 ms。因為CenterNet屬于無錨框目標檢測算法,運行速度較快,但是識別準確率較低。Faster R-CNN模型的mAP與本文改進YOLO v4模型較為相近,但是Faster R-CNN的單幀圖像處理時間為352.35 ms,遠大于改進YOLO v4模型。改進YOLO v4模型與原模型相比mAP增加4.2個百分點,且單幀圖像處理時間與原模型近似,從檢測準確率與圖像處理時間兩方面綜合分析,改進YOLO v4模型性能表現最佳。

表3 不同模型識別奶牛的結果Tab.3 Results of different models for detecting cows

基于不同模型的奶牛個體識別結果如圖10所示。由于個別奶牛身體花紋相似,YOLO v4模型將最左側奶牛同時識別為4號與6號奶牛,而且識別的置信度較低(圖10a)。YOLO v5模型對奶牛個體識別的置信度較低,其中對于最右側有遮擋的奶牛識別置信度僅為75%(圖10b)。 SSD對個別奶牛的識別有漏檢的情況,并且奶牛識別的置信度較低(圖10c)。CenterNet將4號奶牛錯誤識別為6號奶牛(圖10d)。Faster R-CNN與本文改進YOLO v4 兩個模型都能夠準確識別奶牛個體,且識別置信度較高,存在遮擋的奶牛也能準確識別(圖10e、10f)。改進YOLO v4模型識別速度明顯優(yōu)于Faster R-CNN模型。

圖10 不同模型對奶牛識別結果對比Fig.10 Comparisons of cow recognition results by different models

上述結果表明,本文在YOLO v4的主干網絡中融入RFB-s網絡,在僅增加少量參數的情況下,有效增強了模型的特征提取能力,對花紋的形變以及物體遮擋具有較高的魯棒性。

3.3 身體花紋相似奶牛識別

部分奶牛身體花紋相似,識別難度較大。4號奶牛與6號奶?;y相似,在未進行NMS算法改進前,YOLO v4模型將4號奶牛同時識別為4號與6號奶牛(圖11a),將6號奶牛錯誤識別為4號奶牛(圖11a),且識別置信度較低。奶牛身體上花紋的形狀、大小各異,由于在模型的主干特征提取網絡中融入了RFB-s網絡結構,擴大了主干網絡特征提取的感受野,不同大小感受野的卷積可以對奶牛身體不同大小的花紋提取相應特征,增強了模型對奶牛特征提取的能力,所以本文改進后的YOLO v4模型對4號奶牛與6號奶牛識別的置信度較高(圖11b)。本文對NMS算法的改進,有效地解決了將一個奶牛同時識別為多個奶牛的問題,進一步提高了模型對花紋相似奶牛個體識別的準確率。

圖11 不同模型對外觀特征相似奶牛識別結果Fig.11 Recognition results of cows with similar appearance features by different model

4 結論

(1)采用MSRCP算法對低光照圖像進行增強,解決了由于圖像較暗導致識別準確率較低的問題,經過MSRCP圖像增強后,低光照條件下奶牛個體識別的mAP提高17.74個百分點。

(2)將RFB-s網絡結構融合到YOLO v4模型中,增強了YOLO v4模型主干網絡特征提取的感受野,提高了模型的特征提取能力,對奶牛身體花紋的形變以及遮擋情況具有較高的魯棒性。對NMS算法的改進,提高了外形相似奶牛個體識別的準確率。改進YOLO v4模型對躺臥奶牛個體識別的mAP為96.87%,模型識別性能得到了很大提升。

(3)提出的躺臥奶牛個體識別方法,為實現自動計算奶牛個體躺臥時間提供了有效的技術支持。該方法為監(jiān)測奶牛個體健康情況、評估牛舍環(huán)境舒適度等現代化養(yǎng)殖技術奠定了基礎。

猜你喜歡
圖像增強花紋特征提取
圖像增強技術在超跨聲葉柵紋影試驗中的應用
水下視覺SLAM圖像增強研究
基于Gazebo仿真環(huán)境的ORB特征提取與比對的研究
虛擬內窺鏡圖像增強膝關節(jié)鏡手術導航系統
涂顏色
基于Daubechies(dbN)的飛行器音頻特征提取
冰雪路面轎車輪胎
公交車專用載重汽車輪胎胎面花紋
基于圖像增強的無人機偵察圖像去霧方法
Bagging RCSP腦電特征提取算法