为了账号安全,请及时绑定邮箱和手机立即绑定

模板与 OpenCV 匹配时如何避免误报?

模板与 OpenCV 匹配时如何避免误报?

汪汪一只猫 2021-06-08 15:51:33
我想使用 OpenCV 和 Python 制作一个程序来检查较小的图像是否在较大的图像中。我知道较大图像中的内容,但较小图像每次都可能发生变化,因此避免误报对我来说很重要。我已经使用cv2.matchTemplate该cv2.TM_CCOEFF_NORMED模式来检查置信度,如果较小的图像只是完整图像的裁剪版本,则效果很好。但是,例如,如果较小的图像是 1x1 白色像素,则会出现问题。我的大图像中有很多空白,我不希望它匹配。这是我的代码:#!/usr/bin/env pythonimport cv2def main():    source = cv2.imread('source.png', 0)    template = cv2.imread('template.png', 0)    res = cv2.matchTemplate(source, template, cv2.TM_CCOEFF_NORMED)    min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(res)    if max_val < 0.9:        print 'Confidence score is less than 0.9, no match found.'        return    print 'Match found!'if __name__ == '__main__':    main()我该如何改进?我想有一种方法可以检查匹配项是否至少为特定大小(例如 50x50),以便在使用小图像作为模板时系统不会中断,但我不确定。
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 156 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信