1

同一本童书有 10 页,页面的内容都是图片,我从每个页面中提取关键点和描述符作为我的训练数据。我想检测哪些页面在基于相机的匹配描述符中。

到目前为止,我通过提取每一帧的关键点和描述符并使用 OpenCV 的 FlannBasedMatcher 从训练数据中逐一匹配描述符来实现它,然后它返回最佳匹配的描述符。

这里的问题是它不能实时实现,当训练数据超过 3 页时,运行时间会很慢。

有没有人知道任何更好的方法来实现它?

4

2 回答 2

1

事实上,Surf 是一种更好的算法,虽然它不如 sift 准确,但你会发现它的运行时间接近实时,我还建议,如上所述,计算特征并使用并行计算进行匹配(容易如果您只是使用 OpenMP 就足够了)..

但是考虑到,冲浪发现的关键点要少得多,所以如果你的对象不是“有趣”或不够大......你不会匹配很多......

于 2013-03-14T18:40:01.483 回答
1

匹配是一个昂贵的过程,但可以并行化,并且有一些优化(如向量之间的余弦匹配)来加快速度。

如果您想要更高的准确度,您没有太多选择,您需要对特征进行分组匹配(这需要与训练数据和找到的关键点数量成正比的额外时间)。

另外:考虑使用 SURF 而不是 SIFT,由于一些智能优化,它更快。

于 2013-03-14T18:11:57.957 回答