`
king_c
  • 浏览: 222729 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

【OpenCV学习笔记】2.3 OpenCV2.2摄像头读取视频的问题和解决(VS2010)

    博客分类:
  • c#
 
阅读更多
摄像头读取视频这一块研究了很长时间,终于弄好了。刚开始以为是代码的问题,因为一直编译不过,后来
修改了一个小错误,编译通过,但是弹出来的窗口是灰色的没有图像。我“有问题找度娘”了一段时间,发现有不少同 僚也遇到了相似的问题,但是解决办法对于我这里都不甚有效。后来我排除了代码,配置和摄像头出问题的可能性。我的方法就是,一个一个试验。可能比较繁琐, 不太容易发现真正的问题所在,但是还挺有效果的。下面是正文:
 
代码:
  1. #include "stdafx.h"
  2. #include <core.hpp>
  3. #include <highgui.hpp>
  4. #include<stdio.h>
  5. int main( int argc, char** argv )
  6. {
  7.   //声明IplImage指针
  8.   IplImage* pFrame = NULL;
  9.  //获取摄像头
  10.   CvCapture* pCapture = cvCreateCameraCapture(0);
  11.   //创建窗口
  12.   cvNamedWindow("Video", 1);
  13.   //显示视屏
  14.   while(1)
  15.   {
  16.       pFrame=cvQueryFrame( pCapture );
  17.       if(!pFrame)break;
  18.       cvShowImage("Video",pFrame);
  19.       char c=cvWaitKey(33);
  20.       if(c==27)break;
  21.   }
  22.   cvReleaseCapture(&pCapture);
  23.   cvDestroyWindow("Video");
  24.   return 0;
  25. }
 
我的环境:WIN7 32 bits+VS2010旗舰版+OpenCV2.2
目标:利用USB摄像头读入视频数据,在电脑上显示。
遇到的问题:经过排查代码错误后,编译通过。但是弹出灰色无图像窗口如下。
 
 
首先,参考了http://www.cnblogs.com/5uperDing/archive/2011/05/30/2063663.html里面的一个方法,修正了OpenCV2.2的一个小bug
需要修改的文件位置: $(OpenCV Folder)\modules\highgui\src\precomp.hpp
具体的修改代码参考上述文章~注意,需要修改此hpp文件的属性,将只读选项勾选掉。修改之后保存,用CMAKE编译一下。
 
这里需要说明的是,由于当初安装配置OpenCV的时候,使用的是 OpenCV 2.2 for VS2010,所以未使用CMAKE编译。此时编译,并不需要卸载OpenCV。安装并代开cmake2.8,在源文件夹那里填写的是已经安装的 OpenCV的地址(比如我已经安装在C盘,那就填C:\OpenCV2.2),然后在C:\OpenCV2.2里面新建一个文件夹叫 VS2010,cmake的目标地址就写C:\OpenCV2.2\VS2010。不知道我表达清楚了没有~
 
另外很重要的一点,就是需要在项目文件夹的debug文件夹中粘贴上所需要的动态链接库
$project folder\$project name\Debug 里面 粘贴上:
 
最后,一定要重新检查项目文件属性的设置,即debug和release下的包含目录,库目录,和附加依赖项。要填写完整地址,换行,无分号,见下图。如C:\OpenCV2.2\VS2010\lib\opencv_core220.lib
注意,debug和release下的附加依赖项是不同的。debug的比release的多了个d。

 
好了,运行,效果出来了~
 
 
ref:http://blog.chinaunix.net/uid-26673820-id-3077749.html
分享到:
评论

相关推荐

    vs2013下opencv读取摄像头学习笔记

    vs2013下读取opencv读取摄像头笔记,程序在我的上传中可以看到

    Opencv学习笔记

    OpenCV(开源计算机视觉库)是一个强大的跨平台计算机视觉库,它包含了大量的图像处理和计算机视觉的算法,广泛应用于图像分析、...通过不断学习和实践,我们可以充分利用OpenCV的强大能力,解决各种计算机视觉问题。

    opencv学习笔记.docx

    本文档为 OpenCV 学习笔记,涵盖了 OpenCV 库的基本使用和图像处理技术。文档分为两章,第一章介绍了图像的载入、保存和旋转操作,第二章详细介绍了图像的遍历和处理。 第一章:图像载入、保存和旋转 在 OpenCV 中...

    opencv学习笔记_opencv_

    OpenCV(开源计算机视觉...在"opencv学习笔记"中,你将找到关于这些主题的详细讲解,包括理论知识、实例代码和实践技巧,帮助你逐步掌握OpenCV并运用到实际项目中。无论是初学者还是有经验的开发者,都能从中受益匪浅。

    基于Opencv的人脸检测(采用笔记本摄像头输入)

    OpenCV,全称Open Source Computer Vision Library,是一个开源的计算机视觉库,它包含了各种图像处理和计算机视觉的算法,广泛应用于图像分析、机器学习等领域。在本教程中,我们将重点探讨如何使用OpenCV进行实时...

    bilibili唐宇迪老师OpenCV入门笔记

    学习OpenCV对于从事计算机视觉、图像分析或者人工智能相关工作的人来说非常重要,它不仅提供了丰富的功能,而且有庞大的社区支持和丰富的资源,有助于开发者快速解决实际问题。唐宇迪老师的课程,无疑是一个系统学习...

    OpenCV学习笔记(基于OpenCV_2.4)一:哈喽CV

    OpenCV学习笔记(基于OpenCV 2.4)一:哈喽CV 本文是针对OpenCV初学者的一份入门级学习资料,旨在帮助读者从零基础开始了解并掌握OpenCV,包括其基本概念、模块结构、安装配置以及编写简单的示例代码。OpenCV是一个...

    OpenCV3.2+Qt5.8.0+Win10配置和使用----打开笔记本摄像头

    在本文中,我们将深入探讨如何在Windows 10操作系统上配置和使用OpenCV 3.2与Qt 5.8.0的集成,以便能够利用笔记本的内置摄像头进行图像处理和计算机视觉应用。 首先,OpenCV(开源计算机视觉库)是一个强大的库,...

    笔记本OpenCV调用摄像头进行人脸捕捉和灰度处理的简单代码,可运行

    在计算机视觉领域,OpenCV(开源计算机视觉库)是一个强大的工具,它提供了丰富的函数和模块,用于处理图像和视频数据。本项目中的代码是利用OpenCV来实现笔记本摄像头的人脸捕捉以及灰度处理功能。下面将详细介绍这...

    Python调用OpenCV打开电脑摄像头进行实时显示.zip

    本项目“Python调用OpenCV打开电脑摄像头进行实时显示”旨在展示如何使用Python和OpenCV库来捕获并显示来自电脑内置或外接摄像头的实时视频流。这个基础知识对于进一步学习和实现如面部检测、物体识别等复杂计算机...

    基于Vs2008+opencv2.3.1的MFC笔记本摄像头操作

    在本项目中,我们主要探讨如何使用Visual Studio 2008(Vs2008)结合OpenCV 2.3.1库来构建一个基于MFC(Microsoft Foundation Classes)的应用程序,以便操作笔记本摄像头并执行图像处理任务,如边缘检测。...

    OpenCV学习笔记大集锦.rar

    本资源"OpenCV学习笔记大集锦"是专为初学者设计的一份资料合集,旨在帮助新手快速入门计算机视觉,并掌握OpenCV的基本使用。 在C语言背景下学习OpenCV,首先需要理解基础的编程概念,因为OpenCV库主要用C++编写,但...

    win7 笔记本内置摄像头开启+MFC+OPENCV+VS2010

    描述了一个关于在Windows 7操作系统下,利用Visual Studio 2010(VS2010)开发环境,结合Microsoft Foundation Classes (MFC)库和OpenCV开源计算机视觉库来启用并处理笔记本内置摄像头的应用程序开发过程。...

    Duanxx的OpenCV学习:视频操作

    Duanxx 的 OpenCV 学习笔记中关于视频操作的部分,主要介绍了如何使用 `VideoCapture` 类进行视频捕获和处理的基本操作。这对于开发人员来说是非常实用的内容,特别是在进行实时视频分析或监控应用时。 #### 二、...

    OpenCV学习笔记3找出人脸,同时比较两张图片中的人脸相似度.docx

    在OpenCV的学习中,人脸检测和比较是两个重要的应用场景。这篇笔记主要讲解如何利用OpenCV找出图片中的人脸,并计算两张图片中人脸的相似度。首先,我们需要了解OpenCV库中的几个关键模块: 1. **对象检测...

    opencv1在 vc6 和win7下读取摄像头 最简单的方式

    附带的“doc文档笔记”可能包含了作者在实现过程中遇到的具体问题以及解决方法,这对于理解和解决问题非常有帮助。在开发过程中,记录此类笔记是很好的实践,可以帮助他人复现和解决问题。 总之,虽然在VC6和Win7...

    PyQt5+OpenCV调用本地摄像头并在窗口实时显示图像

    # PyQt5+OpenCV+PyCharm使用本地摄像头并实时显示图像 GUI可视化 ...包含两个demo:一个是只有实时显示摄像头图像的简单版demo,另一个是同时加入了两个按钮控制图像翻转和灰度的demo,供大家学习。

    OpenCV学习笔记(四)运动物体跟踪的camshift算法

    ### OpenCV学习笔记(四)运动物体跟踪的camshift算法 #### 一、CamShift算法简介 CamShift(概率密度下的连续自适应均值移位)算法是OpenCV中的一个非常重要的目标跟踪算法,它基于均值偏移算法并加入了尺度调整...

    OpenCV-python 学习笔记 Opencv图像基本操作1

    这篇学习笔记主要介绍了如何在Python环境中搭建OpenCV,以及如何进行基本的图像读取、显示、保存和一些基本操作。 首先,环境搭建是使用Python的包管理器pip来安装OpenCV,通过运行`pip install opencv-python`命令...

    Python OpenCV利用笔记本摄像头实现人脸检测.pdf

    在本文中,我们将探讨如何使用Python和OpenCV库实现实时的人脸检测,特别是在笔记本摄像头中。OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,它包含了众多图像处理和计算机视觉的算法。 ...

Global site tag (gtag.js) - Google Analytics