opencv调用USB工业相机

来源:互联网 发布:mysqldump备份数据库 编辑:程序博客网 时间:2024/06/11 03:22

opencv  VideoCapture capture 摄像头

环境 win7+VS2010+opencv2.4.9


// Camera3.cpp : 定义控制台应用程序的入口点。

//

 

#include "stdafx.h"

#include <opencv2/opencv.hpp>

#include <iostream>

using namespace cv;

using namespace std;

 

int main()

{

//声明视频读入类

VideoCapture capture;

//从摄像头读入视频 0表示从摄像头读入

capture.open(0);

 

if (!capture.isOpened())//先判断是否打开摄像头

{

return -1;

}

 

namedWindow("win");

 

while (1) {

Mat cap;

//读取当前帧

capture >> cap;

if (!cap.empty())

imshow("win",cap); //若当前帧捕捉成功,显示

else

cout << "can not ";//最后一帧的处理(空的处理)

waitKey(30); //延时30毫秒

}

 

return 0;

}

// Camera2.cpp : 定义控制台应用程序的入口点。

//

#include "stdafx.h"

#include <opencv2\opencv.hpp>  

using namespace cv;  

 

//-----------------------------------【main( )函数】--------------------------------------------

//描述:控制台应用程序的入口函数,我们的程序从这里开始

//-------------------------------------------------------------------------------------------------

int main( )  

{  

//【1】从摄像头读入视频

VideoCapture capture(0);//0,1,-1  组合continue;//break;

 

//【2】循环显示每一帧

while(1)  

{  

Mat frame;  //定义一个Mat变量,用于存储每一帧的图像

capture>>frame;  //读取当前帧

if(frame.empty() )

continue;

//break;不可以  组合0,1,-1

//最后一帧的处理(空的处理)

imshow("读取视频",frame);  //显示当前帧

waitKey(30);  //延时30ms

}  

return 0;     

}  


 

// Camera2.cpp : 定义控制台应用程序的入口点。

//

#include "stdafx.h"

#include <opencv2\opencv.hpp>  

using namespace cv;  

 

//-----------------------------------【main( )函数】--------------------------------------------

//描述:控制台应用程序的入口函数,我们的程序从这里开始

//-------------------------------------------------------------------------------------------------

int main( )  

{  

//【1】从摄像头读入视频

VideoCapture capture(0);//0,1,-1  组合continue;//break;

 

//【2】循环显示每一帧

while(1)  

{  

Mat frame;  //定义一个Mat变量,用于存储每一帧的图像

capture>>frame;  //读取当前帧

if(frame.empty() )

continue;

//break;不可以  组合0,1,-1

//最后一帧的处理(空的处理)

imshow("读取视频",frame);  //显示当前帧

waitKey(30);  //延时30ms

}  

return 0;     

}  

if(frame.empty() )

continue;//break;不可以 组合0,1,-1

VideoCapture capture(0);//0,1,-1  组合continue;//break;

 



if( frame.empty() )
break;
可以吗

VideoCapture capture(0);
if( frame.empty() )
continue;
可以,但不知道因为啥啊,continue;是关键
谢谢大家

 

// Camera3.cpp : 定义控制台应用程序的入口点。

//

 

#include "stdafx.h"

#include <opencv2\opencv.hpp>  

using namespace cv;  

int main( )  

{  

VideoCapture capture(0);

 

while (1)

{

Mat frame;

if (capture.isOpened())

{

capture >> frame;

imshow("最终结果",frame);

waitKey(30);

}

 

}

return(0);

}

// Camera3.cpp : 定义控制台应用程序的入口点。

//

 

#include "stdafx.h"

#include <opencv2/opencv.hpp>

#include <iostream>

using namespace cv;

using namespace std;

 

int main()

{

//声明视频读入类

VideoCapture capture;

//从摄像头读入视频 0表示从摄像头读入

capture.open(0);

 

if (!capture.isOpened())//先判断是否打开摄像头

{

return -1;

}

 

namedWindow("win");

 

while (1) {

Mat cap;

//读取当前帧

capture >> cap;

if (!cap.empty())

imshow("win",cap); //若当前帧捕捉成功,显示

else

cout << "can not ";//最后一帧的处理

waitKey(30); //延时30毫秒

}

 

return 0;

}

1 0
原创粉丝点击