數字圖像處理基礎之--像素間的關係(鄰接/連通)

圖像的像素的意義

一幅圖像,經過取樣和量化之後就可以得到數字圖像。數字圖像在存儲時,都是由單一的像素保存在存儲設備中。像素保存順序是與像素在數字圖片中原本所處在的物理位置相關,那麼就要了解像素之間的一些基本關係。

在數字圖像處理領域,存在着空間域和變換域的概念。數字圖像處理的基本操作,有些需要在空間域中進行,而另外的一些則需要在變換域中進行。
空間域:就是指圖像的本身,由所採集到的一個個像素組成。對目標像素進行常用的處理方法,例如灰度變換和空間濾波兩大類。
變換域:通過特定的變換函數,將圖像的像素變化到目標域中,在變換域中完成相應的操作運算後,再利用反變換核返回到空間域。
由上可知,無論在空間域還是在變換域,像素都是根本。在大多數的數字圖像處理中,像素之間在運算時都是要發生關係的,這是因爲多個像素構成了圖像中的一個對象。

圖像是由像素的形式來保存的,所以我們以f(x,y)來表示圖像,對於特定像素,分別用p和q來表示。

相鄰像素

在這節中主要討論一個像素p的所有的相鄰像素,所有的相鄰像素與像素p的距離均不超過√2。.
位於座標(x,y)處的像素p,在水平和垂直方向分別有兩個像素與其相鄰,對應座標爲:
(x+1,y), (x-1,y), (x,y+1), (x,y-1)
這一組像素稱爲像素p的4鄰域,用N_4 (p)來表示。
對於同樣的像素p,在其對角方向有4個像素與其相鄰,對應座標爲:
(x-1,y-1), (x-1,y+1), (x+1,y-1), (x+1,y+1)
這一組像素用N_D (p)來表示。
上面的8個座標點,構成了像素p的8鄰域,用N_8 (p)來表示。
在討論像素點的時候,會遇到這樣的情況:像素p位於圖像的邊界,這樣無論是N_4 (p),N_D (p)都有一些點是不存在的,在目前,討論這些像素點是沒有任何意義。在做特定像素運算的時候,再根據運算的性質來確定如何來處理邊界像素的相鄰像素。

下圖爲相鄰像素的示意圖:


N_8 (p)= N_4 (p)+ N_D (p)

鄰接性、連通性

在灰度圖像中,假如灰度位數爲8bit,那麼所有的可能灰度取值範圍爲[0,255]。爲了方便討論和分析,現只考慮二值圖像,即灰度值只有0和1兩種情況。定義V爲所要討論的像素的鄰接性灰度值集合。則在二值圖像中V={1}。分析三種類型的鄰接:
  • 4鄰接。如果像素q在集合N_4 (p)中,則具有V中灰度值的兩個像素q和p是4鄰接的。
  • 8鄰接。如果像素q在集合N_8 (p)中,則具有V中灰度值的兩個像素q和p是8鄰接的。
  • m鄰接。如果(1)q在集合N_4 (p)中,或者(2) 像素q在集合N_D (p)中,且集合N_4 (p)∩N_4 (q)沒有來自V中灰度值的像素,則具有V中數值的兩個像素p和q是m鄰接的。
對於鄰接性,更鮮明扼要的解釋如下:
  • 4鄰接。像素p q的灰度值屬於集合V,像素q在N_4 (p)中
  • 8鄰接。像素p q的灰度值屬於集合V,像素q在N_8 (p)中
  • m鄰接。像素p q的灰度值屬於集合V,像素q在N_4 (p)中或者像素q在N_D (p)中,且集合N_4 (p)∩N_4 (q)沒有來自V中數值的像素。

下圖分別給出了4鄰接,8鄰接,m鄰接的示意圖。




接下來需要考慮一個問題,在有8鄰接後,爲什麼要引入m鄰接的定義呢?在《數字信號處理》2.5.2節中,作者給出的原因是,ml鄰接主要是爲了消除8鄰接的二義性。那麼,二義性怎麼體現呢?首先來解釋什麼是像素的通路。

像素的通路

從座標(x,y)的像素p到座標爲(s,t)的像素q的通路,是由一系列的特定像素組成的序列,其座標爲:
(x0,y0), (x1,y1), …, (xn,yn)
其中(x0,y0) = (x,y), (xn,yn) = (s,t). 並且像素(xi,yi)和(xi-1,yi-1)對於1≤i≤n是鄰接的(4鄰接,8鄰接,m鄰接)。在這種情況下,n是通路的長度。從像素p到像素q就形成了一個像素通路。

當按照特定的鄰接性來確認像素的通路時,必須保證通路的唯一性,在下圖的例子中,如果選擇8鄰接,則通路並不是唯一的,所以具有二義性。當考慮m鄰接的時候,則通路就是唯一的,這就是m鄰接可以消除8鄰接的二義性體現。



由上圖可以看出,在從像素p到像素q的通路中,如果考慮8鄰接,那麼通路就不具有唯一性。


令S是圖像中的一個像素子集,如果S的全部像素之間存在一個通路,則可以說兩個像素p和q在S中是連通的。對於S中的任何像素p,S中連通到該像素的像素集成爲S的連通分量。如果S僅有一個連通分量,則集合S成爲連通集。概括來說,S中的所有的像素,每兩個相鄰的像素之間是相鄰接的(4,8,m),並且只有一個通路,那麼S爲連通集。

令R是圖像中的一個像素子集。如果R是連通集,則R被稱作爲一個區域。兩個區域Ri和Rj如果能形成一個連通集,那麼稱這兩個區域爲鄰接區域。不過在討論是否爲鄰接區域的時候,只能考慮區域邊界的像素是否構成4鄰接和8鄰接,而不考慮m鄰接。在定義區域鄰接的時候,必須指定鄰接類型。

注意:在《數字圖像處理第三版》的2.5.2節中,“不鄰接的區域稱爲不連接區域”應該是錯誤,修改成“不鄰接的區域稱爲不鄰接區域”。
發佈了26 篇原創文章 · 獲贊 106 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章