摘 要: 分析了國內(nèi)外圖像陰影邊緣檢測(cè)方法" title="檢測(cè)方法">檢測(cè)方法的不足,提出一種基于粗糙集" title="粗糙集">粗糙集理論的邊緣檢測(cè)新方法,闡述了利用粗糙集條件屬性和邊緣點(diǎn)梯度等特點(diǎn)對(duì)圖像邊緣點(diǎn)進(jìn)行分類以及提取陰影邊緣的方法,通過實(shí)驗(yàn)驗(yàn)證了邊緣檢測(cè)效果。
關(guān)鍵詞: 粗糙集 陰影檢測(cè) 陰影邊緣 最大" title="最大">最大鄰域差
陰影在圖像中普遍存在,它嚴(yán)重影響圖像處理的后期工作,如圖像分割和圖" title="和圖">和圖像匹配等。為此必須先對(duì)圖像陰影進(jìn)行去除。陰影種類繁多,有基于幾何特性的,有基于陰影灰度性質(zhì)(如陰影邊緣灰度漸變、突變,陰影分布是否均勻)的,還有基于陰影形成原因的,但目前沒有一種通用的陰影去除方法能對(duì)所有的陰影有理想的處理效果,所以必須對(duì)不同類型的陰影采用不同的處理方法。本文提出了將陰影分類的思想,但前提是先對(duì)陰影進(jìn)行檢測(cè)。近年來,解決陰影檢測(cè)和識(shí)別的方法已有不少文章,如Jiang與Ward提出了基于陰影強(qiáng)度與幾何特性的陰影檢測(cè)方法[1],即在陰影的檢測(cè)過程中采用3層:低層、中層與高層。在低層處理時(shí)從圖像中提取暗區(qū)域;中層則對(duì)暗區(qū)域進(jìn)行特征分析,包括檢測(cè)暗區(qū)域輪廓頂(vertices),確認(rèn)暗區(qū)域中的半影(penumbrae),將暗區(qū)域分成自陰影和投影陰影以及確定與暗區(qū)域相鄰的物體區(qū)域;高層則結(jié)合前兩層結(jié)果,從暗區(qū)域中確認(rèn)陰影。Salvador等人基于彩色不變模型確定并歸類陰影[2]。
以上陰影檢測(cè)方法都存在局限性,需要滿足一定的假設(shè)條件,如場景中僅有一個(gè)光元,陰影位于相對(duì)平坦的區(qū)域,或者有某種不因陰影而改變的彩色不變量等。本文采用基于粗糙集陰影邊緣點(diǎn)分類的方法,較好地實(shí)現(xiàn)了陰影邊緣的檢測(cè)。
1 基于等價(jià)關(guān)系的子圖像劃分
對(duì)于一幅灰度級(jí)數(shù)為L的M×N個(gè)像素組成的二維圖像U,設(shè)像素x為U中的一個(gè)對(duì)象,稱知識(shí)庫(知識(shí)系統(tǒng))K=(U,R)為一個(gè)圖像近似空間。考慮中心像素為w(i,j)=f(x,y)的3×3窗口,如式(1):
移動(dòng)該窗口,使所有像素都依次置于該窗口的中心位置。計(jì)算像素點(diǎn)w(i,j)的梯度I(x,y)=(|ΔX|+|ΔY|),其中
f(x,y)為原圖像,g(x,y)為處理后的梯度圖像。
粗糙集理論[3]中有兩種屬性:條件屬性和決策屬性。為了有目的地區(qū)別處理圖像中某類陰影,定義條件屬性集C={c1,c2,c3},其中c1是非陰影噪聲屬性,c2是像素的梯度大小屬性,c3是鄰域最大灰度屬性。
噪聲屬性c1={0,1},其中0代表1×1(單個(gè)像素)或3×3像素組成子塊" title="子塊">子塊p的平均灰度值與相鄰子塊平均灰度值之差的絕對(duì)值均小于某一閾值T;1代表子塊的差值絕對(duì)值均大于T。像素梯度的屬性c2={0,1},其中0代表像素梯度滿足A3={0,1},此處既利用了像素本身的灰度值,又利用了其鄰域信息,設(shè)C(X,Y)={F(X-I,Y-J)|-(N-1) 2}表示圖像中大小為n×n的窗口,f(x,y)表示坐標(biāo)為(x,y)的點(diǎn)的灰度值,n為奇數(shù),則定義鄰域函數(shù)為
其中0代表鄰域最大灰度差C
(1)根據(jù)C1劃分子圖
定義等價(jià)關(guān)系Rc1為:子塊Pij與相鄰子塊的平均灰度值E(P)之差的絕對(duì)值取整均大于某一閾值T,即:
式中Pi±1,j±1表示與Pij相鄰的子塊,Rc1(P)表示所有孤立噪聲或小塊的非陰影噪聲像素組成的集合。
(2)根據(jù)C2劃分子圖
設(shè)x代表梯度“較大”的像素,等價(jià)關(guān)系Rc2定義為:如果兩個(gè)像素的梯度值屬于同一范圍,則兩個(gè)像素是Rc2相關(guān)的,即屬于等價(jià)類,用公式表示為:
Rc2(x)={x|I(x,y)>B} (6)
B是一閾值,Rc2(x)表示所有梯度較大的像素x組成的集合。
(3)根據(jù)C3劃分子圖
設(shè)s代表最大鄰域差較大的元素,等價(jià)關(guān)系Rc3定義為:如果兩個(gè)像素的最大鄰域差值屬于同一范圍,則兩個(gè)像素是Rc3相關(guān)的,即屬于等價(jià)類,用公式表示為:
Rc3(s)={s|I(s,t)>D} (7)
D是一閾值,Rc3(s)表示所有最大鄰域差較大的像素s組成的集合。
對(duì)上述兩個(gè)集合除噪,可以避免明顯的假邊緣點(diǎn)。即A1=Rc2(x)-Rc1(p)和A2=Rc3(s)-Rc1(p),A1表示剔除噪聲后,所有像素中梯度大的像素x組成的集合。A2表示剔除噪聲后, 所有像素的最大鄰域差值大的像素s組成的集合。A1、A2即為需要的像素集合。
2 陰影邊緣的提取
提取邊緣的方法很多,近年來又有不少新方法,在本文中,使用像素屬性分類的方法來檢測(cè)圖像的邊緣。
2.1 基于邊緣點(diǎn)分類
假設(shè):陰影區(qū)域和非陰影區(qū)域存在著一個(gè)過渡帶,即認(rèn)為邊緣是有寬度的。本文選用海邊沙石陰影圖像來分析,將陰影分為兩部分,一部分為圖像外的物體(例如樹)的投影(以下簡稱為外陰影),另一部分為目標(biāo)自身陰影及目標(biāo)之間的投影(以下簡稱為內(nèi)陰影)。
(1)外陰影與內(nèi)陰影的灰度相差較大
通過大量圖像發(fā)現(xiàn):外陰影的平均灰度要比內(nèi)陰影的平均灰度低,在同一淺色背景下表現(xiàn)為對(duì)比度大些。此時(shí)對(duì)上面求得的集合A1、A2分別求I(x,y)、H(x,y),在A1中,A (2)外陰影與內(nèi)陰影的灰度相差不大
這樣求得的I(x,y)或H(x,y)不能分為兩個(gè)較明顯的區(qū)間,此時(shí)僅求H(x,y)即可。
2.2 部分假邊緣點(diǎn)的處理
對(duì)于上述的情況(1),如果外陰影和內(nèi)陰影分布不均勻,即外陰影內(nèi)部某些點(diǎn)的I(x,y)、H(x,y)恰好屬于內(nèi)陰影邊緣點(diǎn)的I(x,y)、H(x,y),這時(shí)會(huì)誤判。此時(shí)應(yīng)在內(nèi)陰影的M(R)中去掉這些點(diǎn),方法如下:對(duì)內(nèi)陰影邊緣點(diǎn)集M(R)逐一進(jìn)行統(tǒng)計(jì),使該點(diǎn)向四周移動(dòng),若都能碰到屬于外陰影邊緣高梯度點(diǎn)(梯度大于或等于B的點(diǎn))或高最大鄰域灰度差的點(diǎn)(最大鄰域灰度差大于或等于D的點(diǎn)),則該點(diǎn)是外陰影的內(nèi)部點(diǎn),將其從內(nèi)陰影邊緣點(diǎn)集M(R)中去掉。注意:之所以使外陰影內(nèi)部點(diǎn)向四周移動(dòng),是因?yàn)閮?nèi)陰影的邊緣點(diǎn)沿著某個(gè)方向也可能會(huì)碰到高梯度點(diǎn)。同理,可將外陰影邊緣點(diǎn)集中的假點(diǎn)去除掉,這樣,剩下的點(diǎn)均為真正的邊緣點(diǎn)了。
2.3 邊緣的細(xì)化與邊界跟蹤
以上分析均假設(shè)邊緣是有寬度的,為了更精確地檢測(cè)邊緣,需要對(duì)邊緣進(jìn)行細(xì)化[4],即把邊緣的寬度變?yōu)?個(gè)像素。方法是:在邊緣的法向上(從邊緣一側(cè)高灰度鄰域指向另一側(cè)低灰度鄰域且與邊緣垂直的線稱為邊緣法線),邊緣點(diǎn)的梯度是最大的。如果兩個(gè)邊緣點(diǎn)的梯度與方向相同,而且相互位于法向上,保留最大鄰域差較大的點(diǎn)。經(jīng)過這樣的處理后,就可以得到較高定位精度的細(xì)化邊緣。
經(jīng)過以上處理后,得到一系列離散的邊緣點(diǎn)。因?yàn)閳D像中有意義的邊緣點(diǎn)都有一定的連續(xù)性,因此實(shí)際邊緣應(yīng)該是這些離散邊緣點(diǎn)按照一定的空間關(guān)系連接起來的點(diǎn)序列。也就是說,為了把點(diǎn)連接成線,需要建立一個(gè)三叉樹,每個(gè)結(jié)點(diǎn)最多有三個(gè)后繼點(diǎn),最多一個(gè)前趨點(diǎn),還留有一個(gè)標(biāo)志位,后繼點(diǎn)表示當(dāng)前點(diǎn)所在線的下一個(gè)點(diǎn),它與當(dāng)前點(diǎn)滿足下面的關(guān)系[5]:
(1)空間位置上相鄰,即兩者必須互為8鄰域點(diǎn)。
(2)方向上相同,因?yàn)樗鼈兾挥谕痪€上,因此方向應(yīng)該一致。考慮到各種因素的影響,規(guī)定它們的方向之差的絕對(duì)值應(yīng)小于45°。
(3)不分叉性。兩個(gè)點(diǎn)的連線方向與兩個(gè)點(diǎn)的邊緣方向的夾角小于45°。每個(gè)點(diǎn)最多可能有3個(gè)后繼點(diǎn),即該點(diǎn)方向所指的那個(gè)鄰域點(diǎn),以及在8個(gè)離散方向中最接近該方向的其他兩個(gè)方向(分別位于該方向的兩側(cè))所指的鄰域點(diǎn)。
連接的過程是依次檢查M(R)和N(S)中的每個(gè)像素點(diǎn),根據(jù)不同的方向,判斷它的前趨點(diǎn)和后繼點(diǎn)。具體步驟如下:(1)根據(jù)空間位置相鄰和不分叉性,確定候選后繼點(diǎn)。(2)根據(jù)方向相同性,在候選后繼點(diǎn)中去掉那些方向差之絕對(duì)值大于45°的點(diǎn)。(3)根據(jù)不同的情況,給后繼點(diǎn)和前趨點(diǎn)設(shè)置不同的值。
給每個(gè)邊緣點(diǎn)確定了前趨點(diǎn)和后繼點(diǎn)之后,即可從邊線的起點(diǎn)出發(fā),依次得到直線上的每個(gè)像素點(diǎn)了。該過程稱為邊界跟蹤,即對(duì)每條直線進(jìn)行標(biāo)注。一條邊界線的所有點(diǎn)具有相同的標(biāo)志號(hào)(可以是按某種規(guī)則制定的記號(hào))。對(duì)二組圖像進(jìn)行陰影處理,分別如圖1和圖2所示。圖1(c)和圖2(c)分別是用本文對(duì)圖1(a)、圖2(a)求得的陰影邊緣圖像。
3 實(shí)驗(yàn)結(jié)果和分析
用多幅圖像進(jìn)行實(shí)驗(yàn),結(jié)果表明,本文提出的算法效果較好。圖1(a)和圖2(a)是兩幅海邊沙灘原始圖像,為說明本文算法的優(yōu)點(diǎn),實(shí)驗(yàn)給出了應(yīng)用常規(guī)方法得到的圖像,如圖1(b)和圖2(b)所示。
常規(guī)邊緣檢測(cè)方法大都基于單一的微分技術(shù)來確定圖像的邊緣,是一種相對(duì)簡單的算法。從圖1(b)、圖1(c)的邊緣圖像可以看出,常規(guī)方法不如本文算法,從人的視覺來看,新算法處理的圖像邊緣明顯精確一些,常規(guī)算法處理的圖像邊緣有些模糊,而且有些地方未檢測(cè)到。邊緣檢測(cè)實(shí)驗(yàn)取子塊pij為一個(gè)像素,n=3,閾值T=60,Rc2(x)中的閾值B=80,Rc3(s)中的閾值D=40。通過實(shí)驗(yàn),可以看出新算法優(yōu)于常規(guī)算法。
陰影普遍存在于各類圖像中,本文首先利用基于粗糙集分類方法求得邊緣點(diǎn),在此過程中,使用了一種去除假邊緣點(diǎn)的方法,利用最大鄰域灰度差及邊緣梯度,既得到了真正的邊緣點(diǎn)又去除了噪聲,然后對(duì)邊緣點(diǎn)進(jìn)行了細(xì)化和跟蹤,得到了單寬度的陰影邊緣。對(duì)這些邊緣進(jìn)行分類將是下一步的目標(biāo)。
參考文獻(xiàn)
1 Jiang C,Ward M O.Shadow identification.Computer Vision and Pattern Recognition,1992;(7)
2 Salvador E,Cavallaro A,Ebrahimi T.Shadow identification and classification using invariant color models.In:International conference on acoustics,speedch,and signal processing,2001
3 Paw I Z.Rough sets Theoretical aspects of reasoning about data.Now ow iejska,1990;(15):219~225
4 Chang F,Lu Y C,Pavlidis T.Feature analysis using line sweep thinning algorethm.T-PAMI,1999;21(2):145~158
5 楊益軍,兆榮椿,汪文秉.航空?qǐng)D像中陰影區(qū)域的檢測(cè).信號(hào)處理,2002;18(3)