数字图像处理(4版)——第 2 章——数字图像基础(Rafael C.Gonzalez&Richard E. Woods)

目录

2.1  视觉感知元素(Elements of visual perception)

2.1.1 人眼结构(Structure of the human eye)

2.1.2  眼中的图像格式(Image formation in the eye)

2.1.3 亮度适应和辨别(Brightness adaptation and discrimination)

2.2  光和电磁波谱(Light and the electromagnetic spectrum)

2.3  图像感知和采集(Image sensing and acquisition)

2.3.1 使用单个传感元件进行图像采集(Image acquisition using a single sensing element)

2.3.2 使用传感器带进行图像采集(Image acquisition using sensor strips)

2.3.3 使用传感元件阵列进行图像采集(Image acquisition using sensor arrays)

2.3.4 简单图像格式模型(A simple image formation model)

2.4 图像的采样和量化(Image sampling and quantization)

2.4.1 采样和量化的基本概念(Basic concepts in sampling and  quantization)

2.4.2 表示数字图像(Representing digital images)

2.4.3 线性索引对比坐标索引(Linear vs. coordinate indexing)

2.4.4 空间分辨率和强度分辨率(Spatial and intensity resolution)

2.4.5 图像插值(Image interpolation)

2.5 像素之间的一些基本关系(Some basic relationships between pixels)

2.5.1  像素领域(Neighbors of a pixel)

2.5.2  邻接、连通区、区域、和边界(Adjacency, connectivity, regions, and boundaries)

2.5.3  距离度量(Distance measures)

2.6 用于数字图像处理的基本数学工具简介(Introduction to the basic mathematical tools used in digital image processing)

2.6.1  逐元素运算对比矩阵运算(Elementwise versus matrix operations)

2.6.2  线性运算对比非线性运算(Linear versus nonlinear operations)

2.6.3  算术运算(Arithmetic operations)

2.6.4  集合和逻辑运算(Set and logical operations)

2.6.4.1  基本集合运算(Basic Set Operations)

2.6.4.2  逻辑运算(Logical Operations)

2.6.5  空间运算(Spatial Operations)

2.6.6  向量和矩阵运行(Vector and matrix operations)

2.6.7  图像变换(Image transforms)

2.6.8 图像强度作为随机变量(Image intensities as random variables)


2.1  视觉感知元素(Elements of visual perception)

         尽管数字图像处理领域建立在数学基础上,但人类的直觉和分析通常在选择一种技术与另一种技术时发挥作用,并且这种选择通常是基于主观的视觉判断而做出的。 因此,理解人类视觉感知的基本特征作为我们阅读本书的第一步是合适的。我们特别感兴趣的是人类如何形成和感知图像的基本机制。 我们有兴趣了解人类视觉的物理限制,以及我们在数字图像工作中使用的因素。人类和电子成像设备在分辨率和适应照明变化的能力方面的比较等因素不仅很有趣,而且从实用的角度来看也很重要。

2.1.1 人眼结构(Structure of the human eye)

图 2.1 显示了人眼的简化横截面。 眼睛几乎是一个球体(直径约20毫米),由三层膜(membranes)包围:角膜(cornea)和巩膜(sclera)外层;脉络膜(choroid);和视网膜(retina)。 角膜是覆盖眼睛前表面的坚韧透明组织。巩膜与角膜相连,是一层不透明的膜,包围着视球的其余部分。

-------------------------------------图 2.1 简化的人眼横截面图-------------------------------------

脉络膜位于巩膜正下方。该膜包含血管网络,是眼睛营养的主要来源。即使是脉络膜的表面损伤也可能因限制血流的炎症而导致严重的眼部损伤。脉络膜色素沉着,有助于减少进入眼睛的外部光线和视球内的反向散射。在其前端,脉络膜分为睫状体和虹膜。后者收缩或膨胀以控制进入眼睛的光量。 虹膜(瞳孔)中央开口的直径约为 2 至 8 毫米。 虹膜的前部含有眼睛的可见色素,而后部含有黑色色素。

    晶状体(lens)由纤维细胞的同心层组成,并由附着在睫状体上的纤维悬挂。 它由 60% 至 70% 的水、约 6% 的脂肪以及比眼睛中任何其他组织更多的蛋白质组成。 晶状体的颜色随着年龄的增长而逐渐变黄。在极端情况下,晶状体过度混浊(称为白内障)会导致颜色辨别能力差和视力丧失。该镜片吸收大约 8% 的可见光谱,在较短波长处吸收率更高。 红外线和紫外线都会被晶状体内的蛋白质吸收,过量会损害眼睛。

    眼睛最内层的膜是视网膜,它排列在整个后部壁的内侧。当眼睛聚焦时,来自物体的光在视网膜上成像。 图案视觉是由分布在视网膜表面的离散光感受器提供的。 受体有两种类型:视锥细胞和视杆细胞。 每只眼睛有 6 到 700 万个视锥细胞。 它们主要位于视网膜的中央部分,称为中央凹,对颜色高度敏感。人类可以解析精细的细节,因为每个视锥细胞都连接到自己的神经末端。 肌肉旋转眼睛,直到感兴趣区域的图像落在中央凹上。 锥体视觉称为明视觉或亮光视觉。

    视杆细胞的数量要多得多:约 75 至 1.5 亿个分布在视网膜上。较大的分布面积以及多个杆连接到单个神经末梢的事实减少了这些受体可辨别的细节量。视杆捕捉视野的整体图像。 它们不涉及色觉,并且对低照度敏感。 例如,在日光下呈现明亮颜色的物体在月光下呈现为无色形式,因为只有视杆细胞受到刺激。 这种现象被称为暗视或暗光视觉。

    图 2.2 显示了右眼横截面的视杆细胞和视锥细胞的密度,穿过视神经从眼睛中伸出的区域。 该区域缺乏受体导致所谓的盲点(见图 2.1)。 除该区域外,受体的分布关于中央凹径向对称。 受体密度以距视轴的度数来测量。 请注意,在图 2.2 中,视锥细胞在中央凹的中心区域最密集,而视杆细胞的密度从中心向外到离轴约 20°处逐渐增加。 然后,它们的密度向视网膜周边逐渐减小。

中央凹(fovea)本身是视网膜上直径约 1.5 毫米的圆形凹痕(indentation)。如图2.22所示,视网膜该区域的视锥细胞密度约为每平方毫米 150,000 个元素。根据这些数字,中央凹(眼睛中视力最高的区域)中的视锥细胞数量约为 265,000 个单元。现代电子成像芯片大大超过了这个数字。虽然人类将智力、经验与视觉相结合的能力使得纯粹的定量比较有些肤浅,在未来的讨论中,请记住电子成像传感器在解析图像细节方面很容易超出眼睛的能力。

---------------图 2.2 视杆细胞和视锥细胞在视网膜中的分布---------------------

2.1.2  眼中的图像格式(Image formation in the eye)

在人眼中,晶状体中心与成像传感器(视网膜)之间的距离是固定的,通过改变晶状体的形状来获得实现正确对焦所需的焦距。 睫状体中的纤维通过分别使远处或近处物体的晶状体变平或变厚来实现这一点。晶状体中心与视网膜沿视轴的距离约为17mm。焦距范围约为 14 mm 至 17 mm,后者在眼睛放松并聚焦在大于约 3米的距离时发生。图2.3所示的几何图形演示了如何获取在视网膜上所成图像的尺寸。例如,假设一个人正在一百米的距离处观察一颗15米高的树。令h表示视网膜图像中的物体高度,图2.3的几何图形可得出 15 /100 = h /17 或 h = 2.5mm 。如本节前述所示,视网膜图像主要集中于小凹区域。然后,感知是通过光受体的相对激发而发生的,光受体将辐射能转化为电脉冲,最终由大脑解码

------------图 2.3 眼睛观察棕榈树的图形表示,C点是透镜的焦点中心-------------

2.1.3 亮度适应和辨别(Brightness adaptation and discrimination)

由于数字图像显示为一组离散强度,因此眼睛区分不同强度级别的能力是呈现图像处理结果的重要考虑因素。人类视觉系统可以适应的光强度水平范围是巨大的——从暗视阈值到眩光极限,大约为  10^{10} 。实验证据表明主观亮度(人类视觉系统感知的强度)是入射到眼睛上的光强度的对数函数。图 2.4 是光强度与主观亮度的关系图,说明了这一特性。 长实线代表视觉系统可以适应的强度范围。 仅在明视觉中,范围约为 10^{6} 。从暗视觉到明视觉的过渡在 0.001 到 0.1 毫朗伯(millilambert)(对数标度中为 -3 到 −1 mL)的近似范围内是逐渐变化的。

解释图 2.4 中所描绘的令人印象深刻的动态范围的关键点是,视觉系统不能同时在这样的范围内运行相反,它通过改变其整体灵敏度来实现这种巨大的变化,这种现象称为亮度适应(brightness adaptation)。与总适应范围相比,眼睛可以同时辨别的不同强度级别的总范围相当小。对于给定的一组条件,视觉系统的当前灵敏度级别称为亮度适应级别(brightness adaptation level),例如,它可能对应于图2.4中的亮度 B_{a} 。短的交叉曲线表示当适应这个级别时眼睛可以感受的主观亮度。这个范围相当有限,在这个位置及其下面,有一个亮度级别 B_{b} ,在这个范围内所有的刺激都被视为无法区分的黑暗区。曲线的上部实际上不受限制,但如果延伸得太远,就会失去其意义,因为更高的强度只会使适应水平高于 B_{a}  。

------------图 2.4 展示一个特定适应等级 B_{a}  的主观亮度感知范围-------------

眼睛区分光强度在任意具体适应等级之间变化的能力相当有趣。用于确定人类视觉系统亮度辨别能力的经典实验包括让受试者看一个平坦、均匀照明的区域,该区域足够大以占据整个视野。该区域通常是漫射器(diffuser),例如不透明玻璃,由光源 I 从后面以可变强度照明。向该区域添加照明增量 ΔI,其形式为短时闪光,在均匀照明场的中心显示为圆圈,如图 2.5 所示。

------------------图 2.5 用于表征亮度辨别的基本实验设置-----------------------

如果ΔI 不够亮,则实验对象(subject)说“否”,表明没有感知变化。随着ΔI 逐渐增强,则实验对像可能给出肯定的回应“是”,表明感受到变化。最后,当ΔI 足够强的时候,则实验对象总是作出“是”的回应。 量 {\Delta}I_{c}/I  (其中,其中  {\Delta}I_{c} 是背景照明I在50% 的时间内可辨别的照明增量)称为Weber比率(Weber ratio)。一个小值的 {\Delta}I_{c}/I 意味着可以辨别强度的小百分比变化。这表示“良(good)”亮度识别。一个大的 {\Delta}I_{c}/I 意味着为了让人眼侦测到这种变化,就要求强度是一个更大的百分比变化。这表示“弱(poor)”亮度辨别。

{\Delta}I_{c}/I 作为函数 \log{I}  的图像具有如图 2.6 所示的特征形状。该曲线表明,在低照度下,亮度辨别力很差(Weber比率比较大),而随着背景照度的增加,亮度辨别力显着改善(Weber双率减小)。曲线中的两个分支反映了这样一个事实在低光照等级下,视觉是由视杆细胞(rods)实现的,而在高光照等级下,视觉是视锥细胞(cones)的函数

------------------图 2.6 Weber比率作为光强度函数的典型图像-------------------

如果背景照明保持恒定,并且现在允许另一个光源的强度(而不是闪烁)从未被感知到总被感知逐渐变化,则典型的观察者可以辨别总共一到两打不同的光照强度变化。大致说来,这个结果与一个人在单色图像中的任何一点或小区域可以看到的不同强度的数量有关。这并不意味着图像可以用如此少量的强度值来表示,因为当眼睛在图像上漫游时,平均背景会发生变化,从而允许在每个新的适应等级检测到一组不同的增量变化。最终结果是眼睛能够进行更广泛的整体强度辨别。事实上,正如我们将在第 2.4 节中展示的那样,眼睛能够检测单色图像中令人反感的效果(objectionable effect),其整体强度由不到大约两打等级表示

有两个现象表明感知亮度并不是光强度的简单函数。第一个基于这样的事实:视觉系统倾向于在不同光强度区域的边界周围下冲(undershoot)或过冲(overshoot)。 图 2.7(a) 显示了这种现象的一个引人注目的例子。尽管条纹的强度是恒定的[见图2.7(b)],但我们实际上感知到边界附近有强烈扇形的亮度图案,如图2.7(c)所示。这些感知到的扇形带被称为Mach带(Mach bands),以Ernst Mach的名字命名,他于 1865 年首次描述了这种现象。

-------------图 2.7 Mach带效应的例释,感知强度不是实际强度的简单函数----------

(译注:上述a,b,c的颜色条区分不太明显。)

第二种现象称为同时对比度(simultaneous contrast),即一个区域的感知亮度不仅仅取决于其强度,如图 2.8 所示。所有中心方块都具有完全相同的强度,但随着背景变亮,每个方块在眼睛看来都变暗。一个更熟悉的例子是一张纸,放在桌子上时看起来是白色的,但当用来遮挡眼睛并直视明亮的天空时,它会显得完全黑色。

--------------------图 2.8 同时对比的例子,所有内部方块都具有相同的强度,但随着背景变亮,它们看起来逐渐变暗-----------------------

人类感知现象的其他例子是光幻视(optical illusions),即眼睛填充不存在的细节或错误地感知物体的几何特性。 图 2.9 显示了一些示例。 在图 2.9(a) 中,可以清楚地看到正方形的轮廓,尽管事实上没有定义该图形的线条是图像的一部分。同样的效果,这次是一个圆圈,如图 2.9(b) 所示; 请注意,仅仅几条线就足以给出完整圆的错觉。图2.9(c)中的两条水平线段长度相同,但一条看起来比另一条短。最后,图2.9(d)中的所有长线都是等距且平行的。然而,交叉阴影线造成了这些线远非平行的错觉。

-----------------------------图 2.9 一些众所周知的光幻视-----------------------

2.2  光和电磁波谱(Light and the electromagnetic spectrum)

         电磁频谱已在 1.3 节中介绍。我们现在更详细地考虑这个主题。 1666 年,Isaac Newton爵士发现,当一束阳光穿过玻璃棱镜时,出现的光束不是白色的,而是由一系列连续的颜色组成,从一端的紫色到另一端的红色。 如图 2.10 所示,我们在可见光中感知的颜色范围只是电磁光谱的一小部分。光谱的一端是无线电波,其波长比可见光长数十亿倍。 光谱的另一端是波长比可见光小数百万倍的γ射线。我们在 1.3 节中展示了电磁波光谱中大多数波段的图像示例。

-----------------------------图 2.10 电磁波谱。为了便于解释,可见光谱被放大显示,但请注意,它包含总电磁光谱的非常窄的范围。--------------------------------

电磁波谱可以按波长、频率、或能量进行描述。波长(λ)和频率(v)通过表达式

(2-1)                        \lambda=\frac{c}{v}  

表示。其中,是光速 ( 2.998 \times 10^{8} m/s ) 。图 2.11 显示了一种波长的示意图。

-----------------------------图 2.11 一种波长的图形表示。-------------------

电磁波谱的各成分的能量由表达式

(2-2)                        E = hv

给出。其中,是 Planck 常量,波长单位是(meters), 术语微米 (microns) (用符号μm 表示,等于 10^{-6}  m ) 和纳米(nanometers)(用符号 nm 表示,等于  10^{-9}  m)也同样频繁地被使用。频率使用Hertz(Hz)为单位,1Hz等于一个正弦波每秒一个周期。常用的能量单位是电子伏特(electron-volt)。

