(84条消息) opencv 视频切图片,图片合成视频、视频旋转_JOBbaba的博客-CSDN博客https://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保存视频每一帧https://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()