求助Opencv读取摄像头问题
1个回答
展开全部
网上代码:
#include <opencv\highgui.h>//包含opencv库头文件
#include <opencv\cv.h>
//#include<iostream>
//using namespace std;
using namespace cv;
int main( int argc, char** argv ) {//主函数
cvNamedWindow( "Example2", CV_WINDOW_AUTOSIZE );//创建窗口,(名字,默认大小)
CvCapture *capture = NULL;// 视频获取结构,用来作为视频获取函数的一个参数
capture = cvCreateCameraCapture(0);//打开摄像头,从摄像头中获取视频
IplImage* frame;//申请IplImage类型指针,就是申请内存空间来存放每一帧图像
while(1) {
frame = cvQueryFrame( capture );// 从摄像头中抓取并返回每一帧
if( !frame ) break;//如果抓取帧为空 break 打破循环否则将抓取的那一帧显示在创建的窗口上
cvShowImage( "Example2", frame );//在窗口上显示每一帧
char c = cvWaitKey(33);//延时,每秒钟约33帧;符合人眼观看速度;
if( c == 27 ) break;//由于是死循环,而且没有控制台,当按下键盘esc键,将按键的ASCII值给C,如果C为ESC(ASCII 为27)循环退出退出循环;
}
cvReleaseCapture( &capture );//释放内存;
cvDestroyWindow( "Example2" );//销毁窗口
return 0;
}
第一次运行还能启动下笔记本的摄像头(摄像头灯是亮的),但是frame上一片黑
第二次运行开始就老是出现这种界面,求助,用的是opencv-3.0.0 win7 63位
#include <opencv\highgui.h>//包含opencv库头文件
#include <opencv\cv.h>
//#include<iostream>
//using namespace std;
using namespace cv;
int main( int argc, char** argv ) {//主函数
cvNamedWindow( "Example2", CV_WINDOW_AUTOSIZE );//创建窗口,(名字,默认大小)
CvCapture *capture = NULL;// 视频获取结构,用来作为视频获取函数的一个参数
capture = cvCreateCameraCapture(0);//打开摄像头,从摄像头中获取视频
IplImage* frame;//申请IplImage类型指针,就是申请内存空间来存放每一帧图像
while(1) {
frame = cvQueryFrame( capture );// 从摄像头中抓取并返回每一帧
if( !frame ) break;//如果抓取帧为空 break 打破循环否则将抓取的那一帧显示在创建的窗口上
cvShowImage( "Example2", frame );//在窗口上显示每一帧
char c = cvWaitKey(33);//延时,每秒钟约33帧;符合人眼观看速度;
if( c == 27 ) break;//由于是死循环,而且没有控制台,当按下键盘esc键,将按键的ASCII值给C,如果C为ESC(ASCII 为27)循环退出退出循环;
}
cvReleaseCapture( &capture );//释放内存;
cvDestroyWindow( "Example2" );//销毁窗口
return 0;
}
第一次运行还能启动下笔记本的摄像头(摄像头灯是亮的),但是frame上一片黑
第二次运行开始就老是出现这种界面,求助,用的是opencv-3.0.0 win7 63位
深圳量子动力
2024-10-28 广告
2024-10-28 广告
在量子动力(深圳)计算机科技有限公司,我们致力于将前沿技术融入安防与智能识别领域。摄像头人脸捕捉技术,依托深度学习算法与高效图像处理能力,能够在复杂环境中迅速锁定并精准捕捉人脸信息。这一技术不仅提升了监控系统的智能化水平,还在公共安全、门禁...
点击进入详情页
本回答由深圳量子动力提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询