Python Pillow - ImageOps.grayscale() 函数



PIL.ImageOps.grayscale 函数用于将图像转换为灰度图像。灰度是图像的单通道表示,其中每个像素的强度由单个值表示,通常范围从 0(黑色)到 255(白色)。

语法

以下是函数的语法:

PIL.ImageOps.grayscale(image)

参数

以下是此函数参数的详细信息:

  • image - 要转换为灰度的图像。

返回值

该函数返回一个新的图像对象,其中输入图像已转换为灰度。

示例

示例 1

在此示例中,ImageOps.grayscale() 函数用于将彩色图像转换为灰度图像。

from PIL import Image, ImageOps

# Open an image file
color_image = Image.open("Images/Tajmahal_2.jpg")

# Convert the image to grayscale
grayscale_image = ImageOps.grayscale(color_image)

# Display the original and grayscale images
color_image.show()
grayscale_image.show()

输出

输入图像

tajmahal birds

输出图像

tajmahal

示例 2

以下示例说明了使用 grayscale() 函数将具有 RGBA 通道的 PNG 图像转换为灰度图像。

from PIL import Image, ImageOps

# Open an image file
color_image = Image.open("Images/pillow-logo-w.png")

# Convert the image to grayscale
grayscale_image = ImageOps.grayscale(color_image)

# Display the original and grayscale images
color_image.show()
grayscale_image.show()

输出

输入图像

pillow logo

输出图像

imageops_grayscale

示例 3

在此示例中,我们打开两张图像——一张为 RGB 格式,另一张为 RGBA 格式。然后,我们应用 ImageOps.grayscale() 函数将其转换为灰度。最后,我们打印每个图像的 mode 属性以确定每个图像的模式。

mode 属性将指示彩色图像的“RGB”或“RGBA”,以及灰度图像的“L”。

from PIL import Image, ImageOps
import numpy as np

# Open an RGB image file
input_image = Image.open("Images/tutorialspoint2.jpg")

# Open an RGBA image file
image2 = Image.open('Images/pillow-logo-w.png')

# Convert the images to grayscale
grayscale_image = ImageOps.grayscale(input_image)
grayscale_image2 = ImageOps.grayscale(image2)

# Display the color mode of each image
print("Input Image Mode:", input_image.mode)  # Should print 'RGB'
print("Grayscale Image Mode:", grayscale_image.mode)  # Should print 'L' for grayscale

print("Image2 Mode:", image2.mode)  # Should print 'RGB'
print("Grayscale Image2 Mode:", grayscale_image2.mode)  # Should print 'L' for grayscale

输出

Input Image Mode: RGB
Grayscale Image Mode: L
Image2 Mode: RGBA
Grayscale Image2 Mode: L
python_pillow_function_reference.htm
广告