电磁波谱可以可视化为按波长λ传播的正弦波(图2.11),或者它们可以被认为是无质量粒子流,每个粒子流都以波状模式行进并以光速移动。每个无质量粒子都包含一定量(束(bundle))的能量,称为光子(photon)。 我们从等式(2-2)中可看出,能量与频率成正比因此频率较高(波长较短)的电磁现象每个光子携带更多的能量。因此,无线电波具有低能量的光子,微波比无线电波具有更多的能量,红外线更多,然后是可见光、紫外线、X射线,最后是γ射线,其中能量最高。高能电磁辐射(尤其是 X 射线和γ射线波段的电磁辐射)对生物体特别有害

    光是一种可以被眼睛感知的电磁辐射(electromagnetic radiation)。为了讨论的目的,可见光(颜色)光谱在图 2.10 中进行了扩展(我们将在第 6 章中详细讨论颜色)。电磁波谱的可见光波段的范围从大约 0.43 毫米(紫色)到大约 0.79 毫米(红色)。为了方便起见,色谱分为六大区域:紫色、蓝色、绿色、黄色、橙色和红色。 没有颜色(或电磁波谱的其他成分)突然结束;相反,每个范围都会平滑地融入下一个范围,如图 2.10 所示。

    物体中感知的颜色由物体反射的光的特性决定在所有可见波长中,反射相对平衡的光的物体在观察者看来都是白色的然而,在可见光谱的有限范围内有利于反射率的物体会表现出一些颜色阴影。例如,绿色物体反射波长主要在 500 至 570 nm 范围内的光,同时吸收其他波长的大部分能量。

    没有颜色的光称为单色(monochromatic)(或消色(achromatic))(译注:换一种说法,单色光是指只有一种波长的光,人眼能看到的彩色光并不是真正意义上的单色光,而是由多种波长组成的复色光)。单色光的唯一属性是它的光强度由于单色光的强度被感知为从黑色到灰色最后到白色因此术语灰度级(gray level)”通常用于表示单色强度(我们在后续讨论中互换使用术语“(光)强度”和“(光)灰度级”)。 单色光从黑到白的值范围通常称为灰度级(gray scale),单色图像通常称为灰度图像(grayscale images)。

         如前所述,彩色光(chromatic color)的电磁能量光谱频率范围约为 0.43 至 0.79 毫米。 除了频率之外,还使用其他三个量来描述彩色光源:辐射亮度(radiance)、流明亮度(luminance)和观感亮度(brightness)。辐射亮度是从光源发出的能量总量通常以瓦(W)为单位进行度量流明亮度以流明(lumens)(lm)为度量单位用于衡量观察者从光源感知到的能量大小。例如,从在光谱的远红外区域工作的光源发出的光可能具有显著的能量(辐射),但观察者几乎察觉不到它;因此,它的流明亮度几乎为零。最后,正如第 2.1 节中所讨论的,观感亮度是光感知的主观描述,实际上是不可能的测量它体现了强度的消色概念,是描述色感(color sensation)的关键因素之一

在原则上,如果可以开发出一种能够检测电磁频谱波段中辐射能量的传感器,我们就可以对该波段中感兴趣的事件进行成像。但请注意,“看到(see)”物体所需的电磁波波长必须小于等于物体大小。例如,水分子的直径约为 10^{-10} m 。因此,为了研究这些分子,我们需要一种能够发射远(高能)紫外波段或软(低能)X 射线波段能量的光源。

尽管成像主要基于电磁波辐射的能量,但这并不是生成图像的唯一方法。例如,我们在1.3节中看到,物体反射的声音可以用来形成超声波图像。数字图像的其他来源是用于电子显微镜的电子束,以及用于生成图形和可视化中使用的合成图像的软件

2.3  图像感知和采集(Image sensing and acquisition)

         我们感兴趣的大多数图像都是由照明(illumination)”源和所成像的场景(scene)”元素反射或吸收来自该源的能量的组合生成的。我们将照明和场景用引号括起来,以强调这样一个事实:它们比可见光源照亮熟悉的 3D 场景的熟悉情况要普遍得多。例如,照明可以源自电磁能量源,例如雷达、红外线或X射线系统。但是,如前所述,它可能源自不太传统的来源,例如超声波,甚至计算机生成的照明图案。同样,场景元素可以是熟悉的物体,但它们也可以很容易是分子、埋藏的岩层或人脑。根据光源的性质,照明能量从物体反射或透射。第一类的一个例子是从平面反射的光。第二类的一个例子是为了生成诊断 X 射线图像,使X 射线穿过患者身体(即透射)。在一些应用中,反射或透射的能量被聚焦到光电转换器(例如荧光屏)上,将能量转换为可见光。电子显微镜和γ成像的一些应用使用这种方法。

2.3.1 使用单个传感元件进行图像采集(Image acquisition using a single sensing element)

图 2.12 (a) 显示了单个传感元件的组件。这种类型的常见传感器是光电二极管(photodiode),它由硅材料构成,其输出是与光强度成比例的电压。在传感器前面使用过滤器可以提高其选择性。例如,光学绿色透射滤光片有利于色谱中绿色波段的光。因此,绿光的传感器输出比其他可见光成分更强。

(a) 单传感器  (b) 线传感器  (c)阵列传感器

-----------------------------图 2.12 几种传感器示意图-------------------------

为了使用单个传感元件生成二维图像,传感器和要成像的区域之间必须在 x y 方向上存在相对位移。 图 2.13 显示了高精度扫描中使用的一种布置,其中底片(a film negative)安装在鼓上(drum),鼓的机械旋转提供一维位移。 传感器安装在提供垂直方向运动的导螺杆(a lead screw)上。鼓内装有光源。当光穿过薄膜时,其强度在被传感器捕获之前会被薄膜密度改变。光强度的这种“调制(modulation)”会导致传感器电压发生相应的变化,最终导致传感器电压发生变化,并通过数字化转换为图像强度等级。

---------------图2.13 将单个传感元件与机械运动相结合以生成二维图像------------

该方法是一种获得高分辨率图像的廉价方法,因为可以高精度控制机械运动。这种方法的主要缺点是速度慢且不易移植。其他类似的机械装置使用平面成像床,传感器沿两个线性方向移动。这些类型的机械数字化仪有时被称为透射微密度计。光从介质反射而不是穿过介质的系统称为反射微密度计。 使用单个传感元件成像的另一个示例将激光源与传感器重合。移动镜用于控制扫描模式中的出射光束,并将反射的激光信号引导到传感器上。

2.3.2 使用传感器带进行图像采集(Image acquisition using sensor strips)

比单个传感器更常用的几何结构是串联传感器带,如图2.12(b)所示。该条带在一个方向上提供成像元件。垂直于条带的运动可提供另一个方向的成像,如图 2.14(a)所示。大多数平板扫描仪都采用这种布置。具有4000个或更多在线传感器的传感设备是可能的。 在线传感器通常用于机载(in airborne)成像应用,其中成像系统安装在以恒定高度和速度飞越要成像的地理区域的飞机上。响应电磁频谱各个频段的一维成像传感器带垂直于飞行方向安装。成像条一次给出图像的一行,条带相对于场景的运动完成了二维图像的另一个维度。使用透镜或其他聚焦方案将要扫描的区域投影到传感器上。

环形配置的传感器带用于医疗和工业成像,以获得 3D 物体的横截面(“切片”)图像,如图 2.14(b) 所示。旋转的 X 射线源提供照明,与源相对的 X 射线敏感传感器收集穿过物体的能量。这是医学和工业计算机轴向断层扫描(CAT)成像的基础,如第 1.2节和第1.3 节所示。传感器的输出由重建算法处理,其目的是将感测数据转换成有意义的横截面图像(参见第 5.11 节)。换句话说,图像不是仅通过运动直接从传感器获得的;而是通过运动来获取的。 它们还需要大量的计算机处理。当物体沿垂直于传感器环的方向移动时,会生成由堆叠图像组成的 3D 数字体积。基于 CAT 原理的其他成像方式包括磁共振成像(MRI) 和正电子发射断层扫描(PET)。 照明源、传感器和图像类型不同,但从概念上讲,它们的应用与图 2.14(b)所示的基本成像方法非常相似。

---------------图2.14 (a) 使用线性传感器带进行图像采集。(b) 使用圆形传感器带进行图像采集。-----

2.3.3 使用传感元件阵列进行图像采集(Image acquisition using sensor arrays)

图 2.12(c)显示了以二维阵列形式排列的各个传感元件。电磁和超声波传感装置经常以这种方式布置。这也是数码相机中的主要排列方式。这些相机的典型传感器是CCD(电荷耦合器件)阵列,它可以是制造时具有广泛的传感特性,可以封装在 4000 * 4000 或更多元件的坚固阵列中。CCD传感器广泛应用于数码相机和其他光传感仪器中。每个传感器的响应与投射到传感器表面的光能的积分成正比,这一特性用于天文和其他需要低噪声图像的应用。通过让传感器在几分钟甚至几小时内集成输入光信号来实现降噪。由于图 2.12(c)中的传感器阵列是二维的,因此其主要优点是可以通过将能量图案聚焦到阵列表面来获得完整的图像。运动显然不是必需的,就像前两节中讨论的传感器布置的情况一样。

图 2.15 显示了阵列传感器使用的主要方式。该图显示了从场景反射的照明源的能量(如本节开头所述,能量也可以通过场景传输)。图 2.15(c) 中成像系统执行的第一个功能是收集入射能量并将其聚焦到图像平面上。如果照明是光,成像系统的前端是一个光学透镜,将观察到的场景投影到透镜的焦平面上,如图2.15(d)所示。与焦平面重合的传感器阵列产生与每个传感器接收到的光的积分成比例的输出。数字和模拟电路扫描这些输出并将其转换为模拟信号,然后由成像系统的另一部分数字化。输出是数字图像,如图 2.15(e)所示。将图像转换为数字形式是 2.4 节的主题。

---------------图2.15 (a)使用线性传感器带进行图像采集。 (b)使用圆形传感器带进行图像采集。------

2.3.4 简单图像格式模型(A simple image formation model)

     如1.1节介绍的那样,我们用形如f (x,y)的二维函数来表示图像。在空间坐标(x,y)处的值是一个标题,其物理意义取决于图源,其值与物理源(例如,电磁波)辐射的能量成正比。因此,f (x,y)必须是非负(注:在处理过程中或解释过程中,图像强度可能会变为负值。 例如,在雷达图像中,朝雷达移动的物体通常被解释为具有负速度,而远离雷达的物体则被解释为具有正速度。因此,速度图像可以被编码为具有正值和负值。当存储和显示图像时,我们通常会缩放强度,使最小负值变为 0(请参阅第 2.6 节有关强度缩放的内容))且有限的;即,

(2-3)                        0 \leq f(x, y)<\infty

函数f (x, y) 由两个分量刻画:(1)入射到正在观看的场景上的光源照明量,和(2)场景中物体反射的照明量。这两个分量分别被称为流明分量(illumination)和反射分量(reflectance),度分别用i(x, y)和r(x, y)表示。这两个函数组合在一起作为构成 f (x, y) 的乘积:

(2-4)                        f(x, y) = i (x, y) r (x, y)

其中,

(2-5)                        0 \leq i(x, y) < \infty

(2-6)                        0 \leq r(x, y) \leq 1

因此,反射分量以0(全被吸收)和1(全被反射)为界。i (x, y) 的特征取决于照明源,而r(x, y)的特征取决于成像对象的特征。这些表达式也适用于通过照明穿过介质传输而形成的图像,例如胸部X射线。在这种情况下,我们将处理透射率(transmissivity)而不是反射率函数,但限制与等式 (2-6)中的相同。形成图像的函数将按(2-4)中的乘积建模。

    例子 2.1:流明分量和反射分量的一些典型值

以下数值说明了可见光的照明和反射率的一些典型值。在晴朗的日子里,太阳可以在地球表面产生超过 90,000 \rm{lm}/m^{2}  的照度。阴天时该值会降至 10,000 \rm{lm}/m^{2}  以下。在晴朗的夜晚,满月大约产生 0.1 \rm{lm}/m^{2} 的照度。商业办公室的典型照明水平约为 1,000 \rm{lm}/m^{2} 。同样,r(x, y)的典型值如下:黑色天鹅绒为 0.01,不锈钢为 0.65,平白墙漆为 0.80,镀银金属为 0.90,雪花为 0.93。令一单色图像(monochrome)在任意坐标(x, y)处的光强度(灰度级)为

(2-7)                        \ell = f(x, y)

从等式(2-4)到(2-6)可以明显地看出,𝓁 位于范围

(2-8)                        L_{min}\leq \ell \leq L_{max}

在理论上,基于 L_{min}  的要求在于它必须为非负,基于 L_{max}  的要求在于它必须为有限值。在实践中,L_{min} = i_{min} r_{min}  和  L_{max} = i_{max} r_{max}  。根据示例 2.1,使用平均办公室照明和反射率值作为指导,我们可以预测,在缺失其它照明的室内,L_{min} \approx 10  和 L_{max} \approx 1000  为典型的室内值。这些量的单位是流明 (\rm{lum})/m^{2}  。然而,除了进行光度测量(photometric measurements)的情况外,实际单位很少引起人们的兴趣。

区间  [L_{min}, L_{max}]  称为强度(intensity)(或灰度(gray))级(scale)。常用实践是在数值上将这个区间转化到 [0,1], 或 [0,C ], 其中,𝓁 = 0 被认为是刻度上的黑色,而 𝓁 = 1(或C)被认为是刻度上的白色。所有中间值都是从黑到白的灰色阴影。

2.4 图像的采样和量化(Image sampling and quantization)

正如上一节所讨论的,获取图像的方法有很多种,但我们的目标都是相同的:从传感数据生成数字图像。大多数传感器的输出是连续电压波形,其幅度和空间行为与所感测的物理现象有关。为了创建数字图像,我们需要将连续感测数据转换为数字格式。这需要两个过程:采样(sampling)和量化(quantization)。

2.4.1 采样和量化的基本概念(Basic concepts in sampling and  quantization)

图2.16(a)显示了一幅我们想将其数字化的连续图像f 。一幅图可以关于xy坐标连续,也可以按幅度连续。为了对其进行数字化,我们必须对这个图像函数按xy坐标及幅度进行采样。数字化坐标值的这个过程被称为采样(sampling)。数字化幅度值的过程被采为量化(quantization)

---------------图2.16 (a) 连续图像。 (b) 扫描线显示连续图像中沿线 AB 的强度变化。 (c) 采样和量化。 (d) 数字扫描线。 (为了清晰起见,包含(a)中的黑色边框。它不是图像的一部分)。--------------

图2.16(b)中的一维函数是沿图2.16(a)中的线段AB的连续图像的幅度(强度水平)值的图。随机变化是由于图像噪声造成的。为了对该函数进行采样,我们沿线 AB 进行等间隔采样,如图 2.16(c) 所示。样本显示为叠加在函数上的小暗方块,以及它们的(离散)空间位置由图底部相应的刻度线表示。这组黑色方块构成了采样函数。然而,样本的值仍然跨越(垂直)连续的强度值范围。为了形成数字函数,强度值还必须转换(量化)为离散量。图 2.16(c)中的垂直灰色条描绘了分为八个离散区间的强度等级,范围从黑色到白色。垂直刻度线表示分配给八个强度间隔中每一个的具体值。通过将八个值之一分配给每个样本来量化连续强度级别,具体取决于样本与垂直刻度线的垂直接近度。采样和量化产生的数字样本如图 2.16(d)中的白色方块所示。从连续图像的顶部开始,逐行向下执行此过程,生成二维数字图像。图 2.16 暗示,除了所使用的离散电平的数量之外,量化所实现的精度高度依赖于采样信号的噪声含量(noise content)

    实际上,采样方法取决于生成图像的传感器布置(arrangement)。当单个传感元件与机械运动相结合生成图像时,如图 2.13 所示,传感器的输出以上述方式量化。然而,空间采样是通过选择我们激活传感器收集数据的单独机械增量的数量来完成的。机械运动可以非常精确,因此,在原则上,我们使用这种方法对图像进行采样的精细程度几乎没有限制。实际上,采样精度的限制是由其他因素决定的,例如系统中使用的光学元件的质量

    当传感条用于图像采集时,传感条中的传感器数量在一个方向上建立结果图像中的样本,而机械运动则在另一个方向上建立样本数量。传感器输出的量化完成了生成数字图像的过程。

    当传感阵列用于图像采集时,不需要运动。阵列中传感器的数量确定了两个方向采样的限制。传感器输出的量化如上所述。图 2.17 说明了这个概念。图 2.17(a) 显示了投影到 2维传感器平面上的连续图像。图2.17(b)显示了采样和量化后的图像。数字图像的质量在很大程度上取决于采样和量化中使用的样本数量和离散强度级别。然而,正如我们将在本节后面展示的那样,图像内容也在这些参数的选择中发挥着作用

