空间域图像增强
图像增强
什么是图像增强
- 图像增强 是要突出图像中的某些信息,同时削弱或去除某些不需要信息的一种处理方法,以得到对具体应用来说视角效果更“好”,或更”有用“的图像的技术。
为什么要增强图像
- 图像在传输或者处理过程中会引入噪声或使图像变模糊,从而降低了图像质量,甚至淹没了特征,给分析带来了困难。
目的:
- 改善图像视觉效果,提高清晰度;
- 改善(增强)感兴趣部分(如滤除噪声、锐化目标物边缘),以提高图像可懂度。
方法:
- 空间域处理:
- 点处理(灰度变换、直方图均衡等);
- 邻域处理(平滑和锐化等);
- 彩色增强(伪/假/真彩色增强)
- 频率域处理:
- 低通滤波、
- 高通锐化、
- 同态增析等
注意:
- 图像信息有损无增;
- 图像增强一般是一个复杂图像处理系统的主要的“预处理”环节。
分类:
- 空间域增强:对图像的像素直接处理;
g
(
x
,
y
)
=
T
[
f
(
x
,
y
)
]
g(x,y) = T[f(x,y)]
g(x,y)=T[f(x,y)]
- f(x,y)是原图像;g(x,y)是处理后的图像
- T是作用于f的操作,定义在(x,y)的邻域
- 频率域增强:修改图像的傅立叶变换
点运算
g ( x , y ) = s = T [ f ( x , y ) ] = T [ r ] g(x,y)=s=T[f(x,y)]=T[r] g(x,y)=s=T[f(x,y)]=T[r]
- r,s分别是f(x,y)和g(x,y)在点(x,y)的灰度级
T的三种基本类型:
- 线性(正比、反比); 图像反转: s = L − 1 − r s=L-1-r s=L−1−r
- 对数(对数、反对数); 对数变换: s = c l o g ( 1 + r ) s=clog(1+r) s=clog(1+r)
- 幂次(n次幂和n次方根);幂次变换: s = c r n s=cr^n s=crn
- 反转变换: s = ( L − 1 ) − r s=(L-1)-r s=(L−1)−r
[0,L-1]为图像的灰度级。作用:黑的变白,白的变黑。
- 对数变换: s = c l o g ( 1 + r ) s=clog(1+r) s=clog(1+r)
c是常数;
有时原图的动态范围太大,超出某些显示设备的允许动态范围,如直接使用原图,则一部分细节可能丢失;
解决办法是对原图进行灰度压缩,如对数变换。
- 幂次变换: s = c r n s=cr^n s=crn
c、n是正常数;
n<1提高灰度级,在正比函数上方,使图像变量;
n>1降低灰度级,在正比函数下方,使图像变暗。
对比度拉伸:
提高图像处理时灰度级的动态范围;
图像二值化:
灰度级切片:
- 关心范围指定较高值,其他指定较低值
特点:突出目标轮廓,消除背景细节
- 关心范围指定较高值,其它保持不变
特点:突出目标轮廓,保留背景细节
位平面切片:
假设图像中每个像素的灰度级是 256 ,这可以用8位来表示。
图像是由8个1位平面组成,范围从位平面0到位平面7。
其中,位平面0包含图像中像素的最低位,位平面7包含像素的最高位。
把数字图像分解成为位平面,每一个位平面可以处理为一幅二值图像。
- 通过对特定位提高亮度,改善图像质量
- 较高位(如前4位)包含大多数视觉重要数据
- 较低位(如后4位)对图像中的微小细节有作用
- 分解为位平面,可以分析每一位在图像中的相对重要性
代数运算
- 算术运算:加、减、乘
- 逻辑运算:非、与、或、异或
加法运算的定义:
C
(
x
,
y
)
=
A
(
x
,
y
)
+
B
(
x
,
y
)
C(x,y)=A(x,y)+B(x,y)
C(x,y)=A(x,y)+B(x,y)
举例:
- 去除叠加性噪声:
对于原图像f(x,y),有一个噪声图像集 { g i ( x , y ) } , i = 1 , 2 , . . . , N \{g_i(x,y)\},i=1,2,...,N {gi(x,y)},i=1,2,...,N
其中: g i ( x , y ) = f ( x , y ) + h i ( x , y ) g_i(x,y)=f(x,y)+h_i(x,y) gi(x,y)=f(x,y)+hi(x,y);假设噪声 h i ( x , y ) h_i(x,y) hi(x,y)均值为0,且互不相关,
N个图像的均值定义为:
g
(
x
,
y
)
=
(
1
/
N
)
∗
(
g
0
(
x
,
y
)
+
g
1
(
x
,
y
)
+
.
.
.
+
g
N
(
x
,
y
)
)
g(x,y)=(1/N)*(g_0(x,y)+g_1(x,y)+...+g_N(x,y))
g(x,y)=(1/N)∗(g0(x,y)+g1(x,y)+...+gN(x,y))
期望值:
E
(
g
(
x
,
y
)
)
=
f
(
x
,
y
)
E(g(x,y))=f(x,y)
E(g(x,y))=f(x,y)
- 生成图像叠加性效果:
对于两个图像f(x,y)和h(x,y)的均值有:
g
(
x
,
y
)
=
(
1
/
2
)
f
(
x
,
y
)
+
(
1
/
2
)
h
(
x
,
y
)
g(x,y)=(1/2)f(x,y)+(1/2)h(x,y)
g(x,y)=(1/2)f(x,y)+(1/2)h(x,y)
推广这个公式为:
g
(
x
,
y
)
=
a
f
(
x
,
y
)
+
b
h
(
x
,
y
)
g(x,y)=af(x,y)+bh(x,y)
g(x,y)=af(x,y)+bh(x,y)
其中a+b=1。
减法的定义:
C
(
x
,
y
)
=
A
(
x
,
y
)
−
B
(
x
,
y
)
C(x,y)=A(x,y)-B(x,y)
C(x,y)=A(x,y)−B(x,y)
举例:
- 显示两幅图像的差异,检测同一场景两幅图像之间的变化, 如:视频中镜头边界的检测
- 去除不需要的叠加性图案
- 图像分割:如分割运动的车辆,减法去掉静止部分,剩余的是运动元素和噪声
乘法的定义:
g
(
x
,
y
)
=
f
(
x
,
y
)
∗
h
(
x
,
y
)
g(x,y)=f(x,y)*h(x,y)
g(x,y)=f(x,y)∗h(x,y)
举例:
- 图像的局部显示(用二值模版图像与原图像做乘法)
注意:在matlab中要用点乘运算。