当前位置: 代码迷 >> 综合 >> python-图片批量处理大小并删除原图片
  详细解决方案

python-图片批量处理大小并删除原图片

热度:70   发布时间:2023-10-19 18:58:28.0

批量处理图片大小讲过了,传送门

删除指定图片也讲过了,传送门2

之前我们处理图像大小生成的图片名称和原图一样,所以直接把原图覆盖了

那么如何我们如何在批量处理图片大小,对图片重新命名后,又能删除原图片呢。

代码如下:

import os
from PIL import Imagedir = './1/'
files = os.listdir(dir)
files.sort()
a = 200
for each_bmp in files:  # 遍历,进行批量转换a += 1first_name, second_name = os.path.splitext(each_bmp)each_bmp = os.path.join(dir, each_bmp)image = Image.open(each_bmp)img = image.convert('RGB')if img.size[0] > img.size[1]:x = abs((img.size[0] - img.size[1]) / 2)y = 0w = img.size[1]else:x = 0y = abs((img.size[0] - img.size[1]) / 2)w = img.size[0]# 第一个参数左上x距离,第二参数左上y距离,第三个参数x+w,第四个参数y+himg_c = img.crop([x, y, x + w, y + w])image_data = img_c.resize((224, 224))  # 缩放image_data.save(dir + str(a) + '.jpg')  # 保存图片 参数一保存图片的格式 2为路径os.remove(each_bmp)    #删除原图片

是不是很简单,生成的图片被重新命名成1,2,3,4……

  相关解决方案