我正在尝试使用 OpenCV(用于 C++)的 BRISK 实现来检查照片是否包含图像(或图像的一部分)。例如,我拍了一张照片,然后尝试匹配它使用数据库中的一组图像,我想选择最佳的对应图像(如果所有图像都不够好,则会显示错误消息)。
所以,我目前只是在测试 OpenCV。我只是采用了框架中包含的示例 (matching_to_many_images),并将检测器和描述符从 SURF 更改为 BRISK。
但是,我有奇怪的结果。这些是匹配的结果(BruteForce Hamming):


在第一个中,场景完全不同,但有很多匹配!在第二个中,场景非常相似,但有些匹配是错误的。
我认为这是一个参数问题——因为在 BRISK 的演示视频中,结果很重要。