李紅麗,沈相龍,王 通,周松豪
(鄭州工程技術(shù)學(xué)院 機(jī)電與車(chē)輛工程學(xué)院,河南,鄭州 450044)
對(duì)于傳統(tǒng)的播撒機(jī)器人而言,其著重點(diǎn)在于更高效率的作業(yè),而對(duì)于邊緣播撒的精準(zhǔn)度有所忽略,導(dǎo)致對(duì)邊緣農(nóng)作物的播撒量過(guò)多或過(guò)少,過(guò)多會(huì)增加邊緣道路的安全隱患,過(guò)少會(huì)導(dǎo)致邊緣農(nóng)作物產(chǎn)量低下。對(duì)于邊緣播撒的難題,采用視覺(jué)定位和人工智能識(shí)別算法的播撒機(jī)器人,對(duì)邊緣位置的識(shí)別定位更加精準(zhǔn),能更好實(shí)現(xiàn)全區(qū)域覆蓋的精準(zhǔn)播撒。
因此,是否能夠準(zhǔn)確識(shí)別邊緣是播撒機(jī)器人能夠切實(shí)提高農(nóng)作物產(chǎn)量的關(guān)鍵因素。在現(xiàn)在的研究中一般將隨機(jī)噪聲分為脈沖噪聲、窄帶噪聲和起伏噪聲。本文研究的主要是脈沖噪聲,而固定值脈沖噪聲也稱為椒鹽噪聲,其灰度以等概率取最小灰度值和最大灰度值,屬于突發(fā)性的,對(duì)數(shù)字通信影響大。而在傳統(tǒng)的針對(duì)椒鹽噪聲濾波算法中大多用的是中值算法,而傳統(tǒng)中值算法仍然存在對(duì)于相對(duì)大概率的保留噪聲點(diǎn)的情況,所以學(xué)者對(duì)其進(jìn)行了改進(jìn),如采用快速均值濾波,采用自適應(yīng)加權(quán)均值濾波算法等。通過(guò)對(duì)處理點(diǎn)所在模板內(nèi)其余各點(diǎn)與該點(diǎn)的距離進(jìn)行加權(quán)計(jì)算求均值,最終將均值賦予該點(diǎn)。均值濾波很好地解決了噪聲點(diǎn)保留的問(wèn)題,但其仍然改變了原有信號(hào)點(diǎn)的灰度,使得其更加的圓滑,在細(xì)節(jié)保留方面不足。因此,有學(xué)者對(duì)傳統(tǒng)中值濾波加以改進(jìn),根據(jù)中值濾波改進(jìn)的自適應(yīng)算法對(duì)疑似噪聲點(diǎn)加以處理,對(duì)信號(hào)點(diǎn)加以保留。這些算法極大限度地保留原有的細(xì)節(jié),但對(duì)于噪聲點(diǎn)的判斷不同,存在通過(guò)對(duì)于鄰近點(diǎn)的相關(guān)性確定,也存在通過(guò)對(duì)于模板內(nèi)中值、最小值、最大值的關(guān)系反復(fù)判斷確定。在實(shí)際處理中,例如50%噪聲情況下,至少有半數(shù)的點(diǎn)是未受到污染的,整體計(jì)算將會(huì)極大地增加計(jì)算時(shí)間。為解決上述問(wèn)題,本文采用一種基于中值算法的快速濾除椒鹽噪聲的自適應(yīng)中值濾波算法。對(duì)于疑似噪聲點(diǎn)做標(biāo)定,保留原有信號(hào)點(diǎn),從而有針對(duì)性地對(duì)噪聲點(diǎn)進(jìn)行處理。整體算法不需要閾值,細(xì)節(jié)保留效果好,濾波效果好,大幅度減少了運(yùn)算時(shí)間,對(duì)于當(dāng)下普遍高像素圖像處理有很強(qiáng)的實(shí)用性。
為了實(shí)現(xiàn)對(duì)邊緣區(qū)域精準(zhǔn)播撒的目標(biāo),需要將智能識(shí)別、視覺(jué)定位與傳統(tǒng)的播撒機(jī)器相結(jié)合,從而提高播撒機(jī)器人在邊緣區(qū)域作業(yè)時(shí)的精準(zhǔn)度和作業(yè)效率。
播撒機(jī)器人利用智能識(shí)別和光流傳感器采集信號(hào),在播撒時(shí)利用視覺(jué)識(shí)別模塊自帶的灰度傳感模式初步對(duì)信號(hào)進(jìn)行處理和轉(zhuǎn)換,利用機(jī)器人的光流傳感模塊進(jìn)行機(jī)器人的定位。如圖1所示,目前采用智能視覺(jué)的識(shí)別裝置一般初次采集到的圖像都是彩色圖像,不能直接將檢測(cè)所需的數(shù)據(jù)及時(shí)高效的進(jìn)行處理,因此需要將彩色圖像轉(zhuǎn)換為灰度圖像,并對(duì)圖像進(jìn)行分割和邊緣檢測(cè)。圖像的處理常采用Roberts算子,該算子可以有效檢測(cè)出圖像灰度或圖像中色彩比較突出的部位,通過(guò)圖像色彩梯度的變化,來(lái)對(duì)圖像進(jìn)行分割和邊緣檢測(cè)。
圖1 播撒機(jī)器人基本框架
光流傳感器采集的圖像一般是灰度圖像,而采用智能識(shí)別初次采集到的圖像一般是彩色圖像,不能對(duì)所采集的圖像進(jìn)行處理,因此需要將彩色圖像轉(zhuǎn)換為灰度圖像,將采集到的圖像轉(zhuǎn)換為灰度圖后再對(duì)圖像數(shù)據(jù)進(jìn)行處理,通過(guò)對(duì)灰度梯度分級(jí)別識(shí)別分析從而實(shí)現(xiàn)對(duì)邊緣的檢測(cè)和部分物體的識(shí)別分類。
根據(jù)光流模塊來(lái)對(duì)植保飛行器的位置進(jìn)行調(diào)節(jié)。首先光流模塊會(huì)對(duì)地面發(fā)射光信號(hào)并接收數(shù)據(jù),然后通過(guò)計(jì)算得出其高度差,重復(fù)若干次后形成一個(gè)與高度差有關(guān)的二維圖像后交由飛控系統(tǒng)進(jìn)行處理。計(jì)算的過(guò)程及公式如下。
若下面兩個(gè)假設(shè)成立:
①攝像頭采集到的兩幀圖像之間的像素灰度不變;
②相鄰的兩幀像素具有相對(duì)運(yùn)動(dòng)。
由假設(shè)①得,若兩幀的灰度值不變,那么有以下關(guān)系成立:
fxu+fyv+ft=0
(1)
其中:
(2)
(3)
以上就是光流方程,其中fx和fy表示圖像的梯度,ft表示時(shí)間梯度,但僅用上述方法是無(wú)法得到(u,v),我們還需采用經(jīng)典的lucas-Kanade方法來(lái)進(jìn)行求解。
在lucas-Kanade方法中,我們需要用到假設(shè)②,即在目標(biāo)點(diǎn)的鄰域內(nèi)所有的點(diǎn)都具有相似的運(yùn)動(dòng),這就是lucas-kanade方法的核心?;谠摷僭O(shè),其利用一個(gè)3×3鄰域中的9個(gè)點(diǎn)具有相同運(yùn)動(dòng)得到9個(gè)光流方程,然后采用最小二乘法進(jìn)行擬合求解,最終得到(u,v)如下:
(4)
u是x方向上的位移量,v是y方向上的位移矢量,i的取值為1到9。
以上就是光流法計(jì)算像素點(diǎn)的移動(dòng)速度的方法,在使用的時(shí)候,只需要對(duì)圖像中的一些點(diǎn)去跟蹤,采用上面的計(jì)算方法就可以得到光流向量,根據(jù)得到的光流向量,就可以進(jìn)一步優(yōu)化飛行器的姿態(tài)控制,實(shí)現(xiàn)更加準(zhǔn)確的控制。
在實(shí)際的邊緣檢測(cè)中,往往存在許多干擾噪聲,噪聲的種類繁多且復(fù)雜,對(duì)完成實(shí)際工作產(chǎn)生了很大影響。圖像分割是將圖像劃分為數(shù)個(gè)有意義的區(qū)域,圖像分割主要有三種分割方式,分別根據(jù)圖像邊緣、圖像閾值和圖像區(qū)域進(jìn)行分割。其中基于圖像邊緣的分割方法,是通過(guò)邊緣檢測(cè)算法計(jì)算圖像區(qū)域的灰度值、顏色以及紋理等具有不規(guī)則性的邊緣,利用這些邊緣輪廓來(lái)確定圖像區(qū)域?;陂撝档膱D像分割是通過(guò)對(duì)物體表面光線發(fā)射或吸收的情況下來(lái)確定閾值,以此進(jìn)行分割的方式,其主要包含兩種方式。一種是最為基礎(chǔ)的人工分割操作,運(yùn)用直方圖技術(shù)測(cè)試出最佳閾值,并將分割目標(biāo)與背景隔離。人工分割本身就會(huì)受到人為因素的影響,需要經(jīng)過(guò)反復(fù)監(jiān)測(cè)和調(diào)整才能得到良好的分割效果,而在農(nóng)業(yè)生產(chǎn)中作物受光照條件影響程度較大,發(fā)生改變時(shí)就需要調(diào)整閾值,而頻繁調(diào)整閾值效果很容易對(duì)閾值分割造成影響。利用基于中值濾波和多結(jié)構(gòu)元的抗干擾處理方法,能在處理復(fù)雜地形、邊緣混亂的情況時(shí)發(fā)揮良好的作用,有效實(shí)現(xiàn)抑制噪聲,保護(hù)圖形邊緣細(xì)節(jié),提高檢測(cè)精準(zhǔn)度。
在圖像中常用邊緣來(lái)表達(dá)圖像的基本形狀,邊緣就是圖像處理的主要特征,因此是否能較好地識(shí)別物體邊緣是識(shí)別物體并提取物體真實(shí)形狀的主要因素。噪聲的干擾會(huì)影響提取圖像邊緣的過(guò)程,為準(zhǔn)確識(shí)別物體帶來(lái)巨大困難,在一般的圖像噪聲中,椒鹽噪聲和高斯噪聲是非常常見(jiàn)的,目前存在不少降噪處理方法都能有效去除椒鹽噪聲,但高斯噪聲的處理仍處于一個(gè)效率低下的階段。如果圖像中存在多種噪聲,那么對(duì)噪聲的處理就更加困難,一味增加降噪強(qiáng)度會(huì)導(dǎo)致物體邊緣失去很多圖像細(xì)節(jié),無(wú)法達(dá)到一個(gè)相對(duì)較好消噪效果。尤其是在圖像邊緣和圖像噪聲一般都是高頻分量,這就給邊緣檢測(cè)的問(wèn)題帶來(lái)很大困難,從而導(dǎo)致檢測(cè)精度與抗噪性能之間的沖突一直存在。
在前人的總結(jié)中可以證明,椒鹽噪聲可以采用中值濾波來(lái)達(dá)到一個(gè)比較好的效果,但單獨(dú)的采用中值濾波不足與應(yīng)對(duì)絕大多數(shù)場(chǎng)景,如當(dāng)噪聲強(qiáng)度過(guò)強(qiáng)時(shí),中值濾波就顯得捉襟見(jiàn)肘,同樣在處理高斯噪聲時(shí),中值濾波也不能取得較好的濾波效果,這就導(dǎo)致其應(yīng)用面的狹窄。通常需要對(duì)中值濾波得到的結(jié)果進(jìn)行二次處理,不能直接采用其得到的數(shù)據(jù)。在本文中采用了一種以中值濾波和數(shù)學(xué)形態(tài)學(xué)相結(jié)合的邊緣檢測(cè)方法,能夠有效地降低識(shí)別中的噪聲影響而不影響邊緣細(xì)節(jié),提高檢測(cè)精度,有效地提升播撒機(jī)器人對(duì)邊緣區(qū)域的播撒質(zhì)量。
在圖形識(shí)別中,一般采用圖像最大灰度值和圖像最小灰度值來(lái)表示椒鹽噪聲。即Maxgray和Mingray,在灰度圖中一般最大灰度和最小灰度的值是255和0,椒鹽噪聲的灰度值也常在兩者附近,因此常使用255和0作為疑點(diǎn)噪聲:
(5)
式(1)中,Noise(a,b)=1代表該點(diǎn)為疑似噪聲點(diǎn),Noise(a,b)=0代表該點(diǎn)為信號(hào)點(diǎn);δ代表灰度偏差,一般為疑似噪聲點(diǎn)包含了噪聲點(diǎn)以及部分原本灰度為255或0的信號(hào)點(diǎn),因此進(jìn)入下一階段,對(duì)疑似噪聲點(diǎn)進(jìn)行處理。
中值濾波中的中值是指將一個(gè)數(shù)列中的數(shù)據(jù)按照順序排列,如這個(gè)序列的長(zhǎng)度為奇數(shù),則排在中間的那個(gè)數(shù)就是此序列的中值;如果數(shù)據(jù)序列長(zhǎng)度為偶數(shù),可以定義處于中間的兩個(gè)數(shù)的平均值為中值:
(6)
式(6)可以看出中值濾波是一種非線性濾波,在此時(shí)疊加定理不成立。但因此時(shí)中值濾波可以較好地保護(hù)邊緣和清楚椒鹽噪聲,因此可以非常好地運(yùn)用于圖像的初次降噪。根據(jù)中值濾波的原理,將圖像中各點(diǎn)的值用其鄰域中各點(diǎn)的中值取代,從而獲得一個(gè)比較初級(jí)的降噪,但在噪聲過(guò)多時(shí)鄰域中值仍會(huì)存在噪聲所以對(duì)高強(qiáng)度噪聲的消噪能力不足。在實(shí)際運(yùn)用中取一個(gè)長(zhǎng)度為奇數(shù)的矩形框,把相應(yīng)的矩形框在圖像的行和列逐點(diǎn)滑動(dòng),這樣圖像在各點(diǎn)輸出的值就是窗口中心移動(dòng)到該點(diǎn)時(shí)所有灰度值的中值。
在數(shù)學(xué)形態(tài)學(xué)的基本思想中,圖像可以采用一定形態(tài)的結(jié)構(gòu)元素去度量、提取圖像中對(duì)應(yīng)的形狀從而實(shí)現(xiàn)對(duì)圖像的分析和目標(biāo)識(shí)別。常用灰度形態(tài)學(xué)處理的對(duì)象和結(jié)構(gòu)元素是灰度函數(shù),在利用數(shù)學(xué)形態(tài)學(xué)處理圖像時(shí),膨脹和腐蝕時(shí)兩種基本運(yùn)算,靈活運(yùn)用膨脹和腐蝕可以組成多種實(shí)用的復(fù)合算法。
基于形態(tài)學(xué)的圖像邊緣檢測(cè)的關(guān)鍵是如何利用形態(tài)學(xué)的各種基本運(yùn)算的組合構(gòu)造形態(tài)學(xué)邊緣檢測(cè)算子,以及如何選取結(jié)構(gòu)元素來(lái)較好地解決邊緣檢測(cè)精度與抗噪聲性能的協(xié)調(diào)問(wèn)題。
而在灰度形態(tài)學(xué)中,腐蝕可以看作是刪除圖像中比結(jié)構(gòu)元素小的亮細(xì)節(jié),膨脹可以看作是刪除圖像中比結(jié)構(gòu)元素小的暗細(xì)節(jié)。通過(guò)一系列的運(yùn)算消除在處理圖像中遇到的噪聲,可以比較完整的保持圖像整體的灰度和非噪聲區(qū)域基本不受影響,根據(jù)膨脹、腐蝕等運(yùn)算的特點(diǎn),可以分析得到消噪的邊緣檢測(cè)模型:
edge=(f°b)⊕b-(f°b)·b
(7)
開(kāi)啟和閉合運(yùn)算是膨脹和腐蝕運(yùn)算的組合,用b開(kāi)啟f記為f°b,用b閉合f記為f·b,令f(x,y)為灰度函數(shù), 結(jié)構(gòu)元素為b(i,j)。
結(jié)合了形態(tài)學(xué)的圖像邊緣檢測(cè)不僅和使用的邊緣檢測(cè)算子有關(guān),還取決于結(jié)構(gòu)元素的選擇。利用不同取向的多結(jié)構(gòu)元素,每一段元素都能被當(dāng)成是一種尺度對(duì)圖像的細(xì)節(jié)進(jìn)行匹配,以此保留圖像的細(xì)節(jié),而如果只采用一種結(jié)構(gòu)元素,則不利于圖像細(xì)節(jié)的保存。
在多結(jié)構(gòu)元素的檢測(cè)中,既可以檢測(cè)出多種類型的邊緣,又能抑制噪聲,能較好地完成消噪目標(biāo)。
本文采用的抗噪邊緣檢測(cè)算法的步驟如下:
1)采用3×3的方形濾波窗口dom對(duì)Is進(jìn)行中值濾波,得到濾波后的圖像f。
2)將不同形狀的結(jié)構(gòu)元素應(yīng)用于抗噪膨脹型的邊緣檢測(cè)算子中。
edgei=(f°b)⊕bi-(f°b)·bi
(8)
上式(8)中b和bi是結(jié)構(gòu)元素,其中:
(9)
bi(i=1,2,…,k)是不同形狀的結(jié)構(gòu)元素,選擇情況如下:
b1={(-1,0),(0,0),(1,0),(0,-1)},
b2={(-1,0),(0,0),(1,0)},
b3={(-1,-1),(0,0),(1,1)},
b4={(0,-1),(0,0),(0,1)},
b5={(-1,1),(0,0),(1,-1)}。
edgei是使用不同結(jié)構(gòu)元素檢測(cè)到的邊緣。
如圖2所示,a圖為原圖,b圖為采用了中值濾波和數(shù)學(xué)形態(tài)學(xué)結(jié)合的邊緣算法所識(shí)別的圖像,c圖為現(xiàn)在常用算法所識(shí)別出來(lái)的圖。由圖對(duì)比可知,傳統(tǒng)算法對(duì)于邊緣細(xì)節(jié)的處理較為粗糙,邊緣輪廓的清晰度不高,精準(zhǔn)度較低,圖像的連續(xù)性也比較差。而本文采用的算法相較于傳統(tǒng)算法對(duì)圖像噪聲的抑制有顯著效果,無(wú)論是對(duì)邊緣的連續(xù)性,還是對(duì)細(xì)節(jié)方面的處理都更加優(yōu)秀。
圖2 實(shí)驗(yàn)結(jié)果圖像對(duì)比
提出了一個(gè)基于視覺(jué)識(shí)別的播撒機(jī)器人邊緣識(shí)別改進(jìn)算法,對(duì)于播撒區(qū)域的邊緣識(shí)別更加精準(zhǔn),可以有提高播撒的精準(zhǔn)度和效率。
該機(jī)器人通過(guò)中值濾波和數(shù)學(xué)形態(tài)學(xué)結(jié)合的邊緣算法,實(shí)現(xiàn)對(duì)實(shí)時(shí)環(huán)境的識(shí)別,尤其是對(duì)于邊緣區(qū)域有著優(yōu)于傳統(tǒng)識(shí)別算法的特點(diǎn)。將二者結(jié)合起來(lái),采用基于中值濾波和多結(jié)構(gòu)元抗噪膨脹型邊緣檢測(cè)算子相結(jié)合的邊緣檢測(cè)算法,對(duì)混有不同類型噪聲的圖像進(jìn)行邊緣檢測(cè),既能較好地抑制噪聲,又保持了圖像細(xì)節(jié)??紤]到現(xiàn)實(shí)條件下,濾波圖像絕大多數(shù)處在50%以下的噪聲密度環(huán)境中,而且如今大數(shù)據(jù)時(shí)代,每秒鐘處理的視頻圖像數(shù)據(jù)以億計(jì)數(shù),對(duì)實(shí)時(shí)性的要求較高。因此,本文算法具有很好的實(shí)用性,同時(shí)實(shí)驗(yàn)結(jié)果也表明,該算法對(duì)于圖像的識(shí)別,尤其是圖像的邊緣位置的識(shí)別更加平滑、清晰,證明了該播撒機(jī)器人改進(jìn)算法的可行性與精準(zhǔn)性。