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

?

基于Cow-DETR與深度圖像的非接觸式奶牛體質(zhì)量評估

2023-08-22 06:37:20沈維政戴百生王鑫杰趙凱旋
關(guān)鍵詞:奶牛深度預(yù)測

沈維政 張 哲 戴百生 王鑫杰 趙凱旋 李 洋

(1.東北農(nóng)業(yè)大學(xué)電氣與信息學(xué)院, 哈爾濱 150030; 2.河南科技大學(xué)農(nóng)業(yè)裝備工程學(xué)院, 洛陽 471023;3.東北農(nóng)業(yè)大學(xué)動物科學(xué)技術(shù)學(xué)院, 哈爾濱 150030)

0 引言

體質(zhì)量是體現(xiàn)奶牛健康狀況的重要參數(shù),奶牛體質(zhì)量為評估奶牛個體的健康和生長狀態(tài)、判斷牧場環(huán)境的適宜性及飼料營養(yǎng)分配的合理性提供了一個重要依據(jù)[1-5]。及時關(guān)注體質(zhì)量變化,調(diào)整飼料分配,對于降低成本,增加產(chǎn)奶量具有重要的實(shí)際意義[6]。

目前國內(nèi)牧場多采用傳統(tǒng)稱量方式進(jìn)行奶牛體質(zhì)量測量,評測效率較為低下,容易造成奶牛應(yīng)激反應(yīng),影響產(chǎn)奶量[7]。隨著智慧牧場概念的提出和計(jì)算機(jī)視覺的發(fā)展,基于計(jì)算機(jī)視覺的非接觸式牲畜體質(zhì)量評估受到研究人員廣泛的關(guān)注。在非接觸式體質(zhì)量評估方面,國內(nèi)外研究學(xué)者早期多基于二維RGB圖像進(jìn)行分階段的非接觸式奶牛體質(zhì)量評估[8-15],通過奶牛RGB圖像提取奶牛體長、體斜長、胸圍、肩高、臀高和背部面積等體型數(shù)據(jù),基于體型數(shù)據(jù)建立回歸方程預(yù)估牲畜體質(zhì)量。然而,二維圖像不包含深度數(shù)據(jù),不易獲取奶牛背部曲面變化的信息,導(dǎo)致體質(zhì)量評估精度不高。

視覺傳感器技術(shù)的發(fā)展和三維相機(jī)的低成本化,使其逐漸應(yīng)用于智慧畜牧。部分學(xué)者開始研究應(yīng)用含有深度信息的點(diǎn)云數(shù)據(jù)進(jìn)行分段式奶牛體質(zhì)量評估[16-20],通過采集奶牛俯視和側(cè)視深度數(shù)據(jù),進(jìn)行三維點(diǎn)云重建,進(jìn)而利用通過點(diǎn)云提取到的奶牛體尺數(shù)據(jù)評估奶牛體質(zhì)量。但是,三維重建對奶牛位姿要求較高,而奶牛的位置和姿態(tài)是動態(tài)變化的,需要人工參與挑選位姿合格的數(shù)據(jù)進(jìn)行重建,導(dǎo)致重建精度無法保證,難以獲取體尺數(shù)據(jù),同時,分段式提取的體尺特征,會產(chǎn)生不可避免的誤差,影響奶牛體質(zhì)量評估的精度。

為解決這一問題,更多學(xué)者開始研究基于對牲畜站立姿勢要求較低,但與體質(zhì)量相關(guān)性較高的背部視角的深度圖像數(shù)據(jù)和深度神經(jīng)網(wǎng)絡(luò)的端到端式牲畜體質(zhì)量評估模型[21-22]。文獻(xiàn)[23]提出一種改進(jìn)的Faster R-CNN目標(biāo)檢測網(wǎng)絡(luò)的端到端式牲畜體質(zhì)量評估方法,對豬只體質(zhì)量進(jìn)行評估,該方法對豬只的站立姿勢和圖像采集環(huán)境沒有限制。然而,傳統(tǒng)目標(biāo)檢測的檢測結(jié)果框中含有除牲畜背部以外的其他雜物,比如通道欄桿、地面上的糞便和其他障礙物等,容易影響奶牛背部數(shù)據(jù)中體質(zhì)量相關(guān)特征提取的有效性,進(jìn)而影響模型體質(zhì)量評估的性能[24]。

為此,本文提出一種改進(jìn)DETR(Detection transformer)網(wǎng)絡(luò)的端到端式牲畜體質(zhì)量評估方法——Cow-DETR,利用奶牛的背部深度圖像,對奶牛體質(zhì)量進(jìn)行評估。通過DETR網(wǎng)絡(luò)的注意力機(jī)制[25],更加關(guān)注奶牛背部深度信息,減少除奶牛背部外的欄桿、糞便、地面等雜物信息對體質(zhì)量評估的干擾。此外,本研究在DETR原結(jié)構(gòu)的基礎(chǔ)之上,在預(yù)測模塊中添加含有交替全連接層(Alternate fully connected,AFC)的體質(zhì)量預(yù)測單元,更好地提取奶牛體質(zhì)量相關(guān)特征信息,進(jìn)行體質(zhì)量評估,以實(shí)現(xiàn)在檢測奶牛個體的同時對奶牛體質(zhì)量進(jìn)行評估。

