国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于改進的Canny算子的圖像邊緣檢測方法

2022-11-01 03:37張久超徐曉光
關(guān)鍵詞:雙邊算子梯度

張久超,徐曉光,葉 炯

(安徽工程大學(xué)a.高端裝備先進感知與智能控制教育部重點實驗室;b.電氣工程學(xué)院,安徽 蕪湖 241000)

0 引言

在現(xiàn)代工業(yè)生產(chǎn)中,機器人通過機器視覺引導(dǎo)抓取工件,若要提高速度和準(zhǔn)確率就需要更為可靠的視覺算法。在視覺引導(dǎo)下,如何對工件快速完成識別與檢測,并將信息準(zhǔn)確傳遞給機器人是目前需要解決的問題。視覺處理中邊緣檢測是關(guān)鍵之一[1]。邊緣檢測算法,簡單來說就是處理圖像邊緣信息的一種方法。獲取到一幅圖像后,往往像素變化較大的地方就在圖像邊緣處,因此接下來的處理方向是找出一種合適的算法來將邊緣處的信息清晰準(zhǔn)確的提取出來。而目前在邊緣處的信息提取的方法一般可分為一維邊緣提取方法和二維邊緣提取方法。一維邊緣是指該圖像在某一方向的一階導(dǎo)數(shù)值最大的位置,而二維邊緣指的是在二階導(dǎo)數(shù)中某個零點位置且該零點兩側(cè)的數(shù)值符號相異(由正到負(fù)或由負(fù)到正均可)。與之對應(yīng)的則是一維邊緣算子和二維邊緣算子。目前常用的一維邊緣算子有Roberts算子[2]、Sobel算子[3]和Prewitt算子[4]等;二維邊緣算子有LOG算子[5]、Laplacian算子[6]等;需要另外說明的就是傳統(tǒng)一維Canny算子[7-8],它是基于圖像平滑處理之后再求一階導(dǎo)數(shù)的邊緣算子。對比以上幾種算子后選擇Canny算子進行圖像處理。但通過對測試工作環(huán)境下的圖像進行識別與檢測分析發(fā)現(xiàn):檢測結(jié)果中的圖像存在部分邊緣細(xì)節(jié)丟失,圖像顯示不完整問題;圖像中仍有干擾信號存在,高斯濾波器處理效果不明顯。為了得到邊緣細(xì)節(jié)保留完整且干擾信號處理完整的圖像,需要對Canny算子進行改進。通過選擇可分解信號并能分別做出處理的小波變換來最大化處理干擾信息,并聯(lián)合邊緣細(xì)節(jié)保留效果更優(yōu)的雙邊濾波(一種非線性濾波方法)來代替單一的高斯濾波器,由此得到處理效果更好的圖像。

1 傳統(tǒng)Canny算子

Canny算子應(yīng)用更為廣泛,它是一種多級邊緣檢測算法,不僅具有良好的信噪比,同時對于高邊緣檢測也有良好表現(xiàn)。Canny最初是為了尋求一個最優(yōu)的邊緣檢測算法,也因此形成了判斷邊緣檢測算子好壞的標(biāo)準(zhǔn):具有良好的檢測率;能夠精準(zhǔn)定位;具有最小響應(yīng)。

由此,實現(xiàn)Canny邊緣檢測算法的基本步驟如下。

1)濾波降噪。通過使用合適的高斯濾波器對圖像進行平滑處理,即對原始圖像f(x,y)進行二維高斯函數(shù)G(x,y)卷積操作。

(1)

S(x,y)=G(x,y)*f(x,y),

(2)

其中:*表示卷積運算;σ是高斯濾波的系數(shù),σ值越大,平滑效果越好,抑制噪聲能力越好;S(x,y)表示卷積后的圖像。

2)通過一階導(dǎo)數(shù)計算梯度幅度值和幅度值方向。以A(x,y)為水平方向x導(dǎo)數(shù),B(x,y)為垂直方向y導(dǎo)數(shù),計算出函數(shù)f(x,y)的梯度幅度值C(x,y),確定該函數(shù)圖像的方向為θ(x,y),其中梯度幅度值C(x,y)和θ(x,y)由下式(3)確定。

(3)

3)邊緣細(xì)化非極大值抑制。一般認(rèn)為梯度幅度值中的極大值點是邊緣點,但并不是所有梯度幅度值較大的點都是邊緣點。通過該方法,將每個像素點的梯度幅度值與該點在每個梯度方向上的幅值進行比較。如果不是最大值,則使用0表示當(dāng)前灰度值,該灰度值屬于非邊緣點。如果它是最大值,它將被保留為邊緣點,以獲得細(xì)化的邊緣。

