摘 要:為衡量農作物受災后倒伏帶來的產量與經(jīng)濟損失,利用改進的圖像邊緣檢測技術來獲取倒伏區(qū)域面積。在現(xiàn)有Canny算子邊緣檢測的基礎上,采用中值濾波替代高斯函數(shù)來平滑處理圖像。再采用自適應雙閾值和廣義鏈區(qū)分真?zhèn)芜吘夵c、消除偽邊緣點,最后通過線性擬合和霍夫變換獲得邊緣直線。由于倒伏區(qū)域和正常區(qū)域存在明顯的分界現(xiàn)象和倒伏紋理增多的特征可準確提取倒伏區(qū)域。試驗結果表明,五個實驗地塊倒伏面積提取誤差只有9.2%,9.4%,8.9%,7.9%和8.7%。
關鍵詞:倒伏作物;圖像識別;邊緣檢測;改進Canny
中圖分類號:TP301.6 文獻標識碼:A 文章編號:2096-4706(2025)02-0012-04
Rice Lodging Region Extraction Method Based on Improved Canny
CHAI Jun1, WANG Haochen2
(1.Wuxi Machinery and Electron Branch of Jiangsu Union Technical Institute, Wuxi 214028, China;
2.School of Automation, Jiangsu University of Science and Technology, Zhenjiang 212100, China)
Abstract: In order to measure the yield and economic losses caused by crop lodging after disasters, an improved image edge detection technology is used to obtain the area of the lodging area. Based on the existing Canny operator edge detection, the median filtering is adopted to replace the Gaussian function for smoothing the image. Then, the adaptive dual threshold and the generalized chain are used to distinguish between true and 1 edge points and eliminate the 1 edge points. Finally, the edge straight lines are obtained through linear fitting and the Hough transform. Due to the obvious boundary phenomenon between the lodging area and the normal area and the increased features of the lodging texture, the lodging area can be accurately extracted. The experimental results show that the extraction errors of the lodging area in the five experimental plots are only 9.2%, 9.4%, 8.9%, 7.9%, and 8.7%.
Keywords: lodging crop; image recognition; edge detection; improved Canny
DOI:10.19850/j.cnki.2096-4706.2025.02.003
收稿日期:2024-07-23
基金項目:江蘇省省重點研發(fā)計劃產業(yè)前瞻性與共性關鍵技術重點項目(BE2018007)
0 引 言
科學獲取受災后農作物的倒伏面積,能夠對農業(yè)生產、政府指導、保險理賠提供準確的依據(jù)。傳統(tǒng)的田間測量雖然準確但是測繪工作量大;衛(wèi)星遙感技術能大面積測繪,但對倒伏區(qū)域確定精度低且容易受云層因素影響;而采用無人機測繪數(shù)據(jù)既能夠滿足空間和時效,又有高分辨率[1]。文獻[2]基于無人機的多光譜影像,分析作物形態(tài)的光譜、植被指數(shù)以及紋理特征差異,實現(xiàn)了完熟期玉米倒伏面積的準確提取。文獻[3]無人機可見光遙感技術提取小面冠層紅綠藍可見光圖像,并進行數(shù)字表面模型圖像提取,最終得到小麥的倒伏面積。另外還有利用圖像邊緣檢測的作物倒伏面積,實現(xiàn)了較高精度的倒伏區(qū)域提取。
數(shù)字圖像技術廣泛應用于圖像處理中,通過提取邊緣檢測來獲取圖像的特征屬性。目前,已經(jīng)提出了許多邊緣檢測算法,在這些算法中,Sobel算子和Robert算子是通過獲取數(shù)值差分方法實現(xiàn)的。而由于Canny算子具有良好的信噪比、精確的邊緣定位和單邊響應,因此在實際應用中得到了廣泛的應用。2010年,globalPb算法被提出,其閾值由系統(tǒng)自適應生成,可提高Canny算法的抗噪聲能力。然而,globalPb算法不僅需要多尺度、多信息來計算梯度,還需要額外的譜聚類來排除假邊緣。如果無法提供這些信息,將限制在缺少紋理信息的場景中的應用[4]。在此基礎上,提出了一種改進算法。該算法主要是利用自適應粒子群算法[5]求解最大方差法的最優(yōu)解。在文獻[6]中,提出了一種彩色圖像的自適應Canny算法,該算法將彩色圖像的RBG變換為R-B色差空間圖,經(jīng)過高斯濾波后需要進行積分運算。這種方法可以連接整個圖像邊緣。在文獻[7]中,提出了一種基于Canny算子的改進方法,通過方差投影定位算法實現(xiàn)定位精度。為了提高邊緣檢測的精度,提出了一種形態(tài)濾波算法來代替高斯濾波,避免了人工干預。該算法有效地抵抗了椒鹽噪聲[7]。在文獻[8]中,采用全局和局部邊緣檢測相結合的方法提取邊緣,實現(xiàn)檢測精度的提高。還有一種與傳統(tǒng)的運動目標檢測算法相融合的Canny算法。該算法能有效地提取圖像的前景區(qū)域[9]。
本文利用中值濾波對圖像進行預處理,自適應地得到雙閾值。然后,將邊緣點連接起來,得到了廣義鏈,并給出了廣義鏈的判定準則,以消除與真實邊緣點的灰度值近似的偽邊緣點。最后,利用線性擬合方法給出了圖像邊緣檢測的結果,使圖像的檢測更具自適應性和準確性。然后利用霍夫變換擬合出直線。
1 傳統(tǒng)Canny算子
傳統(tǒng)的Canny算子的運算步驟包括:第1步,使用高斯函數(shù)平滑圖像。第2步,通過微分算子獲得振幅梯度和方向。第3步,選擇非最大值抑制方法獲得候選邊緣點。第4步,通過雙閾值檢查候選邊緣點。第5步,連接與邊緣點相連的其余候選邊緣點,得到圖像的邊緣檢測結果。
Canny算子一般采用二階高斯函數(shù)對圖像進行平滑處理,去除噪聲:
(1)
其中,σ表示高斯濾波的參數(shù)。經(jīng)典的Canny算法采用2×2鄰域的有限差分來計算圖像梯度的值和方向。在水平兩個方向上求解一階偏導,近似的可由下列公式求得:
(2)
(3)
因此,圖像梯度計算的模型是:
(4)
圖像梯度大小和梯度的方位角分別為:
(5)
為定位邊緣,在獲得梯度幅度圖像后,采用非最大值抑制技術進一步處理。非最大值抑制(Non-Maximum Suppression, NMS)的處理有助于保證每個邊緣都是相同的像素寬度。Canny算法利用8個方向的3×3鄰域沿梯度方向對梯度幅值進行插值。如果幅值M(i, j)大于梯度方向上的兩個插值結果,則確定為待定邊緣點,否則確定為非邊緣點。
Canny算法在圖像邊緣檢測中有著廣泛的應用。然而,它仍然存在三個缺陷。一是高斯濾波對噪聲敏感,容易產生孤立的邊緣點。這將導致生成偽邊點。第二個缺點是雙閾值的值設置固定,不能滿足算法的適應性。最后一個問題是,該方法只發(fā)現(xiàn)其周圍是否有邊緣點,在判斷候選邊緣點時,會增加偽邊緣點的數(shù)量。例如,如果在候選邊緣點的鄰域中存在一個非邊緣點,并且該點與邊緣點具有相同的灰度值,則會將候選邊緣點誤判為邊緣點。這會導致越來越多的假邊,并導致目標探測被淹沒在背景圖像中。本文采用中值濾波代替高斯濾波方法對圖像進行平滑ThH處理。通過兩個自適應閾值檢查候選邊緣點,將它們連接起來形成廣義鏈。然后,根據(jù)規(guī)則選擇廣義鏈來刪除偽邊點。
2 改進Canny算子
2.1 中值濾波算法
中值濾波是將圖像中某一點的像素值替換為其相鄰區(qū)域的中值,該方法不僅減少了噪聲的影響,而且可消除尖銳點[6]。
若待處理的數(shù)字圖像的像素點的灰度值為h(x, y),濾波鄰域范圍大小為Mmn,中值濾波二維函數(shù)為G(x, y):
(6)
2.2 雙閾值法
雙閾值法的關鍵是如何確定自適應閾值。其步驟如下:對相鄰梯度振幅進行差分運算:
(7)
其中,G1表示通過非最大值抑制方法找到同一梯度方向上中心像素的最大值,再經(jīng)雙閾值處理生成的梯度振幅直方圖。選擇振幅的第一個零點作為高閾值,低閾值取該高閾值的0.5倍,根據(jù)該規(guī)則,自適應閾值計算公式為:
(8)
其中,ThH和ThL表示高閾值和低閾值。確定雙閾值后,利用非最大值被抑制,再對圖像進行雙閾值分割。G1(i, j)代表中心像素,并將其與ThH和ThL進行比較。討論分為三種情況,如表1所示。
2.3 廣義鏈
經(jīng)過比較得到強邊緣點和弱邊緣點。接下來的步驟是:首先,需要找到邊緣的起始點,即最大值點,并將其與弱邊緣點分別連接起來。這樣得到了一條邊緣鏈,稱為廣義鏈。它包含多個長度,最大長度設置為dmax,最小長度設置為dmin,為得到這些鏈的平均模量閾值,其規(guī)則如下:
(9)
刪除小于davr的梯度值。偽邊緣點的分布是分散的,通過尋找局部極大值的均值來削弱偽強邊緣點。并刪除比davr更小的邊鏈。這樣可有效地抑制了偽強邊緣點。剩下的點是圖像的真實邊緣點。最后采用線性擬合的方法得到邊緣圖像。
3 改進Canny算子圖像處理方法
基于改進Canny算子的圖像處理方法包括如下步驟:第一步,利用中值濾波對圖像進行預處理得到圖像,并將計成G;第二步,計算振幅梯度。為了獲得像素的幅度梯度,使用水平和垂直兩個方向來卷積計算圖像中像素的鄰域。采用3×3矩陣計算圖像梯度:
(10)
其中,Gx和Gy分別表示水平方向和垂直方向,Gx,y表示圖像的像素值。中心像素的梯度幅度和梯度方向計算如下:
(11)
(12)
第三步,使用非最大值抑制來尋找最大值。獲得雙閾值,并將其與邊緣點的最大值進行比較以獲得初始邊緣點。第四步,選擇強邊緣點作為起始點的邊緣,與弱邊緣點連接形成邊緣鏈,并按式(9)計算邊緣鏈的平均值,然后去除小于圖像梯度最大值平均值的廣義邊緣鏈。第五步,采用線性擬合的方法,霍夫變換進一步得到圖像的檢測結果。
4 實驗結果與分析
如圖1(a)所示,為實際采集到的梯田圖像。圖1(a)中梯田圖像有著明顯的分界。利用分界現(xiàn)象,可通過邊緣檢測技術獲得邊緣信息。圖片在MATLAB 2021b中進行仿真得到圖2(b)~(d)。
如圖1(b)至圖1(d)所示,分別采用了roberts算子、傳統(tǒng)Canny算子和本文改進canny算子對圖1(a)進行邊緣檢測。從出圖結果可知,roberts算子并不能有效的檢測出分界的邊緣,對倒伏作物的邊緣檢測的分辨也較低。而傳統(tǒng)Canny算子、改進Canny算子不僅能有效的檢測出分界的邊緣,對倒伏作物的邊緣檢測有較高的分辨率。改進Canny算子可以理解成對傳統(tǒng)Canny算子的圖像的增強。
為科學地評價各個邊緣檢測算子的檢測效果,采用量化指標召回率、F1分數(shù)來實現(xiàn)[11]。采用roberts算子檢測結果的召回率、F1分數(shù)分別為0.804、0.798;采用傳統(tǒng)Canny算子檢測結果的召回率、F1分數(shù)分別為0.843、0.835;采用本文改進Canny算子檢測結果的召回率、F1分數(shù)分別為0.867、0.862??梢姡疚母倪M方法在檢測質量有明顯的提升。
數(shù)據(jù)采集于江蘇省丹陽市某實驗田,水稻品種為南粳5055,圖像采集時間為2023年8月。如圖2(a)所示,實驗田為不規(guī)格的田塊分布,存在這不同倒伏情況。A塊田存在嚴重的完全倒伏,B塊、D塊田存在輕微倒伏,C塊田中存在部分完全倒伏,E塊田存在輕微倒伏和完全倒伏相混合的情況。倒伏面積提取結果如表2所示。
實驗田圖像在MATLAB 2021b中先分別經(jīng)過傳統(tǒng)Canny算法和改進Canny算法進行邊緣提取,再經(jīng)過霍夫變化處理,最終得到實驗結果如圖2(b)、(c)所示。經(jīng)過兩種Canny算法提取圖像中的邊緣信號,再霍夫變換進行直線擬合得到圖2(b)和圖1(c)。圖2(b)、圖2(c)中存在整塊黑色且無白色線條的區(qū)域為沒有倒伏的田塊,而存在雜亂白色邊緣線條的區(qū)域為識別出的倒伏田塊。提取出倒伏田塊和原圖倒伏區(qū)域準確對應,驗證了本文所提方法的有效性。圖2(b)、圖2(c)對比可很直觀得出本文提出改進Canny算法對倒伏作物紋理的提取要更加精細;對倒伏區(qū)域的識別比傳統(tǒng)Canny算法更加準確,尤其在C地塊的倒伏區(qū)域識別上。如表2所示,傳統(tǒng)Canny算法在A、B、C、D、E地塊的提取倒伏面積相對于實測倒伏面積的誤差為18.9%,14.5%,54.1%,9.7%和15.2%。改進Canny算法在A、B、C、D、E地塊的提取倒伏面積相對于實測倒伏面積的誤差為9.2%,9.4%,8.9%,7.9%和8.7%,所以在倒伏面積獲取上改進算法相比較傳統(tǒng)算法有著明顯的優(yōu)勢。
5 結 論
采用中值濾波方法代替高斯濾波方法,使得處理過程更加快速;中值濾波方法在平滑脈沖噪聲方面非常有效,同時可保護圖像尖銳的邊緣。采用自適應雙閾值區(qū)分強、弱、偽邊緣點,并定義廣義鏈,刪除小于平均模量閾值的邊鏈,實現(xiàn)抑制偽強邊緣點。倒伏區(qū)域的提取利用倒伏后圖像紋理增多、倒伏區(qū)域和正常區(qū)域存在明顯邊界這一特性。利用改進Canny和霍夫變換能夠有效地提取出倒伏區(qū)域。倒伏面積獲取實驗中,改進Canny算法比傳統(tǒng)Canny算法有更優(yōu)的倒伏作物紋理提取精度和更低的倒伏面積提取誤差。且在不同面積和不同倒伏情況的地塊中,改進Canny算法只有9.2%,9.4%,8.9%,7.9%和8.7%,均小于10%。
參考文獻:
[1] 鄧泓,楊瀅婷,劉兆朋,等.基于深度學習的無人機水田圖像語義分割方法 [J].中國農機化學報,2021,42(10):165-172.
[2] 張新樂,官海翔,劉煥軍,等.基于無人機多光譜影像的完熟期玉米倒伏面積提取 [J].農業(yè)工程學報,2019,35(19):98-106.
[3] 趙靜,潘方江,蘭玉彬,等.無人機可見光遙感和特征融合的小麥倒伏面積提取 [J].農業(yè)工程學報,2021,37(3):73-80.
[4] 湯東,喻衣鑫,劉波.基于圖像邊緣檢測的作物倒伏面積評估系統(tǒng) [J].農機化研究,2020,42(5):88-93.
[5] 竇蕾萍,吳君欽.基于改進Canny算法的圖像邊緣檢測 [J].軟件導刊,2023,22(8):216-220.
[6] 閆河,趙其峰,謝敏,等.自適應Canny算子PCBA元器件邊緣檢測及修復 [J].光學學報,2021,41(5):97-104.
[7] 查鴻偉,李浩,朱益虎,等.利用邊緣輔助分割網(wǎng)絡提取稻蝦共作養(yǎng)殖田 [J].農業(yè)工程學報,2023,39(19):154-164.
[8] VARGAS J Q,KHOT L R,PETERS R T,et al. Low Orbiting Satellite and Small UAS-based high-resolution Imagery Data to Quantify Crop Lodging: A Case Study in Irrigated Spearmint [J].IEEE Geoscience and Remote Sensing Letters,2019,17(5):755-759.
[9] WU F,ZHU C,XU J,et al. Research on Image Text Recognition based on Canny Edge Detection Algorithm and K-means Algorithm [J].International Journal of System Assurance Engineering and Management,2021,13(Suppl 1):72-80.
[10] 杜緒偉,陳東,馬兆昆,等.基于Canny算子的改進圖像邊緣檢測算法 [J].計算機與數(shù)字工程,2022,50(2):410-413+457.
[11] XU H,WAN C. Canny Improved Edge Detection Algorithm for anti-noise [J].Journal of Computer Applications,2017,1:201-205.
作者簡介:柴?。?978—),男,漢族,江蘇鎮(zhèn)江人,副教授,碩士研究生,研究方向:智能裝備、機器人視覺、計算機仿真。