1.簡介
PIL(Python Image Library)是一個Python庫,它提供了通用的圖像處理功能,以及大量有用的基本圖像操作,如圖像縮放、旋轉等,該類庫中最重要的模塊爲Image;PIL庫是開源的,點擊下載下載鏈接。
2.基本圖像操作
2.1 圖像讀取
from PIL import Image
img = Image.open('xxx.jpg');
PIL的open()函數可以用來創建PIL圖像對象,所以返回值img是一個PIL圖像對象;
2.2圖像的顏色轉換
img=Image.open('xxx.jpg').convert('L');
上述代碼是將一副圖像轉換成灰度圖像;2.3圖像格式的轉換
save()函數可以用來保存圖像,且可以將圖像保存成多種格式的文件;下面的例子從文件名list中讀取所有的圖像文件,並轉換成JPEG格式;
from PIL import Image
import os
for nameIn in list:
nameOut = os.path.splitext(nameIn)[0] + ".jpg"
if nameIn != nameOut:
try:
Image.open(nameIn).save(nameOut)
except IOError:
print "not convert the format", nameIn
2.4創建圖像文件名list
import os
def getImgList(path):
return [os.path.join(path,f) for f in os.listdir(path) if f.endswith('.jpg')]
2.5 創建圖像縮略圖
使用thumbnail()函數可以很方便的創建圖像的縮略圖,該函數以一個元組參數作爲輸入參數,用來指定創建的縮略圖的大小,如:
img.thumbnail((64,128))
2.6 圖像旋轉
採用逆時針旋轉:
img_out = img.rotate(180)
2.7調整圖像尺寸
img_out = img.resize((200,200))
輸入參數同樣是一個元組;
2.8圖像裁剪和粘貼
rect = (160,160,500,500)
roi = img.crop(rect)
roi = roi.transpose(Image.ROTATE_90)
img.paste(roi,rect)