OpenCV之图像透视变换

什么是透视变换?
就是将一种坐标系转换为另一种坐标系,如下所示
OpenCV之图像透视变换_第1张图片
透视api
warpPespective(img, M, dsize,…),省略号表示后面参数不用管,使用默认
img :原图像
M :3*3变换矩阵
dsize :输出后变换图像大小

获取透视变换矩阵api
getPespectiveTransform(src, dst)
src :原图中需要切割的四个角的坐标点
dst :变换后的图片中四个角的坐标点

import cv2
from cv2 import warpPerspective
import numpy as np

img  = cv2.imread('d:\\STUDY_OPENCV\\img\\dog3.jpg')
src = np.float32([[150,100],[600,100], [150,450],[600,450]])
dst = np.float32([[0,0],[450,0], [0,350],[450,350]])
M = cv2.getPerspectiveTransform(src, dst)

new = warpPerspective(img, M, (450,350))
cv2.imshow('img',img)
cv2.imshow('new', new)
cv2.waitKey(0)

你可能感兴趣的:(opencv,计算机视觉,python)