📜  if len(i1.getbands()) == 1 - Python (1)

📅  最后修改于: 2023-12-03 14:42:03.602000             🧑  作者: Mango

Python中检查图像是否为灰度图像

如果您正在使用Python处理图像,并且想要检查图像是否为灰度图像,可以使用以下代码片段:

import PIL

def is_grayscale(image_path):
    """
    检查一个图像是否为灰度图像
    
    :param image_path: 图像路径
    :return: True - 灰度图像,False - 彩色图像
    """
    with PIL.Image.open(image_path) as image:
        return len(image.getbands()) == 1

在该代码片段中,我们使用Pillow库中的Image对象打开输入的图像文件。getbands方法返回一个字符串列表,每个字符串标识了图像的每个band。如果图像只有一个band,那么它是一个灰度图像;否则它是一个彩色图像。因此,我们只需比较getbands的返回值是否为1即可判断图像是否为灰度图像。

此代码片段已被Markdown格式编写。