gpt4 book ai didi

python - 如何在多张图片中找到一个模板?

转载 作者:太空宇宙 更新时间:2023-11-03 21:49:28 26 4
gpt4 key购买 nike

我有一个模板和几张图片。所以问题是找出图像中是否有这个模板。我写了一些循环,但我认为它不返回 bool 值...

    for i in images:
res = cv2.matchTemplate(i,templateDealer,cv2.TM_CCOEFF_NORMED)
min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(res)
top_left = max_loc
bottom_right = (top_left[0] + w, top_left[1] + h)
cv2.rectangle(i, top_left, bottom_right, (0, 255, 0), 2)
result.append(res)

请帮我把它...

最佳答案

matchTemplate 返回一个二维数组,其中包含每个像素位置的匹配值 - 模板与该位置的匹配程度。
cv2.minMaxLoc(res) 返回图像中最佳匹配的值和位置。当您通过视觉进行比较时,它可能不是实际匹配,但它是算法返回的最高值。您可以在多张图片上比较这个最高值,总体上最高的就是您要找的那张。
注意:您不应为此使用归一化算法,请使用 cv2.TM_CCOEFF 而不是 cv2.TM_CCOEFF_NORMED

您需要做的是追加一个包含最高值及其位置的元组:
result.append((max_val, max_loc)).
处理完所有图像后,找到最高的 max_val,并使用它的 max_loc 绘制一个矩形

关于python - 如何在多张图片中找到一个模板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56280117/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com