劉繼承 張 琳 董青松 石祥華
(1.東北石油大學(xué),黑龍江 大慶 163318;2.大慶油田天然氣分公司,黑龍江 大慶 163000)
邊緣檢測(cè)技術(shù)在圖像分析與識(shí)別領(lǐng)域至關(guān)重要,尋找一種最優(yōu)邊緣檢測(cè)算法是近年來(lái)此領(lǐng)域的熱門課題之一。邊緣檢測(cè)是通過(guò)檢測(cè)圖像區(qū)域間的變化實(shí)現(xiàn)的,這些變化有灰度、顏色及紋理特征等。通常是將彩色圖像轉(zhuǎn)換為灰度圖像,再利用傳統(tǒng)的邊緣檢測(cè)算子(如一階微分算子——Prewitt算子、Roberts算子和Sobel算子,及二階微分算子——Laplace算子等),計(jì)算梯度的幅值和方向。這些算子易于實(shí)現(xiàn),而且實(shí)時(shí)性好,但是在抗噪和單像素邊緣定位方面效果不太好,尤其是對(duì)噪聲的干擾非常敏感。上述算法中,基于多尺度小波分析的圖像邊緣檢測(cè)算法在抑制噪聲和提取邊緣定位方面表現(xiàn)良好,受到了國(guó)內(nèi)外學(xué)者的廣泛重視[1]。1983年有學(xué)者提出尺度空間思想,對(duì)邊緣檢測(cè)中的多尺度和多分辨進(jìn)行了深入研究。1992年又有學(xué)者提出小波變換多尺度邊緣檢測(cè)方法,同時(shí)將小波邊緣檢測(cè)方法與LOG算子和Canny最優(yōu)檢測(cè)算子在小波意義下統(tǒng)一,更明確地表達(dá)了多尺度思想在邊緣檢測(cè)中的重要意義[1]。
多尺度小波變換圖像邊緣檢測(cè)算法存在的問(wèn)題是大尺度下圖像邊緣細(xì)節(jié)信息會(huì)有丟失,導(dǎo)致檢測(cè)到邊緣點(diǎn)定位不準(zhǔn)確而偏離實(shí)際邊緣;小尺度下圖像邊緣點(diǎn)又易受噪聲影響導(dǎo)致檢測(cè)到偽邊緣[2]。選取合適的尺度并采用合理的邊緣細(xì)化算法是平衡多尺度下邊緣檢測(cè)優(yōu)/缺點(diǎn)的主要思路。筆者在多尺度小波變換得到的邊緣灰度圖像中選擇最優(yōu)尺度灰度圖像,再選擇合適的灰度門限,將圖像轉(zhuǎn)換為二值圖像后,用邊緣細(xì)化算法將邊緣準(zhǔn)確定位到單像素寬度,以期較傳統(tǒng)邊緣檢測(cè)算子在噪聲容限和單像素邊緣定位方面有所提高。
對(duì)于一幅普通圖像而言,邊緣就是圖像顏色或灰度發(fā)生突變之處,邊緣檢測(cè)的目的就是檢測(cè)出圖像中突變發(fā)生的位置。傳統(tǒng)的邊緣檢測(cè)算子對(duì)圖像進(jìn)行邊緣檢測(cè)的基本原理就是求微分運(yùn)算,找到圖像中的突變點(diǎn)作為圖像邊緣,原理簡(jiǎn)單、操作容易,但是存在的最大問(wèn)題就是對(duì)噪聲敏感。
較好地解決噪聲敏感問(wèn)題的方法之一是對(duì)圖像進(jìn)行多尺度邊緣檢測(cè),這需要首先對(duì)圖像進(jìn)行多尺度表達(dá)。對(duì)圖像進(jìn)行小波變換是獲得圖像多尺度表達(dá)的一種方法,小波變換能夠把圖像分解成多種尺度成分,并對(duì)大小不同的尺度成分采用相應(yīng)的時(shí)域或空域取樣步長(zhǎng),從而不斷地聚焦到圖像的任意微小細(xì)節(jié)、間斷點(diǎn)、奇異點(diǎn)和邊緣[3]。小波變換所獨(dú)有的這種多尺度特性恰好可以用于多尺度下圖像的邊緣檢測(cè)[4]。人在觀察目標(biāo)時(shí),隨著分辨率的增加,越走近目標(biāo)觀察獲得的信息就越豐富;反之,獲得的信息越少[5]。在噪聲抑制與圖像細(xì)節(jié)表現(xiàn)之間尋求平衡是多尺度分析的主要任務(wù)。由于小波變換在各尺度上都提供了圖像的邊緣信息,所以稱為多尺度邊緣,小波變換是提取多尺度邊緣的基礎(chǔ)。
小波變換是將一個(gè)函數(shù)表示為一個(gè)尺度成分和這個(gè)尺度下的一個(gè)小的波動(dòng)成分的一種運(yùn)算。
對(duì)每個(gè)像素點(diǎn)(n,m)計(jì)算相角Af(2j,n,m)的正切值:
確定閾值T>0,對(duì)于Mf(2j,n,m),如果Mf(2j,n,m)≥T,Mf(2j,n,m)取得局部最大值,即此時(shí)的(n,m)為模極大值點(diǎn)。因?yàn)樘荻鹊木植繕O大值對(duì)應(yīng)著圖像f(n,m)的銳變處,而且圖像的邊緣也處于圖像的銳變處,所以圖像f(n,m)的梯度局部極大值點(diǎn)就對(duì)應(yīng)著圖像的邊緣點(diǎn)[7]。
局部梯度幅值最大就是圖像的局部高頻信息,圖像的噪聲也是局部高頻信息,經(jīng)過(guò)小波變換后也可能產(chǎn)生邊緣,這種邊緣為偽邊緣。圖像進(jìn)行小波變換后無(wú)論在哪個(gè)尺度上,尖銳邊緣都有很大的信號(hào)值;相反,噪聲點(diǎn)的信號(hào)值會(huì)隨著尺度的增大而衰減[8]。
從圖1所示的實(shí)驗(yàn)結(jié)果可以看出:隨著尺度的增大,圖像的細(xì)節(jié)逐漸減少消失,邊緣逐漸平滑。這正是多尺度小波變換對(duì)高頻信息進(jìn)行平滑濾波的體現(xiàn)。但同時(shí)也存在圖像細(xì)節(jié)丟失的缺陷,直觀感覺就是圖像變模糊。
圖1 實(shí)驗(yàn)結(jié)果
經(jīng)小波邊緣提取得到的圖像邊緣比較粗,難以達(dá)到單像素的精度,需要對(duì)圖像的邊緣進(jìn)行細(xì)化。圖像邊緣細(xì)化是圖像處理中的基本技術(shù),它要求完整地保存圖像的拓?fù)浣Y(jié)構(gòu),以便于代替原始圖像進(jìn)行識(shí)別和處理。將一個(gè)圖像的主要邊緣清晰、完整地提取出來(lái),得到細(xì)化的、完整的邊緣,將為圖像檢索、目標(biāo)分割及識(shí)別等后續(xù)處理帶來(lái)極大的便利[9]。
此處的邊緣細(xì)化算法采用改進(jìn)的Zhang-suen算法,其基本思想是在細(xì)化過(guò)程中不斷移動(dòng)3×3的模板,使它與圖像中的各點(diǎn)重合。在掃描圖像的過(guò)程中,定義待刪除的像素為P1,P1周圍的近鄰像素位置關(guān)系如圖2所示。
定義n(P1)和s(P1)兩個(gè)參數(shù),其中n(P1)是與P1相鄰的非零像素個(gè)數(shù),s(P1)是沿著P2→P3→P4→P5→P6→P7→P8→P9→P2的順序由0過(guò)渡到1的總次數(shù)。對(duì)于考察點(diǎn)P1=1,如果同時(shí)滿足2≤n(P1)≤6、s(P1)=1、P2P4P8=0且P2P6P8=0這4個(gè)條件,則可將P1刪除。細(xì)化過(guò)程是將滿足條件的像素點(diǎn)予以刪除。反復(fù)迭代直到再也沒有像素點(diǎn)滿足上述條件為止,此時(shí)完成檢驗(yàn),得到了細(xì)化后的圖像邊緣。這樣,所有檢測(cè)到的邊緣可以定位到單像素寬度,完整地保留了圖像的邊緣信息[10]。
圖3給出了不存在噪聲時(shí),傳統(tǒng)邊緣檢測(cè)算子檢測(cè)的結(jié)果。
圖3 無(wú)噪聲圖像傳統(tǒng)邊緣檢測(cè)結(jié)果
由圖3可以看出,傳統(tǒng)的邊緣檢測(cè)算子在沒有噪聲的情況下可以得到較好的邊緣檢測(cè)效果。實(shí)際的數(shù)字圖像總是存在一定功率的噪聲,如椒鹽噪聲及高斯噪聲等,其中椒鹽噪聲可以通過(guò)中值濾波較好地去除,高斯噪聲是圖像噪聲容限方面要考慮的主要噪聲。圖4給出了存在高斯噪聲(μ=0,σ=0.01)時(shí)傳統(tǒng)的邊緣檢測(cè)算子的檢測(cè)的結(jié)果。
圖4 傳統(tǒng)方法檢測(cè)的含高斯噪聲圖像結(jié)果
可以看出,在有高斯噪聲存在的情況下,傳統(tǒng)的邊緣檢測(cè)方法檢測(cè)的圖像邊緣出現(xiàn)缺失,偽邊緣被檢測(cè)出大范圍出現(xiàn),對(duì)邊緣檢測(cè)結(jié)果造成了極大破壞。采用基于二進(jìn)小波變換的多尺度邊緣細(xì)化檢測(cè)方法檢測(cè)得到的邊緣如圖5所示。
從視覺直觀感受來(lái)看,加入高斯噪聲的傳統(tǒng)邊緣檢測(cè)方法的檢測(cè)結(jié)果受噪聲干擾很大;而采用筆者提出的方法后,圖像邊緣的連續(xù)性和準(zhǔn)確性都比傳統(tǒng)方法的檢測(cè)結(jié)果有較大改善。
圖5 檢測(cè)結(jié)果
在此,定量地來(lái)探討圖像邊緣檢測(cè)結(jié)果的比較。邊緣檢測(cè)過(guò)程會(huì)產(chǎn)生3個(gè)主要類型的誤差,即邊緣點(diǎn)丟失、邊緣點(diǎn)定位偏離以及將噪聲波動(dòng)誤認(rèn)為是邊緣點(diǎn)。以Canny最優(yōu)邊緣檢測(cè)準(zhǔn)則為參考依據(jù),Canny最佳邊緣檢測(cè)三準(zhǔn)則具體如下:
a. 最優(yōu)檢測(cè)。對(duì)于真實(shí)存在的邊緣不漏檢,當(dāng)然也不會(huì)把非邊緣點(diǎn)檢出,使得輸出信噪比最大。
b. 最優(yōu)檢測(cè)精度。所得邊緣點(diǎn)的位置與實(shí)際邊緣點(diǎn)的位置最近。
c. 檢測(cè)點(diǎn)與邊緣點(diǎn)一一對(duì)應(yīng)。每個(gè)實(shí)際存在的邊緣點(diǎn)與檢測(cè)到的邊緣點(diǎn)一一對(duì)應(yīng)。
信噪比SNR越大,能夠準(zhǔn)確檢測(cè)到的真實(shí)邊角和較少含有偽邊界的可能性也就越大。檢測(cè)精度L為檢測(cè)到的邊界與真實(shí)邊界之間倒數(shù)的數(shù)學(xué)期望,檢測(cè)精度越高,測(cè)量誤差越小。偽邊界平均距離M為隨機(jī)噪聲與檢測(cè)函數(shù)卷積之后偽邊界出現(xiàn)的平均距離,偽邊界平均距離越長(zhǎng)測(cè)量結(jié)果中出現(xiàn)偽邊界的個(gè)數(shù)就越少[12]。
以主要性能指標(biāo)信噪比SNR作為邊緣檢測(cè)評(píng)價(jià)標(biāo)準(zhǔn),將沒有噪聲存在時(shí)的Canny邊緣檢測(cè)算子檢測(cè)的邊緣作為實(shí)際邊緣,與存在(μ=0,σ=0.01)高斯噪聲時(shí)傳統(tǒng)的最優(yōu)邊緣檢測(cè)算法Canny邊緣檢測(cè)和筆者所提方法進(jìn)行比較,Canny邊緣檢測(cè)的SNR=1.005 0,小波多尺度邊緣檢測(cè)的SNR=1.534 8。
筆者研究了基于二進(jìn)小波變換的圖像多尺度邊緣檢測(cè)及其邊緣細(xì)化算法,在與傳統(tǒng)邊緣檢測(cè)方法進(jìn)行比較的基礎(chǔ)上,對(duì)傳統(tǒng)方法在無(wú)噪聲和有噪聲存在時(shí)邊緣檢測(cè)的結(jié)果進(jìn)行比較,并就筆者所提方法與傳統(tǒng)邊緣檢測(cè)方法的標(biāo)信噪比進(jìn)行了定量分析。實(shí)驗(yàn)結(jié)果表明:基于二進(jìn)小波變換的圖像邊緣提取細(xì)化算法較傳統(tǒng)邊緣檢測(cè)方法在噪聲容限和邊緣細(xì)化到單像素寬度方面有明顯改善。與傳統(tǒng)邊緣算法相比,小波變換邊緣檢測(cè)細(xì)化算法具有定位精確和計(jì)算量小的優(yōu)點(diǎn),對(duì)噪聲的敏感程度也遠(yuǎn)低于傳統(tǒng)邊緣算法。