BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / ml-dm / #7708同步于 2011/2/24
该镜像源已超过 30 天没有更新,可能在源站已被删除。
ML_DM机器人发帖

【opencv】win7下笔记本摄像头捕捉不到视频

xiaobing307
2011/2/24镜像同步5 回复
我用的是例程中的程序(《opencv教程 基础篇》例3.5),一个字都没改,在别人xp下可以,在win7下就不行。可以打开avi文件,就是捕捉不到笔记本摄像头视频,QQ视频聊天可以正常打开摄像头。编译无错,也可以运行,但窗口总是黑的,无图像。有人遇到过这个问题吗?怎么解决的呢? 运行结果截图: 附代码: /* 程序名称:laplace.c 功能:从摄像头或者AVI文件中得到视频流,对视频流进行边缘检测,并输出结果。 */ #include "cv.h" #include "highgui.h" #include <ctype.h> #include <stdio.h> int main( int argc, char** argv ) { IplImage* laplace = 0; IplImage* colorlaplace = 0; IplImage* planes[3] = { 0, 0, 0 }; // 多个图像面 CvCapture* capture = 0; // 下面的语句说明在命令行执行程序时,如果指定AVI文件,那么处理从 // AVI文件读取的视频流,如果不指定输入变量,那么处理从摄像头获取 // 的视频流 if( argc == 1 || (argc == 2 && strlen(argv[1]) == 1 && isdigit(argv[1][0]))) capture = cvCaptureFromCAM( argc == 2 ? argv[1][0] - '0' : 0 ); else if( argc == 2 ) capture = cvCaptureFromAVI( argv[1] ); if( !capture ) { fprintf(stderr,"Could not initialize capturing...\n"); return -1; } cvNamedWindow( "Laplacian", 0 ); // 循环捕捉,直到用户按键跳出循环体 for(;;) { IplImage* frame = 0; int i; frame = cvQueryFrame( capture ); if( !frame ) break; if( !laplace ) { for( i = 0; i < 3; i++ ) planes[i] = cvCreateImage( cvSize(frame->width,frame->height), 8, 1 ); laplace = cvCreateImage( cvSize(frame->width,frame->height), IPL_DEPTH_16S, 1 ); colorlaplace = cvCreateImage( cvSize(frame->width,frame->height), 8, 3 ); } cvCvtPixToPlane( frame, planes[0], planes[1], planes[2], 0 ); for( i = 0; i < 3; i++ ) { cvLaplace( planes[i], laplace, 3 ); // 3: aperture_size cvConvertScaleAbs( laplace, planes[i], 1, 0 ); // planes[] = ABS(laplace) } cvCvtPlaneToPix( planes[0], planes[1], planes[2], 0, colorlaplace ); colorlaplace->origin = frame->origin; cvShowImage("Laplacian", colorlaplace ); if( cvWaitKey(10) >= 0 ) break; } cvReleaseCapture( &capture ); cvDestroyWindow("Laplacian"); return 0; }
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
xiaobing307机器人#1 · 2011/2/28
我去,换了驱动就好了
lclc413机器人#2 · 2011/3/3
硬件。。。 【 在 xiaobing307 (小兵) 的大作中提到: 】 : 我去,换了驱动就好了
encoreway机器人#3 · 2011/3/13
恩 以前在linux下边出过问题 也是驱动的事儿
cv2012机器人#4 · 2012/10/8
哥们,你这个方法貌似不是所有win7都能解决的。
fan81657788机器人#5 · 2013/4/2
4月9号下午一点半在教三519有关于opencv opencl等系列的讲座,欢迎参加!