999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

飼喂輔助機(jī)器人的智能推料方法與試驗(yàn)研究

2022-07-08 01:50:10張勤胡嘉輝任海林
關(guān)鍵詞:檢測(cè)方法模型

張勤 胡嘉輝 任海林

(華南理工大學(xué) 機(jī)械與汽車工程學(xué)院,廣東 廣州 510640)

奶牛采食量是影響奶牛產(chǎn)奶和奶牛健康的重要因素。在規(guī)模化奶牛養(yǎng)殖過(guò)程中,奶牛場(chǎng)一般使用全混合日糧(TMR)技術(shù)保證飼料的合理配比,并通過(guò)投料車將混合好的飼料均勻地投喂到奶牛飼槽,每日2-3次。由于奶牛進(jìn)食過(guò)程中的挑食、拱料、競(jìng)爭(zhēng)搶食以及奶牛個(gè)體進(jìn)食量的差異[1],飼喂過(guò)程中,經(jīng)常會(huì)出現(xiàn)料槽內(nèi)飼料分布不均,飼料拱出料槽的情形,造成奶牛有料吃不到,嚴(yán)重影響了奶牛正常的自由采食行為。針對(duì)上述問(wèn)題,目前國(guó)內(nèi)外主要通過(guò)人工輔助或者機(jī)器人輔助的方法,定期推料,保障料槽內(nèi)的飼料分布,滿足奶牛的采食量需求。人工輔助的方法是通過(guò)人工或者人駕駛車輛進(jìn)入牛舍完成推料送料操作,該方法所需設(shè)備簡(jiǎn)單,容易實(shí)現(xiàn),但勞動(dòng)強(qiáng)度大,且人員的介入,易帶入外部病菌,增加了奶牛的患病風(fēng)險(xiǎn)。機(jī)器人代替人的智能飼喂輔助正在成為未來(lái)的發(fā)展方向。推料機(jī)器人是TMR投料車的得力助手,它可以完成全天多次后續(xù)推料工作,目前推料機(jī)器人主要有螺旋式和自轉(zhuǎn)式兩種[2-5],一般通過(guò)傳感器感知與牛欄的距離并按預(yù)設(shè)的距離、時(shí)間,準(zhǔn)時(shí)推送飼料。推料機(jī)器人的使用不但可以節(jié)約勞動(dòng)成本,還有利于增進(jìn)牛只采食量,已廣泛應(yīng)用在中、大型牧場(chǎng)中。但現(xiàn)有的推料機(jī)器人功能比較單一,只能完成均勻推料功能,無(wú)法依據(jù)奶牛個(gè)體采食量需求,實(shí)現(xiàn)個(gè)性化推料。因此,研究智能推料方法,滿足奶牛個(gè)體自由采食需求,具有重要的意義。

奶牛覓食位置的識(shí)別與定位是機(jī)器人智能推料的關(guān)鍵,也是實(shí)現(xiàn)低成本、高效率飼喂的重要保證。目前基于動(dòng)物耳標(biāo)的無(wú)線射頻識(shí)別(RFID)與定位方法技術(shù)較為成熟,但存在讀卡速度較慢、識(shí)別距離短以及易受干擾等問(wèn)題,為此國(guó)內(nèi)外學(xué)者做了大量的研究工作。Hokofarm集團(tuán)[6]研制了一種適用于TMR全混合日料的飼喂站,通過(guò)RFID技術(shù)識(shí)別進(jìn)站奶牛耳標(biāo),監(jiān)測(cè)該奶牛的采食量和飲水量;Brown-Brandl等[7]基于低頻RFID設(shè)計(jì)了一種新型的記錄肥豬攝食和飲水行為的系統(tǒng),通過(guò)讀取其耳標(biāo)來(lái)計(jì)算進(jìn)食和飲水時(shí)間,采集肥豬行為的詳細(xì)進(jìn)食信息;Adrion等[8]通過(guò)在牛頸枷上安裝超高頻(UHF)RFID來(lái)檢測(cè)奶牛是否處于進(jìn)食區(qū)域,通過(guò)判斷奶牛在區(qū)域內(nèi)的停靠時(shí)間來(lái)估算進(jìn)食時(shí)間;高振江等[9-10]在RFID的基礎(chǔ)上結(jié)合紅外牛位對(duì)中系統(tǒng),提高了牛只的識(shí)別準(zhǔn)確率,通過(guò)飼料點(diǎn)對(duì)點(diǎn)的補(bǔ)給,可有效預(yù)防奶牛進(jìn)食過(guò)程中的搶食現(xiàn)象。總體上基于耳標(biāo)的RFID定位方法主要應(yīng)用于牛只順序出入的場(chǎng)所。

