在对未配准图像进行融合处理时,现在尝试着先对所有图像进行配准操作,在这儿用到的特征是SURF,SURF是SIFT的一种优化加速,其过程可以概括为以下几个步骤:
Step1:构建Hessian矩阵,生成所有的兴趣点,用于特征提取;
Step2:构建尺度空间;
Step3:特征点定位;
Step4:特征点主方向的确定;
Step5:生成64维特征点描述子;
Step6:特征点匹配。
在SURF中一个关键的步骤在于使用Hessian矩阵来构建尺度空间(DoH),Hessian矩阵行列式的大小表征了图像在该点响应值的大小,前面的系数0.9是为了平衡因使用盒式滤波器近似所带来的误差。
将二阶的高斯卷积转换成盒式滤波,卷积的过程变成了几次加减操作,由此实现了加速。同时,不同于SIFT在构建尺度空间时,下一层的图片需要依赖前一层的卷积结果,而不能形成并行化的操作,其采用的方式是固定滤波器的大小,进行下采样的方式,生成若干组,每组若干层的金字塔结构。SURF在构建尺度空间时,图片的大小不变,设置不同的sigma的值,同时改变盒式滤波器的大小,由此完成滤波操作,其也是生成若干组,每组若干层的结构,可见在这种方式下,可以通过进行并行化的方式来实现,由此而提升处理速度。不同的是,所有的图片有相同的大小,过程没有进行下采样操作。
特征点主方向的确定,不同于SIFT中统计梯度直方图,其采用的是harr小波。最后对图像进行旋转至主方向,最终形成64维的特征描述子。如下图:
把Speed-Up Robust Feature的原文读了两遍,对SURF特征提取及描述子的形成有了一个更深入的理解:
其关键点为:
1、将传统的高斯二阶矩的滤波计算,转换为盒式滤波;
2、利用积分图的思想进行卷积,从而使计算的复杂度与滤波器的尺寸无关,极大地提升了运算速度。
3、不同于DoG的金字塔结构,通过下采样原图像,SURF通过改变滤波器的尺寸保持原图像尺寸不变,其每一个octave,每一层layer的滤波器尺寸大小为: