文章目录

  • 前言
  • 一、转换思路
  • 二、python脚本分步代码
    • 1.引入库
    • 2.定义输入图片路径和输出图片路径
    • 3.实现格式转换函数
  • 三、python脚本完整程序
  • 总结

前言

本文重点介绍普通图片格式怎么相互转换,如jpg格式图片怎么批量转化为png格式。在深度学习项目中,有时我们收集到的数据集图片格式不统一,有的代码支持多种格式图片输入,有的则只支持个别格式,所以这时,我们需要通过脚本来转换图片格式。不说废话,直接上代码。


提示:以下是本篇文章正文内容,下面案例可供参考

一、转换思路

使用PIL中的Image模块,对图像进行读取打开,然后输出设定为自己想要的格式即可,重点是要突出文件夹中多张图片也可以批量装换。

二、python脚本分步代码

1.引入库

代码如下(示例):

# 将jpg格式转位png
import os
from PIL import Image
import shutil
import sys

2.定义输入图片路径和输出图片路径

代码如下(示例):

output_dirHR = './pa_car_img/'
output_dirLR = './pa_car_i/'
if not os.path.exists(output_dirHR):os.mkdir(output_dirHR)
if not os.path.exists(output_dirLR):os.mkdir(output_dirLR)

3.实现格式转换函数

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:breaktry:sys.stdout.write('\r>>Converting image %d/100000 ' % (index))sys.stdout.flush()im = Image.open(jpg)png = os.path.splitext(jpg)[0] + "." + typeim.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()

三、python脚本完整程序

# 将jpg格式转位png
import os
from PIL import Image
import shutil
import sys# Define the input and output image
output_dirHR = './pa_car_img/'
output_dirLR = './pa_car_i/'
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:breaktry:sys.stdout.write('\r>>Converting image %d/100000 ' % (index))sys.stdout.flush()im = Image.open(jpg)png = os.path.splitext(jpg)[0] + "." + typeim.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/pygamedata_dir = 'F:/feiyi_car_data/pa_car_img/'image2png(data_dir,'png')

总结

以上就是今天要讲的内容,脚本超级好用,学好python,大大提高工作效率!觉得还不错的,感谢关注收藏,后续还会继续分享好用的数据处理脚本。

python实现批量图片格式转换相关推荐

  1. Python脚本—批量图片格式转换

    使用Python的os.sys.PIL库完成批量图片格式转换 import os import sys from PIL import Imageinput_folder = r'D:\Toolkit ...

  2. 【图片格式转换】python实现批量图片格式转换:emf、jpeg等转为png

    [图片格式转换]python批量进行图片格式转换emf.jpeg等转为png 文章目录 [图片格式转换]python批量进行图片格式转换emf.jpeg等转为png 1. 代码 2. 效果 3. 总结 ...

  3. 利用Python实现自动批量图片格式转换

    文章目录 利用Python实现自动批量图片格式转换 0.背景 1.简单思路 2.进一步改进 3.最终版本 4.总结 利用Python实现自动批量图片格式转换 0.背景 在一个漫画网站下载了一些图片,但 ...

  4. 如何快速批量图片格式转换呢?

    在日常工作中,我们会找到很多不同的图片格式,其中有些格式是不常用的,这些格式的兼容性较差,这样就经常需要把图片转换成常用格式,方便工作使用.有时需要批量处理图片格式转换.如果你想快速转换图像格式,可以 ...

  5. 怎样把图片转换成jpg格式?如何完成批量图片格式转换?

    处理图片时,如果遇到图片格式转换(https://www.yasuotu.com/geshi)的时候该怎么办呢?尤其需要批量图片格式转化的时候,有没有比较方便又快捷的方法呢?推荐使用压缩图的图片处理工 ...

  6. python实现图片格式转换_python实现批量图片格式转换

    本文实例为大家分享了python实现批量格式转换的具体代码,供大家参考,具体内容如下 深度学习过程中总是绕不开数据集的制作,有时候实际图片格式或大小可能与需要关心的图片信息不一致,那么我们只能手动做好 ...

  7. ENVI批量图片格式转换(IDL语言实现,raw转换为tif)

    笔者最近需要将大量.raw后缀的多光谱图像转换为tif格式,然后再利用matlab对tif格式的图片进行处理. 然而,利用ENVI将.raw图片读入后,只能一张一张地将其另存为.tif格式. 笔者考虑 ...

  8. python:jpg图片格式转换成png格式

    #转换图片格式 并重命名 import PIL.Image import os# i=0# class Solution: def jpg_to_png(path:str,savepath:str): ...

  9. Python实用:图片格式转换

    碰上这样一个情景: 我从网络上下载了一张表情包图片,存放在 MyImages 文件夹下,文件类型为 .wepg ,为了能够在QQ上顺利发送,我需要将它转换为常用的 .jpg 或 .jpeg 格式. 如 ...

  10. 如何批量图片格式转换_批量图片转换器免费下载

    有的时候需要做一些图片类型材料,需要将其他格式转换为JPG格式.下面我来讲解一种比较简单的方式. 首先下载软件 Leftso Image Compression 访问密码 9987 软件免费授权码申请 ...

最新文章

  1. 不占用多余空间实现值的交换——异或运算
  2. lucene字典实现原理——FST
  3. android源码的目录
  4. OpenCV 开闭运算
  5. 【数据库】MySQL数据库(一)
  6. java的CountDownLatch使用
  7. boost::callable_traits添加volatile成员的测试程序
  8. CodeForces - 1497D Genius(dp)
  9. Cloudflare的HTTP/2优化策略
  10. Linux 命令之 pwconv -- 开启用户的投影密码
  11. Kmplayer播放器 绿色免安装版 2016 中文版
  12. android安全性发展,Android未来发展 安全是重点
  13. 2022年快手磁力金牛服饰行业营销洞察报告
  14. DreamWeaver CS3中的SPRY的自定义验证
  15. 一张图告诉你,自学编程和科班程序员的差别在哪!网友:很真实
  16. 应聘php面试自我介绍,应聘工作面试自我介绍
  17. android dropbox sdk,Android Dropbox SDK清单设置
  18. 11G_RAC扩容方案
  19. Unity【LOD Group】- 关于性能优化中LOD的使用与总结
  20. js实现字符串数组转换成数字数组

热门文章

  1. 苹果退款_销售和退款政策 - Apple (中国大陆)
  2. ubuntu22.04无法打开网易云音乐APP
  3. python字典get用法_详细解析python字典get()实例教程
  4. 戴尔惠普华硕笔记本Fn键反了,按F1、F2等键出来Fn+F1、F2的效果
  5. ORACLE新增字段、注释等
  6. Java图形用户界面实验
  7. DX11梯台旋转运动
  8. python 自定义时间 加减天数
  9. 深度学习:将新闻报道按照不同话题性质进行分类
  10. 彭斌_无人机的发展与未来