基于機(jī)器視覺(jué)的識(shí)別與定位方面,文獻(xiàn)[11-12]分別通過(guò)在豬舍和牛舍的上方安裝攝像頭,實(shí)現(xiàn)了豬和牛的個(gè)體識(shí)別及其進(jìn)食情況的精準(zhǔn)監(jiān)測(cè);Kuan等[13]通過(guò)在飼喂區(qū)域安裝多個(gè)嵌入式視覺(jué)系統(tǒng),獲取整個(gè)奶牛場(chǎng)的飼喂區(qū)圖像,再依據(jù)牛臉識(shí)別算法,得到奶牛的進(jìn)食區(qū)域并計(jì)算每頭奶牛的日進(jìn)食總時(shí)間。相比于基于耳標(biāo)的RFID方法,基于機(jī)器視覺(jué)的識(shí)別與定位方法憑借其識(shí)別速度快、性價(jià)比高以及使用靈活等特點(diǎn),應(yīng)用范圍逐年擴(kuò)大,正在成為飼喂領(lǐng)域的研究熱點(diǎn)之一。

二維碼作為一種信息存儲(chǔ)量大、使用便捷的存儲(chǔ)技術(shù),近年來(lái)逐步應(yīng)用于精確飼喂的管理中。Park等[14]通過(guò)在每個(gè)豬欄安裝二維碼來(lái)實(shí)現(xiàn)對(duì)母豬的高效飼喂管理;Chen等[15]基于RFID和二維碼標(biāo)簽建立了一種完整的豬只管理系統(tǒng),通過(guò)掃描二維碼信息可以獲取豬的品種、接種情況、生長(zhǎng)記錄等相關(guān)信息,極大地提高了生產(chǎn)管理效率。

隨著計(jì)算機(jī)技術(shù)的發(fā)展,機(jī)器視覺(jué)和深度學(xué)習(xí)技術(shù)因其形式靈活、抗干擾強(qiáng)的特點(diǎn)而被逐步應(yīng)用到養(yǎng)殖業(yè)中[16-22]。YOLO[23]作為一種一階段檢測(cè)算法,相比于Fast R-CNN[24]、Faster R-CNN[25]等二階段檢測(cè)算法,可實(shí)現(xiàn)端對(duì)端的檢測(cè),在保證檢測(cè)精度的同時(shí),具有很大的檢測(cè)速度優(yōu)勢(shì),其新版本YOLOv4[26]兼具高精度和實(shí)時(shí)性的特點(diǎn),與精準(zhǔn)送料的需求非常契合。

在以上研究的基礎(chǔ)上,針對(duì)目前奶牛飼喂過(guò)程中推料送料方法的局限性,本研究引入二維碼標(biāo)牌作為牛頸枷的定位標(biāo)簽,結(jié)合機(jī)器視覺(jué)和深度學(xué)習(xí)技術(shù),提出了一種飼喂輔助機(jī)器人的智能推料方法。首先基于YOLOv4深度學(xué)習(xí)模型得到二維碼標(biāo)牌和牛頭的檢測(cè)框區(qū)域,通過(guò)預(yù)處理和預(yù)測(cè)算法對(duì)二維碼標(biāo)牌的檢測(cè)框區(qū)域進(jìn)行實(shí)時(shí)識(shí)別與跟蹤;然后將二維碼標(biāo)牌與牛頭進(jìn)行匹配,確定覓食牛所在的采食頸枷位置,根據(jù)機(jī)器人與頸枷相對(duì)位置關(guān)系確定送料的目標(biāo)位置,并通過(guò)控制推板的角度實(shí)現(xiàn)定點(diǎn)推料、送料功能。

1 智能推料方法

1.1 機(jī)器人系統(tǒng)與工作原理

機(jī)器人系統(tǒng)由視覺(jué)系統(tǒng)、控制系統(tǒng)、移動(dòng)小車和執(zhí)行推板機(jī)構(gòu)組成,如圖1所示。移動(dòng)小車通過(guò)磁導(dǎo)航按照規(guī)定的路線移動(dòng)。視覺(jué)系統(tǒng)由3只攝像頭組成,攝像頭1和攝像頭2為網(wǎng)絡(luò)攝像頭,用于采集、監(jiān)測(cè)飼喂過(guò)程、飼料情況,并傳輸圖像信息到奶牛場(chǎng)控制中心,攝像頭3用于在本地采集奶牛和頸枷二維碼信息。二維碼標(biāo)牌作為奶牛頸枷的定位標(biāo)簽,通過(guò)攝像頭3來(lái)識(shí)別奶牛是否在頸枷內(nèi),可判斷奶牛的采食需求。控制系統(tǒng)根據(jù)采集到的余料信息、奶牛采食需求以及采食頸枷位置,控制執(zhí)行推板機(jī)構(gòu)改變推板角度以實(shí)現(xiàn)多種推料模式。當(dāng)飼料較多時(shí),推板與機(jī)器人成30°角,機(jī)器人將拱出的飼料推入料槽,如圖2的AB段;當(dāng)殘余的料草較少甚至出現(xiàn)部分飼位空槽,且頸枷采食區(qū)沒(méi)有覓食奶牛時(shí),推板與機(jī)器人成90°角,收集余料,如圖2的BC、DE段;當(dāng)附近有牛只覓食時(shí),機(jī)器人將收集的余料推向正在覓食奶牛的飼槽內(nèi),如圖2的CD段,保證奶牛想吃吃得到。非工作狀態(tài)時(shí),推料機(jī)構(gòu)可以收納在移動(dòng)平臺(tái)的側(cè)面,節(jié)省空間。