---------------图2.17 (a) 投射到传感器阵列上的连续图像。 (b) 图像采样和量化的结果。--------------

2.4.2 表示数字图像(Representing digital images)

    令 f (s,t)表示具有两个连续变量st的连续图像函数。通过采样和量化,我们将这个函数代表的图像转化成了数字图像,如前述章节所解释的那样。假设我们将一个连续图像采样成一个数字图像(包括MN列,其中,(x,y)是离散坐标)。为了符号清晰和方便,我们对这些离散坐标值使用整数:x = 0 ,1,...,M - 1;y = 0 ,1,...,N – 1。因此,例如,数字图像在原点的值是f (0,0),沿第一行的下一个坐标处的值是f (0,1)。在此,记法(0,1)用于表示沿第一行的第一个采样。并不意味着当图像被采样的时候,这些值是物理坐标的值。通常,数字图像在任意坐标(x,y)处的值表示为f (x,y)(其中,xy是整数)。当我们需要引用具体的坐标(i,j)时,我们使用记法f(i,j)表示(其中,参数是整数)。由图像坐标跨越的实平面的部分称为空间域(spatial domain),其中xy被称为空间变量(spatial variables)或空间坐标(spatial coordinates)。

    图2.18显示了表示 f (x,y) 的三种方法。 图 2.18(a) 是函数图,其中两个轴确定空间位置,第三个轴是作为 x y 函数的 f 值。当处理其元素表示为(x,y,z)形式的三元组的灰度集时,此表示非常有用,其中 xy 是空间坐标,z 是坐标(x,y)处的f值。我们将在第 2.6 节中简要介绍这种表示形式。

    图 2.18(b) 中的表示形式更为常见,它就像计算机显示器或照片上出现的那样显示 f (x,y)。这里,显示中每个点的强度与该点的f 值成正比。在该图中,只有三个等间隔的强度值。如果强度标准化为区间[0,1],则图像中的每个点的值为 0、0.5 或 1。监视器或打印机将这三个值分别转换为黑色、灰色或白色,如下图 2.18(b)所示。这种类型的表示包括彩色图像,使我们能够一目了然地查看结果。

    如图2.18(c)所示,第三种表示是由f (x,y)的数值构成的阵列(矩阵)。这是用于计算机处理的表示。按照公式形式,我们将 M×N 的数值阵列的表示记为

公式的右边是表示为实数阵列的数字图像。这个阵列的每一个元素称为一个图像元素(image element,或picture element,或pixel,或pel)。在整个本书中,我们使用图像(image)和像素(pixel)来表示数字图像及其对应元素。图2.19展示了一个图像阵列的图形表示(其中,x坐标和y坐标用于表示阵列的行和列),具体的像素是阵列在固定坐标对处的值。如前所述,当引用坐标(i,j)处的像素值时,我们通常用f(i,j)。

    我们也可以按传统的矩阵形式表示数字图像:

显然,a_{i,j}=f(i,j) , 公式(2-9) 和 (2-10)表示同样的数值阵列。

--------------------图 2.18 (a) 绘制为曲面的图像。 (b) 显示为视觉强度阵列的图像。 (c) 显示为二维数值数组的图像。(数字 0、0.5 和 1 分别代表黑色、灰色和白色。)---------------------

如图 2.19 所示,我们在左上角定义图像的原点。这是一种基于以下事实的约定:许多图像显示器(例如电视监视器)从左上角开始扫描图像,然后向右移动,一次一行。更重要的是,按照惯例,矩阵的第一个元素位于阵列的左上角。在该点选择f (x,y)的原点在数学上是有意义的,因为现实中的数字图像是矩阵。事实上,正如你将看到的那样,有时我们在矩阵的行 () 和列 (c) 的公式中互换使用 xy

需要注意的是,图 2.19 中的正 x 轴向下延伸,正 y 轴向右延伸,正是你所熟悉的右手笛卡尔坐标系(注:回想一下,右手坐标系是这样的,当右手食指指向 x 轴正方向且中指指向 y 轴正方向(垂直)时,拇指指向向上。如图2.18和2.19所示,在我们的图像坐标系中确实是这种情况。在实践中,你还会发现基于左手系统的实现,其中 x 轴和 y 轴与我们在图2.18 和 2.19中显示的方式互换。例如,MATLAB 使用左手系统进行图像处理。 只要一致使用,这两个系统都是完全有效的),但旋转了  90^{\circ}  ,使原点出现在左上侧 。

--------------------图 2.19 用于表示数字图像的坐标约定。由于坐标值是整数,因此 xy 与矩阵的行 (r) 和列 (c) 之间存在一一对应的关系。---------------------

对于一幅以源点(0,0)作为起点且范围到(M - 1, N - 1)M × N 数字图像,可通过使用MN除以2并向下舍入到最近的整数的方式获得其中心。有时候,使用不进位舍入算符(floor operator)|•| 来表示这个运算,如图2.19所示。这对于MN是偶数或奇数都适用。例如,尺寸 1023 × 1024 的一幅图像的中心位于(511,512)。某些程序语言(例如,MATLAB)的起始索引是1而不是0。 在这种情况下,一幅图像的中心求解方法为   (x_{c}, y_{c}) = (\rm{floor}(M/2) + 1,\rm{floor}(N/2) + 1)  。

为了以更正式的数学术语来表述采样和量化,令 Z(译注:德文“Zahlen”(整数)的首字母)和 R分别表示整数集和实数集。采样的过程可以被视为将xy平面划分成一个网格,网格中的每个单元格(cell)的中心坐标是来自笛卡尔积 Z^{2}  (也表示为 Z × Z )的一对元素,读者可能还记得,这个笛卡尔积 Z^{2}  是所有有序的元素对 (z_{i},z_{j})  (其中,z_{i}  和 z_{j} 是来自集合 Z 的整数)的集合。因此,若 (x,y是来自 Z^{2}  的整数且f是一个将一个强度值(即,来自实数集R的一个实数)分配给每个不同的坐标对(x,y)的函数f(x,y)是一个数字图像函数这个函数赋值便是前述量化过程。如果强度等级也是整数,则 R = Z,那么一个数字图像函数便成了一个二维函数,其坐标和幅度值都是整数。这是我们在书中使用的表示方法。

图像数字化要求根据离散强度级别的 MN 值和数量 L 做出决定。对MN 的取值,除了要求必须是正整数,其它没有限制。然而,数字存储和对量化硬件的考量通常导致了量化等级 L 的数量通常是2的整数次方;即

(2-11)                        L=2^{k}  ( k 是整数 )

我们假设离散等级是等距的,并且在 [ 0, L-1 ] 的范围内是整数

有时,灰度跨越的值范围被称为动态范围(dynamic range),该术语在不同领域中有不同的使用方式。在这里,我们将一个成像系统的动态范围定义为系统中最大可测量强度与最小可检测强度等级的比率。通常,这个成像系统的动态范围的上限取决于饱和度(saturation),下限取决于噪声(noise)(尽管噪声也可能以较轻的强度存在)。图 2.20 显示了饱和度和轻微可见噪声的示例。由于较暗区域主要由可检测强度最小的像素组成,因此图 2.20 中的背景是图像中噪声最大的部分;然而,黑暗的背景噪音通常更难看到。

----------------------图 2.20 饱和度和轻微可见噪声的例子: 显示饱和度和噪声的图像。饱和度是最高值,超过该值所有强度值都会被剪裁(请注意整个饱和区域如何具有高且恒定的强度等级)。在这种情况下,可见噪声表现为粒状纹理图案。深色背景噪声较大,但噪声很难被看到。--------------------------------------------------------

动态范围确定了系统可以表示的最低和最高强度等级,从而确定了图像可以具有的最低和最高强度等级。与这个概念密切相关的是图像对比度(image contrast),我们将其定义为图像中最高和最低强度等级之间的强度差对比率(contrast ratio)是这两个量的比率当图像中相当多的像素具有高动态范围时我们可以预期图像具有高对比度相反,低动态范围的图像通常具有暗淡、褪色的灰色外观。 我们将在第 3 章中更详细地讨论这些概念。

存储一幅数字图像所要求使用的比特数 

(2-12)                b = M × N × k  (其中,是一个整数)

M = 时,这个等式成为

(2-13)               b = N^{2}k                

图2.21显示了存储各种 值的方图所需的兆字节数(megabytes)(和普遍情况一样,一个字节等于8位,1兆字节(MB)等于 10^{6}  字节)。

-----------------图2.21 存储不同 Nk 值的图像所需的兆字节数--------------

    当一幅图像能够具有 2k  个可能的强度等级的时候通常的做法是将其称为“k 位图像”(例如,一幅具有256等级的图像被称为8位图像)。注意,对于任意大的8位图像(例如 10,000 * 10,000 像素)的存储要求并非微不足道。

2.4.3 线性索引对比坐标索引(Linear vs. coordinate indexing)

    上一节中讨论的约定(其中像素的位置由其二维坐标给出)称为坐标索引(coordinate indexing)或下标索引(subscript indexing)。 在图像处理算法编程中广泛使用的另一种索引类型是线性索引(linear indexing),它由基于从坐标(0,0)计算偏移量的一维非负整数字符串组成线性索引有两种主要类型一种是基于图像的行扫描另一种是基于图形的列扫描

    图2.22说明了基于列扫描的线性索引的原理。其思想是逐列扫描图像,从原点开始,向下移动,然后向右移动。线性索引是基于我们以图2.22所示的方式扫描图像时对像素的计数。因此,对第一列(最左边)的扫描产生线性索引0到(M – 1)。第二列的扫描产生索引到 (2M -1),依此类推,直到最后一列中的最后一个像素被赋予线性索引值(MN– 1)。因此,由a表示的线性索引具有MN可能值之一:0,1,2,…,MN– 1,如图2.22所示。这里需要注意的重要一点是,每个像素都被分配了一个唯一标识它的线性索引值

------------------------图 2.22用于生成线性索引的列扫描的图示。显示的是几个二维坐标(在括号中)及其相应的线性索引。---------------------------

    基于列扫描生成线性索引的公式很简单,可以通过检查来确定。对于任意一对坐标(x,y),对应的线性索引值为

(2-14)                                \alpha = My + x

反之,一个已经线性索引值  α  的坐标索引由等式(注:当使用模数系统的时候,写成 x \equiv \alpha{\;} \rm{Mod}{\;} \mathit{M} 更为准确,其中,符号“≡”表示全等(congruence.)。然而,我们在此的兴趣仅在于从线性索引到坐标索引的转化,因此,我们使用更为熟悉的等号。)

(2-15)                               x = \alpha{\;} \rm{Mod}{\;} \mathit{M}

(2-16)                              y = (\alpha{\;} - x) {\;}\rm{Mod}{\;} \mathit{M}

给出。回想一下,α Mod M 的意思是“α除以 M 的余数”。这是一种正式的方式,表示行号在每列的开头重复。这样,当α = 0时,0除以M的余数为0,所以x = 0 。当α = 1时,余数为1,所以x = 1。可以看到x将继续相等于α 直到 α = M - 1。当 α = M(在第二列的开头)时,余数为 0,因此 x 再次 = 0,当这种模式按其自身重演时, α增加1直到到达下一列。 类似的评述适用于等式(2-16)。前面两个公式的推导请参见问题 2.11。

2.4.4 空间分辨率和强度分辨率(Spatial and intensity resolution)

在直观上,空间分辨率(spatial resolution)是一幅图像中最小可辨别细节的度量。在量化上,空间分辨率可以按几种方式表述,每单位距离的线对数(line pairs per unit distance)和每单位距离点数(像素数)( dots (pixels) per unit distance)是常用度量方式。假设我们用交替的黑白垂线构造了一个图表,每条垂线的宽度是W个单位(W可以小于1)。因此,一个线对的宽度是2W,而线对数为每单位距离 W/2 个。例如,如果一条垂线的宽度是0.1mm,每单位距离有5个线对(即,每mm)。图像分辨率的一个广泛使用的定义是每单位距离可辨别的(discernible)线对的最大数量(例如,每毫米 100 个线对)。每单位距离的点数是印刷和出版行业使用的图像分辨率的衡量标准。在美国,该衡量标准通常以每英寸点数(dpi(dots per inch))表示。为了让你了解质量,报纸的印刷分辨率为 75 dpi,杂志的印刷分辨率为 133 dpi,光面小册子的印刷分辨率为 175 dpi,而你当前查看的书页的印刷分辨率为 2400 dpi。

为了有意义,必须根据空间单位来说明空间分辨率的度量。图像大小本身并不能说明完整的情况例如,如果不说明图像所包含的空间维度,则说图像的分辨率为 1024 * 1024 像素,这并不是一个有意义的表述。尺寸本身仅有助于比较成像能力例如,假设两台相机都配备了可比较的镜头并且比较图像是在相同的距离拍摄的,那么配备20兆像素CCD成像芯片的数码相机预计比配备8兆像素CCD成像芯片的相机具有更高的解析细节的能力。

类似地,强度分辨率是指强度级别的最小可分辨变化。对于用于生成数字图像的空间样本(像素)的数量,我们有相当大的自由裁量权,但对于强度等级的数量而言,情况并非如此。 基于硬件考虑,强度级别的数量通常是2的整数次方,正如我们在讨论等式 (2-11) 时提到的那样。最常见的数字是 8 位,在某些需要增强特定强度范围的应用中使用 16 位。使用 32 位的强度量化很少见。有时人们会发现可以使用 10 或 12 位数字化图像强度级别的系统,但这些系统并不常见。

空间分辨率必须基于每单位距离才有意义,与空间分辨率不同,通常的做法是将用于量化强度的位数称为强度分辨率(intensity resolution)”。例如,通常说强度被量化为256级的图像具有8位强度分辨率。然而,请记住,强度的明显变化也受到噪声和饱和度值以及人类感知在整个场景中分析和解释细节的能力的影响(参见第2.1节)。以下两个示例说明了空间和强度分辨率对可辨别细节的影响。在本节后面,我们将讨论这两个参数如何相互作用来确定感知的图像质量。

例子2.2:降低数字图像空间分辨率的影响。

    图 2.23 显示了降低图像空间分辨率的影响。图2.23(a)至(d)中的图像的分辨率分别为 930、300、150 和 72 dpi。显然,较低分辨率的图像比(a)中的原始图像小。例如,原始图像的大小为 2136 * 2140 像素,但72 dpi 图像是只有 165 * 166 像素的阵列。为了便于比较,所有较小的图像被缩放回原始大小(缩放方法将在本节后面讨论)。这在某种程度上相当于“靠近”较小的图像,以便我们可以对可见细节做出可比的陈述。

     在图2.23(a)和(b)之间存在一些小的视觉差异。最值得注意的是天文钟右侧指向60 的秒标记略有变形。然而,在大多数情况下,图 2.23(b)是完全可以接受的。事实上,300 dpi是用于图书出版的典型最小图像空间分辨率,因此人们不会期望看到这两个图像之间有太大差异。图 2.23(c)开始显示明显的退化(例如,参见天文台表壳的外边缘并将秒标记与前两个图像进行比较)。这些数字还显示出明显的退化。图 2.23(d)显示了图像大多数特征中可见的退化。当以如此低的分辨率进行打印时,印刷和出版行业使用多种技术(例如局部改变像素大小)来产生比图 2.23(d)中的效果好得多的结果。此外,正如我们将在本节后面展示的,可以通过选择所使用的插值方法来改进图 2.23 的结果。

-----------------------------图2.23降低空间分辨率的影响-----------------------

例子2.3:改变数字图像中强度等级数量的影响。

图 2.24(a)是774 × 640 CT 投影图像,使用256个强度等级显示(请参阅第 1 章有关 CT 图像的内容)。此示例的目标是将图像的强度等级数从按2的整数次方从256减少到2,同时保持空间分辨率恒定。图 2.24(b)至(d)是通过将强度级别数分别减少到128、64和 32 获得的(我们将在第 3 章讨论如何减少等级数)。

对于所有实际用途,128 级和 64 级图像在视觉上都是相同的。然而,图2.24(d)中的32级图像在强度恒定的区域中具有一组几乎难以察觉的、非常精细的脊状结构。这些结构在图 2.24(e)的16级图像中清晰可见。这种效果是由于在数字图像的平滑区域中使用的强度等级数量不足而引起的,称为假轮廓(false contouring),之所以如此命名是因为山脊类似于地图中的地形轮廓。在使用 16 个或更少的均匀间隔强度等级显示的图像中,假轮廓通常是非常令人反感的,如图2.24(e)-(h)显示的图像。

作为一个非常粗略的指导原则,为方便起见,假设使用2的整数次方,尺寸为256 * 256像素、具有64强度等级的图像,并以 5 * 5 cm数量级的尺寸格式打印,这大约是预计图像不会出现令人反感的采样失真和错误轮廓的最低的空间和强度分辨率。

---------------------------图2.24 (a) 774 × 640、256 级图像。(b)-(d) 以 128、64 和 32 强度等级显示图像,同时保持空间分辨率恒定。(原始图片由Vanderbilt大学医学中心放射学与放射科学系 David R.Pickens 博士提供。)--------------------------

---------------图2.24 (e)-(h) 以 16、8、4 和 2 个强度等级显示的图像----------

例子 2.2 和 2.3 中的结果说明了独立改变空间和强度分辨率对图像质量产生的影响。 然而,这些结果没有考虑这两个参数之间可能存在的任何关系。Huang [1965] 的一项早期研究试图通过实验量化这两个变量相互作用对图像质量的影响。该实验由一组主观测试组成。使用与图2.25中所示类似的图像。女子的脸所代表的图像细节相对较少;摄影师的照片包含中等程度的细节;相比之下,人群图片包含大量细节。

---------------图2.25 (a) 细节水平较低的图像。 (b) 具有中等细节水平的图像。 (c) 具有相对大量细节的图像。(图片(b) 由麻省理工学院提供。)----------------------

    这三种类型的不同尺寸和强度分辨率的图像组是通过改变 N k 生成的[参见公式 (2-13)]。然后观察者被要求根据他们的主观品质对他们进行排名。结果以 Nk 平面中所谓的等偏好曲线的形式进行总结。(图 2.26 显示了代表图 2.25 中图像类型的平均同偏好曲线。) Nk平面中的每个点代表一个图像,其N k值等于该点的坐标。同偏好曲线上的点对应于具有相同主观质量的图像。在实验过程中发现,同偏好曲线倾向于向右和向上移动,但它们在三个图像类别中的每一个的形状与图 2.26 中的形状相似。这些结果并不出乎意料,因为曲线向上和向右移动仅仅意味着 N k 值更大,这意味着更好的图像质量。

---------------图2.26 图 2.25 中三种类型图像的代表性同偏好曲线----------------

通过实验可观察到,随着图像细节的增加,等偏好曲线往往变得更加垂直。这一结果表明,对于具有大量细节的图像,可能只需要几个强度等级。例如,图2.26中对应人群的同偏好曲线几乎是垂直的。这表明,对于一个固定的 N 值的图像,其感知质量几乎与所使用的强度等级数量无关(对于图 2.26 中所示的强度等级范围)。在样本数量增加的某些时间间隔内,其他两个图像类别的感知质量保持不变,但强度等级的数量实际上减少了。出现此结果的最可能原因是 k 的减小往往会增加表观对比度,这种视觉效果通常被视为图像质量的提高。

2.4.5 图像插值(Image interpolation)

插值用于缩放(zooming)、缩小(shrinking)、旋转(rotating)和几何校正数字图像等任务。本节的主要目标是介绍插值并将其应用于图像调整大小(缩小和缩放),这基本上是图像重采样方法。插值在旋转和几何校正等应用中的使用将在 2.6 节中讨论。

插值(interpolation)是使用已知数据来估算未知位置处的值的过程。我们通过一个简短的例子开始讨论这个主题。假设尺寸为 500 * 500 像素的图像必须放大 1.5 倍到 750 * 750 像素。可视化缩放的一种简单方法是创建一个假想的 750 * 750 网格,其像素间距与原始图像相同,然后缩小它,使其恰好覆盖原始图像。显然,缩小后的750 * 750网格中的像素间距将小于原始图像中的像素间距。为了将强度值分配给叠加层中的任意点,我们在底层原始图像中查找最接近的像素,并将该像素的强度分配给 750 * 750 网格中的新像素。 当强度已分配给覆盖网格中的所有点时,我们将其扩展回指定大小以获得调整大小的图像。

称以上讨论的方法为最近领域插值(nearest neighbor interpolation),因为其以原图像中最近领域的强度值分配给每一个新的位置(见2.5节考虑的领域)。这种方法很简单,但是容易产生不良的伪影(undesirable artifacts),例如直边的严重变形。一种更合适的方法是双线性插值(bilinear interpolation),其中我们使用四个最近邻域来估算给定位置的强度。令(x, y)为预分配强度值的位置的坐标(将其视为前面描述的网格的点),并令v(x, y)表示该强度值。对于双线性插值,使用以下公式

(2-17)                        v(x, y) = ax + by + cxy + d

获得赋予值。其中四个系数是根据四个未知数的四个公式确定的,可以使用点(x, y)的四个最近领域来书写这些公式。双线性插值比起最近邻插值能提供更好的结果,但计算负荷略有增加

    下一个更复杂的插值方法是双三次插值(bicubic interpolation),它涉及一个点的16个最近邻域。使用公式

(2-18)                        v(x, y) = \sum_{i=0}^{3}\sum_{j=0}^{3}a_{ij}x^{i}y^{j}

可获得分配给点(x, y)的强度值。这十六个系数是根据具有十六个未知数的十六个公式确定的,这些公式可以使用点(x, y)的十六个最近邻来书写。可以观察到,如果前一个公式中两个求和的极限都是0到1,则公式(2-18)可简化为公式(2-17)。一般来说,双三次插值比其双线性插值在保留精细细节方面做得更好双三次插值是商业图像编辑应用程序(例如 Adobe Photoshop 和 Corel Photopaint)中使用的标准

    尽管图像按整数坐标显示,但在处理过程中可以通过使用插值来“填充原始图像中像素之间的间隙”来增加图像的大小,从而以子像素精度(subpixel accuracy)工作是可能的。

例子 2.4 :图像缩小和缩放所使用的插值方法的比较。

    图2.27(a)与图2.23(d)相同,是将图2.23(a)中930 dpi图像的分辨率降低到72 dpi (尺寸从2136 * 2140缩小到165 * 166)得到的像素),然后将缩小的图像缩放回其原始大小。为了生成图2.23(d),我们使用最近邻域插值来缩小和缩放图像。如前所述,图 2.27(a)中的结果相当差。图2.27(b)和(c)是重复相同过程但分别使用双线性和双三次插值进行缩小和缩放的结果。使用双线性插值获得的结果比最近邻域插值有显著的改进,但所得图像稍微模糊。使用双三次插值可以获得更清晰的结果,如图 2.27(c) 所示。

