博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
OpenCV学习记录之摄像头调用
阅读量:6073 次
发布时间:2019-06-20

本文共 978 字,大约阅读时间需要 3 分钟。

关于opencv调用摄像头的问题主要是因为摄像头的打开有延时。在显示图像前,要用if语句判断图像是否存在。(否则会报错)

具体的:教程里的源程序,将if条件句里,break去掉,并增加else语句。

 

 

[cpp]   
 
  1. #include<opencv2/opencv.hpp>   
  2. #include<cv.h>  
  3.    
  4. using namespace cv;   
  5. using namespace std;  
  6. //-----------------------------------【main()函数】--------------------------------------------  
  7. //                描述:控制台应用程序的入口函数,我们的程序从这里开始  
  8. //-------------------------------------------------------------------------------------------------  
  9. //stringname = "我的摄像头";  
  10. int main( )   
  11. {   
  12. //【1】从摄像头读入视频  
  13. VideoCapture capture(0);//若测试摄像头有没有打开,/*if(!capture.isOpened())                {cout<< "cannot open the camera.";cin.get();return -1;}*  
  14.    
  15. Mat edges; //定义一个Mat变量,用于存储每一帧的图像  
  16. //【2】循环显示每一帧  
  17. while(1)  
  18. {  
  19. Mat frame; //定义一个Mat变量,用于存储每一帧的图像  
  20. capture >> frame;  //读取当前帧                          
  21. if(frame.empty())  
  22. {  
  23. printf("--(!) No captured frame -- Break!");  
  24. //break;                  
  25. }  
  26. else  
  27. {  
  28. cvtColor(frame, edges, CV_BGR2GRAY);//彩色转换成灰度  
  29. blur(edges, edges, Size(7, 7));//模糊化  
  30. Canny(edges, edges, 0, 30, 3);//边缘化  
  31. imshow("读取被边缘后的视频", frame); //显示当前帧  
  32.    
  33. }  
  34.    
  35. waitKey(30); //延时30ms  
  36. }  
  37. return0;      
  38. }   

转载地址:http://nlngx.baihongyu.com/

你可能感兴趣的文章
反射操作公共成员变量
查看>>
小孩的linux
查看>>
CSS3 transforms 3D翻开
查看>>
java基础---->正则表达式
查看>>
2.2013/06/13_log(n)+1
查看>>
关于加载iframe时进度条不消失的问题
查看>>
poj 3984迷宫问题【广搜】
查看>>
oracle ORA-01840:输入值对于日期格式不够长
查看>>
python基础知识~logger模块
查看>>
SIP入门(二):建立SIPserver
查看>>
Servlet3.0的异步
查看>>
WebService连接postgresql( 失败尝试)
查看>>
从头认识java-13.11 对照数组与泛型容器,观察类型擦除给泛型容器带来什么问题?...
查看>>
Python-MacOSX下SIP引起的pip权限问题解决方案(非取消SIP机制)
查看>>
从MFQ方法到需求分析
查看>>
android.view.WindowManager$BadTokenException: Unable to add window
查看>>
HDU5012:Dice(bfs模板)
查看>>
iphone openssh
查看>>
Linux下MEncoder的编译
查看>>
Xamarin使用ListView开启分组视图Cell数据展示bug处理
查看>>