李 卓,楊子敬,郝建唯,高宏偉
(沈陽(yáng)理工大學(xué) 信息科學(xué)與工程學(xué)院 遼寧 沈陽(yáng) 110159)
?
蘋(píng)果幼果圖像的分割與識(shí)別算法研究
李卓,楊子敬,郝建唯,高宏偉
(沈陽(yáng)理工大學(xué) 信息科學(xué)與工程學(xué)院 遼寧 沈陽(yáng) 110159)
摘要:以蘋(píng)果的幼果為研究對(duì)象,在自然環(huán)境下采集其可見(jiàn)光圖像,研究幼果圖像分割與識(shí)別的算法。對(duì)幼果圖像進(jìn)行預(yù)處理,利用Otsu法對(duì)圖像進(jìn)行有效分割。在預(yù)處理的基礎(chǔ)上,對(duì)蘋(píng)果幼果圖像進(jìn)行識(shí)別。利用改進(jìn)后的連通域標(biāo)記算法對(duì)預(yù)處理后的蘋(píng)果幼果圖像進(jìn)行標(biāo)記并標(biāo)號(hào),進(jìn)一步去除不符合要求的小面積,減少干擾。然后對(duì)圖像進(jìn)行輪廓提取,利用圓形度這一形狀特征量識(shí)別出蘋(píng)果幼果,并進(jìn)行自動(dòng)標(biāo)記。實(shí)驗(yàn)結(jié)果證明了相關(guān)算法的正確性和有效性。
關(guān)鍵詞:蘋(píng)果幼果;圖像分割;識(shí)別;連通域標(biāo)記;圓形度
傳統(tǒng)的對(duì)于自然光狀態(tài)下的果蔬進(jìn)行分割和識(shí)別的圖像處理方法,絕大多數(shù)是利用果實(shí)和樹(shù)葉之間的顏色,通過(guò)直方圖的曲線閾值分割算法把不同于葉子顏色的果蔬從綠色的葉子中分離出來(lái),進(jìn)一步對(duì)果蔬進(jìn)行識(shí)別。1995年,意大利的Buemi[1-4]研制出在溫室中應(yīng)用的針對(duì)西紅柿進(jìn)行自動(dòng)化采摘的系統(tǒng)。這種系統(tǒng)中的視覺(jué)部分運(yùn)用能夠得出HIS成分的相機(jī)對(duì)圖像進(jìn)行獲取,運(yùn)用圖像的色調(diào)和飽和度分割圖像,利用在相同拍攝場(chǎng)景下拍攝的兩幅不同圖像信息進(jìn)行空間匹配操作來(lái)獲取其三維數(shù)據(jù),可以成功識(shí)別90%的成熟西紅柿。2001 年,Bulnaon D.M.等[2]依照LCD (Luminance and Color Difference of red)模型和色度模型(Chromaticity Model)對(duì)在多種強(qiáng)度自然光照射下Fuji蘋(píng)果來(lái)判識(shí),在圖像分割方面運(yùn)用多閾值算法,識(shí)別的正確率大約為80%。張鐵中等[5-8]在2003年利用絕大多數(shù)水果在需要收獲的時(shí)候,水果自身的顏色和整個(gè)果樹(shù)葉子的顏色兩者有較大的區(qū)別,但是相同類型的水果自身顏色比較一致的特點(diǎn),提出了一種適合在對(duì)水果進(jìn)行采摘的,基于色彩空間參照表的,分割方面的算法。
本文以未成熟的蘋(píng)果幼果為研究對(duì)象,對(duì)未成熟的青色幼果進(jìn)行圖像拍攝,采用CPU類型為AMD炫龍II M540,2G內(nèi)存的PC機(jī),基于Matlab和DM6437圖像處理試驗(yàn)箱設(shè)計(jì)了對(duì)幼果圖像進(jìn)行分割與識(shí)別的程序,并通過(guò)了實(shí)驗(yàn)驗(yàn)證。
蘋(píng)果幼果處理流程圖如圖1所示。
對(duì)于自然條件下采集到的蘋(píng)果幼果果實(shí)的顏色和其背景色相似程度很大,難以把果實(shí)從背景中分離出來(lái)。根據(jù)這一情況,利用Otsu分割算法并結(jié)合其他的圖像處理算法對(duì)圖像中的目標(biāo)和背景進(jìn)行合理的分割,提高分割的準(zhǔn)確度。
Otsu法是一種自適應(yīng)的閾值分割算法,該算法的自適應(yīng)能力強(qiáng),能夠很好地降低分割錯(cuò)誤率,該方法利用圖像自身的灰度特點(diǎn)把原圖像分割成為前景與背景兩個(gè)部分。當(dāng)前景與背景之間的類間方差越小,則證明分割的前景和背景的差別也就越小,當(dāng)一部分目標(biāo)錯(cuò)分成背景或者部分背景圖像錯(cuò)分成目標(biāo),則都會(huì)引發(fā)這兩個(gè)部分之間的差距變小。
圖1 蘋(píng)果幼果處理流程圖
對(duì)于圖像I(x,y),前景圖像(即目標(biāo))與背景圖像的分割閾值設(shè)為T(mén),前景像素在總的像素?cái)?shù)的比重設(shè)為ω0,平均灰度μ0,背景像素在總的像素?cái)?shù)的比重為ω1,平均灰度為μ1。圖像總的平均灰度設(shè)為μ,類間方差設(shè)為g。
圖像尺寸為M×N,像素灰度值小于閾值T的總數(shù)為N0,像素灰度值比閾值T大的像素?cái)?shù)為N1,如果背景圖像比較模糊,那么有
(1)
(2)
N0+N1=M×N
(3)
ω0+ω1=1
(4)
μ=ω0μ0+ω1μ1
(5)
g=ω0(μ0-μ)2+ω1(μ1-μ)2
(6)
將式(4)代到式(6),得到等價(jià)公式:
g=ω0ω1(μ0-μ1)2T
(7)
利用遍歷的辦法獲得使類間方差為最大的閾值T,即為所求。本文所使用的閾值為74。
對(duì)初步分割的圖像進(jìn)行進(jìn)一步的果實(shí)的識(shí)別,利用改進(jìn)的連通域標(biāo)記方法和圓形度這一特征量對(duì)幼果進(jìn)行識(shí)別,從而從背景中將果實(shí)識(shí)別并標(biāo)記出來(lái)。
連通域標(biāo)記指的是把待處理圖像中的,對(duì)于遵循某類連通規(guī)定(四鄰域連通、八鄰域連通或m鄰域連通)的像素點(diǎn)標(biāo)記歸為同一類目標(biāo)[9],構(gòu)建一種較為合適的數(shù)據(jù)結(jié)構(gòu),來(lái)對(duì)圖像中各個(gè)像素點(diǎn)所擁有的標(biāo)號(hào)進(jìn)行存儲(chǔ),并且存儲(chǔ)和它相關(guān)的其他信息[10]。
文中改進(jìn)的連通域標(biāo)號(hào)分為兩個(gè)階段:第一個(gè)階段,將二值圖像進(jìn)行掃描取得一個(gè)臨時(shí)標(biāo)號(hào),此時(shí)必定會(huì)出現(xiàn)一種情況,即不同的連通域標(biāo)號(hào)指的是同一區(qū)域。因此此時(shí)的像素連通域標(biāo)號(hào)叫做待標(biāo)號(hào)合并;第二階段,對(duì)等價(jià)連通域標(biāo)號(hào)進(jìn)行歸一,即運(yùn)用共同的連通域標(biāo)號(hào)代替第一個(gè)階段的待標(biāo)號(hào)合并,目標(biāo)連通域標(biāo)號(hào)是指這個(gè)階段的像素點(diǎn)連通域標(biāo)號(hào),即為最后的標(biāo)號(hào)。
假設(shè)某像素點(diǎn)f(x,y),則f(x-1,y)、f(x+1,y)、f(x,y-1)、f(x,y+1)是它四個(gè)周圍鄰域。如果merge(x,y)為f(x,y)這個(gè)像素點(diǎn)的連通域標(biāo)號(hào)。如果f(x,y)開(kāi)始掃描時(shí),已經(jīng)結(jié)束了f(x-1,y)和f(x,y-1)掃描,merge(x-1,y)和merge(x,y-1)是已知數(shù)。所以在四鄰域內(nèi),f(x,y)像素點(diǎn)的連通域標(biāo)號(hào)merge(x,y)只與像素點(diǎn)f(x-1,y)、f(x,y-1)以及像素點(diǎn)的連通域標(biāo)號(hào)merge(x-1,y)、merge(x,y-1)相關(guān),如式(8)所示。
(8)
標(biāo)記共同連通域與處理等價(jià)標(biāo)號(hào)是該算法實(shí)現(xiàn)的難點(diǎn)。掃描完二值圖像能得到一個(gè)連通域臨時(shí)標(biāo)號(hào),很多等價(jià)標(biāo)號(hào)存在于其中,即存在大量的沖突標(biāo)號(hào)。將各個(gè)連通域臨時(shí)標(biāo)號(hào)的連通域共同標(biāo)號(hào)用一維數(shù)組記錄下來(lái),臨時(shí)連通域標(biāo)號(hào)作為數(shù)組的下標(biāo),共同連通域標(biāo)號(hào)即為其值。如果標(biāo)號(hào)有沖突時(shí),要對(duì)等價(jià)的連通域標(biāo)號(hào)進(jìn)行合并,即掃描一遍共同連通域數(shù)組,把等價(jià)標(biāo)號(hào)的共同連通域標(biāo)號(hào)標(biāo)記為相同。
輪廓邊緣的提取包括尋找下一邊界點(diǎn)和跟蹤邊緣兩方面,前一方面的工作是尋找到邊界上的一個(gè)已知點(diǎn),從該點(diǎn)開(kāi)始搜索下個(gè)邊緣點(diǎn);后一方面的工作是在追蹤邊界同時(shí)對(duì)過(guò)程進(jìn)行監(jiān)控和記錄下必要的信息。
本文運(yùn)用改進(jìn)后的輪廓邊緣提取算法,以8鄰域連通鏈碼進(jìn)行邊緣提取,具體算法如下:
(1) 檢查開(kāi)始條件
檢查邊界有兩個(gè)起始前提:第一、要有個(gè)起始的邊緣點(diǎn);第二、是否找到一個(gè)新的邊界點(diǎn)bFindPoint并判斷該邊界點(diǎn)是否重新回到了起始點(diǎn)。
(2) 檢測(cè)過(guò)程
步驟一、從merge表中的第一個(gè)數(shù),即編號(hào)為1的圖像進(jìn)行遍歷。首先從左下角開(kāi)始對(duì)merge表進(jìn)行掃描,找到merge表中第一個(gè)為1 的像素的位置,設(shè)定為起始掃描點(diǎn),以這個(gè)像素點(diǎn)為起點(diǎn),按照順時(shí)針的方向,先掃描該起始點(diǎn)左上方向的像素點(diǎn),判斷其在merge表中的是否標(biāo)號(hào)為1;
步驟二、如果該像素對(duì)應(yīng)在merge表中的標(biāo)號(hào)為1,則再以這個(gè)點(diǎn)為新的起始點(diǎn)進(jìn)行掃描,掃描方向?yàn)樵瓛呙璺较蚰嫦蛐D(zhuǎn)兩個(gè)方向,即掃描該像素點(diǎn)的左下角方向?yàn)榈谝粋€(gè)掃描的方向,再按照順時(shí)針的方向依次進(jìn)行掃描;對(duì)應(yīng)的記錄像素?cái)?shù)的數(shù)組自動(dòng)加1,來(lái)計(jì)算邊界像素的個(gè)數(shù);
步驟三、如果第一個(gè)掃描像素點(diǎn)的左上方的像素點(diǎn)對(duì)應(yīng)在merge表中的標(biāo)號(hào)不為1,則順時(shí)針繼續(xù)掃描merge,直到掃描到標(biāo)號(hào)為1的像素點(diǎn),再按照步驟二所述進(jìn)行下一像素的掃描;
步驟四、如果掃描merge表中的最后一個(gè)像素的坐標(biāo)值與起始掃描像素的坐標(biāo)值一致,證明merge表中標(biāo)號(hào)為1的目標(biāo)圖像的邊界已經(jīng)找完,數(shù)組中累加的邊界像素點(diǎn)的個(gè)數(shù)即為merge表中標(biāo)號(hào)為1的目標(biāo)圖像的邊界的周長(zhǎng)。接著繼續(xù)按上述步驟繼續(xù)掃描merge表中標(biāo)號(hào)為2的邊界數(shù),以此類推,直至掃描完merge表中的所有的標(biāo)號(hào)。
由于本文處理的蘋(píng)果圖像背景比較復(fù)雜,蘋(píng)果幼果的顏色和葉子的顏色幾乎一樣,很難從顏色和紋理方面進(jìn)行判別。大多數(shù)學(xué)者一般都是對(duì)蘋(píng)果的形狀和葉子進(jìn)行處理。無(wú)論是在蘋(píng)果的圓形度、復(fù)雜度和偽體積上都和葉子有明顯的區(qū)別。本文以圓形度對(duì)蘋(píng)果和葉子進(jìn)行區(qū)分。
圓形度是作為一種衡量該形狀與圓形相似的一個(gè)度量,即
(9)
式中:P代表目標(biāo)的周長(zhǎng);A代表目標(biāo)的面積。如果目標(biāo)體是標(biāo)準(zhǔn)圓形,C為1;當(dāng)物體是長(zhǎng)方形或是形狀非常復(fù)雜時(shí),C的值會(huì)很小。
經(jīng)過(guò)以上的圓形度的計(jì)算,能把不是蘋(píng)果果實(shí)的區(qū)域變成背景色,而只留下蘋(píng)果果實(shí)的區(qū)域,這樣就能把蘋(píng)果果實(shí)從復(fù)雜的背景中分離出來(lái)。
針對(duì)真實(shí)采集的圖像進(jìn)行了實(shí)驗(yàn),圖2為采集到的蘋(píng)果幼果圖像;圖3為二值化處理后的圖像;圖4為刪除小面積后的圖像;圖5為Otsu算法分割結(jié)果。連通域標(biāo)記的結(jié)果圖如圖6所示,不同的連通域用不同的顏色表示。將各個(gè)連通域的邊緣輪廓用白色線條標(biāo)記,得到連通域的邊緣如圖7所示。計(jì)算得到的12個(gè)連通區(qū)域的周長(zhǎng),如表1所示。
表1 12個(gè)連通域的周長(zhǎng)
圖像中的12個(gè)連通域的總面積以及每一個(gè)的圓形度值分別如表2、3所示。
表2 12個(gè)連通域?qū)?yīng)的面積
表3 12個(gè)連通域的圓形度數(shù)值
根據(jù)以上的圓形度計(jì)算,以圓形度0.8為閾值,即符合要求的圓形度應(yīng)該滿足0.8 圖9~13為利用DM6437圖像處理試驗(yàn)箱所得到的結(jié)果。 經(jīng)過(guò)大量的實(shí)驗(yàn),結(jié)果表明該分割識(shí)別蘋(píng)果幼果的方法識(shí)別率在70%左右,其中沒(méi)有得到很好分割與識(shí)別的原因在于:(1)光源選擇不好,在強(qiáng)光源的情況下,蘋(píng)果幼果自身的反光影響了幼果的識(shí)別;(2)葉子的遮擋,由于葉子遮擋住幼果,導(dǎo)致幼果沒(méi)能很好地分割出來(lái)。 圖2 采集到的蘋(píng)果幼果圖像 圖3 二值化后的圖像 圖4 刪除小面積后的圖像 圖5 閾值為74的Otsu算法分割結(jié)果 圖6 對(duì)連通域進(jìn)行標(biāo)記圖 圖7 獲取各連通域邊緣像素 圖8 蘋(píng)果分割與識(shí)別最終效果圖 圖9 DM6437圖像處理試驗(yàn)箱 圖10 拍攝的蘋(píng)果幼果原圖像 圖11 二值化處理后的效果圖 圖12 Otsu分割后的圖像 圖13 最終分割出來(lái)的效果圖 對(duì)蘋(píng)果幼果果實(shí)進(jìn)行圖像處理,首先對(duì)二值圖像進(jìn)行連通域的標(biāo)記;其次根據(jù)標(biāo)記的連通域?qū)Ω鱾€(gè)連通域進(jìn)行分析去除過(guò)大或過(guò)小的連通域,使目標(biāo)區(qū)域,即蘋(píng)果圖像所表示的區(qū)域更加清晰,減少后續(xù)處理所需要的時(shí)間;然后運(yùn)用改進(jìn)后的鏈碼算法,提取目標(biāo)區(qū)域的邊緣信息并且利用邊緣信息計(jì)算出各個(gè)區(qū)域的周長(zhǎng);最后利用圓形度對(duì)各個(gè)區(qū)域進(jìn)行處理,最終將蘋(píng)果果實(shí)從復(fù)雜的背景圖像中分割出來(lái),完成了蘋(píng)果圖像的分割與識(shí)別,為后續(xù)進(jìn)一步研究蘋(píng)果幼果自動(dòng)套袋技術(shù)奠定了基礎(chǔ)。 參考文獻(xiàn): [1]Buemi F M Massa,G Sandini.A robotic system for greenhouse operations[C].In 4th Workshop on Robotics in Agriculture*IARP,Tolouse,1995:172-184. [2]崔勇.農(nóng)業(yè)機(jī)器人的研究與應(yīng)用淺探[J].南方農(nóng)機(jī),2008,(1):35-37. [3]田素博.國(guó)內(nèi)外農(nóng)業(yè)機(jī)器人的研究進(jìn)展[J].農(nóng)業(yè)機(jī)械化與電氣化,2007,(2):3-5. [4]沈明霞,姬長(zhǎng)英.農(nóng)業(yè)機(jī)器人的開(kāi)發(fā)背景及技術(shù)動(dòng)向[J].農(nóng)機(jī)化研究,2000,(2):31-35. [5]Schertz C E,Brown G K. Basic considerations in mechanizing citrus harvest[J].Transactions of the ASAE,1968,11(2):343-346. [6]Kondo N′ Nishitsuji,Ling P P,Ting K C. Visual feedback guided robotic cherry tomato harvesting[J].Transactions of the ASAE,1996,39(6): 2331-2338. [7]張瑞合,姬長(zhǎng)英,沈明霞,等.計(jì)算機(jī)視覺(jué)技術(shù)在番茄收獲中的應(yīng)用[J].農(nóng)業(yè)機(jī)械學(xué)報(bào),2001,32 (5): 50-53. [8]張鐵中,林寶龍,高銳.水果采摘機(jī)器人視覺(jué)系統(tǒng)的目標(biāo)提取[J].中國(guó)農(nóng)業(yè)大學(xué)學(xué)報(bào),2004,9(2):68-72. [9]Sonka M,H lacac V,Boyle R.Image Processing,Analysis,and Machine Vision(2nd,ed)[M].北京:人民郵電出版社,2002. [10]Bulgarelli A,Stefano L D. A Simple and Effeient Connected Component Labeling Algorithm[C].In:Proc of the 10th International conference on Image Analysis and Processing,Venice,Italy,1999:322-327. (責(zé)任編輯:馬金發(fā)) Segmentation and Recognition Algorithms for Image of Young Apple LI Zhuo,YANG Zijing,HAO Jianwei,GAO Hongwei (Shenyang Ligong University,Shenyang 110159,China) Abstract:Apple′s young fruit is taken as research object,and key segmentation technologies and recognition of young fruit images are studied,the images are captured in visible light of natural environment and image processing methods of segmentation and recognition of the apple′s fruit are researched based on knowledge of image processing.Firstly,in order to preprocess the apple images,the image is effectively segmented through the Otsu segmentation algorithm.Secondly,on the basis of pretreatment,the image of apple′s fruit is recognized.The preprocessed apple images are marked and labeled with the improved connected components labeling algorithm which removes small areas that do not meet the requirements to reduce the interference,and then the image contour is extracted.The apple fruit is identified and automatically marked by the shape characteristics of circular degree.The algorithms are proved to be effective and correct by experimental results. Key words:apple′s young fruit;image segmentation;recognition;connected components labeling;circularity 中圖分類號(hào):TP317.4 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1003-1251(2015)01-0034-06 通訊作者: 作者簡(jiǎn)介:李卓(1991—),男,本科生;高宏偉(1978—), 男, 副教授,博士, 研究方向:計(jì)算機(jī)視覺(jué)、智能控制. 基金項(xiàng)目:機(jī)器人學(xué)國(guó)家重點(diǎn)實(shí)驗(yàn)室開(kāi)放課題(2012017);沈陽(yáng)理工大學(xué)計(jì)算機(jī)應(yīng)用技術(shù)重點(diǎn)學(xué)科開(kāi)放基金;沈陽(yáng)理工大學(xué)大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃資助項(xiàng)目 收稿日期:2014-03-244 結(jié)論