摄像头读取视频这一块研究了很长时间,终于弄好了。刚开始以为是代码的问题,因为一直编译不过,后来
修改了一个小错误,编译通过,但是弹出来的窗口是灰色的没有图像。我“有问题找度娘”了一段时间,发现有不少同 僚也遇到了相似的问题,但是解决办法对于我这里都不甚有效。后来我排除了代码,配置和摄像头出问题的可能性。我的方法就是,一个一个试验。可能比较繁琐, 不太容易发现真正的问题所在,但是还挺有效果的。下面是正文:
代码:
- #include "stdafx.h"
- #include <core.hpp>
- #include <highgui.hpp>
- #include<stdio.h>
- int main( int argc, char** argv )
- {
- //声明IplImage指针
- IplImage* pFrame = NULL;
- //获取摄像头
- CvCapture* pCapture = cvCreateCameraCapture(0);
- //创建窗口
- cvNamedWindow("Video", 1);
- //显示视屏
- while(1)
- {
- pFrame=cvQueryFrame( pCapture );
- if(!pFrame)break;
- cvShowImage("Video",pFrame);
- char c=cvWaitKey(33);
- if(c==27)break;
- }
- cvReleaseCapture(&pCapture);
- cvDestroyWindow("Video");
- return 0;
- }
我的环境:WIN7 32 bits+VS2010旗舰版+OpenCV2.2
目标:利用USB摄像头读入视频数据,在电脑上显示。
遇到的问题:经过排查代码错误后,编译通过。但是弹出灰色无图像窗口如下。
需要修改的文件位置: $(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读取摄像头笔记,程序在我的上传中可以看到
之前曾经写过一道数米粒的作业,当时用的是c++中的opencv,这次用python试了一下。 原图及效果图 咦?水印怎么去啊 程序流程 程序的大致流程为: 1.读取图片 2.灰度化 3.二值化 4.膨胀、腐蚀等 5.边缘检测 6....
1. openCV-python 环境搭建: 2. OpenCV 的图像读取显示及保存 1. 导入图像: 2. 显示图像: 3. 保存图像: 3. OpenCV
标题学习opencv第一天: 一、图像基本操作: 1.图像读取:cv.imread(“文件位置:D:/python/picture.png” ) 函数功能:从文件路径中读取图片文件并显示出来,可读取的文件类型有JPG、JPEG、PNG、Webp等 函数原型:...
学习读取视频,显示视频和保存视频。 学习从相机捕捉并显示它。 你将学习以下功能:cv.VideoCapture(),cv.VideoWriter() 从相机中读取视频 通常情况下,我们必须用摄像机捕捉实时画面。提供了一个非常简单的...
配合文章:opencv学习笔记1:安装opencv及VS2015配置 opencv读取图像项目源码,opencv读取图像项目源码
直方图的反向投影 """ 直方图的反向投影 我的理解就是给一个sample 然后... # 读取图片 sample = cv.imread("imgsample.jpg") target = cv.imread("img.jpg") # 转换为HSV格式 roi_hsv = cv.cvtColor(sample, cv.C
本文实例讲述了Python树莓派学习笔记之UDP传输视频帧操作。分享给大家供大家参考,具体如下: 因为我在自己笔记本电脑上没能成功安装OpenCV-Contrib模块,因此不能使用人脸识别等高级功能,不过已经在树莓派上安装...
这里我们还是使用 opencv 中自带了 haar人脸特征分类器,通过读取一段视频来识别其中的人脸。 代码实现: # -*- coding: utf-8 -*- __author__ = "小柒" __blog__ = "https://blog.52itstyle.vip/" import cv2 ...
1.简介本文主要介绍了实时人脸检测与识别系统的详细方法。该系统基于python3.5/opencv2/tensorflow1.3gpu环境,实现了从摄像头读取
本文件包含了我在linux下学习opencv Reading Geospatial Raster files with GDAL(使用GDAL读取地理空间栅格文件)中的学习笔记,遇到的bug以及最重要,比较难转换的tif文件
本文是OpenCV 2 Computer Vision Application Programming Cookbook读书笔记的第一篇。在笔记中将以Python语言改写每章的代码。 PythonOpenCV的配置这里就不介绍了。 注意,现在OpenCV for Python就是通过NumPy进行...
该笔记本旨在用于学习和练习,许多想法和代码段摘自各种论文和博客。 我会尽量发表评论。 您应该只需按Shift键即可进入笔记本的末尾并查看结果。要求Python 3.6.4 火炬0.4.1 Jupyter笔记本电脑5.4.0 OpenCV 3.4.0 ...
该项目的目标是专注于自动驾驶汽车决策能力的第一个基本特征,即开发一种深度学习模型,该模型可以读取交通标志并使用卷积神经网络(CNN)对其进行正确分类。 交通标志分类器使用德语交通数据集。德国交通数据集包括...