第三章 灰度变换与空间滤波
Contents
引言
变换域的图像处理首先把一幅图像变换到变换域
3.1 背景知识
3.1.1 灰度变换和空间滤波基础
空间域技术直接在图像像素上操作,对于频率域来书,其操作在图像的傅里叶变换上执行,而不针对图像本身。
空间滤波器:邻域与预定义的操作一起称为空间滤波器(也成为空间掩膜、核、模板或窗口)
对比度拉伸对f中每一个像素施以变换产生相应的g的像素的效果将比原始图像有更高的对比度,即低于K的灰度级更暗,而高于k的灰度级更亮。
阈值处理函数产生一幅两级(二值)图像。
3.2 一些基本的灰度变换函数
灰度变换是所有图像处理技术中最简单的技术。r和s分别代表处理前后的像素值。
3.2.1 图像反转
3.2.2 对数变换
该变化将输入中范围较窄的低灰度值映射为输出中较宽范围的灰度值,相反地,对高的输入灰度值也是如此。我们使用这种类型的变换来扩展图像中的按像素值,同时压缩更高灰度级的值。反对数变换的作用与此相反。
3.2.3 幂律(伽马)变换
其中c和\gamma为正常数,有时考虑到偏移量(即输入为0时的一个可度量输出),可以写为
使用幂律变换进行伽马校正,还可以进行对比度增强
对比度拉伸
灰度级分层
比特平面分层
3.2.4 分段线性变换函数
3.3 直方图处理
3.3.1 直方图均衡
如果p_r(r)和T(r)已知,且在感兴趣的值域上T(r)是连续且可微的,则变换(映射)后的变量s的PDF可由下面的简单公式得到:
输出灰度变量s的PDF就由输入灰度的PDF和所用的变换函数决定
在图像处理中特别重要的变换函数有如下形式:
一幅数字图像中灰度级r_k出现的概率近似为
其中,MN是图像中像素的总数,n_k是灰度为r_k的像素个数,L是图像中可能的灰度级的数量。
上面连续变换的离散形式为:
变换(映射)T(r_k)称为直方图均衡或直方图线性变换
3.3.2 直方图匹配(规定化)
连续灰度r和z,令p_r(r)和p_z(z)表示他们对应的连续概率密度函数。r和z分别表示输入图像和输出图像的灰度级。我们可以由给定的输入图像估计p_r(r),而p_z(z)是我们希望输入图像所具有的指定概率密度函数
令s为一个有如下特性的随机变量:
如前面一样,w为积分假变量。
接着,我们定义一个有如下特性的随机变量z:
其中,t为积分假变量。由这两个等式可得G(z)=T(r)
一旦由输入图像估计出p_r(r),变换函数T(r)就可以由式(3.3-10)得到。类似地,因为p_z(z)已知,变换函数G(z)可由式(3.3-11)得到。
式(3.3-10)到式(3.3-12)表明,使用下列步骤,可由一幅给定图像得到一幅其灰度级具有指定概率密度函数的图像
1. 由输入图像得到p_r(r),并由式(3.3-10)求得s的值。
2. 使用式(3.3-11)中指定的PDF求得变换函数G(z)
3. 求得反变换函数z=G^{-1}(s);因为z是由s得到的,所以该处理是s到z的映射,而后者正式我们期望的值
4. 首先用式(3.3-10)对输入图像进行均衡得到输出图像;该图像的像素值是s值。对均衡后的图像中具有s值的每个像素执行反映射z=G^{-1}(s),得到输出图像中的相应像素。当所有的像素都处理完后,输出图像的PDF将等于指定的PDF。
在处理离散量时,问题可被大大简化,式(3.3-10)的离散形式是式(3.3-8)中直方图均衡变换
对一个q值,有
其中,(p_z(z_i))是规定的直方图的第i个值。与前面一样,我们用反变换找到期望的值z_q:
换句话说,该操作对每一个s值找出一个z值;这样,就形成了从s到z的一个映射。
3.3.4 在图像增强中使用直方图统计
r关于其均值的n阶距定义为:
其中,m是r的均值(平均灰度,即图像中像素的平均灰度):
二阶矩特别重要:
我们将该表达式称为灰度方差,通常用\sigma^2表示(标准差是方差的平方根)。均值是平均灰度的度量,方差(或标准差)是图像对比度的度量。
在处理均值和方差时,实际上通常直接从取样值来估计它们,而不必计算直方图。近似的,这些估计称为取样均值和取样方差,它们可以根据基本的统计学有下面形式给出:
和
令(x,y)表示给定图像中任意像素的坐标,S_{xy}表示规定大小的以(x,y)为中心的邻域(子图像)。该邻域中像素的均值由下式给出:
其中p_{S_{xy}}是区域S_{xy}中像素的直方图
类似的,林玉忠像素的方差由下式给出
判断一个区域在点(x,y)是暗还是亮的方法是把局部平均灰度m_{s_{xy}}与表示为m_G并称之为全局均值的平均图像灰度进行比较。如果m_{s_{xy} \leq k_0m_G},其中,K_0是一个值小于1.0的正常数,那么我们将把点(x,y)处的像素考虑为处理的候选点。
确定一个区域的对比度是否可作为增量的候选点的度量方法:如果\sigma_{s_{xy}} \leq k_2\sigma_G,则认为在点(x,y)处的像素是增强的候选点,其中\sigma_G是由式(3.3-19)和(3.3-21)得到的全局标准差,k_2为正常数。如果我们感兴趣的是增强亮区域,则该常数大于1,对于暗区,则小于1.
需要限制能够接收的最低的对比度值。否则该过程会视图增强标准差为零的恒定区域。因此通过要求k_1\sigma_G \leq \sigma_{s_xy},k1 \leq k2,对局部标准差设置一个较低的限制值
3.4 空间滤波基础
滤波是指接收或拒绝一定的频率分量。
3.4.1 空间滤波机理
如果在图像像素上执行的是线性操作,则该滤波器称为线性空间滤波器。否则,滤波器就称为非线性空间滤波器。
使用大小为mxn的滤波器对大小为MXN的图像进行线性空间滤波,可由下式表示:
其中,x和y是可变的,以便w中的每个像素可访问f中的,每个像素。
3.4.2 空间相关与卷积
相关:是滤波器模板移动过图像并计算每个位置乘积之和的处理。
卷积:机理与相关类似,但滤波器要旋转180°。旋转180°等于水平翻转该函数,在二维情况下,旋转180°等同于沿一个坐标轴翻转模板,然后沿另一个坐标轴再次翻转模板。
我们将包含单个1而其余都是0的函数称为离散单位冲激。
卷积的概念是线性系统理论的基石。
一个大小为mxn的滤波器w(x,y)与一幅图像f(x,y)做相关操作,可表示为w(x,y)☆f(x,y),
类似的,w(x,y)和f(x,y)的卷积表示为w(x,y)★f(x,y)
3.4.3 线性滤波的向量表示
当我们的兴趣在于相关或卷积的模板的响应特性R时,有时写成乘积的求和形式是方便的:
其中w项是一个大小为mxn的滤波器的系数,z为由滤波器覆盖的相应图像的灰度值。如果来做相关,可以用给定的模板,为了使用相同的公式进行卷积操作,需要把模板旋转180°
3.4.4 空间滤波器模板的产生
生成一个大小为mxn的线性空间滤波器要指定mn个模板系数,我们使用线性滤波器所能做的所有事情是实现乘积求和操作
3.5 平滑空间滤波器
平滑滤波器用于模糊处理和降低噪声,模糊处理经常应用预处理任务中,例如在目标提取之前取出图像中的一些琐碎细节,以及桥接直线或曲线的缝隙。
3.5.1 平滑线性滤波器
平滑线性空间滤波器的输出是包含在滤波器模板邻域内的像素的简单平均值,也成为均值滤波器,可以把他们归入到低通滤波器
“`math
R=\frac{1}{9}\sum_{i=1}^9z_i
“`
R是由模板定义的3×3邻域内像素灰度的平均值。
一个mxn模板应有等于1/mn的归一化常数。所有系数都相等的空间均值滤波器有时成为盒装滤波器
一个MXN的图像经过一个大小为mxn(m和n都是奇数)的加权均值滤波器的方程:
“`math
g(x,y)=\frac{ \sum_{s=-a}^{a}\sum_{t=-b}^bw(s,t)f(x+s,y+t)}{\sum_{s=-a}^a\sum_{t=-b}^bw(s,t)}
“`
## 3.5.2 统计排序(非线性)滤波器
以滤波器包围的图像区域中所含的像素排序为基础,然后使用统计排序结果决定的值代替中心像素的值,最有名的是中值滤波器。
一个3×3的最大值滤波器的响应可以由公式R=max \{ z_k|k=1,2,…,9\}给出
# 3.6 锐化空间滤波器
锐化处理的主要目的是突出灰度的过渡部分。锐化处理可以由空间微分来实现。微分算子的响应强度与图像在用算子操作的这一点的突变程度成正比,这样,图像微分增强边缘和其他凸出,而削弱灰度变化缓慢的区域
对于一阶微分的任何定义都必须保证以下几点:
1. 在恒定灰度区域的微分值为零
2. 在灰度台阶或斜坡处微分值非零
3. 沿着斜坡的微分值非零
任何二阶微分的定义必须保证以下几点:
1. 在恒定灰度区域的微分值为零
2. 在灰度台阶或斜坡处微分值非零
3. 沿着斜坡的微分值非零
对于一维函数f(x),其一阶微分的定义是插值
“`math
\frac{\partial f}{\partial x}=f(x+1)-f(x) \tag{3.6-1}
“`
将二阶微分定义为如下差分:
“`math
\frac{\partial ^2 f}{\partial x^2}=f(x+1)+f(x-1)-2f(x) \tag{3.6-2}
“`
二阶微分在增强细节方面要比一阶微分好很多,这是一个适合锐化图像的理想特征
## 3.6.2 使用二阶微分进行图像锐化——拉普拉斯算子
这种方法基本上是一种各向同性的滤波器,这种滤波器的响应与滤波器作用的图像的突变方向无关。也就是说,各向同性滤波器是旋转不变的,即将原图像旋转后进行滤波给出的结果与先对图像滤波然后在旋转得出的结果相同。
最简单的各向同性微分算子是拉普拉斯算子,一个二维图像函数f(x,y)的拉普拉斯算子定义为:
因为任意阶微分都是线性操作,所以拉普拉斯变换也是一个线性算子。记住,我们必须支持第二个变量,在x方向上,我们有
类似的,在y方向,我们有
两个变量的离散拉普拉斯算子是
我们使用拉普拉斯对图像增强的基本方法可表示为:
其中,f(x,y)和g(x,y)分别是输入图像和锐化后的图像。
一个典型的标定拉普拉斯图像的方法是对它的最小值加一个新的代替0的最小值,然后将结果标定到整个灰度范围[ 0,L-1]内。
3.6.3 非锐化掩蔽和高提升滤波
图像锐化过程,从原图像中减去一幅非锐化(平滑过的)版本,这个成为非锐化掩蔽的处理由下列步骤组成:
1. 模糊原图像
2. 从原图像中减去模糊图像(产生的插值图像成为模板)
3. 将模板加到原图像上
令\bar{f}(x,y)表示模糊图像,非锐化掩蔽以公式形式描述如下,首先,我们得到模板:
然后,在原图像上加上该模板的一个权重
通常,我们会在上市包含一个权重系数k(k\geq0)。当k=1时,我们得到上面定义的非锐化掩蔽,当k > 1时,该处理成为高提升滤波,选择k<1则不强调非锐化模板的贡献。
3.6.4 使用一阶微分对(非线性)图像锐化——梯度
图像处理中的一阶微分是用梯度幅值来实现的。对于函数f(x,y),f在坐标(x,y)处的梯度定义为二维列向量
\begin{bmatrix}
g_x\\g_y
\end{bmatrix} =
\begin{bmatrix}
\frac{\partial f}{\partial x} \\
\frac{\partial f}{\partial y}
\end{bmatrix}
\tag{3.6-10}
向量\bigtriangledown f的幅度值(长度)表示为M(x,y):
该图像通常称为梯度图像
在某些实现中,用绝对值来近似平方和平方根操作更适合计算:
罗伯特交叉梯度算子
Soble算子
3.7 混合空间增强法
3.8 使用模糊技术进行灰度变换和空间滤波
3.8.2 模糊度集合论原理
定义:令Z为元素(对象)集,z表示Z的一类元素,即Z={z}。该集合称为论域。Z中的模糊集合A由隶属度函数\mu_A(z)表征,它是与Z的元素相关的在区间[0,1]内的一个实数.\mu_A(z)在z处的值表示A中z的隶属度等级。
对于模糊集合,我们说\mu_A(z)=1的所有z都是集合的完全成员,对于\mu_A(z)=0的所有z都不是集合的成员,而\mu_A(z)的值介于0和1之间的所有z是集合的部分成员。因此,模糊集合是一个由z值和(赋予z成员等级的)相应隶属度函数组成的序对,即: