opencv筆記(4): 圖像仿射

生活就像大海,我就像一條鹹魚,在浩瀚的海洋中邊浪邊學,這是opencv筆記系列中的「圖像仿射」。更多可關注「浪學」公衆 ~bash

世間萬圖,皆可仿射。這一篇文章以很鹹魚的方式把它們記錄下來。函數

首先呢,是導入相關的庫,再讀取和顯示原圖像:spa

import numpy as np
import cv2
from matplotlib.pyplot import imshow
%matplotlib inline

img = cv2.imread('image.jpg',1)
imgInfo = img.shape

height = imgInfo[0]
width = imgInfo[1]

imshow(img)
複製代碼

原圖像仍是一樣的那張圖,你仍是那一個你,顯示以下code

浪學公衆

接下來創建一個變換原矩陣和目標矩陣,使用cv2中的cv2.getAffineTransform()這個函數來獲取上述兩個矩陣之間變換的過程,最後用cv2.warpAffine()把上述的過程映射到原始輸入的圖片中,而獲得想要的圖片仿射。orm

matSrc = np.float32([[0,0],[0,height-1],[width-1,0]])
matDst = np.float32([[50,50],[300, height-200],[width-300,100]])
matAffine = cv2.getAffineTransform(matSrc, matDst)
dst = cv2.warpAffine(img, matAffine,(width, height))

imshow(dst)
複製代碼

仿射後的圖片顯示以下cdn

浪學公衆

嗯。。仿射的不是很好看,無論了。blog

今天的筆記就記錄這麼多了,其它的記錄在下一篇筆記中。阿浪已經泡好了加濃咖啡(不是星巴克,改天買星巴克),換個懶散舒服的姿式,繼續曬太陽。。。圖片

相關文章
相關標籤/搜索