zoukankan      html  css  js  c++  java
  • 【人脸检测0】视频分解图片与图片合成视频

    一,引言

    目标:这小节主要通过两个demo熟悉视频分解图片与图片合成视频的OpenCV的应用

    环境:python3.6+OpenCV3.3.1

    二,示例

    Demo1:视频分解图片

    目标:

    1.指定文件夹中读取视频文件

    2.将视频文件分解为图片

    3.将图片保存在指定文件夹中

    # -*-coding:utf-8-*-
    #author: lyp time: 2018/8/8
    # 视频分解图片
    import cv2
    cap = cv2.VideoCapture('E:/Envs/opencvdemo/one/1.mp4')  # 获取一个视频
    isOpened = cap.isOpened()  # 判断当前视频是否打开
    print(isOpened)
    fps = cap.get(cv2.CAP_PROP_FPS)  # 帧率
    width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))  # 获取宽度
    height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))  # 获取高度
    print(fps, width, height)
    i = 0
    while(isOpened):
        if i == 10:
            break
        else:
            i = i+1
        (flag, frame) = cap.read()  # 读取每一张。 flag:是否读取成功 frame:读取内容
        fileName = 'image' + str(i) + '.jpg'
        file = 'E:/Envs/opencvdemo/one/' + fileName   # 保存到指定文件夹
        print(fileName)
        # 如果读取成功,保存图片
        if flag == True:
            # 质量控制:100表示质量最高
            cv2.imwrite(file, frame, [cv2.IMWRITE_JPEG_QUALITY, 100])
    print('end!')

    Demo2:图片合成视频

    目标:

    1.选择指定文件夹下的图片,获取图片信息

    2.将图片合成视频(Windows中只能用DIVX)

    3.将视频保存在指定文件夹中

    # -*-coding:utf-8-*-
    #author: lyp time: 2018/8/9
    # 图片合成视频
    import cv2
    img = cv2.imread('E:/Envs/opencvdemo/one/image1.jpg')
    imgInfo = img.shape
    size = (imgInfo[1], imgInfo[0])
    print(size, imgInfo)
    
    # windows下使用DIVX
    fourcc = cv2.VideoWriter_fourcc(*'DIVX')
    # 参数1:写入对象;参数2:编码器;参数3:视频size
    videoWrite = cv2.VideoWriter('E:/Envs/opencvdemo/one/2.avi', fourcc, 5, size)
    for i in range(1,11):
        fileName = 'image'+str(i)+'.jpg'
        file = 'E:/Envs/opencvdemo/one/' + fileName
        img = cv2.imread(file)
        videoWrite.write(img)
    print('end!')
  • 相关阅读:
    Zookeeper Acl权限 超级用户权限 怎么跳过ACL密码/账户验证
    白名单与黑名单
    通过mstsc复制粘贴失败需要重新启动RDP剪切板监视程序rdpclip.exe
    go命令帮助
    go build 与go install
    1.Python编程基础
    使用 JMeter 进行压力测试
    js控制手机保持亮屏的库,解决h5移动端,自动息屏问题
    Linux安装配置redis 、启动redis、redis设置密码
    Linux安装部署FTP服务器
  • 原文地址:https://www.cnblogs.com/gfgwxw/p/9447304.html
Copyright © 2011-2022 走看看