1 材料和方法

1.1 數(shù)據(jù)采集

為了獲取奶牛的體質(zhì)量數(shù)據(jù)和對應(yīng)的背部深度圖像,本文設(shè)計(jì)了一套采集裝置,如圖1所示,包括深度相機(jī)(距地面約2.5 m)和帶圍欄的體重秤(長約2.5 m,寬約0.9 m,圍欄高約1.5 m,整體高約2.5 m)。本研究將采集裝置安裝在奶牛采奶后必經(jīng)區(qū)域,體重秤兩側(cè)圍欄僅允許奶牛逐頭單向通過數(shù)據(jù)采集裝置,進(jìn)行無接觸式奶牛圖像和體質(zhì)量數(shù)據(jù)采集。經(jīng)過多種深度相機(jī)對比,本文最終選擇使用成本可控,室內(nèi)外成像效果都較好的Intel RealSense D435深度相機(jī)進(jìn)行數(shù)據(jù)采集,將深度相機(jī)架設(shè)在數(shù)據(jù)采集裝置的頂部,與地面平行,同時與PC端直連,以Visual Studio 2017為開發(fā)平臺并基于RealSense SDK 2.0 進(jìn)行奶牛背部深度視頻流數(shù)據(jù)采集,分辨率為848像素×480像素,幀率為30 f/s,在2021年9月和2022年7月于黑龍江省大慶市林甸縣晟康牧業(yè)有限公司的奶牛養(yǎng)殖場,共采集139頭體型不一、體質(zhì)量從206 kg到781 kg不等的奶牛背部深度圖像序列,整理得到共計(jì)14 421幅圖像。

圖1 奶牛數(shù)據(jù)采集裝置圖Fig.1 Cow data acquisition device diagrams

1.2 數(shù)據(jù)補(bǔ)全處理

由于牧場環(huán)境強(qiáng)光和奶牛背部黑色花紋對光線的吸收等影響,奶牛背部數(shù)據(jù)產(chǎn)生部分不規(guī)律的殘缺。如圖2a所示,奶牛臀部和肩部出現(xiàn)不同大小和形狀的殘缺,其包含錯誤的深度信息,會嚴(yán)重影響模型的體質(zhì)量評估精度[26-28]。針對這一問題,本文利用RealSense SDK 2.0提供的邊緣平滑濾波器和孔洞填充濾波器對深度圖像數(shù)據(jù)進(jìn)行補(bǔ)全處理[29]。首先采用邊緣平滑濾波器對采集圖像深度噪聲進(jìn)行平滑處理,確保圖像保持較為合理且穩(wěn)定的邊緣。該濾波器通過對x軸和y軸進(jìn)行掃描,獲取目標(biāo)像素深度值,計(jì)算一維指數(shù)移動平均線(Exponential moving average,EMA)以確定合適的平滑量,計(jì)算公式為

圖2 深度圖像濾波效果Fig.2 Depth image filtering effect diagrams

(1)

式中α——加權(quán)減少程度系數(shù)

Yt——新記錄的瞬時值(視差或深度)

St-1——時間段t-1的EMA值

δthresh——深度閾值

接下來進(jìn)行空間域的孔洞填充,由于D435深度相機(jī)采用左成像器作為立體匹配算法的參考,因此本研究采用左側(cè)有效像素(Left valid pixel)對深度數(shù)據(jù)缺失部分進(jìn)行空間域的孔洞填充;最后進(jìn)行時間域的孔洞填充,采用與邊緣平滑濾波器相同類型的指數(shù)移動平均線濾波器,通過對深度圖像的像素在時間域上應(yīng)用指數(shù)滑動平均來進(jìn)行孔洞填充,經(jīng)過多次試驗(yàn),系數(shù)α取0.5、閾值參數(shù)δthresh取20時可取得較好效果。最終補(bǔ)全效果如圖2b所示,圖2a中背部缺失部分得到有效填充,取得較完整的奶牛背部深度數(shù)據(jù)。運(yùn)用上述方法對所有采集到的原始圖像進(jìn)行處理,得到用于模型訓(xùn)練的深度圖像數(shù)據(jù)集。

1.3 數(shù)據(jù)標(biāo)注與數(shù)據(jù)增強(qiáng)

