Понимание результатов перспективного преобразования в контексте с точками назначения? - PullRequest
1 голос
/ 21 октября 2019

Я пытаюсь понять вывод warpPerspective и getPerspectiveTransform . Поэтому я взял изображение, заданное как:

enter image description here

и попытался преобразовать полное изображение (используя координаты границы) в
координаты, как объяснено pts2 ниже. Вот что я сделал.

import cv2
import numpy as np

image = "b.jpg"

img = cv2.imread(image)

pts1 = np.float32([
        [0,0],
        [0, img.shape[1]],
        [img.shape[0],img.shape[1]],
        [img.shape[0],0]
])


pts2 = np.float32([
        [100,100],
        [100,300],
        [300,300],
        [300,5]
])


M = cv2.getPerspectiveTransform(pts1,pts2)

dst = cv2.warpPerspective(img,M,(400,400))

cv2.imwrite("test.png", dst)

Вывод вышеприведенного кода выглядит следующим образом:

enter image description here

Что означает этот выводозначает в терминах координат пункта назначения:

pts2 = np.float32([
        [100,100],
        [100,300],
        [300,300],
        [300,5]
])

Почему выходные данные выглядят так, как они выглядят прямо сейчас? Я не могу отобразить это в своем уме, когда вижу pts2 и сравниваю с pts1, которые являются простыми граничными координатами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...