qt5.8 + opencv3.2读取摄像头视频 -----初试
来源:互联网 发布:淘宝网二手摄像头 编辑:程序博客网 时间:2024/05/21 15:09
简单的读取摄像头程序,摄像头为笔记本自带,过程中问题总结:
1.使用CvCapture 结构获取摄像头视频 cvQueryFrame(capture)-----读到数据为IplImage格式
网上copy的代码
cvNamedWindow( "Example2", CV_WINDOW_AUTOSIZE );//创建窗口,(名字,默认大小) IplImage * frame = new IplImage;//申请IplImage类型指针,就是申请内存空间来存放每一帧图像 CvCapture *capture;// 视频获取结构, 用来作为视频获取函数的一个参数 //capture = cvCreateFileCapture("F:/qt pro/openCV/111.avi");//从avi格式文件获取视频流 capture = cvCreateCameraCapture(0);//打开摄像头,从摄像头中获取视频 while(1) { frame = cvQueryFrame( capture );// 从摄像头中抓取并返回每一帧 if( !frame ) break; cvShowImage( "Example2", frame );//在窗口上显示每一帧 char c = cvWaitKey(25);//延时,每秒钟约25帧;符合人眼观看速度; if( c == 27 ) break;//由于是死循环,而且没有控制台,当按下键盘esc键,退出循环; } cvReleaseCapture( &capture );//释放内存; cvDestroyWindow( "Example2" );//销毁窗口 return 0;这样能够打开摄像头,但是不能够获取到数据,显示画面为黑,但是使用cvCreateFileCapture("F:/qt pro/openCV/111.avi")可以正常显示
具体原因未知,网络上有各种说法,有说与数据位数有关,需要转换,但是试了也不行。也有说是与vfw有关,win7下qt不能使用。试了多次始终没有成功
2.VideoCapture类获取摄像头视频------读到数据为mat格式
网上copy的代码
VideoCapture capture;//声明视频读入类 capture.open(0);//从摄像头读入视频 0表示从摄像头读入 if (!capture.isOpened())//先判断是否打开摄像头 { cout<<"can not open"; cin.get(); return -1; } namedWindow(name); while (1) { Mat cap;//定义一个Mat变量,用于存储每一帧的图像 capture>>cap;//读取当前帧 if (!cap.empty())//判断当前帧是否捕捉成功 **这步很重要 imshow(name, cap);//若当前帧捕捉成功,显示 else cout<<"can not "; waitKey(30);//延时30毫秒 } return 0;
这种方法可以读到视频并显示。再返回去试试上面的方法,结果还是失败。。。。。。
阅读全文
0 0
- qt5.8 + opencv3.2读取摄像头视频 -----初试
- 2、读取视频、读取摄像头
- opencv3 采集摄像头的画面canny化,或者读取视频
- VS2013+QT5+opencv3.1显示摄像头
- QT5.9.1与opencv3.3读取图片(2)
- Qt5.8&opencv3.2&人脸识别
- Win10+Qt5.8+OpenCV3.2配置过程
- 《OpenCV》Part10 OpenCV3.1.0 openCV读取摄像头并保存为.avi视频
- opencv(2)---摄像头/视频读取_写入
- OpenCV3.2+Qt5.8.0+Win10配置和使用----(5)打开笔记本摄像头
- QT5.9.1与opencv3.3读取图片
- vs2015+opencv3.0读取视频
- Java使用OpenCV3.2实现视频读取与播放
- opencv3/C++视频读取、视频写入
- OpenCV3.2+Qt5.8.0+Win10开发视频监控系统----(2)Qt之中文显示
- OpenCV3.2+Qt5.8.0+Win10开发视频监控系统----(1)Qt之设置应用程序图标
- ubuntu 14 下配置 openCV3.2 和 qt5.8
- QT5.8+OpenCV3.2的安装与配置
- [bzoj2429][最小生成树]聪明的猴子
- Just Save For Later Use
- web性能优化一
- div带箭头提示框实例
- Codeforces Round #448 (Div. 2)B
- qt5.8 + opencv3.2读取摄像头视频 -----初试
- MindManager 2018有趣的HTML5互动演示
- docker 参数
- 数据结构(堆排序和归并排序)
- Android Studio下对资源进行分包
- 14个你不知道的JavaScript调试技巧
- sed命令详解
- 前端js、jQuery实现日期格式化、字符串格式化
- 我国大数据战略实施面临的五大挑战