為了提升本實(shí)驗(yàn)算法的可重復(fù)性和實(shí)驗(yàn)結(jié)果的可信度,本研究模型均采用5倍交叉驗(yàn)證的方式進(jìn)行訓(xùn)練和測試。將采集到的139頭奶牛數(shù)據(jù),共計(jì)14 421幅圖像,根據(jù)奶牛數(shù)量平均分成5份,每份包含約20%樣本。選擇其中4份約111頭奶牛作訓(xùn)練集,其余作測試集,為方便網(wǎng)絡(luò)模型訓(xùn)練,本實(shí)驗(yàn)將體重秤采集到的體質(zhì)量數(shù)據(jù)寫入文件名中,文件命名格式為:index_weights_.png,如:000001_596_.png。本實(shí)驗(yàn)需要進(jìn)行兩個類別的目標(biāo)分類檢測,分別為奶?!癱ow”和默認(rèn)背景類“background”,采用LabelImg標(biāo)記軟件進(jìn)行標(biāo)注,為了減少奶牛頭部對實(shí)驗(yàn)結(jié)果的影響,標(biāo)注時標(biāo)注框不包含牛頭部,并將圖像標(biāo)注內(nèi)容記錄到XML格式文件中,包括圖像索引、圖像大小、對象類別、位置坐標(biāo)和體質(zhì)量真值。

為了豐富訓(xùn)練集的圖像數(shù)據(jù),避免過擬合現(xiàn)象的發(fā)生,本文通過鏡像和旋轉(zhuǎn)來擴(kuò)大訓(xùn)練數(shù)據(jù)集,其中鏡像的對稱軸為圖像中心線。經(jīng)過鏡像和旋轉(zhuǎn)處理后,訓(xùn)練集圖像總數(shù)擴(kuò)大近一倍。將訓(xùn)練集和測試集名稱寫入TXT格式文件中,用于后續(xù)奶牛體質(zhì)量評估模型的訓(xùn)練。

1.4 Cow-DETR奶牛體質(zhì)量評估模型

為了實(shí)現(xiàn)奶牛目標(biāo)檢測的同時進(jìn)行奶牛個體體質(zhì)量評估,并且減少檢測框內(nèi)除奶牛背部外的背景等雜物對體質(zhì)量評估的影響,本研究提出一種改進(jìn)的DETR網(wǎng)絡(luò)的端到端式奶牛體質(zhì)量評估模型——Cow-DETR。該網(wǎng)絡(luò)包含3個模塊,分別為骨干網(wǎng)絡(luò)模塊、Transformer編碼器與解碼器模塊、預(yù)測模塊。其中骨干網(wǎng)絡(luò)模塊為基礎(chǔ)特征提取模塊,負(fù)責(zé)對圖像進(jìn)行特征提取;Transformer編碼器與解碼器模塊采用注意力機(jī)制,對骨干網(wǎng)絡(luò)模塊的輸出進(jìn)行特征提取,通過注意力機(jī)制,能夠關(guān)注奶牛背部區(qū)域,減少背景中欄桿、糞便等雜物信息的干擾,提高后續(xù)預(yù)測模塊的預(yù)測精度;預(yù)測模塊在DETR網(wǎng)絡(luò)原有基礎(chǔ)之上,增加了含有交替全連接層的體質(zhì)量預(yù)測單元,接受Transformer編碼器與解碼器模塊傳來的Token,對其進(jìn)行檢測框預(yù)測、類別預(yù)測和體質(zhì)量預(yù)測,實(shí)現(xiàn)了高精度牛背目標(biāo)檢測的同時預(yù)測奶牛體質(zhì)量。整體網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。

圖3 整體網(wǎng)絡(luò)結(jié)構(gòu)Fig.3 Structure of neural network

1.4.1骨干網(wǎng)絡(luò)模塊

骨干網(wǎng)絡(luò)為基礎(chǔ)特征提取模塊,通過對深度圖像進(jìn)行卷積,獲得圖像特征向量。為了更好地提取特征同時避免隨機(jī)梯度爆炸、消失等問題,本研究選用ResNet-50作為基礎(chǔ)特征提取網(wǎng)絡(luò),具體結(jié)構(gòu)如表1所示。

表1 ResNet-50網(wǎng)絡(luò)結(jié)構(gòu)Tab.1 ResNet-50 network structure

1.4.2Transformer編碼器與解碼器

圖4 編碼器與解碼器結(jié)構(gòu)圖Fig.4 Image of transformer encoder and decoder

解碼器結(jié)構(gòu)和編碼器類似,通過對編碼器輸出的特征圖進(jìn)行特征提取,將編碼器的輸出和N個查詢對象作為輸入,同時將固定數(shù)量的位置編碼嵌入到N個查詢對象中,對N個查詢對象根據(jù)編碼器提取到的特征進(jìn)行重構(gòu)。輸出N個包含不同信息的Token,通過將N個Token輸入后續(xù)的預(yù)測模塊,進(jìn)行檢測框預(yù)測、目標(biāo)分類預(yù)測和體質(zhì)量預(yù)測,結(jié)構(gòu)如圖4右側(cè)所示。

