2
"PerspectiveTransform"メソッドを使用して、指定された矩形内のイメージを変換しています。メソッド "warpPerspective"はうまくいきますが、出力に黒い背景が含まれていて、黒色を削除して透明にしたいと考えています。画像から黒い背景を削除し、それを透明にする方法はopencvですか?
import cv2
import numpy as np
img2 = cv2.imread(r"C:\Users\test\Desktop\map.jpg")
input_quad = np.float32([[0,0],[1024,0],[1024,752],[0,752]])
output_quad = np.float32([[4,139],[500,137],[500,650],[159,636]])
lambda_img = np.zeros((728, 992,3), np.uint8)
lambda_img[:,:,:] = 255
lambda_val = cv2.getPerspectiveTransform(input_quad, output_quad)
dst = cv2.warpPerspective(img2,lambda_val,(992,728),lambda_img, cv2.INTER_CUBIC, borderMode=cv2.BORDER_TRANSPARENT)
cv2.imwrite("Valchanged.png",dst)
[enter image description here][1]
[![enter image description here][2]][2]
以下は、私が復活させた出力です。