linux系统下用opencv打开摄像头的程序 什么都不懂,快疯了,我用的是eclipse C++,然后装好了Opencv,到底怎么把摄像头打开,有木有大神来帮帮我~~是linux系统下的LinuxOpenCV摄像头EclipseC++ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 linux下opencv 驱动多个摄像头1 #include "cv.h" 2 #include "highgui.h" 3 4 #include <stdio.h> 5 #include <stdlib.h> 6 7 #ifdef _EiC 8 #define WIN32 9 #endif12 13 int main( )14 {15 CvCapture* capture = 0;16 IplImage *frame, *frame_copy = 0;17 CvCapture* capture2 = 0;18 IplImage *frame2, *frame_copy2 = 0;19 20 capture = cvCaptureFromCAM(-1);21 capture2 = cvCaptureFromCAM(-1);22 23 24 if( capture)25 26 {27 for(;;)28 {29 if( !cvGrabFrame( capture ))30 break;31 frame = cvRetrieveFrame( capture );32 if( !frame )33 break;34 if( !frame_copy )35 frame_copy = cvCreateImage( cvSize(frame->width,frame->height),36 IPL_DEPTH_8U, frame->nChannels );37 if( frame->origin == IPL_ORIGIN_TL )38 cvCopy( frame, frame_copy, 0 );39 else40 cvFlip( frame, frame_copy, 0 );41 42 cvNamedWindow("cam",1);43 cvShowImage("cam",frame_copy);44 45 46 47 ////////////////////////////////////48 if( !cvGrabFrame( capture2 ))49 break;50 frame2 = cvRetrieveFrame( capture2 );51 if( !frame2 )52 break;53 if( !frame_copy2 )54 frame_copy2 = cvCreateImage( cvSize(frame2->width,frame2->height),55 IPL_DEPTH_8U, frame2->nChannels );56 if( frame2->origin == IPL_ORIGIN_TL )57 cvCopy( frame2, frame_copy2, 0 );58 else59 cvFlip( frame2, frame_copy2, 0 );60 61 cvNamedWindow("cam2",1);62 cvShowImage("cam2",frame_copy2);63 64 if( cvWaitKey( 10 ) >= 0 )65 break;66 67 }68 69 cvReleaseImage( &frame_copy );70 cvReleaseCapture( &capture );71 cvReleaseImage( &frame_copy2 );72 cvReleaseCapture( &capture2 );73 }74 75 76 } 通过多次的调用cvCaptureFromCAM来实现驱动多个摄像头。 串口通信 传送其他类型文件 VB调用DLL的问题,请教各位! mfc如何在游戏中添加一个聊天程序 请教关于模板继承的问题? 怎么实现鼠标画出一个矩形,象windows中的文件选择时那样? 应界毕业高级程序员到深圳找工作状况会如何? vc 从文件中读取信息到struct中的问题 征求一程序设计思路 窗体鼠标事件。 今年刚毕业,菜鸟级,现在公司里用VC开发win CE的应用程序,请大家帮忙看看。 接收多个客户端屏幕信息如何在服务器上显示 客户区指定区域放大
1 #include "cv.h"
2 #include "highgui.h"
3
4 #include <stdio.h>
5 #include <stdlib.h>
6
7 #ifdef _EiC
8 #define WIN32
9 #endif
12
13 int main( )
14 {
15 CvCapture* capture = 0;
16 IplImage *frame, *frame_copy = 0;
17 CvCapture* capture2 = 0;
18 IplImage *frame2, *frame_copy2 = 0;
19
20 capture = cvCaptureFromCAM(-1);
21 capture2 = cvCaptureFromCAM(-1);
22
23
24 if( capture)
25
26 {
27 for(;;)
28 {
29 if( !cvGrabFrame( capture ))
30 break;
31 frame = cvRetrieveFrame( capture );
32 if( !frame )
33 break;
34 if( !frame_copy )
35 frame_copy = cvCreateImage( cvSize(frame->width,frame->height),
36 IPL_DEPTH_8U, frame->nChannels );
37 if( frame->origin == IPL_ORIGIN_TL )
38 cvCopy( frame, frame_copy, 0 );
39 else
40 cvFlip( frame, frame_copy, 0 );
41
42 cvNamedWindow("cam",1);
43 cvShowImage("cam",frame_copy);
44
45
46
47 ////////////////////////////////////
48 if( !cvGrabFrame( capture2 ))
49 break;
50 frame2 = cvRetrieveFrame( capture2 );
51 if( !frame2 )
52 break;
53 if( !frame_copy2 )
54 frame_copy2 = cvCreateImage( cvSize(frame2->width,frame2->height),
55 IPL_DEPTH_8U, frame2->nChannels );
56 if( frame2->origin == IPL_ORIGIN_TL )
57 cvCopy( frame2, frame_copy2, 0 );
58 else
59 cvFlip( frame2, frame_copy2, 0 );
60
61 cvNamedWindow("cam2",1);
62 cvShowImage("cam2",frame_copy2);
63
64 if( cvWaitKey( 10 ) >= 0 )
65 break;
66
67 }
68
69 cvReleaseImage( &frame_copy );
70 cvReleaseCapture( &capture );
71 cvReleaseImage( &frame_copy2 );
72 cvReleaseCapture( &capture2 );
73 }
74
75
76 }
通过多次的调用cvCaptureFromCAM来实现驱动多个摄像头。