参考书目 Digital Image Processing by Rafael C. Gonzalez, Richard E. Woods, 3rd Edition
第一章 数字图像的采集方式以及特性
1.1 图像概述
图像是一个二维亮度函数;
模拟图像:一幅活动、彩色、立体的图像——$I=f(x,y,z,λ,t)$,三维空间+波谱上+时间上连续,想象中的虚拟图像
数字图像:数字图像是由模拟图象数字化得到的,以像素为基本元素、可以用数字计算机或数字电路存储和处理的图像。
把一幅图画分割成如图所示的一个个小区域(像素),并将各小区域灰度用整数来表示,形成一幅点阵式的数字图像。它包括采样和量化两个过程。像素的位置和灰度就是像素的属性。
图像数字化
图像数字化:将模拟图像经过离散化之后,得到用数字表示的图像。
一幅模拟图像的坐标及幅度都是连续的,为了把它转换为数字形式,必须对坐标和幅度都作离散化操作。数字化坐标值称为采样,它确定了图像的空间分辨率;数字化幅度值称为量化,它确定了图像的幅度分辨率。
1.2.1图像数字化——采样
(1)图像的采样:将在空间上连续的图像转换成离散的采样点(即像素)集的操作
z=f(x,y), x∈[0,a], y∈[0,b], z∈[0,c]
$\rightarrow$ z=f(x,y), x=0,1,…,N-1,y=0,1,…,M-1, z=0,1,…,L-1
采样间隔太小,则增大数据量;太大,则会发生信息的混叠,导致细节无法辨认。
一维连续信号的采样
在工程中的许多信号,实际上都是连续信号,或者称为连续时间函数,记为x(t),t的取值是从$-\infty$ 连续变化到$+ \infty $ 。但是,用计算机处理这些信号,必须首先对连续信号进行采样,即按一定的时间间隔Ts进行取值: $$ 𝑥_𝑑 (𝑛)=𝑥(𝑛𝑇_𝑠) , 𝑛=…−1,0,1… $$ $T_s$为采样间隔,$ x_d (n)$为离散信号或时间序列
连续信号x(t)和频谱X(f)的具体关系为: $$ X(f)=\int _{−\infty}^\infty x(t)e^{−j2\pi ft} dt\\\\x(t)=\int _{−\infty}^\infty X(f)e^{j2\pi ft} df $$
一维空间采样的Nyquist条件:$X(f)$有截频$ f_c$,即当$|f|≥ f_c$时, $X(f)=0$;$T_s≤\frac{1}{2f_c}$ 或$2f_c≤f_s$
如果信号不是有限带宽信号,采样频率或采样间隔不满足Nyquist条件,就会产生混叠现象。
在满足Nyquist条件下,从离散信号$x(nT_s)$可恢复连续信号$x(t)$ $$ x(t)=\Sigma_{n=−\infty}^{+\infty}x(nT_s)sinc(\frac{\pi}{T_s} (t-nT_s)) $$
$sinc(x)=\frac{sinx}{x}$
二维连续图像信号的采样
设图像f(x,y)是一连续二维信号,其空间频谱$F(f_x,f_y )$在x方向具有截止频率$f_xc$ ,在y方向具有截止频率$f_yc$ 。所谓采样是对f(x,y)乘以空间采样函数: $$ s(x,y)=\Sigma_{i=−\infty }^{+\infty }∑_{j=−\infty }^{+\infty }\delta(x−i\Delta x,y−i\Delta y) $$ 式中Δx和Δy为x、y两个方向的采样间隔,上式为脉冲函数δ(x,y)沿x、y两个方向的展开。
//脉冲函数:
经过采样以后所得的信号为: $$ f_s (x,y)=f(x,y)∙ s(x,y)\\=∑_{i=−\infty }^{+\infty }∑_{j=−\infty }^{+\infty }f(i\Delta x,j\Delta y)\sigma(x−i\Delta x,y−j\Delta y) $$
二维Nyquist条件
为使采样以后的信号$f_s (x,y)$能完全恢复原来连续信号f(x,y) ,采样间隔Δx和Δy就必须满足$∆x≤1/(2f_{xc} ) ,∆y≤1/(2f_{yc})$,即在x和y方向的采样频率必须大于图像在x和y方向最高频率的两倍
二维信号重建
亚采样
(1)降低采样频率
(2)将按采样定理获得的图像再抽样,即每隔K个像素,保留1个像素,其余的丢掉,重构时用内插法恢复丢失的数据。256×256每隔2个像素,保留1个像素->128×128
1.2.2图像数字化——量化
L在3bit以下的量化,会出现伪轮廓现象(画面平场区域出现明显的类似于等高线的不连续过渡带,从而对于画面感观质量造成影响的现象)。
均匀量化:简单地在灰度范围内等间隔量化。
非均匀量化:对像素出现频度少的部分量化间隔取大,而对频度大的量化间隔取小。
1.3 数字图像基本要素
1.3.1基本要素
像素是数字图像最小的单位
图像尺寸——一幅数字图像矩阵的大小
像素坐标系——对图像分布进行二维空间采样
像数值—对单个像素灰度值进行数字化采样(k bits/pixel)
1.3.2图像质量
灰度:表示图像像素明暗程度的数值
灰度级——表明图象中不同灰度的最大数量
对比度=最大灰度值/最小灰度值 ——反映一幅图像中灰度方差的大小
1.3.3图像颜色:红、绿、蓝三基色
1.3.4图像的描述:灰度/黑白/彩色图像、链表、拓扑结构、距离
灰度图像
- 图像中每个像素的信息由一个量化的灰度级来描述,没有彩色信息。
- 当一幅图像有2k灰度级时,通常称该图像是k比特图像。
- 灰度图像像素的灰度级通常为8 Bits,即0~255。“0”表示纯黑色,“255”表示纯白色。
黑白图像(二值图像)
- 像素值为0、1。二值图像通常用于文字、线条图的扫描识别(OCR)和掩模图像的存储。
彩色图像
- 三维矩阵,可用M×N×3表示,M、N分别表示图像的行、列数,三个M×N的二维矩阵分别表示各个像素的R、G、B三个颜色分量。每个颜色分量的数据类型一般为8位无符号整型。
链表—描述目标物体的边界
拓扑结构——描述一组图形及其相互关系
距离—描述图像中像素之间的接近程度
欧氏、曼哈顿(城区)(坐标差绝对值相加)、棋盘(坐标差绝对值最大的那个)
1.3.5图像的矩阵特性:距离、邻域、临接、连通
邻域—描述与像素相邻的其他像素
邻接
像素间邻接的两个必要条件:①一个像素在另一个像素的邻域中;②两个像素的灰度值满足特定的相似准则。
令V表示关于邻接的灰度值集合(相似准则)。
①4-邻接 像素p和q的灰度值都属于V,且q在p的4-邻域集合**$N_4(p)$**中,则称像素*p*和*q*是4-邻接的。
②8-邻接 像素p和q的灰度值都属于V,且q在集合$N_8(p)$中,则称像素p和q是8-邻接的。
③m-邻接 像素p和q的灰度值都属于V,若满足下列条件之一:
•q在集合$N_4(p)$中;
•q在集合$N_D(p)$中(对角邻域),且集合$N_4(p)\cap N_4(q)$中的像素的灰度值不属于V。
则称像素p和q是m-邻接的。
像素间的通路
从坐标为$(x_0,y_0 )$的像素p到坐标为$(x_n,y_n )$的像素q的一条通路由像素序列组成对应坐标序列为:
$ (x_0,y_0 ) ,(x_1,y_1 ), ⋯,(x_i,y_i ) ⋯,(x_n,y_n ) $,这里$(x_i,y_i )$与$(x_{i-1},y_{i-1} )$相邻接,n为通路长度。
若$(x_0,y_0 )=(x_n,y_n )$则该通路是闭合通路。根据不同的邻接类型,可以得到不同的通路,如4-通路,8-通路和m-通路。
连通
若像素p和q之间存在着一条通路,则称p和q是连通的,即像素间的连通。反之,若两个像素间是连通的,那么至少存在一条通路,也可能存在多条通路。根据通路的类型,像素间的连通可分为4-连通,8-连通和m-连通。
1.3.6图像文件格式
每一种图像文件均有一个文件头,在文件头之后是图像数据。文件头的内容一般包括文件类型、版本号、文件大小等内容。各种图像文件的制作还涉及到图像文件的压缩方式和存储效率等。常用的图像文件存储格式主要有:BMP格式、JPEG格式、GIF格式、TIFF格式等。
BMP(bitmap)图像文件也称位图文件,其文件结构如下:
a) BITMAPFILEHEADER:BMP文件头或表头;b) BITMAPINFOHEADER:BMP文件信息头;
c) RGBQUAD:BMP文件调色板或位图信息;d) BITMAP DATA:BMP文件数据或位图阵列;
位图文件头长度为固定的54个字节,给出了文件的类型、大小和位图阵列的起始位置等信息。位图文件信息头基本上包含图像的所有信息,包括宽度、高度、每像素的位数、压缩方法、目标设备的水平和垂直分辨率等信息。位图文件调色板是BMP所包含的颜色表,接在BITMAPINFOHEADER结构之后含有位图中每种颜色的RGB信息。BMP文件数据是以连续行的形式存储的。
JPEG (Joint Photographic Experts Group)的文件后辍名为“.jpg”或“.jpeg”。有损压缩格式,支持24位颜色,并保留照片和其他连续色调图像中存在的亮度和色相的显著和细微的变化。
GIF (Graphics Interchange Format)的文件后缀名为“.gif”。GIF格式的特点是其在一个GIF文件中可以存多幅彩色图像,如果把存于一个文件中的多幅图像数据逐幅读出并显示到屏幕上,就可构成一种最简单的动画。
TIFF (Tag Image File Format)的文件后缀名为“.tif”或“.tiff”。TIFF文件一般可分为文件头、参数指针表、参数数据表的偏移。参数指针表由一系列参数块构成,它们描写图像的压缩种类、长度、彩色数、扫描分辨率等许多参数。参数数据表中存放的是实际参数数据。最后一部分是图像数据。
1.4 数字图像处理意义及内容
数字图像处理
(1)利用计算机对数字图像进行各种目的的处理
(2)将一幅图像变为另一幅经过加工的图像,图像到图像的过程
(3)将一幅图像转化为一种非图像的表示,分析、识别与理解的过程
目的
1.提高图像视觉质量,提供人眼主观满意或较满意的效果;2.提取目标某些特征,以便于后续分析或识别;3.图像压缩,便于存储和传输庞大的图像和视频信息。4.信息的可视化,以便于人们观察、分析、研究、理解大规模数据和许多复杂现象5.信息安全需要,如数字图像水印和图像信息隐藏
•数字图像处理是利用计算机的计算,实现与光学系统模拟处理相同效果的过程。
特点
(1)再现性好。数字化,存储,传输或复制不会退化图像质量.(2)处理精度高。灰度等级量化为16位(3)适用面宽。多种信息源:可见光,波谱(X射线,R射线,超声或红外)客观实体尺度:电子显微、航空、遥感、天文图像(4)灵活性高。线性处理,非线性处理。凡是可以用数学公式或逻辑关系来表示的一切运算均可用数字图像处理实现。
主要内容
(1)几何处理:坐标变换、图像放大、缩小、旋转、移动;多个图像的配准、全景畸变校正、扭曲校正;计算周长、面积、体积
(2)算数处理:对图像进行加减乘除运算,与、或等逻辑运算;主要针对像素医学图像的减影处理
(3)图像增强:突出图像中感兴趣的信息,去掉或削弱不感兴趣的信息,使其在特定的应用中更便于解释和识别提高图像质量(去除噪声、提高图像的清晰度);方法:灰度修正、平滑、几何校正、图像锐化、频域增强、维纳滤波、卡尔曼滤波…
(4)图像复原:去掉干扰和污染,恢复图像的本来面目;1)图像噪声:随机点、相干噪声(网纹干扰)2)模糊:透镜散光、相对运动3)遥感:大气流、云层遮挡;主要方法:维纳滤波、卡尔曼滤波、逆滤波、同态滤波等
(5)图像重建:从数据到图像的过程,CT、x-ray、NMR(核磁共振)、超声CT、ECT;•成像方法:代数法、迭代法、傅立叶反投影法、卷积三维重建-用于虚拟现实、科学可视化技术
(6)图像编码:运用图像信号的统计特性以及视觉的生理学和心理学特性实现高效编码 ;目的:I.减少数据存储空间II.降低数据率、减少传输带宽III.压缩信息、提取特征,以便识别
(7)图像识别:方法:统计识别(特征)、句法结构(结构基元)、模糊识别(模糊学习、人的思维方法)
(8)图像理解:利用客观世界的知识,使计算机进行联想、思考、推论,从而理解图像表现的内容(景物理解)
(9)图像分割:提取出感兴趣的对象,为进一步理解识别做准备;灰度阀值分割、基于纹理的分割、区域生长法
1.5 数字图像处理系统及应用
1.5.1数字图像特性:图像/显示分辨率/打印机分辨率 像素深度 位面数量
图像分别率:指组成一幅图像的像素密度,即图幅参数。单位:像素*像素
e.g.数码相机指标:640*480=307200,30万像素
显示分辨率:指显示屏上能够显示出的像素数目。例如,显示分辨率为640x480表示显示屏分成480行,每行显示640个像素。整个显示屏就含有307200个显像点。
打印机、扫描仪分辨率:dpi(display pixels/incj)每英寸显示的线数
像素深度:存储每个像素所用的位数,它也是用来度量图像的分辨率
位面数量:组成图像的像素矩阵维数。
1.5.2数字图像处理系统
图像采集系统将模拟图像转换成适合数字计算机处理的数字图像,包括1.数码摄像机:它通过接口电路与计算机连接,在有关软件的控制下将图像数据输入计算机2.数码照相机:与数码摄像机的区别在于没有连续获取图像的能力3.扫描仪:它可以将胶片上的摄影图像或纸质载体上的文字、图形、表格扫描成数字信息直接载入计算机
计算机执行数字图像处理;•安装有各种图像处理软件,如Ps,Matlab中的图像处理工具箱; 图像处理软件接受来自图像采集系统的数字图像并执行所需的操作,如图像增强、图像复原、图像压缩编码、图像分析等操作,最后输出处理结果
图像输出设备主要指喷墨打印机、激光打印机、图像监视器、视频拷贝仪等,它们的发展趋势是高速、真彩色
第二章 数字图像预处理方法
主要目的:
•消除图像中无关的信息,恢复有用的真实信息。
•增强有关信息的可检测性、最大限度地简化数据,从而改进特征提取、图像分割、匹配和识别的可靠性。
步骤:1.灰度化 2.去噪声
2.1 灰度化
图像灰度化的原理就是在RGB模型中,假定三个通道的值相等,然后用统一的灰度值表征该点的色彩信息,灰度值的范围是0到255。
像素点矩阵中的每一个像素点都满足下面的关系:R=G=B,此时的这个值叫做灰度值。
2.1.1灰度化主要方法
1)分量法:将彩色图像中的三分量RGB的亮度作为三个灰度图像的灰度值,可根据应用需要选取三种中的一种灰度图像。
2)最大值法:将彩色图像中的三分量亮度的最大值作为灰度图的灰度值。
3)平均值法:将彩色图像中的三分量亮度求平均得到一个灰度图。
4)加权平均法:根据重要性及其它指标,将三个分量以不同的权值进行加权平均。
由于人眼对绿色的敏感最高,对蓝色敏感最低。Gray=0.11B+0.59G+0.3R;OpenCV开放库所采用的灰度权值 Gray=0.072169B+0.715160G+0.212671R
2.1.2图像二值化
p二值化通用方法:选择某个阈值T,将原始图像变为二值图像:
当f(x,y)≥T时, f(x,y)=1
当f(x,y) ≤T时, f(x,y)=0
如同其他图像分割算法一样,没有一个现有方法对各种各样的图像都能得到令人满意的结果。
几种阈值确定办法:
1.全局二值化
目的:从多值的数字图像中直接提取出目标物体)设定一个全局的阈值T,用T将图像的数据分成两部分:大于T的像素群和小于T的像素群。将大于T的像素群的像素值设定为白色(或者黑色),小于T的像素群的像素值设定为黑色(或者白色)。
a) 取阀值为127(相当于0~255的中数),让灰度值小于等于127的变 为0(黑色),灰度值大于127的变为255(白色),这样做的好处是计算量小速度快,但是缺点也是很明显的,因为这个阀值在不同的图片中均为127,但是不同的图片,他们的颜色分布差别很大,所以用127做阀值,白菜萝卜一刀切,效果肯定是不好的。
b)计算像素点矩阵中的所有像素点的灰度值的平均值K。然后让每一个像素点与K一 一比较,小于等于K的像素点就为0(黑色)大于K的 像素点为255(白色),这样做比方法1好一些。但是使用平均值作为二值化阈值同样有个致命的缺点,可能导致部分对象像素或者背景像素丢失。二值化结果不能真实反映源图像信息。
c)使用直方图方法(也叫双峰法)来寻找二值化阀值直方图是图像的重要特质。直方图方法认为图像由前景和背景组成,在灰度直方图上,前景和背景都形成高峰,在双峰之间的最低,谷处就是阀值所在。取到阀值之后再一 一比较就可以了
直方图:表示数字图像中每一灰度级像素出现的频次(该灰度级的像素数目)。
$p(k)=n_{k }$或 $p(k)=\frac{n_{k }}{n}$ $n_{k}$:“图像中第k个灰度级的像素总数 “,$n$:图像的像素总数
直方图性质:1.无空间信息;2.直方图与图像一对多关系;3.可叠加性(全图与子图像)
直方图反映了图像清晰程度。直方图均匀分布时,图像最清晰。判断一幅图像是否清晰,查看是否合理的利用了全部被允许的灰度级 一幅图像应该尽可能利用全部可能的灰度级。
直方图也反映图像对比度和亮度。
直方图分为四个基本类型:RGB直方图、通道直方图、明度直方图和颜色直方图。
通道直方图:R G B通道分别画直方图。RGB直方图就是通道直方图的叠加。
明度直方图是复合计算单个像素之后绘制的直方图,相对RGB更能反映一张照片的亮度分布趋势。
•只有当一个像素中的R、G、B值同时为0 的时候,明度直方图的最左端才有凸起,而RGB直方图只要有任意一个像素中的任意一个R、G、B值为0,它的最左端就有凸起。
颜色直方图,可以理解为加了颜色的RGB直方图。
d)一种使用近似一维Means方法寻找二值化阈值:
①初始化一个阈值T,可以自己设置或者根据随机方法生成。
②根据阈值图将每个像素数据P(n,m)分为对象像素数据G1与背景像素数据G2。(n为行,m为列)
③G1的平均值是m1, G2的平均值是m2
④一个新的阈值T^′=(m1+m2)/2
⑤回到第二步,用新的阈值继续分像素数据为对象与背景像素数据,继续2~4步,
⑥直到计算出来的新阈值等于上一次阈值。
2.局部二值化
全局二值化在表现图像细节方面存在很大缺陷。为了弥补这个缺陷,出现了局部二值化方法。
•局部二值化的方法就是按照一定的规则将整幅图像**划分为N个窗口,对这N个窗口中的每一个窗口再按照一个统一的阈值$T_i$**将该窗口内的像素划分为两部分,进行二值化处理。
3.局部自适应二值化
局部二值化值是没有经过合理的运算得来,一般是取该窗口的平局值。这就导致在每一个窗口内仍然出现的是全局二值化的缺陷。为了解决这个问题,就出现了局部自适应二值化方法。
•局部自适应二值化的阈值是通过对该窗口像素的平均值E,像素之间的差平方P,像素之间的均方根值Q等各种局部特征,设定一个参数方程进行阈值的计算,例如:T=a*E+b*P+c*Q,其中a,b,c是自由参数。这样得出来的二值化图像就更能表现出二值化图像中的细节。
2.2图像噪声
•图像噪声是指存在于图像数据中的不必要的或多余的干扰信息。 图像中各种妨碍人们对其信息接受的因素即可称为图像噪声 。
•噪声在图像上常表现为一引起较强视觉效果的孤立像素点或像素块。是图像信息或者像素亮度的随机变化。一般,噪声信号与要研究的对象不相关,它以无用的信息形式出现,扰乱图像的可观测信息。通俗的说就是噪声让图像不清楚
来源1.图像获取过程中,图像传感器CCD和CMOS采集图像过程中受传感器材料属性、工作环境、电子元器件和电路结构等影响,会引入各种噪声2.图像信号传输过程中,传输介质和记录设备等的不完善,数字图像在其传输记录过程中往往会受到多种噪声的污染。
影响•对于数字图像信号,噪声表为或大或小的极值,这些极值通过加减作用于图像像素的真实灰度值上,对图像造成亮、暗点干扰,极大降低了图像质量,影响图像复原、分割、特征提取、图像识别等后继工作的进行。
脉冲噪声模型
2.2.1分类
基于产生原因:外部噪声,即指系统外部干扰以电磁波或经电源串进系统内部而引起的噪声。如外部电气设备产生的电磁波干扰、天体放电产生的脉冲干扰等。由系统电气设备内部引起的噪声为内部噪声,如内部电路的相互干扰。内部噪声一般又可分为以下四种:(1)由光和电的基本性质所引起的噪声。(2)电器的机械运动产生的噪声。(3)器材材料本身引起的噪声。(4)系统内部设备电路所引起的噪声。
基于噪声与信号的关系
a)加性噪声g=f+n:加性噪声和图像信号强度是不相关的和
b)乘性嗓声g=f+fn:乘性嗓声和图像信号是相关的,往往随图像信号的变化而变化,载送每一个象素信息的载体的变化而产生的噪声受信息本身调制。在某些情况下,如信号变化很小,噪声也不大。为了分析处理方便,常常将乘性噪声近似认为是加性噪声,而且总是假定信号和噪声是互相统计独立。
基于统计后的概率密度函数:比较重要;引入数学模型,就有助于运用数学手段去除噪声。在不同场景下噪声的施加方式都不同,由于在外界的某种条件下,噪声下图像-原图像(没有噪声时)的概率密度函数(统计结果)服从某种分布函数,就把它归类为相应的噪声。
2.2.1.1基于统计后的概率密度函数的噪声分类及其消除方式
高斯噪声是指它的概率密度函数服从高斯分布(即正态分布)的一类噪声。如果一个噪声的幅度分布服从高斯分布,而它的功率谱密度又是均匀分布的,则称它为高斯白噪声。高斯白噪声的二阶矩不相关,一阶矩为常数,是指先后信号在时间上的相关性。
其中x表示灰度值,μ表示x的平均值或期望值,σ表示x的标准差。
•产生原因:a)电路各元器图像传感器在拍摄时市场不够明亮、亮度不够均匀;b)件自身噪声和相互影响;
c)图像传感器长期工作,温度过高。
•噪声对原图像的影响是随机的,直方图呈现的分布形式是基于统计的结果。直方图表示了(归一化后)灰度值的概率密度分布,因此可以使用直方图来表示灰度值的概率密度。
瑞利噪声
伽马(爱尔兰)噪声,其中 α称为形状参数(shape parameter),主要决定了分布曲线的形状,而 β称为 rate parameter(或叫 inverse scale parameter, 1/β称为scale parameter),主要决定曲线有多陡。
脉冲(椒盐)噪声 一种随机出现的白点或者黑点,可能是亮的区域有黑色像素或是在暗的区域有白色像素(或是两者皆有)。成因可能是影像讯号受到突如其来的强烈干扰而产生、类比数位转换器或位元传输错误等。例如失效的感应器导致像素值为最小值,饱和的感应器导致像素值为最大值。
如果b>a,灰度值b在图像中将显示为一个亮点,相反,a的值将显示为一个暗点。若Pa或Pb为零,则脉冲噪声称为单极脉冲。如果Pa和Pb均不可能为零,尤其是它们近似相等时,脉冲噪声值将类似于随机分布在图像上的胡椒和盐粉微粒。由于这个原因,双极脉冲噪声也称为椒盐噪声。同时,它们有时也称为散粒和尖峰噪声。
椒盐噪声是惟一一种引起退化的视觉可见的噪声类型。其他的虽然直方图相似但也很难看出区别。
直方图和概率密度函数有对应关系。
2.2.2图像过滤噪声 空间域滤波 频率域滤波 形态学运算
空间域滤波是指直接通过原图像中像素点的灰度值进行数据运算去除噪声的方法,常见的空间域滤波方法主要有均值滤波、中值滤波、高斯低通滤波等;
//线性 非线性 fo(x,y)= T[ fi(x,y) ],T是线性/非线性算子
中值滤波器
非线性平滑滤波器,将图像中以某像素点为中心的窗口范围内的所有像素点的灰度值(包括该中心像素点)进行排序,然后将灰度序列的中间值赋给该中心像素点。
其他线性滤波考量每个像素,中值滤波会忽略那些相对邻域(此处设为n*n窗口)内大部分像素点而言,亮度偏暗或偏亮,且所占区域小于总像素点一半(即n/2)的像素点的影响,从而有效滤除孤立的噪声点。
中值滤波法对于某些类型的随机噪声,如图像扫描噪声等等,具有良好的去噪效果,特别是在滤除噪声的同时,能够保护信号的边缘,使之不被模糊。这些优良特性是线性滤波方法所不具有的。中值滤波的算法比较简单,也易于用硬件实现。
超限中值滤波法
相对中值滤波保留图像细节
•基于个数的中值滤波法:通过设定阈值T限制邻域内像素点与中心像素点灰度差绝对值的范围,从而将含噪图像中的像素点的属性划分为平坦区域、图像边缘、噪点三类。
均值滤波/邻域平均法
线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标象素为中心的周围8个像素,构成一个滤波模板,即去掉目标像素本身),再用模板中的全体像素的平均值来代替原来像素值。
对噪声图像特别是有大的孤立点的图像非常敏感,即使有极少数量点存在较大差异也会导致平均值的明显波动。不能很好地保护图像细节,在图像去噪的同时也破坏了图像的细节部分,从而使图像变得模糊,模糊程度与邻域半径成正比不能很好地去除噪声点。特别是椒盐噪声。
超限邻域平均法
如果某个像素的灰度值大于其邻域像素的平均值,且达到了一定水平,则判断该像素为噪声,继而用邻域像素的均值取代这一像素值
一般的,“超限邻域平均法”比一般邻域平均法的效果要好
在操作中对窗口的大小及门限的选择要慎重,T太小,噪声消除不干净;T太大,易使图像模糊
在实际应用中一般选用3×3窗口加权均值滤波器
高斯滤波
1、定义 线性滤波器,适用于消除高斯噪声,广泛应用于图像处理的减噪过程。
2、作用原理 和均值滤波器类似,用一个模板(或称卷积、掩模)扫描图像中的每一个像素,用模板确定的邻域内像素的加权平均灰度值去替代模板中心像素点的值。
3、系数特征 均值滤波器的模板系数都是1;而高斯滤波器的模板系数,则随着距离模板中心的增大而系数减小(高斯分布)。所以,高斯滤波器相比于均值滤波器对图像个模糊程度较小。
卷积核:高斯核 理论上,高斯分布在所有定义域上都有非负值,这就需要一个无限大的卷积核。实际上,仅需要取均值周围3倍标准差内的值,以外部份直接去掉即可。
4、真实图像在空间内的像素是缓慢变化的,因此临近点的像素变化不会很明显,所以高斯滤波在保留信号的条件下减少噪声。这种方法在接近边缘处无效,因此高斯滤波会破平边缘。但是,高斯平滑滤波器对于抑制服从正态分布的噪声仍非常有效。
5、性质 (1)二维高斯函数具有旋转对称性,即滤波器在各个方向上的平滑程度相同一般来说,一幅图像的边缘方向是事先不知道的,因此,在滤波前是无法确定一个方向上比另一方向上需要更多的平滑.旋转对称性意味着高斯平滑滤波器在后续边缘检测中不会偏向任一方向(2)高斯函数是单值函数,高斯滤波器用像素邻域的加权均值来代替该点的像素值,而每一邻域像素点权值是随该点与中心点的距离单调增减的(3)高斯函数的傅立叶变换频谱是单瓣的;既能保留低频分量,又能保留高频分量,因此能比较好地保留图像的低频和高频信息,并在保留图像信息和滤出噪声之间找到一个平衡点。(4)高斯滤波器宽度(决定着平滑程度)是由参数σ表征的。σ越大,高斯滤波器的频带就越宽,平滑程度就越好。通过调节平滑程度参数σ,可在图像特征过分模糊(过平滑)与平滑图像中由于噪声和细纹理所引起的过多的不希望突变量(欠平滑)之间取得折衷(5)由于高斯函数的可分离性,较大尺寸的高斯滤波器可以得以有效地实现.二维高斯函数卷积可以分两步来进行,首先将图像与一维高斯函数进行卷积,然后将卷积结果与方向垂直的相同一维高斯函数卷积.因此,二维高斯滤波的计算量随滤波模板宽度成线性增长而不是成平方增长.
6、特征
1)一个高斯函数跟另外一个高斯函数的卷积仍然是一个高斯函数,A*B=C C的标准差的平方是A和B的标准差的平方和,也就是说卷积后的高斯函数更宽,模糊的效果更明显(直观上看,连续做高斯模糊运算,图像会越来越模糊) 2)高斯函数的傅立叶变换仍然是一个高斯函数,如果原来的高斯函数越宽(标准差越大),变换后的高斯函数就越窄(标准差越小),也就是说一个越宽的高斯函数,低通(高阻)滤波的效果越明显,处理后的图像的细节就越不清楚(更模糊)
第三章 图像增强
3.1 图像增强概述
3.1.1 定义
图像增强(Image enhancement)是图像处理的基本内容之一。图像增强是指按特定的需要突出一幅图像中的某些信息,同时,削弱(weaken)或去除(eliminate)某些不需要的信息。这类处理是为了某种应用目的去改善图像质量,处理的结果更适合于人的视觉特性或机器识别系统。增强处理并不能增加原始图像的信息,而只能增强对某种信息的辨识能力,并且这种处理有可能损失一些其它信息。
3.1.2 应用
第一类是改善图像的视觉效果;第二是突出图像的特征,便于计算机处理
图像在生成、获取、传输等过程中,往往会发生质量的损伤,造成图像质量的损坏的因素有: 图像传输等过程中,由于信道带宽的限制所造成的图像模糊;图像中的噪声干扰 信号减弱,对比度下降;成象条件的欠缺,获取图像的清晰度偏低
图像质量退化的原因 对比度问题:对比度局部或全部偏低,影响图像视觉 噪声干扰问题:使图像蒙受干扰和破坏 清晰度下降问题,使图像模糊不清,甚至严重失真
图像增强并不去估计图像实际退化的过程和实际退化的因素而加以矫正,而只考虑图像退化的一般性质,加以修正,以求得一般的或平均地图像质量的改进。例如,边缘锐化去模糊、平滑去噪声、直方图修正对比度增强等
3.2 图像增强方法
3.3 灰度变换/点运算
空间域处理 $g(x,y)=T[f(x,y)]$
当每次处理只基于一点 $s=T(r)$,$s,r$为该点像素值——点运算
应用场景:曝光不足或过度,或由于成像设备的非线性和图像记录设备动态范围太窄等因素,会产生对比度不足的弊病,使图像中的细节分辨不清可以使用灰度变换方法解决这些问题
灰度变换定义:将一个灰度区间映射到另一个灰度区间的变换称为灰度变换
在图像增强方面的作用:使图像动态范围加大,图像对比度扩展,图像清晰,特征明显
灰度级变换的应用:亮度调整——加亮、减暗图像;对比度拉伸——提高、降低对比度;灰度级切片,主要用于突出某个特定的灰度范围,从而增强某个专门的特征
3.3.1线性灰度变换
加常数
作用:压缩动态范围,降低对比度
图像反转(反色)
灰度级范围为$[0,L-1]$的图像:$s=L-1-r$
乘常数
动态范围压缩/扩展
一般形式
3.3.2 分段线性灰度变换
对比度拉伸/拓展
将感兴趣的灰度范围线性拓展,相对抑制不感兴趣的灰度区域。
削波
削波(cliping)可以看做是对比度拓展的一个特例。
阈值化
阈值化(thresholding)可以看作是削波的一个特例。
得到二值黑白图像
灰度级分层/灰度窗口变换/灰度切分
将某一区间的灰度级和其它部分(背景)分开。
将兴趣区域显示为一个值,其他区域另一个值;或背景不变,兴趣区域灰度变亮/变暗。
位图切割/比特平面分层
高比特平面包含视觉上重要的大多数数据;低比特平面贡献更精细的灰度细节。
分层方式:灰度信息由n个比特位存储的图像,根据每个二进制位的取值(0/1)得到n个层;其实就是将比特深度将图像矩阵“切开”
3.3.3 非线性灰度变换
指数函数变换
对数函数变换
通用形式:$s=clog(1+r)$
图中对数变换:将输入中范围较窄的低灰度值映射为输出中较宽范围的灰度值;扩展暗像素,压缩高灰度值的动态范围。
应用:标定傅立叶频谱(图像显示系统一般显示不出来动态范围大的图像)
幂函数变换/伽马变换
通用形式:$s=cr^{\gamma}$ 用于压缩和扩展灰度值范围
lookup table (LUT) 查找表 灰度级变换定义了输入像素值与输出像素之间的映射关系,通常通过查表实现。可用户自定义转换(一般功能包括直方图均衡化,伽马校正,对数修正,指数修正)
3.4 基于直方图的图像增强
3.4.1 灰度直方图(简称直方图)
定义:对一幅数字图像,若对应于每一灰度值,统计出具有该灰度值的象素数,并据此绘出象素数-灰度值图形。有时直方图亦采用某一灰度值的象素数占全图总象素数的百分比作为纵坐标。
性质:1. 直方图只包含概率,丢失了位置信息。 2.图像与直方图是多对一的映射关系。3. 一幅图像各子区的直方图之和就等于该图全图的直方图。
直方图修正:通过灰度映射函数,$G_{new}=T(G_{old})$将原灰度直方图改造成所希望的直方图。
3.4.2 直方图均衡化
给定图像的分布$\Rightarrow$均匀直方图分布;均衡化后,图像直方图是平直的,即各灰度级具有相同的出现频次,或各灰度级具有均匀的概率分布。图像看起来就更清晰了(图像对比度增强)。
直方图均衡化灰度变换函数的条件
$$ s=T(r),0\leq r \leq L-1 $$
(a) $T(r)$在区间$0\leq r \leq L-1$严格递增$\Rightarrow$ 1️⃣保证输出灰度值不少于输入2️⃣保证反函数存在,即s到r的反映射一一对应,消除二义性
(b)$0\leq r \leq L-1$时 $0\leq T(r) \leq L-1$ 灰度变换不影响像素的位置分布,也不会增减像素数目:
直方图均衡化步骤
1.求出原图f的灰度直方图h
2.求出图像f的总体像素个数,$N_f=n×m$
3.计算每个灰度$r_k$的像素个数在整个图像中出现的概率 $p (r_k),k=0,1…L-1$
4.理论灰度变换函数
\\连续情况:$s=T(r)=(L-1)\int_0^r p(w)dw $
离散:$s_k=T(r_k)=(L-1)\Sigma_{j=0}^kp(r_j),k=0,1,2,…,L-1$
5.将s近似到最接近的整数
N.B. $r_k$可能被归一化为$r_k/(L-1)$,此时s近似到最近的$r_k$,在实际计算中请注意。
缺点
1.不能用于交互方式的图像增强应用,因为直方图均衡化只能产生唯一一个结果,恒定值直方图近似
2.并不总是能产生希望的结果。尤其当原始图像的直方图十分集中时,直方图均衡后将可能产生假边沿或区域,同时增强图像的条纹或斑点
3.4.3 直方图匹配/规定化
令$r_k$为原始图像的灰度密度函数,$ z_k$是期望通过匹配的图像灰度密度函数
目标:找到一个灰度变换H $z=H(r)$
使得经过H对原图像进行灰度变换后,结果图像z具有期望的直方图
算法设计
连续灰度级情况
1.直方图均衡化
2.$z=G^{-1}(u)$
3.根据均衡化概念,s, u的直方图都是常量,由此可用s替代u进行上述逆变换:$z=G^{-1}(s)=G^{-1}(T(r))\Rightarrow H$
离散灰度级情况
1.直方图均衡化;可计算得到两张映射表:r→s;u→z
2.从s, u中选取最接近的一对$s_j,u_k$,使$u_k \approx s_j$
3.在从两张表中查得对应的$r_j, z_k$
4.由此建立从r到z的映射关系r→z,实现数字图像的直方图匹配
3.4.4 基于直方图统计特性的增强/局部增强
直方图统计特性
令$p(r) $为原始图象的灰度密度函数
统计特性:均值m;n阶中心矩$\mu_n(r)=\Sigma_{i=0}^{L-1}(r_i-m)^np(r_i)$
m平均灰度; 方差$\sigma^2$平均对比度
局部增强
利用均值、方差的前述特性,通过对图像局部区域亮度、对比度的判断,实现有选择性地增强
1️⃣在当前像素r(x,y)周围,确定一个邻域范围S(x,y) $\rightarrow$ 2️⃣统计该局部区域的统计特性 p m $\sigma^2$ $\rightarrow$ 3️⃣ 确定算法
$M_G$:整幅图像的灰度平均值; $D_G$ :整幅图像的灰度级方差 $k0, k1, k2$:局部增强加权因子,用以确定是否对当前像素f(x,y)进行增强
3.5 彩色图像增强
3.5.1 彩色模型(颜色空间)
RGB
CCD技术直接感知R,G,B三个分量;是图像成像、显示、打印等设备的基础
HSI (色调、饱和度、亮度)
I分量与图像的彩色信息无关,H和S分量与人感受颜色的方式是紧密相连的
将亮度(I)与色调(H)和饱和度(S)分开,避免颜色受到光照明暗(I)等条件的干扰,仅仅分析反映色彩本质的色调和饱和度
广泛用于计算机视觉、图像检索和视频检索
YUV
Y指亮度(Brightness),即灰度值;U和V指色调
Y分量可提供黑白电视机的所有影像信息;用于彩色电视广播,被欧洲的电视系统所采用(属于PAL系统)
YCbCr
Y指亮度,与YUV的Y相同;Cb和Cr由U和V调整得到;JPEG采用的彩色空间
彩色空间转换
RGB $\rightarrow$ HSI
HSI $\rightarrow$ RGB
RGB $\rightarrow$ YUV
RGB $\rightarrow$ YCbCr
3.5.2 颜色平衡
灰度平衡:使RGB彩色设备的彩色分量混合后,颜色失去色调和饱和度产生灰色,这种颜色混合效果被称为灰度平衡,一般情况下,等量的RGB产生灰色。
彩色平衡:纠正偏色的过程;通过调整灰平衡,使偏色区域恢复成灰色实现;当灰色的亮度达到一定程度时,显现为白色,因此有时亦称之为白平衡调整
判断偏色:1️⃣ 检查图像的灰平衡(白平衡)情况,即检查在现实中应该是灰色(白色)的物体,在图像中是否是灰色(白色);2️⃣ 检查高饱和度的颜色是否正常,即检查在现实中应该是纯色的物体,在图像中是否有偏色
e.g.某黑色区域的平均取值是:R = 0 ,G = 12,B = 7说明有青色色偏
彩色平衡实现的算法
选择两个颜色分量(如RB),去匹配第三个(如G)
1.在图像中选取两个浅灰或深灰区域(这些区域也许已经不是灰色)
2.计算这两个域的RGB平均值,设为$F_1=(R_1,G_1,B_1)\quad F_2=(R_2,G_2,B_2)$
3.以G分量为基准,修改R和B分量使之等于G,可有对应关系: $$ F_1=(R_1,G_1,B_1)\Rightarrow F_1^\star=(R_1^{\star},G_1,B_1^{\star})=(G_1,G_1,G_1) $$ $F_2和F_2^\star$同理。
4.构造线性变换
5.分别对R、G、B图像实施变换
3.5.3 伪彩色增强
人类可以分辨比灰度层次更多的颜色种类,伪彩色图像处理就是根据一定的准则对灰度值赋以彩色的处理。方法:伪彩色变换,密度分割
独立映射表变换法
对灰度图像f(x, y),建立颜色映射表:$I_R=T_R(I),I_G=T_G(I),I_B=T_B(I)$
形成RGB图像各分量:
$R(x,y)=T_R(f(x,y)),G(x,y)=T_G(f(x,y)),B(x,y)=T_B(f(x,y))$
经典变换函数(映射表)
-
分段线性映射表
-
彩虹映射表:其效果类似彩虹;按照灰度值增加对应于波长增加进行映射(低灰度→蓝色,中灰度→绿色,高灰度→红色
-
正弦函数变换表:移动函数值范围以适应实际图像像素值范围
3.6 空域滤波
3.6.1 线性系统响应:卷积理论
卷积的离散表达式,基本上可以理解为模板运算的数学表达方式 $g(x,y)=f*h=\sum \limits_{m=0}^{M-1} \sum \limits_{n=0}^{N-1} f(m,n)h(x-m,y-n)$
卷积的冲击响应函数h(x,y),称为空域卷积模板
3.6.2 空域滤波及滤波器
使用空域模板进行的图像处理,被称为空域滤波。模板本身被称为空域滤波器
输出图像中的每一点,为输入图像中某个相关区域象素集的映射
分类
线性滤波器
定义:$R=\sum \limits_{i}^{n}w_iz_i$,其中$w_i$是模板的系数, $z_i$是被计算像素及其邻域像素的值。
分类:低通滤波器(平滑图像,去除噪声);高通滤波器(边缘增强,边缘提取);带通滤波器(删除特定频率,增强中很少用)
非线性滤波器
中值滤波(平滑图像,去除噪声)$R=mid{z_k|k=1,2,…,9}$
最大值滤波(寻找最亮点)$R=max{z_k|k=1,2,…,9}$
最小值滤波(寻找最暗点)$R=min{z_k|k=1,2,…,9}$
3.6.3 平滑/低通滤波器
1.应用:对大图像处理前,删去无用的细小细节;连接中断的线段和曲线;降低噪音;平滑处理,恢复过分锐化的图像;图像创艺(阴影、软边、朦胧效果)
2.滤波器模板系数的设计 根据空域中低通冲激响应函数的图形设计模板的系数 设计模板系数的原则 (1)大于0 (2)很多情况:都选1,或中间选1,周围选0.5 (3)最后通过求均值,解决超出灰度范围问题 例如:均值滤波器;加权平均滤波器
3.模板尺寸越大,图像越模糊,细节丢失越多
4.低通空域滤波:(缺点)处理噪音的同时也平滑了边和尖锐的细节;(特征)某些情况下,对图像的低通滤波具有增强大尺度特征的作用
3.6.4 中值滤波器
优点:抑制噪声;在去除噪音的同时,可以比较好地保留边缘轮廓信息和图像的细节
3.6.5 锐化/高通滤波器
1.应用:加强图像中景物的边缘和轮廓;印刷中的细微层次强调。弥补扫描、 挂网对图像的平滑;超声 探测 成 象 , 分辨率低 , 边 缘 模糊 , 通 过 锐 化 来 改善;图 像 识 别 中 , 分 割 前 的 边缘 提取;锐 化 处 理 恢复 过 度 平 滑 、 暴 光 不 足 的 图 像;图 像 创 艺 (只 剩 下 边界 的 特殊 图 像 );尖端 武器 的 目标 识别 、 定 位
2.滤波器模板系数的设计
根据空域中高通冲激响应函数的图形设计模板的系数 1)中心系数为正值,外围为负值。2)系数之和为0
3.滤波器效果
- 常数或变化平缓的区域,结果为0或很小,图像很暗,亮度被降低了
- 在暗的背景上边缘被增强了
- 图像的整体对比度降低了
- 计算时会出现负值,归0处理为常见
- 高通滤波在增强了边的同时,丢失了图像的层次和亮度
- 在某些情况下,高通滤波增强小尺度特征
4.高增益滤波
(a)作用:高通滤波可看作为:高通= 原图–低通;高增益滤波弥补高通滤波的缺陷,在增强边和细节的同时,不丢失原图像的低频成分。
(b)定义:
在上式原图上乘一个扩大因子A,有高增益滤波:高增益= A*原图–低通
高增益= A原图–低通 = (A – 1)原图+ (原图–低通) = (A – 1)原图+ 高通 当A = 1时,高增益就是高通滤波, 当A >1 时,原图像的一部分被加到高通中
(c)滤波器扩大因子及模板系数设计:
对于3x3的模板,设w = 9A – 1;(高通时w = 8)A的值决定了滤波器的特性
当A = 1.1时,意味着把0.1个原图像加到基本高通上。当A = 1.2时,结果处在上限的边缘
理论上,高通和高增益的模板尺寸可为任意尺寸。例如:模板取7x7,高通权值为48,其它均为-1,规整化系数为1/49
根据经验,高通滤波模板很少大于3x3
(d)效果分析:
增强了边,又保留了层次;高增益增强了边的同时也增强了噪音。
5.微分滤波器 数字函数的微分、梯度、拉普拉斯算子
均值平滑,均值类似积分$\Rightarrow$ 微分锐化? ☑️
数字函数的微分、梯度、拉普拉斯算子
一阶微分 $\frac{\partial f}{\partial x}=f(x+1)-f(x)$
二阶微分 $\frac{\partial^2 f}{\partial x^2}=f(x+1)+f(x-1)-2f(x)$
梯度 $\nabla f\equiv grad(f)=[g_x,g_y]^T=[ \frac {\partial f}{\partial x} \frac {\partial f}{\partial y}]^T$
拉普拉斯算子
$\nabla^2 F(x,y)= \frac {\partial^2 F}{\partial x^2} +\frac{\partial^2 F}{\partial y^2} $ (连续函数)
$G(x,y)=4F(x,y)-F(x+1,y)-F(x-1,y)-F(x,y+1)-F(x,y-1)$
幅度 $M(x,y)=mag(\nabla f)=\sqrt{g_x^2+g_y^2}$
- $M(x,y)\approx |g_x|+|g_y|$
- 点$z_5$ $g_x \approx z_5-z_6,g_y \approx z_5-z_8$
- 交叉差:点$z_5$ $g_x \approx z_5-z_9,g_y \approx z_6-z_8 $
-
Roberts交叉梯度算子 $mag(\nabla f)\approx |z_5-z_9|+| z_6-z_8|$
- 梯度计算由两个模板组成,第一个求得梯度的第一项,第二个求得梯度的第二项,然后求和,得到梯度的幅度。
- 两个模板称为Roberts 交叉梯度算子
-
Prewitt梯度算子——3x3的梯度模板
$mag(\nabla f)\approx |(z_7+z_8+z_9)-(z_1+z_2+z_3)|+| (z_3+z_6+z_9)-(z_1+z_4+z_7)|$
-
Sobel梯度算子——3x3的梯度模板
$mag(\nabla f)\approx |(z_7+2z_8+z_9)-(z_1+2z_2+z_3)|+| (z_3+2z_6+z_9)-(z_1+2z_4+z_7)|$
-
拉普拉斯算子—二阶微分算法
标准拉普拉斯算子:
先平滑后增强:
与高增益滤波技术相结合(A>1):
微分滤波器的两种特殊应用:
1)梯度>25的赋最大值255,否则赋原值。边被突出,背景保留
2)梯度>25的赋最大值255,否则赋0。边被突出,图被二值化
3.7 频域增强
3.7.1 频域增强原理
频域增强步骤
F(u,v)—待增强图像f(x,y)的傅立叶变换;定义了待增强图像f(x,y)分解为一系列基图像后的变换系数
H(u,v)—对应于空域线性系统单位冲击响应函数的傅立叶变换,称之为传递函数或滤波器函数
通过H(u,v)对f(x,y)分解为基图像后加权系数的修改,从而实现图像的增强——图像的频域滤波增强
理论上,任何变换只要具有正交性与完备性,均可定义类似的运算方式,但只有傅立叶变换具有严格的卷积定理证明
相对空域滤波的优势
在傅立叶变换域,变换系数反映了图像在空域难以定义的某些特征
- 频谱的直流低频分量对应于图像的平滑区域
- 频谱的高频分量对应于图像的边沿或变化剧烈区域
- 外界叠加噪声对应于频谱中频率较高的部分
- 恒定的干扰条纹对应于频谱中的某些特征点
构造一个滤波器,刻意地提升某些频率分量、压低或去除另一些分量,从而达到图像增强的目的
空域滤波基本上借助于模板运算实现,难于实现真正意义上的线性系统滤波;在实际应用中空域模板的尺寸难以扩大,使滤波增强所需信息局限在较小的局部区域,难以获得更为理想的结果和处理较为复杂的杂波去除、多特征增强等
3.7.2 同态滤波器
原理
成像过程:图像的灰度函数f (x, y)看作为入射光分量和反射光分量两部分组成$f(x,y)=i(x,y)r(x,y)$
-
$i(x,y)$ 入射光(明度分量),较均匀,随空间位置变化较小$\rightarrow$占据低频段
-
$r(x,y)$ 反射光(反射分量),由于物体性质和结构特点不同而反射强弱很不相同的光,随空间位置变化较剧烈;物体亮度特征主要取决于反射光$\rightarrow$占据高频段比较宽的范围
成像中的问题:当入射光不均匀时,反射光构成的图像将难以表现物体的全貌
解决思路:将入射光和反射光分别处理,在增强物体对比度的同时,适当压缩入射光形成的灰度值范围
算法
- 图像 $f(x,y)=i(x,y)r(x,y)$
- 取对数 $z(x,y)=\ln f(x,y)=\ln i(x,y)+\ln r(x,y)$
- 傅立叶 $Z(u,v)=F[z(x,y)]=F[\ln i(x,y)]+F[\ln r(x,y)]=I(u,v)+R(u,v)$
- 滤波处理 $S(u,v) = H(u,v)Z(u,v)$
- 傅立叶反变换得到$s(x,y)$
- 滤波结果$g(x,y)=e^{s(x,y)}$
关键点:将明度和反射分量用对数进行分离;同态滤波器函数H(u,v)能够分别对这两部分进行操作,必须能够压缩i (x,y)的动态范围,同时增强r(x,y) 的对比度
同态滤波器函数H(u,v)
此特性的滤波器可满足前述要求
上述滤波器特性曲线可以通过基本滤波器改造得出,例如
3.7.3低通滤波
以牺牲图像清晰度为代价来减少干扰效果的修饰过程
理想圆形低通滤波ILPF
理论上,半径内的频率分量无损通过,而圆外的频率成分被滤除
截止频率的设计
-
总的信号能量$P_T=\sum \limits_{u=0}^{N-1}\sum \limits_{v=0}^{N-1} P(u,v)$
能量模$P(u,v)=|F(u,v)|^2=R(u,v)^2+I(u,v)^2$
-
将变换作中心平移,则一个以频域中心为原点,r为半径的圆就包含了百分之β的能量$\beta=100[\sum \limits_{u}\sum \limits_{v}P(u,v)/P_T]$
-
$r=D_0$
作用
- D0半径内的频率分量无损通过
- 园外的频率分量会被滤除
- 若滤除的高频分量中含有大量的边缘信息,会发生图像边缘模糊现象
特性
- 整个能量的90%被一个半径为8的小圆周包含,大部分尖锐的细节信息都存在于被去掉的10%的能量中
- 小的边界和其它尖锐细节信息被包含在频谱的至多0.5%的能量中
- 被平滑的图像被一种非常严重的振铃效果——理想低通滤波器的一种特性所影响
Butterworth低通滤波器 BLPF
一个截止频率在与原点距离为D0的n阶Butterworth低通滤波器(BLPF)的变换函数:
三维透视图、幅频谱图与截面图
空域响应
截止频率设计 变换函数中不存在一个不连续点作为一个通过的和被滤波掉的截止频率的明显划分 通常把使得H(u,v)开始小于其最大值的一定比例的点当作其截止频率点$D_0$,通常H(u,v)=0.5或H(u,v)=$\frac{1}{\sqrt{2}}$
特性分析 没有明显的振铃效果 ,这是滤波器在低频和高频之间平滑过渡的结果
和ILPF相比 无明显跳跃;模糊程度减少;尾部有较多高频,对噪声的平滑效果不如ILPF
指数低通滤波器(ELPF)
特性分析
有更加平滑的过渡带,平滑后的图象没有跳跃现象
与BLPF相比,衰减更快,经过ELPF滤波的图象比BLPF处理的图象更模糊一些
一般的,2阶指数低通滤波具有较好的特性
高斯低通滤波器(GLPF)
梯形低通滤波器(TLPF)
其中D0 < D1,一般情况下,定义D0为截止频率
特性分析 结果图像的清晰度优于ILBF,噪声滤波好于BLBF9振铃效应好于ILBF,差于BLBF
3.7.4高通滤波
基本形式 $H_{hp}(u,v)=1-H_{lp}(u,v)$
三类基本高通滤波器
3.7.5从频域规范产生空域模板
用空域模板来模拟一个给定频域滤波器
-
频域的滤波器操作基于等式$G(u,v)=H(u,v)F(u,v)$
-
频域的滤波器操作可以由空域上的卷积公式实现 $g(x,y)=\sum \limits_{i=0}^{N-1}\sum \limits_{j=0}^{N-1}h(x-i,y-k)f(i,k)$
-
h通常称作空域卷积模板,可理解为H(u,v)的逆傅立叶变换。假定已找到了H与h的关系 $h(x,y)=H^{-1}(u,v)\quad x,y=0,1,2,…,N-1$
但直接通过傅立叶反变换得到的h(x,y)其理论范围N太大,不是实用模板
-
假设h(x, y)在x>n 且y>n 时值均为0,其中n<N;可创建一个n×n大小的用傅立叶变换H(u,v)得到的卷积模板
-
对$\hat{h}$进行傅立叶变换
$\hat{H}=C\hat{h}$
-
确定$\hat{h}(x,y)$的系数,目标函数:误差$e^2=\sum \limits_{u=0}^{N-1}\sum \limits_{v=0}^{N-1}|\hat H(u,v)-H(u,v)|^2$
-
对$e^2$函数通过取空域的导数求极小值,最终可推导出公式$\hat{h}=(C^*C)^{-1}C^*H=C^{\star}H$
频域滤波器与空域滤波器的对应关系
第四章 图像变换
4.1 空域变换
4.1.1 图像像素级运算
点运算
线性点运算
非线性点运算
C>0,增强中间部分亮度;C<0,减小中间部分亮度
代数运算 (针对两幅图像)
加法 $C(x,y)=A(x,y)+B(x,y)$
-
去除“叠加性”噪音
定理:对M幅加性噪声图像进行平均,可以使图像的平方信噪比提高M倍。
-
图像叠加效果
减法 $C(x,y)=A(x,y)-B(x,y)$
- 应用:去除不需要的叠加性图案(A前景背景混合图像;B背景);检测同一场景两幅图像之间的变化;计算物体边界的梯度
乘法 $C(x,y)=A(x,y)\times B(x,y)$
- 应用:二值模板图像乘原图像
逻辑运算
求反
定义:$h(x,y)=DN-f(x,y)$ $DN$为$f(x,y)$的灰度级
主要应用:获得图像的负像;获得子图像的补图像;绘制区别于背景的、可恢复的图像
与
定义:$h(x,y)=f(x,y)\wedge g(x,y)$
主要应用:求两子图像的相交子图
4.1.2 几何变换
几何失真一般分为系统失真和非系统失真。系统失真是有规律的、能预测的;非系统失真则是随机的。
几何变换可以改变图像中物体之间的空间关系。
基本方式:多项式变换、透视变换
平移变换
$a(x,y)=x+x_0;b(x,y)=y+y_0;$
$g(x^′,y^′)=f(x+x_0,y+y_0)$
镜像变换:水平镜像、垂直镜像
水平:$x^′=-x,y^′=y$
垂直:$x^′=x,y^′=-y$
拉伸/缩放变换
旋转变换
【注意】
- 图像旋转之前,为了避免信息的丢失,一定有平移坐标。
- 图像旋转之后,会出现许多的空洞点,对这些空洞点必须进行填充处理,否则画面效果不好,称这种处理为差值处理。
错切变换
错切后原图像像素排列方向改变;与旋转的不同:x方向与y方向独立变化
伪仿射变换——双线性几何变换
任意变形变换——非线性几何变换
在二维平面上,实现图像几何形状的任意变换
在二维平面上,校正图像的几何失真图像的空域变换—几何变换
特征:一般的,原始图像与目标图像之间,存在一一对应的特征点(tiepoints,GCPs)
模型:一般的,原始图像与目标图像之间的坐标变换函数为非线性函数,需用高阶多项式进行近似描述
通过原始图像与目标图像之间多个对应特征点(GCP点),可以确定上述多项式中的未知参数
基本几何变换的特征
坐标空间变换:范围发生变化,大小发生变化
像素值的变化:位置变化不引起像素值变化,旋转、缩放、变形变换像素值发生变化
离散几何变换的计算问题
空间坐标:向前映射法,向后映射法
- 向前映射计算法$g(x^′,y^′)=f(a(x,y),b(x,y))$ 从原图像坐标计算出目标图像坐标,镜像、平移变换使用这种计算方法
- 向后映射计算法$g(a^′ (x,y),b^′ (x,y))=f(x,y)$ 从结果图像的坐标计算原图像的坐标,旋转、缩放、变形可以使用
像素值计算——灰度插值(重采样):最邻近插值法,双线性内插法(一阶插值),高阶插值
4.1.2 灰度插值
最近邻插值法
选择最临近点像素灰度值 $(x^′,y^′ )$点像素的灰度值为原图像中(x,y)点的像素值
特点:简单快速、灰度保真性好、误差较大、视觉特性较差、马赛克效应
双线性插值法
线性插值
线性函数 $\frac{y-y_0}{x-x_0}=\frac{y_1-y_0}{x_1-x_0} \Rightarrow y=\frac{x_1-x}{x_1-x_0}y_0+\frac{x-x_0}{x_1-x_0}y_1$
双线性插值
x方向插值
$R_1:f(R_1)=\frac{x_1-x^′}{x_1-x_0}f(R(x,y))+\frac{x^′-x_0}{x_1-x_0}f(R(x+1,y))$
$R_2:f(R_2)=\frac{x_1-x}{x_1-x_0}f(R(x,y+1))+\frac{x-x_0}{x_1-x_0}f(R(x+1,y+1))$
y方向插值
$f(R(x^′,y^′))=\frac{y_1-y^′}{y_1-y_0}f(R_1)+\frac{y^′-y_0}{y_1-y_0}f(R_2)$
简化计算方法
双线性插值法(一阶插值)
最佳插值函数
高阶插值
简化计算,仅取原点周围有限范围点
并利用三次多项式来近似理论上的最佳插值函数sinc(x):
由此形成常用的三次卷积插值算法,又称三次内插法,两次立方法(Cubic)。CC插值法等
三次卷积插值算法
其中$I_i$是$i$点亮度值
特点
为满足二维Nyquist条件下,最佳重构公式的近似
只有图像满足特定的条件,三次卷积插值算法才可获得最佳结果
可使待求点的灰度值更好地模拟实际可能值
可取得更好的视觉效果
三次卷积内插突出的优点是高频信息损失少,可将噪声平滑
4×4时,像元均值和标准差信息损失小
计算量大为增加
内插方法选择
内插方法的选择除了考虑图像的现实要求及计算量,还要考虑内插结果对分析的影响
当纹理信息为主要信息时,最邻近采样将严重改变原图像的纹理信息
但灰度信息为主要信息时,双线性内插及三次卷积插值将减少图像异质性,增加图像同质性,其中,双线性内插方法使这种变化更明显
4.2 频域变换
意义:(1)利用频率成分和图像外表之间的对应关系,一些在空间 域表述困难的增强任务,在频率域中变得非常普通 (2)图像的变换过程可类比于数学上去相关处理,在空域相 互交叉难以描述的特征,在频域往往得到更为直观的表 达、分离甚至集中(3)图像的滤波在频率域更为直观,它可以解释空间域滤波 难以解释的某些性质(4)理论上可以在频率域指定滤波器,通过反变换,以其空 域响应作为构建空间域滤波器的指导(5)一旦通过频率域试验选择了空间滤波,具体实施可在空间域进行
4.2.1 频域变换概述
卷积
对于一个线性系统的输入f(t)和输出y(t),其间必定存在关系(卷积积分):
h(t) 称为线性系统的单位冲激响应函数,其含 义为:当线性系统输入f(t)为单位脉冲函数时, 线性系统的输出响应
相关函数
正交变换
连续函数几何的正交性
正交函数集合的完备性
正交函数集合完备性的物理意义
任何数量的奇函数累加仍为奇函数,任何数量的偶函数累加仍为偶函数
因此,为了能用累加展开式来表示一个任意函数,就要求这个函数集合中既有奇函数又有偶函数(e.g. a 完备 b 不完备)
正交函数的离散情况
一维正交变换
可进行图像变换的基本条件:正交、完备
常用的几种变换 : 傅立叶变换 、WALSH 变 换 、哈达玛变换 、Haar 变 换 、SLANT 变 换 、K-L 变换以 及 特定 条 件下的CONSINE 变换 、SINE变换等,都满足正交 性和完备性两个条件
4.2.2 傅立叶变换
调谐信号(欧拉公式)
$$ f(t)=e^{j\omega t}=\cos(\omega t)+j\sin(\omega t), j^2=−1 $$
傅立叶积分
$$ H(f)=\int\limits_{-\infty}^{+\infty}h(t)e^{−j2\pi ft} dt $$
一维傅立叶变换
指数形式
一维离散傅立叶变换
二维傅立叶变换
二维离散傅立叶变换
傅立叶变换的性质
1. 线性性质(加法定理)
2. 比例性质(相似性定理):
3. 可分离性:
一个二维傅立叶变换可分解为两步进行,其中每一步都是一个一维傅立叶变换。 先对f(x,y)按行进行傅立叶变换得到F(x,v),再对F(x,v)按列进行傅立叶变换,便可得到f(x,y)的傅立叶变换结果F(u,v) 。显然先列再行也可行。
4. 空间位移性
上式N代表图像为NxN
若为MxN,则:
5. 频移性
6. 周期性
7. 共轭对称性
4.2.3 快速傅立叶变换 见复印件
4.2.4 离散余弦变换
4.2.5 沃尔什—哈达玛变换
4.2.6 小波变换
第五章 图像压缩 见复印件
5.1 图像压缩概述
5.2 无损压缩
熵编码 霍夫曼编码 (Huffman
熵编码 算术编码:哈夫曼编码的改进
基于字典的编码 (dictionary
行程编码 Run Length Encoding
LZW 编码方式
5.3 有损压缩
预测编码
DPCM (Differential Pulse Code Modulation) 编码
DM Delta Modulation 编码
变换编码
DCT 变换编码
变换编码
小波变换编码
6.5 图像分割——基于边缘检测的方法
背景知识 见复印件
边缘检测 见复印件
原理 见复印件
边缘检测算子 见复印件
霍夫变换 见复印件
基本原理 见复印件
算法实现 见复印件
第六章 图像分割
6.1 图像分割基本介绍
- 图像处理过程
- 图像分割的方法:
- 基于边缘检测的方法(基于灰度值的不连续性)
先找出局部特性的不连续性,再将它们连成边界,边界将图像分成不同区域(通过连通边界进行区域分割)。
如:边缘检测分割法、Hough变换等。
- 基于区域生成的方法(基于灰度值的相似性)
将像素分成不同的区域(通过同质性基元的聚类进行区域分割)
如:阈值分割法,区域生长、分裂合并、形态学分割等。
6.2 边缘检测
1、滤波 边缘检测的算法主要是基于图像强度的一阶和二阶导数,导数对噪声很敏感,因此必须采用滤波器来改善。主要有高斯滤波,采用离散化的高斯函数产生一组归一化的高斯核,然后基于高斯核函数对图像灰度矩阵的每一个点进行加权求和。 2、增强 增强边缘的基础是确定图像各点邻域强度的变化值。增强算法可以将图像灰度点邻域强度值有显著变化的点凸显出来,通过计算梯度幅值来确定 。通常我们用小区域模板进行卷积来计算,有 Sobel 算子、 Roberts 算子、 Prewitt 算子等。 3、检测 经过增强的图像,往往邻域中有很多点的梯度值比较大,所以采用某种方法对这些点进行取舍, 常
6.3 阈值分割法
阈值分割是直接对灰度图进行计算的分割方法。
6.3.1 阈值分割原理
-
通式$g(x,y)=\begin{cases} &Z_E ,\ f(x,y)∈Z\ & Z_B, \ else \end{cases}$ $Z_E=f(x,y)\rightarrow$半阈值化
-
类间最大方差原则:取最佳阈值时,两部分之间的差别最大,此时错分概率最小
如图所示,若物体暗,背景亮。门限选双峰间的凹谷
- 分类
阈值类型 | 适用情况 |
---|---|
全局阈值 | 图像中目标和背景有明显差别,而且这种差别在图像中的任何位置都几乎相同。 |
局部阈值 | 目标和背景的对比度随着位置的不同可能有较大变化(比如光照不均)。 |
单阈值 | 图像中只有单个目标和单个背景的情况,或者只对图像进行简单的划分。 |
多阈值 | 图像中存在多个目标或多个背景的情形,或者对图像进行多个层次的划分。 |
直接阈值 | 对比度较大的图像,图像中在区域内部灰度基本一致,而不同区域之间灰度有较大的差异。 |
间接阈值 | 图像中的目标和背景差别不是很大,如果不作处理直接选取阈值的话,用这个阈值不能很好地分割图像。 |
6.3.2 阈值处理
6.3.2.1 基本全局阈值处理
1、为全局阈值T选取一个初始估计值
2、分割图像。产生两组像素G1和G2
3、对G1和G2中的像素分别计算平均灰度值(均值)m1和m2
4、在m1和m2之间计算新的阈值 $T=\frac{1}{2}(m_1+m_2)$
5、重复2-4,直到连续迭代中的两个T的差小于预定义的ΔT
6.3.2.2 Otus方法的全局阈值处理/类间最大方差法
基本思想:经过适当的阈值化的两个类,就其像素灰度值而言,应当是截然不同的。同理,就其灰度值而言,给出最佳类间分离的阈值将是最佳的阈值。
求解过程不需要人为设定其他参数,完全由计算机自动选取。它不仅适用于两个区域的分割,也可以推广到多个区域的情形。
Otus算法实现流程
- 计算输入图像(大小MxN,有L个不同灰度级[0, 1, 2, …, L-1])的归一化直方图,使用$p_i$表示直方图各个分量,其中$i=0,1,2,…,L-1$
- 计算全局灰度均值$m_G$
- 计算累积和$P_1(k)=\sum\limits_{i=0}^kp_i,k=0,1,2,…,L-1$
- 计算累积均值$m(k)=\sum\limits_{i=0}^kip_i,k=0,1,2,…,L-1$
- 计算类间方差$\sigma^2_B(k)=\frac{m_GP_1(k)-m(k)}{P_1(1-P_1)}$
- Otus阈值$k^*=\max\limits_{0\leq k\leq L-1} \sigma^2_B(k)$ 若最大值不唯一,用对应的各个$k$的均值作为$k^*$
- *计算可分性度量$\eta^*=\frac{\sigma^2_B(k)}{\sigma^2_G}$,其中$\sigma^2_G=\sum\limits_{i=0}^{L-1}(i-m_G)^2p_i$
由于$P_1(k),m(k),\sigma^2_G$均为累加值,可以在遍历各个灰度级的同时进行递推计算,即$P_1(k)=P_1(k-1)+p_{k},k=0,1,2,…,L-1$,其中$P_1(-1)$记为0。
Otus方法类间方差公式推导
其中$m_1(k)=\frac{1}{P_1(k)}\sum\limits_{i=0}^kip_i,k=0,1,2,…,L-1$
1、
2、
6.3.3 改进
a 图像平滑改进
噪声会将简单的阈值处理问题变得不可解决,当噪声不能在源头减少,并且需要用阈值处理分割图像时,通常在阈值处理之前平滑图像,以增强阈值处理的性能。
b 边缘改进
边界明显,但是整体灰度值相近:求梯度,根据梯度幅度图像得到的模板图像P,原图像和P相乘得到的结果进行处理
c 可变阈值处理
(i) 基于局部图像性质
在图像的每个点(x,y),根据坐标的一个邻域的一条或多条规定性质计算阈值。
$T_{xy}=aσ_{xy}+bm_{xy}=aσ_{xy}+bm_G$,其中a、b大于0
(ii) 基于移动平均
一维数组 序列信息 沿一幅图像的扫描行计算平均
z形扫描$(m_{ij})_{n\times n}$ 得到 $[m_{11},m_{12},…,m_{1n},m_{2n},m_{2n-1}]$
第$k+1$次扫描遇到的点的灰度:
阈值$T_{xy}=c\times m_{xy}$
6.4 区域分割法
6.4.1 区域生长 Bottom-up
步骤 1、种子像素作为生长的起点; 2、确定一个相似性标准(评判是否合并的条件); 3、按照相似性标准,将种子像素的邻域中具有与种子相同和相似性质的像素,合并到种子的区域中; 4、将新像素当作新的种子像素继续进行上面的过程,直到再没满足条件的像素可被包括进来为止,这样就完成了一个区域的生长; 5、按此方法,完成其它区域的生长,直到将整幅图像完全分割。
关键
-
种子选取(利用特征或先验知识) 最亮的像素;直方图极大值;聚类中心处像素
-
相似性准则(生长准则)确定 区域灰度差;区域内灰度分布特性;颜色、纹理、尺寸形状等。
-
生长停止条件确定 区域大小;区域与候选像素相似性;正在增长区域的形状。
优点 计算简单,通常能将具有相同特征的联通区域分割出来。在没有先验知识可以利用时,可以取得最佳的性能
缺点 对噪音敏感,导致抽取的区域有空洞
6.4.2 区域分离与聚合 Up-down
步骤 1、进行一次分裂; 2、考察所有相邻区域是否可以合并,若可以,则将其一一合并; 3、重复步骤1、2的分裂合并过程,直到分裂和合并都不能再进行为止。
注意:合并时一般先考虑同一个父节点下的4个区域,之后再扩展到其它父节点下同层次的区域。
难点 分裂与合并的准则不好判断。分裂的准则又称为均匀性测试准则,用于判断该块图像是否需要分裂。 当均匀性测试准则选择不当时,很容易会引起“方块效应”。
6.4.3 空间聚类/K均值聚类
将观测集合Q划分为k个满足如下最优准则的不想交的聚类集合$𝐶={𝐶_1,𝐶_2,…𝐶_𝑘}$:
1、初始化算法:规定一组初始均值$m_i (1),i=1,2,…,k$
2、将样本分配给聚类:将每个样本分配给均值最接近的聚类集合(关系被任意求解,但样本只分配给一个聚类):
$z_q→C_i$,如果$‖z_q-m_i^2 ‖<‖z_q-m_j ‖^2$,$j=1,2,…,k(j≠i);q=1,2,…,Q$
3、更新聚类中心(均值):
$m_i=1/|C_i | ∑129_(z∈C_i)▒z,i=1,2,…,k$
4、完备性检验:计算当前步骤和前几步中平均向量之间的差的欧几里得范数。计算残差E,即k个范数之和。若E≤T,其中T是一个规定的非负阈值,则停止。否则,返回步骤2.
6.4.4 超像素的区域分割
基本思想
通过将像素组合到比各个像素更有感知意义的原始区域来取代标准原始图像 。 超像素分割的目的是减小计算开销并通过减少不相关的细节来提高分割算法的性能 。
SLIC 超像素算法
简单线性迭代聚类SLIC 是 k 均值分割算法的一种改进 。 与其它超像素算法相比 原理简单 具有计算优势和其他性能优势 。
具体步骤
1、初始化算法:以规则步长 S 对图像取样 计算初始的超像素聚类中心 𝒎𝑖=[𝑟𝑖,𝑔𝑖,𝑏𝑖,𝑥𝑖,𝑦𝑖] ,𝑖=1,2,…,$n_{sp}$
2、在种子点的 n*n 邻域内重新选择种子点 一般取 n= 3 。 具体方法为:计算该邻域内所有像素点的梯度值 将种子点移到该邻域内梯度最小的地方
3、计算距离测度
4、将样本分配给聚类中心:在每个种子点周围的邻域内为每个像素点分配类标签 即属于哪个聚类中心 。 和标准的 k means 在整张图中搜索不同 SLIC 的搜索范围限制为 2 S* 2 S 可以加速算法收敛 如下图 。
5、更新聚类中心 6、收敛性检验:计算当前步骤和前几步中平均向量之间的差的欧几里得范数 。 计算残差 E 即 k 个范数之和 。 若 𝐸 𝑇 其中 T 是一个规定的非负阈值 则停止 。 否则 返回步骤 2 7、后处理超像素区域:将每个区域中的所有超像素替换为他们的平均值
优点
1、生成的超像素如同细胞一般紧凑整齐 邻域特征比较容易表达 。 2、不仅可以分割彩色图 也可以兼容分割灰度图 。 3、需要设置的参数非常少 默认情况下只需要设置一个预分割的超像素的数量 。 4、相比其他的超像素分割方法 SLIC 在运行速度 、 生成超像素的紧凑度 、 轮廓保持方面都比较理想
总结
第七章 图像的特征提取
定位 初始关键点 localize where to describe features 描述 如何描述这些区域/点
7.1 背景知识
图像分析系统的基本构成
在图像分割后,为了进一步的处理,分割后的图像一般要进行形式化的表达和描述。 解决形式化表达问题一般有两种选择: 1、根据区域的外部特征来进行形式化表示 2、根据区域的内部特征(比较区域内部的象素值)来进行形式化表示
选择表达方式,要本着使数据变得更有利于下一步的计算工作。下一步工作是基于所选的表达方式描述这个区域,一般情况下: 1、如果关注的焦点是形状特性,选择外部表示方式 2、如果关注的焦点是反射率特性,如颜色、纹理时,选择内部表示方式。 3、所选表示方式,应该对尺寸、变换、旋转等变量尽可能的不敏感
7.2 边界预处理
7.2.1 区域骨架抽取 见复印件
1、Blum的中轴变换方法(MAT:Medial Axis Transform) 设:𝑅是一个区域,𝐵为𝑅的边界,在𝑅中寻找点𝑝(x, y),使𝑝最接近于B。如果𝑝有多这个这样的临点(最近邻点>=2),则𝑝点形成的轨迹为R的中轴(骨架)。 存在问题:计算量大 在保证产生正确的骨架的同时,改进算法的效率。比较典型的是一类细化算法,它们不断删去边缘,但保证删除满足: 1、不移去端点 2、不破坏连通性 3、不引起区域的过度腐蚀
7.3 特征描述子
7.3.1 边界特征描述子 见复印件
7.3.2 区域特征描述子
7.3.2.1 基本描述子 见复印件
7.3.2.2 纹理描述(基于直方图、基于统计方法、基于谱方法)
1、定义 纹理特征刻画了图像中重复出现的局部模式与他们的排列规则,常用于图像分类和场景识别。
2、特点 反映物体表面的特性,无法完全反映出物体的本质属性,所以仅用纹理特征无法获得图像的高层次内容。
3、基于直方图的纹理测度
令z是一个表示灰度的随机变量,$𝑝(𝑧_i), i = 0,1,2…𝐿$是对应的归一化直方图,其中𝐿是不同灰度级的数量
- 均值 $m=\sum_{i=0}^{L-1}z_ip(z_i) $
- 𝑍相对于平均值的𝑛阶矩 $\mu_n=\sum_{i=0}^{L-1}(z_i-m)^np(z_i) $
- 一致性测度 $U=\sum_{i=0}^{L-1}p^2(z_i) $
- 方差 $\sigma^2(z)=\mu_2(z)$
- 相关性测度 $R=1-\frac{1}{1+\sigma^2(z)},$其中$\sigma^2(z)$最好除以$(L-1)^2$进行归一化。
- 熵 $e(z)=-\sum_{i=0}^{L-1}p(z_i)log_2p(z_i)$
U对所有灰度级都相等的图像有最大值(极大 一致性) , 并从最大值开始降低。熵是可变性的测度,对恒定图像其为零。
4、基于统计方法的纹理描述
(1)灰度共生矩阵(GLCM, Gray-level co-occurrence matrix)通过计算灰度图像得到它的共生矩阵,然后再计算所得到的共生矩阵的部分特征值,来分别代表图像的某些纹理特征。
(2)作用 灰度共生矩阵能反映图像灰度关于方向、相邻间隔、变化幅度等综合信息(直方图无法体现),它是分析图像的局部模式和它们排列规则的基础。
(3)灰度共生矩阵构建方法 1、矩阵$G$大小为灰度级的数量。 8比特(256灰度级)大小为256x256。为减少计算量,也会采取将灰度级量化,减小数据量 2、$g_{ij}$表示灰度为$z_i$和$z_j$的像素对在Q规定的位置上出现的次数。Q是定义两个像素的相对位置的算子
(4)共生矩阵特性描述 $$ p_{ij}=\frac{g_{ij}}{n} $$
$n$满足Q的像素对的总数(G元素加和)
随机图像的共生矩阵为随机矩阵 | 正弦波的对称性,像素对𝑧i, 𝑧j 的数量与产生对称共生矩阵的像素对𝑧j,𝑧i 数量相同 | 很多值沿主对角线也是分组的,但是分布比G2密集,这一性质表明图像的灰度值变化很大 |
4、谱方法(了解) 傅立叶谱非常适合描述图像中周期或半周期二维模式的方向性。这样的全局纹理模式很容易区分为谱中高能量的集中爆发。
用于纹理描述的傅立叶谱的特点 1、谱中的突出峰给出纹理模式的主方向 2、频率平面上的峰值位置给出纹理模式的基本空间周期 3、通过滤波可以消除任何周期分量
谱特征的检测和解释
通常可在极坐标中将谱表示为函数𝑆(𝑟, 𝜃)。对于每个方向𝜃,𝑆(𝑟, 𝜃)可表示为一维函数$𝑆_{\theta}(𝑟)$ 𝜃固定时,分析$𝑆_{\theta}(𝑟)$得到从原点到径向的方向的谱的特性(如峰的出现)
𝑟固定时,分析得到一个以原点为圆心的圆上谱的特性
7.3.3 特征描述子的主分量
假设有n幅配准(目标通过图像变换重合)的图像,那么所有图像中相同空间位置的对应图像可以排列为一个n维向量$\bold{x}= [𝑥_1 ,𝑥_2 ⋯𝑥_n]^T$
-
总体平均向量 $\bold{m_x}=E(\bold{x})$ 比如每幅图像都是524*524,就是524*524个n维向量求均值
-
协方差矩阵
-
霍特林变换
其中A为一个矩阵,这个矩阵的各行由𝑪𝒙的特征向量构成,并按特征值降序排列
性质
𝑪𝒚是对角阵,主对角元素是𝑪𝒙的特征值
LDA PCA 特征值由x维度决定
7.4尺度不变特征变换 SIFT Scale-invariant feature transform 见复印件
1、构建尺度空间
Octave1 images smoothed using Gaussian lowpass kernels (k>1) ($\sigma$越大越模糊)
Octave2 Octave1下采样
第九章 图像分类
面临的困难和挑战:视角变化 尺度条件 变形 遮挡 光照条件 背景杂乱 类内差异
9.1 原型匹配模式分类
最小距离分类器
使用最广泛且最简单的原型匹配分类方法之一
它在未知模式向量X和每类原型之前计算一个基于距离的测度d,然后将未知模式赋予最接近的原始类。是一种聚类分析
-
计算每个类别对应特征的均值
$n_j$ 第j个类别的样本数,$c_j$第j个类别,$N_c$类别总数
-
最小分类器计算距离
$D_j(x) = \left | \boldsymbol{x}-\boldsymbol{m_j} \right |$
$d_j(x)=\boldsymbol{m}_j^T\boldsymbol{x}-\frac{1}{2}\boldsymbol{m}_j^T\boldsymbol{m}_j$
-
决策函数/判别函数
-
决策边界(与两类特征点等距)
优点:原理简单、计算速度快 缺点:分类精度不高
e.g.
9.2 最优(贝叶斯)统计分类器
有监督的学习算法
贝叶斯决策函数
乘式取对数
优点 原理简单、学习效率高
缺点/不足
- 由于该算法以自变量之间的独立(条件特征独立)性和连续变量的正态性假设为前提,会导致算法精度在某种程度上受影响。
- 除了均值方差,还有更精准的模式/统计特性(特征值、特征向量$\Rightarrow$ 表征哪个方向变化剧烈)
9.3 神经网络分类
robust(图像变换后不影响类别等较宏观特征的提取)和sensitive(判断具体图像变换)之间的trade-off:网络到一定深度后分开,一部分robust,另一部分sensitive,结合完成任务
N.B. filter的最大的特点是其深度与输入层的深度是一致的。输入层是单通道,单个filter也是单通道。 输入层是三通道,单个filter也是三通道
LeNet
VGG16
Wide ResNets
ResNet的跳连接,导致了只有少量的残差块学到了有用信息,于是出现了一种新的网络WideResNet(在ResNet的基础上减小深度,增加宽度)。
ResNeXt
ResNeXt 结构基于VGG的“堆叠”与Inception系列网络的“split-transform-merge”思想,可以在不增加参数复杂度的前提下提高准确率,减少了超参数的数量
256,1x1,64
256维输入经过64个1x1(x256)filter降维到64维
a,b,c三个子图结构是等价的,最后一个子图用了分组卷积技术使得结构更加紧凑简洁,模型实现使用的是最后一个子图的结构
DenseNet
在保证网络中层与层之间最大程度的信息传输的前提下,让网络每一层和前面所有的层连接起来
因为feature map大小不同的时候concat会出现size问题,DenseNet把网络分成了几个Dense Block,中间用transition layer(用来改变feature map大小)连接起来
DenseNet-BC
B表示bottleneck结构,把3x3conv替换成(1x1, 3x3)conv; C表示压缩,在transition层设一个参数𝜃来减小特征图个数
实验结果
#parameters越大,计算量/模型文件大小/加载时间都变大
DenseNet网络复杂,参数量大,学习/收敛能力强,但也更快达到瓶颈
Squeeze-and-Excitation Networks (SENet)
squeeze与注意力机制相似,判断不同特征层重要性
激活后加权到原特征层
SE block并不是一个完整的网络结构,而是一个子结构,可以嵌到其他分类或检测模型中
MobileNet
卷积神经网络越来越复杂,内存与响应速度问题使得在某些真实的应用场景如移动或者嵌入式设备,如此大而复杂的模型是难以被应用的
基本单元:深度级可分离卷积 (depthwise separable convolution)
- depthwise convolution:针对每个 输入通道采用不同的卷积核
- pointwise convolution:采用 1x1的卷积核的普通卷积(通道整合)
但是降低flops(计算复杂度)后时间不一定减少,还和硬件计算方式有关。MobileNet频繁调度各个channel的filter