python将图片转换为灰度图

灰度图的位深度为8,此代码使用PIL库中的convert函数进行转换。

convert函数的参数解释:

1 ------------------1位像素,黑白,每字节一个像素存储)
L ------------------8位像素,黑白)
P ------------------8位像素,使用调色板映射到任何其他模式)
RGB------------------(3x8位像素,真彩色)
RGBA------------------(4x8位像素,带透明度掩模的真彩色)
CMYK--------------------(4x8位像素,分色)
YCbCr--------------------(3x8位像素,彩色视频格式)
I-----------------------32位有符号整数像素)
F------------------------32位浮点像素)

完整代码如下:

from PIL import Image
import os

path = r'图片存储的路径'
newpath = r'转换后存储图片的路径'


def RGBtoGray(path):
    files = os.listdir(path)
    for file in files:
        imgpath = path + '/' + file
        #print(imgpath)
        #
        im = Image.open(imgpath).convert('L')
        #resize将图像像素转换成自己需要的像素大小
        img = im.resize((512, 512))
        dirpath = newpath
        file_name, file_extend = os.path.splitext(f)
        dst = os.path.join(os.path.abspath(dirpath), file_name + '.jpg')
        img.save(dst)
if __name__ == "__main__":
    RGBtoGray(path)

你可能感兴趣的:(python,图像处理,python,图像处理)