通过python编写自定义尺寸和位置批量进行图像剪裁

该代码示例展示了如何使用Python的OpenCV库批量裁剪图片,支持三种裁剪模式:以原点、左上角和右上角。用户只需指定文件路径和裁剪模式,脚本将自动处理并保存裁剪后的图片。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

  我们常常需要批量对图片进行剪裁,使用下面的代码可以根据需要批量进行剪裁,只需要替换文件路径即可,且提供了三种位置进行剪裁,mode选择裁剪的方式 1就是以原点,如果选择2就是左上角,如果选择3就是右上角。也可以根据需要自行添加mode==n…

1.代码如下(示例):

import cv2
import os

# 定义裁剪的尺寸
width, height = 684, 384

# 读入文件夹路径
src_folder = '/path/to/src/folder'  #原始文件路径
dst_folder = '/path/to/dst/folder'   #保存文件的路径

# 选择裁剪的方式 1就是以原点,如果选择2就是左上角,如果选择3就是右上角
mode = 2  #This 选择

# 设置裁剪的位置
if mode == 1:
    start_point = (0, 0)
elif mode == 2:
    start_point = (0, 0)
elif mode == 3:
    start_point = (0, height - 384)
else:
    raise Exception("无效的裁剪方式")

# 创建目标文件夹
if not os.path.exists(dst_folder):
    os.makedirs(dst_folder)

# 遍历文件夹内的所有图片
for file_name in os.listdir(src_folder):
    file_path = os.path.join(src_folder, file_name)

    # 读入图片
    img = cv2.imread(file_path)

    # 裁剪图片
    cropped_img = img[start_point[1]:start_point[1]+height, start_point[0]:start_point[0]+width]

    # 保存裁剪后的图片
    dst_path = os.path.join(dst_folder, file_name)
    cv2.imwrite(dst_path, cropped_img)

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小张Tt

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值