python使用opencv保存视频_Pythone OpenCV学习笔记之:视频文件读取与保存

本文介绍了如何使用Python的OpenCV库来读取和保存视频。通过VideoCapture获取视频的帧率、编码格式和尺寸信息,并使用VideoWriter进行视频输出,将原始视频帧写入新的视频文件中。
摘要由CSDN通过智能技术生成

# -*- coding: utf-8 -*-

# 读取和保存视频

import cv2 as cv

import numpy as np

def decode_fourcc(v):

v = int(v)

return "".join([chr((v >> 8 * i) & 0xFF) for i in range(4)])

videoCapture = cv.VideoCapture('../../datas/videos/video.avi')

#获取码率及尺寸

fs = videoCapture.get(cv.CAP_PROP_FPS)

fourccD = decode_fourcc(videoCapture.get(cv.CAP_PROP_FOURCC))

fourcc = videoCapture.get(cv.CAP_PROP_FOURCC)

size = (int(videoCapture.get(cv.CAP_PROP_FRAME_WIDTH)),

int(videoCapture.get(cv.CAP_PROP_FRAME_HEIGHT)))

print('fs = ',fs)

print('size = ',size)

print('fourccD = ',fourccD)

print('fourcc = ',fourcc)

fourcc = cv.VideoWriter_fourcc(*'XVID')

# I420-avi, MJPG-mp4

videoWriter = cv.VideoWriter(filename='../../datas/videos/video-out.avi',

fourcc=fourcc,

fps=int(fs), frameSize=size)

img_empty = np.zeros((512,512,3),np.uint8)

while videoCapture.isOpened():

sucess,frame = videoCapture.read()

if sucess == True:

gray = cv.cvtColor(frame,cv.COLOR_RGB2GRAY)

videoWriter.write(frame)

cv.imshow("video",frame)

cv.imshow("video-gray",gray)

else:

print("read frame failed")

cv.imshow("video",img_empty)

#break

key = cv.waitKey(10) & 0xFF

if key == 27:

break

cv.destroyAllWindows()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值