opencv知识库:基于cv2.flip()函数对图像进行随机翻转(水平/垂直)

需求场景

欲对RGB格式的lena图像进行随机翻转 ,要求这些图像不翻转水平翻转垂直翻转 的概率都为1/3。

功能代码

python 复制代码
import cv2
import random

# 读取并展示图像
img = cv2.imread("lena.jpg")
cv2.imshow('lena', img)
cv2.waitKey(0)

for i in range(6): # 以循环6次模拟处理6张图片
    choice = random.choice(["flip_horizontal", "flip_vertical", "no_change"])
    if choice == "flip_horizontal": # 水平翻转
        new_img = cv2.flip(img, flipCode=1) # flipCode>=1的整数 表示水平翻转(绕y轴旋转)
    elif choice == "flip_vertical": # 垂直翻转
        new_img = cv2.flip(img, flipCode=0) # flipCode=0 表示垂直翻转(绕x轴旋转)
    else:
        new_img = img # 保持不变

    cv2.imshow('new_img_{}_{}'.format(i+1, choice), new_img)
    cv2.waitKey(0)

运行结果


...

结束语

如果本博文对你有所帮助,可以点个赞/收藏支持一下,如果能够持续关注,小编感激不尽~

小编会坚持创作,持续优化博文质量,以小见大,给读者带来更好的阅读体验~

相关推荐
字节跳动数据库3 分钟前
文章分享——庖丁解牛-图解查询分析和调优利器Optimizer Trace
人工智能·程序员
以和为贵22 分钟前
前端手写 RAG 踩坑实录:四个让检索"翻车"的坑
前端·人工智能·面试
何时梦醒27 分钟前
深入理解 LLM Tokenization:从文本分词到语义向量化的完整旅程
人工智能
冬哥聊AI27 分钟前
阿里二面:8K Token 撑住 100 轮对话,你的分层记忆架构怎么设计?
人工智能
拾年27531 分钟前
我用 30 行代码,搞懂了大模型是怎么"读"中文的
javascript·人工智能·llm
Tigger32 分钟前
受不了 ¥98/年的订阅,我用 Vibe Coding 自己写了个剪贴板工具
人工智能·开源·mac
ZJPRENO33 分钟前
创作者狂喜!Seedance 2.5 支持 50 份素材同时导入,做短剧广告爽翻
人工智能·ai编程·图像识别
TigerOne33 分钟前
第14章 可扩展性设计——插件、Skill与MCP
人工智能
moMo33 分钟前
Stateless(无状态)— LLM 调用底层规则学习
人工智能
魏祖潇34 分钟前
我在飞书里养了个“分身”——私聊喊它办事,群里 @ 它干活,还能替我传话
人工智能·机器学习