999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于改進Hough圓變換算法的成熟番茄果實識別*

2021-05-11 13:38:14馮俊惠李志偉戎有麗孫志立
中國農機化學報 2021年4期
關鍵詞:檢測

馮俊惠,李志偉,戎有麗,孫志立

(山西農業大學農業工程學院,山西晉中,030801)

通訊作者:李志偉,男,1969年生,山西太谷人,博士,教授,博導;研究方向為精細農業裝備及計算機控制技術。E-mail: lizhiweitong@163.com

0 引言

果蔬收獲是果蔬種植業各生產鏈中最耗時、最費力的一個環節,果蔬采摘機器人可以極大減少勞動力,降低農產品生產成本。果蔬采摘機器人通過計算機視覺等技術手段,根據顏色、形狀、紋理等特征信息,將果實從莖葉等背景中識別出來,并進行定位,最后控制機械手協調動作,完成整個采摘和存放過程。因此,基于計算機視覺的成熟果實識別是保證果蔬收獲機器人精準作業的重要前提[1-3]。

1987年,美國的Slaughter等[4]研制了柑橘收獲機器人,利用彩色攝像機和超聲波傳感器識別柑橘,并確定果梗位置信息。1992年,日本的Kondo等[5]研制了番茄收獲機器人,利用彩色攝像機來識別番茄,但是無法收獲被莖葉遮擋的成熟果實。2001年,荷蘭的Henten等[6]研制出了黃瓜收獲機器人,通過機器視覺傳感器識別成熟的黃瓜,并獲取三維位置信息。我國對果蔬收獲機器人的研究始于20世紀90年代,雖然起步較晚,但也取得了一定的成績,如陸懷民[7]研制的林木球果采摘機器人,曹其新等[8]研制的草莓采摘機器人,張鐵中等[9-11]在草莓、黃瓜、西紅柿、茄子等果蔬果實采摘機器人方面進行了深入研究。

在番茄識別時,由于番茄果實近似球形,因此可以采用抗干擾性強的Hough圓變換算法[12-15]。但Hough圓變換算法運算量極大,難以滿足采摘機器人對實時性的要求,且由于番茄非標準球形,而且存在多果重疊和莖葉遮擋等問題,所以需要改進Hough圓變換算法(Circular Hough Transform,CHT),以解決上述問題。本文首先對采集的圖像進行下采樣,然后基于背景分割得到二值化圖像,并進行邊緣信息提取,最后在此基礎上采用改進Hough圓變換算法實現成熟番茄果實識別,為今后番茄收獲機器人完成自動化采摘提供研究基礎。

1 材料與方法

1.1 圖像采集與下采樣

試驗所用番茄樣本采自山西農業大學農業工程學院智能溫室,番茄品種為天妃九號,采用智能手機(HONOR 9X Pro)獲取番茄RGB圖像,攝像頭距番茄果實20~60 cm,圖像尺寸為4 000像素×3 000像素(4∶3)。圖像處理計算機采用Intel Core(TM) i5-4590微處理器,軟件開發環境為MATLAB R2019b。圖1為采集到的番茄果實圖像。

圖1 番茄果實圖像采集示例Fig. 1 Image acquisition example of tomato fruits

圖像像素分辨率越高,圖像越清晰,相應的圖像處理計算量也越大。為了減少計算量,提高運算速度,在不影響圖像處理效果的前提下,對圖像進行下采樣。本文下采樣是將原始圖像10像素×10像素的窗口區域用一個像素點來表示,即對原始圖像每隔10行、每隔10列采樣一個點,將采樣到的點依次排放,得到下采樣后的圖像,圖像下采樣示意圖如圖2所示。將原始圖像下采樣得到的圖像尺寸為400像素×300像素,結果如圖3所示。

圖2 圖像下采樣示意圖Fig. 2 Sketch of image downsampling

圖3 原始圖像下采樣結果圖Fig. 3 Result of original image downsampled

1.2 成熟番茄果實背景分割

背景分割是目標識別的首要問題,可以為目標識別減少運算范圍,提高識別準確率。在采集到的RGB圖像中,成熟的番茄果實區域R分量要明顯高于G分量和B分量,而未成熟果實和枝葉區域則不具備這樣的統計特性[16],因此可以通過顏色信息進行背景分割。背景分割的處理方法可以通過偽代碼來表示

