• 
    

    
    

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

      ?

      基于YOLOv5的魚塘養(yǎng)殖系統(tǒng)設計

      2022-07-04 01:02:50王琰郭祺赟畢美華
      電子測試 2022年10期
      關鍵詞:樹莓溶解氧串口

      王琰,郭祺赟,畢美華

      (杭州電子科技大學通信工程學院,浙江杭州,310016)

      0 引言

      近年來,隨著水產(chǎn)養(yǎng)殖業(yè)規(guī)模的迅速加大和監(jiān)控設備的普及,智能化的養(yǎng)殖狀態(tài)監(jiān)測和信息管理技術(shù)受到越來越廣泛的關注[1]。本文從魚塘養(yǎng)殖環(huán)境進行分析,設計了一套基于YOLOv5的魚塘養(yǎng)殖系統(tǒng)。此系統(tǒng)不僅可以實時監(jiān)測水體環(huán)境因素,還可以通過機器學習模型實現(xiàn)魚類的分類,方便記錄魚體活動,并針對魚類行為進行深入分析,反映魚體的生存情況[2],提高養(yǎng)殖效率,降低人工成本。

      1 系統(tǒng)設計方案

      本系統(tǒng)主要分為水質(zhì)監(jiān)測與目標檢測兩個部分。水質(zhì)監(jiān)測部分中,使用嵌入式單片機STM32與各類傳感器進行數(shù)據(jù)的讀取和分析,樹莓派與STM32之間使用串口通信協(xié)議獲取傳感器采集得到的數(shù)據(jù),再將傳感器的數(shù)據(jù)信息傳輸給Flask框架部署的Web端顯示。目標檢測部分使用樹莓派自帶的攝像頭進行拍照,然后使用已經(jīng)訓練好的模型進行識別,使用的模型基于yolov5,最后將識別結(jié)果傳輸?shù)紽lask框架,顯示在網(wǎng)頁上。圖1為機器學習和FLASK框架的養(yǎng)殖監(jiān)測設計的結(jié)構(gòu)圖。

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

      2 基于單片機系統(tǒng)的水質(zhì)監(jiān)測模塊

      在水質(zhì)監(jiān)測模塊中,使用嵌入式單片機獲取傳感器數(shù)據(jù)。單片機通過可以感知水質(zhì)環(huán)境的各類傳感器進行交互,并且通過定時循環(huán),可以做到定時采樣環(huán)境數(shù)據(jù)并且將原始數(shù)據(jù)進行處理打包,然后與樹莓派進行串口通信[3],將采集到的水質(zhì)數(shù)據(jù)發(fā)送給樹莓派,水質(zhì)檢測模塊的系統(tǒng)框圖如圖2所示。

      圖2 水質(zhì)監(jiān)測模塊系統(tǒng)框圖

      在傳感器交互端,本系統(tǒng)采用了四種傳感器來獲取水質(zhì)數(shù)據(jù),分別是溫度采集、濁度采集、pH采集和溶解氧采集。通過這四種傳感器,可以獲得較為準確的水質(zhì)數(shù)據(jù),同時這四種水質(zhì)數(shù)據(jù)對于魚類養(yǎng)殖有著至關重要的作用。

      對于魚塘的溫度采集,雖然單片機內(nèi)部自帶了溫度傳感器,但是因為芯片發(fā)熱導致溫升較大等問題,與實際溫度差別較大,并且制作防水外殼費時費力,難度大。因此本系統(tǒng)采用外接的方式,使用數(shù)字溫度傳感器DS18B20來得到較為準確的水溫。DS18B20的工作電壓范圍為3-5.5V,接線方便,封裝靈活,可以使用防水探頭工作,體積小,功耗低,抗干擾能力強,使得系統(tǒng)設計較為靈活,還可以在更為復雜的環(huán)境下使用。同時它有掉電儲存機制,設定的溫度分辨率會儲存在EEPROM中,以便在通電時直接讀取使用,不需要再次校正。利用單總線技術(shù)來使得單片機與其進行通信,只需要一條口線即可以實現(xiàn)雙向通信。

      濁度采集使用專用的總?cè)芙夤腆w(TDS)傳感器進行測量。其激勵源為交流信號,可以有效防止探頭極化,并且可以使用防水探頭工作,長期浸于水中采集數(shù)據(jù)。TDS傳感器在使用前需要進行校準修正參數(shù),在測量過程中,其會根據(jù)總?cè)芙夤腆w量輸出一個模擬電壓,單片機使用內(nèi)部模數(shù)轉(zhuǎn)換模塊采集這個電壓,并最后將其量化轉(zhuǎn)換成相應的溶解性固體總量。

      pH采集電路由穩(wěn)壓源電路、電壓跟隨電路與信號放大電路組成。與TDS傳感器一樣,采集pH使用的傳感器在使用前也需要進行校準。其校準方法為將pH傳感器的電極分別放入pH值不同的標準溶液中,并調(diào)節(jié)電位器旋鈕使模擬輸出口輸出電壓到指定值附近。pH傳感器使用防水探頭進行采集工作,輸出的模擬電壓值,需要通過單片機進行電壓采集與模數(shù)轉(zhuǎn)換,得到pH值結(jié)果。

      溶解氧采集傳感器在使用前需要進行兩點校準,即校準不同溫度下的飽和溶解氧。使用兩點校準可以進行溫度補償計算,適用于寬溫度范圍的溶解氧測量。當溫度固定時,電壓與溶解氧濃度成線性關系,可以由輸出電壓轉(zhuǎn)換得到水中的溶解氧。

      本系統(tǒng)所使用的樹莓派4B擁有兩個串口,分別是硬件串口ttyAMA0與mini串口ttyS0。其中硬件串口ttyAMA0有單獨的波特率時鐘源,性能好,穩(wěn)定性強,默認分配給藍牙模塊使用;而mini串口ttyS0相對功能簡單,穩(wěn)定性較差,并且波特率由CPU內(nèi)核時鐘提供,受內(nèi)核時鐘影響,默認分配給GPIO串口TXD0和RXD0。在樹莓派4B中,TX對應GPIO口8腳,RX對應GPIO口10腳。但在使用過程中需要注意,mini串口的波特率隨CPU內(nèi)核時鐘的變化而變化,如果使用該串口經(jīng)常會導致因時鐘頻率發(fā)生變化而產(chǎn)生的錯誤,因此需要將硬件串口映射到GPIO串口上,以保證串口信息交換的穩(wěn)定,而硬件串口默認是分配給板載藍牙使用,所以需要首先釋放掉硬件串口,并將其映射到GPIO串口。

      讀取傳感器信息的是自制的STM32F407最小系統(tǒng)板,使用串口1,對應的TXD為PA9,RXD為PA10。樹莓派發(fā)送定時信息到STM32,STM32在接收到消息后觸發(fā)串口中斷,STM32將當前采集到的溫度、PH值、水質(zhì)濁度和溶解氧信息回傳給樹莓派,以完成對水質(zhì)數(shù)據(jù)信息的獲取,樹莓派接收信息后刷新網(wǎng)頁,以實現(xiàn)數(shù)據(jù)在網(wǎng)頁上的動態(tài)更新。

      3 基于YOLOv5的目標檢測模塊

      首先,YOLOv5相比于早先的模型,例如Fast R-CNN,先前的檢測模型使用的是利用分類器或者定位器來執(zhí)行檢測,先生成可能的大邊框,再將模型應用與檢測多個位置和比例的圖像。將檢測到圖像較大可能性的區(qū)域作為結(jié)果。但是從YOLOv3開始,yolo就開始使用完全不同的方法進行預測,將單個神經(jīng)網(wǎng)絡應用于整個圖像,將圖像劃分成多個區(qū)域,預測區(qū)域邊框和概率,因為在測驗的時候采用的是全局上下關聯(lián)生成,所以有較快的速度。

      其次,YOLOv5相較于YOLOv3,在性能上有著很大的提升。我們使用的模型是根據(jù)YOLOv5s進行更改的,YOLOv5s是YOLOv5系列中特征圖寬度最小、深度最淺的模型。所以YOLOv5s的模型是最小的也是需要算力最少的一個模型。通過對比YOLOv5s和YOLOv5的其他模型,可以明顯的看到Y(jié)OLOv5的網(wǎng)絡最小,速度最快但是AP精度較低,考慮到我們只檢測魚類的檢測,同時樹莓派只能通過中央處理器進行運算,無專用的圖形處理器,其算力極低。因此yolov5s很適合我們在樹莓派上進行目標檢測。

      如圖3所示,YOLOv5主要分為四個部分,分別是輸入端,Backbone,Neck,Prediction。

      圖3 YOLOv5架構(gòu)

      相比YOLOv3輸入端增加了Mosaic數(shù)據(jù)增強,自適應瞄框計算,自適應圖片縮放。Mosaic為使用四張圖片進行隨機縮放剪裁,隨機排布的方式進行拼接。使用這種方法可以提高檢測數(shù)據(jù)集的豐富性,隨機縮放也可以提升對于小目標的檢測。有利于我們在需要檢測多條魚時出現(xiàn)較多小目標的時候的目標檢測。自適應瞄框是不斷優(yōu)化初始瞄框,提高瞄框的準確度。在YOLOv3、YOLOv4中,訓練不同的數(shù)據(jù)集時,計算初始錨框的值是通過單獨的程序運行的。在網(wǎng)絡訓練中,網(wǎng)絡在初始錨框的基礎上輸出預測框,進而和真實框groudtruth進行比對,計算兩者差距,再反向更新,迭代網(wǎng)絡參數(shù)。但YOLOv5中將此功能嵌入到代碼中,每次訓練時,自適應的計算不同訓練集中的最佳錨框值。自適應圖片縮放可以減少在檢測時候的計算量,有利于提高檢測速度。

      在Backbone加入了Focus結(jié)構(gòu)和CSP結(jié)構(gòu),在focus結(jié)構(gòu)中以切片操作為主,將圖片從608*608*3轉(zhuǎn)化為304*304*12的特征圖,經(jīng)過卷積核之后變成了304*304*32的特征圖。CSP結(jié)構(gòu)中采用兩種不同的CSP結(jié)構(gòu),在Yolov5s網(wǎng)絡中,CSP1_X結(jié)構(gòu)應用于Backbone主干網(wǎng)絡,另一種CSP2_X結(jié)構(gòu)則應用于Neck中,提高了檢測的準確度和效率。CSPNet(Cross Stage Partial Network):跨階段局部網(wǎng)絡,可以緩解以前需要大量推理計算的內(nèi)容。增強了學習能力,并且能夠在較少算力和內(nèi)存的情況下保持較好的準確性。

      在Neck中加入了FPN+PAN結(jié)構(gòu),采用借鑒CSPnet設計的CSP2結(jié)構(gòu),提高了網(wǎng)絡特征的融合能力。在Prediction中加入了GIOU_Loss。

      4 基于Flask框架的Web頁面顯示

      本系統(tǒng)使用Flask框架進行Web頁面的顯示。擁有豐富的工具包與活躍的開源社區(qū)Python語言,在Web開發(fā)數(shù)據(jù)可視化等領域的價值日漸增長。Flask[4]是由Python實現(xiàn)的一個Web微框架,讓我們可以使用Python語言快速實現(xiàn)一個網(wǎng)站或Web服務。通過該框架,從后端向前端發(fā)送數(shù)據(jù),前端拿到數(shù)據(jù)進行處理,可以通過折線圖或者表格的形式,將數(shù)據(jù)以可視化的方式展現(xiàn)出來,使數(shù)據(jù)更加客觀、更具說服力,能讓用戶清楚的獲得各種數(shù)據(jù)信息。使用樹莓派作為服務器,樹莓派使用ubuntu20.04,系統(tǒng)裝有Python3,可以完美運行pytorch以進行yolov5的圖像識別,同時運行Flask框架比較方便。

      現(xiàn)代Web框架使用路由技術(shù)來幫助用戶記住應用程序URL,可以直接訪問所需的頁面,而無需從主頁導航。route裝飾器是用于把一個函數(shù)綁定到一個 URL 上。導入Flask類,使用命令“app = Flask(__name__)” 創(chuàng)建此類的實例。使用命令“@app.route(‘’)”設置參數(shù),即可設置路由映射到下一行的函數(shù)。比如設置為“/”時,則每次訪問該頁面時都將執(zhí)行該路由映射的函數(shù)。同時,該行代碼還支持擴展,可以使用methods參數(shù)指定可接受的請求方式,如“GET”、“POST”等。在html文件中使用“href=”來使用鏈接,完成路由。使用“$.post(“”)”來使用post請求方式,該操作還可以將前端的參數(shù)傳送到后端。Flask框架還可以調(diào)用”render_template()”方法來渲染模板。在當前目錄下,創(chuàng)建一個名為template的子目錄,在該目錄下保存網(wǎng)頁html5文件,即可通過return render_template(index.html’)來渲染模板,使頁面更豐富。添加參數(shù),**變量名,即可直接傳遞改變量。比如輸入一個字典的名稱即可將該字典中包含的參數(shù)和信息傳遞到后端。

      通過該方式傳遞溫度信息、水質(zhì)信息和PH值到網(wǎng)頁上進行顯示。圖4為頁面顯示結(jié)果。

      圖4 Web端目標檢測結(jié)果顯示

      5 結(jié)束語

      本系統(tǒng)設計基于傳感器與機器學習方案,實現(xiàn)了基于YOLOv5的魚塘養(yǎng)殖系統(tǒng)。通過對多種傳感器進行分析和比對,綜合了系統(tǒng)成本及傳感器精度等因素,選取了較為合適的傳感器,以實現(xiàn)對水質(zhì)數(shù)據(jù)的測量。同時,本文通過樹莓派系統(tǒng)和自主搭建的基于FLASK的網(wǎng)站,實現(xiàn)了對水質(zhì)數(shù)據(jù)的網(wǎng)絡傳輸以及存儲,并且為用戶提供了清晰的用戶界面,為用戶提供了便利。同時,本方案借助機器學習及YOLOv5s模型,對常用魚塘養(yǎng)殖魚類進行分析,能夠快速準確的識別常用魚類,方便了用戶對不同的魚類的分辨,實現(xiàn)了對魚類的智能識別功能。

      猜你喜歡
      樹莓溶解氧串口
      淺談AB PLC串口跟RFID傳感器的通訊應用
      淺析水中溶解氧的測定
      基于樹莓派的騎行智能頭盔設計
      電子制作(2019年11期)2019-07-04 00:34:32
      基于樹莓派的遠程家居控制系統(tǒng)的設計
      電子制作(2017年17期)2017-12-18 06:40:43
      污水活性污泥處理過程的溶解氧增益調(diào)度控制
      城市河道洲灘對水流溶解氧分布的影響
      USB接口的多串口數(shù)據(jù)并行接收方法探索
      響應面法優(yōu)化紅樹莓酒發(fā)酵工藝
      中國釀造(2016年12期)2016-03-01 03:08:19
      基于藍牙串口適配器的GPS接收機與AutoCAD的實時無線通信
      地礦測繪(2015年3期)2015-12-22 06:27:26
      基于并行控制的FPGA多串口拓展實現(xiàn)
      独山县| 水富县| 北宁市| 五华县| 水富县| 长沙县| 周宁县| 万宁市| 蒙阴县| 九寨沟县| 雷州市| 鹤岗市| 安图县| 甘洛县| 平阳县| 武邑县| 宁蒗| 津南区| 浏阳市| 石嘴山市| 玉门市| 昌吉市| 那坡县| 邯郸县| 白玉县| 镇安县| 滨海县| 红河县| 全椒县| 石首市| 蒙城县| 渝北区| 沾化县| 甘南县| 阿城市| 府谷县| 汶上县| 航空| 台江县| 泾阳县| 南汇区|