PIL:Python影象處理類庫
PIL:Python影象處理類庫
PIL安裝
sudo apt install python-pip # 安裝pip
sudo pip install pillow
讀取一幅影象
讀取一幅影象
from PIL import Image
im = Image.open('filename.jpg')
顯示影象
im.show()
灰度影象
im_l = Image.open('filename.jpg').convert('L')
轉換影象格式
從檔名列表(filelist)中讀取所有的影象檔案,並轉換成JPEG格式
from PIL import Image
import os
for infile in filelist:
outfile = os.path.splitext(infile)[0] + ".jpg"
if infile != outfile:
try:
Image.open(infile).save(outfile)
except IOError:
print "cannot convert", infile
建立一個包含資料夾中所有影象檔案的檔名列表
imtool.py
import os
def get_imlist(path):
"""返回目錄中所有JPG影象的檔名"""
return [os.path.join(path, f) for f in os.listdir(path) if f.endswith('.jpg')]
建立縮圖
from PIL import Image
im = Image.open('filename.jpg')
最長邊為128畫素的縮圖,影象比例不變
im.thumbnail((128, 128))
裁剪影象
from PIL import Image
im = Image.open('filename.jpg')
裁剪指定區域
box = (100, 100, 400, 400) # 四元組的座標依次是(左,上,右,下),PIL中指定座標系的左上角座標為(0,0)
region = im.crop(box)
旋轉180°
region = region.transpose(Image.ROTATE_180)
im.paste(region, box) #貼上影象區域
調整尺寸和旋轉
from PIL import Image
im = Image.open('filename.jpg')
out = im.resize((128, 128)) # 影象比例會改變
out = im.rotate(45) # 逆時針旋轉45
作者:sixfold_yuan
連結: