以下是一个简单的示例代码,演示了如何使用Python和OpenCV来实现毕加索图像的自旋转:
import cv2
import numpy as np
# 读取图像
image = cv2.imread('picasso.jpg')
# 获取图像的宽度和高度
height, width = image.shape[:2]
# 计算旋转中心
center = (width // 2, height // 2)
# 定义旋转角度(逆时针旋转)
angle = 45
# 定义缩放比例
scale = 1.0
# 定义旋转矩阵
rotation_matrix = cv2.getRotationMatrix2D(center, angle, scale)
# 执行旋转操作
rotated_image = cv2.warpAffine(image, rotation_matrix, (width, height))
# 显示原始图像和旋转后的图像
cv2.imshow('Original Image', image)
cv2.imshow('Rotated Image', rotated_image)
cv2.waitKey(0)
cv2.destroyAllWindows()
这段代码使用OpenCV库来读取一张图像,并通过cv2.getRotationMatrix2D函数定义了一个旋转矩阵,然后使用cv2.warpAffine函数执行了旋转操作。最后,使用cv2.imshow函数显示原始图像和旋转后的图像。