python批量提取图片信息并保存的实现

  

下面是详细讲解:

1. 确定思路和安装依赖库

首先,我们需要确定这个问题的解决思路和所需要安装的依赖库。对于批量提取图片信息,我们可以使用Python中的PIL库来进行实现。PIL库是开源的Python图像处理库,可以用来处理各种类型的图片,并支持图片格式转换、缩放、剪切、合并等多种操作。

安装PIL库可以通过以下命令进行安装:

pip install pillow

2. 批量读取图片信息并将其保存

接下来,我们需要编写Python代码来批量读取图片信息并将其保存。下面是示例代码:

from PIL import Image

# 需要遍历的文件夹
folder = './images/'

# 遍历图片
for filename in os.listdir(folder):
    # 获取图片文件路径
    filepath = os.path.join(folder, filename)
    # 打开图片文件
    img = Image.open(filepath)
    # 获取图片信息
    width, height = img.size
    format = img.format
    mode = img.mode
    # 保存图片信息到txt文件中
    with open('image_info.txt', 'a') as f:
        f.write(f'File Name: {filename}\n')
        f.write(f'Image Width: {width}\n')
        f.write(f'Image Height: {height}\n')
        f.write(f'Image Format: {format}\n')
        f.write(f'Image Mode: {mode}\n\n')

这段代码实现了遍历指定文件夹中的所有图片,读取图片的文件路径、宽度、高度、格式和模式等信息,并将其保存到一个txt文件中。

3. 示例说明

示例1:提取单个图片信息

我们可以使用PIL库提供的函数来读取单个图片的信息。下面是示例代码:

from PIL import Image

# 图片文件路径
filepath = './images/test.jpg'

# 打开图片文件
img = Image.open(filepath)

# 获取图片信息
width, height = img.size
format = img.format
mode = img.mode

# 输出图片信息
print(f'Image Width: {width}')
print(f'Image Height: {height}')
print(f'Image Format: {format}')
print(f'Image Mode: {mode}')

这段代码将输出该图片的宽度、高度、格式和模式等信息。

示例2:提取多个图片信息并保存

我们可以使用PIL库提供的函数来批量读取多个图片的信息,并将它们保存到一个文件中。下面是示例代码:

from PIL import Image
import os

# 需要遍历的文件夹
folder = './images/'

# 遍历图片
for filename in os.listdir(folder):
    # 获取图片文件路径
    filepath = os.path.join(folder, filename)
    # 打开图片文件
    img = Image.open(filepath)
    # 获取图片信息
    width, height = img.size
    format = img.format
    mode = img.mode
    # 保存图片信息到txt文件中
    with open('image_info.txt', 'a') as f:
        f.write(f'File Name: {filename}\n')
        f.write(f'Image Width: {width}\n')
        f.write(f'Image Height: {height}\n')
        f.write(f'Image Format: {format}\n')
        f.write(f'Image Mode: {mode}\n\n')

这段代码将遍历指定文件夹中的所有图片,读取它们的文件路径、宽度、高度、格式和模式等信息,并将它们保存到一个txt文件中。

希望这些内容能够对你有所帮助!

相关文章