如何让图片旋转180度 python opencv
时间: 2025-06-12 13:23:01 浏览: 9
### 使用Python和OpenCV实现图片旋转180度的方法
在Python中使用OpenCV库可以轻松实现图片的旋转操作。对于旋转180度的需求,可以通过多种方法实现,其中一种简单且高效的方式是利用`numpy.rot90`函数[^1]。
以下是具体实现代码示例:
```python
import cv2
import numpy as np
# 读取图像
img = cv2.imread('image.jpg')
# 使用 numpy.rot90 函数旋转图像 180 度
img180 = np.rot90(img, 2) # 参数2表示旋转两次90度,即180度
# 显示旋转后的图像
cv2.imshow("rotate", img180)
cv2.waitKey(0)
# 保存旋转后的图像(可选)
cv2.imwrite('rotated_image.jpg', img180)
```
上述代码中,`np.rot90(img, 2)`通过指定参数`2`实现了将图像旋转180度的效果。参数`2`表示执行两次90度旋转,等效于一次180度旋转[^1]。
此外,如果需要更灵活地控制旋转角度(例如逆时针或顺时针),可以结合OpenCV的仿射变换功能。以下是一个基于仿射变换的实现方式:
```python
import cv2
import numpy as np
# 读取图像
img = cv2.imread('image.jpg')
(h, w) = img.shape[:2]
# 计算旋转中心
center = (w // 2, h // 2)
# 定义旋转矩阵(180度)
M = cv2.getRotationMatrix2D(center, 180, 1.0)
# 执行旋转操作
img180 = cv2.warpAffine(img, M, (w, h))
# 显示旋转后的图像
cv2.imshow("rotate", img180)
cv2.waitKey(0)
# 保存旋转后的图像(可选)
cv2.imwrite('rotated_image.jpg', img180)
```
在仿射变换方法中,`cv2.getRotationMatrix2D`用于生成旋转矩阵,其中第二个参数指定旋转角度(正数表示逆时针旋转)。通过设置角度为180度,即可完成图像的180度旋转[^3]。
阅读全文
相关推荐


















