我想在另一个图像中找到一个图像。我已经尝试过“模板匹配”方法,但我不知道如何使它不受比例、旋转、透视等变化的影响。
我已经阅读了有关特征检测的内容,并怀疑使用 sift-features 可能是最好的方法。除此之外,我需要使用 javacv 而不是 opencv 来实现使用特征检测。
是否有任何使用功能检测或任何其他建议来解决我的问题的实现?
我想在另一个图像中找到一个图像。我已经尝试过“模板匹配”方法,但我不知道如何使它不受比例、旋转、透视等变化的影响。
我已经阅读了有关特征检测的内容,并怀疑使用 sift-features 可能是最好的方法。除此之外,我需要使用 javacv 而不是 opencv 来实现使用特征检测。
是否有任何使用功能检测或任何其他建议来解决我的问题的实现?
如果您了解 JavaCV 的基础知识,您可以查看 JavaCV 的 ObjectFinder 示例。
此示例向您展示了如何执行重要步骤来解决您的问题。
在使用 ObjectFinder 之前,您必须调用以下方法来加载非免费模块(例如 SURF):
com.googlecode.javacv.cpp.opencv_nonfree.initModule_nonfree();
只是为了完整性。您可以使用 opencv 提供的图像特征匹配功能,描述here。甚至还有一个使用 javacv 的运行良好的匹配器的完整实现(虽然在 scala 中,但它很容易移植到 java 中)。