如果这篇博客帮助到你,可以请我喝一杯咖啡~
CC BY 4.0 (除特别声明或转载文章外)
概述:图像增强
- 图像增强是图像处理中最具吸引力(有趣)的领域
- 目的是提高图像在特定应用领域的视觉质量*
- 图像增强包括光滑、锐化、提取边缘、反转、去噪以及各种滤波等等处理。目的是经过处理后的图像更适合特定的应用(主要是主观的观察分析)
- 没有通用的理论和方法,主观评价为主
- 仍然有很多待解决的问题
- 共有两大类算法:空间域和频率域。
- 空间域指图像本身
- 空间域处理分灰度变换与空间滤波两类
背景
- 图像的表示:二维矩阵,矩阵的每一个元素对应一个像素,有位置(坐标)和灰度(元素的值)。
- 空间域图像增强的是直接对图像的像素进行操作,基本关系式可表示如下:$g(x,y)=T(f(x,y))$。其中$f(x,y)$是输入图像(原图像),$g(x,y)$是处理后的图像。$T$是作用在$f$上的一个算子,定义域是$(x, y)$的某个邻域。
- $T$也可以对数个图像进行操作(如求和等)。
- $(x, y)$的邻域可以是一个点。这时称作是灰度变换$s=T(r)$。
一些基本灰度变换
用于图像增强的某些基本灰度函数:线形、对数、幂次的
图像反转变换
- $s=L-1-r$
- 人眼的一个特点就是在背景相对光亮时对灰度层次有较好的分辨能力。
对数变换
- $s=c\log (1+r)$。
- $c$是常数,$r\ge 0$。
- 适合大范围的数据压缩。
- 任何具有对数函数曲线形状的变换都可以完成灰度的压缩和扩展功能。
幂次变换
- $s=cr^\gamma$(3.2.3)
- $c$和$\gamma$均为正常数。
- 当幂指数$\gamma$变化时,得到一系列不同的曲线,对应于不同效果的变换。这是和对数变换不同和方便的地方。
Some basic Gray level Transformation (cont.)
伽马校正
- 大量的图像设备如捕捉卡、打印机、数码相机以及显示装置的响应(输出)就对应一个幂函数,通常称这个幂函数的指数为「伽玛」(gamma)。纠正这个幂次响应的处理称为伽玛校正(gamma correction)。阴极射线管(CRT)装置中有一个电压-强度响应,这个响应就是指数$\gamma$变换范围在1.8~2.5的幂函数。
- 伽马校正对在计算机屏幕上精确显示图像也很重要。
- 幂函数还可以用于调整图像对比度。
- 在一般的图像处理软件中,几乎都有伽玛校正的功能。这个功能可用于调整图像的对比度。如果图像偏暗,有些低灰度值的细节被掩盖时,可考虑用指数$\gamma<1$的伽玛校正;反之,$\gamma>1$的校正对那些被「漂白」的细节会起作用。
- 对图像像素灰度的调整最好在象素值被量化到0~255的整数之前
分段线性变换
灰度切割
在图像中提高特定灰度的亮度
位图切割
8位灰度图象可以分割成8个位面。高位表示了重要的信息,低位给出了不同程度的细节
Histogram Processing(直方图处理)
图像直方图的概念
- 灰度级别为 [0, L-1]
- 数字图像直方图是离散函数$h(r_k)=n_k$,其中$r_k$是第k级灰度,$n_k$是图像中灰度级为$r_k$的像素个数。如果用图像中的像素总数(用n来表示)除它的每一个值,就得到一个归一化的直方图:$P(r_k)=\frac{n_k}{n}$
- 归一化直方图满足:$0\le P(r_k)\le 1,k=0,1,\ldots,L-1$,以及$\sum_kP(r_k)=1$
- 灰度直方图表示数字图像中每一个灰度级与其出现频数的统计关系。
直方图均衡化
直方图是图像处理领域中的一个重要工具,也可以用于图像增强。从前面的分析可知,一般情况下若是图像的直方图成均匀分布态势,则图像的对比度较高且有比较丰富的灰度色调。这就为我们提供了一种基于直方图的图像增强处理方法。也就是说为了达到好的图像效果,可寻求一种变换$s=T(r),0\le r\le L-1$,使得变换后的图像具有(尽可能)均匀分布的直方图。
通常, 这个变换必须满足下列条件:
- $T(r)$在区间$0\le r\le 1$上单值且单增
- $0\le r\le 1$时,$0\le T(r)\le 1$
看连续随机变量的情形: 注意$s=T(r)\to r=T^{-1}(s)$,若把s和r都看成是$[0,1]$区间的随机变量,$P_r(r)$和$P_s(s)$分别表示随机变量r和s的概率密度函数。由基本的概率统计理论,在一定的条件下,两个概率密度函数之间有如下关系:$P_s(s)=p_r(r)\left | \frac{dr}{ds}\right | $。 |
考虑如何寻找满足要求的函数变换。先看连续随机变量的情况。
定义图像处理中一个重要的变换函数:$s=T(r)=(L-1)\int_0^rp_r(w)dw$(r是级别)
容易证明 ,由该变换得到的随机变量s的概率密度函数满足:$p_s(s)=\frac{1}{L-1},0\le s\le L-1$(否则为0)
证明:由于$\frac{ds}{dr}=\frac{d(T(r))}{dr}=\ (L-1)\frac{d}{dr}\left[\int_0^rp_r(w)dw\right]=(L-1)p_r(r)$,因此有$=p_r(r)\left \frac{dr}{ds}\right =p_r(r)\left \frac{1}{(L-1)p_r(r)}\right =\frac{1}{L-1},0\le s\le L-1$
直方图均衡化方法用于图像增强有一个最大的特点:自动化。有强大的适应性强的功能。
数字图像下的直方图均衡化步骤
- 概率:$p_r(r_k)=\frac{n_k}{n}$,其中$k=0,1,\ldots,L-1$
- 累积分布函数:$P(r_k)=\sum_{j=0}^kp_r(r_j)=\sum_{j=0}^k\frac{n_j}{n}$,其中$k=0,1,\ldots,L-1$
- 变换函数(离散形式):$s_k=T(r_k)=(L-1)\sum_{j=0}^kp_r(r_j)=(L-1)\sum_{j=0}^k\frac{n_j}{n}$,其中$k=0,1,\ldots,L-1$
Problems
- Histogram equalization is not suitable for all images. For some images, the results are not satisfactory. Sometimes it even makes an image looks worse.
- 「Gray Level Jump」:If the proportion of a certain gray level in the original image is quite large, there will be a big difference between the two adjacent gray level in the result image and the display impression may be poor.
- 原因:对离散情形,我们无法得到类似连续情形的理论结果。反例亦的确存在。
直方图匹配(使输出图像有指定的直方图)
两幅图像比对前,通常要使其直方图形式一致
例如,同一场景在不同的光照条件下数字化为两幅图像,在比较前,可用这种变换。
问题:$f(D)_?H_A\to H_C$
例如: 输入图像A(x,y)的直方图已知,要将它变为输出图像C(x,y)的直方图(已知)形式,求变换?
直方图匹配计算
基本方法(利用连续情形推导离散数据的近似公式):
- 图像A均衡化后的直方图为:$s=T(r)=(L-1)\int_0^rp_r(w)dw$
- 图像C均衡化后的直方图为:$s=G(z)=(L-1)\int_0^zp_z(w)dw$
- 得到理论上的变换公式:$z=G^{-1}(s)=G^{-1}T(r)$
离散图像数据的近似公式
- 计算出原图的直方图,对$k=0,\ldots,L-1$定义
- 给出输出图像期望的直方图$p_z(z)$,并强令$v_k=G(z_k)=(L-1)\sum_{i=0}^kp_z(z_i)=s_k$
- 得到离散情形的变换公式$z_k=G^{-1}(T(r_k))=G^{-1}(s_k)$
在图像增强中使用直方图统计
引进图像灰度平均值和方差(n阶距的概念),设$p(r_i)=\frac{n_i}{n}$
则r的第n阶中心矩定义为:$\mu_n(r)=\sum_i=0^{L-1}(r_i-m)^np(r_i)$
其中,m是r的期望。
当 n=2为方差。
空间滤波基础
四种代数运算
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) 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) C(x, y)=~A(x,y)
对于图像的逻辑运算主要包括(按像素位)与、或、非。除了「非」之外,都需要在两幅以上图像之间进行。
算术运算主要指的是减法和加法,需要在多幅图像之间进行。
图像减法处理:其主要作用就是增强两幅图之间的差异
图像平均处理:主要用于去除图像的随机噪声
理论背景
空间滤波机理
- 滤波的概念来自信号处理中的傅里叶变换
- 空间滤波指的是直接对图像像素进行处理的操作
- 大致分为线性和非线性两种情形
- 对像素灰度值的调整要利用该像素周围的像素信息
- 滤波器(filter)的概念。滤波器有时也叫掩模(mask)、核(kernel)、模板(template)或窗(window)
空间域线性滤波的基本公式
$g(x,y)=\sum_{s=-a}^a\sum_{t=-b}^bw(s,t)f(x+s,y+t)$
其中为滤波器的系数,也叫掩模(mask)系数。而a和b给出了滤波器的大小,常见的情况是a=b是一个奇整数,例如1、3或者5。