【问题标题】:Why Vlfeat generates same number of descriptors for different images?为什么 Vlfeat 会为不同的图像生成相同数量的描述符?
【发布时间】:2014-04-11 09:14:01
【问题描述】:

我注意到 Vlfeat/Sift 为不同的图像生成相同数量的描述符,为什么? 定向分配的目的是什么?描述符形成过程中似乎有类似的过程。 我对 SIFT 很陌生,对 SIFT 中的很多东西感到困惑。感谢您的帮助。

【问题讨论】:

    标签: sift vlfeat


    【解决方案1】:

    Vlfeat/Sift 为不同的图像生成相同数量的描述符,为什么?

    除非您明确传递带有given input keypoints (*) 的文件,否则描述符的数量不同 相同,并且显然取决于输入图像内容。

    例如,如果您将Starbucks logoLena 进行比较:

    ./sift --frames starbucks.pgm; wc -l starbucks.frame
     601 starbucks.frame
    
    ./sift --frames lena.pgm; wc -l lena.frame
    1769 lena.frame
    

    这里我使用了 300x300 像素的图像。 --frames 输出找到的关键点,每行具有一个位置、比例和方向。

    (*) 这意味着您要求 VLFeat 描述一组预定义的兴趣点。使用sift VLFeat 命令行工具,您可以使用--read-frames 选项来执行此操作。

    定向分配的目的是什么?

    这是为了实现旋转不变性。如果参考original paper

    一个或多个方向被分配给基于局部的每个关键点位置 图像渐变方向。所有未来的操作都是在图像数据上执行的 已相对于指定的方向、比例和位置进行了变换 对于每个特征,从而为这些转换提供不变性。

    【讨论】:

      猜你喜欢
      • 2011-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-27
      • 1970-01-01
      相关资源
      最近更新 更多