圖1 機(jī)器人結(jié)構(gòu)Fig.1 Structure of robot

圖2 機(jī)器人智能推料過(guò)程示意圖Fig.2 Robot intelligent pushing process diagram

1.2 智能推料控制算法

使用二維碼標(biāo)牌作為奶牛頸枷的定位標(biāo)簽,基于YOLOv4深度檢測(cè)模型提取牛頭和二維碼標(biāo)牌的檢測(cè)區(qū)域;通過(guò)牛-碼匹配,確定覓食奶牛所在的頸枷位置;通過(guò)覓食奶牛位置信息、余料信息,引導(dǎo)機(jī)器人完成對(duì)應(yīng)模式的推料功能,滿足奶牛個(gè)體自由采食需求。

飼喂輔助機(jī)器人智能推料方法主要包括基于YOLOv4的牛頭和二維碼標(biāo)牌檢測(cè)框的提取與定位,基于檢測(cè)框區(qū)域的奶牛、二維碼識(shí)別與跟蹤,以及牛-碼的位置匹配與推板控制3部分,算法流程圖如圖3所示。

圖3 飼喂輔助機(jī)器人智能推料算法流程圖Fig.3 Flow chart of feeding assistant robot intelligent pushing algorithm

首先,使用YOLOv4目標(biāo)檢測(cè)模型對(duì)大量奶牛牛頭以及二維碼標(biāo)牌的RGB圖像進(jìn)行訓(xùn)練,訓(xùn)練過(guò)程中通過(guò)調(diào)整學(xué)習(xí)率等參數(shù)得到最優(yōu)的目標(biāo)檢測(cè)模型,并將該模型用于牛頭與二維碼標(biāo)牌檢測(cè)框的提取與定位。

然后,對(duì)基于YOLOv4得到的二維碼標(biāo)牌檢測(cè)框進(jìn)行預(yù)處理,去除噪聲,并將經(jīng)過(guò)預(yù)處理后的二值圖輸入Zbar庫(kù)中進(jìn)行解碼,獲取二維碼中的頸枷編號(hào)信息以及二維碼的位置信息。對(duì)于被遮擋或遇強(qiáng)反光導(dǎo)致YOLOv4無(wú)法檢測(cè)出的二維碼標(biāo)牌,則依據(jù)該標(biāo)牌以及同一圖像視野中其他可被檢測(cè)到的二維碼標(biāo)牌的前后幀變化關(guān)系,通過(guò)卡爾曼濾波器[27]對(duì)丟失的二維碼標(biāo)牌位置進(jìn)行預(yù)測(cè)跟蹤。最后,依據(jù)二維碼和頸枷恒定的寬度比例關(guān)系,動(dòng)態(tài)計(jì)算圖像視角下頸枷的寬度,生成虛擬頸枷;將牛頭檢測(cè)框區(qū)域的中點(diǎn)作為牛頭的目標(biāo)位置,計(jì)算牛頭檢測(cè)框的中點(diǎn)位置及其檢測(cè)框區(qū)域面積,并與頸枷位置比較,若牛在頸枷中,則實(shí)現(xiàn)牛-碼的位置匹配,獲取奶牛采食頸枷位置;判斷二維碼標(biāo)牌的位置是否處于推板的動(dòng)作檢測(cè)區(qū)域并依據(jù)牛-碼位置匹配信息、飼料分布信息控制推板完成對(duì)應(yīng)推料送料模式。

2 牛頭和二維碼標(biāo)牌檢測(cè)框的提取與定位

2.1 YOLOv4模型框架

圖4為本文算法使用的YOLOv4的模型結(jié)構(gòu),首先將攝像頭輸出的圖像轉(zhuǎn)化為416×416的RGB格式輸入網(wǎng)絡(luò)模型,并通過(guò)CSPDarkNet53主干網(wǎng)絡(luò)輸出得到3種不同尺寸(52×52、26×26、13×13)的特征圖;然后通過(guò)空間金字塔池化(SPP)和路徑聚合網(wǎng)絡(luò)(PANet)得到特征張量;最后利用輸出網(wǎng)絡(luò)部分輸出預(yù)測(cè)結(jié)果。本文需要對(duì)牛頭以及二維碼標(biāo)牌兩類目標(biāo)進(jìn)行檢測(cè)與定位,因此YOLOv4輸出的類別數(shù)設(shè)置為2,每個(gè)類別3個(gè)錨框,每個(gè)錨框包含4個(gè)錨框位置數(shù)據(jù)和1個(gè)目標(biāo)置信度數(shù)據(jù),因此最終YOLOv4模型輸出的張量長(zhǎng)度為21,即3×(1+2+4)。

