Python中PIL库的常用用法示例

这篇具有很好参考价值的文章主要介绍了Python中PIL库的常用用法示例。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

        Python中的PIL(Python Imaging Library,已更名为Pillow)是一个功能强大的图像处理库。以下是一些常用的PIL功能及相应的代码示例:

1. 打开和保存图像:

from PIL import Image

# 打开图像
image = Image.open("example.jpg")

# 保存图像
image.save("example_saved.jpg")

2. 显示图像:

from PIL import Image

image = Image.open("example.jpg")
image.show()

python pil库,python,人工智能,计算机视觉,图像处理

 

3. 图像尺寸调整(resize):

from PIL import Image

image = Image.open("example.jpg")

# 修改图像尺寸
new_size = (width, height)
resized_image = image.resize(new_size)
resized_image.save("example_resized.jpg")

4. 图像旋转:

from PIL import Image

image = Image.open("example.jpg")

# 旋转图像
rotated_image = image.rotate(45)  # 旋转45度
rotated_image.save("example_rotated.jpg")

5. 图像裁剪:

from PIL import Image

image = Image.open("example.jpg")

# 裁剪图像
crop_box = (left, upper, right, lower)
cropped_image = image.crop(crop_box)
cropped_image.save("example_cropped.jpg")

6. 图像格式转换:

from PIL import Image

image = Image.open("example.jpg")

# 转换为PNG格式
image.save("example_converted.png", "PNG")

7. 为图像添加文字:

from PIL import Image, ImageDraw, ImageFont

image = Image.open("example.jpg")
draw = ImageDraw.Draw(image)

# 设置字体和大小
font = ImageFont.truetype("arial.ttf", 30)

# 在图像上添加文字
position = (50, 50)
text = "Hello, PIL!"
draw.text(position, text, font=font, fill=(255, 255, 255))

image.save("example_text.jpg")

8. 合并图像:

from PIL import Image

image1 = Image.open("example1.jpg")
image2 = Image.open("example2.jpg")

# 合并图像
merged_image = Image.blend(image1, image2, alpha=0.5)
merged_image.save("example_merged.jpg")

9. 调整图像亮度:

from PIL import Image, ImageEnhance

image = Image.open("example.jpg")

# 调整亮度
enhancer = ImageEnhance.Brightness(image)
brightness_factor = 1.5  # 增加亮度
brighter_image = enhancer.enhance(brightness_factor)
brighter_image.save("example_brightness.jpg")

python pil库,python,人工智能,计算机视觉,图像处理

 

10. 转换图像为黑白:  

from PIL import Image

image = Image.open("example.jpg")

# 转换为黑白
black_and_white_image = image.convert("L")
black_and_white_image.save("example_black_and_white.jpg")

python pil库,python,人工智能,计算机视觉,图像处理

 

11. 图像水平翻转:

from PIL import Image

image = Image.open("example.jpg")

# 水平翻转
flipped_image = image.transpose(Image.FLIP_LEFT_RIGHT)
flipped_image.save("example_flipped.jpg")

python pil库,python,人工智能,计算机视觉,图像处理

 

12. 图像滤镜(模糊):

from PIL import Image, ImageFilter

image = Image.open("example.jpg")

# 应用模糊滤镜
blurred_image = image.filter(ImageFilter.BLUR)
blurred_image.save("example_blurred.jpg")

python pil库,python,人工智能,计算机视觉,图像处理

 

13. 组合多张图像成拼图:

from PIL import Image

image1 = Image.open("example1.jpg")
image2 = Image.open("example2.jpg")
image3 = Image.open("example3.jpg")
image4 = Image.open("example4.jpg")

# 创建一个新的空白图像,用于存放拼图
output_image = Image.new("RGB", (image1.width * 2, image1.height * 2))

# 将四张图像拼接到新图像中
output_image.paste(image1, (0, 0))
output_image.paste(image2, (image1.width, 0))
output_image.paste(image3, (0, image1.height))
output_image.paste(image4, (image1.width, image1.height))

output_image.save("example_collage.jpg")

14. 生成缩略图:

from PIL import Image

image = Image.open("example.jpg")

# 生成缩略图
thumbnail_size = (100, 100)
image.thumbnail(thumbnail_size)

image.save("example_thumbnail.jpg")

python pil库,python,人工智能,计算机视觉,图像处理

 

15.获取并修改像素值:

from PIL import Image

image = Image.open("example.jpg")

# 获取像素值
x, y = 10, 10
pixel_value = image.getpixel((x, y))
print(f"Pixel value at ({x}, {y}): {pixel_value}")

