OpenCV Open Camera 打开摄像头

这是一个用OpenCV2.4.10打开摄像头的一个例子,参见代码如下:

#include <iostream>
#include <stdio.h>
#include <opencv2/opencv.hpp>

using namespace cv;
using namespace std;

int main(int argc, char *argv[])
{
    CvCapture* cam0 = cvCaptureFromCAM(0);
    if(!cam0)
    {
        fprintf(stderr, "Could not initialize opening of Camera 0..\n");
        system("Pause");
        return -1;
    }
    printf("cam0 initialized\n");
    cvNamedWindow("Camera 0",CV_WINDOW_AUTOSIZE); //create a window called "Camera 0"

    while (1)
    {
        IplImage *cam0Frame = cvQueryFrame(cam0);
        if (cam0Frame) {
            cvShowImage("Camera 0", cam0Frame);
        }
        if (cvWaitKey(30) == 27) //wait for ‘Esc‘ key press for 30ms. If ‘Esc‘ key is pressed, break loop
        {
            cout << "Esc key is pressed by user" << endl;
            break;
        }
    }

    cvReleaseCapture(&cam0);
    cvDestroyWindow("Camera 0");

    return 0;
}

如果想同时打开两个摄像头,可以参见我之前的博客OpenCV show two cameras 同时显示两个摄像头

时间: 2024-10-14 17:04:19

OpenCV Open Camera 打开摄像头的相关文章

opencv打开摄像头获取视频程序

// // main.cpp // opencv3 // // Created by PKU on 14-9-16. // Copyright (c) 2014年 PKU. All rights reserved. // #include <opencv2/opencv.hpp> using namespace cv; using namespace std; int main() { CvCapture* capture=cvCaptureFromCAM(-1); CvVideoWriter

OpenCV打开摄像头失败

<span style="font-family: Arial, Helvetica, sans-serif;">#include <stdio.h></span> #include <cv.h> #include <cxcore.h> #include <highgui.h> int main( int argc, char** argv ) { //声明IplImage指针 IplImage* pFrame =

opencv学习---打开摄像头检测个人头像

opencv中具有检测人体各部分的级联分类器,在opencv文件夹里面的sources/data/haarcascades里面. 这里要选择的是能够检测人体头像的还有检测眼睛的级联分类器的文件. 它们分别是: 检测头像 haarcascade_frontalface_alt.xml或者haarcascade_frontalface_alt2.xml 检测眼睛 haarcascade_eye.xml或者haarcascade_eye_tree_eyeglasses.xml 检测用的函数是: cvH

OpenCV实践之路——MFC与OpenCV联合打开摄像头

在之前的一篇博客中已经记录了如何打开一张图片,能打开图片之后,自然就是尝试打开摄像头.在之前打开图片的时候已经知道了怎么应用按钮控件和图片控件,虽然都没记录...最最重要的是,知道了怎么让MFC与OpenCV的数据交互--Mat与CImage相互转换.有了之前的基础,打开摄像头就可以得心应手了.还是直接上代码,然后再说问题: void CMFCtestDlg::OnBnClickedButton1() { // TODO: Add your control notification handle

opencvbase 实现opencv打开摄像头和初步处理等效果操作(附源码)

// TwoCameraOnTimer2Dlg.cpp : 实现文件 /* CvMat, Mat, IplImage之间的互相转换 IpIImage -> CvMat CvMat matheader; CvMat * mat = cvGetMat(img, &matheader); CvMat * mat = cvCreateMat(img->height, img->width, CV_64FC3); cvConvert(img, mat) IplImage -> Mat

OpenCV学习1-----打开摄像头并在画面上添加水印

一直对视频或者图像添加水印很感兴趣,查找资料后用OpenCV尝试了一下. 记录下来. 1.首先是打开摄像头. 找到OpenCV官方文档给出的例子. 例子中实现的是,打开摄像头,并对画面进行高斯滤波,使用canny算子检测直线边缘. #include "opencv2/opencv.hpp" using namespace cv; int main(int, char**) { VideoCapture cap(0); // open the default camera if(!cap

基于opencv和QT的摄像头采集代码( GoQTtemplate3持续更新)

在Linux操作系统上,编写带界面的图像处理程序,选择opencv+QT是一种很好的选择.GoQTtemplate3是我为编写Linux下图像处理程序实现的框架,希望能够为大家解决Linux环境下桌面图像处理程序,提供一些帮助. 文中相关代码请参考:https://github.com/jsxyhelu/GOQTtemplate3 一.基本环境构建 a.我们需要完整地安装QT.具体方法,是从网站上下载在线安装程序,并且直接安装 b.下载并且安装OpenCV 直接使用编译好的OpenCV类库 su

OpenCV打不开摄像头的替代解决方案

一般来说,opencv要打开摄像头的话,可以使用:VideoCapture captRefrnc(0); 这类方式. 重装系统之后,为了避免安装巨大的visual studio,改成了codeblocks,另外opencv也采用cmake+codeblocks的方式编译而成,但是采用默认设置编译出来的opencv无法开启笔记本电脑的摄像头,尝试其他解决方法之后,想到了之前用过的 K-Lite Codec Pack 配合avisynth编写avs脚本解决解码器的思路,利用K-Lite Codec

基于opencv和mfc的摄像头采集代码(GOMFCTemplate2)

基于opencv和mfc的摄像头采集框架(GOMFCTemplate2) 编写带界面的图像处理程序,选择opencv+mfc是一种很好的选择:在读取摄像头数据方面,网上的方法很多,其中shiqiyu的camerads的方法是较好的. 基于现有资料,通过在实际项目中的积累,我总结出来一套结合opencv和mfc的摄像头采集框架.具有以下特点: 1.基于directshow,兼容性好,速度快.到目前为止,无论是工业相机还是普通相机,没发现不兼容的: 2.摄像头部分通过线程读取,保证界面的运行流畅: