python实现批量图片格式转换


Posted in Python onJune 16, 2020

本文实例为大家分享了python实现批量格式转换的具体代码,供大家参考,具体内容如下

深度学习过程中总是绕不开数据集的制作,有时候实际图片格式或大小可能与需要关心的图片信息不一致,那么我们只能手动做好数据预处理,再进行training dataset.现在将介绍最简单的格式转换问题。可以支持批量图片任意格式转换。

直接上代码:

# 将jpg格式转位png 
import os 
from PIL import Image 
import shutil 
import sys 
 
# Define the input and output image 
output_dirHR = '../data/Mosaic_HR/' 
output_dirLR = '../data/Mosaic_LR/' 
if not os.path.exists(output_dirHR): 
 os.mkdir(output_dirHR) 
if not os.path.exists(output_dirLR): 
 os.mkdir(output_dirLR) 
 
 
 
def image2png(dataset_dir,type): 
 files = [] 
 image_list = os.listdir(dataset_dir) 
 files = [os.path.join(dataset_dir, _) for _ in image_list] 
 for index,jpg in enumerate(files): 
  if index > 100000: 
   break 
  try: 
   sys.stdout.write('\r>>Converting image %d/100000 ' % (index)) 
   sys.stdout.flush() 
   im = Image.open(jpg) 
   png = os.path.splitext(jpg)[0] + "." + type 
   im.save(png) 
   # 将已经转换的图片移动到指定位置 
   ''''' 
   if jpg.split('.')[-1] == 'jpg': 
    shutil.move(png,output_dirLR) 
   else: 
    shutil.move(png,output_dirHR) 
   ''' 
   shutil.move(png, output_dirHR) 
  except IOError as e: 
   print('could not read:',jpg) 
   print('error:',e) 
   print('skip it\n') 
 
 sys.stdout.write('Convert Over!\n') 
 sys.stdout.flush() 
 
 
 
if __name__ == "__main__": 
 current_dir = os.getcwd() 
 print(current_dir) # /Users/gavin/PycharmProjects/pygame 
 data_dir = '/home/gavin/MyProject/python/nesunai_faces/' 
 
 image2png(data_dir,'png')

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python Property属性的2种用法
Jun 21 Python
深入解析Python中函数的参数与作用域
Mar 20 Python
Python字符串处理实例详解
May 18 Python
django允许外部访问的实例讲解
May 14 Python
Python中分支语句与循环语句实例详解
Sep 13 Python
利用ctypes获取numpy数组的指针方法
Feb 12 Python
Django框架创建mysql连接与使用示例
Jul 29 Python
python实现的分析并统计nginx日志数据功能示例
Dec 21 Python
pytorch实现focal loss的两种方式小结
Jan 02 Python
python 读取二进制 显示图片案例
Apr 24 Python
利用Python批量识别电子账单数据的方法
Feb 08 Python
自己搭建resnet18网络并加载torchvision自带权重的操作
May 13 Python
python脚本实现验证码识别
Jun 07 #Python
python 创建一个空dataframe 然后添加行数据的实例
Jun 07 #Python
使用Python处理Excel表格的简单方法
Jun 07 #Python
python实现验证码识别功能
Jun 07 #Python
通过Pandas读取大文件的实例
Jun 07 #Python
Pandas:DataFrame对象的基础操作方法
Jun 07 #Python
Python中偏函数用法示例
Jun 07 #Python
You might like
?算你??的 PHP 程式大小
2006/12/06 PHP
php递归遍历删除文件的方法
2015/04/17 PHP
[原创]CI(CodeIgniter)简单统计访问人数实现方法
2016/01/19 PHP
JS类中定义原型方法的两种实现的区别
2007/03/08 Javascript
javascript的onchange事件与jQuery的change()方法比较
2009/09/28 Javascript
浅析showModalDialog数据缓存问题(用禁止浏览器缓存解决)
2013/07/09 Javascript
JavaScript中的Math.LN2属性用法详解
2015/06/12 Javascript
JS基于cookie实现来宾统计记录访客信息的方法
2015/08/04 Javascript
详解JavaScript数组和字符串中去除重复值的方法
2016/03/07 Javascript
Angular2搜索和重置按钮过场动画
2017/05/24 Javascript
JavaScript操作文件_动力节点Java学院整理
2017/06/30 Javascript
慕课网题目之js实现抽奖系统功能
2017/09/19 Javascript
详解React项目的服务端渲染改造(koa2+webpack3.11)
2018/03/19 Javascript
vue 内置过滤器的使用总结(附加自定义过滤器)
2018/12/11 Javascript
js图数据结构处理 迪杰斯特拉算法代码实例
2019/09/11 Javascript
vuejs element table 表格添加行,修改,单独删除行,批量删除行操作
2020/07/18 Javascript
vue2和vue3的v-if与v-for优先级对比学习
2020/10/10 Javascript
[36:02]DOTA2上海特级锦标赛D组小组赛#2 Liquid VS VP第一局
2016/02/28 DOTA
Python多线程下载文件的方法
2015/07/10 Python
python简单实现刷新智联简历
2016/03/30 Python
Python多进程同步简单实现代码
2016/04/27 Python
简单谈谈Python中函数的可变参数
2016/09/02 Python
彻彻底底地理解Python中的编码问题
2018/10/15 Python
Python使用Opencv实现图像特征检测与匹配的方法
2019/10/30 Python
关于Numpy数据类型对象(dtype)使用详解
2019/11/27 Python
python实现图书馆抢座(自动预约)功能的示例代码
2020/09/29 Python
Python基于Serializer实现字段验证及序列化
2020/11/04 Python
Python爬虫入门教程01之爬取豆瓣Top电影
2021/01/24 Python
小蚁科技官方商店:YI Technology
2019/08/23 全球购物
中专毕业生自我鉴定范文
2013/11/09 职场文书
跟单文员岗位职责
2014/01/03 职场文书
2015年勤工助学工作总结
2015/04/29 职场文书
青年志愿者活动感想
2015/08/07 职场文书
初中班长竞选稿
2015/11/20 职场文书
离婚协议书范本(2016最新版)
2016/03/18 职场文书
员工保密协议范本,您一定得收藏!很有用!
2019/08/08 职场文书