Python Pillow 简明教程

Python Pillow - Changing Image Modes

What is Changing Image Modes?

在 Pillow 中,更改图像模式是指将图像从一种颜色表示法转换为另一种表示法。每种模式表示以图像中对颜色信息进行编码和解释的不同方式。

更改图像模式出于多种用途很有用,例如针对特定应用(如打印、显示或分析)准备图像。它能让我们调整图像的颜色表示法以更好地满足我们的需求。

在 Pillow 中,Image 类提供了一个名为 convert() 的方法,它允许我们更改图像的模式。图像的模式决定了它可以包含的像素值的类型和深度。

以下是 Image 类的 convert() 方法的语法和参数。

original_image.convert(mode)

其中,

  1. original_image 这是我们想要更改其模式的原图像。

  2. mode 这是一个字符串,用于指定新图像所需的模式。

以下是常见的更改图像模式。

  1. L − 8 位像素代表黑白

  2. RGB − 3x8 位像素代表真彩色

  3. RGBA − 4x8 位像素代表带透明度的真彩色

  4. CMYK − 4x8 位像素代表色彩分离

  5. HSV − 色相、饱和度、值颜色空间

  6. 1 − 1 位像素,黑白,且每个字节存储 1 个像素

以下是本章所有示例中使用的输入图像。

flower

Example

在此示例中,我们通过将模式参数 L 传递给 convert() 方法来将图像模式更改为黑白。

from PIL import Image

#Open an image
original_image = Image.open("Images/rose.jpg")

#Convert the image to grayscale (mode 'L')
grayscale_image = original_image.convert("L")

#Save the resulting image
grayscale_image.save("output Image/output_grayscale.jpg")
grayscale_image.show()
output grayscale

Example

以下是在使用 convert() 方法将图像模式更改为 1 的另一个示例。

from PIL import Image

#Open an image
original_image = Image.open("Images/rose.jpg")

#Convert the image to RGBA mode
single_image = original_image.convert("1")

#Save the resulting image
single_image.save("output Image/output_single_image.jpg")
single_image.show()
output single image