Chapter1.绪论
概念
数字图像处理(Digital Image Processing):指借用数字计算机处理数字图像。
数字图像:用一个数字阵列来表示的图像。数字图像是图像的数值表示,像素是最小单位。数字图像是相对于模拟图像(?)来说的
图像:图像是对客观存在物体的一种相似性的生动模仿与描述,是一种直观化的描述、写真或模拟。简言之,是客观世界的仿真。
图像的分类
按照图像的实际客观存在分
- 物理图像:指物质或能量的实际分布。
- 可见图像:人眼可见的图像,包括光学图像,人工生成的图像,照片、绘画
- 不可见的物理图像:可测的物理特征量的空间分布所构成的图像。通过可视化手段将其改造成肉眼可识别的图像。如人口密度图、压力图等。
- 虚拟图像:采用数学方法,将概念形成的物体(非实物)进行表示的图像。虚拟图像是利用数学模型生成的图像。关键问题:能否具有真实图像的真实感。
按图像空间坐标和幅度(亮度和色彩)的连续性分
- 模拟图像:空间坐标和幅度都连续变化的图像。I=F(x,y)
- 数字图像:空间坐标和幅度都用离散的数字(一般是整数)表示的图像。数字阵列来表示图像,每个数字都表示图像的一个像素。对每个像素点的颜色、亮度的数字化描述,就可得到在计算机上处理的数字图像。
数字图像的描述
I=F(x,y)
x,y是空间坐标,幅值f称为该点图像的强度或灰度。
可以用矩阵/向量/数组描述。
矩阵坐标系、直角坐标系
a:矩阵坐标系,常用于屏幕显示
b:直角坐标系,常用于图像计算
图像处理分类
模拟图像处理
利用光学、电子学对模拟图像进行处理。优点:处理速度快、信息容量大、经济
数字图像处理
利用数字化技术对数字图像进行处理的过程和方法。优点:精度高、处理方便、重复性好
补充:数字图像处理、计算机视觉、计算机图形学关系
计算机视觉:计算机视觉的目的是发展出能够理解自然景物的系统。在机器人领域中,计算机视觉为机器人提供眼睛的功能。
计算机图形学:用计算机将由概念所表示的物体(不是实物)图像进行处理和显示。侧重于根据给定的物体描述模型、光照及想象中的摄像机的成像几何,生成一幅图像
图像处理方法
空域法
处理点阵的方法,又可分为
- 邻域处理法
- 梯度运算(一阶微分算子)
- 拉普拉斯算子运算(二阶微分)
- 平滑算子运算
- 卷积运算
- 点处理法
- 灰度处理
- 面积、周长、体积、重心运算(?)
变换域法
首先对图像进行正交变换,得到变换域系数阵列,然后再进行各种处理,处理后再反变换到空间域,得到处理结果
- 滤波
- 数据压缩
- 特征提取
Chapter2.图像处理基础
2.1视觉感知
眼睛构造;晶状体成像;
人的视觉模型:低通滤波-log-高通滤波
视觉特性:二者说明感觉亮度不是一维简单函数
- 同时对比度:相对的明暗强度感受
- mach带效应:在明暗变化部位附近,暗区/亮区存在一条更暗/亮的条带
$$
S=KlnI+K_0
$$
人的感觉量与刺激量的对数成正比,在光弱时对变化敏感,在光强时对变化不敏感。
视觉时间特性:视觉暂留效应、形状感觉、错视
2.2色度学基础
RGB模型:三维空间中的一个点表示颜色
玩不腻是吧
HSI:色调、饱和度、强度模型
2.3图像的数字化
1采样
将在时间和空间上连续的图像转化成离散的采样点集(即像素)的操作
静止图像,分别沿垂直+水平采样;运动图像(时间域连续),需现在时间轴上采样,再进行静止图像类似操作。
采样两个参数:采样间隔,采样孔径
香农采样定理(一维采样定理):采样的频率>=原始频率的两倍,就可以完全精确地复原原来的连续信息
均匀采样:等间隔采样
非均匀采样:根据图像细节的丰富程度改变采样间距
2量化
将像素灰度转换为离散的整数值的过程。
一般用0-255表示256个灰度级
一般使用等间隔矩形网络采样,对幅度进行等间隔量化。
均匀量化
非均匀量化:对像素出现频度少的部分量化间隔取大,频度大的部分量化间隔取小。
3块状和假轮廓现象
对一幅图像,当量化级数Q一定时,采样点数越多,图像质量越好;当采样点数减少时,图上的块状效应就逐渐明显。
当图像的采样点数一定时量化级数越多,图像质量越好;当量化级数越少时,图像质量越差,量化级数最小的极端情况就是二值图像, 图像出现假轮廓。如下图所示
256色-64-32-16-4-2二值图像
(1)对缓变的图像,应该细量化,粗采样,以避免假轮廓。
(2)对细节丰富的图像,应细采样,粗量化,以避免模糊(混叠)。
2.4数字图像的数值描述
有点乱
编程方便,使用矩阵坐标系定义图像的坐标。
分类
- 黑白图像/二值图像
- 灰度图像
- 彩色图像
图像质量
- 层次:表示灰度级的数量,层次越多视觉效果越好
- 对比度:亮度(灰度,明暗变化)的局部变化,画面黑、白的反差/渐变层次,比值越大层次越多图像越丰富。对比度=最大亮度/最小亮度
- 清晰度:相关因素有亮度、对比度、主题内容大小、细微层次、颜色饱和度
2.5数字图像的数据结构
二维数组、组合方式、比特面、分层结构、树状结构
2.6像素间的基本关系
4邻域、对角邻域、8邻域
像素连通性
定义V是用于定义邻接性的灰度值集合,存在三种类型的邻接性:
(1)4邻接:如果q在N4(p)集中,具有V中数值的两个像素p和q是4邻接的.
(2)8邻接:如果q在N8(p)集中,具有V中数值的两个像素p和q是8邻接的.
(3)m邻接(混合邻接):如果
(i)q在N4(p)中 或
(ii)q在ND(p)中且集合N4(p)∩N4(q)没有V值的像素.
m邻接可以消除8邻接所带来的二义性,实质是当同时存在4邻接和8邻接时,优先采用4邻接。
像素通路
像素点p(x, y)到像素点q(s, t)的通路(path):
特定的像素序列(x0,y0),(x1,y1),…,(xn,yn),其中(x0,y0)=p(x,y), (xn,yn)=q(s,t), 且像素(xi, yi)和(xi-1, yi-1) (对于1≤i≤n)是邻接的.
n是通路的长度。
若(x0, y0)=(xn, yn),则通路是闭合通路。
2.7数字图像处理的基本方法
1局部运算
- 点运算
- 邻域运算
2迭代运算
3位置不变处理和位置可变处理
4窗口运算和模版运算:窗口划定了一个矩形区域,模板是一个特定形状区域
5帧运算:在两幅或多幅图像间进行运算产生一幅新图像的处理。
Chapter3.位图图像基础
3.1位图文件
数字图像类型
矢量图
是用一系列绘图指令来表示一幅图,如AutoCAD中的绘图语句。这种方法的本质是用数学(更准确地说是几何学)公式描述一幅图像。图像中每一个形状都是一个完整的公式,称为一个对象。对象是一个封闭的整体,所以图像上对象的变化都不会影响到图像中的其他对象。实质就是用数学公式描述的图像就是矢量图。
矢量图的特点:
矢量图的两个优点:
一是它的文件数据量很小;
二是图像质量与分辨率无关,不会失真,这意味着无论将图像放大或缩小了多少次,图像总是以显示设备允许的最大清晰度显示。
矢量图有一个明显的缺点,就是不易制作色调丰富或色彩变化太多的图像,而且绘出来的图像不是很逼真,同时也不易在不同的软件间交换文件。
在Corel Draw和Adobe Illustrator中生成的图像均为矢量图 。
位图-BMP位图
是由像素点构成一幅图像,每个像素点具有颜色属性和位置属性。放大会产生失真
Windows把位图分为两类:设备无关位图DIB,设备相关位图DDB
DDB位图没有调色板,其数据结构与设备有关的,显示的颜色依赖硬件;DIB位图自带颜色信息即调色板。
线画稿:黑白2色,0,1
灰度图像:0-255
索引颜色图像:使用预先定义的调色板色表的图像,最多只能显示256色
真彩色图像:RGB 24bit
3.2位图文件结构
位图文件=文件头+位图信息(=位图信息头+调色板)+位图像素数据
位图文件头作用:是设定图像文件类型,大小等。
位图信息作用:所记录的值用于分配内存,设置调色板信息,读取像素值等。
位图文件头:14B
位图信息头:40B
调色板:一个数组,对需要调色板的位图文件而言的,如果是真彩色图像,则位图信息头后面直接是位图数据。
位图数据:在DIB中,图像的底行是文件的第一行,图像的顶行是文件的最后一行。
- 对于用到调色板的位图,图像数据就是该像素颜色在调色板中的索引值。
- 对于真彩色图像,图像数据就是实际的R、 G、 B值。图像数据中每3个字节表示一个像素,每个字节表示一个RGB分量
- 对于2色位图,用1位就可以表示该像素的颜色(一般0表示黑, 1表示白),所以一个字节可以表示8个像素。
- 对于16色位图,用4位可以表示一个像素的颜色,所以一个字节可以表示2个像素。
- 对于256色位图,一个字节刚好可以表示1个像素。
还要倒读?!
小端方式存储数据,低地址存放低位数据
如0x1756实际存储是(small address)56 17(big add)
后面的不会考吧不会吧不写了
Chapter4.图像的几何变换
4.1几何变换基础
1 图像的几何变换:是指用数学建模的方法来描述图像的位置,大小,形状等变换的方法,也就是通过数学建模实现对数字图像进行几何变换处理。
2 几何变换内容:图像的空间平移、比例缩放、旋转、仿射变换和图像插值。
3 几何变换实质:改变像素的空间位置或估算新空间位置上的像素值。
齐次坐标什么的
所谓齐次坐标表示法就是用N+1维向量表示N维向量。线性代数
4.2图像的位置变换
平移
平移原理:在图像平移是将一幅图像中所有的点都按照指定的平移量在水平、垂直方向移动,平移后的图像与原图像相同。
平移的直角坐标公式:图像的平移用到的是中学学过的直角坐标系的平移变换公式:
平移的逆变换:对变换矩阵求逆,可以得到逆变换
逆变换作用:平移后的图像上的每一点通过逆变换在原图像中找到对应的点,则平移后的图象中每个象素的颜色利用逆变换确定。按照逆变换公式得到的(x0,y0)不在原图中该怎么办?即逆变换往往得到的点不在原图中。 通常的做法是,把该点的RGB值统一设成(0,0,0)或者(255,255,255)。
镜像
镜像分为水平镜像和垂直镜像。
水平镜像:以图像的垂直中轴线为中心交换图像的左右 两部分。设图像高度为Height,宽度为Width,原图中的(x0,y0)经过水平镜像后,坐标将变成(Width-x0,y0)。
垂直镜像:以图像的水平中轴线为中心交换图像的上下两部分。点(x0,y0)经过垂直镜像后,坐标将变成为(x0,Height-y0)
旋转
图像的旋转是指以图像中的某一点(一般是中心点)为原点以逆时针或顺时针的方向旋转一定的角度。旋转后,图像的大小一般会改变。
直角坐标系图像旋转
这个计算公式计算出的值为小数,而坐标值为正整数。
这个计算公式计算的结果值所在范围与原来的值所在的范围不同。
因此需要前期处理 :扩大画布,取整处理(解决小数问题),平移处理(解决负数问题)
注意theta是逆时针转角
一些问题:小数,负数,图像转飞,空洞
图像旋转之后,像素排列的两个问题:
1)像素的排列不是完全按照原有的相邻关系。这是因为相邻像素之间只能有8个方向方向不够细腻。即转飞
2)会出现许多的空洞点。即出现空白点
这个最好算一下捏
图像旋转出现的两个问题的 本质 都是因为像素值的填充是不连续的离散不连续造成。
因此可以采用插值填充的方法来解决。
插值填充法:临近插值法,均值插值法。
临近插值法:就是将判断为空穴位置上的像素值用其相邻行(或列)的像素值来填充。
均值插值法:是将空穴像素周围像素值的均值填充。
极坐标旋转
利用极坐标中的角度,直接做旋转,然后再转换为对应的直角坐标
先转换为极坐标-极坐标旋转-逆变换为直角坐标
先将横纵坐标代入直角转极坐标公式算出p和theta,旋转后只改变theta,p不变
反变换旋转
没有空穴,但是仍存在转飞
基本原理:就是从新图像的像素点坐标反过来求其所对应的原图像的像素点的坐标。
步骤:先确定画布大小-确定新图像坐标-计算出对应的原图像坐标。
确定原图旋转30°后的画布大小,这点我们可从坐标旋转公式计算得到。x[-1,2],y[1,4]。因此,变换后的画布大小是4×4
规范前的新图像的坐标x’ y’
- 根据反变换公式,得到其对应的原图像F的行,列坐标:新图像中像素(0,2)对应的原图像中像素(1,2).因为把像素(0,2)代入反变换公式得到:四舍五入
x=2*sin30=1
y=1.732=2
- 旋转后新图像为
G=0 0 f13 0
f11 f12 f13 f23
0 f21 f22 f33
0 f31 f32 0
可以看出,新图像G(0.2)像素点放的是原图像F(1,2)像素点,反变换法没有空穴,因此不需要后续的插值处理。
4.3图像的形状变换
图像缩小
分为按比例缩小和不按比例缩小两种。图像缩小之后,因为承载的信息量小了,所以画布可相应缩小
图像缩小:实际上就是对原有的多个数据进行挑选或处理。
原理:获得期望缩小尺寸的数据,并且尽量保持原有的特征不丢失。
方法:最简单的方法就是等间隔地选取数据。相当于采样
反变换思想:
放大
图像放大算法关键:在于对未知像素使用何种插值方式。
放大原理:如果需要将原图像放大k倍,则将原图像中的每个像素值,填在新图像中对应的k*k大小的子块中。
普通放大
设原图像大小为MN,放大为k1Mk2N,(k1>1,k2>1)。算法步骤如下:
设旧图像是F(i,j), i=1,2,…,M, j=1,2,…,N。新图像是I(x,y), x=1,2,…,k1M, y=1,2,…,k2N。
I(x,y)=F(c1x, c2y), 新图的点与原图的点的对应计算,都是要找在原图中的对应位置。原图相当于是新图缩小c1=1/k1 c2=1/k2
最邻近点插值
最邻近点插值算法是最简单也是速度最快的一种算法,其做法是将放大后未知的像素点P,將其位置换算到原始影像上,与原始的邻近的4周像素点A,B,C,D做比较,令P点的像素值等于最靠近的邻近点像素值即可。如上图中的P点,由于最接近D点,所以就直接取P=D
这种方法会带来明显的失真。在A, B中点处的像素值会突然出现一个跳跃,这就是出现马赛克和锯齿等明显走样的原因。最临近插值法唯一的优点就是速度快。
双线性插值
- 假设A图像的灰度级变化在纵向方向上是线性变化的,这样根据直线方程或者几何比例关系就能够求得(a,y/4)和(a+1,y/4)坐标处的灰度级A(a,y/4)和A’(a+1,y/4)。
- 再假设在((a,y/4),A(a,y/4))和(a+1,y/4),A’(a+1,y/4)这两点所确定的直线上,灰度级仍然是线性变化的。求出直线方程,于是就可以求得(x/4,y/4)处的灰度级A(x/4,y/4)。
算法
先按照基于像素放大原理就是最邻近像素点法的图像放大方法,确定每一个原图像的像素在新图像中对应的子块。对新图像中每一个子块,仅对其一个像素进行填充。在每个子块中选取一个填充像素的方法如下:
对右下角的子块,选取子块中右下角的像素;
对末列、非末行子块,选取子块中的右上角像素;
对末行、非末列子块,选取子块中的左下角像素;
对剩余的子块,选取子块中的左上角像素。
计算已填充像素所在列中的其他像素的值,根据该像素上方与下方已填充的像素值,双线性插值方法得到
对剩余像素的值,可以利用该像素的左方与右方的已填充像素的值,通过线性插值方法计算得到。
4.4图像错切
错切:图像的错切变换实际上是平面景物在投影平面上的非垂直投影效果。错切变换也称为剪切、错位或错移变换。
原理:保持图像上各点的某一坐标值不变,而另一坐标值进行线性变换。坐标不变的轴称为依赖轴,变换的轴称为方向轴。
因为绝大多数图像都是三维物体在二维平面上的投影得到的,所以需要研究图像的错切现象。
沿x轴关于y的错切:变换前和变换后y值坐标保持不变,而x坐标依赖于初始坐标值(x,y)及参数c的值呈线性变化。
沿y轴关于x错切同理。变换前和变换后x值坐标保持不变,而y坐标与初始坐标值(x,y)及参数b有关。
错切之后原图像的像素排列方向发生改变。与旋转不同的是,x方向与y方向独立变化。
4.5三维图像的投影变换
似乎比较复杂然后没有细讲?ppt干干净净
Chapter5.图像的灰度变换
5.1图像增强处理技术
是指按特定的需要突出一幅图像中的某些信息。同时,削弱或去除某些不需要的信息的处理方法。
图像在传输或处理过程中会引入噪声或使图像变模糊,从而降低了图像质量,甚至淹没了特征,给分析带来困难,因此要增强特征,进行处理。
在图像增强的过程中,没有新信息的增加,只是通过压制一部分信息,从而突出另一部分信息。也就是说,增强处理并不能增强原始图像的信息,其结果只能增强某种信息的辨识能力,而这种处理有可能损失一些其他信息。
分类:
- 频域处理方法,基础是卷积定理,采用修改图像傅立叶变换的方法实现对图像的增强。常用的方法,低通滤波,高频提升滤波、同态滤波等。
- 空域处理方法,直接对图像中的像素灰度进行处理,基本上是以灰度映射变换为基础。所用的映射变换取决于增强的目的。包括灰度变换、直方图修正,平滑和锐化处理、彩色增强等。
5.2灰度变换
灰度直方图
概念:灰度直方图是灰度级的函数,是对图像中灰度级分布的统计。反映的是一幅图像中各灰度级像素出项的频率。灰度直方图就是频率同灰度级的关系图。
形式:横坐标表示灰度级,纵坐标表示图像中对应某灰度级所出现的像素个数,也可以是某一灰度值的像素数占全图像素数的百分比,即灰度级的频率(也是直方图归一化)。
功能:它是图像的一个重要特征,反映了图像灰度分布的情况。灰度直方图是最简单且最有用的工具。
性质:
灰度直方图只能反映图像的灰度分布,而不能反映图像像素的位置,即丢失了像素的位置信息。
一幅图像对应唯一的灰度直方图,反之不成立。不同的图像可对应相同的直方图,下图给出了一个不同的图像具有相同直方图的例子。同样也是丢失位置信息
一幅图像分成多个区域,多个区域的直方图之和即为原图像的直方图。
对比度计算
亮度(灰度,明暗变化)的局部变化,画面黑、白的反差/渐变层次,比值越大层次越多图像越丰富。
对比度=最大亮度/最小亮度,计算公式:(??)相邻像素:可选4邻域,8邻域两种
计算例:中心像素灰度值与周围4近邻像素灰度值之差的平方之和,除以以上平方项的个数。
从(1,1)点开始,范围之外的坐标点不进行计算;因此第一项只有下面的(2,1),右边的(1,2)两点
线性灰度变换
线性变换:正比和反比
非线性:对数、幂
在曝光不足或过度的情况下,图像灰度可能会局限在一个很小的范围内。这时就形成一个模糊不清,似乎没有灰度层次的图像。采用线性变换对图像每一个像素灰度做线性拉伸,可有效地改善图像视觉效果。
分段线性变换
1扩展感兴趣的,牺牲其他
对于感兴趣的[a,b]区间,采用斜率大于1的线性变换来进行扩展,而把其他区间用a或b来表示。变换函数是
2扩展感兴趣的,压缩其他
在扩展感兴趣的[a,b]区间的同时,为了保留其他区间的灰度层次,也可以采用其它区间压缩的方法,既有扩有压,变换函数为
一些应用:
对比度线性展宽(拉伸)
目的:通过将亮暗差异(即对比度)扩大,来把人所关心的部分强调出来。
原理:进行像素点对点的,灰度级的线性影射。该影射关系通过调整参数,来实现对亮暗差异的扩大。
对比度展宽的特性:处理前后的图像量化级数相同,即处理前后图像的灰度分布范围都是[0,255],但处理后的图像的表现效果要优于处理前的图像。
进行对比度展宽,只能通过抑制非重要信息的对比度来腾出空间给重要信息进行对比图展宽。
对比度线性展宽原理:实际就是图像灰度值的线性映射。进行像素点对点的,灰度级的影射。
对比度线性展宽处理方法:按照下面的公式进行点对点的映射
对比度展宽(拉伸)例图。
(a)变换函数的形式(b)低对比度图像
(c)对比度展宽(拉伸)的结果(d)门限化的结果
灰窗级
当256个灰度级所表示的亮暗范围内的信息量太大,没办法很好地表述时,通过开窗的方式,只把窗内的灰度级展宽,而把窗外的灰度级完全抑制掉。
什么是灰窗级?就是通过映射关系,把灰度值落在一定范围内的目标进行对比度增强。也就是只显示指定灰度范围内的信息。
灰窗级实际上是线性对比度展宽的一种特殊形式。
灰窗级切片(灰度切割)
1 什么是灰窗级切片?
是指将所需检测的目标与画面中其他的部分分离开,目标部分置为白(黑),而非目标部分置为黑(白)。这样就把需要的目标突显出来,消除背景细节。
2 灰窗级切片有什么用?
在图像处理中,经常要对某个目标物的形状、边界、截面面积以及体积进行测量,从而得到该目标物功能方面的重要信息。如,医学中要对人体器官和组织进行精确测量。
线性动态范围调整(效果同灰窗级)
动态范围:是指图像中从暗到亮的变化范围。变换后图像的0-255并不是原图像的0-255
动态范围对人视觉的影响:由于人眼所可以分辨的灰度的变化范围是有限的,所以当动态范围太大时,很高的亮度值把暗区的信号都掩盖了。
动态范围调整思路:通过动态范围的压缩可以将所关心部分的灰度级的变化范围扩大。
动态范围调整方法分为以下两种:
1)线性动态范围调整
2)非线性动态范围调整
线性动态范围调整的基本思路:通过把原图中“不太黑”的像素也变成黑,把原图中“不太白”的相素也变成白的方式,来压缩动态范围,使新的图像中,关心部分的对比度可以展宽。
如下图所示,将原来[0,255]范围内的亮暗变化,压缩到[a,b]范围内。再将[a,b]范围内的灰度值扩张到[0,255]。
非线性灰度变换
对数变换
其中 lambda是调节常数。用于调节变换后的灰度值,使其符合实际要求。
对数变换的作用是扩展图像的低灰度范围,同时压缩高灰度范围。
幂次变换
和对数变换的效果相反,指数变换使得高灰度范围扩展,压缩低灰度范围
其中c和gamma为常数。 gamma值的选择对于变换函数的特性有很大影响,如下图示。
应用:γ校正
几乎所有的CRT显示设备、摄像胶片、许多电子照相机的光电转换特性都是非线性的。所以,如果不进行校正处理的话,将无法得到好的图像效果。
l光电传感器的输入输出特性:这些非线性部件的输出与输入之间的关系可以用一个幂函数来表示,形式为:设CCD的输入(入射光强度)为L,输出(电流强度)为I,则有:
1.在显示之前通过幂次变换将图像进行修正。
通常CCD的γ值在0.4 ~ 0.8之间,γ值越小,画面的效果越差。根据画面对比度的观察与分析,可以大致得到该设备的γ值(或依据设备的参考γ值)
2.对输入信息进行γ校正
代数运算
算术运算常用于灰度图像。逻辑运算用于二值图像。
加,减,乘,除
与或非,异或
加法运算
C(x,y) = A(x,y) + B(x,y)
去除叠加性噪声
假设噪声h(x,y)均值为0,且互不相关
N个图像的均值定义为:
g(x,y) = 1/N(g0(x,y)+g1(x,y)+…+ gN(x,y))
期望值E(g(x,y)) = f(x,y)
上述图像均值将降低噪声的影响
生成图像叠加效果
g(x,y) = αf(x,y) + βh(x,y)
其中α+β= 1
可以得到各种图像合成的效果,也可以用于
两张图片的衔接
减法
- 显示两幅图像的差异,检测同一场景两幅图像之间的变化。如:视频中镜头边界的检测
- 去除不需要的叠加性图案,扣绿幕
- 图像分割:如分割运动的车辆,减法去掉静止部分,剩余的是运动元素和噪声
乘法
图像的局部显示
用二值蒙版图像与原图像做乘法
非
获得一个阴图像
获得一个子图像的补图像
与
求两个子图像的相交子图
黑色是1,与之后白色变黑
模板运算:提取感兴趣的子图像
或
合并子图像(应该没有这个黑边吧?)
v模板运算:提取感兴趣的子图像
异或
获得相交子图像,即获得相交区域。
5.3直方图均衡化
均衡化
1 为什么要进行直方图均衡化
我们可通过对直方图的调整,使得图像数据信息量增大,这样也就使画面更清晰。
2 直方图均衡化原理
是将原图像通过某种变换,得到一幅灰度直方图为均匀分布的新图像的方法。设图像均衡化处后,图像的直方图是平直的,即各灰度级具有相同的出现频数(大体相同),那么由于灰度级具有均匀的概率分布,图像看起来就更清晰了
算法:
确定灰度级,得到灰度级的概率分布
根据概率分布得到累计的概率
统一灰度级,获得一个到新图的映射关系
式中:L是灰度级的总数目,pr(ri)是取第i级灰度值的概率,ni是图像中出现第i级灰度的次数,n是图像中像素总数。
(?)统一灰度级: 这里只对图像取8个等间隔的灰度级, 变换后的值也只能选择最靠近的一个灰度级的值。因此,以1/7为量化单位进行舍入计算,得到
上面的s0=0.19≈0.142857(1/7),s1=0.44≈0.428571,s2=0.65≈0.714285,s3=0.81≈0.857142,s4=0.89≈0.857142,后面都约等于1了
0.19*7=1.33
由上述数值可见,新图像将只有5个不同的灰度级别,可以重新定义如下一组符号
- 由于数字图像是离散的,因此直方图均衡化并不能产生具有理想均衡直方图的图像,但可以得到一幅灰度分布更为均匀的图像。
- 变换后一些灰度级合并,因此灰度级减少。
- 原始象含有象素数多的几个灰级间隔被拉大了,压缩的只是象素数少的几个灰度级,实际视觉能够接收的信息量大大地增强了,增加了图象的反差和图象的可视粒度。
ppt还有一个0-9范围的示例,再看一下,共10个灰度级为什么乘9啊?
还有一个练习题
规定化(匹配化)
引入:在某些情况下,并不一定需要具有均匀直方图的图像,有时需要具有特定的直方图的图像,以便能够增强图像中某些灰度级。
直方图规定化是使原图像灰度直方图变成规定形状的直方图从而达到对图像作修正的增强方法。
5.4彩色增强技术
1 为什么引入彩色增强技术?
由于人眼分辨不同彩色的能力比分别不同的灰度级的能力强,因此,把人眼无法区别的灰度变化,施以不同的彩色来提高识别率,这便是伪彩色增强的基本依据。
2 彩色增强技术原理
彩色增强技术是利用人眼的视觉特性,将灰度图像变成彩色图像或改变彩色图像已有彩色的分布,改善图形的可分辨性。彩色增强方法可分为伪彩色增强和假彩色增强两类。
3 什么是伪彩色增强技术?
伪彩色技术就是将灰度图像的各个不同灰度级按照线性或非线性的映射方法变换成不同的颜色,得到一幅彩色图像的增强技术。使原图像细节更容易辨认,目标更容易识别。
4 伪彩色增强的方法?
方法有:密度分割法、灰度变换彩色法、频率域伪彩色增强
密度分割法
基本思想:将灰度图像中的灰度级从0(黑)到M分成N个区间,Ii(i=1,2,…,N),给每个区间Ii指定一种彩色Ci,这样,便可以把一幅灰度图像变成一副伪彩色图像。
特点:该方法简单直观
缺点:变换出的彩色数目有限
灰度变换彩色法
基本思想:根据色度学原理,将图像f(x,y)的灰度范围分段,经过红,绿,蓝三种不同变换TR(.),TG(.),TB(.),变成三基色分量TR(x,y),TG(x,y),TB(x,y),然后用它们分别控制彩色显示器的红、绿、蓝电子枪,便可以在彩色显示器的屏幕上合成一幅彩色图像
频率域伪彩色增强
1 把黑白图像经过傅立叶变换到频率域,在频域内用三个不同传递特性的滤波器分离成三个独立分量;
2 对它们进行逆傅立叶变换,得到三种代表不同频率分量的单色图像;
3 最后将它们作为三基色分量分别加到彩色显示器的红、绿、蓝显示通道,得到一幅彩色图像。
伪彩色增强
假彩色增强是对一幅自然彩色图像或是同一景物的多光谱图像,通过映射函数变换成新的三基色分量,彩色合成使感兴趣的目标呈现与原图像不同的,奇异的颜色。其目的是将一种彩色变成另一种彩色,或把多光谱图像变成彩色图像。
5.5图像同态滤波
消除不均匀照度的影响, 增强图象细节。
在实际应用中,我们常常会遇到这样一类图像,它们的灰度级动态范围很大,即黑的部分很黑,白的部分很白,而我们感兴趣的图中某一部分物体灰度级范围又很小,分不清物体的灰度层次和细节。用一般的灰度线性变换是不行的,因为扩展灰度级虽可以提高物体图像的反差,但会使动态范围变大。而压缩灰度级,虽可以减少动态范围,但物体灰度层次和细节就会更看不清。只要使用合适的滤波特性函数,可以既使图像灰度动态范围压缩又能让感兴趣的物体图像灰度级扩展,从而使图像清晰,这就是所谓图像的同态增晰。进行同态增晰处理的系统称为同态系统。
同态系统是服从广义叠加原理的各类非线性系统。对同态系统信号处理,特别适合处理两类信号,一类是乘法组合信号,如图像同态增晰:另一类是褶积组合信号,如语音信号处理、地震信号处理等、。
一般情况下,图像是物体对照明光的反射(除本身能发光的物体外)。自然景物的图像是由两个分量乘积所组成,即照明度图型和反射度图型,或称照明函数和反射函数。照明函数描述景物的照明,可以认为与景物无关:反射函数包含景物细节,也可认为与照明无关。
若物体受到照度明暗不匀的时候,图象上对应照度暗的部分,其细节就较难辨别。同态滤波的目的:消除不均匀照度的影响而又不损失图象细节。
同态滤波的理论依据:
图象的灰度由照射分量和反射分量合成。
反射分量反映图象内容,随图象细节不同在空间上作快速变化。
照射分量在空间上通常均具有缓慢变化的性质。
反射分量的频谱落在空间高频区域,照射分量的频谱落在空间低频区域。
照明函数(低频域)描述的照明度图型分量虽然变换缓慢,但变化幅度大,使图像灰度动态范围很宽,数宇化占用很多比特数,包含信息量少——压缩
反射函数(高频域)描述的景物区,尤其是阴影区,灰度变化很小,层次不清,细节不明,这真是人们感兴趣的——扩展
同态滤波特性曲线
Chapter6.图像噪声的抑制
6.1噪声
1.1 什么是噪声?
我们说,噪声就是一些不可预测的随机信号,通常概率统计方法对其进行分析。噪声对图像处理十分重要,它影响图像处理的输入、采集、处理、输出的各个环节。
1.2 噪声的来源?
数字图像的噪声主要来源于图像的获取(数字化过程)和传输过程。
图像采集设备本身的问题:图像传感器受各种因素的影响,如获取中的环境条件和传感器元器件自身的质量等。
图像在传输过程中的问题:图像在传输过程中主要由于所用传输信道被干扰而受到噪声污染。
1.3 噪声的描述
对噪声的描述一般采用统计意义上的均值和方差。
数字图像信号是一个二维信号,其二维灰度分布为f(x,y)
图像的噪声也是二维随机过程,一般的信号噪声是一维的。
噪声的均值公式:噪声的均值表明了,图像中噪声的总体强度。
噪声的方差公式:噪声的方差表明了,图像中噪声分布的强弱差异。
噪声分类
高斯噪声(正态噪声)
噪声位置是一定的,即每一点都有噪声,但噪声的幅值是随机的。
其中$z$表示灰度值,$\mu$表示灰度值$z$的平均值或期望值,$\sigma$表示$z$的标准差。$\sigma^2$是$z$的方差。$\mu=0, \sigma=1$时,称为标准正态分布。一般地,高斯噪声均值$\mu=0$
脉冲噪声(椒盐噪声)
噪声的幅值基本相同,但噪声出现的位置是随机的。
如果pa或pb为零,则脉冲噪声称为单极脉冲
如果pa或pb均不为零,则脉冲噪声称为双极脉冲噪声或椒盐噪声
脉冲噪声可以为正,也可为负
标定以后,脉冲噪声总是数字化为最大值(纯黑或纯白)
通常,负脉冲以黑点(胡椒点)出现,正脉冲以白点(盐点)出现
均匀分布噪声
z落在[a,b]的子区间内的概率只与子区间长度有关,而与子区间位置无关,因此z落在[a,b]的长度相等的子区间内的可能性是相等的,所谓的均匀指的就是这种等可能性。
瑞利噪声
伽马(爱尔兰)噪声
指数分布噪声
噪声模型
f是图像,n是噪声
加性噪声模型
加性噪声:信号和噪声相互独立。本课只考虑加性噪声。
G(x,y)=f(x,y)+n(x,y)
乘性噪声模型
乘性噪声:又称卷积噪声,乘积性噪声可以通过同态变换成为加性噪声。
G(x,y)=f(x,y)[1+n(x,y)]=f(x,y)+f(x,y)n(x,y)
6.2图像退化模型
图像退化:图像在形成、记录、处理和传输过程中,由于成像系统、记录设备、传输介质和处理方法的不完善,从而导致的图像质量下降
图像复原就是对退化的图像进行处理,试图恢复损坏的图像,还原真面目。确定损坏过程,并尝试其逆过程进行复原。类似于图像增强,但更加客观
典型表现:图像模糊、失真、有噪声
原因:
- 大气的湍流效应
- 传感器特性的非线性
- 光学系统的像差
- 成像设备与被摄物体间的相对运动
理论上的退化方法:图像复原可以看作图像退化的逆过程,是将图像退化的过程加以估计,建立退化的数学模型后,补偿退化过程造成的失真。
可行性:在图像退化确知(知道什么类型噪声)的情况下,图像退化的逆过程是有可能进行的。
存在问题1:但实际情况经常是退化过程并不知晓,这种复原称为盲目复原。
存在问题2:由于图像模糊的同时,噪声和干扰也会同时存在,这也为复原带来了困难和不确定性。
图像退化的一般模型
图像退化过程一般都看作是噪声的污染过程,而且假定噪声是加性噪声。如果系统H是一个线性、位置不变性的过程,退化图像可以表示为
h(x,y)是退化函数的空间描述,其他各种影响的综合,可理解为综合所有退化因素的函数,n(x,y)是加性噪声,*表示空间卷积。图像退化/复原过程模型示意图如下:
f(x,y)表示一幅输入图像,g(x,y)是f(x,y)产生的一幅退化图像,H表示退化函数,η (x, y),表示外加噪声。
给定g(x,y),H和η (x, y),怎样获得关于原始图像的近似估计f(x,y)?
当一幅图像中惟一存在的退化因素是噪声时,图像退化公式可变成:
注意:实际的成像系统在一定条件下可以近似的看作是线性移不变系统,因此图像恢复过程中往往使用线性移不变的系统模型。该线性系统的输入是原图像(信号),响应是退化图像(信号)
线性移不变系统?搜了下挺复杂的
线性系统就是一个系统的输入和输出的关系是线性关系,就是说整个系统可以分解成N多的无关独立变化,整个系统就是这些变化的累加。如 x1->y1, x2->y2; 那么Ax1 + Bx2 -> Ay1 + By2 这就是线性系统。 叠加性,齐次性
线性移不变系统的形式:对于连续空间,表示一个线性系统可以用积分的形式,如Y= Sf(t,x)g(x)dt,S表示积分符号,其中f(t,x)表示的是A,B之类的线性系数。
上面的公式看上去和卷积很像。如果f(t,x) = F(t-x) 则就是卷积了。从f(t,x)变成F(t-x)实际上是说明F(t-x)是个线性移不变,就是说,变量的差不变化的时候,那么函数的值不变化。
总结:上述阐明,线性移不变系统的输出可以通过输入信号与一表征系统特性的函数g(t)的卷积得到。
6.3滤波器
去噪
改善降质图像的方法有两类:
一类是不考虑图像降质的原因,只将图像中感兴趣的部分加以处理或突出有用的图像特征,故改善后的图像并不一定要去逼近原图像。这一类图像改善方法称为图像增强,主要目的是要提高图像的可懂度。
另一类方法是针对图像降质的具体原因,设法补偿降质因素,使改善后的图像尽可能地逼近原始图像。这类方法称为图像恢复或图像复原技术。
与图像增强的区别:图像增强不是逼近原图,而是要图像清晰;图像复原是要逼近原图。
卷积运算
首先,我们已经把图像的退化模型看作是线性移不变系统。 其次,线性移不变系统的输出可以通过输入信号与一表征系统特性的函数g(t)的卷积得到。因此,我们在处理图像退化,可以采用卷积的形式进行处理。
边界问题:在图像上移动模板(卷积核)至图像的边界时,在原图像中找不到与卷积核中的加权系数相对应的9个像素,即卷积核悬挂在图像缓冲区的边界上, 这种现象在图像的上下左右四个边界上均会出现。
- 忽略图像边界数据(忽略)
- 在图像四周复制原图像边界像素的值,从而使卷积核悬挂在图像四周时可以进行正常的计算(复制)
均值滤波器
什么是均值滤波?
所谓的均值滤波是指在图像上,对待处理的像素给定一个模板,该模板包括了其周围的邻近像素。将模板中的全体像素的均值来替代原来的像素值的方法。
均值滤波可以用来对椒盐(脉冲)噪声和高斯噪声进行滤波。
其主要优点是算法简单,计算速度快,但会造成图像一定程度上的模糊。均值滤波器(邻域平均法)的平滑效果与所采用领域的半径(模板大小)有关。半径越大,则图像的模糊程度越大。
加权均值滤波器
将以上的均值滤波器加以修正,可以得到加权平均滤波器,也就是邻域的不同选取方式。
低通:若处理的中心像素点是低点(比其他的点低),那么一平均基本没影响;若是高点(比其他的点高),则平均之后要降低。
高通:若中心像素点是低点(比其他点低),则减去其他的点,更小了,不通;若是高点(比其他点高),则减去其他点,基本无影响
中值滤波器
因为噪声的出现,使该点像素比周围的像素亮(暗)许多, 给出滤波用的模板,如下图所示是一个一维的模板,对模板中的像素值由小到大排列,最终待处理像素的灰度取这个模板中排在中间位置上的像素的灰度值。
例如做3*3的模板,对9个数排序,取第5个数替代原来的像素值。
- 对于椒盐噪声,中值滤波效果比均值滤波效果好。中值滤波的原理是取合理的邻近像素值来替代噪声点
- 1 椒盐噪声是幅值近似相等但随机分布在不同位置上,图像中有干净点也有污染点。
- 2 中值滤波是选择适当的点来替代污染点的值,所以处理效果好。
- 因为噪声的均值不为0,所以均值滤波不能很好地去除噪声点。
- 对于高斯噪声,均值滤波效果比中值滤波效果好。
- 高斯噪声是幅值近似正态分布,但分布在每点像素上。
- 因为图像中的每点都是污染点,所中值滤波选不到合适的干净点。
- 因为正态分布的均值为0,所以根据统计数学,均值可以消除噪声。
二值图像去噪
二值图像的黑白点噪声滤波
方法:消去二值图像f(i,j)上的黑白的噪声,当像f(i,j)周围的8个像素的平均值为a时,若|f(i,j)-a|的值在127.5以上,则对f(i,j)的黑白进行翻转,若不到127.5则f(i,j)不变。
消除孤立黑像素点
在4点邻域的情况下,若黑像素f(i,j)的上下左右4个像素全为白(0),则f(i,j)也取为0。
在8点邻域的情况下,若黑像素f(i,j)的周围8个像素全为白(0),则f(i,j)也取为0。
边界保持平滑滤波器
前面的均值和中值滤波处理结果可知,经过平滑(特别是均值)滤波处理之后,图像就会变得模糊。我们知道,图像上的景物之所以可以辨认清楚是因为目标物之间存在边界。而对边界上的像素进行平滑滤波时,若简单的采用中值或均值,都会降低边界的灰度显著性,导致图像的模糊。
因此引入边界保持类的平滑滤波。
设置一个模板,
- 如果模板中的像素属于同一个区域,则模板中不包含边界像素,可以进行平滑处理;
- 如果模板中的像素属于至少两个不同的区域,则模板中包含有边界像素,这时要对其进行保持,不进行平滑处理。
怎样判断模板中的像素是否在同一个区域?常用方法:计算模板中所有像素的灰度方差,如果方差大,则表明模板像素属于不同区域的可能性大;反之,则模板中像素属于同一区域的可能性大。
灰度最小方差的均值滤波器(选择掩模滤波器)
选择式掩膜平滑方法取5×5的模板窗口,以中心像素为基准点,制作4个五边形、4个六边形、一个边长为3的正方形共9个形状的屏幕窗口,分别计算每个窗口内的平均值及方差。由于含有尖锐边缘的区域,方差必定比平缓区域大,因此采用方差最小的屏蔽窗口进行平均化。这种方法在完成滤波操作的同时,又不破坏区域边界的细节。这种采用9种形状的屏蔽窗口,分别计算各窗口内的灰度值方差,并采用方差最小的屏蔽窗口进行平均化的方法,也称为自适应平滑方法。
- 以f(x,y)为中心,计算9个模板中的原有像素的灰度分布方差。
- 找出方差值最小的模板位置。
- 将所选择出的模板中像素的灰度平均值代替f(x,y).
K近邻平滑滤波器
K近邻(KNN)平滑滤波器的核心是:在一个与待处理像素邻近的范围内,寻找出其中像素值与之最接近的K个邻点(是指灰度上最邻近),将该K个邻点的均值(或中值)替代原像素值。
若待处理像素是非噪声点,则通过选择像素值与之相近的邻点,可保证在进行平滑处理时,基本上是同一区域的像素值的计算。则保证图像清晰度。
若待处理点是噪声点,因噪声本身的孤立性,则通过邻点的平滑处理,可对其进行抑制。
- 以待处理像素为中心,作一个m*m的作用模板。
- 在模板中,选择K个与待处理像素的灰度差为最小的像素。
- 将这K个像素的灰度均值(中值)替换掉原来的像素值。
由此,获得KNN均值滤波的结果和KNN中值滤波的结果。
对称近邻平滑滤波器
算法示意图如下,从模板中的“对称点对” 寻找与待处理像素相同区域的点。然后对选出的点做均值运算。所谓相同区域,是相对的概念,可以是较为接近的,课本有此算法,下面这个图C1的选取就并不是严格的相同
Sigma平滑滤波器
根据统计数学的原理,属于同一类别的元素的置信区间,落在均值附近±2σ 范围之内。
Sigma滤波器是构造一个模板,计算模板的标准差σ,置信区间为当前像素值的±2σ范围。
将模板中落在置信范围内的像素的均值替换原来的像素值。
高斯平滑滤波器
所以这个为什么第七章才讲啊?
高斯滤波器是一类根据高斯函数的形状来选择权值的线性平滑滤波器。高斯平滑滤波器对于抑制服从正态分布的噪声非常有效。(移除细节)
其中,高斯分布参数Sigma决定了高斯函数的宽度。对于图像处理来说,常用二维零均值离散高斯函数作平滑滤波器。
思路:高斯滤波就是对整幅图像进行加权平均的过程,每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后得到。
两种高斯模板:
理论上来讲,图像中每点的分布都不为零,这也就是说每个像素的计算都需要包含整幅图像。在实际应用中,在计算高斯函数的离散近似时,在大概3σ距离之外的像素都可以看作不起作用,(σ=1时,在3σ内的概率为99.73%)那些像素的计算也就可以忽略。
它在对邻域内像素灰度进行平均时,给予了不同位置像素不同的权值。上图显示的是3×3邻域的高斯模板,模板上越是靠近邻域中心的位置,其权值就越高。如此安排权值的意义在于用此模板进行图像平滑时,在对图像细节进行模糊的同时,可以更多地保留图像总体的灰度分布特征。
6.4产生噪声
高斯噪声
(1)取得图像大小、数据区,并把数据区复制到缓冲区中;
(2)循环取得各点像素值;
(3)取得随机数(rand()/1024);
(4)该点像素值加上随机数;
(5)把缓冲区中改动的数据复制到原数据区中。
椒盐噪声
(1)取得图像大小、数据区,并把数据区复制到缓冲区中;
(2)循环取得各点像素值;
(3)若产生的随机数大于特定值,把该点置0;(只有这些特定点,才有噪声,值为0)
(4)把缓冲区中改动的数据复制到原数据区中。
Chapter7.图像锐化与边缘检测
7.1引言
问题的提出:一般说,图像的能量主要集中在其低频部分,噪声所在的频段主要在高频段(随机噪声叠加之后数值变大了?),同时图像边缘信息也主要集中在其高频部分(边缘比较黑吧)。这将导致原始图像在平滑处理之后,图像边缘和图像轮廓模糊的情况出现。
解决:为了减少这类不利效果的影响,就需要利用图像锐化技术,使图像的边缘变得清晰。
图像锐化处理目的:增强图像边缘,使目标物体的边缘鲜明,以便于提取目标物体的边界、对图像进行分割、目标区域识别、区域形状提取等,为图像理解和分析打下基础。其实就是为了加强图像中景物的边缘和轮廓。锐化的作用是要使灰度边缘的反差增强。
图像锐化的基本方法:因为边缘和轮廓都位于灰度突变的地方。所以锐化算法的实现是基于微分作用
图像锐化的应用:目前它已成为机器视觉研究领域最活跃的课题之一,在工程应用中占有十分重要的地位。
两种方法:
- 高通滤波:图像的边缘或线条的细节(边缘)部分 与图像频谱的高频分量相对应,因此采用高通滤波让高频分量顺利通过,并适当抑制中低频分量,是图像的细节变得清楚,实现图像的锐化。
- 空域微分法:空域的方法——微分法。邻域平均法或加权平均法可以平滑图像,反过来利用对应的微分算法可以锐化图像。由于图像模糊的实质是图像受到平均或积分运算造成的,所以为了把图像中任何方向伸展的边缘模糊的轮廓变得清晰,可以对图像进行逆运算如微分运算,从而使图像清晰化。
灰度变换曲线
画面逐渐由亮变暗时,其灰度值的变换是斜坡变化;
当出现孤立点,一般是噪声点,其灰度值的变化是一个突起的尖峰;
若进入平缓变化的区域,则其灰度变化为一个平坦段;
如果图像出现一条细线,则其灰度变化是一个比孤立点略显平缓的尖峰。
当图像由黑突变到亮,则其灰度变化是一个阶跃。
通过分析,图像中的细节是指画面的灰度变化情况,可采用微分算子来描述数据变化。
如图,逐渐亮变暗-孤立点-细线-突变-平缓
原图-一阶导-二阶导
图像沿着中心并包含噪声点的此图像的水平剖面图。这张剖面图是将要用以说明该图的一维函数。图C是简化的剖面图,该图中取了足够多的点,以便于分析噪声点、线、物体边缘的一阶和二阶微分结果。
从左到右横穿剖面图,讨论一阶和二阶微分性质。
- 图像过渡的边缘(也就是沿整个斜坡),一阶微分都不为零,经过二阶微分后,非零值只出现在斜坡的起始处和终点处。得出结论:一阶微分产生较粗的边缘,二阶微分则细。
- 孤立的噪声点。在孤立点及其周围点,二阶微分比一阶微分响应要强。
- 细线。也是一种细节。双线
一阶微分和二阶微分的区别:
(1)一阶微分处理通常会产生较宽的边缘,二阶微分处理得到的边缘则细。
(2)二阶微分处理对细节有较强的响应,如细线和孤立点
(3)一阶微分处理一般对灰度阶梯有较强的响应
(4)二阶微分处理对灰度级阶梯变化产生双响应
(5)二阶微分在图像中灰度值变化相似时,对线的响应要比对阶梯强,且点比线强.
小结:大多数应用中,对图像增强来说.二阶微分处理比一阶微分好,因为形成细节的能力强. 而一阶微分处理主要用于提取边缘。
7.2微分运算
寄,看ppt吧
纵向微分运算&横向微分运算
横向x和纵向y的微分公式,就是后面减前面
常用模板,Roberts算子
计算结果出现了小于0的像素值解决:
整体加一个正整数,以保证所有的像素值均为正。这样做的结果是:可以获得类似浮雕的效果。
将所有的像素值取绝对值。这样做的结果是,可以获得对边缘的有方向提取
双向一次微分运算
对灰度图像f在纵方向和横方向两个方向进行微分。该算法是同时增强水平和垂直方向的边缘。该算法的数学表达式为:G(i,j)=sqrt{[f(i,j)-f(i,j-1)]^2+[f(i,j)-f(i-1,j)]^2}就是梯度运算
7.3梯度锐化
梯度锐化的一般思路:由梯度的计算可知,在图像灰度变化较大的边沿区域其梯度值大,在灰度变化平缓的区域梯度值较小,而在灰度均匀的区域其梯度值为零。
可根据得到的梯度值来返回像素的值,如将梯度值大的像素设置成白色,梯度值小的设置为黑色,这样就可以将边缘提取出来了,或者是加强梯度值大的像素灰度值就可以突出细节了达到了锐化的目的。
G(i,j)=sqrt{[f(i,j)-f(i,j-1)]^2+[f(i,j)-f(i-1,j)]^2}
梯度锐化常用的方法有:
直接以梯度值代替:计算出的梯度值直接等于该点灰度值
辅以门限判断
比较像素的梯度是否大于T,是则将梯度值加100,不是则将该像素点的灰度值恢复(就是不变),如果梯度大于255,将其置为255;
给边缘规定一个特定的灰度级
比较像素的梯度是否大于T,是则将灰度值置为La,否则灰度值不变。
给背景规定灰度级:类似3,为背景指定La
根据梯度二值化图像
7.4边缘检测
锐化是把图像的低频边缘高频化,使得图像看起来更加有轮廓
边缘检测就是检测到图像中的边缘,可以作为锐化的基础,也可以用于分割
一阶微分算法:
Roberts算子
又称交叉微分算法
特点:对具有陡峭的低噪声的图像处理效果较好,但提取的边缘较粗,边缘定位不是很准确。
只找到了绝对值的公式图,平方和再开方要更好些。
每个像素依次循环,用Roberts边缘检测算子分别计算图像中各点灰度值,对它们平方之和,再开方。
效果图:
Sobel算子
特点:锐化的边缘信息定位比较准确;对灰度渐变和噪声较多的图像处理效果比较好。
- 分别设置Sobel算子的两个模板,分别对两个缓冲区中的图像进行卷积计算。
- 两个缓存图像每个像素依次循环,取两个缓存中各个像素灰度值较大者。
Prewitt算子
特点:与Sobel相比,有一定的抗干扰性。图像效果比较干净。
Krisch边缘检测
以下8个卷积核组成了Kirsch边缘检测算子。图像中的每个点都用8个模板进行卷积,
所有8个方向中的最大值作为边缘幅度图像输出
分别设置Kirsch算子的模板1和模板2,调用Templat()模板函数分别对两个缓冲区中的图像进行卷积计算。求出两幅缓存图像中每个像素的较大灰度值存放在缓存图像1中,并将缓存图像1拷贝到缓存图像2中。
以此类推,分别设置Kirsch算子的模板3、模板4、模板5、模板6、模板7和模板8,每次计算后,求出两幅缓存图像中灰度值较大者存放在缓存图像1中。
最后将得到的结果缓存图像1复制到原图。
二阶微分算法:
LoG_Laplacian高斯-拉普拉斯算子
特点:Laplacian算子获得的边界是比较细致的边界。反映的边界信息包括了许多的细节信息,但是所反映的边界不是太清晰。Laplace算子对噪声敏感
laplacian变形算子
还有一个5*5的
Wallis算子
在前面的算法公式中注意以下几点:
1)为了防止对0取对数,计算时实际上是用 log(f(i,j)+1);
2)因为对数值很小log(256)=5.45,所以计算时用46*log(f(i,j)+1)(46=255/log(256))
Wallis算法考虑了人眼视觉特性,因此,与Laplacian等其他算法相比,可以对暗区的细节进行比较好的锐化。
Canny算子
Canny给出了评价边缘检测性能优劣的三个指标:
- 好的信噪比,即将非边缘点判定为边缘点的概率要低,将边缘点判为非边缘点的概率要低;
- 高的定位性能,即检测出的边缘点要尽可能在实际边缘的中心;
- 对单一边缘仅有唯一响应,即单个边缘产生多个响应的概率要低,并且虚假响应边缘应该得到最大抑制。
用一句话说,就是希望在提高对景物边缘的敏感性的同时,可以抑制噪声的方法才是好的边缘提取方法。
Canny算子求边缘点具体算法步骤如下:
用高斯滤波器平滑图像.
用一阶偏导有限差分计算梯度幅值和方向.
对梯度幅值进行非极大值抑制.
仅仅得到全局的梯度并不足以确定边缘,因此为确定边缘,必须保留局部梯度最大的点,而抑制非极大值。
解决方法:利用梯度的方向,将梯度离散为圆周的四个扇区,以便用3×3的模板做运算。四个扇区的标号为0到3,对应3*3邻域的四种可能组合。在每一点上,邻域的中心象素M与沿着梯度线的两个象素相比。如果M的梯度值不比沿梯度线的两个相邻象素梯度值大,则令M=0。
扇区1-5,2-6,3-7…以此类推
用双阈值算法检测和连接边缘
对非极大值抑制图像作用两个阈值th1和th2,两者关系th1=0.4th2。我们把梯度值小于th1的像素的灰度值设为0,得到图像1。然后把梯度值小于th2的像素的灰度值设为0,得到图像2。由于图像2的阈值较高,去除大部分噪音,但同时也损失了有用的边缘信息。而图像1的阈值较低,保留了较多的信息,我们可以以图像2为基础,以图像1为补充来连结图像的边缘。
链接边缘的具体步骤如下:
对图像2进行扫描,当遇到一个非零灰度的像素p(x,y)时,跟踪以p(x,y)为开始点的轮廓线,直到轮廓线的终点q(x,y)。
考察图像1中与图像2中q(x,y)点位置对应的点s(x,y)的8邻近区域。如果在s(x,y)点的8邻近区域中有非零像素s(x,y)存在,则将其包括到图像2中,作为r(x,y)点。从r(x,y)开始,重复第一步,直到我们在图像1和图像2中都无法继续为止。
当完成对包含p(x,y)的轮廓线的连结之后,将这条轮廓线标记为已经访问。回到第一步,寻找下一条轮廓线。重复第一步、第二步、第三步,直到图像2中找不到新轮廓线为止。
至此,完成canny算子的边缘检测。实际就是默认图像2中噪声点全被去掉了,只有边界点。
LOG算子
Chapter8.图像分割与测量
什么是图像分割
- 在图像分析中,通常要将所关心的目标从图像中提取出来,这种从图像中将某个特定区域与其他部分进行分离并提取出来的处理,就是图像分割。就是指将一幅图像分解为若干互不交叠的、有意义的、具有相同性质的区域。
- 图像分割将图像分为一些有意义的子区域,然后可以对这些区域进行描述,相当于提取出某些目标区域图像的特征,判断图像中是否有感兴趣的目标。
为什么要进行图像分割
- 图像分割与测量是图像识别和图像理解的基本前提步骤。图像分割质量的好坏直接影响后续图像处理的效果。
- 分割的目的就是将图像划分为不同的区域。实际图像分割通过某种方法,使得画面场景被分为“目标物”及“非目标物”两类,即将图像的像素变换为黑、白两种。因为结果图像为二值图像,所以通常又称图像分割为图像的二值化处理。
图像分割特征
- 分割出来的各区域对某种性质例如灰度,纹理而言具有相似性,区域内部是连通的且没有过多小孔;
- 区域边界是明确的;
- 相邻区域对分割所依据的性质有明显的差异。
图像分割基础
- 基于亮度值的两个基本特性之一: (跳跃性)不连续性和相似性.
- 第1类性质的应用途径是基于亮度的跳跃(不连续)变化分割图像,比如图像的边缘.
- 第2类的主要应用途径是依据事先制定的准则将图像分割为相似的区域.门限(阈值)处理、区域生长、区域分离和聚合都是这类方法的实例。
图像分割方法
- 基于图像灰度分布的阈值方法
- 基于图像灰度空间分布的阈值方法
- 边缘检测法
- 区域提取方法
8.1阈值分割法
基于图像灰度分布的阈值分割
设图像阈值的分割就是确定某个阈值Th,根据图像中每个像素的灰度值大于或小于该阈值Th来进行图像分割。
利用图像中要提取的目标物体和背景在灰度上的差异,选择一个合适的阈值。
阈值选择
- 全局阈值:是对整幅图像使用同一个阈值做处理分割。适用背景和前景有明显对比的图像。多数情况下,物体和背景的对比度在图像中不是各处一样的,这样很难用一个统一的阈值将物体与图像分开。针对这类图像,可以根据局部特性分别采用不用的阈值进行分割。
- 自适应阈值:实际处理时,需要按具体问题将图像分成若干子区域分别选取阈值,或动态地根据一定的邻域范围选择每点处阈值,进行图像分割。
阈值选择方法
直方图门限选择
阈值T可通过分析边缘检测输出的直方图来确定。假设,一幅图像只有物体和背景两部分组成,其灰度级直方图成明显的双峰值,如图。
在此情况下,选取双峰间的谷底处的灰度值T作为阈值,即可将物体和背景很好地分割开。阈值分割法可用数学表达式来描述。设图像为f(i,j),其灰度级范围为[z1,z2],设T为阈值,是z1和z2内任一值,可得一幅二值图像,其数学表达式为:
以此类推,三峰甚至多峰情况也可以选取多个T值作为阈值变为二值化(只要临近的两个区域颜色不一样能分开就行)图像。
但是对于细节变化特别多的图像,对于阈值没那么明显的图像(没有明显双峰特性)该方法效果比较差。比如lena图
半阈值选择图像分割
阈值方法,不论图像的直方图具有双峰还是多峰值,经过阈值化后均将原始灰度级多值图像变成二值图像,假如希望阈值后的图像只把图像的背景表示成二值图像(即背景不是最白(用1表示)就是最黑(用0表示))而图像中的物体仍为多值图像。此时,可采用半阈值技术,把物体从背景中分离出来。
像素灰度值与阈值之差小于T,将像素置为0,否则保持灰度值不变
迭代阈值图像分割
迭代的方法产生阈值,可以通过程序自动计算出比较合适的分割阈值。其计算方法是这样的:
(1)选择阈值T,通常可以选择图像的平均灰度值来作为初始阈值;
(2)通过初始阈值T,把图像的平均灰度值分成两组R1和R2;
(3)计算着两组平均灰度值μ1和μ2;
(4)重新选择阈值T,新的T定义为:T’=(μ1+μ2)/2;
循环做第二步到第四步,一直到两组的平均灰度值μ1和μ2不在发生改变,那么我们就获得了所需要的阈值
最大类间方差
ppt
最小类内方差
ppt
方差是表征数据分布不均衡性的统计量。因此要通过阈值将图像分割成两类,显然,适当的阈值使得两类数据间的方差越大越好,表明同一类中具有一定的相似性。
因此用类间与类内方差的比作为选择阈值的评价参数
最大类间、类内方差比法:就是类间方差与类内方差的比最大。
这个算法看看ppt吧
最大熵方法
ptt(雾)
熵:是信息论中对不确定性的度量,是对数据中所包含信息量大小的度量。
熵越大,则表明获得的信息量就越大,也就是不确定性越大。
最大熵方法的基本思想:选择适当的阈值将图像分成两类,两类的平均熵之和为最大时,可从图像中获得最大信息量,以此来确定最佳阈值。
- 求图像中所有像素灰度的分布概率
- 用初始阈值将图像分为C1和C2两类
- 分别计算两类的平均相对熵E1,E2
- 选择最佳阈值,使E1+E2能够取最大值。
P-参数法
基本思想:对固定分辨率下的目标物,根据目标物在画面中所占的比例来选择阈值,进行二值化处理。
适用: 适用于有标准图像的情况,也就是事先知道目标物在图像中所占比例。
原理
- 如下图所示,假设目标物为暗,背景为亮;
- 先试探性地给出一个阈值(黄色) ,统计目标物的像素点数在整幅图中所占的比例是否满足要求(?),是,则阈值合适;
- 否则,阈值则偏大(右)或者偏小(左),再进行调整,直到满足要求(白色)。
步骤
1)设图像的大小为m*n,计算得到原图的灰度直方图h;
2)得到理想状态下目标物所占画面的比例p;怎么得到?
3)尝试性地给定一个阈值Th=Th0;
4)计算在Th下判定的目标物的像素点数N;
5)判断ps=N/(m*n)是否接近p?
是, 则输出结果;
否则,Th=Th+dT;
(if ps<p, 则dT>0;else dT<0),
转4),直到满足条件。
p-参数法对于已知目标物在画面中所占比例的情况下使用比较有效。
基于图像灰度空间分布的阈值方法
局部阈值法?前面写的标题名字,后面说的是局部
前面的阈值方法是单一阈值。即对整幅图像采用一个被确定的阈值进行分割处理。也可以进行局部阈值算法。只对简单图像(即目标与背景比较容易区分)有效,但对于一个较为复杂的图像 ,就会有一些问题。
如图显示全局阈值效果不如局部阈值分割效果。这是因为光照不均造成的(光源位于画面左侧)。
用全局阈值,会导致远离光源的右侧气泡区域,提取得到的面积远远小于实际面积,这样就会影响后继的定量分析结果。
局部阈值:将图像进行一定的等分,在每个子块上,光照不均的影响就可忽略不计。在每个子块上采用前面给出的阈值方法,最终可达到理想的效果。
灰度-局部灰度均值散布图法
原理:如果某个像素与其周围领域中的均值偏差较大,则说明该点是边界上的点或者是噪声点。
构造灰度-局部灰度均值散布图
以图像灰度为横轴,局部灰度均值(如3*3模板下的均值)为纵轴,构造一个图像分布的散布图,
对于对角线上的点分布,对应于目标或者背景内部的点,对于离开对角线的点,则对应于区域边界上的点。
二维最大熵法
二维最大熵法基于图像的二维直方图。
图像的二维直方图定义如下:
其中 M,N是表示图像大小,Ni,j表示图像灰度值是i, 邻域平均灰度值为j的像素的个数。
其中区域1和2表示背景和目标像素,区域3和4通常表示边界和噪声信息。阈值向量(t,s),t表示灰度值,s表示像素邻域均值(通常是8邻域)
边缘检测法
梯度直方图法
关于边缘检测类的阈值方法,在前一章中介绍了Canny算子和LOG算子的边缘检测。这些方法都是通过对边缘变化率的分析得到的。
这里是基于的边缘检测类的阈值方法,也就是用边缘检测方法来得到二值化阈值
下图是对前图进行Sobel锐化结果的梯度值统计直方图。由于图像中像素间的相关性较强,因此低梯度(接近0处)的像素个数是大多数,从而该直方图无法获得直接选择阈值的提示信息。对该直方图进行修正,获得一个加权梯度直方图(?)
加权梯度直方图的设计方法是,通过对梯度分布进行加权修正,增大直方图的分布细节。一般采用的方法是,对高梯度区加较大的权值,以减小均匀区域内像素点对直方图的贡献,增加边界上的点对直方图的贡献。如前图 (b)所示,通过这样的处理之后,选择第一个峰值为最佳阈值点即可。
前图 (c)所示,是采用该方法对一幅国际标准测试图像进行处理的结果,经过计算得到该图例的分割阈值为Th* =190。
8.2轮廓提取
轮廓提取法
图像边缘是图像局部特性不连续性(灰度突变、颜色突变等)的反映,它标志着一个区域的终结和另一个区域的开始。
二值图像的轮廓提取的基本原理:就是掏空内部点,如果原图中有一点为黑,且它的8个相邻点皆为黑,则将该点删除(意思就是把该点置为背景白色,而轮廓即边始终是黑色)。
注意:
- 对于非二值图像,要先进行二值化处理。
- 轮廓提取其实是取一个物体的边。
算法
- 将像素点的8邻域像素读入数组中
- 如果每一个邻域像素的灰度值和中心点的灰度值相差小于10,则认为邻域像素和中心点相同。
- 如果8个邻域像素都和中心点相同,在内存缓冲区中将该像素点置白,否则保持不变。
边界跟踪法
边界跟踪的基本方法是:先根据某些严格的“探测准则”找出目标物体轮廓上的像素,再根据这些像素的某些特征用一定的“跟踪准则”找出目标物体上的其他像素。
一般的跟踪准则是:
- 边缘跟踪从图像左上角开始逐像点扫描,当遇到边缘点时则开始顺序跟踪,直至跟踪的后续点回到起始点(对于闭合线)或其后续点再没有新的后续点(对于非闭合线)为止。
- 如果为非闭合线,则跟踪一侧后需从起始点开始朝相反的方向跟踪到另一尾点。
- 如果不止一个后续点,则按上述连接准则选择加权平均最大的点为后续点,另一次要的后续点作为新的边缘跟踪起点另行跟踪。一条线跟踪完后,接着扫描下一个未跟踪点,直至图像内的所有边缘都跟踪完毕。
已知形状的曲线检测
对已知的直线,曲线,圆等形状曲线进行检测,hough变换非常有效。
Hough变换的核心思想
ppt
区域增长法
基于区域整体特性的图像分割方法。
图像分割的目的是要把一幅图像划分成一些区域,最直接的方法就是把点组成区域。为此需要:
- 确定区域的数目,
- 确定一个区域与其他区域相区别的特征,
- 产生有意义分割的相似性判据。
区域生长法的依据:假定已知要划分的区域数目以及每个区域内某一点的位置,就可以推导出图像分割的一种算法,即区域生长法。
区域生长法主要考虑象素及其空间邻域象素之间的关系。开始时确定一个或多个象素点作为种子,然后按某种相似性准则增长区域,逐步生成具有某种均匀性的空间区域,将相邻的具有相似性质的象素或区域归并从而逐步增长区域,直至没有可以归并的点或其它小区域为止。区域内象素的相似性度量可以包括平均灰度值、纹理、颜色等信息。
区域生长法示例
下例通过一个印章识别中的印文区域分割例子来具体介绍一种区域生长的方法。
由于盖印时油墨、下垫物等,以及人手用力不均匀,盖出的印章深浅是不相同的。如果用单一阈值进行分割,则会出现对盖印条件过于敏感等问题。
如果采用区域生长法,首先选择红色的点为种子点(假设采用红色的印章油墨盖印),然后确定生长准则。
如果采用灰度差准则,则是判断当前点与种子点之间的灰度差,如果小于设定的阈值,就确认为印章点,否则认为是背景点。这样,如图 (b)所示,对盖印较浅的部分,就会产生严重的缺损。如果采用一致性准则,如图 (c)所示,可以一定程度地抵抗盖印不均所带来的影响。
一致性准则是:首先选择若干的红色点为种子点,计算这些点所组成的点集合的灰度均值和方差,然后在判断某个点是否为同一区域时,判断其灰度值与该均值的差,以及该点与种子点之间的方差,如果小于设定阈值,则表明该点与种子点具有一致性,将其判定为印章区域的点。之后,计算增加一个点后的点集合的灰度均值与方差,再进行下一个点的判断。
区域分裂合并法
区域合并、分裂方法
区域生长法存在问题:区域生长法的最关键一步,就是需要根据先验知识选取种子点,这就给一些无法获得先验知识的自动分割的课题带来许多的困难。
区域合并、分裂方法的核心思想是:无需先确定种子点
将图像分成若干的子块,对每个子块的属性进行计算:当属性表明该子块包含不同区域的像素,则该子块再分裂成若干子块。
如果几个子块的属性相似,则这几个相似属性的子块合并成一个大的区域。
基本思想:
先分裂后合并
区域分裂合并方法利用了图像数据的金字塔或四叉树数据结构的层次概念,将图像划分成一组任意不相交的初始区域,即可以从图像的这种金字塔或四叉树数据结构的任一中间层开始,根据给定的均匀性检测准则进行分裂和合并这些区域,逐步改善区域划分的性能,直至最后将图像分成数量最少的均匀区域为止。
区域分裂思想:如果区域的某些特性差别比较大,即不满足一致性准则时,则区域应该采用分裂法,分裂过程从从图像的最大区域开始,一般情况下,是从整幅图像开始。
注意:
- 确定分裂准则(一致性准则,如灰度)
- 确定分裂方法,即如何分裂区域,使得分裂后的子区域的特性尽可能都满足一致性准则值。
算法
定义P:P(Ri)的可定义为
区域内多于80%的像素满足不等式|zj-mi|≤2σi,
其中: Ri是第i个区域。zj是区域Ri中第j个点的灰度级,mi是该区域的平均灰度级,σi是区域的灰度级的标准方差。
就定义P(Ri)=TRUE,并将区域Ri内所有像素的灰度级置为mi。
- 形成初始区域
- 对图像的每一个区域R**i,计算P(R**i),如果
- P(R**i)=FALSE
- 则沿着某一合适的边界分裂区域
- 重复步骤2,当没有区域需分裂时,算法结束。
分裂的存在的问题:单纯的区域分裂只能把图像分成许多满足一致性的区域,相邻的具有相同性质的区域并没有合成一体。
区域合并基本思想:因此分裂完成后,再将具有相同性质区域合并。
- 合并运算就是把相邻的具有相似性质的区域合成为一个区域
- 合并算法中最重要的运算:确定两个区域的相似性
- 判定区域相似性方法:
- 可以基于区域的灰度值,
- 可以基于区域边界的强弱性等因素。
- 一种简单的方法是比较它们的灰度均值
算法
- 使用某种方法进行图像的初始区域分割。
- 对于图像中相邻的区域,计算是否满足一致性,若满足则合并为一个区域。
- 重复步骤2,直到没有区域可以合并,算法结束。
失去耐心.jpg
整个算法步骤
- 设整幅图像为初始区域
- 对每一区域R,如果P(R)=FLASE,则把该区域分裂成四个子区域
- 重复上一步,直到没有区域可以分裂
- 对图像中任意两个相邻的R1和R2,如果P(R1UR2)=TRUE,则把这两个区域合并成一个区域。
- 重复上一步,直到没有相邻区域可以合并,算法结束
区域合并、分裂方法
- 根据σ的值进行判别,如果设定阈值为σTh=1,可知f11,f12不再分裂,而f13和f14进行下一层的分裂,刚好分裂到最小单位为单个像素。
- 然后,以灰度差小于μTh=2为基准进行合并,可以得到下面的图像分割结果。
8.3模板匹配
?没有
8.4图像的测量
几个基本概念:
(1)邻域
与像素(x,y)对应的点集合{(x+p,y+q);((p,q)是一对有意义的整数)}称之为像素(x,y)的邻域。离散图像处理中常取4邻域和8邻域.
(2)连通
(3)连通成份
二值图像中互相连通的0-像素集或1-像素集称之为连通成份。
孔:在“0”连接成分中,如果存在与外围的一行、一列的像素不连接成分, 则称为孔。如a,b。
单连接成分:不包含孔的“1”连接成分称为单连接成分;
孤立点:仅含有一个像素的“1”单连接成分;
多重连接成分:含有孔的“1”连接成分称为多连接成分。
3.欧拉数
在二值图像中,1像素连接成分数C减去孔数H的值叫做这幅图像的欧拉数或示性数。若用E表示图像的欧拉数,则
E=C-H (8.1-1)
E是欧拉数,C是连通成分数,H是孔数
欧拉数:对于一个1像素连接成分,1减去这个连接成分中所包含的孔数的差值叫做这个1像素连接成分的欧拉数。二值图像的欧拉数是所有1像素连接成分的欧拉数之和。
4.像素的可删除性和连接数
二值图像上改变一个像素的值后也就是删除这个像素,整个图像的连接性并不改变(各连接成分既不分离、不结合,孔也不产生、不消失),则这个像素是可删除的。
5、交叉数:是表征当前像素的八个近邻像素中,从像素值为1的点到像素值为0的点的变化次数。
6.距离:对于集合S中的两个元素p和q,当函数D ( p , q )满足下式的条件时,把D ( p , q )叫做p和q的距离,也称为距离函数。
7、链码
一种矢量表示法,具有方向性;
是相互邻接的两个像素按照不同的方向给定一个规定的数字符号(码)。
用一串这样的符号(码)表示一个连接成分的方法叫 链码表示法。
连接成分的标记:为区分二值图像中的连接成分,求得连接成分个数,
对属于同一个1像素连接成分的所有像素分配相同的编号,对不同的连接成分分配不同的编号的操作。
即分割后的一帧图像内可能存在多个连通成份/域,每个非连通成份/域都对应一个目标图像区,给各目标图像区分配相应标号的工作称之为标记。
l4连通加标记的一种方法
说明:图中A代表物体,0代表背景,规定用四连通加标记,由于扫描的次序,对于任意点,其左前一点和上一点一定是扫描过的点。
标记原则:
- 当左前一点和上一点都是背景0时,则当前点加新标记。
- 当左前一点和上一点有一个是0时,另一个已加过标记,则当前点和已加标记点有相同标记。
- 当左前一点和上一点都是已加标记点,则当前点标记和左前点相同。
标记方法:
标记直接修改像素值为1,2,3,4…
Chapter9.二值图像处理
9.1数学形态学基础
数学形态学的数学基础和所用语言是集合论。数学形态学的主要内容是设计一套变换、概念、算法用来描述图像的基本特征。
基本思想是用具有一定形态的结构元素去量度和提取图像中的对应形状以达到对图像分析和识别的目的。
元素和集合
把一幅图像称为一个集合。
对于二值图像,习惯上景物取值为1,用阴影表示,背景取值为0,用白色表示。
值为1的点的集合A与图像是一一对应的。
对于图像A,点a在A区域内, 则a是A的元素,记为a∈A,否则,记作a∈A。
基本运算:膨胀、腐蚀
膨胀或腐蚀反复使用就可以清除二值图像中的小成份或孔。
腐蚀
腐蚀是数学形态学的两个基本运算之一,
作用:消除物体边界点,使边界向内部收缩的过程。可以把小于结构元素的物体去除。
设计:选取不同大小的结构元素,就可以去除不同大小的物体。
一种应用:若两个物体间有细小的连通,通过腐蚀可将两个物体分开。
X用S 腐蚀的结果是所有使S 平移x后仍在X 中的x的集合。
腐蚀在数学形态学运算中的作用是消除物体边界点。
腐蚀可以把小于结构元素的物体(毛刺、 小凸起)去除;
如果两个物体之间有细小的连通,结构元素足够大时,通过腐蚀运算可以将两个物体分开。
膨胀
膨胀的方法:拿S的中心点和X上的点及X周围的点一个一个地对,如果S上有一个点落在X的范围内,则该点存在且为黑。
(图有小错误)
用腐蚀和膨胀运算还可以实现图像的平移。如果在自定义结构元素时选择不在原点的一个点作为结构元素,则得到的图像形状没有任何改变,只是位置发生了移动。
开/闭运算
膨胀和腐蚀不互为逆运算,可以级连结合使用,构造出形态学运算族,它由膨胀和腐蚀两个运算的复合与集合操作组合成的所有运算构成。
例如,可先对图像进行腐蚀然后膨胀其结果,称为开运算,或先对图像进行膨胀然后腐蚀其结果,称为闭运算。开运算和闭运算是形态学运算族中两个最为重要的组合运算。
击中/击不中
由此可见,击中运算相当于一种条件比较严格的模板匹配,它不仅指出被匹配点所应满足的性质即模板的形状,同时也指出这些点所不应满足的性质,即对周围环境背景的要求。
9.2图像几何测量
面积
周长
周长是围绕所有像素的外边界的长度。常用简便方法如下:
(1) 把图像中的像素看作单位面积小方块,图像中的区域和背景均由小方块组成。区域的周长为区域和背景缝隙的长度和,此时边界用隙码表示。求周长就是计算隙码的长度。
(2) 把像素看作一个个点时,周长用链码表示,求周长也即计算链码长度。当链码值为奇数时,其长度记作√2;当链码值为偶数时,其长度记作1。即周长p表示为
(3) 周长用边界所占面积表示,也即边界点数之和, 每个点占面积为1的一个小方块。(实际就是像素点个数,简单实用)
质心、形状特征、矩形度、长宽比、圆形度、致密度、球状性、见ppt