【问题标题】:Read frame by frame and create video using cv2 in python逐帧读取并在 python 中使用 cv2 创建视频
【发布时间】:2020-06-02 14:07:11
【问题描述】:

我想从现有视频中逐帧读取,并从这些帧中创建新视频。

在我的真实项目中,我想在制作新视频之前更改每一帧,但为了简单起见,我只想从相同帧创建新视频而不做任何更改。

【问题讨论】:

    标签: python opencv video cv2


    【解决方案1】:

    这段代码对我有用:

    import cv2
    vidcap = cv2.VideoCapture('input_video.mp4')
    vidwrite = cv2.VideoWriter('output_video.mp4', cv2.VideoWriter_fourcc(*'MP4V'), 30, (1920,1080))
    success,image = vidcap.read()
    while success:
      vidwrite.write(image) # write frame into video
      success,image = vidcap.read() # read frame from video
    vidwrite.release()
    cv2.destroyAllWindows()
    

    奇怪的是输出视频比输入视频大一倍

    【讨论】:

    • “奇怪的事情”——不是真的。这只是意味着这个特定编解码器在 OpenCV 中使用的默认配置与源视频的作者用来对其进行编码的配置不同。这在处理数据压缩时并不稀奇。
    猜你喜欢
    • 2020-08-29
    • 2013-11-08
    • 1970-01-01
    • 2014-08-24
    • 1970-01-01
    • 2019-06-15
    • 1970-01-01
    • 2018-01-27
    • 1970-01-01
    相关资源
    最近更新 更多