我想执行一项分类任务,其中我将对象的给定图像映射到对象可以位于的预定义星座列表之一(即找到最可能的匹配)。为了获得图像的描述符(我将在其上运行机器学习算法),建议我使用带有 VLFeat 实现的 SIFT。
首先,我的主要问题 - 我想忽略 sift 的关键点查找部分,只将它用于它的描述符。在教程中,我看到有一个选项可以通过调用来做到这一点
[f,d] = vl_sift(I,'frames',fc) ;
其中 fc 指定关键点。我的问题是我想明确指定要在其中计算关键点周围描述符的边界框 - 但似乎我只能指定一个比例参数,现在对我来说有点神秘并且不允许我明确指定边界框。有没有办法做到这一点?
第二个问题是手动设置比例并以这种方式获取描述符有意义吗?(即产生一个好的描述符?)。关于获取描述符的更好方法还有其他建议吗?(将 SIFT 与其他实现或其他非 SIFT 描述符一起使用)。我应该提一下,我的对象始终是图像中唯一的对象,居中,具有恒定的照明,并且通过其内部部件的某种旋转而发生变化 - 这就是为什么我认为 SIFT 会奏效,因为我理解它专注于方向梯度会随着对象的旋转而相应改变。
谢谢