1.4.3預(yù)測模塊設(shè)計(jì)

預(yù)測模塊部分由3個并行的全連接模塊構(gòu)成,其共享輸入特征,分別輸出檢測框坐標(biāo),類別置信度和奶牛體質(zhì)量歸一化值。該模塊接受編碼器解碼器輸出的N個Token,對不同Token分別進(jìn)行預(yù)測,具體網(wǎng)絡(luò)結(jié)構(gòu)如圖5所示。其中檢測框預(yù)測單元通過多層感知機(jī)(Multilayer perceptron,MLP)與Sigmoid函數(shù)結(jié)合的方式實(shí)現(xiàn),輸出神經(jīng)元個數(shù)設(shè)置為4,最終輸出檢測框的中心坐標(biāo)(x和y)以及檢測框的長和寬(h和w)。目標(biāo)分類預(yù)測單元通過單個全連接層(Fully connected,FC)實(shí)現(xiàn),由于本研究是背景和奶牛背部的二分類預(yù)測,預(yù)測單元輸出維度設(shè)置為2,最終輸出的類別為奶牛或背景。

圖5 預(yù)測模塊網(wǎng)絡(luò)結(jié)構(gòu)圖Fig.5 Image of prediction module network structure

對于體質(zhì)量預(yù)測單元,本研究引入全連接層構(gòu)建回歸分支進(jìn)行體質(zhì)量預(yù)測,為了更好地提取奶牛體質(zhì)量相關(guān)特征信息,以提高體質(zhì)量預(yù)測的精度,本文構(gòu)建了一個全新的交替全連接層,用于體質(zhì)量預(yù)測,如圖5中體質(zhì)量預(yù)測單元所示,模塊輸入是256維數(shù)據(jù),首先分為2個分支,一個分支是256維作為輸入、64維作為輸出的單全連接層,另一個是256維作為輸入、64維作為輸出的雙全連接層。然后將雙全連接層的輸出作為輸入,輸入到64維作為輸入、16維作為輸出的單全連接層。同時將2個64維的輸出進(jìn)行結(jié)合,作為后續(xù)128維作為輸入、16維作為輸出的雙全連接層的輸入。最后將2個輸出為16維的全連接層的輸出結(jié)合,輸入到最后一個全連接層,進(jìn)行歸一化奶牛體質(zhì)量的預(yù)測。與單個全連接層直接預(yù)測歸一化奶牛體質(zhì)量相比,交替全連接層可以分層次進(jìn)行特征提取,同時結(jié)合上層特征,有利于得到準(zhǔn)確的回歸預(yù)測。

由于本研究采集的奶牛體質(zhì)量數(shù)據(jù)范圍跨度較大,這樣未經(jīng)處理的數(shù)據(jù)輸入到神經(jīng)網(wǎng)絡(luò)會對體質(zhì)量評估造成干擾。為了減少干擾,加快網(wǎng)絡(luò)的收斂速度,提高模型訓(xùn)練效率,本研究將奶牛圖像對應(yīng)的真實(shí)體質(zhì)量標(biāo)簽輸入到網(wǎng)絡(luò)訓(xùn)練之前,對其進(jìn)行歸一化處理,使其映射到[0,1],計(jì)算公式為

(2)

式中Y(i)——奶牛i真實(shí)體質(zhì)量歸一化值

常見的液氨、液氯和液化石油氣均屬于液化氣體,液化氣體充裝量通常不得大于氣瓶容積與充裝系數(shù)乘積的計(jì)算值。因液化氣體可壓縮性較小而膨脹性又較大,所以氣瓶因超裝造成氣瓶內(nèi)“滿液”時,滿液鋼瓶的溫度只要上升1℃,瓶內(nèi)壓力就可增加1~2 MPa,若溫度升高 5~15℃,則瓶內(nèi)壓力會急劇增加,導(dǎo)致鋼瓶爆炸。

y(i)——奶牛i的體質(zhì)量真值

ymin——測試集奶牛體質(zhì)量最小值

ymax——測試集奶牛體質(zhì)量最大值

體質(zhì)量估計(jì)值為網(wǎng)絡(luò)輸出層輸出值經(jīng)過反歸一化計(jì)算所得的數(shù)值,計(jì)算公式為

(3)

1.5 損失函數(shù)設(shè)計(jì)

損失函數(shù)L主要由檢測框預(yù)測損失Lbox、目標(biāo)分類預(yù)測損失Llabel和體質(zhì)量預(yù)測損失Lweight組成。本研究的體質(zhì)量評估模型采用聯(lián)合訓(xùn)練方式,當(dāng)真實(shí)標(biāo)簽和候選區(qū)域之間的IOU(交并比)大于0.7時,該Token被認(rèn)為是正例。當(dāng)且僅當(dāng)Token為正例,該特征值才會進(jìn)行損失函數(shù)計(jì)算,計(jì)算公式為

