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写个小监控
Jan 27 Python
Python端口扫描简单程序
Nov 10 Python
python+matplotlib绘制简单的海豚(顶点和节点的操作)
Jan 02 Python
微信跳一跳辅助python代码实现
Jan 05 Python
python绘制多个曲线的折线图
Mar 23 Python
Python实现直播推流效果
Nov 26 Python
Django生成PDF文档显示网页上以及PDF中文显示乱码的解决方法
Dec 17 Python
python两个_多个字典合并相加的实例代码
Dec 26 Python
Python气泡提示与标签的实现
Apr 01 Python
Python QTimer实现多线程及QSS应用过程解析
Jul 11 Python
python 实现批量图片识别并翻译
Nov 02 Python
python scrapy简单模拟登录的代码分析
Jul 21 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_MySQL教程-第一天
2007/03/18 PHP
cmd下运行php脚本
2008/11/25 PHP
php 5.6版本中编写一个PHP扩展的简单示例
2015/01/20 PHP
PHP实现批量生成App各种尺寸Logo
2015/03/19 PHP
Lumen timezone 时区设置方法(慢了8个小时)
2018/01/20 PHP
PHP实现动态获取函数参数的方法示例
2018/04/02 PHP
JQuery的html(data)方法与<script>脚本块的解决方法
2010/03/09 Javascript
html组件不可输入(只读)同时任何组件都有效
2013/04/01 Javascript
复选框全选与全不选操作实现思路
2013/08/18 Javascript
Javascript实现真实字符串剩余字数提示的实例代码
2013/10/22 Javascript
jQuery异步获取json数据方法汇总
2014/12/22 Javascript
详解JavaScript中常用的函数类型
2015/11/18 Javascript
jQuery中table数据的值拷贝和拆分
2017/03/19 Javascript
vue-resouce设置请求头的三种方法
2017/09/12 Javascript
JS+canvas动态绘制饼图的方法示例
2017/09/12 Javascript
JS实现小球的弹性碰撞效果
2017/11/11 Javascript
vue项目中使用lib-flexible解决移动端适配的问题解决
2018/08/23 Javascript
VUE v-for循环中每个item节点动态绑定不同函数的实例
2018/09/26 Javascript
基于iview的router常用控制方式
2019/05/30 Javascript
vue+elementUi 实现密码显示/隐藏+小图标变化功能
2020/01/18 Javascript
详解node.js 事件循环
2020/07/22 Javascript
[02:03]《现实生活中的DOTA2》—林书豪&DOTA2职业选手出演短片
2015/08/18 DOTA
python脚本实现统计日志文件中的ip访问次数代码分享
2014/08/06 Python
全面了解Python的getattr(),setattr(),delattr(),hasattr()
2016/06/14 Python
使用pip安装python库的多种方式
2019/07/31 Python
Python时间序列缺失值的处理方法(日期缺失填充)
2019/08/11 Python
python利用opencv保存、播放视频
2020/11/02 Python
python 操作excel表格的方法
2020/12/05 Python
解析HTML5的存储功能和web SQL的相关操作方法
2016/02/19 HTML / CSS
Too Faced官网:美国知名彩妆品牌
2017/03/07 全球购物
为什么UNION ALL比UNION快
2016/03/17 面试题
制衣厂各岗位职责
2013/12/02 职场文书
分居协议书范本(律师见证版)
2014/11/26 职场文书
北京英文导游词
2015/02/12 职场文书
幼儿园教师师德承诺书
2015/04/28 职场文书
Python Numpy之linspace用法说明
2021/04/17 Python