【Opencv笔记】利用VideoCapture和VideoWriter函数读取和写入视频文件

本文介绍如何使用OpenCV的VideoCapture和VideoWriter函数从摄像头读取视频并进行处理,同时展示处理前后帧。通过创建两个窗口对比原始与处理后的效果。在处理中,注意帧转换为灰度图时应使用COLOR_BGR2GRAY而非Bayer2GRAY,这是解决报错的关键。
摘要由CSDN通过智能技术生成

本程序旨在使用电脑默认摄像头作为捕捉设备,来抓取帧,并进行图像处理。将处理后的视频帧作为一个新的文件保存。

同时创建两个窗口同时显示原始帧和处理过的帧。代码如下:

之前一直报错,看网上教程,尝试了很多解决办法,包括加载Microsoft符号库、修改写入的方式MP42 MJPG等,都是不行,最后发现是对读取的视频帧进行灰度化的时候,参数选择错误,注意是COLOR_BGR2GRAY而不是Bayer2GRAY. Opencv默认的通道是BGR。

#include <iostream>
#include <opencv2/opencv.hpp>


using namespace std;
using namespace cv;


int main(int,char **)
{
	Mat in_frame, out_frame;
	const char win1[] = "Grabbing...", win2[] = "Recording...";
	double fps = 30;
	char file_out[] = "recorded.avi";


	VideoCapture cap(0); //打开默认摄像机,videocapture函数还可以用来打开视频文件:VideoCapture(const string &filename)
	
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值