---------------------------图2.27 (a) 图像缩小至 72 dpi,并使用最近邻域插值缩放回原始930 dpi。该图与图2.23(d)相同。(b) 图像缩小至 72 dpi,并使用双线性插值进行缩放。(c)与(b)相同,但使用双三次插值。----------------------------------------

可以在插值中使用更多的邻域,并且有更复杂的技术,例如使用样条(splines)或小波(wavelets),在某些情况下可以产生比刚刚讨论的方法更好的结果虽然保留精细细节是3维图形图像生成中极其重要的考虑因素(例如,参见Hughes 和 Andries [2013]),但额外的计算负荷对于通用数字图像处理来说鲜有合理的,其中双线性或双三次插值通常是选择的方法。

2.5 像素之间的一些基本关系(Some basic relationships between pixels)

    在本节中,我们讨论数字图像中像素之间的几个重要关系。当在下面的讨论中提到特定像素时,我们使用小写字母,例如 pq

2.5.1  像素领域(Neighbors of a pixel)

    位于坐标(x,y)处的某个像素p 有两个水平领域和两个垂直领域,它们的坐标分别是

        ( x + 1, y), ( x − 1, y), ( x, y + 1), ( x, y − 1) ,

这个像素集合被称为像素 p 四个领域用符号 N_{4}(p) 表示p 四个对角(diagonal)领域具有坐标

( x + 1, y + 1), ( x + 1, y − 1), ( x − 1, y + 1), ( x − 1, y − 1),

用符号  D_{4}(p)  表示。这4个对角领域与以上四个领域合在一起被称为像素 p 的8领域用符号  N_{8}(p)  表示。一个像素点p的领域的图像位置集被称为 p 领域(neighborhood)。这个领域如果包含像素 p ,则称这个领域是闭的(closed),否则称这个领域是开的(open)。

2.5.2  邻接、连通区、区域、和边界(Adjacency, connectivity, regions, and boundaries)

    令 V 为用于定义邻接的强度值集合。在一幅二值图像中,如果我们指的是值为1的像素邻接,则 V = {1} 。在一幅灰度图像中,与二值图像的思想相同,但通常 V 包含更多元素。例如,如果我们处理值在 0 到 255 范围内的像素的邻接,则集合 V 可以是这 256 个值的任何子集。我们考虑三种类型的邻接(译注:值同为1的领域元素称为邻接)

(1)领接(4-adjacency)。对于两个具有来自V中的值的像素和 q,若 在集合 N_{4}(p)  中,则它们是4领接。

(2)领接(8-adjacency)。对于两个具有来自V中的值的像素 和 q,若在集合 N_{8}(p) 中,则它们是 8 领接。

(3)领接(也称混合邻接(mixed adjacency))。对于两个具有来自中的值的像素 和 q,若满足

(a) 在集合 N_{4}(p) 中,或

(b) 在集合 N_{D}(p) ,并且集合 N_{4}(p) \cap N_{4}(q)  ,则称像素 和 是 m 邻接。

混合邻接是对8邻接的修改,引入它是为了消除使用8邻接可能导致的歧义。例如,考虑图 2.28(a)中的像素排列并令 V = {1}。图2.28(b)顶部的三个像素显示多个(不明确的)8邻接,如虚线所示。这种歧义可以通过使用 m 邻接来消除,如图 2.28(c)所示。换句话说,中心和右上对角像素不是m相邻的,因为它们不满足条件(b)。

