利用opencv进行usb相机的视频捕获
2011-08-20 22:22
447 查看
USB相机便宜,使用起来方便,而opencv也包含了读取USB相机视频数据的API函数。在windows xp中,该API函数是利用windows的VFW模块来实现的。下面,我给出
相应的参考代码:
#include "stdafx.h"
#include "cv.h"
#include "highgui.h"
#include "iostream"
using namespace std;
int main(int argc, char* argv[])
{
CvCapture *cap = cvCreateCameraCapture(0);//初始化相机捕获的指针
if (!cap)
{
cout<<"create camera capture error..."<<endl;
system("pause");
exit(-1);
}
cvNamedWindow("img");
IplImage *img = NULL;
while(1)
{
IplImage *tempImg = cvQueryFrame(cap);//捕获相机的视频帧并进行相应的解码操作
if (img == NULL)
{
img = cvCreateImage(cvGetSize(tempImg),
tempImg->depth, tempImg->nChannels);
}
cvCopy(tempImg, img);//拷贝到外部的内存
if (img->origin == IPL_ORIGIN_TL)//如果图片原点在左上角,将其沿X轴翻转,使得原点位于左下角
{
cvFlip(img, img);
}
cvShowImage("img", img);
cvWaitKey(3);
}
cvDestroyAllWindows();
cvReleaseImage(&img);
system("pause");
return 0;
}
相应的参考代码:
#include "stdafx.h"
#include "cv.h"
#include "highgui.h"
#include "iostream"
using namespace std;
int main(int argc, char* argv[])
{
CvCapture *cap = cvCreateCameraCapture(0);//初始化相机捕获的指针
if (!cap)
{
cout<<"create camera capture error..."<<endl;
system("pause");
exit(-1);
}
cvNamedWindow("img");
IplImage *img = NULL;
while(1)
{
IplImage *tempImg = cvQueryFrame(cap);//捕获相机的视频帧并进行相应的解码操作
if (img == NULL)
{
img = cvCreateImage(cvGetSize(tempImg),
tempImg->depth, tempImg->nChannels);
}
cvCopy(tempImg, img);//拷贝到外部的内存
if (img->origin == IPL_ORIGIN_TL)//如果图片原点在左上角,将其沿X轴翻转,使得原点位于左下角
{
cvFlip(img, img);
}
cvShowImage("img", img);
cvWaitKey(3);
}
cvDestroyAllWindows();
cvReleaseImage(&img);
system("pause");
return 0;
}
相关文章推荐
- 利用opencv进行usb相机的视频捕获
- 利用opencv进行usb相机的视频捕获
- 利用opencv捕获usb摄像头并写入视频文件
- C# 利用 OpenCV 进行视频捕获 (笔记)
- C# 利用 OpenCV 进行视频捕获 (笔记)
- 利用opencv捕获usb摄像头并写入视频文件
- 利用opencv捕获usb摄像头并写入视频文件
- 利用ffmpeg和opencv进行视频的解码播放
- ROS中利用opencv3完成四个视频流拼接成一副图像显示,并添加track条进行参数调节
- Window7系统 opencv 利用DirectShow 进行视频采集的解决方案
- 一段能用的OpenCV3中利用VideoCapture类进行视频的处理
- opencv笔记 1.利用摄像头进行视频文件写入
- 利用OpenCV进行相机标定的源代码
- 利用Opencv提供的imencode和imdecode进行图像视频传输(发送端支持Linux和Windows双系统)
- 基于USB摄像头视频数据采集和利用FFMPEG库函数进行视频数据压缩
- 利用RemoteJoy进行usb视频输出教程(无需IRshell)
- 利用OpenCV进行【视频的读取】与【保存视频文件或者图像】源码!~
- 基于USB摄像头视频数据采集和利用FFMPEG库函数进行视频数据压缩
- Ros利用usb_cam进行opencv测试
- 利用ffmpeg和opencv进行视频的解码播放