首页 > 其他分享 >计算机视觉数据增强

计算机视觉数据增强

时间:2024-07-24 20:29:47浏览次数:14  
标签:增强 ROTATE 计算机 Image transpose sImg 图像 视觉 os

from PIL import Image
import os
# im.transpose(Image.ROTATE_180)
# Image.FLIP_LEFT_RIGHT,表示将图像左右翻转
# Image.FLIP_TOP_BOTTOM,表示将图像上下翻转
# Image.ROTATE_90,表示将图像逆时针旋转90°
# Image.ROTATE_180,表示将图像逆时针旋转180°
# Image.ROTATE_270,表示将图像逆时针旋转270°
# Image.TRANSPOSE,表示将图像进行转置(相当于顺时针旋转90°)
# Image.TRANSVERSE,表示将图像进行转置,再水平翻转
print(''
      '########图像旋转方式#########\n'
      '1:图像左右镜像\n'
      '2:图像上下镜像\n'
      '3:图像逆时针旋转90°\n'
      '4:图像逆时针旋转180°\n'
      '5:图像逆时针旋转270°\n'
      '#############################\n'
      '说明:通过数字选择菜单 \n')
xz = int(input('请选择选择方式:'))


def circle(srcPath, dstPath):
    for filename in os.listdir(srcPath):
        # 如果不存在目的目录则创建一个,保持层级结构
        if not os.path.exists(dstPath):
            os.makedirs(dstPath)

        # 拼接完整的文件或文件夹路径
        srcFile = os.path.join(srcPath, filename)
        dstFile = os.path.join(dstPath, filename)

        # 如果是文件就处理
        if os.path.isfile(srcFile):
            try:
                sImg = Image.open(srcFile)
                if xz == 1:
                    ss = sImg.transpose(Image.FLIP_LEFT_RIGHT)
                elif xz == 2:
                    ss = sImg.transpose(Image.FLIP_TOP_BOTTOM)
                elif xz == 3:
                    ss = sImg.transpose(Image.ROTATE_90)
                elif xz == 4:
                    ss = sImg.transpose(Image.ROTATE_180)
                elif xz == 5:
                    ss = sImg.transpose(Image.ROTATE_270)
                ss.save(dstFile)
                print(dstFile + " 转换成功!")
            except Exception:
                print(dstFile + "失败!")
        if os.path.isdir(srcFile):
            circle(srcFile, dstFile)


if __name__ == '__main__':
    # 遍历待加入图片
    dirss = input('请输入图片所在文件夹:')
    dirss2 = input('请输入压缩后图片输出文件夹:')
    circle(dirss, dirss2)



标签:增强,ROTATE,计算机,Image,transpose,sImg,图像,视觉,os
From: https://blog.csdn.net/weixin_61871498/article/details/140642298

相关文章

  • 计算机网络04——子网划分
    IP地址分类地址每一小段最大255,总范围为0.0.0.0——255.255.255.255.255IP地址总分为ABCDE五类 B类:本地环网地址,IP地址变化后,也能发回给自己子网掩码默认子网掩码是固定的,计算出网络地址(对外ip地址)网络地址——由ip地址和子网掩码按位与计算出来的同一子网内的所有i......
  • 求职面试 - 计算机网络面试知识点
    计算机网络面试知识点1.计算机网络基础1.1主机间的通信方式客户端-服务器(C/S)客户端是服务的请求放,服务器是服务的提供方。对等(P2P)不用区分谁是客户端,谁是服务器,双方都能够向对方请求与提供服务。1.2电路&分组交换分组交换每个分组由首部和尾部组成,包含源地址......
  • 2个月搞定计算机二级C语言——真题(1)解析
    1.前言大家好,我是梁国庆。这段时间将持续发布计算机二级C语言真题的解析,想要同步练习,需要资源包的朋友可以跳转免费获取——《3个月搞定计算机二级C语言——准备工作》。现在恐怕要改为2个月搞定计算机二级C语言了,不过没有关系,干就完了!本篇博客将解析计算机二级C语言......
  • 01.计算机组成原理和结构
    01.计算机组成原理和结构目录介绍01.计算机底层知识1.1计算机基础组成1.2理论和实践相结合02.计算机基本硬件2.1基本硬件组成2.2输入和输出设备03.冯·诺依曼体系结构3.1存储程序计算机3.2冯·诺依曼描述计算机3.3抽象计算机框架3.4冯·诺依曼体系延......
  • 【计算机网络】TCP三次握手和四次挥手
    客户端–发送带有SYN标志的数据包–一次握手–服务端服务端–发送带有SYN/ACK标志的数据包–二次握手–客户端客户端–发送带有带有ACK标志的数据包–三次握手–服务端为什么是三次握手而不是两次握手?在不可靠的网络中,可能会出现包传输延迟变化大,存在重传的报......
  • 计算机组成与体系结构-计算机进制
    在线进制转换工具:https://tool.oschina.net/hexconvert二进制0b开头,由数字0、1组成,如:0b100101110八进制0开头,由0~7组成的数。如0126,050000十六进制以0X或0x开头,由09,AF或a~f组成。如0x12A,0x5a000,以H结尾也表示十六进制,如:C000H进制转换十进制转二进制,采用除二取余法......
  • servlet化学实验交流平台-计算机毕业设计源码13069
    目录摘要Abstract第一章绪论1.1选题背景及意义1.2国内外研究现状1.3研究方法第二章相关技术介绍2.1Java编程语言2.2B/S模式2.3MySQL简介2.4Serrvlet框架2.5Vue介绍第三章化学实验交流平台分析3.1系统目标3.2可行性分析3.2.1技术......
  • ssm古诗和诗人的可视化分析和信息检索-计算机毕业设计源码08278
    目录1绪论1.1选题背景1.2选题的目的意义1.3论文结构与章节安排2系统分析2.1.1技术可行性分析2.1.2 经济可行性分析2.1.3法律可行性分析2.2系统流程分析2.2.1添加信息流程2.2.2修改信息流程2.2.3删除信息流程2.3 系统功能分析2.3.1功能......
  • 计算机组成原理——第二章(3)
    这一小节我们讲一下无符号整数的表示和运算无符号整数的表示和运算1.无符号整数的表示1.全部二进制位都是数值位,没有符号位,第i位的位权为2.n bit无符号整数表示范围0~-1,超出的话就溢出3.表示最小的数就是全都是0,最大的数就是全12.无符号整数的加法这个比较easy,就是按......
  • 【计算机毕业设计】ssm499智能社区管理系统的设计与实现+vue
    现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本智能社区管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达......