L=λ1Lbox+λ2Llabel+λ3Lweight

(4)

式中λ1、λ2、λ3——損失函數(shù)權(quán)重

1.5.1檢測框預(yù)測損失

本研究的檢測框損失函數(shù)由損失函數(shù)L1和Liou組成,L1不僅提高檢測準(zhǔn)確率、避免梯度爆炸還可以快速收斂到更高的精度,提高模型的魯棒性。但是L1在求解預(yù)測框時僅關(guān)注4個點(diǎn)的損失值,并沒有關(guān)注4個值之間的關(guān)聯(lián)性,不能反映真實(shí)框和預(yù)測框之間的包含關(guān)系,為此本研究引入損失函數(shù)Liou,將預(yù)測框作為一個整體進(jìn)行回歸。具體損失函數(shù)計(jì)算公式為

Lbox(bσ(i),i)=λiouLiou(bσ(i),i)+λL1‖bσ(i)-i‖1

(5)

Liou(bσ(i),i)=

(6)

式中λiou、λL1——權(quán)重參數(shù)

bσ(i)——第i個索引的真實(shí)框

B(bσ(i),i)——bσ(i)和i的最小包圍矩形

B(bσ(i),i)σ(i)∪i——B(·)中沒有覆蓋bσ(i)和i的面積

1.5.2目標(biāo)分類預(yù)測損失

本研究的目標(biāo)分類損失Llabel采用交叉熵?fù)p失函數(shù),交叉熵?fù)p失函數(shù)可以很好地描述輸出值與真實(shí)值之間的距離,通過不斷學(xué)習(xí)、優(yōu)化模型預(yù)測的每個類別的概率與真實(shí)標(biāo)簽類別之間的距離,以達(dá)到正確分類的目的,具體計(jì)算公式為

(7)

式中n——測量樣本總數(shù)

ci——真實(shí)類別輸出

1.5.3體質(zhì)量預(yù)測損失

體質(zhì)量預(yù)測損失采用傳統(tǒng)的損失函數(shù)L1,該損失函數(shù)有穩(wěn)定的梯度,不會導(dǎo)致梯度爆炸問題,具有較為穩(wěn)健性的解,常用于回歸預(yù)測。具體損失函數(shù)計(jì)算公式為

(8)

2 實(shí)驗(yàn)設(shè)置

2.1 實(shí)驗(yàn)環(huán)境

實(shí)驗(yàn)在Linux系統(tǒng)環(huán)境下運(yùn)行,采用能夠支持 GPU 加速和動態(tài)神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)開源框架Pytorch 1.10,配合 CUDA 11.0 進(jìn)行訓(xùn)練。服務(wù)器搭載的處理器為 Intel Xeon E5-2678V3 CPU,2.50 GHz,48核,內(nèi)存為270 GB,顯卡為RTX3090×8。

2.2 參數(shù)設(shè)置

本研究通過解析視頻流文件,獲取到848像素×480像素、16位、單通道、PNG格式的圖像數(shù)據(jù)作為數(shù)據(jù)集,將采集到的139頭奶牛數(shù)據(jù),按奶牛頭數(shù)平均分成5份,選擇其中4份作為訓(xùn)練集,其余奶牛數(shù)據(jù)組成測試集,采用5倍交叉驗(yàn)證的方式進(jìn)行訓(xùn)練和測試。批量大小(Batch size)在顯卡內(nèi)存允許范圍內(nèi)設(shè)置得盡可能大,模型迭代次數(shù)共計(jì)60周期。優(yōu)化器為Adam,其中骨干網(wǎng)絡(luò)模塊的學(xué)習(xí)速率為1×10-5,其他模塊學(xué)習(xí)速率為1×10-4,權(quán)值衰減為1×10-5,解碼器的查詢對象設(shè)為100。根據(jù)經(jīng)驗(yàn)損失函數(shù)的權(quán)重λ1、λ2、λ3分別設(shè)置為5、1、1。

訓(xùn)練網(wǎng)絡(luò)使用在COCO數(shù)據(jù)集上預(yù)訓(xùn)練的網(wǎng)絡(luò)模型進(jìn)行遷移學(xué)習(xí),參數(shù)在預(yù)訓(xùn)練模型的基礎(chǔ)上根據(jù)本實(shí)驗(yàn)圖像數(shù)據(jù)進(jìn)行微調(diào),通過此方式進(jìn)行訓(xùn)練可以有效減少總體需要訓(xùn)練的迭代次數(shù),大約在40次迭代后,模型收斂。

2.3 評價指標(biāo)

