opencv学习笔记
主要是入门学习opencv,读入图像和 显示图像函数等
话不多说,上代码
#created by walker 2022/12/12
import cv2
import numpy as np
dog = cv2.imread('./dog.jpeg')
h, w, ch = dog.shape
#M = np.float32([[1, 0, 300], [0, 1, 200]])
M = cv2.getRotationMatrix2D((w/2,h/2), 45, 0.4)
new = cv2.warpAffine(dog, M, (w, h))
#中心点是(x,y)
print(new.shape)
cv2.imshow('dog',dog)
cv2.imshow('new',new)
cv2.waitKey(0)
#仿射api warpAffine(src, M, dsize, flags, mode, value)
#src:原图片, M:变换矩阵, dize: 输出图片的尺寸 flags:与resize中的插值算法一致
#mode:边界外推法标志 value: 填充边界的值 后面的可以选默认值
# 变换矩阵是2*2的,平移向量为2*1的,所以平移矩阵为2*3的矩阵
#获取变换矩阵的api
# getRotationMatrix2D(center, angle, scale)
# center:中心点 angle:角度,逆时针 scale:缩放比例
结果如图所示