Оценить матрицу преобразования между двумя изображениями в разных видах - PullRequest
0 голосов
/ 06 апреля 2020

У меня есть несколько двоичных изображений прямоугольников, и я хочу оценить матрицу преобразования между двумя изображениями: enter image description here

Как вы можете видеть на изображении, я извлекаю угловые точки затем я применяю функцию cv2.getAffineTransform для opencv2. Но при применении матрицы преобразования к первому изображению я не получаю второе. Ошибка огромна, поэтому она не может быть связана с неточностью матрицы преобразования или извлеченных угловых точек.

Вот функция, которую я использую:

def affine_trans(img1,img2):
    pts1 = np.float32(get_corners(img1))
    pts2 = np.float32(get_corners(img2))
    M = cv2.getAffineTransform(pts1,pts2)
    dst = cv2.warpAffine(img1,M,(960,540))
    return dst, M
...