--------------------------------图 2.28 (a)像素的一种排布。(b) 8个邻接像素(邻接用虚线表示)。(c) m邻接。(d) 8 个邻接的两个1的区域。(e) 仅当区域和背景之间使用 8 邻接时,圆圈点才位于 1 值像素的边界上。( f ) 1值区域的内边界不形成闭合路径,但其外边界形成闭合路径。---------------------------------------------

    从像素 q (坐标 (x_{0},y_{0})  ) 到像素 q (坐标 (x_{n},y_{n}) 的一条数字路径(digital path)(或曲线(curve))是一系列坐标为

(x_{0},y_{0}),(x_{1},y_{1}), ... ,(x_{n},y_{n})

的不同像素。其中,点 (x_{i},y_{i})  和点 (x_{i-1},y_{i-1})  (1 ≤ i n)是邻接。在这种情况下,n是路径的长度。若 (x_{0},y_{0}) = (x_{n},y_{n})   ,则路径是封闭路径。我们可以定4路径、8路径、或 路径,取决于具体的邻接类型。例如,图2.28(b)中右上点和右下点之间的路径是 8 条路径,图2.28(c)中的路径是 条路径。

S 表示图像中像素的子集。如果两个像素 pq 之间存在完全由 S 中的像素组成的路径,则称这两个像素 pqS 中是相连的(connected)。对于 S 中的任何像素 p,在 S 中与其相连的像素集称为S连通分量(connected component)。如果它只有一个分量,并且该分量是连通的,则称 S连通集(connected set)。

R表示一幅图像中像素的一个子集。若R是一个连通集,则我们称R是图像的一个区域(region),对于两个区域 R_{i} 和 R_{j} ,联它们的并集是一个连通集,则称其是邻接。称不邻接的区域为脱离(disjoint), 当提到区域时,我们考虑4邻接和8邻接。为了使我们的定义有意义,必须指定所使用的邻接类型 例如,图2.28(d)中的两个1的区域只有使用8邻接时才相邻(根据上一段的定义,两个区域之间不存在4路径,因此它们的并集为不是连通集)。

假设一幅图像含有 K个脱离区域 R_{k} (k = 1,2,...,K ),并且无一触及图像的边线 (注:我们做出这个假设是为了避免处理特殊情况。这样做可以不失一般性,因为如果一个或多个区域接触图像的边,我们可以简单地用 1 像素宽的背景值边来填充图像)。令 R_{u}  表示所有 K 个区域的并集,并令 (R_{c})^{u}  表示其补集(回顾一下,集合A的补集是不在A中的点构成的集合)。我们称 R_{u}  中的所有点为图像的前景(foreground),称   (R_{u})^{c}  中所有的点为l图像的背景(background)。

区域 R 边界(boundary)(也称为边线(border)或轮廓(contour))是 R 中与R 的补集中的像素邻接的像素集。换句话说,区域的边界是该区域中具有至少一个背景领域的像素集。在这里,我们必须再次指定用于定义邻接的连接性。例如,在图2.28(e)中,如果在区域与其背景之间使用4连通,则中圈出的点不是1值区域的边线的成员,因为该点与背景之间唯一可能的连接是对角线。通常,区域中的点与其背景之间的邻接是使用8连通来定义的,以处理诸如此类的情况。

前面的定义有时被称为区域的内边线(inner border),以区别于其外边线(outer border),外边线是背景中的相应边出。这种区别对于边出跟踪算法的开发很重要此类算法通常被制定为遵循外部边线,以保证结果形成闭合路径。例如,图2.28( f )中1值区域的边线是区域本身。该边线不满足闭合路径的定义。另一方面,该区域的外边线确实形成了围绕该区域的闭合路径。

    如果 R 恰好是整个图像,则其边界(boundary)(或边线(border))被定义为图像的第一行和最后一行以及第一列和最后一列的像素集。需要这个额外的定义,因为图像在其边界之外没有邻域。通常,当我们提到一个区域时,我们指的是图像的子集,并且该区域边界中恰好与图像边界重合的任何像素都隐式地包含为区域边界的一部分。

    边缘(edge)的概念经常出现在有关区域和边界的讨论中。然而,这两个概念之间有一个关键的区别。有限区域的边界形成一条闭合路径,因此是一个“全局”概念。正如我们将在第 10 章中详细讨论的那样,边缘是由导数值超过预设阈值的像素形成的。因此,边缘是一个“局部”概念,基于强度等级在一个点处不连续性的度量。 可以将边缘点链接成边缘段,有时这些段以对应于边界的方式链接,但情况并非总是如此。边缘和边界对应的一个例外是二值图像。根据所使用的连通性和边缘运算符的类型(我们将在第 10 章中讨论这些),从二值区域提取的边缘将与区域边界相同,这是很直观的。从概念上讲,在我们到达第 10 章之前,将边缘视为强度不连续性,将边界视为闭合路径是有帮助的。

2.5.3  距离度量(Distance measures)

    设像素p, q, 和s分别具有坐标(xy),( uv),和( wz),若D距离函数(distance function)或者度量(metric),则它必须满足下列条件:

(a) D(p,q) ≥ 0 (当且仅当 = 时,D(p,q) = 0),

(b) D(p,q) = D(q,p),且

(c) D(p,s) = D(p,q) + D(q,s)。

    之间的 Euclid 距离定义为

D_{e}(p,q) = \left [(x-u)^{2}+(y-v)^{2}\right ]^{1/2}

按照这个跨度度量,距( x) 的距离小于等于某个值r的像素是含于半径为 圆心位于(xy)的一个圆盘(disk)中的点。

像素 和 之间的 D_{4} 距离(又称为城市街区距离(city-block distance))(译注:“block”指四面临街的街区,比较形象)定义为(译注:符号||表示绝对值)

(2-20)                D_{4}(p , q) = |x - u| + |y - v|

在这种情况下,距离 (x) 的 D_{4}  距离小于等于某个值d的像素构成一个中心位于(xy)的菱形(diamond)。例如,距离(xy) (中心点)的 D_{4}  距离 ≤ 2 的像素构成下列定距(constant distance)的轮廓:

\begin{matrix} &&2&&\\&2&1&2\\ 2&1&0&1&2\\ &2&1&2\\ &&2&& \end{matrix}

D_{4} = 1  的像素是 (xy) 的 4 领域。

像素 和 之间的 D_{8} 距离(又称为棋盘距离(chessboard distance))定义为

(2-20)               D_{8}(p , q) = \rm{max}(|x - u|,|y - v|) 

在这种情况下,距离 (x) 的 D_{8}  距离小于等于某个值d的像素构成一个中心位于(xy)的正方形(square)。例如,具有 D_{8}  距离 ≤ 2 的像素构成下列定距(constant distance)的轮廓:

\begin{matrix} 2&2&2&2&2\\2&1&1&1&2\\ 2&1&0&1&2\\ 2&1&1&1&2\\ 2&2&2&2&2 \end{matrix}

具有 D_{8} 距离 = 1 的像素是位于 (xy) 点像素的 8 领域。

注意,像素 和 之间的 D_{4}  和 D_{8}  距离是独立于可能存在于这些点之间的任何路径的,因为这些距离仅涉及点的坐标。然而,m邻接的情况下两个点之间的 D_{m}  距离定义为点之间最短的路径(m-path)。在这种情况下,两个像素之间的距离将取决于沿路径的像素的值以及它们的领域的值。例如,考虑下列排布的像素,并假设像素 p , p_{2}  , 和  p_{4}  具有1值,而  p_{1} 和 p_{3}  可以为 0 或 1:

\begin{matrix} &p_{3}&p_{4}\\p_{1}&p_{2}&\\ p&& \end{matrix}

假设我们考虑1值像素的邻接(即,V = {1})。若 p_{1} 和 p_{3} 是 0 ,则 p 和 p_{4}  之间最短的最短 路径(D_{m} 距离)的长度是2。若 p_{1} 是 1 ,则 p_{2}  与 p 将不再是m邻接(见前述给出的m邻接的定义)且最短m路径的长度变成了3(路径穿过点序列 pp_{1} p_{2} p_{4} )。类似的讨论适用于若 p_{3} 是 1 (及 p_{0} 是0 这种情况);在这种情况下,最短 路径的长度也是 3。最后,若 p_{1} 和 p_{3}  都是1 ,则 和 p_{4} 之间的最短 路径长度是4 。在这种情况下,路径穿过点序列 pp_{1} p_{2}p_{3} p_{4} 。

2.6 用于数字图像处理的基本数学工具简介(Introduction to the basic mathematical tools used in digital image processing)

本节有两个主要目标:(1)介绍我们在整本书中使用的各种数学工具;(2)通过将这些工具应用于各种基本图像处理任务(其中一些任务将在后续讨论中多次使用),以帮助你开始培养如何使用这些工具的“感觉(feel)”。

2.6.1  逐元素运算对比矩阵运算(Elementwise versus matrix operations)

    涉及一幅或多幅图像的逐元素运算(elementwise operation)是在逐像素(pixel-by-pixel)的基础上进行的。我们在本章前面提到,图像可以等价地视为矩阵。事实上,正如你将在本节后面看到的,在很多情况下,图像之间的运算都是使用矩阵理论进行的。正是由于这个原因,必须明确区分逐元素运算和矩阵运算。例如,考虑如下 2 × 2 图像(矩阵):

\begin{bmatrix} a_{11}&a_{12}\\a_{21}&a_{22} \end{bmatrix}  和 \begin{bmatrix} b_{11}&b_{12}\\b_{21}&b_{22} \end{bmatrix}

这两幅图像的逐元素乘积(elementwise product)(通常用符号⊙(译注:Unicode: 02299,LaTex语法 “\odot”)或 ⊗ (译注:Unicode: 02297,LaTex语法 “\otimes”)表示)是

\begin{bmatrix} a_{11}&a_{12}\\a_{21}&a_{22} \end{bmatrix}\otimes \begin{bmatrix} b_{11}&b_{12}\\b_{21}&b_{22} \end{bmatrix}=\begin{bmatrix} a_{11}b_{11}&a_{12}b_{12}\\a_{21}b_{21}&a_{22}b_{22} \end{bmatrix}

即,逐元素乘积可通过对应元素对相乘而获得。在另一方面,图像的矩阵乘(matrix product)可通过应用矩阵乘法法则获得:

\begin{bmatrix} a_{11}&a_{12}\\a_{21}&a_{22} \end{bmatrix}\begin{bmatrix} b_{11}&b_{12}\\b_{21}&b_{22} \end{bmatrix}=\begin{bmatrix} a_{11}b_{11}+a_{12}b_{21}&a_{11}b_{12}+a_{12}b_{22}\\a_{21}b_{11}+a_{22}b_{21}&a_{21}b_{12}+a_{22}b_{22} \end{bmatrix}

除非另有说明,我们在整本书中都假设进行逐元素运算。例如,当我们称将图像乘以某个幂时,我们指的是每个单独的像素都乘以该幂;当我们称将一幅图像除以另一幅图像时,我们指的是在相应的像素对之间进行除法,依此类推。术语两幅图像的“逐元素相加(elementwise addition)”和“逐元素相减(elementwise subtraction)”是多余的,因为根据定义,这些是逐元素运算。但是,你有时可能会看到它们被用来澄清符号上的歧义。

2.6.2  线性运算对比非线性运算(Linear versus nonlinear operations)

    图像处理方法的一个最重要的类型之一是是否是线性或非线性。考虑从一幅已知输入图像 f (x,y)产生一幅输出图像(x,y)的通用的算符(operator)𝓗 (译注:Unicode:1D4D7,LaTex语法:“\mathscr{H}”,名称“mathematical bold script capital”):

(2-22)                        \mathcal{H}[f(x,y)] = g(x,y)

已知两个任意常量 和 b,以及两幅任意图像 f_{1}(x,y)  和 f_{2}(x,y)  ,若

(2-23)              \begin{array}{rlc} \mathcal{H}[af_{1}(x,y) + bf_{2}(x,y)]&=a\mathcal{H}[f_{1}(x,y)]+b\mathcal{H}[f_{2}(x,y)]\\ \\ &=ag_{1}(x,y)] + bg_{2}(x,y) \end{array}

