本發(fā)明涉及一種農(nóng)田作物行識別方法,具體涉及一種基于機器視覺的農(nóng)田作物行識別方法。
背景技術(shù):
1、隨著機器視覺的發(fā)展,視覺導(dǎo)航憑借成本低,適應(yīng)性強的特點,已成為目前農(nóng)機自動導(dǎo)航領(lǐng)域的研究熱點。作物行識別是視覺導(dǎo)航的重要組成部分,不同農(nóng)作物的作物行識別難點不同,水田作物行識別容易受到反光等因素的影響,旱田作物行識別更容易受到雜草等因素的影響。目標檢測算法可以在反光和雜草眾多的環(huán)境下準確的識別與定位作物,但是一些主流的目標檢測算法存在參數(shù)量大等問題。
2、在識別與定位作物后,可以利用作物的位置信息進一步的識別作物行。作物行識別可以幫助智能農(nóng)機在田間自主作業(yè)時避免碾壓傷害秧苗。因此,為智能農(nóng)機提供準確的作物行信息是至關(guān)重要的。目前,關(guān)于作物行識別的主要方法有hough變換法、消隱點法、綠色像元累積法和最小二乘法。基于hough變換的作物行識別算法雖然可以同時識別多條作物行,但是該方法存在計算量大等缺點。消隱點法需要雜草較少的環(huán)境,并且存在消隱點才適用。綠色像元累積法的缺點是非常容易受雜草的影響,玉米旱田環(huán)境雜草眾多,不適合該方法。最小二乘法速度快,算法簡單,比較適合用于作物行識別方法。
技術(shù)實現(xiàn)思路
1、本發(fā)明針對農(nóng)田中的作物行識別容易受到光照、雜草等因素影響,導(dǎo)致作物行識別準確率低的問題,提供了一種基于機器視覺的農(nóng)田作物行識別方法,通過對作物識別與定位算法、作物行聚類算法和作物行擬合算法的研究,提高農(nóng)田中作物行識別的準確率,為智能農(nóng)機的田間視覺導(dǎo)航提供關(guān)鍵技術(shù),從而防止智能農(nóng)機在田間自主作業(yè)時傷害作物。
2、本發(fā)明的目的是通過以下技術(shù)方案實現(xiàn)的:
3、一種基于機器視覺的農(nóng)田作物行識別方法,包括如下步驟:
4、技術(shù)方案一、
5、步驟1、構(gòu)建水稻作物行數(shù)據(jù)集
6、步驟1.1、采集水稻插秧后7天、14天和21天的數(shù)據(jù),為了增加數(shù)據(jù)的復(fù)雜性,插秧后21天的水稻數(shù)據(jù)在強烈光照下采集,使用labelimg軟件對圖像進行標注;
7、步驟1.2、為了提高模型的泛化能力和效果,對圖像進行馬賽克數(shù)據(jù)增強和混合數(shù)據(jù)增強;
8、步驟1.3、對圖像進行標簽平滑,將數(shù)據(jù)的硬標簽轉(zhuǎn)化為軟標簽,提高模型的泛化能力;
9、步驟2、農(nóng)田作物行識別方法
10、步驟2.1、使用yolo-g目標檢測算法識別與定位作物,從而獲得作物的中心點位置,其中:yolo-g由主干網(wǎng)絡(luò)、加強特征提取網(wǎng)絡(luò)和檢測頭三部分組成,主干網(wǎng)絡(luò)將yolov7的主干網(wǎng)絡(luò)替換成輕量級卷積神經(jīng)網(wǎng)絡(luò)ghostnetv2,從而減低算法的參數(shù)量和計算量;加強特征提取網(wǎng)絡(luò)繼續(xù)使用yolov7的panet結(jié)構(gòu)與sppcspc,然后通過降低加強特征提取網(wǎng)絡(luò)中生成的中間層的特征圖通道數(shù)進一步降低參數(shù)量和計算量;在檢測頭前加入通道注意力機制用來平衡各通道間的重要性關(guān)系;使用focal?loss損失函數(shù)協(xié)調(diào)正負樣本之間的匹配;
11、步驟2.2、使用dbscan聚類算法對作物行進行聚類,獲取圖像中的作物行條數(shù)以及每條作物行有哪些作物;
12、步驟2.3、使用最小二乘法擬合作物行線。
13、技術(shù)方案二、
14、步驟1、構(gòu)建玉米作物行數(shù)據(jù)集
15、步驟1.1、采集玉米出苗后7天、14天和21天的數(shù)據(jù),為了增加數(shù)據(jù)的復(fù)雜性,出苗后21天的玉米圖像中帶有眾多雜草,使用labelimg軟件對圖像進行標注;
16、步驟1.2、為了提高模型的泛化能力和效果,對圖像進行馬賽克數(shù)據(jù)增強和混合數(shù)據(jù)增強;
17、步驟1.3、對圖像進行標簽平滑,將數(shù)據(jù)的硬標簽轉(zhuǎn)化為軟標簽,提高模型的泛化能力;
18、步驟2、作物行識別方法
19、步驟2.1、使用yolo-g目標檢測算法識別與定位作物,從而獲得作物的中心點位置,其中:yolo-g由主干網(wǎng)絡(luò)、加強特征提取網(wǎng)絡(luò)和檢測頭三部分組成,主干網(wǎng)絡(luò)將yolov7的主干網(wǎng)絡(luò)替換成輕量級卷積神經(jīng)網(wǎng)絡(luò)ghostnetv2,從而減低算法的參數(shù)量和計算量;加強特征提取網(wǎng)絡(luò)繼續(xù)使用yolov7的panet結(jié)構(gòu)與sppcspc,然后通過降低加強特征提取網(wǎng)絡(luò)中生成的中間層的特征圖通道數(shù)進一步降低參數(shù)量和計算量;在檢測頭前加入通道注意力機制用來平衡各通道間的重要性關(guān)系;使用focal?loss損失函數(shù)協(xié)調(diào)正負樣本之間的匹配;
20、步驟2.2、使用均值漂移算法或近鄰傳播聚類算法對作物行進行聚類,獲取圖像中的作物行條數(shù)以及每條作物行有哪些作物;
21、步驟2.3、使用最小二乘法擬合作物行線。
22、相比于現(xiàn)有技術(shù),本發(fā)明具有如下優(yōu)點:
23、(1)本發(fā)明提出了一種輕量級的目標檢測算法yolo-g。yolo-g算法是在yolov7上改進的算法,在增加四個改進部件后,參數(shù)量僅為改進前yolov7的23.61%,計算量僅為改進前的yolov7的9.81%,每秒檢測的幀的數(shù)量增加了10.49。同時,yolo-g算法的水稻ap為96.29%,玉米ap為95.53%,證明了yolo-g算法在輕量的同時可以較好的識別與定位水稻和玉米作物。
24、(2)本發(fā)明分別使用均值漂移算法、近鄰傳播聚類算法和dbscan聚類算法搭配最小二乘法和隨機采樣一致算法進行實驗。實驗表明,水稻作物行識別準確率最高的方法是yolo-g算法、dbscan聚類算法搭配最小二乘法,其準確率為94.49%。玉米作物行識別準確率最高的方法是yolo-g算法、均值漂移算法搭配最小二乘法,其準確率為97.59%。
25、(3)本發(fā)明可以準確的識別農(nóng)田作物行,為智能農(nóng)機的田間視覺導(dǎo)航提供關(guān)鍵技術(shù)和理論基礎(chǔ),防止智能農(nóng)機在田間自主作業(yè)時傷害作物。
1.一種基于機器視覺的農(nóng)田作物行識別方法,其特征在于所述方法包括如下步驟:
2.根據(jù)權(quán)利要求1所述的基于機器視覺的農(nóng)田作物行識別方法,其特征在于所述步驟1.1中,使用俯角65度與75度進行每一個時期的數(shù)據(jù)采集。
3.根據(jù)權(quán)利要求1所述的基于機器視覺的農(nóng)田作物行識別方法,其特征在于所述步驟1.1中,為了增加數(shù)據(jù)的復(fù)雜性,插秧后21天的水稻數(shù)據(jù)在強烈光照下采集。
4.根據(jù)權(quán)利要求1所述的基于機器視覺的農(nóng)田作物行識別方法,其特征在于所述步驟2.2中,聚類算法為dbscan聚類算法。
5.一種基于機器視覺的農(nóng)田作物行識別方法,其特征在于所述方法包括如下步驟:
6.根據(jù)權(quán)利要求5所述的基于機器視覺的農(nóng)田作物行識別方法,其特征在于所述步驟1.1中,使用俯角75度與85度進行每一個時期的數(shù)據(jù)采集。
7.根據(jù)權(quán)利要求5所述的基于機器視覺的農(nóng)田作物行識別方法,其特征在于所述步驟1.1中,為了增加數(shù)據(jù)的復(fù)雜性,出苗后21天的玉米圖像中帶有眾多雜草。
8.根據(jù)權(quán)利要求5所述的基于機器視覺的農(nóng)田作物行識別方法,其特征在于所述步驟2.2中,聚類算法為均值漂移算法或近鄰傳播聚類算法。