2.5 像素之间的关系

图像像素在空间中是按某种规律排列的,互相之间有一定的联系。在对图像进行处理和分析时,要考虑像素之间的关系。

2.5.1 像素邻域及连通

像素之间的关系与每个像素的(由其近邻像素组成的)邻域有关。

对于一个坐标为(x, y)的像素p,它可以有4个水平和垂直的近邻像素,它们的坐标分别是(x+1, y)、(x-1, y)、(x, y+1)、(x, y-1)。这些像素(均用r表示)组成p4-邻域,记为N4(p),如图2-15(a)所示。需要指出的是,如果像素p处于图像的边缘,则它的N4(p)中的若干像素会落在图像外部。

像素p的4个对角近邻像素(用s表示)的坐标是(x+1, y+1)、(x+1, y-1)、(x-1, y+1)、(x-1, y-1),记为ND(p),如图2-15(b)所示。像素p的4个4-邻域像素加上4个对角近邻像素一起构成p8-邻域,记为N8(p),如图1.2.1(c)所示。需要指出的是,如果像素p处于图像的边缘,则它的ND(p)和N8(p)中的若干像素会落在图像外部。

图2-15 像素的3种邻域

对两个像素pq来说,如果qp的邻域(可以是4-邻域、8-邻域或对角邻域)中,则称pq邻接(分别是4-邻接、8-邻接或对角邻接)的。如果pq是邻接的,并且它们的灰度值满足某个特定的相似准则(如它们的灰度值相等或在同一个灰度值集合中取值),则称pq互相连接。可见连接比邻接要求更高,不仅要考虑空间(邻接)关系,还要考虑灰度(相似)关系。

如果pq不(直接)邻接,但它们均在另一个像素的相同邻域(可以是4-邻域、8-邻域或对角邻域)中,并且这三个像素的灰度值满足某个特定的相似准则(如它们的灰度值相等或在同一个灰度值集合中取值),则称pq连通(可以是4-连通或8-连通)。进一步,只要两个像素pq之间有一系列依次连接的像素,则它们连通。这一系列依次连接的像素构成pq间的一条通路。从具有坐标(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≤inn为通路长度。

2.5.2 像素间距离

像素之间关系的一个重要概念是像素之间的距离。给定3个像素pqr,坐标分别为(x, y)、(s, t)、(u, v),如果下列条件满足的话,称函数D是距离度量函数。

(1)D(p, q)≥0(当且仅当p=qD(p, q)=0)。

(2)D(p, q)=D(q, p)。

(3)D(p, r)≤D(p, q)+D(q, r)。

在上述3个条件中,第1个条件表明两个像素之间的距离总是正的(当两个像素空间位置相同时,它们之间的距离为0);第2个条件表明两个像素之间的距离与起终点的选择无关;第3个条件表明两个像素之间的最短距离是沿直线的。

在数字图像中,有多种距离。

两个像素pq之间的欧氏距离(也是范数为2的距离)定义为

根据这个距离度量,与(x, y)的欧氏距离小于或等于某个值d的像素都包括在以(x, y)为中心、以d为半径的圆中。在数字图像中,只能近似地表示圆,例如,与(x, y)的欧氏距离小于或等于3的像素组成如图2-16(a)所示的区域(图中距离值已四舍五入)。

p和点q之间的D4距离(也是范数为1的距离)称为城区距离,定义为

根据这个距离度量,与(x, y)的D4距离小于或等于某个值d的像素组成以(x, y)为中心的菱形。例如,与(x, y)的D4距离小于或等于3的像素组成如图2-16(b)所示的区域。D4=1的像素就是(x, y)的4-邻域像素。

p和点q之间的D8距离(也是范数为∞的距离)称为棋盘距离,定义为

根据这个距离度量,与(x, y)的D8距离小于或等于某个值d的像素组成以(x, y)为中心的正方形。例如,与(x, y)的D8距离小于或等于3的像素组成如图2-16(c)所示的区域。D8=1的像素就是(x, y)的8-邻域像素。

图2-16 等距离轮廓示例

欧氏距离给出的结果准确,但由于在计算时需要进行平方和开方运算,计算量大且结果一般不为整数。城区距离和棋盘距离均为非欧氏距离,计算量小,但有一定的误差。注意距离的计算只考虑图像中两个像素的(相对)位置,不考虑这两个像素(自身)的灰度值。

例2-13 距离计算示例

根据上述三种距离的定义,在计算图像中两个像素间的不同距离时会得到不同的结果。如在图2-17中,两个像素pq之间的欧氏距离为5,如图2-17(a)所示;D4距离为7,如图2-17(b)所示;D8距离为4,如图2-17(c)所示。

图2-17 像素间距离的计算

利用像素间的距离可定义像素的邻域,如D4=1的像素就是(x, y)的4-邻域像素。换句话说,像素p的4-邻域也可定义为

D8=1的像素就是(x, y)的8-邻域像素。类似地,像素p的8-邻域也可定义为