# 修改像素值
new_pixel_value = (255, 0, 0)  # 设置为红色
image.putpixel((x, y), new_pixel_value)

image.save("example_modified.jpg")

16. 图像色彩通道分离和合并:

from PIL import Image

image = Image.open("example.jpg")

# 分离色彩通道
red_channel, green_channel, blue_channel = image.split()

# 合并色彩通道
merged_image = Image.merge("RGB", (blue_channel, green_channel, red_channel))

merged_image.save("example_swapped_channels.jpg")

python pil库,python,人工智能,计算机视觉,图像处理

 

17. 图像透明度调整:  

from PIL import Image, ImageEnhance

image = Image.open("example.png").convert("RGBA")

# 调整透明度
enhancer = ImageEnhance.Brightness(image.split()[3])
alpha_factor = 0.5  # 减少透明度
alpha_channel = enhancer.enhance(alpha_factor)
image.putalpha(alpha_channel)

image.save("example_transparency.png")

18. 图像加框:

from PIL import Image, ImageOps

image = Image.open("example.jpg")

# 为图像添加边框
border_color = (255, 0, 255)  # 紫色
border_width = 10
bordered_image = ImageOps.expand(image, border=border_width, fill=border_color)

bordered_image.save("example_bordered.jpg")

python pil库,python,人工智能,计算机视觉,图像处理

 

19. 圆形头像裁剪:

from PIL import Image, ImageDraw

image = Image.open("example.jpg")
output_size = (200, 200)

# 调整图片大小
image.thumbnail(output_size)

# 创建圆形遮罩层
mask = Image.new("L", output_size, 0)
draw = ImageDraw.Draw(mask)
draw.ellipse((0, 0, output_size[0], output_size[1]), fill=255)

# 应用圆形遮罩层
circle_avatar = Image.new("RGBA", output_size, (0, 0, 0, 0))
circle_avatar.paste(image, (0, 0), mask)

circle_avatar.save("example_circle_avatar.png")

python pil库,python,人工智能,计算机视觉,图像处理

 

20. 图像直方图:

from PIL import Image

image = Image.open("example.jpg")

# 计算图像直方图
histogram = image.histogram()

# 输出RGB通道的直方图
red_hist = histogram[0:256]
green_hist = histogram[256:512]
blue_hist = histogram[512:768]

print("Red channel histogram:", red_hist)
print("Green channel histogram:", green_hist)
print("Blue channel histogram:", blue_hist)

21. 图像的灰度直方图均衡化:

from PIL import Image, ImageOps

image = Image.open("example.jpg")

# 灰度直方图均衡化
equalized_image = ImageOps.equalize(image.convert("L"))

equalized_image.save("example_equalized.jpg")

python pil库,python,人工智能,计算机视觉,图像处理

 

22. 图像反相处理:

from PIL import Image, ImageOps

image = Image.open("example.jpg")

# 反相处理
inverted_image = ImageOps.invert(image)

inverted_image.save("example_inverted.jpg")

python pil库,python,人工智能,计算机视觉,图像处理

 

23. 图像像素化:

from PIL import Image

image = Image.open("example.jpg")

# 设置像素化程度
pixel_size = 10

