微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

OpenCV 匹配模板仅在指定的位置网格上

如何解决OpenCV 匹配模板仅在指定的位置网格上

我有一个程序,我将一个图像作为输入,我必须将它与大约 640 个已知图像进行比较,以查看哪一个最相似。为此,我考虑使用 OpenCV 的匹配模板,因为它在做我想做的事情时似乎非常快速和有效。

我注意到匹配两个 400x240 像素的图像 1000 次比匹配 1400x240 像素中的 400x240 像素图像慢得多,尽管它们都是 1000 次匹配。 我的想法是将 640 张图像组合成一张大图像,将它们放在一个网格中(很容易做到,因为它们都具有相同的大小)。

这样做我真的可以加快这个过程,如果我可以在大组合参考的一些子图像中匹配模板输入图像(左上角在“网格像素”中的那些,如子图像实际上是我用来组合成大参考图像的 640 张图像之一),但似乎没有办法告诉匹配模板仅匹配一组指定的位置。

我怎样才能加快这个过程?是否有不同的库(我正在使用 Python)执行类似于匹配模板的操作,但我可以在其中指定要匹配的子图像?有没有更适合我的目标的完全不同的方法

编辑: 基本上我要做的是:我正在从电子游戏中截取屏幕截图,并且在屏幕截图中有一些角色的清晰肖像(400x240 像素)。我有所有角色的干净肖像(其中 80 个,每个皮肤有 8 个皮肤,总共 640 个肖像),我想找到哪些肖像与屏幕截图中的肖像最接近,以便我可以识别所扮演的角色。如果我也可以像 OpenCV 中的 matchTemplate 一样“屏蔽”一些像素,那就太棒了,因为 400x240px 矩形的某些特定部分会从玩家到玩家而变化,我希望我不必考虑到这一点并且可以掩盖那些(已知的)像素

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。