《Image analysis and recognition》
- 1.Detecting corners(角点检测)
- 1.1.Harris 角点检测
- 1.2 LOG、DOG
- 2.Wavelet and multiresolution processing(小波与多分辨率处理)
- 2.1.Gaussian pyramid(高斯金字塔)
- 2.2.Laplacian pyramid
- 2.3.Wavelet pyramid/
- 2.4.Steerable pyramid(方向可操纵金字塔)
- 3. Feature detectors and descriptors(特征检测器和描述符)
- 3.1.简单的特征描述符
- 3.2.Local Binary Pattern(LBP,局部二值模式)
- 3.3.Histogram Matching(直方图匹配)
- 3.4 Multiscale Oriented Patches descriptor(MOPS,多尺度带方向的块描述符)
- 3.5.GIST
- 3.6.HOG(Histograms of Oriented Gradients)
- 3.7.SIFT(Scale Invariant Feature Transfrom)
- 3.8.SURF(Speeded Up Robust Features)
- 4.Similarity Measure and Feature Matching(相似度度量和特征匹配)
- 4.1.Text similarity measures(文本相似性度量)
- 4.2.Temporal similarity measures(时间相似度量)
- 4.3.Graph similarity measures(图相似度量)
- 4.4.Supervised similarity measures(监督相似度量)
参考多篇文章,只为了总结课程知识点,没有列举的文章多多包涵,如有侵权请告知!
1.Detecting corners(角点检测)
1.1.Harris 角点检测
(1)角点检测算法基本思想
使用一个固定窗口在图像上进行任意方向上的滑动,比较滑动前与滑动后两种情况,窗口中的像素灰度变化程度,如果存在任意方向上的滑动,都有着较大灰度变化,那么我们可以认为该窗口中存在角点。
2.如何用数学方法去刻画角点特征?
当窗口发生[u,v]移动时,那么滑动前与滑动后对应的窗口中的像素点灰度变化描述如下:
[u,v]是窗口的偏移量
(x,y)是窗口内所对应的像素坐标位置,窗口有多大,就有多少个位置
w(x,y)是窗口函数,最简单情形就是窗口内的所有像素所对应的w权重系数均为1。但有时候,我们会将w(x,y)函数设定为以窗口中心为原点的二元正态分布。如果窗口中心点是角点时,移动前与移动后,该点的灰度变化应该最为剧烈,所以该点权重系数可以设定大些,表示窗口移动时,该点在灰度变化贡献较大;而离窗口中心(角点)较远的点,这些点的灰度变化几近平缓,这些点的权重系数,可以设定小点,以示该点对灰度变化贡献较小
(3)算法步骤
其中,局部极大值可用先膨胀后与原图比较的方法求得
1.2 LOG、DOG
(1)高斯、LOG、DOG的关系
高斯、LOG、DOG的关系
(2)原理
- Laplacian算子表示成模板的形式就是
。Laplacian算子另外一种形式是
,也经常使用。Laplace算子是一种各向同性算子,在只关心边缘的位置而不考虑其周围的象素灰度差值时比较合适。Laplace算子对孤立象素的响应要比对边缘或线的响应要更强烈,因此只适用于无噪声图象。存在噪声情况下,使用Laplacian算子检测边缘之前需要先进行低通滤波。
2.LOG的原因:因为Laplace算子对噪声很敏感,所有要进行高斯滤波然后再laplace,过度到LOG
(3)Automatic scale selection(自动尺度选择)
为了在理想尺度上检测关键点,我们必须知道(或找到)它们在图像中的各自维度,并适应本节前面介绍的高斯窗口 w (x,y) 的大小。如果关键点尺度是未知的或如果关键点与存在于不同的大小图像中,检测必须在多个尺度级连续执行
一个好的检测器能够根据局部邻域的结构特性自动选择关键点的特征尺度。现代关键点探测器通常具有这种能力,因此对图像尺度的变化具有很强的鲁棒性。
2.Wavelet and multiresolution processing(小波与多分辨率处理)
2.1.Gaussian pyramid(高斯金字塔)
(1)原理:高斯金子塔的思路非常简单,就是将原始图像当作金子塔的最底层,然后进行按图像长宽各减少二分之一,面积减少四分之一,进行下采样。在进行下采样之前需要进行高斯滤波。
2.2.Laplacian pyramid
原理:拉普拉斯金子塔可以理解残差金子塔,它是用来存储下采样后的图像于原始图像的差异的。这里需要进行一下介绍,假如原始图像为 G0,金字塔中任意一层图像为 Gi,下采样后得到 G(i+1)= Down(Gi), 由于图像下采样之后尺寸发生了变化,若将下采样后的图进行上采用得到 Up(Down(Gi)), 但是下采样后的变化是不可逆的即不可能恢复成原始图像。因此,有部分信息丢失不能完全恢复成原始图像。
定义式:拉普拉斯金字塔就是记录金字塔每一层下采样后再上采用回来与该层之间的差异的。
可以记为:Li = Gi - Up(Down(Gi))
2.3.Wavelet pyramid/
(1)原理:正交镜像滤波器组(QMF)是进行子带信号分解的一种相当普遍的方法。一般设计的QMF目标是压缩对单独一个子带的带宽需求,使得信息可以借助于多个物理上带限的信道流过滤波器组
(2)两通道QMF系统的基本结构如图:
2.4.Steerable pyramid(方向可操纵金字塔)
(1)原理:1.通过方向可控金字塔的线性分解,一个图像被分解成一系列不同尺度、不同方向的图像子带。变换的基函数是依据想要的顺序的高阶导。2.方向可控金字塔变换是通过递归的卷积和抽样操作完成,相应的逆变换矩阵是前向变换矩阵的转置。
(2)优点:具有平移不变性和旋转不变性。
(3)分解方法:
<1>.角度分解;
如果使用函数的旋转作为基函数,则基函数的方向应0到π之间等间隔分布。可以用函数的k-1阶方向导数来做基函数,方向导数是一种方向滤波器。因此,图像沿任意方向的k一1阶方向导数是k个k-1阶基方向导数的线性组合。由此获得图像在k个方向上的方向滤波器,完成角度分解部分。
图1.为三阶方向可控金字塔的频谱分割示意图,由于是三阶,因此且Bk(w) 有 4个,方向分别为0°,45°,90°和135°
图2为三阶方向可控金字塔的系统结构。H0(w)为高通滤波器,L0(w)和L1(w)为低通滤波器,Bk(w)为方向带通滤波器,0≤k≤3,s0,s1,s2,s3为子带图像。
<2>尺度分解
把图像信号分解为高通和低通两部分,对通过低通信号进行不停的迭代,完成下采样操作,相应的多尺度分析可通过在滤波和下采样处级联相同的图2中的结构得到。
图中是经过方向带通滤波器以及最终低通滤波器的图像
3. Feature detectors and descriptors(特征检测器和描述符)
3.1.简单的特征描述符
- Phtometric transformations(光变变换)
- Geometric transformations(几何变换)
- Image gradients(图像梯度)
- Color histogram(颜色直方图)
- Spatial histogram(空间直方图)
3.2.Local Binary Pattern(LBP,局部二值模式)
(1)原理:LBP是一种用来描述图像局部纹理特征的算子,用于纹理特征提取。而且,提取的特征是图像的局部的纹理特征。
原始的LBP算子定义为在33的窗口内,以窗口中心像素为阈值,将相邻的8个像素的灰度值与其进行比较,若周围像素值大于中心像素值,则该像素 点的位置被标记为1,否则为0。这样,33邻域内的8个点经比较可产生8位二进制数(通常转换为十进制数即LBP码,共256种),即得到该窗口中心像 素点的LBP值,并用这个值来反映该区域的纹理信息。
(2)对LBP特征向量进行提取的步骤:
<1>.首先将检测窗口划分为16×16的小区域(cell);
<2>.对于每个cell中的一个像素,将相邻的8个像素的灰度值与其进行比较,若周围像素值大于中心像素值,则该像素点的位置被标记为1,否则为0。这样,3*3邻域内的8个点经比较可产生8位二进制数,即得到该窗口中心像素点的LBP值;
<3>.然后计算每个cell的直方图,即每个数字(假定是十进制数LBP值)出现的频率;然后对该直方图进行归一化处理。
<4>.最后将得到的每个cell的统计直方图进行连接成为一个特征向量,也就是整幅图的LBP纹理特征向量;
(3)特点:它具有旋转不变性和灰度不变性等显著的优点
3.3.Histogram Matching(直方图匹配)
直方图匹配方法有:
一般来说相交系数的方法速度较快,但是匹配不是很准确;要求较精准的匹配的话,用卡方和巴氏距离效果较好
3.4 Multiscale Oriented Patches descriptor(MOPS,多尺度带方向的块描述符)
MOPS算法过程:
(1) 根据尺度和角度,选取4040的窗口。
(2)缩小到原窗口的1/5。
(3)旋转至水平。
(4)采样这个88的窗口。
<4>正则化窗口灰度。(减掉均值,除以标准差)
3.5.GIST
算法过程:
(1)计算Gabor滤波器的响应函数
(2)将图像窗口分成44个cell
(3)对每一个cell, 计算滤波器响应的均值
(4)GIST描述符大小为44*N,N就是filter bank的大小
(5)GIST在本质上编码了梯度的空间分布。
3.6.HOG(Histograms of Oriented Gradients)
算法过程:
(1)将窗口划分成若干8*8的Cell。
(2)对每一个cell计算方向梯度直方图。直方图横坐标为梯度方向,纵坐标为梯度值。
(3)每四个Cell构成一个Block。形成描述符。
3.7.SIFT(Scale Invariant Feature Transfrom)
给出了一种尺度无关的特征变换。整个算法包含了特征点检测,特征描述符和匹配
算法过程:
(1)在角点附近选取1616窗口
(2)根据角点探测得到的梯度方向θ做旋转,并按照尺度s规范化尺度。
(3)在44的Cell下生成直方图,直方图的横坐标为8个方向,纵坐标为梯度的幅度值。
3.8.SURF(Speeded Up Robust Features)
算法过程:
(1)在PATCH中,计算每一个像素的Haar特征。本质上计算了该PATCH的积分图。
(2)每一个Cell由4个值构成。
(3)44个Cell,总共164 = 64维。
4.Similarity Measure and Feature Matching(相似度度量和特征匹配)
数据分类:
- quantitative data
- categorical data
- mixed quantitative and categorical data
4.1.Text similarity measures(文本相似性度量)
对于定量多维数据(quantitative multidimensional data):稀疏,Lp范数效果不好
余弦相似度
TF-IDF
4.2.Temporal similarity measures(时间相似度量)
4.3.Graph similarity measures(图相似度量)
4.4.Supervised similarity measures(监督相似度量)
参考文章:
【1】Harris角点检测原理详解
【2】计算机视觉——DoG和LoG算子
【3】全面综述:图像特征提取与匹配技术
【4】高斯金字塔与拉普拉斯金字塔(python实现)
【5】The Steerable Pyramid(方向可操纵金字塔)
【6】计算机视觉大型攻略 —— 特征与匹配(3)特征描述符