图像透视有几个基础操作(放大,缩小,旋转,平移,透视……)
放大
翻转
平移
旋转
语法:
retval=cv2.getRotationMatrix2D(center,anle,scale)
center:旋转中心
angle:旋转角度,正数为逆时针旋转,负数为顺时针旋转
scale:缩放大小
透视
语法一:
转换矩阵M=cv2.getPerspectiveTransform(pts_o,pts
-d)
pts_o为原始四个坐标
pts_d为变换后四个坐标
语法二:
dst=cv2.warpPerspective(img,M,dsize)
img为原图
dst为变换后的图
M为转换矩阵
dsize为变换后图像的大小
接下来把这些都用起来实现图像部分的旋转
import cv2
import numpy as np
img=cv2.imread("lianxi.jpg")
h,w,c=img.shape
p1=np.float32([[45,180],[220,80],[60,292],[270,181]])
p2=np.float32([[0,0],[400,0],[0,400],[400,400]])
M=cv2.getPerspective(img,M,(w,h))
dst=cv2.warpPerspective(img,M(w,h))
cv2.imshow("xxw",dst)
cv2.waitKey(0)
cv2.destroyAllWindows()