4)采用高低閾值確定邊緣。先預(yù)設(shè)好高低閾值,再對圖像中每個像素點進行判斷,大于高閾值的像素點保留,小于低閾值的像素點舍棄,位于中間的則看它與高閾值點間的聯(lián)系程度,有聯(lián)系則視為邊緣點,無聯(lián)系則舍棄。

此方法受噪聲影響較小,圖像處理后邊緣連續(xù)性好,但是容易產(chǎn)生假邊緣信息,也會忽略掉部分有用邊緣信息。

2 改進的Canny算法

采用的改進視覺算法(改進的Canny算法),與傳統(tǒng)Canny算子相比較,第一步降噪處理它采用一種基于小波變換[9-10]與雙邊濾波的方法代替?zhèn)鹘y(tǒng)高斯濾波器。一個原始圖像信號通過小波分解后變?yōu)楦哳l和低頻部分,高頻部分經(jīng)過分離后,可以選擇合適的小波系數(shù)進行閾值去噪處理;之后將它與低頻部分進行重構(gòu),得到高頻去噪圖,再利用雙邊濾波對高頻去噪圖中的低頻信號進行去噪處理,最后通過小波逆變換得到去噪后的圖像。此方法不僅提升了對圖像中高頻和低頻噪聲信號的濾波效果,還解決了高斯濾波導(dǎo)致圖像邊緣模糊的問題。第二步為了適應(yīng)工件擺放的隨機性,適應(yīng)大范圍角度變化,在Sobel算子基礎(chǔ)上增加了更多梯度方向的計算。

2.1 小波變換

小波變換不同于傅立葉變換,它采用長度有限具有衰減特性的小波基來表示信號,并能實現(xiàn)信號分割,可將一個圖像信號轉(zhuǎn)換成高低頻兩部分信號。小波變換基于它的二維特性可以同時定位時域和頻域。頻率分辨率和時間分辨率可以在處理低頻和高頻信號時分別達(dá)到最好效果。小波變換(WT)公式為

(4)

其中:R表示實數(shù)域;涉及小波變換中的兩個變量參數(shù)為尺度因子α和位移參數(shù)τ,分別對應(yīng)于控制小波函數(shù)的伸縮與位移;ψ(t)表示小波函數(shù)。一般地,當(dāng)取α=1,τ=0為標(biāo)準(zhǔn)波時,據(jù)此可以得出當(dāng)0<α<1時,波形瘦且高,震蕩時間短;當(dāng)α>1時,波形胖且矮,震蕩時間長。在對具體圖像信號做分解時這種取值方式在0<α<1時要特別注意,因為結(jié)果波形受尺度因子α影響很大,約為α2的反比。因此分解信號的基波函數(shù)選擇至關(guān)重要。

根據(jù)定義,對原圖像處理時,需要選取合適的基函數(shù)(基小波ψ(t))對圖像信號進行分解,獲得高頻、低頻信號,這能得到高低頻信號在時域的位置,有助于定點消除。然后在不同的尺度下,依據(jù)不同小波基的選擇差異提取信號的小波系數(shù),剔除噪聲對應(yīng)的小波系數(shù)從而實現(xiàn)去噪。具體的圖像處理方式是先通過小波分解,由小波變換完成高頻部分信號的濾波處理,然后留下低頻部分信號,由雙邊濾波處理。

小波變換去噪圖像的一般模型為

X(i)=f(i)+σe(i),

(5)

其中:X(i)為噪聲圖;f(i)為純凈圖;σ為方差;e(i)為噪聲,i表示圖像中的像素,i=0,1,…,n-1。

為了更好地處理工作環(huán)境中的工件圖像信號,采用coif2小波基完成小波變換相關(guān)處理。對圖像采用兩層小波分解,并設(shè)置尺度向量和閾值向量,對高頻小波系數(shù)進行閾值處理,即在處理中將分解得到的所有高頻部分信號做閾值處理,這樣可以最大化消除高頻段無用干擾信息,再與低頻部分信號重構(gòu),就可得到已去除高頻部分干擾信號的工件圖像。

2.2 雙邊濾波

雙邊濾波是一種非線性濾波方法。該方法使用的函數(shù)由兩個高斯濾波函數(shù)組合成,它不僅能實現(xiàn)平滑降噪還可以保留邊緣細(xì)節(jié)信息,從效果對比來看該算法優(yōu)于高斯濾波。在對含有高頻信號的圖像使用小波處理過后,剩下的低頻信號可以通過雙邊濾波解決。雙邊濾波中對含有空域分量kd和值域分量kr兩部分圖像濾波后的公式為

(6)

其中:積分號前的部分是歸一化因子,式中包括空域分量kd和值域分量kr,c和s指 closeness 和 similarity 函數(shù),研究只考慮對像素點進行加權(quán)計算,x是檢測點,f(x)代表x點的像素值。f(x)和h(x)代表濾波完成前后的圖像。所以由公式(6)推導(dǎo)出雙邊濾波函數(shù)公式為

