5.从摄像机读入数据

from:http://blog.sina.com.cn/s/blog_6dbe9bdb0100nii7.html

此程序可调用普通摄像头,未能调用kinect

代码:

/************************************************************************/
/* 由摄像机读入数据                                                     */
/************************************************************************/

#include"highgui.h"
#include"cv.h"
//从摄像头中读入数据
int main(int argc,char** argv)
{
 cvNamedWindow("Example1",CV_WINDOW_AUTOSIZE);
 CvCapture* capture; //初始化一个CvCapture结构的指针
 if(argc==1)
 {
  capture=cvCaptureFromCAM(0);//如果参数为1,则从摄像头中读入数据,并返回一个CvCapture的指针
 }                               //注:《学习OpenCV》中此处用cvCreateCameraCapture为错
 else
 {
  capture=cvCreateFileCapture(argv[1]);
 }
 assert(capture!=NULL); //断言(assert)使用,检查capture是否为空指针,为假时程序退出,并打印错误消息
 IplImage* frame;
 while(1)
 {
  frame=cvQueryFrame(capture);//用于将下一帧视频文件载入内存(实际是填充和更新CvCapture结构中),返回一个对应当前帧的指针
  if(!frame)
   break;
  cvShowImage("Example1",frame);
  char c=cvWaitKey(33);
  if(c==27) break; //出发ESC键退出循环,读入数据停止
 }
 cvReleaseCapture(&capture);//释放内存
 cvDestroyWindow("Example1");
}


运行结果:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值