📅  最后修改于: 2023-12-03 15:10:09.227000             🧑  作者: Mango
在计算机视觉和机器学习中,处理图像的旋转是一个重要的任务。在 OpenCV 库中,有很多函数可以用来旋转图像,其中一个是 cv2.getRotationMatrix2D()
。这个函数可以根据给定的旋转角度和旋转中心点创建一个旋转矩阵。我们可以使用 cv2.warpAffine()
函数来应用这个旋转矩阵来旋转图像。
下面的示例展示了如何按给定角度旋转图像:
import cv2
import numpy as np
# 加载图像
img = cv2.imread("example.jpg")
# 获取图像的中心点
(h, w) = img.shape[:2]
center = (w // 2, h // 2)
# 定义旋转角度,以及缩放比例
angle = 45
scale = 1.0
# 创建旋转矩阵
M = cv2.getRotationMatrix2D(center, angle, scale)
# 应用旋转变换
rotated = cv2.warpAffine(img, M, (w, h))
# 显示原始图像和旋转后的图像
cv2.imshow("Original", img)
cv2.imshow("Rotated", rotated)
cv2.waitKey(0)
cv2.destroyAllWindows()
在本文中,我们介绍了如何使用 OpenCV 在 Python 中旋转图像。我们调用了 cv2.getRotationMatrix2D()
和 cv2.warpAffine()
函数,使用给定的旋转角度和旋转中心点来创建一个旋转矩阵,并将矩阵应用于原始图像以旋转图像。