• 一首歌可以循环一整天《我们都是好孩子》
  • 在别人眼里是逃避,其实是不想牵累任何人,做孤独的自己。
  • 也许有一天我会背着包,独自漂流。
  • 既然做了决定,就不后悔,再见昆明!
  • 愿闻世间百态。
  • 外表的一切如常,内心的混乱又有谁能了解!
  • 突然想回安徽工作了!
  • 该来的还是来了,Uzi宣布退役!
  • 国内疫情已完全控制住,但是国外疫情大爆发,现在开始限制人员入境。
  • 啊啊啊,IP被墙了,好烦!

Opencv获取笔记本摄像头

学习 愿闻世间百态 8年前 (2016-11-01 15:02:47) 3369次浏览 已收录 0个评论

程序采用 opencv 接口获取笔记本摄像头,固需提前配置好 opencv 环境。

效果如下:

Opencv 获取笔记本摄像头 Opencv 获取笔记本摄像头

#include "cv.h"
#include "highgui.h"
#include "windows.h"
using namespace std;

int main(int argc, char** argv) {
	int f = 0, t = 0,n=0,c=0;
	cvNamedWindow("WebCam");
	CvCapture* capture = cvCreateCameraCapture(0); //创建并获取摄像设备
	IplImage* frame;
	IplImage* frame1;
	frame = cvQueryFrame(capture); //创建并获取一张摄像截图
	frame1 = frame;
	while (1) {
			frame = cvQueryFrame(capture); //创建并获取一张摄像截图
			if (!frame)
			{
				cvReleaseCapture(&capture);  //释放摄像设备
				CvCapture* capture = cvCreateCameraCapture(0); //创建并获取摄像设备
				frame = cvQueryFrame(capture); //创建并获取一张摄像截图
				if (!frame)
				{
					f = f + 1;
					cout << "对不起,获取摄像头失败..." << endl;
				}
				else
				{
					c = c + 1;
					cout << "恭喜,重新获取摄像头成功..." << endl;
					cvShowImage("WebCam", frame);
				}
			}
			else
			{
				t = t + 1;
				cout << "恭喜,获取摄像头成功..." << endl;
				cvShowImage("WebCam", frame);
			}
			cvShowImage("WebCam", frame);
		n = n + 1;
		cout << "----刷新 " << n << " 次----成功 " << t << " 次----重连成功 " << c << " 次----失败 " << f << " 次----" << endl;
		
		char c = cvWaitKey(50);
		if (c == 27) break;	
	}
	cvReleaseCapture(&capture);  //释放摄像设备
	cvDestroyWindow("WebCam"); //释放窗口
	return 0;
}

WECV.CN , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Opencv 获取笔记本摄像头
喜欢 (0)
[]
分享 (0)

您必须 登录 才能发表评论!