сегодня он пытается использовать алгоритм linemod, который является частью OpenCV.В более раннем проекте C ++ я уже использовал linemod, и он работает так, как описано в документации, но на этот раз я пытаюсь использовать Python API.
Здесь мой подход:
import cv2
template = cv2.imread('path_to_template')
lineModDetector = cv2.linemod.getDefaultLINE()
print(len(lineModDetector.getModalities()))
mask = cv2.bitwise_not(template)[:,:,1]
ret, boundingBox = lineModDetector.addTemplate([template], "circle", mask)
print(ret)
print(boundingBox)
Изображение шаблона:
Изображение шаблона
Но когда я пытаюсь добавить шаблон, он всегда терпит неудачу.У кого-нибудь есть идеи, как заставить его работать так, как ожидалось?Я уже заглянул в исходный код C ++, но все вроде бы хорошо.Я думаю, что код обертки может быть проблемой?!
Best,
Manuel