Python图像库处理光栅图像(raster images);即一个矩形区域的图像数据。
波段(Bands)
一幅图像可以包含一个或多个波段的数据。Python允许你在一幅图像中保存多个波段的数据,但这要求它们有相同的面积和深度。
To get the number and names of bands in an image, use the getbands method.
模式(Mode)
图像的模式定义了图像中像素的类型和深度。当前发布支持下面的标准模式:
· 1 (1-bit pixels, black and white, stored with one pixel per byte)
· L (8-bit pixels, black and white)
· P (8-bit pixels, mapped to any other mode using a colour palette)
· RGB (3x8-bit pixels, true colour)
· RGBA (4x8-bit pixels, true colour with transparency mask)
· CMYK (4x8-bit pixels, colour separation)
· YCbCr (3x8-bit pixels, colour video format)
· I (32-bit signed integer pixels)
· F (32-bit floating point pixels)
PIL对一些特殊模式也提供了有限的支持,这些模式包括LA (L with alpha), RGBX (true colour with padding) 和 RGBa (true colour with premultiplied alpha).
可以通过 mode 属性读出图像的模式。它是一个包含上述值之一的字符串。
大小(Size)
可以通过 size 属性读出图像的大小。它是一个包含水平和垂直大小(单位:像素)的2元元组。
坐标系统(Coordinate System)
Python图像库使用笛卡尔像素坐标系统(Cartesian pixel coordinate system),(0,0)表示左上角。注意这个坐标表示该像素的左上角;位于(0,0)的像素的中心坐标应该是(0.5,0.5)。
坐标通常以2元元组(x,y)的形式传给图像库。矩形用4元元组表示,先给出的是左上角的坐标。比如覆盖一个800x600的图像所有数据的矩形应该写为(0,0,800,600)。
调色板(Palette)
调色板模式(“P”)使用调色板来定义每个像素的实际颜色
信息(Info)
可以通过 info 属性把辅助信息附加到图像中,这个属性是一个字典对象。
在加载和保存图像时处理信息的多少取决于文件格式处理器 (见 Image File Formats 章)。大多数处理器在加载图像的时候把信息添加到info属性上,但是在保存图像的时候则忽略。
滤波器(Filters)
一些几何操作可能会把几个输入像素映射到一个输出像素,Python图像库提供了四种不同的采样滤波器。
NEAREST
拾取来自输入图像的最近的像素。忽略其它所有像素。
BILINEAR
在输入图像的一个2x2的环境上使用线性内插法。注意,当前版本的PIL中,这个滤波器在进行降采样(downsampling)的时候使用一个固定的输入环境。
BICUBIC
在输入图像的一个4x4的环境上使用立方内插法。注意,当前版本的PIL中,这个滤波器在进行降采样(downsampling)的时候使用一个固定的输入环境。
ANTIALIAS
(PIL 1.1.3新增)。应用高质量的冲采样滤波器(a truncated sinc)到所有可能影响输出值的像素上来计算输出像素值。当前版本的PIL中,这个滤波器只能与resize 和 thumbnail 方法配合使用。
注意,当前版本的PIL中, ANTIALIAS 过滤器是唯一一个在降采样(就是在把大图像转换为小图像的时候)中表现合适的滤波器。BILINEAR 和 BICUBIC 使用固定的输入环境,最好是用在尺度不变的几何变换或升采样中。
波段(Bands)
一幅图像可以包含一个或多个波段的数据。Python允许你在一幅图像中保存多个波段的数据,但这要求它们有相同的面积和深度。
To get the number and names of bands in an image, use the getbands method.
模式(Mode)
图像的模式定义了图像中像素的类型和深度。当前发布支持下面的标准模式:
· 1 (1-bit pixels, black and white, stored with one pixel per byte)
· L (8-bit pixels, black and white)
· P (8-bit pixels, mapped to any other mode using a colour palette)
· RGB (3x8-bit pixels, true colour)
· RGBA (4x8-bit pixels, true colour with transparency mask)
· CMYK (4x8-bit pixels, colour separation)
· YCbCr (3x8-bit pixels, colour video format)
· I (32-bit signed integer pixels)
· F (32-bit floating point pixels)
PIL对一些特殊模式也提供了有限的支持,这些模式包括LA (L with alpha), RGBX (true colour with padding) 和 RGBa (true colour with premultiplied alpha).
可以通过 mode 属性读出图像的模式。它是一个包含上述值之一的字符串。
大小(Size)
可以通过 size 属性读出图像的大小。它是一个包含水平和垂直大小(单位:像素)的2元元组。
坐标系统(Coordinate System)
Python图像库使用笛卡尔像素坐标系统(Cartesian pixel coordinate system),(0,0)表示左上角。注意这个坐标表示该像素的左上角;位于(0,0)的像素的中心坐标应该是(0.5,0.5)。
坐标通常以2元元组(x,y)的形式传给图像库。矩形用4元元组表示,先给出的是左上角的坐标。比如覆盖一个800x600的图像所有数据的矩形应该写为(0,0,800,600)。
调色板(Palette)
调色板模式(“P”)使用调色板来定义每个像素的实际颜色
信息(Info)
可以通过 info 属性把辅助信息附加到图像中,这个属性是一个字典对象。
在加载和保存图像时处理信息的多少取决于文件格式处理器 (见 Image File Formats 章)。大多数处理器在加载图像的时候把信息添加到info属性上,但是在保存图像的时候则忽略。
滤波器(Filters)
一些几何操作可能会把几个输入像素映射到一个输出像素,Python图像库提供了四种不同的采样滤波器。
NEAREST
拾取来自输入图像的最近的像素。忽略其它所有像素。
BILINEAR
在输入图像的一个2x2的环境上使用线性内插法。注意,当前版本的PIL中,这个滤波器在进行降采样(downsampling)的时候使用一个固定的输入环境。
BICUBIC
在输入图像的一个4x4的环境上使用立方内插法。注意,当前版本的PIL中,这个滤波器在进行降采样(downsampling)的时候使用一个固定的输入环境。
ANTIALIAS
(PIL 1.1.3新增)。应用高质量的冲采样滤波器(a truncated sinc)到所有可能影响输出值的像素上来计算输出像素值。当前版本的PIL中,这个滤波器只能与resize 和 thumbnail 方法配合使用。
注意,当前版本的PIL中, ANTIALIAS 过滤器是唯一一个在降采样(就是在把大图像转换为小图像的时候)中表现合适的滤波器。BILINEAR 和 BICUBIC 使用固定的输入环境,最好是用在尺度不变的几何变换或升采样中。