• 
    

    
    

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

      深度學(xué)習(xí)的移動(dòng)端可視耳標(biāo)檢測(cè)識(shí)別研究

      2022-04-15 04:24:14李碩陳春雨劉文龍
      應(yīng)用科技 2022年2期
      關(guān)鍵詞:耳標(biāo)樹莓豬只

      李碩,陳春雨,劉文龍

      哈爾濱工程大學(xué) 信息與通信工程學(xué)院,黑龍江 哈爾濱 150001

      近些年,隨著深度學(xué)習(xí)和移動(dòng)互聯(lián)網(wǎng)的不斷發(fā)展,大數(shù)據(jù)和人工智能越來(lái)越和我們的日常生活息息相關(guān),將很多人工智能移植應(yīng)用在移動(dòng)端上也成了熱點(diǎn)研究問題。如何將深度學(xué)習(xí)和移動(dòng)應(yīng)用緊密結(jié)合起來(lái),快速高效地在移動(dòng)端[1]部署深度學(xué)習(xí)模型成為了熱門話題。但由于在深度學(xué)習(xí)中,很多模型太大致使在嵌入式平臺(tái)[2]和移動(dòng)設(shè)備上使用不方便已經(jīng)成為當(dāng)前移動(dòng)部署所面臨的一大問題。目前,很多模型例如分類算法的模型大小基本都在500 MB 以上,在自然語(yǔ)言處理的模型方面其模型大小有很多在1 GB 以上,機(jī)器翻譯的模型大都也在500 MB 以上。對(duì)于嵌入式設(shè)備或一部手機(jī)來(lái)說(shuō),很難實(shí)現(xiàn)加載一個(gè)超過500 MB的模型。所以,怎么樣把一個(gè)大模型轉(zhuǎn)換成小模型是當(dāng)前面臨的一個(gè)嚴(yán)峻挑戰(zhàn)。因?yàn)樵谝苿?dòng)設(shè)備上,不僅是對(duì)存儲(chǔ)空間或者是內(nèi)存的限制,更多的是受限于能源消耗。因此,在移動(dòng)端不允許我們使用太大的模型。近年來(lái),我國(guó)的養(yǎng)殖業(yè)迅速發(fā)展,每年生豬出欄總數(shù)不斷創(chuàng)歷史新高。至2018 年底,我國(guó)生豬全年產(chǎn)量已突破7.2 億頭,與2000 年比較,增速為41%[3]。隨著養(yǎng)殖場(chǎng)向著更大規(guī)模發(fā)展,傳統(tǒng)人工觀察、飼養(yǎng)已經(jīng)無(wú)法滿足養(yǎng)殖的高效性,現(xiàn)代的、科學(xué)的生豬養(yǎng)殖模式被逐步推廣。在傳統(tǒng)的檢測(cè)系統(tǒng)中,對(duì)于豬只的個(gè)體識(shí)別主要采用耳標(biāo)射頻識(shí)別(radio frequency identification,RFID)技術(shù),但該技術(shù)在一定程度上會(huì)干擾豬只的正常生活[4],并且當(dāng)多個(gè)RFID 應(yīng)答器接近于接收器時(shí),低頻RFID 無(wú)法準(zhǔn)確識(shí)別出特定個(gè)體[5]。

      1 系統(tǒng)設(shè)計(jì)原理

      本系統(tǒng)采用豬場(chǎng)數(shù)據(jù)集是帶有快速反應(yīng)(quick response,QR)二維碼的耳標(biāo),數(shù)據(jù)集使用的QR 二維碼耳標(biāo)如圖1 所示,其具有能存儲(chǔ)大量信息、對(duì)變臟和破損的適應(yīng)能力強(qiáng)且可以從任意方向進(jìn)行讀取的特點(diǎn)。

      圖1 QR 二維碼耳標(biāo)

      本系統(tǒng)共分為2 部分:耳標(biāo)檢測(cè)和耳標(biāo)識(shí)別。利用神經(jīng)網(wǎng)絡(luò)模型對(duì)耳標(biāo)進(jìn)行檢測(cè),判斷豬只是否帶有耳標(biāo);同時(shí)采用ZXing 技術(shù)對(duì)于豬只的QR 二維碼耳標(biāo)進(jìn)行豬只個(gè)體身份識(shí)別,并且完成了在移動(dòng)端框架上的部署。在耳標(biāo)檢測(cè)部分,由于卷積神經(jīng)網(wǎng)絡(luò)在很多任務(wù)上效果很好但其學(xué)到的內(nèi)容和規(guī)則很難用人類理解的方式來(lái)呈現(xiàn)(相對(duì)于傳統(tǒng)機(jī)器學(xué)習(xí)算法例如決策樹或者邏輯回歸等),所以被很多人認(rèn)為是“黑盒”。本系統(tǒng)使用CAM[6]方法可視化模型感興趣的區(qū)域,增加模型的可信性。

      1.1 系統(tǒng)框架

      本系統(tǒng)由耳標(biāo)檢測(cè)和耳標(biāo)識(shí)別(對(duì)應(yīng)豬只個(gè)體身份)構(gòu)成,系統(tǒng)結(jié)構(gòu)如圖2 所示。利用移動(dòng)神經(jīng)網(wǎng)絡(luò)(mobile neural network,MNN)框架搭建的調(diào)用程序,同時(shí)調(diào)用耳標(biāo)檢測(cè)模塊和耳標(biāo)識(shí)別模塊。對(duì)于檢測(cè)到耳標(biāo)的時(shí)候查看耳標(biāo)識(shí)別的結(jié)果,最后對(duì)于檢測(cè)到耳標(biāo)但沒有識(shí)別結(jié)果的圖像數(shù)據(jù)進(jìn)行分析,尋找沒有識(shí)別的原因。

      圖2 系統(tǒng)結(jié)構(gòu)

      1.2 耳標(biāo)檢測(cè)

      本系統(tǒng)耳標(biāo)檢測(cè)部分的設(shè)計(jì)流程如圖3 所示。

      圖3 設(shè)計(jì)流程

      首先對(duì)豬場(chǎng)的豬只數(shù)據(jù)進(jìn)行采集,制作成豬只可視耳標(biāo)的數(shù)據(jù)集,在電腦端利用PyTorch 框架搭建模型,對(duì)標(biāo)記好的數(shù)據(jù)集進(jìn)行訓(xùn)練。當(dāng)模型收斂至一定程度后,生成開放神經(jīng)網(wǎng)絡(luò)交換[7](open neural network exchange,ONNX)格式文件,可用于模型在不同框架之間進(jìn)行轉(zhuǎn)移。再利用MNN轉(zhuǎn)化的應(yīng)用程序編程接口(application programming interface,API)將ONNX 格式文件轉(zhuǎn)換為MNN 類型的模型文件。

      1.2.1 算法選擇

      目前常見的分類網(wǎng)絡(luò)有ResNet[8],VGG-16[9],Inception-V4[10]等,根據(jù)文獻(xiàn)[11]中提到的在ImageNet數(shù)據(jù)集上與其他網(wǎng)絡(luò)從參數(shù)量、TOP-1、浮點(diǎn)運(yùn)算數(shù)(floating point operations,F(xiàn)LOPs)進(jìn)行對(duì)比,結(jié)果如表1 所示,由表1 可知,MobileNet_V3 small網(wǎng)絡(luò)在準(zhǔn)確率(TOP-1)上不如MobileNet_V2 和MnasNet 網(wǎng)絡(luò),但參數(shù)量和向前推理的計(jì)算量小于其他網(wǎng)絡(luò),尤其是FLOPs,即向前推理的計(jì)算量遠(yuǎn)小于其他網(wǎng)絡(luò)。在本系統(tǒng)中,出于對(duì)精度和延時(shí)時(shí)間的綜合考慮,選擇了更適合部署在嵌入式設(shè)備上的基于寬度因子和分辨率因子[12]構(gòu)建合適規(guī)模、合適速度的MobileNet_V3 small 網(wǎng)絡(luò)結(jié)構(gòu)。

      表1 網(wǎng)絡(luò)對(duì)比

      網(wǎng)絡(luò)基本結(jié)構(gòu)如圖4 所示,網(wǎng)絡(luò)的整體配置清單[11]如表2 所示。其網(wǎng)絡(luò)結(jié)構(gòu)的基本思想是把空間的相關(guān)性和通道間的相關(guān)性完全分離出來(lái),同時(shí)減少計(jì)算量和參數(shù)量[13]。由于在MobileNet_V3 small 的網(wǎng)絡(luò)結(jié)構(gòu)中使用了大量的3×3 卷積核,不僅對(duì)于模型的準(zhǔn)確率的影響較小,同時(shí)可以大大減少計(jì)算量,在保障了模型的準(zhǔn)確率的同時(shí)也加快了模型運(yùn)算的速度。

      圖4 網(wǎng)絡(luò)基本結(jié)構(gòu)

      表2 網(wǎng)絡(luò)整體配置清單

      1.2.2 移動(dòng)端推理框架選擇

      MNN 是一個(gè)輕量級(jí)的深度神經(jīng)網(wǎng)絡(luò)推理引擎,對(duì)于深度卷積神經(jīng)網(wǎng)絡(luò)的模型,在端側(cè)加載并且進(jìn)行推理和預(yù)測(cè)。跟Tensorflow、Caffe2 這些能同時(shí)進(jìn)行訓(xùn)練和推理功能的通用框架不同的是,MNN 更注重于模型在推理階段的加速和優(yōu)化,這樣是為了更好地提高在模型部署階段的效率,進(jìn)而可以更高效地在移動(dòng)端實(shí)現(xiàn)模型背后的業(yè)務(wù)。在大規(guī)模機(jī)器學(xué)習(xí)的應(yīng)用當(dāng)中,端智能應(yīng)用的最重要的模塊就是端側(cè)的推理引擎。由于大規(guī)模模型的部署在推理側(cè)中的計(jì)算量很大,約為訓(xùn)練側(cè)的10 倍以上,需要在有限算力和內(nèi)存等限制條件下充分利用資源,快速完成推理,所以對(duì)于推理側(cè)的優(yōu)化就顯得十分重要??傮w來(lái)說(shuō),模型是否能在端側(cè)運(yùn)行的最大決定因素就是端側(cè)推理引擎的優(yōu)劣,MNN 是一個(gè)可利用的且具有巨大優(yōu)勢(shì)的端側(cè)推理引擎。

      1.2.3 嵌入式平臺(tái)選擇

      本系統(tǒng)選取樹莓派4B[14]作為嵌入式平臺(tái),樹莓派4B 是個(gè)微型卡片式計(jì)算機(jī),可以支持Windows操作系統(tǒng)或Linux 操作系統(tǒng)的運(yùn)行,應(yīng)用在物聯(lián)網(wǎng)和嵌入式中,同時(shí)還可以當(dāng)作小型的服務(wù)器使用,完成某些特定的功能。與51 單片機(jī)和STM32等嵌入式微控制器相比,不僅可以使用IO 引腳完成同樣的控制操作,由于運(yùn)行有相應(yīng)的操作系統(tǒng),還可以實(shí)現(xiàn)更復(fù)雜的任務(wù)管理與調(diào)度,給開發(fā)者們開發(fā)更上層的應(yīng)用,提供了更大的操作和應(yīng)用空間。樹莓派可以將底層硬件和上層應(yīng)用連接起來(lái),實(shí)現(xiàn)物聯(lián)網(wǎng)的云控制與云管理,同時(shí)也可以將IO 控制忽略,直接使用樹莓派通過搭建小型網(wǎng)絡(luò)服務(wù)器來(lái)實(shí)現(xiàn)測(cè)試開發(fā)的功能和服務(wù)。樹莓派提供的IO 引腳與通用的PC 不同的地方還在于其可以直接對(duì)其他底層硬件進(jìn)行控制,完成通用PC 做不到的功能,且其體積和成本更小。

      1.3 耳標(biāo)識(shí)別

      本系統(tǒng)采用ZXing 技術(shù)對(duì)QR 二維碼耳標(biāo)進(jìn)行豬只個(gè)體身份識(shí)別。ZXing 是谷歌推出的用來(lái)識(shí)別多種格式條形碼的項(xiàng)目[15]。其API 包含了多種主流編程語(yǔ)言,具有良好的可定制性和擴(kuò)展性。

      ZXing 庫(kù)支持以下格式的條形碼編碼和解碼:UPC-A,UPC-E;EAN-8,EAN-13;39 碼;93 碼;QR 碼;數(shù)據(jù)矩陣等等。它的主要部分支持以下幾個(gè)功能:核心代碼的使用、適用于J2SE 客戶端、Android 客戶端(Barcode Scanner)以及Android 的集成(通過Intent 支持和Barcode Scanner 的集成)等。

      1.4 CAM 可視化方法

      本系統(tǒng)使用類激活映射可解釋方法,為卷積神經(jīng)網(wǎng)絡(luò)模型的分類圖像作可視化解釋,使特征區(qū)域更加明顯可見。通過CAM 使任何目標(biāo)特征的梯度經(jīng)過最后一個(gè)卷積層后產(chǎn)生大致的局部特征圖,凸顯出圖像中對(duì)目標(biāo)預(yù)測(cè)分類重要的區(qū)域,為模型中的故障模型提供了解釋依據(jù),使看起來(lái)不合理的預(yù)測(cè)有了合理的解釋。

      2 系統(tǒng)測(cè)試結(jié)果

      2.1 檢測(cè)模型訓(xùn)練與轉(zhuǎn)換

      2.1.1 數(shù)據(jù)準(zhǔn)備

      本系統(tǒng)使用的數(shù)據(jù)來(lái)自某豬場(chǎng)采集的豬只可視耳標(biāo)圖像共3 512 個(gè)數(shù)據(jù),其中包含1 756 個(gè)224×224 的正樣本(圖像中豬只帶有可視耳標(biāo)),1 756個(gè)224×224 的負(fù)樣本。對(duì)數(shù)據(jù)進(jìn)行隨機(jī)劃分為3 部分,其中訓(xùn)練集占整個(gè)數(shù)據(jù)集的80%,驗(yàn)證集占數(shù)據(jù)集的10%,測(cè)試集占數(shù)據(jù)集的10%。訓(xùn)練集和測(cè)試集、驗(yàn)證集的數(shù)據(jù)量比值大約為8∶1∶1,如表3 所示。

      表3 實(shí)驗(yàn)數(shù)據(jù)集劃分

      2.1.2 本地模型訓(xùn)練

      本系統(tǒng)使用NVIDIA RTX2060 顯卡進(jìn)行模型訓(xùn)練,模型訓(xùn)練的超參數(shù)設(shè)置為:總的迭代次數(shù)設(shè)置為100,批量訓(xùn)練的大小為10,初始學(xué)習(xí)率0.001。其中學(xué)習(xí)率和批次大小根據(jù)實(shí)驗(yàn)設(shè)備的硬性條件調(diào)整得到。

      2.1.3 模型轉(zhuǎn)換

      為了將模型部署到移動(dòng)端,先利用PyTorch在本地訓(xùn)練模型,當(dāng)模型收斂到一定程度的時(shí)候生成ONNX 模型文件,它也是一種模型文件的格式,再利用MNN 轉(zhuǎn)化的API 將ONNX 格式文件轉(zhuǎn)換為MNN 類型的模型文件。模型轉(zhuǎn)換后大小對(duì)比如表4 所示,由表4 可知實(shí)現(xiàn)了86% 的模型尺寸壓縮。

      表4 模型大小對(duì)比

      2.2 系統(tǒng)測(cè)試實(shí)現(xiàn)

      2.2.1 硬件實(shí)現(xiàn)

      在系統(tǒng)測(cè)試時(shí),樹莓派硬件連接如圖5 所示。左邊部分為樹莓派4B 和外接攝像頭,用來(lái)獲取圖像數(shù)據(jù),右邊部分是樹莓派外接顯示屏顯示程序調(diào)用頁(yè)面。

      圖5 硬件連接

      2.2.2 功能測(cè)試

      對(duì)豬只可視耳標(biāo)數(shù)據(jù)集中測(cè)試集中帶有QR二維碼耳標(biāo)的共178 張數(shù)據(jù)進(jìn)行測(cè)試。檢測(cè)、識(shí)別的測(cè)試結(jié)果如表5 所示。通過樹莓派外接攝像頭獲取QR 二維碼耳標(biāo)模擬豬場(chǎng)豬只的圖像數(shù)據(jù),檢測(cè)、識(shí)別結(jié)果如圖6 所示。

      表5 檢測(cè)、識(shí)別結(jié)果

      圖6 模擬檢測(cè)、識(shí)別結(jié)果

      由測(cè)試結(jié)果可知:

      1)耳標(biāo)檢測(cè)部分:準(zhǔn)確率為98.3%,有3 張有耳標(biāo)的沒有成功檢測(cè)出來(lái)。

      2)耳標(biāo)識(shí)別部分:對(duì)于成功檢測(cè)出耳標(biāo)的175 張圖像數(shù)據(jù)中,正確識(shí)別的數(shù)量約占92.5%,任選一張正確識(shí)別的結(jié)果如圖7 所示,漏識(shí)別的約占7.5%。查看測(cè)試結(jié)果發(fā)現(xiàn),當(dāng)QR 二維碼耳標(biāo)不全(圖8),耳標(biāo)圖像數(shù)據(jù)有臟物遮擋時(shí)(圖9),不能正確識(shí)別個(gè)體身份。對(duì)于不能成功檢測(cè)出耳標(biāo)的3 張圖片數(shù)據(jù)中,查看測(cè)試結(jié)果,都是屬于漏識(shí)別的,3 張圖片都為QR 二維碼耳標(biāo)不全的圖像。

      圖7 正確檢測(cè)和識(shí)別

      圖8 耳標(biāo)不全

      圖9 耳標(biāo)有臟物遮擋

      2.2.3 CAM 可視化

      類激活映射是將最后一個(gè)卷積層的輸出特征圖和該特征圖對(duì)應(yīng)的輸入圖像的仿射矩陣相結(jié)合,進(jìn)而生成與輸入圖像尺寸相同的掩碼圖[16],疊加到原圖上如圖10 所示。由圖10 可知,響應(yīng)越高的區(qū)域越能代表模型的分類依據(jù),由此可得,模型感興趣的區(qū)域集中在耳標(biāo)區(qū)域。

      圖10 CAM 可視化

      3 結(jié)論

      本系統(tǒng)以智能養(yǎng)殖為創(chuàng)新點(diǎn),從實(shí)際需求出發(fā),同時(shí)結(jié)合了可視耳標(biāo)的檢測(cè)和識(shí)別,更加準(zhǔn)確、高效地確定豬只的個(gè)體身份。在進(jìn)行一系列對(duì)比論證后,敲定了以輕量型MNN 為框架,結(jié)合MobileNet 卷積神經(jīng)網(wǎng)絡(luò)的方案來(lái)實(shí)現(xiàn)系統(tǒng)功能。利用樹莓派4B 作為嵌入式平臺(tái),最終完成了在可視耳標(biāo)檢測(cè)、識(shí)別在移動(dòng)端的部署,通過對(duì)于整套系統(tǒng)進(jìn)行測(cè)試,可以得到一個(gè)比較理想的測(cè)試結(jié)果。

      1)通過對(duì)于測(cè)試結(jié)果的查看,可以定位到無(wú)法正確識(shí)別的原因,對(duì)于可視耳標(biāo)有臟物遮擋的情況可以指導(dǎo)豬場(chǎng)人員對(duì)耳標(biāo)進(jìn)行擦拭,以達(dá)到重新識(shí)別的效果。

      2)通過CAM 可視化的方法可以得出模型感興趣的區(qū)域在耳標(biāo)部分,為人們更相信卷積神經(jīng)網(wǎng)絡(luò)提供依據(jù)。

      3)受限于數(shù)據(jù)集的數(shù)量,后續(xù)的改進(jìn)可以通過擴(kuò)充數(shù)據(jù)集來(lái)得到更理想的效果。

      4)后續(xù)可以修改網(wǎng)絡(luò)結(jié)構(gòu),在不損失精度的前提下提高模型檢測(cè)的速度。

      猜你喜歡
      耳標(biāo)樹莓豬只
      降低日糧粗蛋白并添加單體氨基酸對(duì)斷奶—育肥豬生長(zhǎng)性能和營(yíng)養(yǎng)排泄的影響(中)
      藏羊佩戴不同材質(zhì)和形狀耳標(biāo)的試驗(yàn)分析
      豬胃潰瘍的病因與防治措施
      秋冬季防應(yīng)激不可忽略飲水消毒
      基于樹莓派的騎行智能頭盔設(shè)計(jì)
      電子制作(2019年11期)2019-07-04 00:34:32
      豬只硒缺乏癥的預(yù)防措施和治療方法
      基于樹莓派的遠(yuǎn)程家居控制系統(tǒng)的設(shè)計(jì)
      電子制作(2017年17期)2017-12-18 06:40:43
      羔羊佩戴耳標(biāo)不當(dāng)引起破傷風(fēng)病
      響應(yīng)面法優(yōu)化紅樹莓酒發(fā)酵工藝
      家畜耳標(biāo)佩帶過程中常見的問題及處理方法
      屏山县| 武隆县| 峨山| 祁门县| 乌拉特前旗| 双峰县| 九江市| 巴彦县| 通海县| 广河县| 耿马| 江津市| 嘉禾县| 宽城| 长海县| 东兴市| 永丰县| 恩平市| 无极县| 淮滨县| 信阳市| 金塔县| 台南县| 新巴尔虎右旗| 射洪县| 新源县| 天长市| 沙洋县| 铜陵市| 镇平县| 大英县| 萨迦县| 犍为县| 桂平市| 惠州市| 铜梁县| 兴化市| 萍乡市| 灯塔市| 龙山县| 固阳县|