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()
相关推荐
艾莉丝努力练剑15 小时前
【AI大模型接入SDK】ChatGPT API
网络·c++·人工智能·websocket·网络协议·学习·chatgpt
枫叶林FYL16 小时前
【群体智能集群控制工程实践】第8章 无人机蜂群测试与部署
人工智能·无人机
2601_9499506320 小时前
练题簿,把培训从“走过场”变成“真落地”
人工智能·学习·小程序·刷题·小程序推荐
诸神缄默不语21 小时前
备战 AI 出海 DAY 0:海外数据采集
大数据·人工智能
Ysn07191 天前
YOLO-Master工程:experts.py 专家结构详解与目标检测专家设计启发
人工智能·yolo·目标检测
BingoGo1 天前
使用 GPT-6 Astra 模型 请立刻更新你的 Skill 与提示词
人工智能
香菜+1 天前
端侧视频分析 · 架构笔记
人工智能
s1ckrain1 天前
【论文阅读】A Survey on Vision–Language–Action Models for Embodied AI
论文阅读·人工智能·多模态·具身智能
深圳雨林凯AI1 天前
图案裂变的“风格归一化“设计思路:主体保得住,画风才拉得齐|雨林凯AI技术笔记
人工智能·笔记
DevNo1 天前
英文会议转中文纪要,三款AI工具实测体验
人工智能