ifR(x,y)>G(x,y)+50&R(x,y)>B(x,y)+50,

thenPixel(x,y)∈foreground;

elsePixel(x,y)∈background。

根據上述方法可快速實現背景分割,對圖3所示的下采樣的圖像進行背景分割,得到以成熟番茄為目標的二值圖像,結果如圖4所示。

圖4 成熟番茄果實背景分割結果圖Fig. 4 Background segmentation result of mature tomatoes

1.3 成熟番茄果實邊緣檢測

基于顏色信息的背景分割只能完成單個或未遮擋的成熟番茄果實識別,當存在多果重疊和莖葉遮擋等問題,需要采用Hough圓變換算法進一步識別番茄果實,而Hough圓變換算法的前提是邊緣信息已知,因此,需要在背景分割的基礎上進行成熟番茄果實邊緣檢測。

邊緣檢測的算法有很多,有Robert算子、Sobel算子、Prewitt算子、LOG算子、Canny算子等。其中,Sobel算子[17]是一種基于一階導數的邊緣檢測算子,計算簡單,對噪聲有較好的抑制作用,且定位精度較高,適合對成熟番茄果實背景分割得到的二值圖像進行邊緣檢測。圖5是基于Sobel算子得到的邊緣檢測結果圖。

圖5 成熟番茄果實邊緣檢測結果圖Fig. 5 Edge detection result of mature tomatoes

1.4 基于改進Hough圓變換提取番茄果實

1.4.1 Hough圓變換算法

Hough變換算法是Paul Hough在1962年提出的一種區域邊界狀態檢測算法[18],將原始圖像空間的邊緣信息轉換到參數空間,參數空間包含了用以表述待檢測圖形的所有參數,因此,根據Hough變換算法可以檢測出原始圖像中的待檢測圖形。待檢測圖形可以是直線、圓形、橢圓等。

在笛卡爾坐標系中,圓形可以表述為

(x-x0)2+(y-y0)2=r2

(1)

式中: (x,y)——圓上任一點的坐標;

(x0,y0)——圓心坐標;

r——半徑。

因此,圓形可以用圓心和半徑來描述,Hough圓變換中,參數空間可以描述為(x0,y0,r)。

為了將原始圖像中的邊緣像素點(x,y)轉換到參數空間(x0,y0,r),將式(1)描述為

(2)

式中:θ——邊緣像素點(x,y)到圓心的直線與水平軸之間的夾角。

對于任一邊緣像素點(x,y),半徑r和夾角θ取不同的值時,代入式(2)則可計算出x0,y0取值,從而可以得到相應的(x0,y0,r)組合。遍歷所有的邊緣像素點,計算出所有的(x0,y0,r)組合。對所有的(x0,y0,r)組合進行投票,票數超過一定閾值的組合即對應檢測到的圓形。

Hough變換算法采用了投票制思路,因此對邊緣信息不完全及待檢測圖形非標準等情況都具有很強的魯棒性。

1.4.2 改進Hough圓變換算法

圓上任一點的坐標(x,y),如果是連續變量,則可以根據式(2)準確轉換為(x0,y0,r),但對于離散變量,只能是近似解。在數字圖像中,邊緣往往是鋸齒狀,即使是標準圓形,代入式(2)求得的(x0,y0,r)也可能存在偏差,在算法后續投票時可能影響票數而無法被檢測。因此,對算法進行改進。根據邊緣像素點(x,y)計算得到的(x0,y0,r),不僅對(x0,y0)這一點對應的組合(x0,y0,r)票數值加1,也對(x0,y0)該點8鄰域對應的組合(x0-1,y0-1,r)、(x0,y0-1,r)、(x0+1,y0-1,r)、(x0-1,y0,r)、(x0+1,y0,r)、(x0-1,y0+1,r)、(x0,y0+1,r)、(x0+1,y0+1,r)票數分別加1。

