从摄像头中读取图像 OpenCV

原创 2016年06月01日 17:14:16


//(一) 从摄像头中读取图像并保存成视频
//图像类型 IplImage*
#include "cv.h" 
#include "highgui.h" 

int main( int argc, char** argv ) 
{ 
	CvCapture* capture = 0; 
	IplImage* frame = 0; 

	capture = cvCaptureFromCAM( 0 ); 	

	int fps=25; //捕捉帧率 
	//double fps = cvGetCaptureProperty(capture,CV_CAP_PROP_FPS); //视频帧率 

	CvVideoWriter* writer = 0; //保存就加上这句
	int isColol=1; 
	int frameW=640; 
	int frameH=480; 
	writer=cvCreateVideoWriter("out.avi",CV_FOURCC('F','L','V','1'),fps,cvSize(frameW,frameH),isColol);

	cvNamedWindow( "摄像头", 1 ); 

	//for(int i=0;i<50;i++) //2秒
	for(;;) //一直读
	{ 
		frame = cvQueryFrame( capture ); 

		cvWriteFrame(writer,frame ); 

		cvShowImage( "摄像头", frame ); //显示一帧图像
		cvWaitKey(1000 / fps);//视频速度 
	} 

	cvReleaseVideoWriter(&writer); 
	cvReleaseImage(&frame); 
	cvReleaseCapture( &capture ); 
	cvDestroyWindow("摄像头"); 
	return 0; 
} 

//(二)从摄像头中读取图像   
//图像类型 Mat
#include "stdafx.h"
#include "cv.h" 
#include "highgui.h" 
#include "opencv2/core/core.hpp"
#include <opencv2/opencv.hpp>  
#include "opencv2/features2d/features2d.hpp"
#include "opencv2/highgui/highgui.hpp"
#include "opencv2/calib3d/calib3d.hpp"
#include "opencv2/nonfree/features2d.hpp"
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/nonfree/nonfree.hpp> 

using namespace cv;
using namespace std;

int main(int argc, char** argv)
{
	CvCapture* capture = 0;
	Mat frame;
	capture = cvCaptureFromCAM(0);

	int fps = 25; //捕捉帧率 
	//double fps = cvGetCaptureProperty(capture,CV_CAP_PROP_FPS); //视频帧率 

	namedWindow("摄像头", 1);
	//for(int i=0;i<50;i++) //2秒
	for (;;) //一直读
	{
		frame = cvQueryFrame(capture);
		imshow("摄像头", frame); //显示一帧图像
		waitKey(1000 / fps);//视频速度 
	}

	cvReleaseCapture(&capture);
	destroyWindow("摄像头");

	return 0;
}

//读摄像机

VideoCapture video_capture;
video_capture = VideoCapture("rtsp://192.168.0.23:554/user=admin_password=tlJwpbo6_channel=1_stream=0.sdp?real_stream");


版权声明:本文为@那年聪聪 原创文章,未经博主允许不得转载。 举报

相关文章推荐

哈希表工作原理

1. 引言         哈希表(Hash Table)的应用近两年才在NOI中出现,作为一种高效的数据结构,它正在竞赛中发挥着越来越重要的作用。  哈希表最大的优点,就是把数据的存储和查找消耗...

散列表(哈希表)工作原理

1. 引言        哈希表(Hash Table)的应用近两年才在NOI中出现,作为一种高效的数据结构,它正在竞赛中发挥着越来越重要的作用。 哈希表最大的优点,就是把数据的存储和查找消耗...

精选:深入理解 Docker 内部原理及网络配置

网络绝对是任何系统的核心,对于容器而言也是如此。Docker 作为目前最火的轻量级容器技术,有很多令人称道的功能,如 Docker 的镜像管理。然而,Docker的网络一直以来都比较薄弱,所以我们有必要深入了解Docker的网络知识,以满足更高的网络需求。

CSDN日报20170817——《如果不从事编程,我可以做什么?》

程序人生 | 如果不从事编程,我可以做什么?作者:下一个丶奇迹 如果有一天不做编程了,我能做什么?或许,我会去开一家类似猫的天空之城一样的书店,天天在书香中度过,谈笑有鸿儒,往来无白丁,一定是很美...

散列表(哈希表)工作原理

1. 引言        哈希表(Hash Table)的应用近两年才在NOI中出现,作为一种高效的数据结构,它正在竞赛中发挥着越来越重要的作用。 哈希表最大的优点,就是把数据的存储和查找消耗的...

十道海量数据处理面试题与十个方法大总结

海量数据处理:十道面试题与十个海量数据处理方法总结作者:July、youwang、yanxionglu。时间:二零一一年三月二十六日本文之总结:教你如何迅速秒杀掉:99%的海量数据处理面试题。有任何问...

哈希表(散列表)原理详解

哈希表(散列表)原理详解

十一、从头到尾解析Hash表算法

十一、从头到尾彻底解析Hash 表算法作者:July、wuliming、pkuoliver  出处:http://blog.csdn.net/v_JULY_v。  说明:本文分为三部分内容,    第...

vector中insert()的用法详解

vector中insert()的用法详解

如果不从事编程,我可以做什么?

第一篇:勿忘初心,继续coding 第二篇:编程路上,送给处于迷茫中的你和自己 第三篇:编程路上,对于迷失者的一些小小建议 第四篇:如果不从事编程,我可以做什么? 在校期间踏入工作的不到五年时间里,曾...

swing 条码打印

只能说人在江湖,身不由己啊。      本来都没做java了,投身于sap中。结果公司的一个客户工厂找来要写个打印条码的软件,就就就。。。      条码打印之前没搞过,更不要说用swing了。感叹下...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)