圖4 YOLOv4網(wǎng)絡(luò)模型結(jié)構(gòu)Fig.4 Structure of YOLOv4 network model

2.2 數(shù)據(jù)集的建立

訓(xùn)練YOLOv4模型所用的二維碼標(biāo)牌和奶牛牛頭圖像均采集于廣東省惠州某牧業(yè)公司,牧場(chǎng)奶牛均為黑白色荷斯坦奶牛,所采集的圖像分辨率大小為1 920×1 080。數(shù)據(jù)集中采集了不同角度的牛頭圖像和二維碼標(biāo)牌圖像共計(jì)3 000幅,其中2 400幅作為訓(xùn)練集,300幅作為驗(yàn)證集,300幅作為測(cè)試集。訓(xùn)練集用于訓(xùn)練數(shù)據(jù);驗(yàn)證集用于訓(xùn)練過(guò)程中對(duì)比預(yù)測(cè)目標(biāo)和標(biāo)記目標(biāo),判斷預(yù)測(cè)的正確率,從而作為超參數(shù)調(diào)整的依據(jù);測(cè)試集用于數(shù)據(jù)訓(xùn)練完成后對(duì)模型的預(yù)測(cè)精度進(jìn)行評(píng)估。所有采集的圖像均使用LabelImg圖像標(biāo)注軟件進(jìn)行標(biāo)注,標(biāo)注后的圖像自動(dòng)生成Pascal VOC格式的xml文件,最后轉(zhuǎn)為txt文件用于數(shù)據(jù)訓(xùn)練。

2.3 模型參數(shù)設(shè)置與最優(yōu)模型選擇

訓(xùn)練過(guò)程中,將64幅圖像作為一個(gè)批次喂入訓(xùn)練模型,每次喂入都會(huì)反向計(jì)算一次權(quán)值參數(shù)。本次訓(xùn)練共對(duì)YOLOv4模型進(jìn)行了8 000次迭代,權(quán)值衰減速率設(shè)置為0.000 5,動(dòng)量因子設(shè)置為0.9,初始學(xué)習(xí)率設(shè)置為0.001,分別在第4 000和第6 000次迭代時(shí)將學(xué)習(xí)率降低為初始學(xué)習(xí)率的10%和1%,以減少訓(xùn)練后期的數(shù)據(jù)振蕩,達(dá)到更優(yōu)的效果。最終的損失函數(shù)變化如圖5所示,訓(xùn)練結(jié)束時(shí),損失值穩(wěn)定在0.65。

在訓(xùn)練過(guò)程中,為了得到最優(yōu)訓(xùn)練模型,需要一定的評(píng)價(jià)指標(biāo)對(duì)模型進(jìn)行評(píng)估。由于本文的網(wǎng)絡(luò)模型用于多標(biāo)簽圖像分類任務(wù),因此選取平均精度均值(mAP,mAP)作為模型評(píng)價(jià)指標(biāo):

(1)

式中,n為類別序號(hào),N為識(shí)別對(duì)象個(gè)體數(shù),P(n)、R(n)分別為類別n的準(zhǔn)確率、召回率,NTP(n)、NFP(n)、NFN(n)分別為類別n的真實(shí)正樣本數(shù)量、虛假正樣本數(shù)量、虛假負(fù)樣本數(shù)量。

模型mAP的迭代變化如圖5所示,從第1 000次迭代開(kāi)始,每完成100次迭代輸出一次模型權(quán)值,并計(jì)算相應(yīng)的模型平均指標(biāo),選取取得最優(yōu)指標(biāo)時(shí)的模型作為最優(yōu)模型。由圖5可知,在8 000次訓(xùn)練中,當(dāng)?shù)螖?shù)達(dá)到7 900時(shí),mAP達(dá)到最大值97.2%,此時(shí)的準(zhǔn)確率P為98%、召回率R為96%,因此選擇迭代7 900次時(shí)的模型作為最優(yōu)模型。

圖5 損失值和平均精度隨迭代次數(shù)的變化Fig.5 Variation of loss value and average precision with iteration number

3 二維碼標(biāo)牌的識(shí)別與跟蹤

二維碼標(biāo)牌的識(shí)別與跟蹤效果是實(shí)現(xiàn)智能推料的關(guān)鍵。由于牛舍環(huán)境復(fù)雜,當(dāng)前幀中二維碼標(biāo)牌分為可被YOLOv4模型連續(xù)檢測(cè)到和無(wú)法被YOLOv4模型連續(xù)檢測(cè)到兩類。對(duì)于因二維碼部分信息丟失而無(wú)法被模型有效提取的二維碼,根據(jù)該標(biāo)牌以及同一圖像視野中其他可被檢測(cè)到的二維碼標(biāo)牌的前后幀變化關(guān)系,通過(guò)卡爾曼濾波器可對(duì)丟失的二維碼標(biāo)牌位置進(jìn)行預(yù)測(cè)跟蹤,再提取其位置和存儲(chǔ)信息。具體算法框圖如圖3中Ⅰ部分所示。

3.1 檢測(cè)框區(qū)域的二維碼圖像預(yù)處理

對(duì)于可被YOLOv4檢測(cè)到的二維碼標(biāo)牌,由于存在反光、污漬等現(xiàn)象,一些被檢測(cè)到的標(biāo)牌可能無(wú)法被Zbar識(shí)別。為提高二維碼的識(shí)別效果,本文在文獻(xiàn)[28]方法(Sauvola方法)的基礎(chǔ)上,設(shè)計(jì)了基于直方圖均衡化的動(dòng)態(tài)寬度Sauvola自適應(yīng)閾值方法,對(duì)二維碼圖像進(jìn)行預(yù)處理。具體步驟如下:

(1)將檢測(cè)框中的圖像進(jìn)行灰度化,然后通過(guò)高斯濾波去除二維碼圖像中因不良光照引起的高斯噪聲;

(2)使用直方圖均衡化方法對(duì)二維碼圖像的光線分布進(jìn)行均衡,避免光線分界線形成的小縫隙,有效降低二維碼圖像部分反光引起的光線分布不均的影響;

(2)

(3)

式中,b為上一幀圖像中二維碼的個(gè)數(shù),Li為上一幀圖像中第i個(gè)二維碼的寬度值,M為二維碼的版本編號(hào)(1-40)。

由于自適應(yīng)閾值法的窗口W(x,y)很大程度上決定了二維碼圖像二值化后的效果,而窗口大小W(x,y)與檢測(cè)圖像中的黑色文本的筆畫寬度有關(guān)[29],二維碼作為筆畫寬度均勻的圖像,與文本具有相似的特征,因此,可間接計(jì)算得到窗口的最優(yōu)寬度Wbest(x,y):

Wbest(x,y)=4d+1

(4)

得到窗口寬度后,使用Sauvola局部自適應(yīng)閾值方法可獲得圖像的二值圖。Sauvola局部自適應(yīng)閾值方法中,局部閾值T(x,y)通過(guò)局部均值m(x,y)和局部標(biāo)準(zhǔn)差δ(x,y)計(jì)算得到,具體計(jì)算公式為

(5)

式中,k為Sauvola局部自適應(yīng)閾值修正參數(shù),R為8位灰度圖像標(biāo)準(zhǔn)差最大值。

3.2 信息缺失二維碼的關(guān)聯(lián)預(yù)測(cè)

在檢測(cè)過(guò)程中,二維碼標(biāo)牌可能會(huì)被連續(xù)遮擋或受到強(qiáng)烈反光,造成其特征丟失或缺失嚴(yán)重,以至于YOLOv4檢測(cè)模型無(wú)法得到二維碼區(qū)域的位置。為此,需要通過(guò)預(yù)測(cè)的方法來(lái)估算二維碼的實(shí)際位置。由于特征連續(xù)丟失,采用一般的單步預(yù)測(cè)方法會(huì)缺少反饋信息,而采用多步預(yù)測(cè)方法則會(huì)造成數(shù)據(jù)的累計(jì)誤差且無(wú)法適應(yīng)檢測(cè)過(guò)程二維碼的變化速度。為此,本文通過(guò)同一圖像視野下多個(gè)二維碼標(biāo)牌位置的相關(guān)聯(lián)信息對(duì)缺失的二維碼位置進(jìn)行預(yù)測(cè),即通過(guò)同一圖像視野下其他可被連續(xù)檢測(cè)到的二維碼標(biāo)牌的位置變化信息,間接得出被預(yù)測(cè)二維碼標(biāo)牌的測(cè)量位置,將多步預(yù)測(cè)問(wèn)題轉(zhuǎn)化為單步預(yù)測(cè),然后通過(guò)卡爾曼濾波器對(duì)其真實(shí)位置進(jìn)行預(yù)測(cè)。具體步驟如下:

(6)

式中,Δxj=xj,t-xj,t-1,c為同一幀圖像中可被YOLOv4檢測(cè)到的二維碼標(biāo)牌檢測(cè)框的數(shù)量。

(7)

(8)

4 牛-碼位置匹配與推板控制

為了實(shí)現(xiàn)牛-碼位置的匹配,牛頭在當(dāng)前圖像中的位置ai用牛頭檢測(cè)框的中心點(diǎn)表示。

在獲得牛頭、二維碼標(biāo)牌的位置信息后,將奶牛與頸枷二維碼標(biāo)牌進(jìn)行匹配,從而確定奶牛所在的頸枷位置。由于頸枷和二維碼的寬度比例恒定,通過(guò)計(jì)算當(dāng)前幀所有可被Zbar識(shí)別解碼的二維碼的平均寬度,可以間接得到頸枷的寬度Ld;調(diào)整所生成虛擬頸枷的相對(duì)位置,使其與實(shí)際的頸枷重合;然后通過(guò)判斷圖像中牛頭檢測(cè)框的中心位置ai是否在虛擬頸枷范圍內(nèi)來(lái)確定可能在頸枷內(nèi)的奶牛;最后通過(guò)牛頭檢測(cè)框區(qū)域面積Si判斷牛頭的遠(yuǎn)近,以過(guò)濾頸枷以外區(qū)域奶牛的干擾,從而確定覓食奶牛所在的頸枷的位置。設(shè)Ath,head為牛頭的面積閾值,AQR為上一幀計(jì)算得到的二維碼平均面積,則可設(shè)

