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.jpg是JPEG影象,所以其檔案格式為JPEG。
>>> im= Image.open("D:\\Code\\Python\\test\\img\\test.gif")
>>>im.format
'GIF'
注:test.gif為GIF檔案,所以其檔案格式為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
Pl為ImagePalette類的例項。
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}
(未完待續)