直方图
数字图像定义:以空间位置(x,y)为自变量的二维函数f(x,y)
不同灰度级分布构成不同图像
统计灰度级出现的次数
灰度直方图定义
灰度级的函数, 具有该灰度级的像素个数。
h
(
r
k
)
=
n
k
h(r_k)=n_k
h(rk)=nk
r
k
r_k
rk为灰度级,
n
k
n_k
nk为该灰度级的像素个数。
- 灰度直方图反映了图像灰度的分布
- 直方图归一化(Histogram Normalization)
问题:数据集中在0处,图像全体会偏暗,数据集中在255附近,会偏亮。如果直方图有所偏向,那么动态范围就会较低。为了使人能更清楚的看见图片,让直方图归一化,平坦化十分必要
方法:这种归一化直方图的操作被称作灰度变换(grayscale Transformation)。像素点从[c,d]转换到[a,b]的过程由下式定义。此处将图片的灰度扩展到[0,255]范围
x o u t = { a x i n < a b − a d − c ∗ ( x i n − c ) c < = x i n < = d b d < x i n xout=\begin{cases} a & xin<a \\ \frac{b-a}{d-c}*(xin-c) & c<=xin<=d \\ b & d<xin \end{cases} xout=⎩ ⎨ ⎧ad−cb−a∗(xin−c)bxin<ac<=xin<=dd<xin
直方图均衡是将输入图像中的灰度概率分布p®转换成均匀概率分布
p
(
s
)
=
1
L
−
1
p(s)=\frac{1}{L-1}
p(s)=L−11。
f
(
x
)
=
{
b
a
a
<
x
<
b
0
e
l
s
e
f(x)=\begin{cases} \frac{b}{a} & a<x<b \\ 0 & else \end{cases}
f(x)={ab0a<x<belse
为此,选择的变换函数为:
s
=
T
(
r
)
=
(
L
−
1
)
∫
0
r
p
r
(
ω
)
d
ω
s=T(r)=(L-1)\int_0^rp_r(\omega)d\omega
s=T(r)=(L−1)∫0rpr(ω)dω
离散空间
变换函数
s
k
s_k
sk为
s
k
=
T
(
r
k
)
=
(
L
−
1
)
∑
j
=
0
k
p
r
(
r
j
)
=
L
−
1
M
N
∑
j
=
0
k
n
j
s_k=T(r_k)=(L-1)\sum_{j=0}^kp_r(r_j)=\frac{L-1}{MN}\sum_{j=0}^kn_j
sk=T(rk)=(L−1)j=0∑kpr(rj)=MNL−1j=0∑knj
M、N为图像的宽高。k为灰度级,
k
∈
[
0
,
L
−
1
]
k\in [0, L-1]
k∈[0,L−1]。
n
j
n_j
nj为当前灰度级的像素点数量。
利用上门的变换函数计算出的灰度值可能是小数,因此需要最近取整。
直方图均衡,用于人脸识别前的图像增强,增强识别成功的效率
空间域滤波
平滑空间滤波器
低通滤波器—均值滤波,用于模糊处理和降低噪声。但降低了图像灰度的尖锐变换。
中值滤波
统计排序滤波器—中值滤波,对椒盐噪声处理非常有效。
锐化空间滤波器
常用梯度算子
拉普拉斯算子
Laplace算子
- 对噪声敏感
- 不能检测边缘的方向----各向同性微分算子
- 零交叉性质进行边缘定位
Sobel算子 - 对噪声敏感度较低
- 可以检测边缘的方向
- 无法进行边缘定位
Retinex滤波