計算出所有的(x0,y0,r)組合后要進行投票,票數超過一定閾值的組合即對應檢測到的圓形。由于在數字圖像中,離散的邊緣像素值轉換得到的(x0,y0,r)可能存在偏差,數字圖像中的標準圓形有可能經過Hough圓變換被檢測成多個圓心位置相近且半徑相似的圓,因此需要進行聚類,即對票數超過閾值的組合進行聚類。聚類的依據是:若兩組合中圓心坐標相近且半徑大小近似相等,則可以聚為一類。聚類后將該聚為一類的所有圓心坐標的均值和半徑的均值作為該類最終的圓的參數。

改進Hough圓變換算法流程圖如圖6所示。

圖6 改進Hough圓變換算法流程圖Fig. 6 Flowchart of modified CHT algorithm

在圖6所示的算法流程圖中,尋找與組合A中圓心相近且半徑相似的其他組合,用數學表達式描述如下。

假設組合A對應的圓心坐標是(x0A,y0A),半徑為rA,若另一組合B對應的圓心坐標是(x0B,y0B),半徑為rB,則圓心相近可以表示為

(x0A-x0B)2+(y0A-y0B)2<[min(rA,rA)]2

(3)

由式(3)可知,當組合B對應的圓心在組合A對應的圓內部或組合A對應的圓心在組合B對應的圓內部時,認為兩圓心相近。而半徑相似可以表示為

rA/rB>Tr&rB/rA<1/Tr

(4)

式中:Tr——半徑相似比閾值,該值是一個0~1之間的數。

1.4.3 基于改進Hough圓變換提取番茄果實

在邊緣檢測的基礎上,采用改進的Hough圓變換算法進行番茄果實提取。如圖7所示,基于改進的Hough圓變換算法,對初步檢測到的圓(圓心用圓點表示,邊緣用細實線表示)進行聚類,得到最終的結果(圓心用圓圈表示,邊緣用加粗的點劃線表示)。基于改進Hough圓變換提取的番茄果實在圖8中用白色線表示,白色“+”為圓心。

圖7 改進Hough圓變換算法檢測結果圖Fig. 7 Detection result of modified CHT algorithm

圖8 成熟番茄果實識別結果圖Fig. 8 Identification result of mature tomatoes

2 結果與分析

2.1 改進Hough圓變換算法參數設置

在基于改進Hough圓變換算法提取番茄果實時,算法中有一些參數需要設置。

在圖6所示的改進Hough圓變換算法流程圖中,第3步取一個可能的r和一個可能的θ,r和θ的選取是在一定范圍內以一定步長變化取值的。根據實際圖像的統計,半徑r的范圍是20~60像素(針對下采樣后尺寸為400像素×300像素的圖像),半徑r的步長取值為1。θ反映的是邊緣像素點到圓心的連線與水平方向的夾角,因此取值范圍是0°~360°,步長取值為0.1。

Hough變換算法中,在對所有的(x0,y0,r)組合投票后,要進行票數統計,若已知圖像中只有一個圓形,則可以將票數最多的組合檢測為圓形,但在圓形個數未知的情況下,需要設置閾值,將票數大于閾值的組合加入到候選集合中。這里,閾值的設置與當前投票的票數最大值有關,它是一個0~1之間的小數,相當于票數最大值的百分比。在多個圓檢測時,若存在圓形被遮擋的情況,該值取值要稍微小點,以檢測出所有圓形。在本試驗中,該值為0.75。

在對候選集合中的組合進行聚類時,是將圓心相近且半徑相似的圓聚為一類,在判斷半徑相似時用到式(4),其中,Tr是半徑相似比閾值,該值是一個0~1之間的數。對于標準圓形的檢測,該值可以設置的大點,但對于非標準圓,該值要設置的小點。由于番茄是類球形,一個番茄可能識別出多個半徑不等甚至相差較大的圓形,因此在聚類時,需要將半徑相似比閾值設置較小,這里設置為0.5。

2.2 多種不同情況下的成熟番茄果實識別

