python opencv给旋转矩阵手动添加旋转
时间: 2023-10-09 12:17:38 浏览: 90
rotation.zip
可以使用OpenCV中的`cv2.getRotationMatrix2D`函数来获得旋转矩阵,然后将其与任何其他变换矩阵组合。以下是一个示例代码:
```python
import cv2
import numpy as np
# 读取图像
img = cv2.imread('image.png')
# 获得旋转矩阵
center = (img.shape[1] / 2, img.shape[0] / 2)
angle = 45
scale = 1
M = cv2.getRotationMatrix2D(center, angle, scale)
# 添加平移变换
tx = 50
ty = 50
M = np.concatenate((M, [[tx, ty, 1]]), axis=0)
# 应用变换
new_img = cv2.warpAffine(img, M, (img.shape[1], img.shape[0]))
# 显示结果
cv2.imshow('Original Image', img)
cv2.imshow('Transformed Image', new_img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上面的代码中,我们首先使用`cv2.getRotationMatrix2D`函数获取旋转矩阵。然后,我们手动添加了一个平移变换,将图像向右下方移动50个像素。最后,我们使用`cv2.warpAffine`函数应用了变换矩阵并显示了结果。
阅读全文