python批量剪切图片

import numpy as np
import matplotlib.pyplot as plt
from PIL import Image
from glob import glob
import os
import path
# 将路径和文件连接起来
# C:\Users\Administrator\Desktop\第6周内容\原始直线\*.png
files = os.path.join('C:\\Users\\Administrator\\Desktop\\MATLAB代码\\血管网络分形测试\\血管树图','*.png')
filelist = glob(files)
path = 'C:\\Users\\Administrator\\Desktop\\MATLAB代码\\血管网络分形测试\\血管树图\\b\\'
for k in range(len(filelist)):
    #打开图片
    image = Image.open(filelist[k])
    sourse  = (sourse_width,sourse_height) = image.size
    crop = (crop_width,crop_height) = (400,400)
    if sourse != crop :
        j = (sourse[0] - crop[0]) //2
        i = (sourse[1] - crop[1]) //2
    crop_image = image.crop([j,i,j+crop[0],i + crop[1]])
    crop_image = crop_image.resize([crop[0],crop[1]])
    crop_image= crop_image.convert('RGB')#numpy没有贡献于convert
    crop_image = np.array(crop_image)
    #如果不存在路径下的文件夹,就新建一个文件夹
    if not os.path.exists(path):
        os.makedirs(path)
    image.save(path+'a%d.png' %k)
#     fig = plt.figure(figsize=(400,400))
#     fig.set_size_inches(100,100)
#     plt.imshow(crop_image)
#     plt.axis('off')
#     plt.savefig(path+'a%d.png' %k,dpi=10)
#     plt.show()

猜你喜欢

转载自blog.csdn.net/qq_38826019/article/details/85402374