• python-opencv-视频的简单合成——连续图片合成视频


    OpenCV中使用VideoWriter对象来写入视频对象

    import cv2
    #获取一张图片的宽高作为视频的宽高
    image=cv2.imread('./aa/img5.jpg')
    cv2.imshow("new window", image)   #显示图片
    image_info=image.shape
    height=image_info[0]
    width=image_info[1]
    size=(height,width)
    print(size)
    fps=30
    fourcc=cv2.VideoWriter_fourcc(*"mp4v")
    video = cv2.VideoWriter('ss.mp4', cv2.VideoWriter_fourcc(*"mp4v"), fps, (width,height)) #创建视频流对象-格式一
    
    #video = cv2.VideoWriter('ss.mp4', cv2.VideoWriter_fourcc('m', 'p', '4', 'v'), fps, (width,height)) #创建视频流对象-格式二
    
    """
    参数1 即将保存的文件路径
    参数2 VideoWriter_fourcc为视频编解码器
        fourcc意为四字符代码(Four-Character Codes),顾名思义,该编码由四个字符组成,下面是VideoWriter_fourcc对象一些常用的参数,注意:字符顺序不能弄混
        cv2.VideoWriter_fourcc('I', '4', '2', '0'),该参数是YUV编码类型,文件名后缀为.avi 
        cv2.VideoWriter_fourcc('P', 'I', 'M', 'I'),该参数是MPEG-1编码类型,文件名后缀为.avi 
        cv2.VideoWriter_fourcc('X', 'V', 'I', 'D'),该参数是MPEG-4编码类型,文件名后缀为.avi 
        cv2.VideoWriter_fourcc('T', 'H', 'E', 'O'),该参数是Ogg Vorbis,文件名后缀为.ogv 
        cv2.VideoWriter_fourcc('F', 'L', 'V', '1'),该参数是Flash视频,文件名后缀为.flv
        cv2.VideoWriter_fourcc('m', 'p', '4', 'v')    文件名后缀为.mp4
    参数3 为帧播放速率
    参数4 (width,height)为视频帧大小
    
    """
    for i in range(1,60):
        file_name = './aa/img' + str(i) + '.jpg'
        image=cv2.imread(file_name)
        video.write(image)  # 向视频文件写入一帧--只有图像,没有声音
    cv2.waitKey()

    视频编码器:指的时能够对数字视频进行压缩和解压缩的程序或设备。目前常见的视频编码器有H.26X系列(目前最流行的是H.264和H.265)和MPEG系列(目前最流行的是MPEG-4第十部分,即H.264)。

  • 相关阅读:
    MongoDB
    新公司管理经营
    剪辑理论
    色彩理论
    商业模式
    电影手法
    [好文转载] 每个程序员都应该学习使用Python或Ruby
    File类递归
    【CF1447】div2复盘
    【心得体会】11.9-11.15
  • 原文地址:https://www.cnblogs.com/liming19680104/p/12315645.html
Copyright © 2020-2023  润新知