1. 程式人生 > >Python影象處理庫PIL的Image模組介紹(一)

Python影象處理庫PIL的Image模組介紹(一)

Image模組是PIL中最重要的模組,它有一個類叫做image,與模組名稱相同。Image類有很多函式、方法及屬性,接下來將依次對image類的屬性、函式和方法進行介紹。

1、  Format

定義:im.format string or None

含義:原始檔的檔案格式。如果是由PIL建立的影象,則其檔案格式為None

例子:

>>>from PIL import Image

>>> im= Image.open("D:\\Code\\Python\\test\\img\\test.jpg")

>>>im.format

'JPEG'

注:test.jpgJPEG影象,所以其檔案格式為JPEG

>>> im= Image.open("D:\\Code\\Python\\test\\img\\test.gif")

>>>im.format

'GIF'

注:test.gifGIF檔案,所以其檔案格式為GIF

2、  Mode

定義:im.mode string

含義:影象的模式。這個字串表明影象所使用畫素格式。該屬性典型的取值為“1”,“L”,“RGB”或“CMYK”。對於影象模式的介紹,可以參考我的blog“”。

例子:

>>> im = Image.open("D:\\Code\\Python\\test\\img\\test.jpg")

'RGB'

>>> im = Image.open("D:\\Code\\Python\\test\\img\\test.gif")

>>> im.mode

'P'

3、  Size

定義:im.size (width, height)

含義:影象的尺寸,按照畫素數計算。它的返回值為寬度和高度的二元組(width, height)。

例子:

>>>from PIL import Image

>>> im= Image.open("D:\\Code\\Python\\test\\img\\test.jpg")

>>>im.size

(800, 450)

>>> im= Image.open("D:\\Code\\Python\\test\\img\\test.gif")

>>> im.size

(400, 220)

4、  Palette

定義:im.palette palette or None

含義:顏色調色盤表格。如果影象的模式是“P”,則返回ImagePalette類的例項;否則,將為None

例子:

>>> im= Image.open("D:\\Code\\Python\\test\\img\\test.jpg")

>>> im.mode

'RGB'

>>>im.palette

>>> im= Image.open("D:\\Code\\Python\\test\\img\\test.gif")

>>> im.mode

'P'

>>>im.palette

<PIL.ImagePalette.ImagePaletteobject at 0x035E7AD0>

>>> pl= im.palette

PlImagePalette類的例項。

5、  Info

定義:im.info dictionary

含義:儲存影象相關資料的字典。檔案控制代碼使用該字典傳遞從檔案中讀取的各種非影象資訊。大多數方法在返回新的影象時都會忽略這個字典;因為字典中的鍵並非標準化的,對於一個方法,它不能知道自己的操作如何影響這個字典。如果使用者需要這些資訊,需要在方法open()返回時儲存這個字典。

例子:

>>>from PIL import Image

>>> im= Image.open("D:\\Code\\Python\\test\\img\\test.jpg")

>>>im.info

{'jfif_version':(1, 1), 'jfif': 257, 'jfif_unit': 1, 'jfif_density': (96, 96), 'dpi': (96, 96)}

>>> im= Image.open("D:\\Code\\Python\\test\\img\\test.gif")

>>>im.info

{'duration':100, 'version': 'GIF89a', 'extension': ('NETSCAPE2.0', 795L), 'background': 0,'loop': 0}

(未完待續)