Ath,head=ksAQR

(9)

式中,ks為牛頭和二維碼的面積比例系數(shù),通過(guò)現(xiàn)場(chǎng)實(shí)驗(yàn)標(biāo)定得出。根據(jù)牛舍現(xiàn)場(chǎng)情況設(shè)置ks,可靈活調(diào)整面積閾值。設(shè)xj為二維碼的中心位置,則牛-碼匹配條件表示為

(10)

相互匹配的牛頭和二維碼標(biāo)牌用二維碼所存儲(chǔ)的數(shù)字標(biāo)號(hào)標(biāo)記,并將匹配信息存儲(chǔ)到本地。

根據(jù)獲取的覓食奶牛頸枷位置、飼料分布情況和控制推板角度完成智能多模式的推料。

5 實(shí)驗(yàn)研究

智能推料機(jī)器人所用計(jì)算機(jī)配置為AMD Ryzen 5 3600CPU,主頻3.6 GHz,8 GB的RTX2070S顯卡以及16 GB的內(nèi)存;相機(jī)為150°高清1080P無(wú)畸變工業(yè)相機(jī);程序?yàn)榛赪indows 10(64位)系統(tǒng)和VS2017開(kāi)發(fā)平臺(tái)。

實(shí)驗(yàn)地點(diǎn)在惠州市某牧場(chǎng)進(jìn)行,該牧場(chǎng)有8個(gè)大型牛棚,共飼養(yǎng)了一千多頭荷斯坦奶牛。隨機(jī)選取其中一個(gè)牛棚作為實(shí)驗(yàn)場(chǎng)所,通過(guò)對(duì)位于牛棚中部的20個(gè)頸枷位置進(jìn)行不同時(shí)間段的10次測(cè)試實(shí)驗(yàn),測(cè)試二維碼識(shí)別與跟蹤精度以及智能送料的效果。在測(cè)試過(guò)程中,機(jī)器人中心位置距離頸枷約1.6 m,機(jī)器人通過(guò)磁條導(dǎo)航以0.25 m/s的速度直線行走。圖6為實(shí)驗(yàn)現(xiàn)場(chǎng)圖,可見(jiàn)牛舍現(xiàn)場(chǎng)光線不均,二維碼標(biāo)牌存在反光現(xiàn)象。圖7為機(jī)器人攝像頭視角圖像。

圖6 實(shí)驗(yàn)現(xiàn)場(chǎng)圖Fig.6 Experimental scene

1—綠色框(能夠解碼的二維碼精確區(qū)域);2—紫色框(虛擬頸枷區(qū)域);3—黃色框(奶牛牛頭檢測(cè)框);4—藍(lán)色框(二維碼標(biāo)牌檢測(cè)框);5—紅色矩形區(qū)域(推板動(dòng)作檢測(cè)區(qū)域)

5.1 二維碼圖像預(yù)處理實(shí)驗(yàn)

通過(guò)統(tǒng)計(jì)機(jī)器人推料記錄畫面中YOLOv4檢測(cè)出的標(biāo)牌數(shù)量以及Zbar可解碼識(shí)別的標(biāo)牌數(shù)量,計(jì)算總體識(shí)別率,以此評(píng)價(jià)檢測(cè)框區(qū)域的二維碼預(yù)處理效果。實(shí)驗(yàn)中Sauvola方法的R為128,k為0.5。3種反光情況下獲取的二維碼灰度圖,經(jīng)過(guò)3種不同方法(最大類間差法OTSU[30]、Sauvola方法[28]、本文方法)預(yù)處理后得到的二值化圖比較如圖8所示。圖中圈出的區(qū)域?yàn)槎S碼中受反光影響較大的部分,從圖中可以看出,相比于OTSU方法、Sauvola方法,采用本文方法預(yù)處理后得到的二值化圖像更清晰。這3種預(yù)處理方法的測(cè)試實(shí)驗(yàn)識(shí)別率依次為93.5%、94.4%、96.0%,本文方法能夠更好地適應(yīng)反光情況下二維碼的提取。

圖8 3種方法對(duì)二維碼預(yù)處理后得到的二值化圖Fig.8 Binary images obtained by preprocessing the two-dimensional code with three methods

5.2 二維碼預(yù)測(cè)追蹤實(shí)驗(yàn)

對(duì)于被遮擋或遇強(qiáng)反光導(dǎo)致YOLOv4無(wú)法檢測(cè)出的二維碼標(biāo)牌,則依據(jù)該標(biāo)牌以及同一圖像視野中其他可被檢測(cè)到的二維碼標(biāo)牌的前后幀變化關(guān)系,通過(guò)卡爾曼濾波器[26]對(duì)丟失二維碼的標(biāo)牌位置進(jìn)行預(yù)測(cè)跟蹤。通過(guò)實(shí)驗(yàn)對(duì)預(yù)測(cè)跟蹤效果進(jìn)行評(píng)價(jià)。

選取實(shí)驗(yàn)過(guò)程記錄的20段視頻,每段視頻中隨機(jī)選取一個(gè)二維碼截去其位置數(shù)據(jù)序列60幀,然后采用3.2節(jié)方法對(duì)其實(shí)際位置進(jìn)行預(yù)測(cè)。

機(jī)器人在變速運(yùn)動(dòng)(從速度0.25 m/s到停止)和勻速運(yùn)動(dòng)(速度為0.25 m/s)過(guò)程中對(duì)二維碼位置的預(yù)測(cè)結(jié)果如圖9所示。每段視頻預(yù)測(cè)的二維碼位置誤差的平均值及均方差值如圖10所示。從圖10可知,在二維碼標(biāo)牌連續(xù)丟失60幀的情況下,20次預(yù)測(cè)過(guò)程中二維碼預(yù)測(cè)位置與實(shí)際位置的最大差值在14個(gè)像素點(diǎn)以內(nèi)。現(xiàn)場(chǎng)實(shí)驗(yàn)中頸枷的寬度為750 mm,在圖像中約在490~510像素之間,因此可計(jì)算得到丟失二維碼的預(yù)測(cè)位置用于智能推料的定位精度為±2.85%,即在±21 mm以內(nèi),滿足實(shí)時(shí)送料精度要求。

圖9 機(jī)器人變速和勻速運(yùn)動(dòng)時(shí)二維碼位置跟蹤預(yù)測(cè)結(jié)果Fig.9 Tracking and predicting results of the two-dimensional code position for robot with variable speed and uniform speed

圖10 二維碼位置跟蹤預(yù)測(cè)誤差Fig.10 Prediction error of the two-dimensional code position tracking

5.3 智能送料實(shí)驗(yàn)

首先,在實(shí)驗(yàn)現(xiàn)場(chǎng)完成式(9)中ks的標(biāo)定。考慮到不同牛棚中的奶牛生長(zhǎng)時(shí)期并不相同,即奶牛牛頭在圖像中的面積大小也不相同,因此該參數(shù)需要進(jìn)行現(xiàn)場(chǎng)標(biāo)定,以確保算法能實(shí)現(xiàn)對(duì)遠(yuǎn)處奶牛的準(zhǔn)確過(guò)濾。首先使機(jī)器人位于磁條上進(jìn)行直線移動(dòng),多次記錄伸出頸枷采食的奶牛的牛頭檢測(cè)框與二維碼標(biāo)牌檢測(cè)框的面積之比,取所記錄比值的平均值作為該牛棚的牛-碼面積比值,經(jīng)現(xiàn)場(chǎng)實(shí)際測(cè)試,將該比值乘以0.6作為ks的值,能夠較好地分割遠(yuǎn)處牛頭。

然后,在投料后的不同時(shí)間段的時(shí)間點(diǎn)各進(jìn)行10次智能推料實(shí)驗(yàn)。實(shí)驗(yàn)時(shí),天氣晴朗,光線充足,實(shí)驗(yàn)進(jìn)行的時(shí)間點(diǎn)分別為北京時(shí)間9點(diǎn)、13點(diǎn)、17點(diǎn)。每次實(shí)驗(yàn)中奶牛的采食位置和料草的分布情況隨機(jī),機(jī)器人實(shí)時(shí)融合牛-碼位置匹配信息、余料分布信息,根據(jù)算法自主決策推料模式,控制其推板改變推料角度,完成多種推料模式。實(shí)驗(yàn)過(guò)程中,工作人員全程跟蹤、監(jiān)測(cè)記錄,并對(duì)機(jī)器人送料行為進(jìn)行分析,如果機(jī)器人自主決策的模式與人工飼喂選擇一致,則認(rèn)為機(jī)器人送料準(zhǔn)確。現(xiàn)場(chǎng)實(shí)驗(yàn)的結(jié)果顯示,送料的平均準(zhǔn)確率達(dá)到100%。實(shí)驗(yàn)過(guò)程中平均每幅圖像使用圖形處理器(GPU)處理的時(shí)間為34.4 ms,能夠滿足機(jī)器人送料的實(shí)時(shí)性要求。

6 結(jié)論