為了評估本文方法并與其他非接觸式體質(zhì)量評估模型進(jìn)行對比,本文采用平均絕對誤差(Mean absolute error,MAE)和平均相對誤差(Mean relative error,MRE)作為判斷標(biāo)準(zhǔn)。此外,本文還利用單幅圖像平均預(yù)測時間,來評估算法的時效性。

2.4 交叉驗(yàn)證

為了評估本文模型的性能,提升本文實(shí)驗(yàn)算法的可重復(fù)性和實(shí)驗(yàn)結(jié)果的可信度,本文模型均采用5倍交叉驗(yàn)證的方式進(jìn)行訓(xùn)練和測試,首先將采集到的139頭奶牛數(shù)據(jù),共計(jì)約14 421幅圖像,按奶牛頭數(shù)平均分成5份,每份包含大約20%的樣本。每次實(shí)驗(yàn)順序選擇其中4份約111頭奶牛作為訓(xùn)練集,其余作為測試集,數(shù)據(jù)集劃分結(jié)果如圖6所示。利用訓(xùn)練集對模型進(jìn)行訓(xùn)練,并在對應(yīng)的測試集中進(jìn)行測試,共進(jìn)行5次訓(xùn)練和測試,將5次測試集的測試結(jié)果的平均值作為該模型的最終預(yù)測結(jié)果,就可以得到整個數(shù)據(jù)集的預(yù)測結(jié)果。

3 結(jié)果與分析

3.1 交替全連接層有效性驗(yàn)證

為了驗(yàn)證本文提出的交替全連接層對奶牛體質(zhì)量評估精度提升的有效性,使用本文實(shí)驗(yàn)構(gòu)建的數(shù)據(jù)集對以下模型進(jìn)行訓(xùn)練和測試:體質(zhì)量預(yù)測模塊為交替全連接層的Cow-DETR模型、體質(zhì)量預(yù)測模塊為單全連接層的Cow-DETR (w/o AFC)模型、文獻(xiàn)[23]所提出的基于Faster R-CNN的體質(zhì)量評估模型與其體質(zhì)量預(yù)測模塊替換為交替全連接層的改進(jìn)Faster R-CNN (w/AFC)體質(zhì)量評估模型,文獻(xiàn)[24]所提出的基于BotNet的體質(zhì)量評估模型與其體質(zhì)量預(yù)測模塊替換為交替全連接層的改進(jìn)BotNet (w/AFC)體質(zhì)量評估模型。測試比對結(jié)果如表2所示。

表2 不同體質(zhì)量評估模型性能對比Tab.2 Results of test dataset

從表2可以看出,交替全連接層可以大大減少M(fèi)AE,有效提高體質(zhì)量評估精度,其中Faster R-CNN (w/AFC)的MAE為24.32 kg,相比Faster R-CNN提升9.36%,MRE為5.04%,相比Faster R-CNN減少0.95個百分點(diǎn);BotNet (w/AFC)的MAE為20.51 kg,相比BotNet提升10.32%,MRE為4.21%,相比BotNet減少0.54個百分點(diǎn);體質(zhì)量預(yù)測模塊為交替全連接層的Cow-DETR體質(zhì)量評估效果最好,MAE為17.21 kg,與Cow-DETR (w/o AFC)相比,精度提升22.16%,MRE為3.71%,相對于Cow-DETR (w/o AFC)減少0.82個百分點(diǎn)。Cow-DETR與Faster R-CNN (w/AFC)、BotNet (w/AFC)相比,MAE分別提升約29.24%和16.09%;MRE分別減少1.33、0.5個百分點(diǎn),主要原因是本文提出的Cow-DETR模型采用注意力機(jī)制,可以更加關(guān)注奶牛背部深度信息,有效地避免除目標(biāo)奶牛背部外的欄桿、糞便等雜物信息對體質(zhì)量評估精度的影響。

綜上,交替全連接層可以提升奶牛特征提取的能力,有效地提高體質(zhì)量評估精度,本文提出的Cow-DETR在4種網(wǎng)絡(luò)模型中具有最低的MAE和MRE,單幅圖像平均預(yù)測時間為0.026 s,可以實(shí)現(xiàn)奶牛體質(zhì)量實(shí)時且較高精度評估。

3.2 與分段式體質(zhì)量評估模型對比

為了對比端到端的體質(zhì)量評估方法與分段式的體質(zhì)量評估方法的效果,本研究設(shè)計(jì)了分段式體質(zhì)量評估模型對比實(shí)驗(yàn),首先通過單獨(dú)訓(xùn)練DETR目標(biāo)檢測網(wǎng)絡(luò)進(jìn)行個體目標(biāo)檢測,進(jìn)而基于目標(biāo)檢測結(jié)果手工截取檢測框內(nèi)的奶牛深度圖像;然后基于截取得到的深度圖像數(shù)據(jù)集,設(shè)計(jì)單獨(dú)的回歸神經(jīng)網(wǎng)絡(luò),預(yù)測奶牛體質(zhì)量。與本文提出的Cow-DETR端到端式奶牛體質(zhì)量評估模型進(jìn)行對比,經(jīng)過5倍交叉驗(yàn)證,在測試集中對比結(jié)果如表3所示。

