Python Opencv实践 - 视频文件写入(格式和分辨率修改)

参考资料:

python opencv写视频------cv2.VideoWriter()_cv2.cv.videowriter(_翟羽嚄的博客-CSDN博客

复制代码
import cv2 as cv
import numpy as np

#1. 打开原始视频
video_in = cv.VideoCapture("../SampleVideos/Unity2D.mp4")
video_width = int(video_in.get(cv.CAP_PROP_FRAME_WIDTH))
video_height = int(video_in.get(cv.CAP_PROP_FRAME_HEIGHT))
video_fps = int(video_in.get(cv.CAP_PROP_FPS))
print("Original Video Resolution: (", video_width, ",", video_height, ") FPS:", video_fps)


#2. 创建VideoWriter对象
#   cv.VideoWriter(filename, fourcc, fps, frameSize[, isColor])
#   filename: 要保存的文件的路径
#   fourcc: 指定编码器
#   fps: 要保存的视频的帧率
#   frameSize: 要保存的文件的画面尺寸
#   isColor: 指示是黑白画面还是彩色的画面
#参考资料:https://blog.csdn.net/mao_hui_fei/article/details/107573021
video_out = cv.VideoWriter("out.avi", cv.VideoWriter_fourcc(*'XVID'), video_fps, (800,600), True)

#循环处理每一帧图像
while True:
    ret,frame = video_in.read()
    if ret == False:
        break;
    frame = cv.resize(frame, (800, 600))
    video_out.write(frame)
    cv.imshow('TestVideoOut', frame)
    key = cv.waitKey(10)
    if key == 27:
        break;

#释放资源
video_in.release()
video_out.release()
相关推荐
lly2024061 小时前
Bootstrap 警告框
开发语言
2601_949146532 小时前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
曹牧2 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
KYGALYX2 小时前
服务异步通信
开发语言·后端·微服务·ruby
zmzb01032 小时前
C++课后习题训练记录Day98
开发语言·c++
ValhallaCoder2 小时前
hot100-二叉树I
数据结构·python·算法·二叉树
智驱力人工智能3 小时前
小区高空抛物AI实时预警方案 筑牢社区头顶安全的实践 高空抛物检测 高空抛物监控安装教程 高空抛物误报率优化方案 高空抛物监控案例分享
人工智能·深度学习·opencv·算法·安全·yolo·边缘计算
猫头虎3 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
YUJIANYUE3 小时前
PHP纹路验证码
开发语言·php
仟濹3 小时前
【Java基础】多态 | 打卡day2
java·开发语言