# 调整图像大小以实现像素化
small_image = image.resize((image.width // pixel_size, image.height // pixel_size), Image.NEAREST)
pixelated_image = small_image.resize(image.size, Image.NEAREST)

pixelated_image.save("example_pixelated.jpg")

python pil库,python,人工智能,计算机视觉,图像处理

 

24. 图像的高斯模糊:

from PIL import Image, ImageFilter

image = Image.open("example.jpg")

# 应用高斯模糊滤镜
radius = 5
gaussian_blurred_image = image.filter(ImageFilter.GaussianBlur(radius))

gaussian_blurred_image.save("example_gaussian_blur.jpg")

python pil库,python,人工智能,计算机视觉,图像处理

 

25. 图像锐化:  

from PIL import Image, ImageFilter

image = Image.open("example.jpg")

# 应用锐化滤镜
sharpened_image = image.filter(ImageFilter.SHARPEN)

sharpened_image.save("example_sharpened.jpg")

python pil库,python,人工智能,计算机视觉,图像处理

 

以上是 PIL 库的一些常用方法。文章来源地址https://www.toymoban.com/news/detail-758461.html

到了这里,关于Python中PIL库的常用用法示例的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Python】PIL给图片添加水印最全代码解释

    以下是一个添加水印的方法,你可以将其放在一个单独的 Python 文件中,然后在需要添加水印的地方调用该方法即可: 该方法接受五个参数: image_path :需要添加水印的图片路径; text :水印文本; font_path :字体文件路径; font_size :字体大小,默认为 40; fill :水印颜色,

    2024年02月05日
    浏览(43)
  • 通过Python的PIL库进行图像的过滤

    大家好,我是空空star,本篇给大家分享一下通过Python的PIL库进行图像的过滤。 本篇使用的PIL版本如下: Name: Pillow Version: 9.4.0 from PIL import Image, ImageFilter local = ‘/Users/kkstar/Downloads/video/pic/’ im = Image.open(local+‘demo.jpg’) 4.1图像的模糊效果 代码 om = im.filter(ImageFilter.BLUR) 效果图

    2024年02月04日
    浏览(17)
  • 通过Python的PIL库给图片添加图片水印

    大家好,我是空空star,本篇给大家分享一下通过Python的PIL库给图片添加图片水印。 上一篇已经介绍过了PIL库是什么?安装PIL 、查看PIL版本,这里就不再介绍了。 这里我去C站首页找了一个,看起来是不是很酷。 7.1调整前 7.2调整后 8.1左上 8.2左下 8.3右上 8.4右下 8.5中间 其他位

    2023年04月19日
    浏览(49)
  • 通过Python的PIL库给图片添加文本水印

    大家好,我是空空star,本篇给大家分享一下通过Python的PIL库给图片添加文本水印。 PIL是Python Imaging Library的缩写,它是Python语言中常用的图像处理库之一。它提供了丰富的图像处理功能,包括打开、保存、裁剪、旋转、缩放等操作,并支持多种图像格式。 Name: Pillow Version: 9

    2023年04月19日
    浏览(45)
  • python3使用PIL添加中文文本水印背景

    环境:Windows10_x64  Python版本 :3.9.2 Pillow版本:9.1.1   写的博客文章被转载且不注明出处的情况时有发生,甚至有部分转载者将文章配图添加自己的水印!为了保护作者劳动成果,添加水印是一个可选项。 今天记录下Windows10环境下使用python3.9简单实现批量添加中文文本水印背

    2024年02月12日
    浏览(38)
  • 通过Python的PIL库给图片添加马赛克

    大家好,我是空空star,本篇给大家分享一下通过Python的PIL库给图片添加马赛克。 Pillow是一个Python图像处理库,它是Python Imaging Library(PIL)的一个分支。Pillow提供了广泛的图像处理功能,包括图像格式转换、图像增强、图像滤波、图像调整、图像合成等。使用Pillow,开发人员

    2024年02月06日
    浏览(43)
  • 【python 的各种模块】(9) 在python使用PIL( 即pillow模块 ) 修改图片

    目录 1 导入PIL模块(pillow) 1.1 PIL的全称:Python Imaging Library 1.2 导入PIL模块 1.2.1 可用的导入形式 1.2.2 常用的导入形式 1.2.3 PIL下面的常用子模块 2 PIL.Image的方法 (读入,生成和显示图片) 2.1 用 PIL.Image.open() 可以读入图片 2.1.1 基础语法 PIL.Image.open(path) 2.1.2 PIL.Image.open() 方法是

    2024年01月16日
    浏览(43)
  • Python 图像处理 PIL 第三方库详细使用教程(更新中)

    Python Pillow PIL 库的用法介绍,Pillow库是一个Python的第三方库。 要点:PIL库是一个具有强大图像处理能力的第三方库,不仅包含了丰富的像素、色彩操作功能,还可以用于图像归档和批量处理。 官方文档路径:https://pillow.readthedocs.io/en/latest/ 在 Python2 中,PIL (Python Imaging Librar

    2024年02月07日
    浏览(50)
  • PIL(Python Imaging Library)中保存图片时,save()函数使用详解

    save()函数参数: format :指定保存图像的格式,如 JPEG、PNG、GIF 等。如果未指定格式,则根据文件扩展名自动推断。 quality :用于指定 JPEG 格式的图像质量,取值范围为 1-95。 实际调用时都是些100 optimize :对于某些格式(如 GIF),通过将此参数设置为 True 来优化保存的图像文

    2024年02月05日
    浏览(73)
  • Python图像处理实战:使用PIL库批量添加水印的完整指南【第27篇—python:Seaborn】

    在日常图像处理中,为图片添加水印是一项常见任务。有多种方法和工具可供选择,而今天我们将专注于使用Python语言结合PIL库批量添加水印。 需要注意的是,所选用的图片格式不应为JPG或JPEG,因为这两种格式的图片不支持透明度设置。 先前的文章已经详细介绍过PIL库,这

    2024年01月16日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包