使用Python进行图像批处理的方法示例

 更新时间:2024年09月11日 09:50:43   作者:杰哥在此  
在Python中进行图像批处理可以使用多种库,如 Pillow、OpenCV 和 imageio,这些库可以用来执行各种图像处理任务,如调整大小、裁剪、旋转、滤镜应用等,以下是使用这些库进行图像批处理的示例,需要的朋友可以参考下

前言

在Python中进行图像批处理可以使用多种库,如 PillowOpenCV 和 imageio。这些库可以用来执行各种图像处理任务,如调整大小、裁剪、旋转、滤镜应用等。以下是使用这些库进行图像批处理的示例。

使用 Pillow 进行图像批处理

Pillow 是一个功能强大的图像处理库。下面是如何使用 Pillow 进行图像批处理的基本示例:

  • 安装 Pillow
pip install pillow
  • 批处理图像
from PIL import Image
import os

def process_image(file_path, output_path):
    with Image.open(file_path) as img:
        # 示例处理:调整大小
        img = img.resize((800, 800))
        # 示例处理:应用滤镜
        img = img.convert('L')  # 转为灰度图
        img.save(output_path)

def batch_process_images(input_folder, output_folder):
    if not os.path.exists(output_folder):
        os.makedirs(output_folder)
    
    for filename in os.listdir(input_folder):
        if filename.lower().endswith(('.png', '.jpg', '.jpeg')):
            file_path = os.path.join(input_folder, filename)
            output_path = os.path.join(output_folder, filename)
            process_image(file_path, output_path)

# 示例使用
batch_process_images('input_images', 'output_images')

使用 OpenCV 进行图像批处理

OpenCV 是一个功能强大的计算机视觉库,适用于更复杂的图像处理任务。下面是如何使用 OpenCV 进行图像批处理的示例:

  • 安装 OpenCV
pip install opencv-python
  • 批处理图像
import cv2
import os

def process_image(file_path, output_path):
    # 读取图像
    img = cv2.imread(file_path)
    # 示例处理:调整大小
    img = cv2.resize(img, (800, 800))
    # 示例处理:将图像转换为灰度
    img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    cv2.imwrite(output_path, img)

def batch_process_images(input_folder, output_folder):
    if not os.path.exists(output_folder):
        os.makedirs(output_folder)
    
    for filename in os.listdir(input_folder):
        if filename.lower().endswith(('.png', '.jpg', '.jpeg')):
            file_path = os.path.join(input_folder, filename)
            output_path = os.path.join(output_folder, filename)
            process_image(file_path, output_path)

# 示例使用
batch_process_images('input_images', 'output_images')

使用 imageio 进行图像批处理

imageio 是另一个图像处理库,支持多种图像格式和文件类型。

  • 安装 imageio
pip install imageio
  • 批处理图像
import imageio
import os

def process_image(file_path, output_path):
    img = imageio.imread(file_path)
    # 示例处理:调整大小
    img_resized = imageio.imresize(img, (800, 800))
    # 示例处理:转换为灰度
    img_gray = imageio.rgb2gray(img_resized)
    imageio.imwrite(output_path, img_gray)

def batch_process_images(input_folder, output_folder):
    if not os.path.exists(output_folder):
        os.makedirs(output_folder)
    
    for filename in os.listdir(input_folder):
        if filename.lower().endswith(('.png', '.jpg', '.jpeg')):
            file_path = os.path.join(input_folder, filename)
            output_path = os.path.join(output_folder, filename)
            process_image(file_path, output_path)

# 示例使用
batch_process_images('input_images', 'output_images')

总结

  • Pillow 适合基本的图像处理任务,如调整大小、裁剪、滤镜应用等。
  • OpenCV 适合更复杂的计算机视觉任务,如图像变换、特征检测等。
  • imageio 提供了简洁的接口,适用于读取和保存各种图像格式。

你可以根据具体的需求选择合适的库来进行图像批处理。以上示例展示了如何处理图像的基本任务,你可以在这些基础上扩展和自定义更多的图像处理功能。

以上就是使用Python进行图像批处理的方法示例的详细内容,更多关于Python图像批处理的资料请关注脚本之家其它相关文章!

相关文章

  • 将TensorFlow的模型网络导出为单个文件的方法

    将TensorFlow的模型网络导出为单个文件的方法

    本篇文章主要介绍了将TensorFlow的网络导出为单个文件的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • Python 使用tempfile包轻松无痕的运行代码

    Python 使用tempfile包轻松无痕的运行代码

    大家好,我们知道软件运行过程中一般会在指定位置生成临时文件,这些资源不要轻易删除,可能是过程文件,定时清理是必要的,今天给大家分享一款工具:tempfile,喜欢本文点赞支持,欢迎收藏学习
    2021-11-11
  • 使用python更改Word文档字体的操作代码

    使用python更改Word文档字体的操作代码

    更改文字字体是编辑和美化Word文档时的一项常见需求,使用合适的字体不仅可以提升文档的整体视觉效果,还能突显关键信息,本文将介绍如何通过Python代码更改Word文档字体,实现批量操作与自动化,需要的朋友可以参考下
    2024-08-08
  • Python实战之制作天气查询软件

    Python实战之制作天气查询软件

    这篇文章主要给大家介绍了关于Python实战之制作天气查询软件的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Python具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-05-05
  • python使用RNN实现文本分类

    python使用RNN实现文本分类

    这篇文章主要为大家详细介绍了python使用RNN进行文本分类,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • pycharm远程连接服务器并配置python interpreter的方法

    pycharm远程连接服务器并配置python interpreter的方法

    这篇文章主要介绍了pycharm远程连接服务器并配置python interpreter的方法,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • 解决pycharm不能自动补全第三方库的函数和属性问题

    解决pycharm不能自动补全第三方库的函数和属性问题

    这篇文章主要介绍了解决pycharm不能自动补全第三方库的函数和属性问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • Python利用Pillow(PIL)库实现验证码图片的全过程

    Python利用Pillow(PIL)库实现验证码图片的全过程

    这篇文章主要给大家介绍了关于Python利用Pillow(PIL)库实现验证码图片的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • python列表详情

    python列表详情

    这篇文章主要介绍了python列表详情,python没有数组,而是引入了列表(list),列表可以存储任何类型的数据,而且同一个列表中的数据类型也可以不同,下面一起来看文章详细内容吧
    2021-12-12
  • Django多层嵌套ManyToMany字段ORM操作详解

    Django多层嵌套ManyToMany字段ORM操作详解

    这篇文章主要介绍了Django多层嵌套ManyToMany字段ORM操作详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05

最新评论