视频切帧处理.py文件

(84条消息) opencv 视频切图片,图片合成视频、视频旋转_JOBbaba的博客-CSDN博客icon-default.png?t=M5H6https://blog.csdn.net/JOBbaba/article/details/120295680?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_title~default-4-120295680-blog-114931633.pc_relevant_paycolumn_v3&spm=1001.2101.3001.4242.3&utm_relevant_index=7(84条消息) opencv读取视频的每一帧图片并保存指定目录下_求知小菜鸟的博客-CSDN博客_opencv保存视频每一帧icon-default.png?t=M5H6https://blog.csdn.net/weixin_45839124/article/details/109028711?ops_request_misc=&request_id=&biz_id=102&utm_term=opencv%E8%AF%BB%E5%8F%96%E8%A7%86%E9%A2%91%E7%9A%84%E6%AF%8F%E4%B8%80%E5%B8%A7&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-3-109028711.142^v21^pc_rank_34,157^v15^new_3&spm=1018.2226.3001.4187视频文件切帧处理:

import cv2
import os, sys

vc = cv2.VideoCapture("F:/behaviorVideo/1.mp4")  # 读入视频文件,命名cv
n = 1  # 计数

if vc.isOpened():  # 判断是否正常打开
    rval, frame = vc.read()
else:
    rval = False

timeF = 5  # 视频帧计数间隔频率,全部截取取timeF = 1

# 获取帧数
fps = vc.get(cv2.CAP_PROP_FPS)

# 获取宽高
width = int(vc.get(cv2.CAP_PROP_FRAME_WIDTH))
height = int(vc.get(cv2.CAP_PROP_FRAME_HEIGHT))

print("FPS: ", fps)
print("width: ", width)
print("height: ", height)

i = 0
while rval:  # 循环读取视频帧
    rval, frame = vc.read()
    if (n % timeF == 0):  # 每隔timeF帧进行存储操作
        i += 1
        print(i)
        cv2.imwrite("F:/BehaviorPho/2/{}.jpg".format(i),
                   frame)  # 存储为图像
    n = n + 1
    cv2.waitKey(1)
vc.release()

猜你喜欢

转载自blog.csdn.net/m0_54111890/article/details/125504824