PIL有如下几个模块:Image模块、ImageChops模块、ImageCrackCode模块、ImageDraw模块、ImageEnhance模块、ImageFile模块、ImageFileIO模块、ImageFilter模块、ImageFont模块、ImageGrab模块、ImageOps模块、ImagePath模块、ImageSequence模块、ImageStat模块、ImageTk模块、ImageWin模块、PSDraw模块。
1、 Image模块
Image模块提供了一个相同名称的类,即image类,用于表示PIL图像。这个模块还提供了一些函数,包括从文件中加载图像和创建新的图像。
Image模块是PIL中最重要的模块,它提供了诸多图像操作的功能,比如创建、打开、显示、保存图像等功能,合成、裁剪、滤波等功能,获取图像属性功能,如图像直方图、通道数等。
Image模块的使用如下:
>>> im =Image.open('D:\\Code\\Python\\test\\img\\1.jpg')
>>>im.getbands()
('R', 'G', 'B')
>>>im.mode
'RGB'
>>> im.show()
2、 ImageChops模块
ImageChops模块包含一些算术图形操作,叫做channel operations(“chops”)。这些操作可用于诸多目的,比如图像特效,图像组合,算法绘图等等。通道操作只用于8位图像(比如“L”模式和“RGB”模式)。
ImageChops模块的使用如下:
>>> im = Image.open('D:\\Code\\Python\\test\\img\\1.jpg')
>>> from PIL import ImageChops
>>> im_dup = ImageChops.duplicate(im)
>>> im_dup.mode
'RGB'
>>> im_diff = ImageChops.difference(im,im_dup)
>>> im_diff.show()
由于图像im_dup是im的复制过来的,所以它们的差为0,图像im_diff显示时为黑图。
3、 ImageCrackCode模块
ImageCrackCode模块允许用户检测和测量图像的各种特性。这个模块只存在于PIL Plus包中。
我目前安装的PIL中没有包含这个模块。
>>>from PIL import ImageCrackCode