我在opencv中进行关键点检测和匹配以缝合两个图像。

当图像较小时,效果很好。但是,当处理较大的图像时,检测到的关键点数量会增加,因此匹配它们要花费大量时间。但是为了缝合图像,似乎我们不需要那么多关键点。为了提高效率,有什么方法只能检测有限数量的关键点吗?

在代码中,我使用SiftFeatureDetector和SiftDiscriptorExtractor来检测关键点并提取描述符。

问候。

最佳答案

我的建议:

调整图像大小,使其变得更小,然后执行功能匹配。
一旦有了快速的解决方案(Homography),就可以应用它,比之下一次匹配将更快。

您确实可以轻松控制功能数量。您可以提高阈值,结果将选择较少的功能。
您甚至可以将阈值包装在while()循环中。它会增加阈值,直到特征量小于N(但大于某些M)。

看我在这里发布的完整代码示例:

Calculate offset/skew/rotation of similar images in C++

关于opencv - opencv中大图像的关键点检测和匹配,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10673918/

10-12 19:44