OpenCV 保存视频
2021/4/26 18:56:54
本文主要是介绍OpenCV 保存视频,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
在OpenCV中保存视频使用的是VedioWriter对象,在其中指定输出文件的名称,如下所示:
1.创建视频写入的对象
out = cv2.VideoWriter(filename,fourcc, fps, frameSize)
参数:
- filename:视频保存的位置
- fourcc:指定视频编解码器的4字节代码
- fps:帧率
- frameSize:帧大小
2.设置视频的编解码器,如下所示,
retval = cv2.VideoWriter_fourcc( c1, c2, c3, c4 )
参数:
-
c1,c2,c3,c4: 是视频编解码器的4字节代码,在fourcc.org中找到可用代码列表,与平台紧密相关,常用的有:
- 在Windows中:DIVX(.avi)
- 在OS中:MJPG(.mp4),DIVX(.avi),X264(.mkv)。
3.获取摄像头
利用cap.read()获取摄像头中的每一帧图像,并使用out.write()将某一帧图像写入视频中。
4.释放资源
使用cap.release()和out.release()释放资源。
import cv2 as cv # 1. 读取摄像头 cap = cv.VideoCapture(0) # 2. 获取图像的属性(宽和高,),并将其转换为整数 frame_width = int(cap.get(3)) frame_height = int(cap.get(4)) # 3. 创建保存视频的对象,设置编码格式,帧率,图像的宽高等 out = cv.VideoWriter('outpy.avi', cv.VideoWriter_fourcc('M', 'J', 'P', 'G'), 10, (frame_width, frame_height)) # 保存视频 while(True): # 4.获取视频中的每一帧图像 ret, frame = cap.read() if ret == True: # 5.将每一帧图像写入到输出文件中 out.write(frame) #视频写入 else: break # 6.释放资源 cap.release() out.release() #资源释放 cv.destroyAllWindows()
这篇关于OpenCV 保存视频的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2025-01-05Easysearch 可搜索快照功能,看这篇就够了
- 2025-01-04BOT+EPC模式在基础设施项目中的应用与优势
- 2025-01-03用LangChain构建会检索和搜索的智能聊天机器人指南
- 2025-01-03图像文字理解,OCR、大模型还是多模态模型?PalliGema2在QLoRA技术上的微调与应用
- 2025-01-03混合搜索:用LanceDB实现语义和关键词结合的搜索技术(应用于实际项目)
- 2025-01-03停止思考数据管道,开始构建数据平台:介绍Analytics Engineering Framework
- 2025-01-03如果 Azure-Samples/aks-store-demo 使用了 Score 会怎样?
- 2025-01-03Apache Flink概述:实时数据处理的利器
- 2025-01-01使用 SVN合并操作时,怎么解决冲突的情况?-icode9专业技术文章分享
- 2025-01-01告别Anaconda?试试这些替代品吧