OpenCV-18图像的翻转和旋转

一、图像的翻转

使用API---cv.flip(src, flipCode)

flipCode = 0表示上下翻转

flipCode > 0表示左右翻转

flipCode < 0上下 + 左右翻转

或者使用np的翻转src[: : -1,: : -1]实现上下翻转。

示例代码如下:

import cv2
import numpy as np

dog = cv2.imread("dog.png")

# 图片的翻转
# new_dog = cv2.flip(dog, 0)
new_dog1 = cv2.flip(dog, 1)
new_dog2 = cv2.flip(dog, -1)

# 使用np同样可以实现上下翻转。
new_dog = dog[::-1, ::-1]

cv2.imshow("dog", dog)
cv2.imshow("new_dog", new_dog)
cv2.imshow("new_dog1", new_dog1)
cv2.imshow("new_dog2", new_dog2)

cv2.waitKey(0)
cv2.destroyAllWindows()

输出结果如下:

二、图像的旋转

使用API ---cv2.rotate(img, rotateCode)

ROTATE_90_CLOCKWISE 90度顺时针

ROTATE_180 180度顺时针

ROTATE_90_COUNTERCLOCKWISE 90度逆时针

new_dog = cv2.rotate(dog, cv2.ROTATE_90_CLOCKWISE)
new_dog1 = cv2.rotate(dog, cv2.ROTATE_180)
new_dog2 = cv2.rotate(dog, cv2.ROTATE_90_COUNTERCLOCKWISE)

输出结果如下:

只提供了这三个角度设置,无法旋转其他角度。

综合演示代码如下所示:

import cv2
import numpy as np

dog = cv2.imread("dog.png")

# 图片的翻转
# new_dog = cv2.flip(dog, 0)
# new_dog1 = cv2.flip(dog, 1)
# new_dog2 = cv2.flip(dog, -1)

# 使用np同样可以实现上下翻转。
# new_dog = dog[::-1, ::-1]

# 图像的旋转
new_dog = cv2.rotate(dog, cv2.ROTATE_90_CLOCKWISE)
new_dog1 = cv2.rotate(dog, cv2.ROTATE_180)
new_dog2 = cv2.rotate(dog, cv2.ROTATE_90_COUNTERCLOCKWISE)

cv2.imshow("dog", dog)
cv2.imshow("new_dog", new_dog)
cv2.imshow("new_dog1", new_dog1)
cv2.imshow("new_dog2", new_dog2)

cv2.waitKey(0)
cv2.destroyAllWindows()
相关推荐
SpikeKing12 分钟前
LLM - 使用 LLaMA-Factory 微调大模型 环境配置与训练推理 教程 (1)
人工智能·llm·大语言模型·llama·环境配置·llamafactory·训练框架
小码的头发丝、18 分钟前
Django中ListView 和 DetailView类的区别
数据库·python·django
黄焖鸡能干四碗41 分钟前
信息化运维方案,实施方案,开发方案,信息中心安全运维资料(软件资料word)
大数据·人工智能·软件需求·设计规范·规格说明书
41 分钟前
开源竞争-数据驱动成长-11/05-大专生的思考
人工智能·笔记·学习·算法·机器学习
ctrey_1 小时前
2024-11-4 学习人工智能的Day21 openCV(3)
人工智能·opencv·学习
攻城狮_Dream1 小时前
“探索未来医疗:生成式人工智能在医疗领域的革命性应用“
人工智能·设计·医疗·毕业
Chef_Chen1 小时前
从0开始机器学习--Day17--神经网络反向传播作业
python·神经网络·机器学习
千澜空1 小时前
celery在django项目中实现并发任务和定时任务
python·django·celery·定时任务·异步任务
学习前端的小z1 小时前
【AIGC】如何通过ChatGPT轻松制作个性化GPTs应用
人工智能·chatgpt·aigc
可均可可2 小时前
C++之OpenCV入门到提高004:Mat 对象的使用
c++·opencv·mat·imread·imwrite