我有一个关于物体识别的问题,尤其是识别汽车模型!我正开始着手在不同图像中识别相同汽车模型的工作。目前,我认为3D对象识别的最佳算法之一是SIFT,但是在进行了演示实现后,我感到奇怪的是,该算法在有光泽的金属物体(例如汽车)上存在一些问题,尤其是当它们具有不同的颜色时。

有人知道在这一领域的一些工作,总的来说是一些合适的算法,可以在不同的图像中找到相同的汽车模型吗?

预先感谢您的帮助!

评论

您可以发布一些示例图片吗?

当然。用于创建汽车模型模型的图像可能像:s5 coupe training 1或s5 coupe training 2,但也有“正常”图片。查询图像可能像s5 coupe查询1希望有所帮助!

还有哪些替代的特征检测器,例如SIFT,GLOH或SURF,可以识别汽车上合适的关键点?

@jstr如果您最终实现了下面描述的方案,它的效果如何?

#1 楼

我将看看所谓的“单词袋”或“视觉单词”方法。它越来越多地用于图像分类和识别。该算法通常从检测图像中的鲁棒点(例如SIFT点)开始。使用这些发现点周围的区域(在您的情况下为128位SIFT描述符)。

以最简单的形式,可以从所有图像的所有描述符中收集所有数据并将它们聚类,例如使用k均值。然后,每个原始图像都具有有助于多个聚类的描述符。这些簇的质心,即视觉单词,可以用作图像的新描述符。基本上,您希望其描述符对图像进行聚类,以指示图像类别。

同样,在最简单的情况下,您有一个群集列表,并且对于每个图像,您要计算这些群集中的哪些包含该图像中的描述符以及多少。这类似于文本检索中使用的术语频率/文档反向频率(TD / IFD)方法。请参阅此快速而又肮脏的Matlab脚本。

这种方法正在积极研究中,并且有许多高级算法。方法,对caltech 101数据集进行分类。同样值得注意的是,来自加州理工学院的结果和软件。

评论


$ \ begingroup $
嘿莫里斯,谢谢您的回答。我会考虑的!但是有一个问题。如果我有“视觉单词”,如何测量它们之间的距离?我想我会使用SIFT描述符是正确的吗? -Lowe在一篇论文中描述了一种通过建立SIFT描述符模型来识别3D对象的方法。有人知道关于该主题的其他一些好论文(具有其他功能的3D对象识别)吗?
$ \ endgroup $
– jstr
2012年3月22日8:06



$ \ begingroup $
在这种情况下,正像欧几里德距离一样,因为您正在对整数向量进行聚类。我认为您不必自己测量簇质心之间的距离,而是在显示查询图像(并由此获得查询描述符)时,可以测量这些描述符最接近哪个质心。
$ \ endgroup $
– Maurits
2012年3月22日9:16



$ \ begingroup $
可以使用距离测度是很清楚的;-)但是在哪些数据上呢?关于每个视觉单词的SIFT描述符?
$ \ endgroup $
– jstr
2012年3月22日在9:39

$ \ begingroup $
实际上,作为初始聚类的度量标准,有三遍是为了确定查询描述符最接近哪个质心/视觉词,然后最后将查询td / idf向量与数据库中的向量进行比较。
$ \ endgroup $
– Maurits
2012年3月22日18:56

$ \ begingroup $
好吧,我知道了;-),但是距离测量在哪些数据上起作用?在SIFT描述符上?
$ \ endgroup $
– jstr
2012年3月23日在11:26