盧 軍, 譚智仁
(陜西科技大學 機電工程學院, 陜西 西安 710021)
圖像的邊緣是圖像最基本的特征,是視覺感知的重要線索,同時也是進行圖像分析、模式識別等深層次處理的關鍵步驟.圖像的邊緣點是指圖像中周圍像素灰度有階躍變化或屋頂變化的那些像素點,即灰度值導數(shù)較大或極大的地方[1].長期以來,人們對圖像的邊緣檢測主要致力于對灰度圖像的研究,提出了許多有效的檢測方法,主要有Sobel算子、Prewitt算子、Roberts算子、Log算子和Canny算子[2].而傳統(tǒng)的彩色圖像邊緣檢測方法主要是先將彩色圖像轉換成灰度圖像,然后在灰度圖像的基礎上進行邊緣檢測.但研究表明彩色圖像卻能比灰度圖像提供更多的信息,彩色圖像與灰度圖像大約有90%的邊緣相同,而剩下的10%是在灰度圖像中檢測不到的[3].因此這種傳統(tǒng)的檢測方法就不能準確的將彩色圖像邊緣檢測出來,所以一種有效的彩色圖像邊緣檢測方法就越來越受到人們的關注.
近年來,許多研究人員對彩色圖像的邊緣檢測做了大量的研究,并提出了許多的算法,比如基于四元數(shù)卷積的彩色圖像邊緣檢測方法[4],基于鄰域彩色變化矢量場的圖像邊緣檢測技術研究[5], 這些算法復雜度高、運算量大,同時這些算法大多是在RGB空間中實現(xiàn),而RGB顏色空間對色彩的感知不均勻,因此不能準確的檢測出圖像的邊緣.為了克服RGB顏色空間不均勻,無法有效區(qū)分顏色相似性的缺點,選擇了更加符合人類視覺特性的顏色空間.而HSI顏色空間便是其中的一種,它是從人的視覺系統(tǒng)出發(fā),直接使用顏色的三要素色調(Hue)、飽和度(Saturation)、亮度(Intensity)來描述顏色,各個分量之間互相獨立,且與人的感受方式緊密相聯(lián).而在Brown and MacAdam試驗中[6],已經(jīng)證實了可以通過Mahalanobis距離計算兩種顏色的色差.文獻[7]提出了在灰度圖像中的最小核值相似區(qū)(Smallest Univalue Segment Assimilating Nucleus,SUSAN)邊緣檢測方法,首先用模板遍歷圖像,然后計算模板內像素與模板中心像素(核)的灰度差,用核值相似區(qū)域的大小來判斷模板中心像素是否屬于邊緣,該算法思想簡單,計算量小.因此本文結合Mahalanobis距離,提出了一種將改進后的SUSAN算子應用到基于HSI顏色空間的彩色圖像邊緣檢測算法.實驗結果表明,該方法可以很好的利用彩色圖像的色調、飽和度和亮度信息,能夠有效的檢測出彩色圖像的邊緣.在保留圖像邊緣方面,性能優(yōu)于傳統(tǒng)的彩色邊緣檢測方法.
HSI模型是從人的視覺系統(tǒng)出發(fā),直接使用顏色的三要素色調、飽和度和亮度來建立的.H為色調,是彩色最重要的屬性,決定顏色的本質,由物體反射光線中占優(yōu)勢的波長來決定的;S為飽和度,是指顏色的深淺和濃淡的程度,與白色比例有關,白色所占比例越高,飽和度越低;I為亮度,是指人眼感覺光的明暗程度.HSI顏色空間能夠從彩色圖像中攜帶的彩色信息里消去強度分量,因此這種顏色空間對人類來說更加自然直觀[8].
圖1 HSI模型示意圖
如圖1所示為用一個圓錐空間模型描述的HSI彩色空間模型示意圖.通常我們把色調和飽和度統(tǒng)稱為色度,用來表示顏色的類別和深淺程度.在圖中圓錐中間的橫截面圓就是色度圓,而圓錐向上或向下延伸的便表示亮度分量.HSI顏色空間與 RGB 顏色空間只是同一物理量的不同表示法,它們之間可以通過一定的算法相互之間進行轉換.給定一幅RGB格式的圖像,每一個RGB像素的H分量可以用下面的公式得到:
(1)
式中,θ=arccos {(1/2)[(R-G)+(R-B)]/[(R-B)2+(R-G)(G-B)1/2]}.飽和度分量由下列公式給出:
(2)
最后,亮度分量為:
(3)
假定RGB值歸一化為[0,1]范圍內,則色調可以通過式(1)得到的值除以360 °歸一化為[0,1]范圍內,而其它兩個HSI分量已經(jīng)在[0,1]范圍之內[9].
從上式可以看出HSI存在幾個重要的特點:首先HSI顏色模型中的I分量與圖像的彩色信息無關,所以在一些亮度變化的環(huán)境中非常有用[10];其次是H與S分量和人的視覺系統(tǒng)感受顏色的方式密切相關,這對于區(qū)分顏色色差不大的物體特別適用.這些特點就使得HSI顏色空間比RGB彩色空間更加符合人的視覺特性.此外,由于HSI空間中亮度和灰度具有可分離特性,使得圖像處理和機器視覺中大量灰度處理的算法都可以在HSI彩色空間中方便地使用.
色差的度量在彩色圖像邊緣檢測中是非常重要的.從本質上來說,它是指兩種顏色之間相似性的度量,色差大代表顏色相似性小,色差小則代表顏色相似性大.而在Brown and MacAdam試驗中,已經(jīng)證實了可以通過Mahalanobis距離計算兩種顏色的色差.
Mahalanobis距離通常用在模式識別里,是表示兩個或多個相關變量所定義空間中兩點的距離.Mahalanobis距離的定義:X1,X2,…,Xn是n個相關變量,則它的表達式為:
(4)
δXi,Xj表示Xi,Xj兩個變量的協(xié)方差.
那么以R、G、B為變量計算Mahalanobis距離可以表示成:
(5)
由于ωR,G=ωG,R,ωR,B=ωB,R,ωG,B=ωB,G,所以Mahalanobis距離又可以寫成:
Δd=(ωR,RΔR2+ωG,GΔG2+ωB,BΔB2+2ωG,RΔRΔG+2ωB,RΔRΔB+2ωB,GΔBΔG)1/2
假設,變量R、G、B之間不相關,則ωG,R=ωB,R=ωB,G=0,上式就可以簡化成
(6)
1994年,CIE提出了一種新的色差計算公式CIE94
(7)
(8)
在介紹SUSAN算法之前,首先介紹USAN角點檢測準則.如圖2所示,用一個圓形模板遍歷圖像,計算模板內每一個像素與中心像素(核)的灰度差值,若這個差值小于所設定的閾值t時,則認為該像素與模板中心(核)有近似的灰度,由這樣的像素點所構成的區(qū)域就稱之為USAN,當圓形模板完全處在圖像前景或背景中時,USAN區(qū)域面積最大(如圖2中e所示);當模板慢慢靠近邊緣圖像時,USAN區(qū)域面積逐漸變小(如圖2中c和d所示);當模板中心處在邊緣時,USAN區(qū)域面積為整個圓形模板面積的一半(如圖2中b所示);當核心處于角點時,USAN區(qū)域面積最小(如圖2中a所示).基于這一原理, S.M.Smith和J.M.Brady在他們的試驗中,就提出了一種最小核值相似區(qū)(SUSAN)算法[7],該方法原理簡單,不需要計算圖像的梯度,因此降低了計算量,而且還能很好地檢測圖像的邊緣.
圖2 USAN角點檢測原理
SUSAN邊緣檢測算法的基本思想是通過使用一個近似圓的模板來遍歷整個圖像(這里采用的是5×5圓形模板),計算模板內每一個像素與中心像素(核)的灰度差值,當這個差值小于所設定的門限t時,則認為該像素與模板中心(核)有近似的灰度,當差值大于門限t時,則判定該點不屬于核值相似區(qū),計算公式如下:
(9)
式中r0表示模板中心(核)的像素,r表示模板內的像素,I(r0)表示模板中心像素點的灰度值,I(r)表示模板內像素點的灰度值,c(r,r0)為模板內像素是否屬于USAN區(qū)域的判別函數(shù),|I(r0)-I(r)|表示兩個像素之間的灰度差,t為灰度閾值,通過大量的實驗證明,t通常取27.
USAN的大小就是統(tǒng)計圓形模板內與模板中心像素灰度值相近的所有像素點個數(shù),因此,該區(qū)域的計算公式如下:
(10)
將n與一個給定的門限g進行比較,SUSAN的邊緣檢測就是將g設定為nmax(圓形像素區(qū)域內像素點的總和)的0.75倍[7],通過下列計算公式來產生圖像邊緣的響應函數(shù).
(11)
在HSI顏色空間的彩色圖像中,Mahalanobis距離作為兩種顏色的色差度量,應用改進的SUSAN算子遍歷整個圖像檢測彩色邊緣[11].首先將彩色圖像從RGB顏色空間轉換成HSI顏色空間,然后用一個5×5的圓形模板遍歷彩色圖像,計算模板內每一個像素與模板中心像素(核)的Mahalanobis距離,并設定一個判斷閾值t,當計算得到的色差小于閾值t時,則認為該像素點與模板中心像素點顏色相似,屬于USAN區(qū)域;否則,則認為該像素點不屬于USAN區(qū)域.如公式(9)所示,c(r,r0)則作為判別模板內像素是否屬于USAN區(qū)域的函數(shù),通過大量的實驗測試,當T取0.12時有比較好的檢測效果.然后根據(jù)公式(10)計算模板中心像素點處USAN區(qū)域面積的大小,設定一個門限g,依據(jù)公式(11)就可以判斷模板中心像素點是否屬于邊緣點.通過此方法,依次去遍歷整個彩色圖像就能夠有效的檢測出彩色圖像的邊緣,由于不需要計算圖像的梯度,因此計算量較小,檢測效率較高[12].
圖3 Flower圖像的邊緣檢測結果
從圖3中(c)中Sobel檢測算子和(e)中傳統(tǒng)SUSAN邊緣檢測算子可以發(fā)現(xiàn)對于對比度較低,亮度差異較小的灰度圖,不能很好的檢測出圖像的某些邊緣,而(e)所示的Canny算子在灰度圖像中的檢測效果要優(yōu)于這兩種方法.由圖(f)顯示,可以發(fā)現(xiàn)本文所提出的算法能夠直接利用彩色圖像的色度和亮度信息,有效的檢測出在灰度圖中難以檢測出的某些對比度較低的邊緣信息,比如葉、花和莖的邊,由此可見,這種方法的檢測效果都要優(yōu)于前面所提到的幾種傳統(tǒng)的基于灰度圖像的彩色圖像邊緣檢測方法.本文算法在HSI空間中充分利用了彩色圖像的色調、亮度和飽和度信息,選取合適的色差閾值,對于不同的彩色圖像,都能夠有效的檢測出彩色邊緣.
本文選擇了符合人眼視覺特性的HSI顏色空間對彩色圖像的邊緣進行檢測,并提出了利用Mahalanobis距離作為兩種顏色的色差度量,在此基礎上將改進的SUSAN算子應用到基于HSI顏色空間的彩色圖像邊緣檢測方法.通過設定閾值進行比較判定當前像素點是否屬于USAN區(qū)域,然后進一步判定是否屬于邊緣點.實驗結果表明,該方法能夠充分的利用彩色圖像的色調、飽和度和亮度信息,是一種有效的彩色圖像邊緣檢測方法.檢測效果要優(yōu)于基于灰度圖像的傳統(tǒng)彩色邊緣檢測方法.
[1] 張 錚,王艷萍,薛歸降,等.數(shù)字圖像處理與機器視覺-Visual C++與Matlab實現(xiàn)[M].北京:人民郵電出版社,2010:335-336.
[2] Canny J.A computational approach to edge detection[J].IEEE Transaction on Pattern Analysis and Machine Intelligence,1986,8(6):679-698.
[3] 田軍委,黃永宣.基于熵約束的快速FCM聚類多閾值分割算法[J].模式識別與人工智能,2008,21(2):221-226.
[4] Sangwine S J.Color image edge detector based on quaternion convolution[J].Electronic Letters,1998,34(10):969-971.
[5] 劉思遠,李曉峰,李在銘.基于鄰域彩色變化矢量場的圖像邊緣檢測技術研究[J].計算機應用研究,2007,24(7):290-291.
[6] 原春鋒,王傳旭,張祥光,等.光照突變環(huán)境下基于高斯混合模型和梯度信息的視頻分割[J].中國圖象圖形學報,2007,12(11):2 068-2 072.
[7] Smith S M,Brady J M.SUSAN-A new approach to low level image processing[J].International Journal of Computer Vision,1997,23(1):45-78.
[8] 李貴俊,劉正熙,游志勝,等.一種基于色差和彩色歸一化的車身顏色識別算法[J].計算機應用,2004,24(9):47-49.
[9] 葉齊祥,高 文,王偉強,等.一種融合顏色和空間信息的彩色圖像分割算法[J].軟件學報,2004,15(4):522-530.
[10] 景曉軍,李劍鋒,劉郁林.一種基于三維最大類間方差的圖像分割算法[J].電子學報,2003,31(9):1 281-1 285.
[11] 郭 陽,徐心和.在基于形狀信息的視覺識別中顏色信息的應用[J].儀器儀表學報,2006,27(S):758-759.
[12] 宗常進,畢軍濤,董軍宇.基于離散小波變換的信號分解算法研究[J].計算機工程與應用,2009,45(8):165-167.