Итак, я использую функцию opencv matchTemplate для обнаружения объектов на изображении и сохраняю их в массиве.Я также хочу сохранить уверенность opencv в том, что шаблон соответствует.(Я могу отфильтровать его с порогом, но он выглядит так, как будто эти данные не возвращаются из функции np.where
).
Я знаю, что есть функция minmaxloc, но она возвращает только лучшую, и я хочу что-нибудьвыше порога.
вот мой код:
res_b = cv2.matchTemplate(img_b,template,cv2.TM_CCOEFF_NORMED)
res_g = cv2.matchTemplate(img_g,template,cv2.TM_CCOEFF_NORMED)
res_r = cv2.matchTemplate(img_r,template,cv2.TM_CCOEFF_NORMED)
res = np.add(np.add(res_b, res_g), res_r)
res /= 3
threshold = 0.8
loc = np.where(res > threshold)
for pt in zip(*loc[::-1]):
cv2.rectangle(img_rgb, pt, (pt[0] + w, pt[1] + h), (0,0,255), 2)
point = Empty()
point.x = pt[0]+w/2
point.y = pt[1]+h/2
point.confidence = ???
myres.append(point)