实现对 2:3 或者3:2的图片进行1:1裁剪

常用的脚本 存网上。。。

from PIL import Image
import os

# 存放源图片的路径:
source_path = "/Users/myname/Desktop/日系图片/植物"

# 存放裁剪后图片的路径
result_path = "/Users/myname/Desktop/temp"

# 裁剪后的边长
target_size = 224

for pic_name in os.listdir(source_path):
    print("当前裁剪:%s"%pic_name)
    picture = Image.open(source_path+"/"+pic_name)
    shape = picture.size
    height = shape[1]  # 图片高度
    width = shape[0]  # 图片宽度
    if height>width:
        x= 0
        w = width
        h = width
        y_list = [0,height-width,0.6*(height-width)]
        i = 0
        for y in y_list:
            i = i+1
            print("        裁剪第:%s 次"%i)
            region = picture.crop((x, y, x + w, y + h))
            region = region.resize((target_size, target_size))
            region.save(result_path+"/已裁剪"+str(i)+"次"+pic_name)
    else:
        y = 0
        w = height
        h = height
        x_list = [0, width-height,0.6*(width-height)]
        i = 0
        for x in x_list:
            i = i + 1
            print("        裁剪第:%s 次"%i)
            region = picture.crop((x, y, x + w, y + h))
            region = region.resize((target_size, target_size))
            region.save(result_path + "/已裁剪" +str(i) + "次" + pic_name)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值