針對(duì)推料機(jī)器人功能單一,難以滿足奶牛自由采食需求問(wèn)題,提出了一種飼喂輔助機(jī)器人的智能推料方法。首先通過(guò)YOLOv4深度檢測(cè)模型提取牛頭和二維碼標(biāo)牌的檢測(cè)框區(qū)域,采用基于直方圖均衡化的動(dòng)態(tài)寬度Sauvola自適應(yīng)閾值方法,對(duì)二維碼檢測(cè)框進(jìn)行預(yù)處理,以提高二維碼的識(shí)別率;然后基于卡爾曼濾波器的多二維碼相關(guān)聯(lián)預(yù)測(cè)方法,對(duì)漏檢二維碼進(jìn)行準(zhǔn)確預(yù)測(cè),以提高視覺(jué)系統(tǒng)對(duì)強(qiáng)光線和遮擋的適應(yīng)能力;最后通過(guò)牛-碼匹配確定覓食奶牛所在的頸枷位置,并根據(jù)覓食奶牛位置信息、余料信息,引導(dǎo)機(jī)器人完成對(duì)應(yīng)模式的推料功能,滿足奶牛個(gè)體自由采食需求。研究和實(shí)驗(yàn)結(jié)果表明:本文方法對(duì)二維碼的識(shí)別率達(dá)到了96.0%;在二維碼標(biāo)牌連續(xù)丟失60幀的情況下,本文方法對(duì)二維碼的跟蹤預(yù)測(cè)精度為±2.85%,即在±21 mm以內(nèi);現(xiàn)場(chǎng)實(shí)驗(yàn)中每幀圖像在GPU中處理的平均時(shí)間為34.4 ms;智能送料準(zhǔn)確率達(dá)100%,滿足機(jī)器人智能推料要求。本文以奶牛飼喂為例提出的智能推料方法,同樣適用于復(fù)雜環(huán)境下其他動(dòng)物的飼喂輔助。

不同天氣情況、不同季節(jié)、不同光照等情況下的全天候現(xiàn)場(chǎng)實(shí)驗(yàn)分析與驗(yàn)證,以及算法優(yōu)化,將是今后研究的重點(diǎn)。

猜你喜歡
檢測(cè)方法模型
一半模型
“不等式”檢測(cè)題
“一元一次不等式”檢測(cè)題
“一元一次不等式組”檢測(cè)題
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
3D打印中的模型分割與打包
小波變換在PCB缺陷檢測(cè)中的應(yīng)用
用對(duì)方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
主站蜘蛛池模板: 国产正在播放| 久久久四虎成人永久免费网站| 国产玖玖玖精品视频| 国产成人超碰无码| 欧洲精品视频在线观看| 国产迷奸在线看| 日本一本正道综合久久dvd| 青青操视频在线| 亚洲日韩Av中文字幕无码| 97超碰精品成人国产| 日本久久网站| 久久亚洲美女精品国产精品| 无码区日韩专区免费系列| 美女视频黄又黄又免费高清| 日韩精品久久无码中文字幕色欲| 国产成+人+综合+亚洲欧美| 亚洲色精品国产一区二区三区| 国产91丝袜在线观看| 日韩人妻少妇一区二区| 午夜综合网| 精品久久久久久久久久久| 在线99视频| 国产无人区一区二区三区| 日韩欧美国产区| 波多野结衣一区二区三区AV| 国产黄色免费看| 成人国内精品久久久久影院| 国产在线自揄拍揄视频网站| 欧美五月婷婷| 国产导航在线| 亚洲精品无码久久毛片波多野吉| 国产成人无码AV在线播放动漫| 中文字幕人妻av一区二区| 亚洲精品日产AⅤ| 波多野结衣AV无码久久一区| 国产高清无码第一十页在线观看| 亚洲国产精品美女| 国产一区二区三区在线观看视频| 日本一本正道综合久久dvd| www.av男人.com| 伊人久热这里只有精品视频99| 制服丝袜在线视频香蕉| 精品無碼一區在線觀看 | 亚洲综合婷婷激情| 草草影院国产第一页| 国产综合精品日本亚洲777| 国产精品免费电影| 日韩 欧美 国产 精品 综合| 美女视频黄又黄又免费高清| 中文字幕无码电影| 国产欧美网站| 国产91在线|中文| 国产福利免费视频| 国产色伊人| 国产成本人片免费a∨短片| 亚洲国产精品一区二区第一页免| 91午夜福利在线观看| 国产网站一区二区三区| 久久国产精品夜色| 四虎国产精品永久一区| 国产欧美日韩精品综合在线| 国产高清无码麻豆精品| 日韩精品免费一线在线观看| 欧美成人h精品网站| 午夜精品区| 亚洲国产一区在线观看| 国产成人精品免费视频大全五级 | 91精品国产无线乱码在线| 97视频精品全国在线观看| 亚洲日韩精品综合在线一区二区| 特级毛片免费视频| 一级毛片免费的| 国产精品爽爽va在线无码观看| 久久久久青草线综合超碰| 在线不卡免费视频| 国产亚洲视频播放9000| 国产高清不卡视频| 久久大香伊蕉在人线观看热2| 国产精品免费电影| 色婷婷丁香| 亚洲天堂视频在线播放| 天天视频在线91频|