当前位置:   article > 正文

掌握Python图像处理艺术:Pillow库入门实践与案例解析_pillow库 python 案例

pillow库 python 案例

今天给大家介绍一个功能实用且强大的图像处理库。

一、Pillow 库简介

Pillow 是 Python 中用于图像处理的一个强大的第三方库,它是 PIL (Python Imaging Library) 的一个分支,且在 Python 3 环境下得到了更好的支持和维护。通过使用 Pillow,我们可以轻松地打开、操作、编辑和保存各种格式的图像文件。

二、安装 Pillow 库

首先确保你已安装了 pip(Python 包管理器)。在命令行中输入以下命令来安装 Pillow:

pip3 install pillow

三、基础操作示例

  1. 打开和显示图片

  1. from PIL import Image
  2. # 打开一张图片
  3. img = Image.open("example.jpg")
  4. # 显示图片(需要在 Jupyter notebook 或者有 GUI 支持的环境中)
  5. img.show()

  1. 保存图片

  1. # 将图片以另一种格式保存(例如转换为 JPEG 格式)
  2. img.save("example_converted.jpg""JPEG")
  1. 获取图片尺寸

  1. width, height = img.size
  2. print(f"Image dimensions: {width}x{height}")

四、图像处理实例

  1. 缩放图像

  1. # 缩放图像至指定大小
  2. resized_img = img.resize((new_width, new_height))
  3. resized_img.save("example_resized.jpg")
  1. 旋转图像

  1. # 旋转图像 90 度
  2. rotated_img = img.rotate(40)
  3. rotated_img.save("example_rotated.jpg")

  1. 裁剪图像

  1. # 裁剪图像的一部分
  2. box = (left, upper, right, lower)
  3. cropped_img = img.crop(box)
  4. cropped_img.save("example_cropped.jpg")
  1. 色彩转换与滤镜

  1. # 将图像转换为灰度图像
  2. gray_img = img.convert("L")
  3. gray_img.save("example_gray.jpg")

  1. # 应用 PIL 内置滤镜
  2. filtered_img = img.filter(ImageFilter.BLUR)
  3. filtered_img.save("example_blurred.jpg")

五、进阶案例

案例1:批量转换图像格式

  1. import os
  2. for filename in os.listdir("images_folder"):
  3.     if filename.endswith(".png"):
  4.         img = Image.open(os.path.join("images_folder", filename))
  5.         new_filename = filename.replace(".png"".jpg")
  6.         img.save(os.path.join("output_folder", new_filename), "JPEG")

案例2:图像像素操作

  1. # 获取图像的像素数据并进行修改
  2. pixels = img.load()
  3. for x in range(img.width):
  4.     for y in range(img.height):
  5.         r, g, b = pixels[x, y]
  6.         # 假设将所有像素颜色变淡一半
  7.         pixels[x, y] = (r // 2, g // 2, b // 2)
  8. # 修改后的像素存回原图
  9. img.save("example_modified.jpg")

六、练习建议

实现一个简单的照片缩略图生成器。

使用 Pillow 创建一个简单的马赛克效果器,将大图分割成小格子,并对每个格子应用不同的色彩或模糊效果。

制作一个简单的图片转黑白复古风格程序。

通过以上实例,你应该对如何使用 Pillow 进行基本和一些高级的图像处理有了初步了解。实践这些代码并尝试探索更多的功能,如图像增强、色彩空间转换等,进一步提升你的图像处理技能。

往期推荐:

实战|使用机器学习SVM算法进行图像分类(附代码)

Python图像处理库精选:从PIL到OpenCV,视觉技术核心工具介绍

更多精彩文章请关注微信公众号:手把手PythonAI编程

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/代码探险家/article/detail/804185
推荐阅读
相关标签
  

闽ICP备14008679号