则称 𝓗 为线性算符(linear operator)。该公式表明,应用于两个输入之和的线性运算的输出与对输入单独执行运算然后对结果求和相同。此外,对常数乘以输入的线性运算的输出与原始输入乘以该常数所得的运算输出相同。第一属性称为加法性(additivity),第二个属性称为齐次性(homogeneity)(译注:有关齐次的概念,请参见文章:https://zhuanlan.zhihu.com/p/661193354)。根据定义,不满足等式(2-23)的算符称为非线性(算符)(译注:因此,相应的运算就称为非线性运算)。

    举个例子,假设 𝓗 是求和算符Σ,通过这个算符进行的运算只是简单地对输入求和。为了检验线性性,我们从等式(2-23)的左侧开始,并尝试证明其等于右侧:

\begin{array}{rlc} \sum[af_{1}(x,y) + bf_{2}(x,y)]&=\sum[af_{1}(x,y)]+\sum [bf_{2}(x,y)]\\ \\ &=a\sum[f_{1}(x,y)]+b\sum [f_{2}(x,y)]\\ \\ &=ag_{1}(x,y)+bg_{2}(x,y) \end{array}

其中,第一步由加法是可分配的这个事实推导出。因此,左侧的展开就等于(2-23)的右侧,并推断出求和算符是线性的。

    在另一方面,假设我正在进行求最大值运算,其功能就是求得一幅图像中像素的最大值

为此,在此证明这一点的最简单的方式,就是用一个不能通过等式(2-23)检验的例子来证明这个算符是非线性的。考虑下列两幅图像

f_{1}=\begin{bmatrix} 0&2\\ 2&3 \end{bmatrix}   和 f_{2}=\begin{bmatrix} 6&5\\ 4&7 \end{bmatrix}

并假设我们令 a = 1 和 b = -1 。为了验证线性性,我们再次从等式(2-23)的左侧开始:

\max \left \{ (1)\begin{bmatrix} 0&2\\ 2&3 \end{bmatrix}+(-1)\begin{bmatrix} 6&5\\ 4&7 \end{bmatrix} \right \}=\max \left \{ \begin{bmatrix} -6&-3\\ -2&-4 \end{bmatrix}\right \}=-2  (译注:求像素最大值)

接下来计算的右侧

(1)\max \left \{\begin{bmatrix} 0&2\\ 2&3 \end{bmatrix} \right \}+\max \left \{(-1)\begin{bmatrix} 6&5\\ 4&7 \end{bmatrix} \right \}=3+(-1)7=-4

在这种情况下,通过等式(2-23)的左右两侧公式计算出的左侧和右侧并不相等,因此,我们证明了 max算符是非线性的。

    正如你将在接下来的第三章中看到的,线性运算非常重要因为它们包含大量适用于图像处理的理论和实践结果非线性运算的范围相当有限。然而,你将在接下来的章节中遇到一些非线性图像处理操作其性能远远超过线性图像处理操作所能实现的性能

2.6.3  算术运算(Arithmetic operations)

    两幅图像 f (x) 和 g (x) 之间的算术运算表示为

(2-24)

                s (xy) = f (xy) + g (xy) (sum)

                d (xy) = f (xy) - g (xy) (difference)

                p (xy) = f (xy) × g (xy) (product)

                v (xy) = f (xy) ÷ g (xy)   (?)

这些是逐元素运算,如本节前面所述,意味着它们是在 fg 中对应的像素对之间执行的,其中 x = 0, 1, 2,… ,M − 1 且 y = 0, 1, 2,… , N − 1。像往常一样,M N 是图像的行和列大小。显然,sdp v 也是大小为 M × N 的图像。注意,刚刚定义的图像算术涉及相同尺寸的图像。下面的例子说明了算术运算在数字图像处理中的重要作用。

例子2.5: 使用图像相加(平均)来降低噪声(Using image addition (averaging) for noise reduction)

假设 (x,y) 是一幅残损图像(a corrupted image),它是通过将噪声η (x) 加到无噪声的图像 f (x,y)而形成的;即,

(2-25)                  (x,) = f (x,y) + η (xy)   

其中,假设在每一对坐标(x,y)处的噪声是不相关的且均值为0(注:一个随机变量 z(均值 \overline{z} )的方差(variance)(译注:即对差求平方)定义为 E\{ (z-\overline{z})^{2}\} ,其中,E(•)是参数的期望值(expected value)。两个随机变量  z_{i}  和 z_{j}   的协方差(covariance)(译注:或称积差——对差求积;协方差即共方差)定义为 E\{ (z_{i} - \overline{z}_{i})(z_{j} - {\overline{z}_{j}} ) \}  。如果变量不相关,则它们的协方差为 0,反之亦然。不要混淆相关性和统计独立性如果两个随机变量在统计上独立则它们的相关性为零但是,反之通常不成立)。此外,我们假设噪声和图像值是不相关的(这是典型的加法噪声的假设)。面这个过程的目是通过添加一组有噪声的输入图像 \{g_{i}(x,y)\} 来减少输出图像的噪声内容这种技术常用于图像增强。   

如果噪声满足前述约束条件,就可以证明(问题2.26),若一幅图像  \overline{g}(x,y)  由 个不同噪声图像的均值构成,即     

(2-26)                \displaystyle \overline{g}(x,y) = \frac{1}{K} \sum_{i=1}^{K}g_{i} (x,y)

则我们可以推导出

(2-27)                E\{ \overline{g}(x,y) \} = f (x,y)

(2-28)                \displaystyle \sigma_{\overline{g}(x,y)}^{2}=\frac{1}{K}\sigma_{​{\eta}(x,y) }^{2} 

其中,E\{ \overline{g}(x,y) \} 是 \overline{g}(x,y)  的期望值,而 \sigma_{\overline{g}(x,y)}^{2}  和 \sigma_{​{\eta}(x,y) }^{2}  皆分别是 \overline{g}(x,y) 和 \eta(x,y)  在坐标 (x,) 处的方差。这些方差是与输入图像大小相同的阵列,并且每个像素位置都有一个标量方差值。

位于均值图像中任意点(x,y)处的标准偏差(standard deviation)(差差的平方根)是

(2-29)                \displaystyle \sigma_{\overline{g}(x,y)}=\frac{1}{\sqrt{K}}\sigma_{​{\eta}(x,y) }

随着的K增加,等式(2-28)和(2-29)表明,位于每个位置(x,y)处的像素值的变化(variability)(通过方差或标准差来度量)减小。因为  E\{ \overline{g}(x,y) \} = f (x,y)  意味着,随着用于均值处理的噪声图像数量的增加, \overline{g}(x,y)  越接近无噪声图像f (x,y)。为了避免输出(均值)图像中的模糊(blurring)和伪影(artifacts), 对图像  g_{i}(x,y)  进行配准(register)(即,空间对齐)中是有必要的

图像平均的一个重要应用是在天文学领域,在非常低的光照水平下成像通常会导致传感器噪声,从而使单个图像几乎无法用于分析(降低传感器的温度有助于减少噪音)。图 2.29(a) 显示了Galaxy Pair NGC 3314 的 8 位图像(译注:NGC 3314是长蛇座的一个深空天体,由NGC 3314a(前)和NGC 3314b(后)两个漩涡星系重叠组成,距离我们有1.17亿光年和1.4亿光年远),其中通过添加具有0值和64位强度等级的标准偏差的Gauss噪声来模拟噪声污染(noise corruption)。该图像代表了在弱光条件下拍摄的嘈杂的天文图像,不具有任何实用价值。2.29(b)到(f )分别显示了对 5、10、20、50 和 100 个图像进行平均的结果。我们从图 2.29(b)中看到,平均仅 10 张图像就带来了一些明显的改进。根据等式(2-29),图 2.29(b)中的噪声标准偏差小于图 2.29(a)中噪声偏差的一半 ( 1/\sqrt{5} = 0.45 )  ,   或者 (0.45)(64) ≈ 29 个强度级别。类似地,图2.29(c)至(f )中的噪声的标准偏差分别是原始值的 0.32、0.22、0.14 和 0.10,大约分别转换成了 20、14、9 和 6 个强度等级。 随着噪声标准偏差的减小,我们在这些图像中看到了越来越明显的细节。出于任意实际应用目的,最后两张图像在视觉上都是相同的。这并不意外,因为它们的噪声水平的标准偏差之间的差异仅为大约3个强度等级。根据结合图 2.5 的讨论,该差异低于人类通常能够检测到的差异。

--------------------------------图 2.29 (a) 被加性(additive)Gauss噪声破坏的星系对 NGC 3314 的图像。 (b)-(f) 分别对 5、10、20、50 和 1,00 个噪声图像进行平均的结果。所有图像的大小均为 566 × 598 像素,并且所有图像都经过缩放,以便它们的强度跨越完整的[0, 255]强度等级。(原始图片由 NASA 提供(译注:即,美国国家航空航天局——The National Aeronautics and Space Administration)。)-------------------------

例子2.6:使用减法对比图像(Comparing images using subtraction)

图像减影(Image subtraction)通常用于增强图像之间的差异。例如,图2.30(b)中的图像是通过将图2.30(a)中每个像素的最低有效位设置为零而获得的。从视觉上看,这些图像是无法区分的。然而,如图 2.30(c) 所示,将一幅图像与另一幅图像相减可以清楚地显示它们的差异。差异图像中的黑色(0)值表示图2.30(a)和(b)中图像之间看起来没有差异的位置。

----------------------------图 2.30 (a)华盛顿特区的红外图像。(b)将(a)中每个像素的最低有效位设置为零而得到的图像。(c)两个图像的差值,为了清晰起见,缩放到范围 [0, 255]。(原始图片由 NASA 提供。)-----------------------------------------------

我们在图 2.23 中看到,随着图 2.23(a) 所示的天文台图像分辨率的降低,细节丢失了。通过显示原始图像与其各种低分辨率对应图像之间的差异,可以获得作为分辨率函数的图像变化的生动迹像。图 2.31(a)显示了930 dpi 和 72 dpi 图像之间的差异。正如你所看到的,差异非常明显。差异图像中任何点的强度与该点处两个图像之间的数值差的大小成正比。 因此,我们可以分析当分辨率降低时原始图像的哪些区域受到的影响最大。 图 2.31 中接下来的两幅图像显示的整体强度按比例较小,表明 930 dpi 图像与 150 dpi 和 300 dpi 图像之间的差异较小,正如预期的那样。

----------------------------图 2.31 (a) 图 2.23 中 930 dpi 和 72 dpi 图像之间的差异。(b) 930 dpi 和 150 dpi 图像之间的差异。(c) 930 dpi 和 300 dpi 图像之间的差异。-----------------------------------------------

作为最后的说明,我们简要讨论称为掩模模式放射(mask mode radiography)的医学成像法,这是一种商业上成功且非常有益的图像减影(image subtraction)用途。考虑形如

(2-30)                        g(x,y) = f (x,y) -h(x,y)

的图像差。在本例中,掩模 h(x,y) 是由位于X 射线源对面的增强电视摄像机(而不是传统的 X 射线胶片)捕获的患者身体区域的X射线图像。该过程包括将X射线造影剂注入患者的血流中,拍摄与h(x,y)相同解剖区域的一系列图像,称为实时图像[其样本表示为 f (x,)] ,并在注射造影剂后从一系列传入的实时图像中减去掩模。从每个样本实时图像中减去掩模的最终效果是 f (x,y) 和 h(x,y) 之间不同的区域出现在输出图像 g(x,y) 中,作为增强的细节。由于可以以电视速率捕获图像,因此该过程会输出一个视频,显示造影剂如何通过所观察区域的各个动脉传播

    图2.32 (a)显示了将碘介质注入血流之前患者头顶的面罩X射线图像,图2.32(b)是注入介质后拍摄的实时图像样本 。图2.32(c)是(a)和(b)之间的差。在此图像中可以看到一些精细的血管结构。图 2.32(d) 中的差异很明显,它是通过锐化图像并增强其对比度获得的(我们将在下一章中讨论这些技术)。 图2.32(d)是介质如何通过受试者(subject)大脑血管传播的“快照”。

----------------------------图 2.32 数字减影血管造影。(a)掩模图像。(b)实时图像。 (c) (a)和(b)之间的差。(d)增强的差异图像。(图(a)和(b)由荷兰Utrecht大学医疗中心图像科学研究所免费提供。)-----------------------------------------------

例子2.7:使用图像乘法和除法进行阴影校正和遮蔽。(Using image multiplication and division for shading correction and for masking)

图像乘法(和除法)的一个重要应用是阴影校正。假设成像传感器生成的图像可以建模为“完美图像”的乘积,用 f (x,y)  表示,乘以着色函数 h(x,y); 即 g(x, y) = f (x,y) h(x,y)。如果h(x,y)已知或可以估算,则我们可以通过将感测到的图像乘以 h(x,y) 的倒数(即通过 h 使用逐元素除法除以g)来获得 f (x,y)(或其估算值)。 如果可以访问成像系统,我们可以通过对恒定强度的目标进行成像来获得对阴影函数(shading function)的良好近似。 当传感器不可用时,我们通常可以使用第 3.5 节和第 9.8 节中讨论的方法直接从着色图像估算阴影图案。图 2.33 显示了使用阴影图案估算进行阴影校正的示例。由于阴影图案中的错误,校正后的图像并不完美(这是典型的),但结果绝对比图 2.33 (a)中的阴影图像有所改进。有关我们如何估算图 2.33(b)的讨论,请参见第 3.5 节。图像乘法的另一个用途是掩蔽运算,也称为兴趣区域 (ROI——the Region Of Interest)运算。如图 2.34 所示,该过程包括将给定图像乘以掩模图像,该掩模图像在ROI 中为 1,在其他位置为 0。 掩模图像中可以有多个ROI,并且ROI的形状可以是任意的。

---------------------图 2.33 阴影校正。(a)阴影测试图案。(b)估计的阴影图案。(c) (a)与(b)的倒数的乘积。(有关如何估计(b)的讨论,请参阅第 3.5 节。)--------------------------------------

---------------------图 2.34 (a) 数字牙科 X 射线图像。(b) 用于隔离带有填充物的牙齿的ROI掩模(白色对应于 1,黑色对应于0)。(c) (a)和(b)的乘积。---------------------------------------

    在我们离开本节之前,对一些关于实现图像算术运算的方法作一些评述。实际上,大多数图像都使用8位显示(甚至24位彩色图像也由三个独立的8位通道组成)。因此,我们期望图像值在 0 到 255 的范围内。当图像以标准图像格式(例如 TIFF 或 JPEG)保存时,会自动转换到此范围。当图像值超出允许的范围时,就需要进行裁剪或缩放。例如,两个 8 位图像的差的范围最小为的-255到最大的255。两个这样的图像之和的值范围可以从 0 到 510。当将图像转换为 8 位时,许多软件应用程序只是将所有负值设置为 0,并将所有超过此限制的值设置为 255。已知由一个或多个由算术(或其他)运算产生的数字图像g,保证一个值的整个范围被“捕获”为固定位数的方法如下:

首先,我们执行运算

(2-31)                          g_{m} = g - \min(g)

这一步创建一幅最小值为0的图像。

    第二步,我们再执行运算

(2-32)                          g_{s} = K [g_{m}/\rm{man}(\mathit{g_{m}})]

这就创建了一幅缩放图像 g_{s}  , 其值在范围 [0, K ] 中。当处理 8 位图像时,设置 K = 255 会给我们一个缩放图像,其强度跨越从 0 到 255 的完整 8 位范围。类似的评述适用于 16 位或更高位图像。该方法可用于所有算术运算。在进行除法时,我们有一个额外的要求,即除数图像的像素应该添加一个小数,以避免除以0 。

2.6.4  集合和逻辑运算(Set and logical operations)

    在本节中,我们讨论的是集合论的基础知识。我们还介绍并说明了一些重要的集合和逻辑运算。

2.6.4.1  基本集合运算(Basic Set Operations)

    一个集合(set)就是(某种类型的)不同对象的合集(collection)。若a是集合中的一个元素,则我们记为

(2-33)                          a ∈ A                                                                   

类似地,若a不是集合中的一个元素,则我们记为

(2-34)                          a  ∉  A                                                                

称无元素的集合为空集(null 或 empty set),用符号 ∅ (译注:Unicode: 02300;LaTex语法:“\emptyset”或“\varnothing”)表示。一个集合通过两个大括号(brace)括起内容的形式来表示:{•} 。例如,表达式

C = { c |c = -ddD }                                

表示 C 是元素c的集合,而c是由 -1乘以集合D的每一个元素构成。

    若集合 的每一个元素都是集合 的一个元素,则称 是集合 的一个子集,表示为

(2-35)                      A B                                                           

(译注:⊆ 的Unicode:02286;LaTex语法“\subseteq”。)

         两个集合的并集(union)表示

(2-36)                      C  = AB                                                      

(译注:符号 ∪ 的Unicode:0222A;LaTex语法“\cup”)

这是属于A,或属于B,或属于两者的元素构成的集合。类似地,两个集合AB交集(intersection)表示为

(2-37)                      D  = AB                                                     

集合由既属于A又属于B中的元素构成。若集合AB的没有共同元素,则称它们是离集(disjoint set)或互斥集(mutually exclusive set),在这种情况下,

(2-38)                      AB = ∅                                                    

样本空间Ω(sample space,也称为集合域(set universe))是给定应用中所有可能的集合元素的集合。根据定义,这些集合元素是该应用程序的样本空间的成员。例如,如果你正在处理实数集,则样本空间就是实轴(real line),其中包含所有实数。在图像处理中,我们通常将 Ω 定义为包含以图像中的所有像素的矩形

    集合A的补集是不在A中的元素的集合:

(2-39)                        A^{c} = \{w|w \notin A \}

两个集合 和 的差 (表示为 A - ) 定义为

(2-40)                        A - B = \{ w|w \in A , w {\notin} B \} = A \cap B^{c}

这是属于 但不属于 的元素构成的集合。我们也可以根据 Ω 和集差运算来定义补集 A^{c} ; 即,A^{c} = \Omega - A  。表 2.1 显示了几个重要的集合属性和关系。

(译注:

Operations between the sample space and null sets——样本空间和空集之间的运算;

Union and intersection with the null and sample space sets——带有空集和样本空间集的并集和交集;

Union and intersection of a set with itself——集合与其自身的并集和交集;

Union and intersection of a set with its complement——集合与其补集的并集和交集;

Commutative laws——交换律;

Associative laws——结合律;

Distributive laws——分配律;

DeMorgan’s laws——DeMorgan[dəmɔːɡən]定律。)  

----------------------------表 2.1 集合的几个重要属性和关系--------------------

图 2.35 以图表方式(所谓的Venn[ven]图(Venn diagrams)(译注:John Venn,十九世纪英国的哲学家和数学家,他在 1881年发明了Venn图)显示了表 2.1 中的一些集合关系。各图中的阴影区域对应于图上方或下方指示的设置操作。图2.35(a)显示了样本集Ω。与之前一样,这是给定应用程序中所有可能元素的集合。图2.35(b)表明集合A的补集是Ω中所有不在A中的元素的集合,这与我们之前的定义一致。观察到图 2.35(e)和(g)是相同的,这证明了等式(2-40)使用Venn图的有效性。这是Venn图用于证明集合关系之间等价性的有用示例。

---------------------------图 2.35  对应表2.1中某些集合运算的Venn图。运算的结果(例如 A^{c} ) 如图中阴影所示。通过 Venn 图证明 A - B = A{\cap}B^{c}  ,即图(e)和(g)是相同的[见等式 2.40 ]------------------------------------------------------------

将刚刚讨论的概念应用于图像处理时,我们让集合表示二值图像中的对象(区域),集合的元素是这些对象的(x, y)坐标。例如,如果我们想知道二值图像的两个对象 AB 是否重叠,我们所要做的就是计算 A B。如果结果不是空集,我们就知道两个对象的某些元素重叠。请记住,使得图 2.35 中所示的运算在图像处理上下文中有意义的唯一方法是,包含集合的图像是否是二值的,在这种情况下,我们可以讨论基于坐标的集合成员(假设该集合的所有成员都具有相同的强度值(通常用1表示))。我们将在下一节和第 9 章中更详细地讨论涉及二值图像的集合运算。

    前面的概念在处理灰度图像时不适用,因为我们还没有定义一种机制,用于将强度值分配给集合运算产生的像素。在第 3.8 节和第 9.6 节中,我们将灰度值的并集和交集运算分别定义为相应像素对的最大值和最小值。我们将灰度图像的(complement)定义为常数与图像中每个像素的强度之间的逐对差。我们处理相应像素对的事实告诉我们,灰度集运算是逐元素动算,如前述定义。以下例子简要说明了涉及灰度图像的集合运算。我们将在刚才提到的两节中进一步讨论这些概念。

例子2.8: 例释有关灰度图像的集合运算。(Illustration of set operations involving grayscale images)

    令集合 A 表示一幅灰度图像的元素,其元素是形如(x,y,z)的三元组,其中,x y 表示空间坐标,z 表示强度值。我们定义 A 的补集为集为

A^{c} = \{ (x,y,K - z) |(x,y,z) \in A \}

它是一个强度为从常量 减去A中对应元素强度的像素集合。这个常量等于图像中的最大强度值 2^{k}-1   (其中,k是用于表示强度z的位的数目)。令A表示图2.36(a)中的8位灰度图像,并假设我们要使用灰度集运算形成 A反转(negative)。反转就是集合补集,这是一个 8 位图像,所以我们所要做的事情就是令上述定义的集合中的 K = 255:

A^{c} = \{ (x,y,255 - z) |(x,y,z) \in A \}

结果。我们展示此内容仅为了说明目的。图像反转(image negative)通常使用强度变换函数来计算,如本节稍后所讨论。

---------------------------图 2.36  有关灰度图像的集合运算。(a)原始图像。(b) 使用灰度集互补获得的图像反转。 (c) 图像(a)和恒定图像的并集(原始图片由 G.E. 医学系统免费提供。)-------------------------------------------------------------

具有同样数量元素的两个灰度图像集 AB 的并集定义为集合

A {\cup} B=\displaystyle \{\mathop{\max}_{z}(a,b)|a{\in} A , b{\in} B \}

其中,可以理解为,最大运算应用于成对的相应元素。如果 AB 是相同大小的灰度图像,我们看到它们的并集是由空间对应元素对之间的最大强度形成的阵列。为了说明,假设 A 再次代表图 2.36(a) 中的图像,并令 B 表示与 A 大小相同的矩形阵列,但其中 z 的所有值等于 A 的元素的平均强度 \overline{z}  的 3 倍。图 2.36(c) 显示了执行集合并集运算后的结果,其中所有超过 3\overline{z}  的值都显示为 A 中的值,所有其他像素的值为 3\overline{z}  ,这是一个中灰度值。

    基于一个集合 A 的一种关系(或者,更确切地说,一种二元关系)是一种由 A 中元素组成的有序元素对的集合。即,一种二元关系是是笛卡尔积(Cartesian product) A × A 的一个子集。两个集合 AB 之间的一种二元关系是 A ×B 的一个子集。

    基于一个集合 S 的一种偏序(或称部分有序(partial order))是基于集合 S 上的一种使得下述条件成立的关系 ℛ :

(a) 反身性(reflexive): 对于任意 aS , 有 aa

(b) 传递性(transitive): 对于任意 abcS , 若 ab bℛc 成立,即意味着aℛc 成立;

(c) 反对称性(antisymmetric): 对于任意 abS , 若 ab ba 成立,即意味着 a = b 成立;

其中(例如),ab 可读作“a 关联于 b 。” 这意味着 a b 在集合 ℛ 中,根据前述关系的定义,ℛ 本身是 S ×S 的一个子集。称一个具有偏序关系的集合为偏序集(partially ordered set)。

         令符号 ≼ (译注:Unicode: 0227C;LaTex语法“\preccurlyeq”(precedes curly equals,前导卷曲等))表示一个有序关系,一个形如以下的表达式

a_{1} {\preccurlyeq} a_{2} {\preccurlyeq} a_{3} {\preccurlyeq} ... {\preccurlyeq} a_{n}

读作:a_{1}   先于或等于 a_{2}  ,  a_{2}  先于或等于  a_{3}  ,等等。当应用于数值时,符号 ≼ 通常被替换为更传统的符号。例如,用关系“小于或等于”(用符号“≤”表示)配对的有序实数值集是偏序集(见问题2.33)。类似地,自然数集(用“除以……”表示的配对关系,用符号“÷”表示)是偏序集。

我们在本书后面更感兴趣的是严格有序。基于一个集合 S 的一种严格有序(A strict ordering) 是基集合 S 的一种使得下述条件成的关系 ℛ :

(a) 反反身性(antireflexive): 对于任意 aS , 有  ¬aa;(译注:符号“ ¬ ”的Unicode: 000AC;LaTex语法:“\neg”);

(b) 传递性(transitive): 对于任意 abcS , 若 ab bℛc 成立,即意味着aℛc 成立。

其中,“ ¬aa”意味着 a“不关联于”a 。令符号≺(译注:Unicode: 0227A;LaTex语法:“\prec”(precedes),读作“先于”)表示严格有序关系。一个形如以下的表达式

a_{1} {\prec} a_{2} {\prec} a_{3} {\prec} ... {\prec} a_{n}    

读作:a_{1}  先于 a_{2}  ,  a_{2} 先于 a_{3}  ,等等。称一个严格有序的集合为一个严格有序集(a strict-ordered set)。

例如,一个由小写的英语字母组成的集合{a,b,c,...,z}是一个严格有序集。按照前述定义,这个次序

                abc ≺ ... ≺

是严格的,因为集合中没任何成员可以先于其自身(反反身性),并且,对于集合 S 中的任意三个元素,若第一个先于第二个,第二个先于第三个,则第一个先于第三个(传递性)。类似地,与关系“小于(<)”配对的整数集是严格有序集。

2.6.4.2  逻辑运算(Logical Operations)

逻辑运算处理(TRUE)”(通常用 1 表示)(FALSE)”(通常用 0 表示)的变量和表达式。就我们的目的而言,这意味着由前景(foreground)(1值)像素组成的二值图像和由0值像素组成的背景(background)。

我们采用两个基本方法之一在二值图像上运用集合和逻辑算符:(1) 我们可以使用单个图像中前景像素的各个区域的坐标作为集合,或者(2)我们可以处理一张或多张相同大小的图像,并在这些数组中的相应像素之间进行逻辑运算。

在第一种分类中,一幅二值图像可以被视为一帖Venn图,其中 1 值像素的各个区域的坐标被视为集合。这些集合与由 0 值像素组成的集合的并集构成了集合域 Ω。在此表示中,我们使用上一节中定义的所有集合运算来处理单个图像。例如,一幅二值图像具有两个 1 值区域  R_{1}  和 R_{2}  ,我们可以通过集合交集运算  R_{1}{\cap}R_{2}  (见图2.35)确定它们是否有区域重叠(即,它们至少有一双共同坐标)。按第二种方法,我们可以在一幅二值图像的像素上、或者在两幅或多幅同样大小的二值图像的相应像素上执行逻辑运算来确定其是否有区域重叠。

逻辑算符可以根据真值表定义,如表2.2显示了两个逻辑变量 a b 的逻辑运算。仅当 a b 都为 1 的时候,逻辑“与(AND)”运算(用符号 ⋀ 表示)(译注: Unicode: 022C0;LaTex语法“\bigwedge”)结果为1(真);否则,结果为 0 (假)。类似地,当 a b 为 1 或二者均为 1 的时候,逻辑或(OR)运算(用符号 ⋁ 表示)(译注:Unicode: 022C1;LaTex语法“\bigvee”)结果为 1;束则结果为 0 。“非(NOT)”(用符号 ∼ 表示)(译注:Unicode: 0223C;LaTex语法“\sim”)算符则是不言而喻的。当应用于两个二值图像时,与运算和或运算在图像间的相应像素对上进行运算。即,在这种语境下,它们是逐元素算符(见本章前面给出的逐元素算符定义)。对于算符与、或、非,它们在可以用作构造任何其它逻辑算符的意义上,是功能完备的(functionally complete)。

B_{2} 

--------------------表 2.2 定义逻辑算符与、或、和非的真值表--------------------

    图 2.37 用上述讨论的第二种方法说明了表 2.2 中所定义的逻辑算符。二值图像 B_{1}  的非是通过将所有 1 值像素替换 0 或反之的方式而获得的一个阵列 。  B_{1}   和  B_{2}  的与运算在所有 B_{1}  和  B_{2}  都是 1 的相应元素位置的空间位置都包含 1 ;否则,与运算产生0 。类似地,B_{1}  和 B_{2}  的或运算在所有 B_{1}  或 B_{2}  或二者都是 1 的相应元素位置的空间位置都包含 1 ;否则,这个图像阵列在相应位置包含 0 。在图 2.37 的四行中的结果对应 B_{1}  中 1 值像素的结合,但不对应 B_{2}  中一值像素的集合。图中最后一行是异或运算(XOR)(排它或(exclusive OR)),它在 B_{1}  和 B_{2}  的相应元素位置产生1 (但并非两者都为 1 )。注意图 2.37 最后两行的逻辑表达式是使用表 2.2 的算符构造的;这些是这些算符完备特征的例子。

-----------------------图 2.37 涉及前景(白色)像素的逻辑运算的图示。黑色代表二进制 0,白色代表二进制 1。显示的虚线仅供参考,它们不是结果的一部分。-----------------------

我们使用以上讨论的第一种方法可以得到与图 2.37 中相同的结果。为了使用这种方法执行上述运算,我们通过在这两幅图的每一幅中标识单个1值区域开始(在这种情况下,在每幅图像中仅有一个这样的区域)。分别令 A B 表示图像  B_{1}  和  B_{2}  中所有 1 值像素的坐标集(set of coordinates)。然后我们通过对两个图像进行“或”运算来形成一个单独的阵列,同时保持标识 A B 。图 2.37 中的结果看起来像阵列 B_{1} \rm{\;OR\;}{\mathit{B}_{2} }   , 但是带有两个分别被标为 A B 的白色区域。换句话说,结果阵列看起来像一个 Venn 图,根据前面章节定的 Venn 图和集合运算,我们用后述集合运算获得图 2.37 中最右侧列所示的结果:A^{c} = \rm{NOT}(\mathit{B}_1)  , A{\cap}B = B_{1} \; \rm{AND}\; \mathit{B}_{2} , A \cup B = B_{1}{\;} \rm{OR} {\;}\mathit{B}_{2}  , 并对图2.37 中其结果,也通过类似运算即可实现。我们将在第 9 章中广泛使用本节中提出的概念。

2.6.5  空间运算(Spatial Operations)

    空间运算直接在图像像素上进行。我们将空间运算分为三个大类(1) 单像素运算,(2) 领域运算,和(3)几何空间变换。

(1) 单像素运算

     我们在数字图像上进行的最简单的运算,就是使用形如

(2-42)                 s = T(z)

的转换函数 T 单个地改变其像素亮度强度(其中,z 是源图像中的一个像素亮度强度,而 s 是处理后的图像中对应(映射)强度)。例如,图 2.38 展示了获取一个 8 位图像的反转(negative,有时候又称为互补(complement))的转换。这种转换可以用于替代集合运算去获得(例如) 2.36 中的反转图像(negative image)。

--------------------图 2.38 用于获得8位图像的照相反转图像的数字等效值的强度变换函数。-------------

(2) 领域运算

令    S_{xy }  表示中心在一幅图像 f 中的任意点(x,y)上的一个领域(见涉及领域的 2.5 节)的坐标集。领域处理在输出的(处理后的)图像 g 中的(与输入图像相同的)同一位置处产生一个相应的像素,这个输出像素值取决于输入图像中具有  S_{xy }  中坐标值的像素的领域上的具体运算。例如,假设具体的运算是计算中心位于(x,y)上尺寸为 m × n 的一个矩形领域内的像素均值,这个区域内的像素坐标是集合  S_{xy }  的元素。图 2.39 (a)和 (b) 说明了这个处理过程。我们可以将这种均值运算表示为

(2-43)                          \displaystyle g(x,y) = \frac{1}{mn} \sum_{(r,c){\in}S_{xy}}f(r,c)

其中,r  c 是坐标位于集合 S_{xy }  中的像素的坐标的行和列。图像 g 是通过如下方式创建的——变化坐标(x,)使得领域的中心从图像 f 中的像素移到像素,然后在每一个新位置重复这样的领域运算。例如,图 2.39 (d)中的图像按这样的方式使用尺寸为 41×41 的领域计算而创建。最终效果是在原始图像中执行局部模糊。例如,这种类型的处理过程用于消除小细节,从而渲染与图像最大区域相对应的“斑点(blobs)”。我们将在第 3 章和第 5 章以及本书的其他几个地方讨论邻域处理。

---------------------------图 2.39 使用邻域处理进行局部平均。(a)和(b)为矩形领域处理过程说明。(c) 主动脉血管造影(见1.3节)。(d) 使用公式(2-43)并令 m = n = 41 进行计算的结果。图像尺寸是 790 × 686 像素。(原图由密歇根大学医学院解剖科学系 Thomas R. Gest 博士免费提供。)----------------------------------------------

(3) 几何空间变换

    我们使用几何变换来修改图像中像素的空间排布。这些变换被称为橡皮片变换(rubber-sheet transformations),因为它们可以被视为类似于在橡皮片上“打印”图像,然后根据一组预定义的规则拉伸或收缩该片。数字图像的几何变换由两个基本运算组成:

(1) 坐标空间变换。

(2) 强度插值——将强度值赋予空间转换像素。

坐标变换可以表示为

(2-44)                                \begin{bmatrix} x^{'}\\ y^{'} \end{bmatrix}=T\begin{bmatrix} x\\ y \end{bmatrix}=\begin{bmatrix} t_{11}&t_{12}\\ t_{21}&t_{22} \end{bmatrix}\begin{bmatrix} x\\ y \end{bmatrix}

其中,( x) 是源图中的像素坐标,而 (x^{'},y^{'})  是转换图像的对应像素坐标。例如,转换 ( x{'},y^{'} ) = (x/2,y/2)   在两个空间方向收缩了源图像到原图的一半。

我们的兴趣在所谓的仿射变换(affine transformations)——包括伸缩(scaling)、平移(translation)、旋转(rotation)、和裁剪(shearing)。二维仿射变换的主要特征是,保留点,直线和平面。等式(2-44)可用于表示刚提到的变换(除了平移,它要求在等式的右边加入一个常量二维向量)。然而,使用齐次坐标(homogeneous coordinates)来表示所有四个用一个如下形式的通用 3 × 3 矩阵表示的仿射变换是可行的:

(2-45)                        \begin{bmatrix} x^{'}\\ y^{'} \\1\end{bmatrix}=\mathbf{A}\begin{bmatrix} x\\ y \\1\end{bmatrix}=\begin{bmatrix} a_{11}&a_{12}&a_{13}\\ a_{21}&a_{22}&a_{23}\\0&0&1 \end{bmatrix}\begin{bmatrix} x\\ y \\1\end{bmatrix}

这个转换称为伸缩、旋转、平移、或裁剪一幅图像,取决于矩阵的 A 元素所选取的值。表 2.3 展示了用于实现这些变换的矩阵值,能够使用等式 (2-45)中的统一表示来进行所有转换的一个显着优势是它提供了连接一系列运算的框架。例如,如果我们想要调整图像大小,旋转它,并将结果移动到某个位置,我们只需形成一个 3 × 3 矩阵,该矩阵等于表 2.3 中的缩放、旋转和平移矩阵的乘积(参见问题 2.36 和 2.37 )。

    前面的变换将图像中的像素坐标移动到新位置。为了完成这个过程,我们必须为这些位置分配强度值。使用强度插值(intensity interpolation)来完成该任务。我们已经在 2.4 节中讨论了这个主题。我们以缩放图像的示例开始讨论,并讨论了新像素位置的强度分配问题。缩放(zooming)只是简单的伸缩(scaling)(如表 2.3 第二行所详述)和我们为缩放开发的适用于将强度值赋予由表 2.3 中由其他变换产生的重新定位像素的问题的分析。正如第 2.4 节中所述一样,我们在处理这些变换时考虑最近邻域、双线性和双三次插值技术。

    我们按两种基本方式使用等式(2-45)。第一种是正向映射(forward mapping)(或前向映射),通过扫描输入图像的像素实现,在每个位置 ( ) 处,直接使用等式(2-45)计算输出图像中相应像素的空间坐标 (x^{'},y^{'})  。正向映射方法的一个问题是输入图像中的两个或多个像素可以变换到输出图像中的同一位置,这就提出了如何将多个输出值组合成单个输出像素值的问题。此外,某些输出位置可能根本没有分配像素。第二种方法称为逆向映射(inverse mapping),扫描输出像素位置,并在每个位置 (x^{'},y^{'})  处,在输入图像中使用 (x,y) = A^{-1}(x^{'},y^{'})  计算相应的位置。然后,它在最近的输入像素之间进行插值(使用第 2.4 节中讨论的技术之一)以确定输出像素值的强度。逆向映射比正向映射实现起来更有效,并且用于空间变换的许多商业实现中(例如,MATLAB 使用这种方法)。

---------------------------表 2.3 基于等式(2-45)的仿射变换---------------------

例子 2.9: 图像旋转和强度插值(Image rotation and intensity interpolation)。

    此例子的目的是使用仿射变换来说明图像旋转。图 2.40(a)显示了一幅简单的图像,而图 2.40(b)-(d)是将原始图像旋转 -21°的结果(使用逆向映射)(表2.3中,顺时针旋转角度为负)。分别使用最近邻域插值、双线性插值和双三次插值来计算强度分配。图像旋转的一个关键问题是直线特征的保留。正如你在图 1 和 2 中放大的边缘部分所看到的那样。图 2.40( f ) 到 (h) 中,最近邻域插值产生了最多的锯齿状边缘,并且如第 2.4 节所示,双线性插值产生了显着改善的结果。 和以前一样,使用双三次插值产生了稍微好一点的结果。 事实上,如果你比较图 1 和 2 中放大细节的进展情况,就会发现。从图 2.40 (f) 到 (h),你可以看到最后一张图中从白色(255)到黑色(0)的过渡更加平滑,因为边缘区域具有更多值,并且这些值的分布更加平衡。尽管双线性和双三次插值产生的小强度差异在人类视觉分析中并不总是显而易见,但它们在处理图像数据时可能很重要,例如在旋转图像中的自动边缘跟踪中。

    包含旋转图像所需的空间矩形的尺寸大于原始图像的矩形,如图 2.41(a)和(b)说明了这一点。我们有两种选择来处理这个问题:(1)我们可以裁剪旋转图像,使其大小等于原始图像的大小,如图 2.41(c)所示,或者我们可以保留包含完全旋转的原图(图 2.41(d)所示)。我们使用图 2.40 中的第一个选项,因为旋转不会导致感兴趣的对象位于原始矩形的边界之外。旋转图像中不包含图像数据的区域必须用某个值填充(最常见的是 0(黑色))。 请注意,逆时针旋转的角度被视为正。这是我们的图像坐标系设置方式(见图 2.19)以及表 2.3 中定义旋转方式的结果。

------------------------------图 2.40 (a) 组成字母 T 的 541 × 421 图像。(b) 使用最近邻域插值进行强度分配,旋转 -21° 的图像。(c) 使用双线性插值旋转图像 -21°。 (d) 使用双三次插值将图像旋转 -21°。(e)-(h) 缩放部分(每个方块是一个像素,显示的数字是强度值)。------------------------------------------------------

------------------------------图 2.41 (a) 数字图像。(b) 旋转图像(注意逆时针方向为正旋转角度)。(c)旋转图像被裁剪以适合与原始图像相同的区域。(d)放大图像以容纳整个旋转图像。-----------------------------------------------------------

(4)  图像配准(Image Registration)

    图像配准是数字图像处理的一个重要应用,用于对齐同一场景的两个或多个图像在图像配准中,我们有可用的输入图像和参考图像目标是对输入图像进行几何变换,以生成与参考图像对齐(配准)的输出图像。与上一节中变换函数已知的讨论不同,产生输出配准图像所需的几何变换通常是未知的,并且必须进行估算。

    图像配准的示例包括对齐几乎同时拍摄但使用不同成像系统的两个或更多个图像,例如 MRI (磁共振成像)扫描仪和 PET(正电子发射断层扫描)扫描仪。或者,这些图像可能是使用相同仪器在不同时间拍摄的,例如间隔几天、几个月甚至几年拍摄的给定位置的卫星图像。在任何一种情况下,组合图像或在它们之间进行定量分析和比较都需要补偿由于视角、距离、方向、传感器分辨率、物体位置移动和其他因素的差异引起的几何失真。

    解决刚才讨论的问题的主要方法之一是使用连接点(tie points)(也称为控制点(control points))。这些是对应点,其位置在输入图像和参考图像中是已知的。选择连接点的方法包括按交互方式选择连接点到使用自动检测这些点的算法。一些成像系统在成像传感器中嵌入了物理伪影(例如小型金属物体)。这些直接在系统捕获的所有图像上产生一组已知点(称为网格标记或基准标记)。然后可以使用这些已知点作为建立连接点的指南。

    估算变换函数的问题是建模问题之一。例如,假设我们有一组四个连接点,每个连接点位于输入图像和参考图像中。基于双线性近视的一种简单模型由

(2.46)                        x = c_{1}v + c_{2}w + c_{3}vw + c_{4}

(2.47)                        y = c_{5}v + c_{6}w + c_{7}vw + c_{8}

给出。在估算阶段,(vw)和(xy)分别是输入图像和参考图像中连接点的坐标。如果我们在两幅图像中都有四对相应的连接点,我们可以使用等式 (2-46) 和 (2-47)写出八个公式。并用它们求解八个未知系数 c_{1}  到 c_{8}  。

一旦我们有了系数,等式 (2-46) 和 (2-47)就成为了我们转换输入图像中所有像素的工具。结果是预期的配准图像(registered image)。计算出系数后,我们让(vw)表示输入图像中每个像素的坐标,(x)成为输出图像的相应坐标。同一组系数 c_{1} 到  c_{8}  用于计算所有坐标(xy);我们只需遍历输入图像中的所有 (vw)即可在输出、配准图像中生成相应的(xy)。如果连接点选择正确,则该新图像应在双线性近似模型的精度范围内与参考图像配准。

在四个连接点不足以获得满意的配准的情况下,经常使用的方法是选择更多数量的连接点,然后将由四个连接点组成的组形成的四边形视为子图像。子图像按上述方式处理,四边形内的所有像素均使用从对应于该四边形的连接点确定的系数进行变换。然后我们移动到另一组四个连接点并重复该过程,直到处理完所有四边形区域。可以使用比四边形更复杂的区域,并采用更复杂的模型,例如通过最小二乘算法拟合的多项式。解决问题所需的控制点数量和模型的复杂程度取决于几何变形的严重程度。最后,请记住等式 (2-46) 和 (2-47) 任何其他针对这个转换的模型所定义的转换,仅映射输入图像中像素的空间坐标。我们仍然需要使用前面讨论的任何方法执行强度插值,以将强度值分配给变换后的像素。

例子 2.10:图像配准(Image Registration)。

    图 2.42 (a) 显示了参考图像,图 2.42(b) 显示了相同的图像,但由于垂直和水平剪切而发生几何扭曲。 我们的目标是使用参考图像来获得连接点然后使用它们来配准图像。我们(手动)选择的连接点显示为图像角落附近的白色小方块(我们只需要四个连接点,因为扭曲是两个方向上的线性剪切)。图 2.42(c) 显示了在前面段落讨论的过程中使用这些连接点获得的配准结果。观察到配准并不完美,如图 2.42(c) 中的黑色边缘所示。图 2.42(d)中的差异图像更清楚地显示了参考图像和校正图像之间轻微的配准缺失。差异的原因是手动选择连接点时出现错误。当失真如此严重时,很难实现连接点的完美匹配。

--------------------------------图 2.42  图像配准。(a) 参考图像。(b) 输入(几何扭曲图像)。相应的连接点显示为角附近的白色小方块。(c) 配准(输出)图像(注意边框中的错误)。(d) (a)和(c)之间的差异,显示出更多的配准错误。------------------------

2.6.6  向量和矩阵运行(Vector and matrix operations)

    多光谱图像处理是经常使用向量和矩阵运算的典型领域。例如,你将在第 6 章中了解到,彩色图像是通过使用红色、绿色和蓝色分量图像在 RGB 颜色空间中形成的,如图 2.43 所示。这里我们看到 RGB 图像的每个像素都有三个分量,它们可以以列向量的形式组织

(2-48)                        z=\begin{bmatrix} z_{1}\\z_{2}\\z_{3} \end{bmatrix}

其中,z_{1} 是红色图像中的像素强度,而 z_{2}  和 z_{3} 分别是绿色图像和蓝色图像中相应的像素强度值。因此,大小为 M × N 的 RGB 彩色图像可以由该大小的三个分量图像表示,或者由总共 MN 个大小为 3 × 1 的向量表示。涉及 n 个分量图像的一般多光谱情况(例如,参见图 1.10) 将产生 n 维向量:

(2-49)                          z=\begin{bmatrix} z_{1}\\z_{2}\\ {\vdots} \\z_{n} \end{bmatrix}

我们将在整本书中使用这种类型的向量表示。

------------------图 2.43 从三个RGB分量图像中的相应像素值形成向量。----------

    两个 n 维列向量的内积(inner product)(又称为点积(dot product))(译注:这样称乎是因为还有其它形式的积,比如,外积;有关内积的确切含义请参见文章:https://zhuanlan.zhihu.com/p/629198536)定义为

(2-50)                  \begin{array}{rl} \mathbf{a{\cdot}b}{\!}&\triangleq \mathbf{a}^{T}\mathbf{b} \\ \\ &=a_{1}b_{1} + a_{2} b_{2} + ... + a_{n} b_{n}\\ \\ &= \displaystyle \sum_{i=1}^{n}a_{i}b_{i} \end{array}

(译注:三角等号 可以读作 “等于”、“根据定义 x 等于 y ”;Unicode:225C;LaTex语法:"\triangleq";又称 "delta equal to(Δ 等)" 。)

其中,T 表示转置,Euclid 向量范式(Euclidean vector norm)(用符号 \Vert {z} \Vert  表示(译注:所谓范式,即一种长度度量方式))定义为内积的(正)平方根:

(2-51)                        \displaystyle \Vert {z} \Vert = (z^{T} z)^{\frac{1}{2}}

我们将此表达式视为是向量 z 的长度。

我们可以使用向量表达法来表示前面讨论的几个概念。例如,n 维空间中点(向量) za 之间的 Euclid 距离 D(z, a) 被定义为 Euclid 向量范数:

(2-52)                         \begin{array}{rl} D(\mathbf{z}, \mathbf{a}) {\!\!\!}&\displaystyle= \Vert {z-a} \Vert = [(z-a)^{T} (z-a)]^{\frac{1}{2}} \\ \\ &\displaystyle= [(z_{1}-a_{1})^{2}+(z_{2}-a_{2})^{2}+...+(z_{n}-a_{n})^{2}]^{\frac{1}{2}} \end{array}

这是等式(2-19)中所定义的二维 Euclid 距离的推广。

         像素向量的另一个优点体现在线性变换,表示为

(2-53)                        \mathbf{w=A( z - a ) }

其中,A 是一个大小为 m × n 的矩阵,z a 是大小为 n × 1 的列向量。

    如等式(2-10)所示,整个图像可以被视为矩阵(或等价地被视为向量),这一事实对于解决许多图像处理问题具有重要意义。例如,我们可以将大小为 M × N 的图像表示为维度为 MN × 1 的列向量,方法是让向量的前 M 个元素等于图像的第一列,接下来的 M 个元素等于第二列,依此类推。有了按这种方式形成的图像,我们就可以使用记号

(2-54)                        \mathbf{g = Hf + n }

来表达应用于图像的广泛线性处理过程。其中,f 是表示输入图像的 MN × 1 向量,n 是表示 M × N 噪声模式的 MN × 1 向量,g 是表示处理图像的 MN × 1 向量,H 是表示应用于输入图像的线性处理过程的MN × MN (请参阅本章前面有关线性过程的讨论)。 例如,可以从等式(2-54)开始开发一整套用于图像恢复的通用技术,正如我们在第 5.9 节中讨论的那样。我们将在下一节中再次提到矩阵的使用,并在本书的许多章节中展示矩阵在图像处理中的其他用途。

2.6.7  图像变换(Image transforms)

    迄今为止讨论的所有图像处理方法都直接对输入图像的像素进行操作;也就是说,它们直接在空间域中工作。在某些情况下,图像处理任务最好通过变换输入图像、在变换域(transform domain)中执行指定任务并应用逆变换回到空间域。当你继续阅读本书时,你将遇到许多不同的变换。一类特别重要的二维线性变换,表示为 T(u,v),可以表示为一般形式

(2-55)                        \displaystyle T(u,v) = \sum_{x=0}^{M-1}\sum_{y=0}^{N-1}f(x,y)r(x,y,u,v)

其中,f ( x,y)是输入图像,(x,y,u,v) 称为正向变换核(forward transformation kernel),并且,等式(2-55) 对 u = 0,1,...,M – 1 和 v = 0,1,...,N - 1 进行估算。和以前一样,x y 表示空间变量,表示 f 的行和列的维数。变量 u v 称为变换变量(transform variables),T(u,v)称为函数 f ( x,y)的正向转换(forward transform)。已知 T(u,),我们可以使用 T(u,v) 逆变换恢复 f ( x,):

(2-56)                        \displaystyle f(x,y) = \sum_{u=0}^{M-1}\sum_{v=0}^{N-1}T(u,v)s(x,y,u,v)

(2-56) 对 x = 0,1,...,M – 1 和 y = 0,1,...,N - 1 进行估算,其中,s(x,y,u,v)称为逆向变换核(reverse transformation kernel)。等式(2-55)和 (2-56)合在一起称为变换对。

    图 2.44 显示了在线性变换域中执行图像处理的基本步骤。首先,对输入图像进行变换,然后通过预定义的运算修改变换,最后,通过计算修改后的变换的逆来获得输出图像。因此,我们看到该处理过程从空间域到变换域,然后回到空间域。

--------------------------图 2.44  线性变换域中使用的常用方法-----------------

对于正向变换核,若

(2-57)              r(x,y,u,v) = r_{1}(x,u) r_{2}(y,v)

则称其为可分离的(separable)。此外,若 r_{1}(x,u)  在功能上等于  r_{2}(y,v)  ,使得

(2-58)               r(x,y,u,v) = r_{1}(x,u) r_{1}(y,v)

则称这个正向变换核是对称的(symmetric)。同样的评述也适用于逆变换核

    变换的特征取决于其核。数字图像处理中使用的一个特别重要的变换是 Fourier 变换,它们分别具有如下形式的正向变换核和逆向变换核:

(2-59)                \displaystyle r(x,y,u,v) = e^{-j2{\pi}(ux/M+vy/N)}

(2-60)               \displaystyle s(x,y,u,v) = \frac{1}{MN} e^{j2{\pi}(ux/M+vy/N))}

其中, j=\sqrt{-1}   ,因此两个核是复函数。将前面的这两个核代入(2-55)和(2-56)的通用变换公式,就给到了我们离散 Fourier 变换对(discrete Fourier transform pair):

(2-61)                \displaystyle T(u,v) = \sum_{x=0}^{M-1}\sum_{y=0}^{N-1}f(x,y) e^{-j2{\pi}(ux/M+vy/N)}

(2-62)                 \displaystyle f(x,y) = \sum_{u=0}^{M-1}\sum_{v=0}^{N-1}T(u,v) e^{-j2{\pi}(ux/M+vy/N)}

可以证明,Fourier 核是可分离且对称的(问题 2.39),并且可分离且对称的核允许使用一维变换来计算二维变换(参见问题 2.40)。正如你将在第 4 章和第 5 章中看到的,前面两个公式在数字图像处理中至关重要。

    例子 2.11: 变换域中的图像处理(Image processing in the transform domain)。

图 2.45(a) 显示了因周期性(正弦)干扰而猝发的图像。这种类型的干扰可能是由成像系统故障等引起的。我们将在第 5 章中讨论它。空间域中,干扰表现为强度波。在频域中,干扰表现为明亮的强度猝发,其位置由正弦干扰的频率决定(我们将在第 4 章和第 5 章中更详细地讨论这些概念)。通常,在 Fourier 变换 T(u,v) 幅值的图像中很容易观察到猝发。参考图 2.44 中的图,损坏的图像是 f (x,y),最左边框中的变换是 Fourier 变换,图 2.45(b)是显示为图像的 T(u,v)。显示的亮点是上面提到的强度猝发(bursts)。图 2.45 (c)显示了一个掩模图像(称为滤波器),其中白色和黑色分别代表 1 和 0。对于这个例子,图 2.44 第二个框中的操作是将滤波器乘以变换以去除与干扰相关的猝发。图 2.45(d) 显示了通过计算修改后的变换的逆得到的最终结果。干扰不再可见,以前看不见的图像细节现在变得非常清晰。例如,观察用于图像配准的基准标记(微弱的十字),如前所述。

--------------------图 2.45  (a) 图像因正弦干扰而损坏。(b) Fourier变换的幅度,显示由干扰引起的能量猝发(出于显示目的,爆发被放大)。(c) 用于消除能量猝发的掩模。(d) 修正Fourier 变换的逆计算结果。(原始图片由 NASA 免费提供。)-------------------------------------

当变换的正向和逆向核可分离且对称,且 f (x,y) 是大小为 M × M 的方形图像时,等式(2-55)和(2-56)可以用矩阵形式表示:

(2-63)                                \mathbf{T = AFA}

其中 F 是一个包含 f (x,y) 元素的 M × M  矩阵(见等式(2-9)), A 是一个具有元素 a_{ij} = r_{1}(i,j)  的 M × M 矩阵,T 是带有元素 T(u,v)( u,v = 0,1,2 ..., M - 1)的M × M 转换矩阵。 

为了换得逆变换,我们在等式(2-63)前后乘以一个逆变换矩阵 B:

(2-64)                                \mathbf{BTB = BAFAB}

若  B = A^{-1}  ,

(2-65)                                  \mathbf{F = BTB}

表明,F 或者等价的 f (x,y) 完全可以通过其正向变换恢复。若 B 不等于 A^{-1}  ,则等式 (2-65) 产生一个近似 :

(2-66)                                  \hat{F} = \mathbf{BAFAB}

除了Fourier变换,还有很多重要的变换(包括 Walsh变换、Hadamard变换, 离散余弦变换、Haar 变换、和 slant 变换)都可以按等式 (2-55)和 (2-56)表示,或者按其等价形形(2-63)和 (2-65)表示。在以后的章节中,我们将讨论这些变换及其它类型的图像变换。

2.6.8 图像强度作为随机变量(Image intensities as random variables)

    在本书中的很多地方,我们将图像强度视为随机量。比如,令 z_{i}  ( i = 0, 1, 2, ..., L – 1 )表示一幅 M×N 数字图像中所有可能的强度值,令 p(z_{k})  表示出现在图像中的强度等级 z_{k} 的概率,其估算式为

(2-67)                        \displaystyle p(z_{k}) = \frac{n_{k}}{MN }

其中, n_{k} 表示强度 z_{k}  出现在图像中的次数,而 MN 表示所有像素数。显然,

(2-68)                          \displaystyle \sum_{k=0}^{L-1}p(z_{k}) = 1

一旦我们有了 p(z_{k})  值,我们就能确定许多重要的图像特征。例如,平均(mean或average)强度计算式为

(2-69)                                \displaystyle m = \sum_{k=0}^{L-1}z_{k} p(z_{k}) 

类似地,强度的方差(variance)(译注:强度值与强度均值之差的平方乘以其出现概率再累加)为

(2-70)                                  \displaystyle \sigma^{2} = \sum_{k=0}^{L-1}(z_k-m)^{2} p(z_{k}) 

方差是 z 值围绕均值分布(spread)的度量因此,它是图像对比的一个有用的度量。一般情况下,随机变量 z 围绕均值的第 n 中心矩(central moment)定义为

(2-71)                                \displaystyle \mu_{n}(z) = \sum_{k=0}^{L-1}(z_{k}-m)^{n} p(z_{k})

我们看到,\mu_{0}(z) = 1  ,\mu_{1}(z) = 1  ,和  {\mu}_2(z) = {\sigma}^{2}  。虽然均值和方差与图像的视觉属性具有直接明显的关系,但高阶矩则更为微妙例如,正三阶矩表示强度偏向高于平均值的值,负三阶矩表示相反的情况,而零三阶矩则告诉我们强度在平均值的两侧大致均匀分布。这些特征对于计算目的很有用,但它们并没有告诉我们有关图像外观的一般信息。

    如后续章节所述,概率概念在广泛的图像处理应用中起着核心作用。例如,第 3 章使用公式 (2-67) 作为基于直方图的图像增强技术的基础。在第 5 章中,我们使用概率来开发图像恢复算法,在第 10 章中,我们使用概率进行图像分割,在第 11 章中,我们使用它来描述纹理,在第 12 章中,我们使用概率作为推导最佳模式识别算法的基础。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值