番茄植株每一穗果結果數量不等,其中每個果實的成熟度也可能不同。番茄果實的成熟周期大致可以分為未熟期、綠熟期、轉色期、半熟期、成熟期和完熟期等6個階段[19],采用本文1.2節中的基于顏色信息的背景分割方法,基本可以識別半熟期、成熟期和完熟期的番茄,當存在多個不同成熟周期的番茄果實時,成熟番茄果實的識別較為復雜。當果實被枝葉遮擋或存在多果重疊時,準確識別成熟番茄果實也較為復雜。為了驗證本文算法在多種不同情況下的識別效果,采集圖像80張進行試驗,并與傳統的Hough圓變換算法進行對比,圖9給出三種不同情況下的試驗結果。

圖9中,第1組試驗圖中包含了完熟期、成熟期、轉色期和未熟期等不同成熟周期的番茄果實(主要為轉色期果實干擾成熟番茄識別),第2組試驗圖中存在番茄果實被莖葉和果柄遮擋的情況,第3組試驗圖中存在番茄果實部分重疊的情況。

將圖9所示的三組試驗分別采用傳統Hough圓變換算法和本文改進算法的識別結果進行統計,如表1所示。

表1 圖9中三組試驗結果統計表Tab. 1 Statistics of three groups of test in Fig. 9

圖9 三種不同情況下的成熟番茄果實識別

由表1可知,對于圖9所示的三種不同情況下的成熟番茄果實識別,采用傳統的Hough圓變換算法能完成基本識別,但由于番茄非標準球形,因此存在一個番茄果實被識別為多個圓形的問題,而本文算法能夠得到較為準確的識別結果。

此外,分別計算采用傳統的Hough圓變換算法和本文算法識別成熟番茄果實的運行時間,如表2所示。由表2可知,本文算法與傳統的Hough圓變換算法相比,極大提高了算法的執行效率。

將采集到的80張圖像進行分類試驗,并分別統計各類試驗的識別率。由于傳統的Hough圓變換算法存在一個番茄果實被識別為多個圓形的問題,因此分類試驗只對本文算法進行。分類主要包括5類:(1)簡單情況,即一穗果中成熟果實為1個,或多個果實無相互遮擋,且莖葉遮擋極少,無轉色期果實;(2)包含了完熟期、成熟期、轉色期和未熟期等不同成熟周期的番茄果實,即轉色期果實干擾成熟番茄識別;(3)存在番茄果實被莖葉和果柄遮擋的情況;(4)存在番茄果實部分重疊的情況;(5)同時包含2、3、4多種不同情況,即復雜情況。表3給出了5類試驗的識別結果統計情況。

表2 算法運行時間對比Tab. 2 Contrast of methods running time

在表3中,實際成熟番茄個數是人工統計得到的,識別的番茄個數是采用本文算法識別到的成熟番茄個數,漏檢個數是指未被識別到的成熟番茄個數,誤檢個數是指被錯誤檢測的成熟番茄個數(本試驗中的錯誤檢測是一個成熟番茄被錯誤地識別為多個圓形),正確識別率是指正確識別個數與實際成熟番茄個數的比率,漏檢率是指漏檢個數與實際成熟番茄個數的比率,誤檢率是指誤檢個數與實際成熟番茄個數的比率。計算五類試驗平均正確識別率為86.3%,平均漏檢率為5.7%,平均誤檢率為8.0%。

表3 分類試驗識別結果統計情況Tab. 3 Statistics of identification in the classification tests

2.3 試驗結果分析

1) 當一穗果中成熟果實為1個,或多個果實無相互遮擋,且莖葉遮擋極少,無轉色期果實干擾時,本文算法可以準確識別。

2) 當存在多個不同成熟周期的番茄果實、果實被莖葉遮擋、多果重疊等情況,或多種情況同時存在時,識別準確率降低。識別錯誤包括漏檢、誤檢等情況,如遮擋嚴重時會發生漏檢,先采摘識別到的果實,然后再次采集圖像并進行識別,可以實現漏檢番茄的采摘。

3) 番茄果實識別可以與成熟度分級同時進行,這樣當存在多個不同成熟周期的番茄果實時,可以按照成熟度分別采摘存放,以提高采摘效率和經濟效益。

4) 采用改進的Hough圓變換算法識別番茄果實,可以計算出圓心和半徑,用以擬合果實的形心和半徑,為控制番茄采摘機器人機械手動作提供數據信息。

3 結論

