PIL圖片處理 舉例

把文件夾裏,每張尺寸7200*6800的圖,按每行72個、每列68個 256*256的圖來摳出:

import os
from PIL import Image
import numpy as np

rootdir = r'C:\Users\admin\Desktop\seg1\pic/'
savedir = r'C:\Users\admin\Desktop\seg1\pic1/'
list = os.listdir(rootdir)

for i in list:
    print(i)
    img = Image.open(os.path.join(rootdir, i))
    w = np.array(img).shape[0]
    h = np.array(img).shape[1]
    for x_idx in range(w // 100):
        for y_idx in range(h // 100):
            if x_idx*100+256 < w and y_idx*100+256 < h:
                img1 = Image.fromarray(np.array(img)[x_idx*100:x_idx*100+256, y_idx*100:y_idx*100+256,:])
                img1.save(os.path.join(savedir, "{}_{}_{}".format(str(x_idx), str(y_idx), i)))

 原圖:

生成:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章