我使用vl_sift(来自vl_feat站点)函数来查找SIFT描述符,它为一个图像提供了大小为128*1的描述符,为第二个图像提供了128*2的描述符。我得到了128的理由,但我不明白为什么列不断变化(有时1,有时2),它必须是相同的,对吗?有人能解释一下那些列代表什么吗?谢谢
发布于 2016-05-17 07:42:32
这些特征是从关键点提取出来的。在筛分的情况下,它们是团状结构。换句话说,vl_sift函数查找关键点,并从每个关键点提取128个维度描述符。
你有不同的尺寸(128*1或128*2等等)因为在一个图像中,vl_sift在另一个图像中找到了一个关键点,所以它找到了两个关键点。这就是为什么你有不同的维度。
发布于 2016-05-16 10:59:05
SIFT提取任意数量的描述符,每个描述符大小为128。提取的描述符数量不会是固定的,因为它取决于有多少个点“足够强”来成为一个好的描述符。在SIFT算法中,每个描述符都有128个“特征”,其他(如SURF,64个特性)将有不同。
在您的示例中,您将在第一个图像中获得一个功能,在seccond中获得2个功能。这是一个非常少的功能,也许你的图像太小?
https://stackoverflow.com/questions/37252187
复制相似问题