表3 與分段式體質(zhì)量評估模型性能對比Tab.3 Comparison with segmented weights evaluation model performance

從表3可以看出,Cow-DETR與DETR+Regression Network相比,其MAE提升39.61%,MRE減少2.25個百分點(diǎn)。主要原因是,本文提出的Cow-DETR奶牛體質(zhì)量評估模型,采用含有注意力機(jī)制的端到端的預(yù)測方式,相比于分階段式體質(zhì)量評估模型單獨(dú)訓(xùn)練的DETR目標(biāo)檢測網(wǎng)絡(luò),本文方法可以利用體質(zhì)量信號對DETR網(wǎng)絡(luò)進(jìn)行監(jiān)督訓(xùn)練,使網(wǎng)絡(luò)的注意力模塊更加關(guān)注奶牛體質(zhì)量之間的差異,更好地對奶牛特征進(jìn)行提取和對體質(zhì)量進(jìn)行預(yù)測,且單幅圖像平均預(yù)測時間更短,符合牧場實(shí)際需求[30]。

3.3 與現(xiàn)有其他體質(zhì)量評估模型對比

為了體現(xiàn)本文提出的Cow-DETR相比現(xiàn)有奶牛體質(zhì)量評估模型的優(yōu)勢,將本文模型與現(xiàn)有奶牛體質(zhì)量評估模型進(jìn)行對比,對比結(jié)果如表4所示。

表4 與其他奶牛體質(zhì)量評估模型對比Tab.4 Comparison with other cow weights evaluation models

由表4可以看出,文獻(xiàn)[10]和文獻(xiàn)[19]相對于其他現(xiàn)有體質(zhì)量評估模型,其預(yù)測精度較高,但是其采集奶牛數(shù)據(jù)集數(shù)量相對較少,本實(shí)驗(yàn)使用的數(shù)據(jù)集共計(jì)139頭奶牛,并采用5倍交叉驗(yàn)證的方式進(jìn)行訓(xùn)練和測試,將5次測試集的測試結(jié)果的平均值作為該模型的最終預(yù)測結(jié)果,可以得到整個數(shù)據(jù)集的測試結(jié)果,且本研究在測試集中的MAE為17.21 kg,與文獻(xiàn)[10]和文獻(xiàn)[19]提出的方法相比分別提升1.66%和5.44%。

值得注意的是,表4中的現(xiàn)有體質(zhì)量評估模型[9-10,18-20]都使用了分階段的方式預(yù)測奶牛體質(zhì)量,該方式首先通過第1階段的網(wǎng)絡(luò)預(yù)測對奶牛體尺或面積等特征值進(jìn)行提取,之后利用上述特征值單獨(dú)訓(xùn)練體質(zhì)量回歸模塊進(jìn)行奶牛體質(zhì)量評估。但是,前段網(wǎng)絡(luò)提取的特征容易產(chǎn)生不可避免的誤差,影響后續(xù)體質(zhì)量評估精度。而本文提出的Cow-DETR奶牛體質(zhì)量評估模型,采用端到端的預(yù)測方式,避免了分段式的誤差問題,再次驗(yàn)證了本文所提出的奶牛體質(zhì)量評估模型可以進(jìn)行較高精度的奶牛體質(zhì)量評估。

3.4 Cow-DETR體質(zhì)量評估模型評估結(jié)果與分析

為了進(jìn)一步分析本文所提出的體質(zhì)量評估模型的預(yù)測精度,對該模型在5個不同測試集上的5次評估結(jié)果進(jìn)行分析。本研究采用5倍交叉驗(yàn)證的方式進(jìn)行訓(xùn)練和測試,可以得到整個數(shù)據(jù)集的測試結(jié)果,因此測試集共139頭牛,共計(jì)14 421幅圖像。本研究給出數(shù)據(jù)集中每頭奶牛的體質(zhì)量估計(jì)值和真實(shí)值,如圖7所示。為了更清楚地描述本實(shí)驗(yàn)?zāi)P腕w質(zhì)量評估值和真實(shí)值之間的接近程度,本研究在測試集中隨機(jī)選取800幅圖像,并給出了每幅圖像體質(zhì)量評估值和真實(shí)值之間的絕對誤差和相對誤差,誤差曲線如圖8所示。圖8表明,體質(zhì)量評估的絕對誤差一般小于23 kg(用紅線標(biāo)注),僅有少數(shù)測量誤差較大,但也小于29 kg;體質(zhì)量評估的相對誤差較低,一般小于4.8%(用紅線標(biāo)注),主要在3.6%上下浮動,絕對誤差較大的圖像對應(yīng)的相對誤差也不超過5.2%。通過計(jì)算14 421幅測試圖像的體質(zhì)量評估結(jié)果,平均絕對誤差為17.21 kg,平均相對誤差為3.71%,結(jié)果表明,本文所提出的奶牛體質(zhì)量評估模型的體質(zhì)量評估值與真實(shí)值相近,模型預(yù)測精度較高。圖9顯示了本文模型在真實(shí)奶?;顒訄鼍爸心繕?biāo)檢測和體質(zhì)量評估效果,其中“Cow”表示待測對象的類別,類別對應(yīng)的數(shù)值表示類別預(yù)測的概率,最后數(shù)值表示體質(zhì)量評估結(jié)果。本文提出體質(zhì)量評估模型對待測對象站立姿勢和奶牛站立方向要求較低,僅需奶牛完整的出現(xiàn)在攝像區(qū)域,就可以檢測出目標(biāo)類別,并對其進(jìn)行定位,以及預(yù)測出目標(biāo)的體質(zhì)量參數(shù)。待測對象的類別及其概率以及相應(yīng)體質(zhì)量評估值在圖中目標(biāo)檢測框的左上角區(qū)域進(jìn)行顯示。通過與真實(shí)值進(jìn)行對比證明,本文所提出的模型可以同時實(shí)現(xiàn)奶牛背部定位和體質(zhì)量評估且評估結(jié)果較為準(zhǔn)確。

圖7 測試集檢測結(jié)果Fig.7 Detection results of test set

圖8 相對誤差和絕對誤差Fig.8 Relative error and absolute error

圖9 實(shí)例結(jié)果Fig.9 Results of example

4 結(jié)論

(1)提出了一種基于奶牛背部深度圖像和改進(jìn)DETR算法的端到端式奶牛體質(zhì)量評估方法(Cow-DETR),利用奶牛背部曲面變化的信息,在實(shí)現(xiàn)了非接觸式端到端的高精度奶牛體質(zhì)量評估的同時減少對奶牛位姿的要求,以及避免分階段的體質(zhì)量評估方式對奶牛體質(zhì)量評估精度的影響。

(2)設(shè)計(jì)了一種深度圖像補(bǔ)全處理方法,通過邊緣平滑濾波器和孔洞填充濾波器,對奶牛背部深度圖像進(jìn)行補(bǔ)全處理,有效降低深度圖像缺失對體質(zhì)量評估的影響。

(3)引入了DETR網(wǎng)絡(luò),借助其注意力機(jī)制,更加關(guān)注奶牛背部,減少背景雜物信息對體質(zhì)量評估的影響;同時在DETR網(wǎng)絡(luò)預(yù)測模塊中添加了含有交替全連接層的體質(zhì)量預(yù)測單元,能夠?qū)δ膛sw質(zhì)量相關(guān)特征信息進(jìn)行更好的提取,實(shí)現(xiàn)了在檢測奶牛個體的同時對奶牛體質(zhì)量進(jìn)行預(yù)測。

(4)與現(xiàn)有其他體質(zhì)量評估模型對比,本文體質(zhì)量評估方法在奶牛數(shù)量更多的預(yù)測集中取得了更好的效果,其中MAE為17.21 kg,MRE為3.71%,單幅圖像平均預(yù)測時間為0.026 s。結(jié)果表明,本文提出的Cow-DETR體質(zhì)量評估方法可以利用奶牛背部深度圖像對奶牛的體質(zhì)量進(jìn)行較高精度的非接觸式評估,符合規(guī)模化牧場對奶牛體質(zhì)量評估的實(shí)際需求。

猜你喜歡
奶牛深度預(yù)測
乍暖還寒時奶牛注意防凍傷
無可預(yù)測
黃河之聲(2022年10期)2022-09-27 13:59:46
選修2-2期中考試預(yù)測卷(A卷)
選修2-2期中考試預(yù)測卷(B卷)
夏季奶牛如何預(yù)防熱應(yīng)激
深度理解一元一次方程
深度觀察
奶牛吃草
深度觀察
深度觀察
江达县| 唐河县| 乌恰县| 文安县| 甘德县| 拉萨市| 延川县| 会理县| 武陟县| 阜康市| 武邑县| 婺源县| 边坝县| 容城县| 武陟县| 鹤峰县| 沈丘县| 吴堡县| 高雄市| 太仓市| 肇州县| 龙岩市| 新兴县| 万宁市| 炎陵县| 武夷山市| 松江区| 威宁| 石屏县| 伊川县| 滨海县| 台北市| 民县| 景泰县| 孟州市| 比如县| 隆尧县| 吉安县| 武隆县| 汶川县| 大荔县|