本文是计算机视觉专业课的课程笔记,图片来自于老师课件,选取了部分个人认为有价值的知识点,可用于查阅复习。
目录
- 亮度函数
- 图像灰度级
- 像素的邻域和邻接
- 像素的邻域
- 像素的邻接
- 像素间的连通性
- 距离度量
- 链码
- 傅里叶变换
- 正交变换
- 图像增强
- 灰度直方图
- 直方图均衡化
- 直方图规定化
- 图像平滑
- 空域平滑法
- 频域平滑法
- 低通滤波法
- 中值滤波法
- 图像锐化
- 空域锐化法
- 频域锐化法
- 边缘检测
- 正交梯度法
- Roberts梯度算子法(4点差分法)
- Prewitt梯度算子法(平均差分法)
- Sobel算子法(加权平均差分法)
- Laplacian算子法
- LoG算子法
- Canny算子法
- 形态学运算
- 腐蚀
- 膨胀
- 开操作
- 闭操作
亮度函数
I = f (x,y,z,λ,t)
x,y,z 是空间坐标——三维图象
λ 是波长——彩色/多光谱图象
t 是时间——运动(序列)图象
I 是像素点的强度(灰度)
图像灰度级
在数字图像中,各像素点的亮度或色彩信息,即每个像素点的取值称为灰度,一幅图像所包含的灰度总数称为灰度级。
由于硬件方面的考虑,灰度级数通常是2的整数次幂。大多数情况取8-bit,即8位2进制,这时每个像素点可表示256种灰度级,某些特殊场合也使用16-bit,可表示65536种灰度级。
像素的邻域和邻接
像素的邻域
- 4-邻域 N_4(p) :像素p(x, y)的左右上下4个像素。
- D-邻域 N_D(p) :像素p(x, y)的4个对角邻近像素。
- 8-邻域 N_8(p) :像素p(x, y)的左、右、上、下、左上、右上、左下、右下8个像素。
像素的邻接
①若 q∈N_4(p) 或者 p∈ N_4(q) 则称p与q 4-邻接
②若 q∈N_8(p) 或者 p∈N_8(q) 则称p与q 8-邻接
像素间的连通性
两个像素p和q连接的条件:
①邻接
②灰度值相近,即p∈V,q∈V,V={v_1 ,v_2 ,……}为连接的灰度值集合
连通:
- 若p,q∈T且存在一条由T中像素组成的从p到q的通路,则称p在T中与q连通。
- 由不同通路形成不同种类的连通:4-连通,8-连通,m-连通
距离度量
常用的三种距离 :
- 欧氏距离:
- 街区距离(曼哈顿距离):
- 棋盘距离:
链码
链码定义: 一系列具有特定长度和方向的相连的直线段。
常用两类 (a) 4(方向)链码, (b) 8(方向)链码
边界的链码表示(以4链码为例)
M4=S10103322(封闭时可省去S)
傅里叶变换
一维连续:
一维离散:
二维连续:
二维离散:
通过傅里叶变换,可将一幅图片映射到频域空间:
正交变换
分解过程:将信号向量分解成它的各个基函元分量,这些基元分量自然以基向量的形式表示;各个基元分量在原信号中所占的份额由变换系数决定
逆变换:将各个分量相加,合成,以恢复具有与原始向量相同的元素个数的向量,且变换系数规定了重构原始向量时各个分量的大小。
可分离正交变换主要有:
- 沃尔什变换
- 哈达玛变换
- 离散余弦变换
- 小波变换
图像增强
灰度直方图
概念:图像中各灰度级出现频数分布的统计图表
反映各灰度级出现频数的分布情况,但不反映各灰度级的空间位置分布
直方图均衡化
直方图均衡化是将原图像的直方图通过变换函数修正为均匀的直方图,从而增加像素灰度值的动态范围,达到增强图像整体对比度的效果。
图像均衡化处理后,图像的直方图是平直的,即各灰度级具有相同的出现频数,那么由于灰度级具有均匀的概率分布,图像看起来就更清晰了。
直方图规定化
直方图规定化是指借助直方图变换实现规定的灰度映射。
直方图规定化步骤: (1) 对原始直方图进行灰度均衡化 (2) 规定需要的直方图,计算能使规定直方图均衡化的变换 (3) 将原始直方图对应映射到规定直方图
举例:给定图像具有64×64个像素,8个灰度级,其分布如下表,试按表中规定直方图进行变换
图像平滑
目的:去除或衰减图像中噪声和假轮廓
方法分类:空域和频域方法
空域平滑法
4-邻域平均模板:
8-邻域平均模板:
加权平均模板:
模板使用步骤:
1.将模板在图中漫游,并将模板中心与某像素重合
2.将模板系数与模板下对应像素相乘
3.将所有乘积相加
4.将上述求和结果赋予模板中心对应像素
频域平滑法
图像主体对应低频信息
噪声/边缘对应高频信息
低通滤波法
有了上面的对应关系,使用如图所示的低通滤波器就可以滤除噪声/边缘等高频信息。
拿经典的lena图举例,经过低通滤波器之后,效果如图所示:
直观上可以看到,图像变模糊了,因为高频信息(边缘/细节等)都被滤除了。
中值滤波法
实质:用局部中值代替局部平均值。
作用:对干扰脉冲和点噪声有良好抑制作用,而对图像边缘能较好地保持的非线性图像增强技术
中值滤波常用窗口: 线状、方形、十字形、菱形等
举例:
图像锐化
锐化目的:加重目标物轮廓,使模糊图像变清晰
空域锐化法
一维信号锐化举例:
如图所示,采用了一阶导数和二阶导数提取轮廓边缘信息,一阶导数能力有限,只能近似逼近理想轮廓,而二阶导数效果更好一些。
转到二维情况,也同样可以使用二阶微分的方式来进行锐化,Laplacian锐化法就是这样操作。
Laplacian 算子:
锐化公式:
锐化效果示例:
实际操作中,不断求二阶偏导非常消耗计算资源,因此可以采用模板法来等价求导操作(在下一节内容会解释为什么能这样做)。
Laplacian锐化模板:
(1)4-邻模板
(2)8-邻模板
锐化模板特点:
(1)模板内系数有正有负,表示差分运算; (2)模板内系数之和1 ① 对常数图像f(m, n)=c,处理前后不变; ② 对一般图像,处理前后平均亮度不变。
锐化实质:锐化图像g(m,n)=原图f(m,n) 加重的边缘**(α*微分)**
频域锐化法
频域锐化和前面的频域平滑相对,前面频域平滑使用低通滤波器,这里需要加强边缘信息,因此就使用高通滤波器。
使用巴特沃斯高通滤波器的处理lena效果举例:
边缘检测
常用算子:
一阶导数:通过梯度算子计算
- 正交梯度
- Roberts算子
- 平滑梯度算子
- Prewitt算子
- Sobel算子
- 方向梯度
二阶导数:通过Laplacian算子计算
- Laplacian算子
- LoG算子
- Canny算子
正交梯度法
和图像锐化类似,正交梯度法是计算相邻像素水平和垂直两个方向的梯度,由于是相邻两个像素点,因此计算梯度时分母为1,这里可以简化为两个像素数值之差。下图展示了为什么可以用模板的方式来求梯度。
梯度的幅度代表边缘的强度,其有下列三种计算方式:
为检测边缘点,可选取适当的阈值T,对梯度图像进行二值化
选择一张图片,查看各梯度提取的效果:
Roberts梯度算子法(4点差分法)
Roberts就是采用对角方向相邻两像素之差,故也称为4点差分法。其水平和垂直方向的梯度定义为:
对应水平及垂直方向的梯度模板可表示为:
缺点:对噪声较敏感,常用于不含噪声的图像边缘点检测。
Prewitt梯度算子法(平均差分法)
因为平均能减少或消除噪声,Prewitt梯度算子法就是先求平均,再求差分来计算梯度。它的水平和垂直梯度模板分别为:
利用检测模板可求得水平和垂直方向的梯度,再通过梯度合成和边缘点判定,即可得到平局差分法的检测结果。
Sobel算子法(加权平均差分法)
Sobel算子就是对当前行或列对应的值加权后,再进行平均和差分,也称为加权平均差分。水平和垂直梯度模板分别为:
Sobel算子和Prewitt算子一样,都在检测边缘点的同时具有抑制噪声的能力,检测出的边缘宽度至少为二像素。由于它们都是先平均后差分,平均时会丢失一些细节信息,使边缘有一定模糊。但由于Sobel算子的加权作用,其使边缘模糊的程度要低于Prewitt算子。
这三个检测算子的效果对比:
Laplacian算子法
Laplacian算子为二阶偏导
边缘检测算子为:
检测模板:
4邻模板:
8邻模板:
优点:各向同性、线性和唯一不变性;对孤立点及线段的检测效果好
缺点:对噪声敏感,对噪声有双倍加强作用;不能检测出边的方向,常产生双像素的边缘
LoG算子法
高斯-拉普拉斯( LoG :Laplacian of a Gaussian)边缘检测算子,简称LoG算子
LoG边缘检测算子定义为:
优点:先采用高斯算子对原图像进行平滑,再用Laplacian算子检测边缘,可克服Laplacian算子对噪声敏感的特点,减少噪声的影响。
效果对比:
Canny算子法
基本思想:找寻一幅图像中灰度强度变化最强的位置
Canny边缘检测算法可以分为以下4个步骤: 1.应用高斯滤波来平滑图像,目的是去除噪声 2.找寻图像的强度梯度(intensity gradients) 3.应用非最大抑制(non-maximum suppression,NMS)技术来消除边误检(错将非边界检测为边界) 4.应用双阈值的方法来检测和连接边界
各算子效果对比:
形态学运算
腐蚀
腐蚀的效果是将图像中的黑色部分向内收缩,例如:
膨胀
膨胀是和腐蚀相对的过程。
开操作
定义:B对A进行的开操作就是先用B对A腐蚀,然后用B对结果进行膨胀
作用:使轮廓平滑,抑制物体边界的小离散点或尖峰。常用来断开狭窄的间断和消除小物体及细的突出物
闭操作
定义:B对A进行的闭操作就是先用B对A膨胀,然后用B对结果进行腐蚀
作用:用来填充物体内细小空洞、消弥狭窄的间断和长细的鸿沟,并填补轮廓线中小的断裂
举例:
开操作:小的明亮细节尺寸变小,暗的效果不变化 闭操作:小的暗细节的尺寸缩小,明亮部分受影响较小