zoukankan      html  css  js  c++  java
  • SIFT

           一个好的特征描述子,要有好的区分性、尺度和旋转不变性以及鲁棒性(光照等)。SIFT可能说是最经典的

    特征描述方法了,其主要分成下面四步:

         (1)尺度空间选择:在尺度空间中选择潜在的满足尺度不变和旋转不变的关键点;

                关于尺度空间,先对图像做高斯金字塔(包括高斯模糊和降维),再做拉普拉斯金字塔(需要做内插才能做差)。

                更多可以参考:http://www.cnblogs.com/ronny/p/3886013.html

                具体到SIFT,将不同尺度空间分成不同的Octave(高斯金字塔的组数),对于每个Octave,采用不同的标准差,即

       每个Octave不同的层数(S)。同一个Octave中,相邻图像的差即为DoG,即对应的尺度空间。

         (2)关键点定位:精确定位特征点的位置,剔除伪特征点;

                由不同的尺度空间,我们可以选出所有的局部极值点,这其有有很多极值点,且不一定为关键点,因为需要剔除。

                主要分为两步:

                 1)粗剔除:剔除响应值低的关键点。通过将DoG进行泰勒展开、求导,可以得到关键点的

         精确位置与尺度,剔除响应值低的点;

                 2)进一步剔除:DoG在边缘具有较强的响应值,而这些点通常是难定位、不稳定的,因此需要删除边缘效应。

         (3)方向分配:基于关键点的局部梯度方向,给每个关键点分配方向;

                选取关键点周围16*16的窗口,统计这256个像素的梯度按方向统计到36个bin的直方图中(加权的,权值为梯度大小)。

             选取直方图中的峰值作为这个关键点的方向(旋转不变)。

         (4)关键点描述:对于每个关键点,用一个高维的向量去描述每个关键点。

                采用梯度方向直方图来对其进行描述。将16*16的窗口分成16个4*4的小窗口,统计每个小窗口的梯度(8个bin),

        最后得到的描述子向量为16*8=128维。

          参考:http://blog.csdn.net/a130737/article/details/37564463?utm_source=tuicool&utm_medium=referral

          更具体的,可参考如下博文:

          参考:http://www.cnblogs.com/ronny/p/4028776.html    

          博文同样是分为几个点:

          构建高斯差分金字塔:在这个点中,尺度空间生成了多少图像,为什么是倒数第三张解释的很清楚。

                                         这部分代码可参考这位博主:http://blog.csdn.net/xiaowei_cqu/article/details/8067881

                                          

          特征点搜索:在这个点中,清楚的解释了子像元插值,也就知道了为什么以及如何进行精确点的定位。最后介绍了边缘效应的方法。

                             这部分的源码可看这里,很惭愧,没看下去:http://blog.csdn.net/xiaowei_cqu/article/details/8087239

          方向赋值:为关键点赋值,包括位置、方向和尺度信息。源码分析:http://blog.csdn.net/xiaowei_cqu/article/details/8096072 

          关键点描述:http://blog.csdn.net/xiaowei_cqu/article/details/8113565

          

          

  • 相关阅读:
    DOM(文档对象模型)
    客户端检测
    mysql之触发器
    mysql之select(二)
    浅谈mysql中varchar(m)与char(n)的区别与联系
    mysql之select(一)
    mysql(一)
    mysql5.7.11安装遇到的问题
    Java 网络编程(二)
    Java 网络编程(一)
  • 原文地址:https://www.cnblogs.com/573177885qq/p/4732856.html
Copyright © 2011-2022 走看看