OpenCV 方法
OpenCV 中带有一个旋转图像的函数 cv2.rotate
rotate(src, rotateCode[, dst]) -> dst
参数:
src:输入图像
rotateCode:旋转方式
1、cv2.ROTATE_90_CLOCKWISE:顺时针 90 度
2、cv2.ROTATE_180:顺时针 180 度
3、cv2.ROTATE_90_COUNTERCLOCKWISE:顺时针 180 度 或者 逆时针 90 度
dst:输出的结果
OpenCV 实现程序如下:
import numpy as np import cv2 img = cv2.imread("meinv.jpg") rotate_90_cv = cv2.rotate(img, cv2.ROTATE_90_CLOCKWISE) rotate_180_cv = cv2.rotate(img, cv2.ROTATE_180) rotate_270_cv = cv2.rotate(img, cv2.ROTATE_90_COUNTERCLOCKWISE) cv2.imshow("img", img) cv2.imshow("rotate_90_cv", rotate_90_cv) cv2.imshow("rotate_180_cv", rotate_180_cv) cv2.imshow("rotate_270_cv", rotate_270_cv) cv2.waitKey(0) cv2.destroyAllWindows()
numpy 方法
numpy 中也提供一种旋转图像或者矩阵的方法 np.rot90 顾名思义就是选择多少个 90 度,与 OpenCV 中实现不同的是,numpy 的这个函数是逆时针旋转的,其函数说明如下:
np.rot90(m, k=1, axes=(0, 1))
参数:m:输入的矩阵或者图像
k:逆时针旋转多少个 90 度,k 取 0、1、2、3 分别对应逆时针旋转 0 度、90 度、180 度、270 度
axes:选择两个维度进行旋转
一个简单示例如下:
numpy 实现程序如下:
import numpy as np import cv2 img = cv2.imread("Rc8gJko9yb71al.jpg") rot_90 = np.rot90(img, 1) rot_180 = np.rot90(img, 2) rot_270 = np.rot90(img, 3) cv2.imshow("img", img) cv2.imshow("rot_90", rot_90) cv2.imshow("rot_180", rot_180) cv2.imshow("rot_270", rot_270) cv2.waitKey(0) cv2.destroyAllWindows()
125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/11187.html