基于機器學(xué)習農田驅鳥(niǎo)系統設計與實(shí)現*
*本論文基于江蘇省大學(xué)生創(chuàng )新實(shí)踐項目scx1901 《一個(gè)通過(guò)卷積神經(jīng)網(wǎng)絡(luò )進(jìn)行鳥(niǎo)類(lèi)識別的農田驅鳥(niǎo)系統》。
1 課題介紹
1.1 題目來(lái)源
據可考數據,每年農田里已經(jīng)成熟的農作物差不多會(huì )有25% 被鳥(niǎo)兒偷偷地啄食。經(jīng)過(guò)鳥(niǎo)類(lèi)學(xué)家無(wú)數試驗證明,鳥(niǎo)眼對532 nm 的綠色激光束最敏感[1],綠色激光束掃射過(guò)來(lái)時(shí),鳥(niǎo)類(lèi)猶如看到一根綠色大棒,可以達到驅鳥(niǎo)效果,并且國內外并沒(méi)有針對農田成熟的驅鳥(niǎo)方案。
1.2 應用背景
目前市面上已存在一些具有相同功能的產(chǎn)品,大多都使用紅外傳感器、微波運動(dòng)傳感器來(lái)探測是否有鳥(niǎo)飛入,其均能實(shí)現探測是否有鳥(niǎo)類(lèi)存在的效果,但是都具有以下缺點(diǎn):探測范圍小,多數產(chǎn)品探測半徑小于 10 m,只有少數能達到 20~30 m;探測目標不明確,僅能夠探測是否有溫度較高的運動(dòng)物體靠近,無(wú)法判斷靠近的物體是鳥(niǎo)類(lèi)還是人類(lèi)。而通過(guò)機器學(xué)習的算法使用攝像頭識別鳥(niǎo)類(lèi)的方法即可以完美克服這些缺點(diǎn)。
2 平臺選擇
2.1 嵌入式平臺選擇
2.1.1 NVIDIA Jetson Nano
NVIDIA Jetson Nano 是NVIDIA 為新一代自主機器設計的嵌入式系統,是一個(gè)低成本的AI 計算機,具備的性能和能效可以運行現代 AI 工作負載,并行運行多個(gè)神經(jīng)網(wǎng)絡(luò ),以及同時(shí)處理來(lái)自多個(gè)高清傳感器的數據,開(kāi)發(fā)板價(jià)格在600~700 元之間。
2.1.2 勘智K210
勘智K210 采用RISC-V出庫器架構,具備試聽(tīng)一體,自主IP 核與可編程能力強三大特點(diǎn),支持機器視覺(jué)與聽(tīng)覺(jué)的多模態(tài)識別,可廣泛應用于智能家居、智能園區、智能能耗和智能農業(yè)等場(chǎng)景,價(jià)格相對較低,開(kāi)發(fā)板價(jià)格在70~150 元之間。
2.1.3 Rockchip RK3399 SoC
RK3399 是瑞芯微推出的一款低功耗、高性能的應用處理器芯片,該芯片基于big.LITTLE 架構,即具有獨立的NEON 協(xié)同處理器的雙核Cortex-A72 及四核Cortex-A53 組合架構,主要應用于計算機、個(gè)人互聯(lián)網(wǎng)移動(dòng)設備、VR、廣告機等智能終端設備。RK3399 內置多個(gè)高性能硬件處理引擎,能夠支持多種格式的視頻解碼,如:4K×2K@60 fps 的H.264/H.265/VP9,也支持1 080 P@30 fps 的H.264/MVC/VP8 以及高質(zhì)量的JPEG編解碼和圖像的前后處理器。芯片價(jià)格昂貴,開(kāi)發(fā)板價(jià)格在900~1 000 元之間。
綜合考究,我們決定在初步搭建中選擇成本較低的K210 作為開(kāi)發(fā)平臺,如果后期想要增加探測半徑,可以使用價(jià)格相對昂貴,性能更加強悍,可以驅動(dòng)更優(yōu)秀攝像頭的嵌入式系統。
2.2 模型選擇
2.2.1 官方模型
使用官方已經(jīng)訓練好的20class.kfpkg 下載進(jìn)K210的kflash 來(lái)檢測檢測鳥(niǎo)類(lèi),因為是識別20 種物體的檢測模型,經(jīng)常出現誤判,識別不及時(shí)等現象。
2.2.2 自己訓練的鳥(niǎo)類(lèi)模型
自己在網(wǎng)上下載包含20 978 個(gè)鳥(niǎo)類(lèi)的15 698 張照片作為訓練集,使用yolo 算法進(jìn)行訓練,再轉化成可以下載進(jìn)K210 的kflash 的Kmodel 文件,解決了誤判,識別不及時(shí)等問(wèn)題。
顯而易見(jiàn),我們選擇了自己訓練的BIRD.kmodel 作為我們鳥(niǎo)類(lèi)模型的選擇。
3 采用方案
3.1 研究方案
第1 步: 由于使用Haar、SSD、YOLO、R-CNN等算法均能通過(guò)鳥(niǎo)類(lèi)本身的形狀對鳥(niǎo)類(lèi)進(jìn)行識別,算法的開(kāi)發(fā)流程[2-3]:
1) 收集一組正樣本(鳥(niǎo)類(lèi)圖片)和負樣本(非鳥(niǎo)類(lèi)的圖片)作為訓練集;
2) 選擇一個(gè)合適的機器學(xué)習算法(可根據實(shí)際應用進(jìn)行一定的修改);
3) 把訓練集作為樣本,去訓練機器學(xué)習模型,并評估模型性能,不斷優(yōu)化;
4) 當模型的性能能夠滿(mǎn)足一定要求后,部署模型。最后形成的算法模型即可以用來(lái)進(jìn)行鳥(niǎo)類(lèi)識別。
第2 步:通過(guò)算法給出鳥(niǎo)類(lèi)的坐標,利用雙舵機系統驅動(dòng)激光器進(jìn)行全方位立體的精確“打擊”。
3.2 系統架構
該嵌入式系統的主處理器是K210,該處理器與用于捕獲圖像的相機、雙舵機控制電路、步進(jìn)電機驅動(dòng)電路連接。它還連接到顯示屏之類(lèi)的外圍設備,以方便用戶(hù)觀(guān)看設備狀態(tài),圖1 是驅鳥(niǎo)系統總體架構。圖2 是驅鳥(niǎo)系統成品圖。
圖1 驅鳥(niǎo)系統圖
圖2 驅鳥(niǎo)系統成品圖
3.3 硬件平臺設計
3.3.1 雙自由度云臺舵機驅動(dòng)電路
舵機控制精度對于本系統的關(guān)鍵部件,舵機的輸出準確性直接關(guān)系到本系統是否可以完成預定動(dòng)作指令,因此我們設計了這一塊雙自由度云臺舵機驅動(dòng)電路板。硬件電路設計在軟件上完成,包括電路原理圖的繪制和印刷電路板文件的制作,電子元器件選型和焊接由人工完成。
該模塊( 如圖3) 具有以下的電氣參數:輸入電壓:3.6~23 V;輸出電壓:0.8 V~VIN;輸出最大電流:5 A。
圖3 舵機驅動(dòng)電路電路原理圖
3.3.2 步進(jìn)電機驅動(dòng)電路
A4988 是一款帶轉換器和過(guò)流保護的DMOS 微步驅動(dòng)器( 如圖4), 可在全、半、1/4、1/8 及1/16 步進(jìn)模式時(shí)操作雙極步進(jìn)電動(dòng)機,輸出驅動(dòng)性能可達35±2 V,A4988 包括一個(gè)固定關(guān)斷時(shí)間電流穩壓器,該穩壓器可在慢或混合衰減模式下工作。轉換器是A4988 易于實(shí)施的關(guān)鍵。只要在“步進(jìn)”輸入中輸入一個(gè)脈沖,即可驅動(dòng)電動(dòng)機產(chǎn)生微步。無(wú)須進(jìn)行相位順序表、高頻率控制行或復雜的界面編程。該模塊具有以下的電氣參數:工作電壓:8~35 V;連續電流:1 A;最大電流:2 A。
圖4 A4988模塊
3.3.3 激光模組
選擇了符合輸出532 nm 波長(cháng),達到驅鳥(niǎo)目的的綠色激光器,使用綠光TTL 調制(如圖5)。該模塊具有以下的電氣參數:波長(cháng):532 nm;輸出功率:30 mW;工作電壓:2.7~5.0 V;工作電流:<280 mA。
圖5 激光模組
3.4 機械結構
3.4.1 升降機
部分機械結構設計在SolidWorks 軟件上完成,包括零部件設計和整體運動(dòng)仿真,零部件選型和裝配由人工完成,機械結構制作由3D 打印完成(如圖6、圖7)。
圖6 機械建模
圖7 3D打印實(shí)物
3.4.2 自由度云臺
使用由多功能支架、長(cháng)U 型支架、平面軸承和鋁板組成的2 自由度云臺,如圖9。
圖9 自由度云臺
3.5 軟件設計
3.5.1 模型訓練
在計算機上創(chuàng )建虛擬環(huán)境,并安裝必要軟件包與庫。將互聯(lián)網(wǎng)上下載的包含20 978 個(gè)鳥(niǎo)類(lèi)的15 698 張照片作為訓練集,使用labelImg 進(jìn)行注釋?zhuān)偻ㄟ^(guò)yolo 算法進(jìn)行訓練獲得.tfile 文件,通過(guò)ncc_0.1_win 將.tfile文件轉為可以燒錄進(jìn)K210 flash 的.kmodel 文件[4]。
3.5.2 模型部署
在K210 上移植最新的可以運行micropython 的MaixPy-0.5.0,然后將訓練好的.kmodel 模型燒錄進(jìn)K210,再使用K210 通過(guò)雙自由度云臺舵機驅動(dòng)電路控制舵機,使用識別到鳥(niǎo)類(lèi)獲得的坐標與捕獲到圖像中點(diǎn)進(jìn)行誤差分析,通過(guò)PID 算法控制激光模塊一直鎖定鳥(niǎo)類(lèi)(如圖10)。
圖10 程序設計框圖
4 實(shí)驗評估
4.1 仿真測試
使用鳥(niǎo)模型對系統的瞄準精確度進(jìn)行多次實(shí)驗,發(fā)現在10 m內系統的瞄準精度非常高,識別速度非???,激光瞄準運動(dòng)鳥(niǎo)類(lèi)十分平滑,每秒幀率達到10 幀以上。
4.2 進(jìn)步空間
當前系統使用QVGA 的圖像,分辨率非常的低,如果使用性能更加優(yōu)秀的類(lèi)似于NVIDIA Jetson Nano的嵌入式平臺,并且提升下分辨率,再修改下PID 參數,這套方案完全可以解決半徑50 m 以上的驅鳥(niǎo)任務(wù),
5 結論
為了解決農田驅鳥(niǎo)這一問(wèn)題,參考了鳥(niǎo)眼對532 nm的綠色激光束敏感這一研究結果,設計出了一套既可以低成本又可以高成本的解決方案,將來(lái)使用這一方案的農田驅鳥(niǎo)系統一定會(huì )在驅鳥(niǎo)領(lǐng)域占有一席之地。
參考文獻:
[1] 于建友.一種基于532nm激光技術(shù)的智能驅鳥(niǎo)方法:中國,CN201510832622.5[P].2017-6-6,
[2] HINTON G E,OSINDERO S,TEH Y W.A fast learning algorithm for deep belief nets[J]. Neural Comput., 2006(18):1527-1554.
[ 3 ] 周志華. 機器學(xué)習: = M a c h i n elearning[M].北京:清華大學(xué)出版社,2016.
[4] JOSEPH R,FARHADI A.YOLOv3: An incremental improvement [ Z ] . p r e p r i n t ,arXiv:1804.02767.
(本文來(lái)源于《電子產(chǎn)品世界》雜志2021年3月期)
評論