(7)

它可以實現(xiàn)對圖像的進一步濾波,并保留細(xì)節(jié)邊緣信息。

2.3 梯度方向

由于工業(yè)生產(chǎn)中,工件在運輸過程中擺放隨機,方向無規(guī)律。由于機器人抓取的工件角度是任意的,為了讓圖像處理更簡潔方便,增加了工件圖像多方向梯度計算。具體地,改進的工件圖像方向梯度算式為

(8)

其中:S(x,y)表示原始圖像卷積后的圖像;G(x,y)表示該圖像所在的方向梯度。通過以上算式,可以得到梯度幅度值公式為

(9)

其中:D(x,y)表示梯度幅度值;同時梯度方向上θ的公式為

(10)

具體地,依據(jù)以上相關(guān)算法操作程序及討論結(jié)果,得到所改進的算法處理流程如圖1所示。

圖1 改進Canny算法處理流程

在圖1的處理流程中,先對原始圖像中信號進行小波分解,得到分解出的高低頻兩部分信號,再對coif2小波基分解得到的高頻信號中的干擾信號進行全面處理,剩余的低頻信號和已處理完成的高頻信號用小波重構(gòu)進行信號還原就得到了高頻去噪圖像,高頻去噪圖像中剩余的低頻信號干擾通過雙邊濾波進行去除,最后,由小波逆變換進行處理可得到高低頻部分干擾信號都已去除的圖像,后續(xù)處理仍按照Canny算子步驟進行,最終得到邊緣保留完整且去除干擾信息的結(jié)果圖像。

3 實驗與分析

以上得到了改進的Canny算子,為了驗證改進的Canny算法的圖像處理效果,本研究采用測試環(huán)境中的兩組效果圖(圖2中的(b)和(e)以及圖3中的(b)和(e))進行驗證。

(a)灰度原圖 (b)傳統(tǒng)Canny算子處理結(jié)果

(c)小波重構(gòu)處理結(jié)果 (d)雙邊濾波處理結(jié)果 (e)改進Canny算子處理結(jié)果 圖2 第一組圖片處理效果對比

(a)灰度原圖 (b)傳統(tǒng)Canny算子處理結(jié)果

(c)小波重構(gòu)處理結(jié)果 (d)雙邊濾波處理結(jié)果 (e)改進Canny算子處理結(jié)果 圖3 第二組圖片處理效果對比

通過上述兩組圖可以看出,傳統(tǒng)Canny算子圖像噪聲去除較好,但邊緣處圖像信息仍有殘缺;而改進后的Canny算子檢測效果更好,不僅圖像噪聲消除率高,而且邊緣信息保留更完整,提高了邊緣檢測準(zhǔn)確度。此改進方法處理信息的環(huán)節(jié)是,先通過小波變換實現(xiàn)高頻部分干擾信息的去除,再通過雙邊濾波實現(xiàn)低頻部分干擾信息的去除并很好地保留了原圖的完整性。在該系統(tǒng)所需的圖像邊緣檢測中,此改進視覺算法既有效抑制了噪聲,也實現(xiàn)了很好的邊緣定位。

4 結(jié)論

針對傳統(tǒng)Canny算法圖像處理邊緣模糊,細(xì)節(jié)丟失問題,在傳統(tǒng)Canny算法基礎(chǔ)上進行了改進:1)采用小波變換與雙邊濾波聯(lián)合的方法代替?zhèn)鹘y(tǒng)高斯濾波器處理方法;2)為了適應(yīng)工件擺放的隨機性,適應(yīng)大范圍角度變化,在Sobel算子基礎(chǔ)上增加了更多工件圖像梯度方向的計算。通過實驗將改進的Canny算法與傳統(tǒng)Canny算法進行對比,結(jié)果表明,改進方法有效改善了邊緣模糊,細(xì)節(jié)丟失問題。對于后續(xù)如何將圖像處理效果變得更優(yōu),還有待于進一步研究。

猜你喜歡
雙邊算子梯度
與由分?jǐn)?shù)階Laplace算子生成的熱半群相關(guān)的微分變換算子的有界性
一個帶重啟步的改進PRP型譜共軛梯度法
一個改進的WYL型三項共軛梯度法
擬微分算子在Hp(ω)上的有界性
Heisenberg群上與Schr?dinger算子相關(guān)的Riesz變換在Hardy空間上的有界性
一種自適應(yīng)Dai-Liao共軛梯度法
各向異性次Laplace算子和擬p-次Laplace算子的Picone恒等式及其應(yīng)用
一個具梯度項的p-Laplace 方程弱解的存在性
電子產(chǎn)品回收供應(yīng)鏈的雙邊匹配策略
新型自適應(yīng)穩(wěn)健雙邊濾波圖像分割