资源是可以掠夺的,要么永远缩在后面用那怯弱的目光看着别人在舞台上光彩夺目,要么咬着牙狠狠的提升自己的实力,在将来的某一天一鸣惊人,受万众瞩目。——《全职法师》
模型 | 说明 |
---|---|
g ( x , y ) = E H [ f ( x , y ) ] g(x, y)=E_H[f(x, y)] g(x,y)=EH[f(x,y)] | f ( x , y ) f(x , y) f(x,y)为原始图像, g ( x , y ) g(x ,y) g(x,y)为增强后的图像, E H E_H EH为增强操作,仅定义在每个像素点 ( x , y ) (x, y) (x,y)上。 |
操作类型 | 操作 | 说明 |
---|---|---|
像素点操作 | g ( x , y ) = P x y [ f ( x , y ) ] g(x, y)=P_{xy}[f(x , y)] g(x,y)=Pxy[f(x,y)] | 根据单个像素的灰度,或者像素的位置来改变该像素的灰度。 |
几何操作 | ( x ′ , y ′ ) = M ( x , y ) (x', y')=M(x, y) (x′,y′)=M(x,y) | 仅根据一个像素的位置, M M M为几何隐射函数。 |
操作 | 说明 |
---|---|
t = E H [ s , n ( S ) ] t=E_H[s, n(S)] t=EH[s,n(S)] | 其中, E H E_H EH定义在像素 ( x , y ) (x,y) (x,y)的某个邻域上, s s s, t t t分别为原始图像 f f f和结果图像 g g g在 ( x , y ) (x, y) (x,y)初的灰度值, n ( s ) n(s) n(s)为原始图像 f f f在以 ( x , y ) (x, y) (x,y)为中心的领域内像素的灰度值。 |
对图像进行的算术运算是逐像素进行的,即两幅图像的对应位置的像素间进行算术运算。
原理:按照某种映射规则或变换函数,将图像中的每个像素点的灰度值转化成另一灰度值。
名称 | 作用 | 模型描述 | 表达式 |
---|---|---|---|
图像求反 | 将原图灰度值翻转,黑变白、白变黑。 | 假设原始图像任意像素点的灰度值为 s s s,经过灰度映射后的灰度值为 t t t,且灰度映射前后的灰度值取值范围为 [ 0 , L − 1 ] [0 , L-1] [0,L−1] | t = ( L − 1 ) − s t=(L -1) - s t=(L−1)−s |
分段线性增强 | 增强感兴趣的灰度区域,相对抑制不感兴趣的灰度区域。 | 利用分段函数增强图像细节之间的对比度。 | |
对数变换 | 原图动态范围太大,超出某些显示设备的允许动态范围,需要压缩其动态范围。 | 常采用对数变换实现动态范围的压缩。 | t = C l o g ( 1 + ∣ s ∣ ) t=Clog(1 + \vert s \vert) t=Clog(1+∣s∣) |
幂律(伽马)变换 | 与对数变换类似,部分 γ \gamma γ值的幂律曲线将较窄范围的暗色输入值映射为较宽范围的输出值;相反地,对于输入高灰度值也成立。 | C C C和 γ \gamma γ为正常数,注意 γ > 1 \gamma>1 γ>1和 γ < 1 \gamma<1 γ<1的幂律变换效果完全相反。 | t = c × s γ t=c\times s^{\gamma} t=c×sγ |
灰度切割 | 增强特定范围的对比度,用来突出图像中特定灰度范围的亮度。 | 对感兴趣的灰度级以较大的灰度值显示,其它的为较小的灰度级显示。 | t = { t 2 S 1 ≤ S ≤ S 2 t 1 其 他 t=\begin{cases}t_2 & \text S_1 \leq S \leq S_2 \\t_1 & \text 其他 \end{cases} t={t2t1S1≤S≤S2其他 |
对感兴趣的灰度级以较大的灰度值显示,其它不变。 | t = { t 2 S 1 ≤ S ≤ S 2 S 其 他 t=\begin{cases}t_2 & \text S_1 \leq S \leq S_2 \\S & \text 其他 \end{cases} t={t2SS1≤S≤S2其他 | ||
阈值化处理 | 阈值化处理,也即阈值变换,目的在于将感兴趣的物体从背景中分离出来。 | 阈值化处理需要指定一个阈值 t h r e s h o l d threshold threshold,根据这个阈值修改图像的像素值,最终产生一个黑白图像。 | t = { 0 S < S 1 L − 1 S ≥ S 1 t=\begin{cases}0 & \text S < S_1 \\L-1 & \text S \geq S_1 \end{cases} t={0L−1S<S1S≥S1 |
位图切割 | 假设图像的像素由 8 8 8位(比特)表示其灰度值,则图像可以看成由 8 8 8个单独的1比特平面(简称为位面)组成,其范围从最低有效位的位面0 到最高有效位的位面7。每个位面均为二值图像,且位面图像中像素的灰度值等于相应有效位的取值。位面 0 0 0表示最低位面,仅包含图像中像素的最低位;位面 7 7 7表示最高位面,仅包含图像中像素的最高位。 | 将图像各像素的灰度值除以各有效位的权值 2 i 2^i 2i( i i i为有效位的序数,从0计数)。如果商的整数部分为奇数,则该灰度值在相应位面中映射为 1;如果商的整数部分为偶数,则映射为 0,即可得到每个位面的二值图像。 | t = { 1 f l o o r ( 像 素 值 / 2 i ) = 奇 数 ( i , 位 面 序 数 ) 0 f l o o r ( 像 素 值 / 2 i ) = 偶 数 t=\begin{cases}1 & \text floor(像素值/2^i)=奇数(i,位面序数) \\0 & \text floor(像素值/2^i)=偶数 \end{cases} t={10floor(像素值/2i)=奇数(i,位面序数)floor(像素值/2i)=偶数 |
知识点 | 说明 |
---|---|
说明 | 直方图是图像的一种统计表达,反映了图像中像素的灰度值的分布情况。 |
基本思想 | 把图像的直方图变换为均匀分布的形式,以此增强动态范围偏小的图像的反差,从而达到对比度增强。 |
p ( S k ) = n k n S k = k L − 1 , 0 ≤ S k ≤ 1 p(S_k)=\frac{n_k}{n} \ \ \ \ \ S_k=\frac{k}{L-1}, 0 \leq S_k \leq 1 p(Sk)=nnk Sk=L−1k,0≤Sk≤1
H ( k ) = ∑ i = 0 k n i H(k)=\sum_{i=0}^{k}n_i H(k)=i=0∑kni
H ( S k ) = ∑ i = 0 k p ( S i ) H(S_k)=\sum_{i=0}^{k}p(S_i) H(Sk)=i=0∑kp(Si)
直方图的均衡化用于增强动态范围偏小的图像的反差。直方图均衡化把原始图直方图变换为整个灰度范围内均匀分布的形式,使图中具有近似灰度且占有大量像素的区域的灰度范围展宽,使大区域中微小灰度变化显现出来。增加像素灰度值的动态范围,从而达到增强图像整体对比度的效果。
实现过程
说明:该函数 t k ′ = i n t [ ( L − 1 ) t k + 0.5 ] t_k'=int[(L - 1)t_k+0.5] tk′=int[(L−1)tk+0.5]是用户指定的需要的规定化的函数,主要用于得到特殊的增强功能。这个函数可以自行替换,只需要让替换后的公式符合 [ 0 , L − 1 ] [0, L-1] [0,L−1]的要求即可。
空域滤波器是在图像空间中借助模板进行邻域操作完成的。
滤波产生一个新像素,新像素的坐标等于邻域中心的坐标,像素的值是滤波操作的结果。
滤波器的中心访问输入图像中的每个像素,就生成了滤波后的图像。
如果在图像上执行的是线性操作,则称该滤波器为线性空间滤波器;反之,为非线性空间滤波器。
分类 | 作用 | 说明 |
---|---|---|
平滑线性滤波 | 模糊处理和减弱噪声。 | 带来图像边缘模糊的负面效应。 |
锐化滤波 | 减弱或者消除图像中的低频分量,但不影响高频分量。低频分量对应图像中灰度值缓慢变化的区域,因而与图像的整体特性(整体对比度和平均灰度值等)有关。 | 可使图像反差增加,边缘明显。增强被模糊的细节或者目标的边缘。 |
【模板卷积】使用大小为 m × n m×n m×n的滤波器对大小为 M × N M×N M×N的图像进行线性空间滤波,对于图像中的任意一点 ( x , y ) (x, y) (x,y),滤波器的响应 g ( x , y ) g(x, y) g(x,y)是滤波器系数与该滤波器包围的图像像素的乘积之和,可由下式表示: g ( x , y ) = ∑ s = − a a ∑ t = − b b w ( s , t ) f ( x + s , y + t ) , a = m − 1 2 , b = n − 1 2 , a ∈ N ∗ , b ∈ N ∗ g(x, y)=\sum_{s=-a}^a \sum_{t=-b}^b w(s, t)f(x+s, y+t), a=\frac {m-1}{2}, b=\frac {n-1}{2}, a\in N^*,b\in N^* g(x,y)=s=−a∑at=−b∑bw(s,t)f(x+s,y+t),a=2m−1,b=2n−1,a∈N∗,b∈N∗
其中, w ( s , t ) w(s, t) w(s,t)为滤波器系数,且滤波器中心系数 w ( 0 , 0 ) w(0, 0) w(0,0)对准位置为 ( x , y ) (x, y) (x,y)的像素。
注意:使用奇数尺寸的滤波器可简化索引,且更为直观,因为滤波器的中心落在整数值上。
统计排序滤波器是一种非线性空间滤波器。
统计排序滤波器的响应以滤波器包围的图像区域中所包含的像素的排序为基础,然后使用统计排序结果所决定的值代替中心像素的值。
统计排序滤波器具备优秀的去噪能力,而且比相同尺寸的线性平滑滤波器的模糊程度明显要低。
锐化处理的主要目的是突出图像中灰度的过渡部分
图像的锐化处理可以用空间微分来完成(微分算子的响应强度与图像在该点的突变程度成正比)。
分类 | 说明 | 公式 |
---|---|---|
基于一阶微分的锐化滤波器 | 在恒定灰度区域的一阶微分值为零;在灰度台阶或斜坡起点处一阶微分值非零;沿着斜坡的一阶微分值非零。 | ∂ f ∂ x = f ( x + 1 ) − f ( x ) , 一维离散函数f(x) \frac {\partial{f}}{\partial{x}}=f(x+1)-f(x) ,\text{一维离散函数f(x)} ∂x∂f=f(x+1)−f(x),一维离散函数f(x)如果是二维的数字图像f(x, y),可以沿着空间轴处理偏微分。 |
基于二阶微分的锐化滤波器 | 在恒定灰度区域的二阶微分值为零;在灰度台阶或斜坡的起点处二阶微分值非零;沿着斜坡的二阶微分值为零。 | ∂ 2 f ∂ 2 x = f ( x + 1 ) + f ( x − 1 ) − 2 f ( x ) , 一维离散函数f(x) \frac {\partial^2{f}}{\partial^2{x}}=f(x+1)+f(x-1)-2f(x),\text{一维离散函数f(x)} ∂2x∂2f=f(x+1)+f(x−1)−2f(x),一维离散函数f(x)如果是二维的数字图像f(x, y),可以沿着空间轴处理偏微分。 |
一阶微分处理通常会产生较宽的边缘,因为数字图像中对的边缘在灰度上类似于斜坡过渡,而沿着斜坡的一阶微分非零。二阶微分处理对细节有较强的响应(如细线和孤立点),通常产生由零分开的一个像素宽的双边缘。大多数应用中,对图像增强而言,因为二阶微分对细节的增强能力比一阶微分好。
在图像处理中,一阶微分是用梯度幅值来实现的。对于图像 f f f,在任意坐标 ( x , y ) (x, y) (x,y)上的梯度 ∇ f \nabla f ∇f定义为二维变量。
∇ f = [ G x G y ] T = [ ∂ f ∂ x ∂ f ∂ y ] T \nabla f=\left[ G_x \ G_y \right]^T=\left[ \frac{\partial {f}}{\partial {x}} \ \frac{\partial {f}}{\partial {y}} \right]^T ∇f=[Gx Gy]T=[∂x∂f ∂y∂f]T
梯度的幅值 ∣ ∇ f ∣ |\nabla f| ∣∇f∣定义为:
∣ ∇ f ∣ = G x 2 + G y 2 = ( ∂ f ∂ x ) 2 + ( ∂ f ∂ y ) 2 |\nabla f|= \sqrt{G_x^2+G_y^2} =\sqrt{\left(\frac{\partial {f}}{\partial {x}}\right)^2+\left(\frac{\partial {f}}{\partial {y}}\right)^2} ∣∇f∣=Gx2+Gy2=(∂x∂f)2+(∂y∂f)2
其实,在实际应用中,为了简化计算,采用绝对值替代平方和开方运算:
∣ ∇ f ∣ = ∣ G x ∣ + ∣ G y ∣ = ∣ ∂ f ∂ x ∣ + ∣ ∂ f ∂ y ∣ |\nabla f|= |G_x| + |G_y| =\left|\frac{\partial {f}}{\partial {x}}\right|+\left|\frac{\partial {f}}{\partial {y}}\right| ∣∇f∣=∣Gx∣+∣Gy∣=∣∣∣∣∂x∂f∣∣∣∣+∣∣∣∣∂y∂f∣∣∣∣
注意:所有的模板系数之和为零。
梯度值正比于邻近像素灰度值的差分,因此在图像变化缓慢区域,其值很小,而在轮廓等变化快的部分其值很大,这就是图像经过梯度计算可使其细节清晰从而达到锐化目的的实质。
拉普拉斯算子比较适用于改善因光线的漫反射造成的图像模糊。
数字图像 f ( x , y ) f(x, y) f(x,y)的拉普拉斯变换定义为: ∇ 2 f = ∂ 2 f ∂ x 2 + ∂ 2 f ∂ y 2 \nabla^2f=\frac {\partial^2f}{\partial x^2}+\frac {\partial^2f}{\partial y^2} ∇2f=∂x2∂2f+∂y2∂2f
因此:
∂ 2 f ∂ x 2 = f ( x + 1 , y ) + f ( x − 1 , y ) − 2 f ( x , y ) \frac {\partial^2f}{\partial x^2}=f(x+1,y)+f(x-1,y)-2f(x,y) ∂x2∂2f=f(x+1,y)+f(x−1,y)−2f(x,y)
∂ 2 f ∂ y 2 = f ( x , y + 1 ) + f ( x , y − 1 ) − 2 f ( x , y ) \frac {\partial^2f}{\partial y^2}=f(x,y+1)+f(x,y-1)-2f(x,y) ∂y2∂2f=f(x,y+1)+f(x,y−1)−2f(x,y)
综上可得:
∇ 2 f = [ f ( x + 1 , y ) + f ( x − 1 , y ) + f ( x , y + 1 ) + f ( x , y − 1 ) ] − 4 f ( x , y ) \nabla^2f=\left[ f(x+1,y)+f(x-1,y)+f(x,y+1)+f(x,y-1) \right]-4f(x,y) ∇2f=[f(x+1,y)+f(x−1,y)+f(x,y+1)+f(x,y−1)]−4f(x,y)
拉普拉斯算子模板:
拉普拉斯算子强调图片中灰度的突变,同时降低灰度慢变化的区域,使用拉普拉斯变换对图像进行增强的基本方法:
g ( x , y ) = { f ( x , y ) − ∇ 2 f 若 拉 普 拉 斯 模 板 中 心 系 数 为 负 f ( x , y ) + ∇ 2 f 若 拉 普 拉 斯 模 板 中 心 系 数 为 正 g(x, y)= \begin{cases}f(x,y)-\nabla^2f & \text 若拉普拉斯模板中心系数为负 \\f(x,y)+\nabla^2f & \text 若拉普拉斯模板中心系数为正 \end{cases} g(x,y)={f(x,y)−∇2ff(x,y)+∇2f若拉普拉斯模板中心系数为负若拉普拉斯模板中心系数为正
上述式子可以描述为:将原始图像和拉普拉斯图像叠加在一起,以增强原始图像的细节,同时又保护了原始图像的背景信息。