python对视频进行帧处理以及裁减部分区域

视频截取帧

废话不多说直接上代码:

from cv2 import VideoCapture
from cv2 import imwrite
 
# 定义保存图片函数
# image:要保存的图片名字
# addr;图片地址与相片名字的前部分
# num: 相片,名字的后缀。int 类型
def save_image(image, addr, num):
    address = addr + str(num) + '.jpg'
    imwrite(address, image)
 
if __name__ == '__main__':
 
    video_path = "/home/xxx/桌面/data/wx.mp4" #视频路径
    out_path = "/home/xxx/桌面/data/AIswitch/out/img_" #保存图片路径+名字
 
    is_all_frame = False #是否取所有的帧
    sta_frame = 1 #开始帧
    end_frame = 400 #结束帧
 
    ######
    time_interval = 10 #时间间隔
 
    # 读取视频文件
    videoCapture = VideoCapture(video_path)
 
    # 读帧
    success, frame = videoCapture.read()
    print(success)
 
    i = 0
    j = 0
    if is_all_frame:
        time_interval = 1
 
    while success:
        # people1
        start_h = 530
        start_w = 90
        pad_h = 283
        pad_w = 240

        frame = frame[start_h:start_h+pad_h,start_w:start_w+pad_w,:]
        i = i + 1
        if (i % time_interval == 0):
            if is_all_frame == False:
                if i >= sta_frame and i <= end_frame:
                    j = j + 1
                    print('save frame:', i)
                    save_image(frame, out_path, j)
                elif i > end_frame:
                    break
            else:
                j = j + 1
                print('save frame:', i)
                save_image(frame, out_path, j)
 
        success, frame = videoCapture.read()
  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

AICVer

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

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

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

打赏作者

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

抵扣说明:

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

余额充值