Image模块
一、open
函数:Image.open(file)
Image.open(file,mode)
如果变量mode被设置,那必须是“r”,用户可以使用一个字符串(表示文件名称的字符串)或者文件对象作为变量file的值。文件对象必须实现read(),seek()和tell()方法,并且以二进制模式打开。
二、new
函数:Image.new(mode,size)
Image.new(mode,size,color)
new方法用于使用给定的变量mode(模式)和size(尺寸)生成新的图像。
1)关于mode:'RGB'是指的RGB彩色图像,‘L’是指的灰度图像。
2)关于color:对于单通道图像,变量color只给定一个值;对于多通道图像,变量color给定一个元组(每个通道对应一个值)。用户也可以用颜色的名称,比如给变量color赋值为“red”。如果没有对变量color赋值,图像内容将会被全部赋值为0(图像即为黑色)。如果变量color是空,图像将不会被初始化,即图像的内容全为0。
效果图 效果图
三、save
Image.save(filename,format)
将图像保存为filename文件名,format是图片格式。
四、format\mode\size\palette
函数 | 描述 |
Image.format | 标识图像格式或来源,如果图像不是从文件读取,值是None |
Image.mode | 图像的色彩模式,"L"灰度图像、“RGB”真彩色图像和"CMYK"出版图像 |
Image.size | 图像宽度和高度,单位是像素(px),返回值是二元元组(tuple) |
Image.palette | 颜色调色板表格。如果图像的模式是“P”,则返回ImagePalette类型,否则,将为None |
补充(常见modes描述)
modes | 描述 |
1 | 1位像素,黑和白,存成8位的像素 |
L | 8位像素,黑白 |
P | 8位像素,使用调色板映射到任何其他模式 |
RGB | 3 *8位像素,真彩 |
RGBA | 4*8位像素,真彩+透明通道 |
CMYK | 4*8位像素,颜色隔离 |
YCbCr | 3*8位像素,彩色视频格式 |
I | 32位整型像素 |
F | 32位浮点型像素 |
四、convert
函数:Image.convert(mode)