Python批量剪裁图片

今天听了一场在线讲座,用手机截屏的方式保存了演讲嘉宾的PPT,但是由于视频会议软件将参会方的实时视频也投射在了屏幕右方,所以PPT存档时,用Python对截图进行剪裁,只保留当中PPT的部分。代码如下:

import os
import cv2


if __name__ == '__main__':
    path = "D:/tmp/screenshot/tencent"  # 保存截图的目录
    files = []  # 文件名含路径
    names = []  # 仅文件名
    for f in os.listdir(path):
        files.append(os.path.join(path, f))
        names.append(f)

    for filepath in files:
        print(filepath)
        img = cv2.imread(filepath)
        # print(img.shape)
        cropped = img[100:1007, 273:1880]  # 裁剪坐标为[y0:y1, x0:x1]
        cv2.imwrite(filepath.replace("_com.tencent.mm", ""), cropped)  # 重命名并保存

两点注意事项:
  1. 安装cv2对应的库时,库名不是cv2,是opencv-contrib-python
pip install opencv-contrib-python -i https://pypi.tuna.tsinghua.edu.cn/simple
  1. 函数cv2.imread(filepath)中的文件路径如果包含中文,会导致返回None。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

皓月如我

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

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

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

打赏作者

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

抵扣说明:

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

余额充值