opencv: WarpPerspective нерегулярное преобразование контура - PullRequest
1 голос
/ 27 марта 2019

Мне нужно применить преобразование перспективы к изображению, но в результате границы становятся нерегулярными.

Мне нужно заменить объекты на одном изображении на другие.Нужно ли применять некоторые перспективные преобразования, чтобы адекватно заменить.Все в порядке, за исключением нерегулярных границ в преобразованном изображении.

Я пробовал разные методы интерполяции, разные качества изображения ... но проблема всегда одна и та же.

Есть пример: 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)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...