#把图片上的像素点映射到新的位置上,需要三个点来确定一个平面
import cv2
import numpy as np
img = cv2.imread('car.jpg', 1)
cv2.imshow('src', img)
imgInfo = img.shape
height = imgInfo[0]
width = imgInfo[1]
#三个点分别是左上角、左下角、右上角
matSrc = np.float32([[0, 0], [0, height-1], [width-1, 0]]) #原图上的三个点
matDst = np.float32([[50, 50], [300, height-200], [width-300, 100]]) #原图片三个点在新图片上的位置
#组合
matAffinc = cv2.getAffineTransform(matSrc, matDst) #仿射变换矩阵
dst = cv2.warpAffine(img, matAffinc, (width, height)) #仿射变换方法
cv2.imshow('dst',dst)
cv2.waitKey(0)