余長庚,劉 凱
(1 桂林電子科技大學(xué) 信息與通信學(xué)院,廣西 桂林 541004;2 賀州學(xué)院 信息與通信工程學(xué)院,廣西 賀州 542899)
人工采摘臍橙存在勞動強(qiáng)度大、效率低、成本高等問題,建立自動化、智能化、現(xiàn)代化的采摘作業(yè)體系對保證農(nóng)產(chǎn)品適時采收、降低采摘作業(yè)費(fèi)、實(shí)現(xiàn)農(nóng)業(yè)增收具有非常重要的意義。
機(jī)器人實(shí)現(xiàn)采摘功能,主要在于其能夠在復(fù)雜的農(nóng)業(yè)環(huán)境中準(zhǔn)確識別到水果。基于視覺的水果識別主要通過對顏色模型或者灰度直方圖等特征的處理來實(shí)現(xiàn)[1]。陳科尹等[2]基于視覺顯著性和模糊聚類算法提出了水果圖像識別方法。Peng等[3]基于機(jī)器視覺和SVM提出了多類水果識別研究方法,利用Otsu分割算法對水果圖像進(jìn)行分割并利用SVM分類器對目標(biāo)進(jìn)行分類識別。有研究基于K-means算法對原圖像進(jìn)行聚類分割,實(shí)現(xiàn)目標(biāo)識別[4-5]。另外包含 SSD[6-8]、Faster-RCNN[9-10]和 AlexNet[11]的深度 學(xué)習(xí)算法在水果識別中也有廣泛應(yīng)用,但深度學(xué)習(xí)算法需要較高的硬件配置,不適用于性能受限的移動機(jī)器人。針對農(nóng)業(yè)環(huán)境特別是光照、遮擋和表皮顏色等多種情況,多數(shù)算法存在對臍橙識別率不佳、背景噪聲干擾嚴(yán)重的問題。
針對以上不足,本文統(tǒng)計分析農(nóng)業(yè)環(huán)境下臍橙圖像的特征信息,提出一種基于小波變換與Otsu閾值去噪的臍橙識別方法,通過YCbCr顏色模型分析與處理,采用基于小波變換的圖像分割算法,并設(shè)計基于Otsu閾值的去噪算法針對已分割區(qū)域進(jìn)行去噪處理,最后確定臍橙在圖像中的位置并通過Matlab軟件驗(yàn)證算法的有效性。
對顏色的感知,是基于顏色的飽和度、亮度、顯著性、對比度和色調(diào)等基本屬性的。為更有效地處理圖像所包含的信息,需要選擇合適的顏色模型。顏色模型通常包括RGB模型、HSV模型[12]、LAB模型[13]和YCbCr模型[14]等。相對其他模型,YCbCr模型有更好的對比度,當(dāng)采集的臍橙圖像亮度發(fā)生變化時,YCbCr模型色度的變化范圍很小,更有利于農(nóng)業(yè)環(huán)境中臍橙圖像的后續(xù)處理。YCbCr模型中Y指色彩亮度分量,Cb指藍(lán)色分量與亮度值之間的差異,Cr指紅色分量與亮度值之間的差異。根據(jù)公式(1)將RGB模型轉(zhuǎn)化為YCbCr模型。
式中,將RGB格式的原始臍橙圖像轉(zhuǎn)化為YCbCr模型,并提取各顏色模型的分量。通過對比分析,Cr分量的直方圖有明顯的波峰和波谷形態(tài),有利于圖像分割。圖1為基于原始圖像的YCbCr模型的分析圖。
圖1 原始圖像的YCbCr模型分析圖Fig.1 Analysis of the YCbCr model of the original image
本文利用小波變換提取臍橙的主要特征,參考李月娥等[15]的方法。首先對臍橙原始圖像的Cr分量圖像進(jìn)行小波變換得到一系列分辨率逐次降低的子圖像,每一級子圖像均包含低頻子圖像和高頻子圖像,選取最低級的低頻子圖像并利用模糊C均值聚類算法 (Fuzzy C-means algorithm,F(xiàn)CM)進(jìn)行分割,將低一級的分割結(jié)果擴(kuò)展后應(yīng)用于上一級圖像,一直到最高級圖像為止,得到圖像的分割結(jié)果。
1.2.1 基于小波變換的臍橙特征提取方法 小波變換在時域和頻域同時擁有多尺度分辨性的分析特性,有利于圖像分割[16]。長(M)寬(N)尺寸的臍橙圖像f(x,y)的離散小波變換原理如公式(2)和(3)所示:
式中,i代表水平(H)、垂直(V)和對角線(D)方向;m為水平平移;n為垂直平移;WL(j,m,n)為分解尺度j下臍橙圖像的低頻系數(shù);WH(i)(j,m,n)為分解尺度j下臍橙圖像在3個方向上的高頻系數(shù);Lj,m,n(x,y)表示對縮放函數(shù)進(jìn)行縮放、平移變換;H(i)j,m,n(x,y)表示對3個方向上的小波函數(shù)進(jìn)行縮放、平移變換。
利用小波變換將低通濾波器和高通濾波器同時作用于臍橙圖像水平和垂直2個方向,產(chǎn)生頻帶子圖像。低頻子圖像WL包含臍橙原始圖像主要特征,而其他3個高頻子圖像包含臍橙圖像次要特征,當(dāng)繼續(xù)對WL重復(fù)上述過程時可得到4個次一級的子圖像,如圖2所示。
圖2 小波變換結(jié)構(gòu)示意圖Fig.2 Schematic diagram of wavelet transform structure
經(jīng)過小波變換后,選擇包含臍橙圖像主要特征的低頻子圖像WL并利用FCM算法進(jìn)行圖像分割。
1.2.2 基于FCM算法的圖像分割方法 FCM算法會計算每個像素點(diǎn)對所有類的隸屬度,有效避免背景對目標(biāo)臍橙的干擾,適合處理存在不確定性特點(diǎn)的圖像。試驗(yàn)利用FCM算法將臍橙的低頻子圖像WL中n個像素點(diǎn)xi(i=1,2,···,n)分為c個模糊類,當(dāng)各個像素點(diǎn)與聚類中心的誤差平方和J(U,V)滿足設(shè)定的閾值并計算得到像素點(diǎn)對聚類中心最小隸屬度uik時 ,得到臍橙圖像的聚類中心vi及分類特性。誤差平方和J(U,V)的表達(dá)式如公式(4)所示。
式中,c為圖像的聚類數(shù),c=2;uik表示xi屬于第k類區(qū)域的隸屬函數(shù);m為權(quán)重指數(shù);U=[uik]是模糊歸類矩陣;V={v1,v2,L,vc}是聚類中心矩陣;dik(xk,vi)為第i類的樣本xk到第i類聚類中心vi的距離。dik(xk,vi)定義如公式(5)所示。
通過拉格朗日乘子法分別計算,并修正聚類中心值vi及各個像素點(diǎn)對聚類中心的隸屬度uik,完成臍橙圖像的分割,如公式(6)和(7)所示。
為分析臍橙與噪聲干擾在圖像中的信息,本文將原始圖像與小波變換區(qū)域疊加進(jìn)行目標(biāo)區(qū)域顏色恢復(fù),并針對小波變換區(qū)域設(shè)計Otsu閾值算法進(jìn)行去噪。由于已分割部分以臍橙為主,使得區(qū)域中背景干擾與目標(biāo)更加清晰分明。
提取目標(biāo)區(qū)域的N個像素點(diǎn)并記錄其灰度值,構(gòu)成灰度值一維數(shù)組S(s0、s1、···、sn),將其位置記錄在對應(yīng)的數(shù)組L[(r1,c1)、(r2,c2)、···、(rn,cn)]中。灰度值為s的像素點(diǎn)在圖像中占比P(s)為:
式中,n(s)代 表灰度值為s(0
S1和S2占臍橙圖像像素點(diǎn)總數(shù)的比例p1(t)和p2(t)如公式(11)、(12)所示。
S1和S2所有像素點(diǎn)的灰度值總和I1(t)和I2(t)如公式(13)、(14)所示。
S1和S2的均值 μ1(t)和 μ2(t)如公式(15)、(16)所示。
同理,整幅圖像的均值(μ)如公式(17)所示。
閾值為t時,背景與臍橙的類間方差如公式(18)所示。
在 0 ~S?1范圍內(nèi)選取擁有最大類間方差值的t作為Otsu算法的最終閾值(To),計算公式(19)為:
由于每幅圖像目標(biāo)臍橙的顏色均不同,且存在泛青色的情況,不能夠確定單一不變的圖像閾值(T)。針對這一情況,經(jīng)過多次試驗(yàn)得出T=0.6t時,有較好的背景去噪效果。
由于背景噪聲與識別目標(biāo)顏色相近,處理后仍無法完全消除噪聲,針對這一現(xiàn)象,擬采用質(zhì)心補(bǔ)圓法進(jìn)一步減少背景噪聲并確定臍橙所在圓的圓心和半徑。
為實(shí)現(xiàn)圖像中目標(biāo)臍橙的定位,并解決去噪問題,本文在Otsu閾值去噪算法基礎(chǔ)上提出一種質(zhì)心補(bǔ)圓法 ( Circle filling method based on the center of mass,CFCM),以去除分割區(qū)域遺留的噪聲并確定臍橙在圖像中的位置。
質(zhì)心補(bǔ)圓法依據(jù)質(zhì)心確定方程在分割范圍內(nèi)確定臍橙質(zhì)心位置,并以質(zhì)心為檢測圓的圓心逐步擴(kuò)大檢測半徑,最終得到符合像素點(diǎn)占比要求的半徑(r)。設(shè)定初始檢測半徑r=2并以2為步進(jìn)單位進(jìn)行迭代,當(dāng)檢測圓內(nèi)臍橙像素點(diǎn)占比達(dá)到分割后區(qū)域像素點(diǎn)總數(shù)的75%時,輸出質(zhì)心坐標(biāo)以及半徑r,以便為實(shí)際采摘過程預(yù)留出安全作業(yè)空間。
確定臍橙質(zhì)心后計算檢測圓半徑,設(shè)α為檢測圓半徑內(nèi)臍橙像素點(diǎn)數(shù)百分比,m為二值圖像像素點(diǎn)灰度值為255的點(diǎn)的數(shù)目,n為二值圖像中灰度值為255且與質(zhì)心距離不大于半徑r的像素點(diǎn)數(shù)目,α計算如公式(22)所示。
最后將檢測圓圓心與半徑繪制到臍橙原始圖像中,確定臍橙位置。
臍橙實(shí)際形狀近似為圓形,但不是標(biāo)準(zhǔn)圓形,所以設(shè)定要求算法所確定的圓心在目標(biāo)中央位置,并且檢測圓圈定范圍包含95%以上的目標(biāo);檢測圓的圈定半徑不能夠超出目標(biāo)半徑的一半。在誤差允許范圍內(nèi),可通過控制操作對目標(biāo)進(jìn)行預(yù)處理,去除遮擋,以便對臍橙進(jìn)行更加精確地定位和采摘。
為驗(yàn)證算法性能,于廣西正豐集團(tuán)水果出口加工中心采集包含臍橙的原始圖像共416幅,按照光照條件、遮擋情況和表皮顏色3部分進(jìn)行數(shù)據(jù)統(tǒng)計。其中光照情況分為順光和逆光,分別為284與132幅;遮擋情況分為遮擋和非遮擋,分別為196與220幅;臍橙表皮顏色情況分為泛青色和橙色,分別為124與292幅。所有采集的原始圖像像素為 4 032×3 024,為符合實(shí)際處理要求,統(tǒng)一采用雙線性內(nèi)插法將圖像壓縮至640×480。試驗(yàn)設(shè)備為裝有Intel Core i7處理器的聯(lián)想臺式電腦,采用Windows 10系統(tǒng)并搭載Matlab2018b軟件。
利用Matlab結(jié)合上述算法對不同光照條件、不同遮擋情況和不同表皮顏色狀況下的臍橙圖像進(jìn)行目標(biāo)識別,并選擇3種典型情況的臍橙圖像進(jìn)行識別算法分析,分別將臍橙原始圖像轉(zhuǎn)化為YCbCr顏色模型,并提取其Cr分量圖像進(jìn)行基于小波變換的分割處理,針對已分割區(qū)域采用Otsu閾值算法進(jìn)行去噪處理,而后確定臍橙位置,具體識別情況見圖3。
圖3 不同情況下基于小波變換與Otsu閾值去噪的臍橙識別方法分析Fig.3 Analysis of navel orange recognition method based on wavelet transform and Otsu threshold denoising under different conditions
YCbCr顏色模型下基于小波變換的分割方法的效果分別如圖3a2、3b2和3c2所示,在小波分割過程中農(nóng)業(yè)環(huán)境的復(fù)雜性導(dǎo)致運(yùn)行基于小波變換的FCM算法平均消耗時間最長,約0.5 s。然后根據(jù)原始圖像將其進(jìn)行圖像顏色恢復(fù),由于農(nóng)業(yè)環(huán)境下臍橙與背景的灰度值相互混疊,算法無法找到合適的閾值對臍橙進(jìn)行準(zhǔn)確分割而存在大量背景噪聲干擾,如圖3a3、3b3與3c3所示。針對已分割區(qū)域設(shè)計Otsu閾值去噪方法以減少背景噪聲干擾,并依據(jù)經(jīng)驗(yàn)取圖像閾值T=0.6t,圖像去噪處理如圖3a4、3b4與3c4所示,其中去噪過程中運(yùn)行平均時間約為0.013 s。最后設(shè)計質(zhì)心補(bǔ)圓法在去噪處理的基礎(chǔ)上確定臍橙在二維圖像中的位置信息,如圖3a5、3b5與3c5所示,其中定位過程運(yùn)行時間約為0.324 s?;诒疚乃惴ǖ哪毘葓D像識別、去噪和定位處理平均消耗總時間約為0.840 s。
在保證算法運(yùn)行速度的情況下,不同遮擋情況、光照條件和表皮顏色條件下的臍橙識別率統(tǒng)計數(shù)據(jù)如表1所示。
由表1可知,算法對順光照射下的臍橙有較好的識別效果,而在逆光照射情況下臍橙所處環(huán)境較暗,而且可能會在圖像中形成高亮度光斑導(dǎo)致臍橙識別率相對順光條件下較低(90.15%),低于順光情況下的臍橙識別率(92.96%)。臍橙與背景顏色的差異導(dǎo)致表皮顏色不同的臍橙識別結(jié)果不同。對于正常橙色,在順光和逆光條件下臍橙識別率分別達(dá)到95.81%和91.09%,不考慮光照影響的情況下臍橙識別率為94.18%;而對于泛青色臍橙,目標(biāo)臍橙與背景枝葉的顏色相似導(dǎo)致識別率相對較低,在2種光照條件下均為87.10%。僅考慮遮擋和非遮擋情況時,臍橙識別率分別為90.82%和93.18%。試驗(yàn)數(shù)據(jù)表明,YCbCr顏色模型下的小波變換與Otsu閾值去噪方法總體識別率為92.07%,能有效地去除識別過程中產(chǎn)生的噪聲干擾。
表1 臍橙識別率統(tǒng)計結(jié)果Table 1 Statistics of navel orange recognition rate %
本文針對農(nóng)業(yè)環(huán)境中存在的不同遮擋情況、光照條件和表皮顏色條件下的臍橙識別精度不佳的問題,提出一種基于小波變換和Otsu閾值去噪的識別算法,通過小波變換算法對復(fù)雜農(nóng)業(yè)環(huán)境下的圖像進(jìn)行粗略分割,然后針對已分割區(qū)域進(jìn)行Otsu閾值去噪處理,最后針對圖像分割區(qū)域設(shè)計一種質(zhì)心補(bǔ)圓法確定臍橙位置,同時消除算法產(chǎn)生的噪聲干擾。試驗(yàn)結(jié)果表明,基于小波變換與Otsu閾值去噪的臍橙識別算法能有效解決復(fù)雜農(nóng)業(yè)環(huán)境下的噪聲干擾和臍橙識別精度不佳的問題。