文章目录
4.1.1 图像增强的点运算
图像增强:采用一系列技术改善图像的视觉效果,或将图像转换成一种更适合于人或机器进行分析和处理的形式。
图像增强主要方法:(按照图像的作用域)
- 空间域增强:直接对图像各像素进行处理;
- 频率域增强:对图像经傅里叶变换后的频谱成分进行处理,然后逆傅里叶变换得到需要的图像。
目的
第一、改善图像的视觉效果
第二、突出图像中感兴趣的信息,抑制不需要的信息,来提高图像的使用价值;
第三、转换为更适合于人或机器分析处理的形式;
第四、增强后的图像并不一定保真。
应用广泛:
军事,增强红外图像提取感兴趣的敌军目标;;
医学应用中,增强X射线所拍摄的患者脑部、胸部图像确定病症的准确位置;
农业应用中,增强遥感图像了解农作物的分布;
在交通应用中,对大雾天气图像进行增强,加强车牌、路标等重要信息进行识别;
在数码相机中,增强彩色图像可以减少光线不均、颜色失真等造成的图像退化现象。
主要方法:对比度、图像域、空间域增强。
一、对比度增强
扩大图像中感兴趣特征的目标:
方法:
灰度变换法:线性变换、对数变换、指数变换。
直方图调整法:直方图均衡化、直方图规定化。
1.1 对比度增强-灰度变换
灰度变换是图像增强的重要手段之一,通过调整图像的灰度动态范围或调整图像的对比度对图像进行增强。(对比度通俗来说就是明暗的对比程度,所以可以通过调整图像的灰度范围对图像进行增强。)
1)线性变换
令图像f(i,j)的灰度范围为[a,b],线性变换后图像g(i,j)的范围为[a’,b’],这个图是一个线性变化,
得到g(i,j)与f(i,j)之间的关系式:
g
(
i
,
j
)
=
a
′
+
b
′
−
a
′
b
−
a
(
f
(
i
,
j
)
−
a
)
g(i,j)=a'+\frac{b'-a'}{b-a}(f(i,j)-a)
g(i,j)=a′+b−ab′−a′(f(i,j)−a)
1.1 对比度增强-灰度变换
例子:
如果图像生成时存在曝光不足或过度的情况,灰度图像可能会局限在一个很小的范围内,在显示器上看到的是个模糊不清、似乎没有什么灰度层次的图像。
对曝光不足的图像用线性变换对图像每一个像素灰度作线性拉伸(右图)。可有效的改善图像视觉效果。
2)分段线性变换
如果只对图像中部分目标感兴趣,这时候需要突出感兴趣目标所在的灰度区间,抑制不感兴趣的灰度区间,分段线性变换可以解决这类问题。
设原图像f(x,y)在[0,
M
f
M_f
Mf],感兴趣目标的灰度范围在[a,b],要把这个灰度范围拉伸到[c,d],可以得到对应的分段线性变化表达式:
g
(
x
,
y
)
=
{
(
c
/
a
)
f
(
x
,
y
)
0
≤
f
(
x
,
y
)
≤
a
[
(
d
−
c
)
/
(
b
−
a
)
]
[
f
(
x
,
y
)
−
a
]
+
c
a
≤
f
(
x
,
y
)
<
b
[
(
M
g
−
d
)
/
(
M
f
−
b
)
]
[
f
(
x
,
y
)
−
b
]
+
d
b
≤
f
(
x
,
y
)
≤
M
f
g(x,y) = \begin{cases} (c/a)f(x,y) & 0 \leq f(x,y) \leq a \\ [(d-c)/(b-a)][f(x,y)-a]+c & a \leq f(x,y)<b \\ [(M_g - d)/(M_f-b)][f(x,y)-b]+d & b \leq f(x,y) \leq M_f \\ \end{cases}
g(x,y)=⎩⎪⎨⎪⎧(c/a)f(x,y)[(d−c)/(b−a)][f(x,y)−a]+c[(Mg−d)/(Mf−b)][f(x,y)−b]+d0≤f(x,y)≤aa≤f(x,y)<bb≤f(x,y)≤Mf
从表达式和图可以看出,在[0,a)和(b,
M
f
M_f
Mf]灰度区间内图像是被压缩的。
3)非线性灰度变换
与线性变换不同非线性变换使用非线性函数作为映射函数,如对数函数、指数函数等,实现对图像灰度的非线性变换。
使用对数函数作为图像的映射函数,公式如下:
g
(
i
,
j
)
=
a
+
l
n
[
f
(
i
,
j
)
+
1
]
b
∗
l
n
c
g(i,j) = a + \frac {ln[f(i,j) +1]}{b*lnc}
g(i,j)=a+b∗lncln[f(i,j)+1]
式子里的a、b、c是用来调整曲线位置和形状的参数。从图上可以看出,对数变换对图像的地灰度区有较大拉伸,对高灰度区压缩,——这样的灰度分布与人的视觉特性相匹配。
指数变换用指数函数作为图像的映射函数,公式如下:
g
(
i
,
j
)
=
b
c
[
f
(
i
,
j
)
−
a
]
−
1
g(i,j) =b^{c[f(i,j)-a]}-1
g(i,j)=bc[f(i,j)−a]−1
式子里的a、b、c是用来调整曲线位置和形状的参数。从图上可以看出,指数变换对图像的灰度区间有较大的拉伸。
4.1.2 直方图均衡化
直方图修正法
灰度直方图的概念
- 图像的灰度直方图用来反映数字图像中每一灰度级与这个灰度级出现频率之间的关系,能描述图像的概貌。
- 使用修改图像的直方图对提箱进行增强是一种实用、有效的处理技术。
- 直方图修正法包括直方图均衡化及直方图规定化。
- 所谓直方图均衡化是将原图像通过某种变换,得到一幅灰度直方图均匀分布的新图像。
- 下图中左图图像的灰度直方图经变换后变成右图的灰度均匀分布的直方图。
- 先讨论连续变化图像的均衡化问题:然后推广到离散的数字图像上。
- 假设用r表示归一化的原图像灰度;用s表示经过直方图修正后的图像灰度。即
0 ≤ r , s ≤ 1 0 \leq r, s\leq 1 0≤r,s≤1 - 在[0,1]区间内的任一个r值,都可产生一个s值,且:
s = T ( r ) s = T(r) s=T(r)
T ( r ) T(r) T(r)为变换函数,满足下列两个条件:
- 在 0 ≤ r ≤ 1 0\leq r\leq 1 0≤r≤1内 T ( r ) T(r) T(r)为单调递增函数;
- 在 0 ≤ r ≤ 1 0\leq r\leq 1 0≤r≤1内,有 0 ≤ T ( r ) ≤ 1 0\leq T (r) \leq1 0≤T(r)≤1;
条件1保证灰度级从黑到白的次序不变;
条件2确保映射后的像素灰度都在允许的范围内。
反变换关系为:
r
=
T
−
1
(
s
)
r=T^{-1}(s)
r=T−1(s)
T
−
1
(
s
)
T^{-1}(s)
T−1(s)对s同样满足上述两个条件。
从概率论理论我们知道,如果已知随机变量r的概率密度为
p
r
(
r
)
p_r(r)
pr(r)可以由
P
r
(
r
)
P_r(r)
Pr(r)求出。
假设随机变量s分布函数用
F
s
(
S
)
F_s(S)
Fs(S)表示,根据分布函数的定义,有:
F
s
(
s
)
=
∫
−
∞
s
P
s
(
s
)
d
s
=
∫
−
∞
r
P
r
(
r
)
d
r
F_s(s)=\int^s_{-\infty}P_s(s)ds=\int^r_{-\infty}Pr(r)dr
Fs(s)=∫−∞sPs(s)ds=∫−∞rPr(r)dr
4.1.2 直方图均衡化
利用密度函数是分布函数的导数的关系,等式两边对s求导,得到:
P
s
(
s
)
=
d
d
s
[
∫
−
∞
r
P
r
(
r
)
d
r
]
=
P
r
d
r
d
s
=
p
r
d
d
s
[
T
−
1
(
s
)
]
(
公
式
一
)
P_s(s)=\frac{d}{ds}[\int^r_{-\infty}P_r(r)dr]=P_r\frac{dr}{ds}=p_r\frac{d}{ds}[T^{-1}(s)] (公式一)
Ps(s)=dsd[∫−∞rPr(r)dr]=Prdsdr=prdsd[T−1(s)](公式一)
公式一可以说明直方图修正技术的基础:即可以通过变换函数
T
(
r
)
T(r)
T(r)控制原图像灰度级的概率密度函数,得到输出图像的概率密度函数,因此可以改善原图像的灰度层次。
如果从人眼视觉特性来考虑,一幅图像的直方图如果是均匀分布的,即
P
s
(
s
)
=
k
P_s(s)=k
Ps(s)=k(归一化后k=1)时,该图像色调给人的感觉比较协调。所以将原图像的直方图均衡化后,可以满足人眼的视觉要求。
求
T
(
r
)
T(r)
T(r)?
所以直方图修正就是要找到变换函数
T
(
r
)
T(r)
T(r);
因为归一化假定:
P
s
(
s
)
=
1
P_s(s)=1
Ps(s)=1
由公式一得到:
d
s
=
p
r
(
r
)
d
r
ds = p_r(r)dr
ds=pr(r)dr
两边积分得:
s
=
T
(
r
)
=
∫
0
r
p
r
(
r
)
d
r
(
公
式
二
)
s = T(r) = \int^r_0{p_r(r)dr} (公式二)
s=T(r)=∫0rpr(r)dr(公式二)
即变换函数为r的累积直方图函数。
对于离散的数字图像,用频率代替概率,变换函数
T
(
r
k
)
T(r_k)
T(rk)的离散形式可表示为:
S
k
=
T
(
r
k
)
=
∑
j
=
0
k
p
r
(
r
j
)
=
∑
j
=
0
s
n
j
n
S_k=T(r_k)=\displaystyle\sum^{k}_{j=0}p_r(r_j)=\displaystyle\sum^{s}_{j=0}\frac{n_j}{n}
Sk=T(rk)=j=0∑kpr(rj)=j=0∑snnj
公式表明,均衡后各像素的灰度值
S
k
S_k
Sk可直接由原图像的直方图算出来。
例 假定有一幅总像素为n = 64x64的,灰度级数为8,各灰度级分布列于表中。对其进行均衡化,计算过程如下:
若在原图像第一行上连续8个像素的灰度值分别为:0,1,2,3,4,5,6,7,则均衡后,他们的灰度值为多少?
4.2.1 图像增强-图像的空间域平滑
图像平滑也称为图像去噪,是为了抑制图像噪声改善图像质量进行的处理。这种噪声可能是在图像获取和传输等过程中造成的,噪声会使图像恶化,质量下降,图像模糊,特征淹没,对图像分析很不利。
几种空间域的图像平滑方法
- 邻域平均法
- 超限像素平滑法
- 有选择保边缘平滑法
- 中值滤波法
1.邻域平均法
这种方法直接在空间上进行平滑处理。
思想:
假设图像由许多**灰度恒定的小块组成,相邻的图像之间存在很高的空间相关性,而噪声则是统计独立的。**所以可以用领域内各像素的灰度平均值代替像素原来的灰度值,实现图像的平滑。
假设有一幅NxN的图像f(x,y),若平滑图像为g(x,y),那么我们有:
g
(
x
,
y
)
=
1
M
∑
i
,
j
∈
s
f
(
i
,
j
)
(4.2-1)
g(x,y)=\frac{1}{M}\displaystyle\sum_{i,j\in s}f(i,j) \tag{4.2-1}
g(x,y)=M1i,j∈s∑f(i,j)(4.2-1)
公式中:x,y =0,1,…,N-1;
s是(x,y)像素领域内像素的集合;
M表示集合s内像素的个数。
**所以:**领域平均法是把当前像素邻域内各像素的灰度平均值作为像素的输出值,用这种方法进行图像去噪。
例如,3x3邻域平均法,对像素(m,n),其邻域像素如图中黄色所示:
其邻域平均法的公式如下:
g
(
m
,
n
)
=
1
9
∑
i
∈
Z
∑
j
∈
Z
f
(
m
+
i
,
n
+
j
)
g(m,n)=\frac{1}{9}\displaystyle\sum_{i\in Z}\displaystyle\sum_{j\in Z}f(m+i,n+j)
g(m,n)=91i∈Z∑j∈Z∑f(m+i,n+j)
这种计算的作用相当于用下面的模板与图像做卷积。
我们假设图像中的噪声是随机不相关的加性噪声,窗口内各点的噪声是独立同分布的,经过上面的平滑后,信号与噪声的房差比可望提高M倍。
方法特点:
算法简单,但这种方法有一个缺点,就是在降低噪声的同时会使图像产生模糊,特别是在边缘和细节处。而且邻域越大,去噪能力增强的同时模糊程度越严重。
为了克服简单局部平均法的缺点,目前提出了许多保边缘、细节的局部平均算法。
2. 超限像素平滑法
这种方法对邻域平均法稍加改进。方法把
f
(
x
,
y
)
f(x,y)
f(x,y)和邻域平均得到的g(x,y)值做一个差的绝对值运算,再与一个选定的阈值进行比较,用比较结果决定像素(x,y)的灰度值g’(x,y)。表示式如下:
方法特点:
这种方法对抑制椒盐噪声比较有效,对保护仅有微小灰度差的细节和纹理也有效。
3.有选择保边缘平滑法
这种方法用方差来测度区域的灰度均匀性。如果区域含有尖锐1的边缘,他们的灰度方差就会很大,如果不含边缘或灰度均匀的区域,方差就笑,所以最小方差所对应的区域就是灰度最均匀区域。这种平滑方法既能消除噪声,又不会破坏区域边界的细节。
另外,五边形和六边形在(x,y)处都有锐角,这样,即使像素(x,y)位于一个复杂形状区域的锐角处,也能找到均匀的区域。从而在平滑时既不会使尖锐边缘模糊,也不会破坏边缘形状。
4.2.2 中值滤波法
中值滤波法用一个滑动窗口,对窗口内的像素灰度值排序,用中值代替窗口中心像素的灰度值,是一种非线性的像素平均法。
例:采用1x3窗口进行中值滤波
原图像为: 2 2 6 2 1 2 4 4 4 2 4
处理后为: 2 2 2 2 2 2 4 4 4 4 4
此方法对脉冲干扰及椒盐噪声的抑制效果好,在抑制随机噪声的同时能有效保护边缘少受模糊。但它对点、线等细节较多的图像却不太合适。
最重要的环节:
选择**窗口尺寸的大小。通常很难事先就确定出最佳的窗口尺寸,需通过从小窗口到大窗口的中值滤波试验,**再从中选取最合适尺寸的窗口。
一维中值滤波的概念很容易可以推广到二维。一般来说,二维中值滤波器比一维滤波器更能抑制噪声。
二维中值滤波器的窗口形状可以有很多种,如线状、方形、十字形、圆形、菱形等。
不同形状的窗口会 产生不同的滤波效果,在使用的时候需要根据图像的内容和不同的要求进行选择。经验表明方形或圆形窗口事宜于外轮廓线较长的物体图像,而十字形窗口对有尖顶角状的图像效果好。
4.3.1 图像的空间域锐化