Python3逐帧拆解视频

因为要对游戏动作进行调优,对一段视频进行逐帧拆解,又不想增加多余的软件

 

 安装包的名字不叫cv2虽然导入的是cv2

import cv2
mp4 = cv2.VideoCapture("C:\\Users\\Administrator\\Desktop\\动作记录_向下.mp4")  # 读取视频
is_opened = mp4.isOpened()  # 判断是否打开
print(is_opened)
fps = mp4.get(cv2.CAP_PROP_FPS)  # 获取视频的帧率
sumps=mp4.get(cv2.CAP_PROP_FRAME_COUNT)#总帧数
print(fps,sumps,"")
widght = mp4.get(cv2.CAP_PROP_FRAME_WIDTH)  # 获取视频的宽度
height = mp4.get(cv2.CAP_PROP_FRAME_HEIGHT)  # 获取视频的高度
print(str(widght) + "x" + str(height))
n = int(input())
i=0
while is_opened:
    if i == n:  # 截断等于帧总数
        break
    else:
        i += 1
    (flag, frame) = mp4.read()  # 读取图片
    file_name = "iamge" + str(i) + ".jpg"
    print(file_name)
    if flag == True:
        cv2.imwrite(file_name, frame, [cv2.IMWRITE_JPEG_QUALITY])  # 保存图片
print("转换完成")
import cv2
mp4 = cv2.VideoCapture("C:\\Users\\Administrator\\Desktop\\动作记录_向下.mp4")  # 读取视频
is_opened = mp4.isOpened()  # 判断是否打开
print(is_opened)
fps = mp4.get(cv2.CAP_PROP_FPS)  # 获取视频的帧率
sumps=mp4.get(CV_CAP_PROP_FRAME_COUNT)#总帧数
print(fps,"")
widght = mp4.get(cv2.CAP_PROP_FRAME_WIDTH)  # 获取视频的宽度
height = mp4.get(cv2.CAP_PROP_FRAME_HEIGHT)  # 获取视频的高度
print(str(widght) + "x" + str(height))
n = int(input())
while is_opened:
    if i == n:  # 截断等于帧总数
        break
    else:
        i += 1
    (flag, frame) = mp4.read()  # 读取图片
    file_name = "iamge" + str(i) + ".jpg"
    print(file_name)
    if flag == True:
        cv2.imwrite(file_name, frame, [cv2.IMWRITE_JPEG_QUALITY])  # 保存图片
print("转换完成")

 

posted @ 2021-04-03 16:03  余者皆可  阅读(461)  评论(0编辑  收藏  举报