Мне нужно применить преобразование перспективы к изображению, но в результате границы становятся нерегулярными.
Мне нужно заменить объекты на одном изображении на другие.Нужно ли применять некоторые перспективные преобразования, чтобы адекватно заменить.Все в порядке, за исключением нерегулярных границ в преобразованном изображении.
Я пробовал разные методы интерполяции, разные качества изображения ... но проблема всегда одна и та же.
Есть пример: https://ibb.co/tzQGBhx
Я написал код, чтобы показать вам мою проблему.
import numpy as np
import cv2
logo=cv2.imread('test3.jpg')
dst = np.array([
[0, 0],
[logo.shape[1] - 1, 0],
[logo.shape[1] - 1, logo.shape[0] - 1],
[0, logo.shape[0] - 1]], dtype = "float32")
rect=np.float32([[260, 200], [520, 180], [530, 320], [260, 340]])
M = cv2.getPerspectiveTransform(dst, rect)
warp = cv2.warpPerspective(logo, M, (logo.shape[1]*2, logo.shape[0]*2),cv2.INTER_LINEAR ,cv2.BORDER_CONSTANT )
cv2.imshow('im',warp)
cv2.waitKey(0)