python 批量图片类型转换

利用python中的PIL.Image

代码如下:

import PIL.Image
import os

path1="F:\DETRAC-train-data\data" #原图片路径
path='F:\DETRAC-train-data\shuju' #新图片保存位置
filelist=os.listdir(path1)#该文件夹下所有的文件(包括文件夹)
for files in filelist:#遍历所有文件
Olddir = os.path.join(path1, files) # 原来的文件路径
if os.path.isdir(Olddir): # 如果是文件夹则跳过
continue
filesn = os.path.splitext(files) # 文件名
im=PIL.Image.open(Olddir)
filename = os.path.splitext(files)[0]
filepath = os.path.join(path, filename + '.png')
im.save(filepath)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 当你想要批量转换图片时,可以使用 Python 的图像处理库来实现。 你可以使用 Python 的 Pillow 库来读取图片并将其转换为其他格式。 下面是一个示例代码,假设你想要将当前文件夹中所有的 .jpg 图片转换为 .png 格式: ``` from PIL import Image import os # 遍历文件夹中的所有文件 for file in os.listdir(): # 只处理 .jpg 文件 if file.endswith(".jpg"): # 打开图片文件 image = Image.open(file) # 创建新文件名,将 .jpg 替换为 .png new_name = file.replace(".jpg", ".png") # 使用 save() 方法将图片保存为 .png 格式 image.save(new_name) ``` 这样,你就可以使用 Python 批量转换图片了。 ### 回答2: 使用Python批量转换图片可以通过以下步骤实现: 1. 导入必要的库:首先,需要导入PIL库(Python Imaging Library),这是一个用于图像处理的常用库。 ```python from PIL import Image import os ``` 2. 遍历文件夹中的图片:使用`os.listdir()`函数遍历指定文件夹中的所有文件,使用`os.path`模块获取文件的路径和文件名。 ```python folder = "图片文件夹路径" for filename in os.listdir(folder): if filename.endswith(".jpg"): # 只处理jpg格式的图片,可以根据需要更改 filepath = os.path.join(folder, filename) ``` 3. 批量转换图片格式:使用PIL库中的`Image.open()`函数打开图片,然后使用`Image.save()`函数将图片另存为指定格式。 ```python img = Image.open(filepath) output_path = "转换后保存的文件夹路径" + filename img.save(output_path, "PNG") # 指定保存为PNG格式,可以根据需要更改 ``` 4. 完整的代码如下: ```python from PIL import Image import os folder_path = "图片文件夹路径" output_folder = "转换后保存的文件夹路径" for filename in os.listdir(folder_path): if filename.endswith(".jpg"): filepath = os.path.join(folder_path, filename) img = Image.open(filepath) output_path = os.path.join(output_folder, filename.split(".")[0] + ".png") img.save(output_path, "PNG") ``` 请注意,在运行代码之前,需要将"图片文件夹路径"和"转换后保存的文件夹路径"替换为实际的文件夹路径。此代码将将指定文件夹路径中的所有jpg格式图片转换为PNG格式,并保存到指定输出文件夹中。 ### 回答3: Python中可以使用Pillow库来实现批量转换图片的功能。 首先,需要使用pip命令安装Pillow库。你可以在终端中运行以下命令来安装该库: ``` pip install Pillow ``` 然后,可以使用以下代码来批量转换图片: ```python from PIL import Image import os def batch_convert_images(input_folder, output_folder, output_format): if not os.path.exists(output_folder): os.makedirs(output_folder) files = os.listdir(input_folder) for file in files: if file.endswith(".jpg") or file.endswith(".png"): # 打开原始图片 image_path = os.path.join(input_folder, file) image = Image.open(image_path) # 设置输出路径和文件名 output_path = os.path.join(output_folder, file) output_file = os.path.splitext(output_path)[0] + "." + output_format # 转换并保存图片 image.save(output_file, format=output_format) # 输出转换结果 print("成功转换图片:", file) # 输入文件夹路径、输出文件夹路径和输出格式 input_folder = "input" output_folder = "output" output_format = "jpg" # 执行批量转换图片函数 batch_convert_images(input_folder, output_folder, output_format) ``` 上述代码中,首先导入了Pillow库和os模块。然后定义了一个`batch_convert_images`函数,该函数接受输入文件夹路径、输出文件夹路径和输出格式作为参数。 在函数内部,首先检查输出文件夹是否存在,如果不存在则创建。然后,遍历输入文件夹中的所有文件,判断文件是否以.jpg或.png为扩展名。 对于符合条件的文件,使用`Image.open`函数打开原始图片,然后指定输出路径和文件名。接下来,使用`image.save`函数将图片以指定格式保存到输出文件中。 最后,打印出转换结果。你只需要将输入文件夹路径、输出文件夹路径和输出格式设置为适当的值,然后执行`batch_convert_images`函数即可实现批量转换图片的功能。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值