You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何批量裁剪3000张图片?

批量裁剪3000张图片的解决方案

一、免费软件批量裁剪方案

1. IrfanView

  • 打开IrfanView,点击顶部菜单栏的File -> Batch Conversion/Rename
  • 在弹出窗口中,点击Add按钮选中目标文件夹内所有图片(可按Ctrl+A全选)
  • 在Output directory栏设置裁剪后图片的保存路径(独立文件夹)
  • 点击Advanced按钮,在弹出窗口中找到Crop选项,输入裁剪的起始坐标和宽高(例如Left: 100, Top: 100, Width: 500, Height: 500),勾选Use these settings
  • 返回主批量窗口,确认Save as type选择对应图片格式,点击Start Batch启动处理

2. XnConvert

  • 打开XnConvert,点击Add files导入所有目标图片
  • 在左侧Actions面板中,选择Image -> Crop,可手动拖拽预览框或输入数值设置裁剪区域
  • 切换到Output标签页,设置输出文件夹(独立文件夹)和输出格式
  • 点击Convert按钮开始批量裁剪

二、Python代码实现方案

使用Pillow库实现批量裁剪,先通过命令安装依赖:

pip install pillow

以下是可直接使用的代码,根据实际需求修改参数即可:

from PIL import Image
import os

# 自定义配置参数
input_folder = "./original_images"  # 原始图片所在文件夹路径
output_folder = "./cropped_images"  # 裁剪后图片的保存路径(独立文件夹)
# 裁剪区域格式:(左边界x坐标, 上边界y坐标, 右边界x坐标, 下边界y坐标),按需修改数值
crop_box = (100, 100, 600, 600)

# 创建输出文件夹(不存在则自动创建)
os.makedirs(output_folder, exist_ok=True)

# 遍历处理所有符合命名规则的图片
for filename in os.listdir(input_folder):
    if filename.startswith("img") and filename.endswith((".png", ".jpg", ".jpeg")):
        try:
            img_full_path = os.path.join(input_folder, filename)
            with Image.open(img_full_path) as img:
                # 执行裁剪
                cropped_img = img.crop(crop_box)
                # 保存到目标文件夹
                save_path = os.path.join(output_folder, filename)
                cropped_img.save(save_path)
                print(f"完成处理:{filename}")
        except Exception as e:
            print(f"处理{filename}失败:{str(e)}")

代码说明:

  • 修改input_folder和output_folder为实际的文件夹路径
  • 调整crop_box的四个数值来定义裁剪区域
  • 代码会自动跳过非图片文件,并打印处理进度和错误信息

内容的提问来源于stack exchange,提问作者Mido

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 15:35:30