1) 本文對采集到的圖像進行下采樣,以及采用Sobel算子對背景分割后的二值圖像進行邊緣提取,都是為了減少Hough圓變換算法的運算量,提高運行效率。由于數字圖像中邊緣信息轉換到參數空間時非精確解,而是近似解,因此對Hough圓變換算法進行改進,對轉換時計算出的圓心及其8-鄰域對應的組合進行投票。由于番茄果實為類球形,采用標準Hough圓變換算法可能將同一個番茄果實識別為多個圓形,因此對Hough圓變換算法進行改進,將圓心相近且半徑相似的組合進行聚類,實現了對番茄果實的準確識別。

2) 本文算法對存在不同成熟周期的番茄果實、莖葉遮擋、多果重疊等多種情況都能有效識別,而傳統的Hough圓變換算法存在一個番茄果實被識別為多個圓形的問題,因此基本失效。對于上述三種情況,本文算法的準確識別率分別為87.5%、85%、84.8%,漏檢率分別為0%,5%,8.7%,誤檢率分別為12.5%,10%,6.5%,三種情況同時存在的復雜情況下準確識別率為84.6%,漏檢率為6.4%,誤檢率為9%,而簡單情況下可以100%準確識別,經統計,平均正確識別率為86.3%,平均漏檢率為5.7%,平均誤檢率為8.0%,平均運行時間為398 ms。

猜你喜歡
檢測
QC 檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
“幾何圖形”檢測題
“角”檢測題
“有理數的乘除法”檢測題
“有理數”檢測題
“角”檢測題
“幾何圖形”檢測題
主站蜘蛛池模板: 91无码人妻精品一区二区蜜桃| 日韩乱码免费一区二区三区| 国产熟睡乱子伦视频网站| 欧美一级在线播放| 成人无码一区二区三区视频在线观看| 亚洲性网站| 久99久热只有精品国产15| 国产欧美专区在线观看| 免费在线成人网| 国产三级a| 国产AV无码专区亚洲精品网站| 国产一级毛片高清完整视频版| 亚洲综合第一区| 露脸国产精品自产在线播| 亚洲一区精品视频在线| 五月天久久综合国产一区二区| 国产精品性| 免费一极毛片| 久青草免费在线视频| 国产在线91在线电影| 婷婷激情五月网| AV老司机AV天堂| 亚洲综合片| 美女无遮挡拍拍拍免费视频| 粗大猛烈进出高潮视频无码| 久久99热66这里只有精品一| 综合色在线| 97免费在线观看视频| 亚洲va视频| 亚洲视频黄| 狠狠色综合网| 尤物成AV人片在线观看| 午夜无码一区二区三区| 高清无码手机在线观看| 97国产精品视频自在拍| 久久久久国产精品熟女影院| www精品久久| 欧美精品亚洲精品日韩专区va| 亚洲国产AV无码综合原创| 国产白浆视频| 欧美爱爱网| 国产精品久久久久鬼色| 午夜限制老子影院888| 精品1区2区3区| 久久综合伊人77777| 天堂va亚洲va欧美va国产| 国产丝袜无码一区二区视频| 成人字幕网视频在线观看| 久久香蕉国产线看观看亚洲片| 国产在线麻豆波多野结衣| 欧美在线导航| 久久精品无码国产一区二区三区 | 污网站在线观看视频| 多人乱p欧美在线观看| 深夜福利视频一区二区| 精品国产www| 天堂av高清一区二区三区| 国产精品.com| 亚洲精品中文字幕午夜| 91成人精品视频| 精品无码人妻一区二区| 国产三级毛片| 欧美成人h精品网站| 成人免费黄色小视频| 欧美精品啪啪一区二区三区| 国产jizz| 久久这里只精品国产99热8| 蜜桃视频一区二区三区| 免费一级毛片| 色呦呦手机在线精品| 日本少妇又色又爽又高潮| 久草网视频在线| 国内99精品激情视频精品| 欧美曰批视频免费播放免费| 精品超清无码视频在线观看| 国产一级α片| 在线观看亚洲精品福利片| 久热re国产手机在线观看| 国产97视频在线| 中文字幕中文字字幕码一二区| 高清久久精品亚洲日韩Av| 色综合天天综合中文网|