SIFT、SURF、ORB算法学习笔记
文章目录
一、 SIFT
尺度不变特征转换(Scale-invariant feature transform)是一种用来侦测与描述影像中的局部性特征的视觉算法,即通过求一幅图中的特征点及其有关尺度和方向的描述子得到特征,并进行图像特征点匹配。SIFT所查找到的关键点是一些十分突出,不会因光照,仿射变换和噪音等因素而变化的点,如角点、边缘点、暗区的亮点及亮区的暗点等,噪声也保持一定程度的稳定性,除此之外SIFT还具有独特性,多量性,高速性,可扩展性等特点。
(1)构建尺度空间
①尺度空间的表示
二维图像的尺度空间函数L,高斯函数与原图像的卷积。 L ( x , y , σ ) = G ( x , y , σ D ) ∗ I ( x , y ) (公式1) L(x,y,\sigma)=G(x,y,\sigma_D)*I(x,y) \tag{公式1} L(x,y,σ)=G(x,y,σD)∗I(x,y)(公式1)
其中二维高斯函数为:
G σ ( x , y ) = 1 2 π σ 2 e x p ( − x 2 + y 2 2 σ 2 ) (公式2) G_\sigma(x,y)=\frac{1}{\sqrt{2\pi \sigma^2}}exp(-\frac{x^2+y^2}{2\sigma^2}) \tag{公式2} Gσ(x,y)=2πσ21exp(−2σ2x2+y2)(公式2)
符号“*”表示卷积。
在二维空间中,这个公式生成的曲面的等高线是从中心开始呈正态分布的同心圆,如图分布不为零的像素组成的卷积矩阵与原始图像做变换。每个像素的值都是周围相邻像素值的加权平均。(根据高斯函数的可分离性,可对二维高斯模糊函数进行改进。)
② 高斯金字塔的构建
尺度空间在实现时使用高斯金字塔表示,高斯金字塔的构建分为两部分:对图像做不同尺度的高斯模糊;对图像做降采样(隔点采样)。后来有(2)点改进得到了高斯差分金字塔。
(2)使用DOG近似LOG定位极值点(关键点)
①(laplacian-gauss)LOG
LOG(高斯-拉普拉斯算子)是一种边缘检测算子,产生稳定的图像特征。公式为:
L o g ≜ Δ G σ ( x , y ) + ∂ 2 G σ ( x , y ) ∂ y 2 = x 2 + y 2 − 2 σ 2 σ 4 e ( x 2 + y 2 ) 2 σ 2 (公式3) Log \triangleq \Delta G_\sigma(x,y)+ \frac{\partial^2G_\sigma(x,y)}{\partial y^2}=\frac{x^2+y^2-2\sigma^2}{\sigma^4}e^{\frac{(x^2+y^2)}{2\sigma^2}} \tag{公式3} Log≜ΔGσ(x,y)+∂y2∂2Gσ(x,y)=σ4x2+y2−2σ2e2σ2(x<