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中使用urllib2伪造HTTP报头的2个方法
Jul 07 Python
Python的Bottle框架中返回静态文件和JSON对象的方法
Apr 30 Python
python开发中module模块用法实例分析
Nov 12 Python
在Django同1个页面中的多表单处理详解
Jan 25 Python
Python编程判断一个正整数是否为素数的方法
Apr 14 Python
Python使用文件锁实现进程间同步功能【基于fcntl模块】
Oct 16 Python
python使用PIL模块获取图片像素点的方法
Jan 08 Python
解决pyecharts在jupyter notebook中使用报错问题
Apr 23 Python
python输出电脑上所有的串口名的方法
Jul 02 Python
django创建简单的页面响应实例教程
Sep 06 Python
python中Django文件上传方法详解
Aug 05 Python
用python批量下载apk
Dec 29 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
COM in PHP (winows only)
2006/10/09 PHP
与文件上传有关的php配置参数总结
2013/06/14 PHP
PHP6 中可能会出现的新特性预览
2014/04/04 PHP
php及codeigniter使用session-cookie的方法(详解)
2017/04/06 PHP
一个原生的用户等级的进度条
2010/07/03 Javascript
jquery随机展示头像代码
2011/12/21 Javascript
window.open不被拦截的实现代码
2012/08/22 Javascript
Javascript引用指针使用介绍
2012/11/07 Javascript
js获取或设置当前窗口url参数的小例子
2013/10/14 Javascript
Bootstrap导航条可点击和鼠标悬停显示下拉菜单的实现代码
2016/06/23 Javascript
BootStrapTable服务器分页实例解析
2016/12/20 Javascript
JS实现的简易拖放效果示例
2016/12/29 Javascript
vue使用watch 观察路由变化,重新获取内容
2017/03/08 Javascript
微信小程序商城项目之淘宝分类入口(2)
2017/04/17 Javascript
在Debian(Raspberry Pi)树莓派上安装NodeJS的教程详解
2017/09/19 NodeJs
JavaScript之创意时钟项目(实例讲解)
2017/10/23 Javascript
mongoose设置unique不生效问题的解决及如何移除unique的限制
2017/11/07 Javascript
浅谈Node.js爬虫之网页请求模块
2018/01/11 Javascript
父组件中vuex方法更新state子组件不能及时更新并渲染的完美解决方法
2018/04/25 Javascript
简单实现vue中的依赖收集与响应的方法
2019/02/18 Javascript
解决Vue调用springboot接口403跨域问题
2019/09/02 Javascript
Python中的index()方法使用教程
2015/05/18 Python
python开发之函数定义实例分析
2015/11/12 Python
python利用正则表达式搜索单词示例代码
2017/09/24 Python
python 多线程将大文件分开下载后在合并的实例
2018/11/09 Python
python3爬虫获取html内容及各属性值的方法
2018/12/17 Python
Python多个装饰器的调用顺序实例解析
2020/05/22 Python
纯CSS3实现带动画效果导航菜单无需js
2013/09/27 HTML / CSS
利用HTML5 Canvas制作一个简单的打飞机游戏
2015/05/11 HTML / CSS
2014最新开业庆典策划方案(5篇)
2014/09/15 职场文书
离婚撤诉申请书范本
2015/05/18 职场文书
公务员处分决定书
2015/06/25 职场文书
原来实习报告是这样写的呀!
2019/07/03 职场文书
pyqt5打包成exe可执行文件的方法
2021/05/14 Python
Python中的xlrd模块使用整理
2021/06/15 Python
游戏《东方异文石:爱亚利亚黎明》正式版发布
2022/04/03 其他游戏