1. 程式人生 > >用opencv實現圖片的仿射變換和旋轉

用opencv實現圖片的仿射變換和旋轉

import cv2
import numpy as np
img = cv2.imread('1.jpg',1)
cv2.imshow('old',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],[100,height-20],[width-20,50]])
matAffine = cv2.getAffineTransform(matSrc,matDst)
dst = cv2.warpAffine(img,matAffine,(width,height))
cv2.imshow("new",dst)
cv2.waitKey(0)




import cv2
import numpy as np
img = cv2.imread('1.jpg',1)
cv2.imshow('old',img)
imgInfo = img.shape
height = imgInfo[0]
width = imgInfo[1]
matRotate = cv2.getRotationMatrix2D((height*0.5,width*0.5),45,0.5)   # 引數一:旋轉點   引數二:角度     引數三:縮放比
dst = cv2.warpAffine(img,matRotate,(height,width))  # 引數一:圖片資訊    引數二:旋轉矩陣    引數三:圖片的顯示寬高 
cv2.imshow("new",dst)
cv2.waitKey(0)