<span style="font-size:18px;">#include "camerads.h"
#include <highgui.h>
#include<cv.h>
#include<cxcore.h>
#include <stdio.h>
using namespace std;
using namespace cv;
int main()
{
int cam_count;
//仅仅获取摄像头数目
cam_count = CCameraDS::CameraCount();
printf("There are %d cameras.\n", cam_count);
char imgname1[25];
char imgname2[25];
//获取所有摄像头的名称
for (int i = 0; i < cam_count; i++)
{
char camera_name[1024];
int retval = CCameraDS::CameraName(i, camera_name, sizeof(camera_name));
if (retval >0)
printf("Camera #%d's Name is '%s'.\n", i, camera_name);
else
printf("Can not get Camera #%d's name.\n", i);
}
if (cam_count == 0)
return -1;
CCameraDS camera;
CCameraDS camera1;
//打开第一个摄像头
//if(! camera.OpenCamera(0, true)) //弹出属性选择窗口
if (!camera.OpenCamera(0, false, 320, 240)) //不弹出属性选择窗口,用代码制定图像宽和高
{
directshow+opencv显示usb的摄像头代码(并保存视频中的图片)
最新推荐文章于 2017-10-11 14:30:33 发布
这段代码展示了如何利用DirectShow和OpenCV库连接并打开USB摄像头,同时按设定频率保存视频帧为JPEG图片。程序首先获取可用摄像头的数量及其名称,然后打开指定分辨率的摄像头,并在两个窗口中实时显示视频流。每隔20帧,程序将保存一帧图像到指定目录。
摘要由CSDN通过智能技术生成