OpenCV调用摄像头录像并保存下来
分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow
也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!
http://www.cnblogs.com/lingshaohu/archive/2011/12/16/2290017.html
网上很多都说录制了之后视频文件为0k,或者是打不开。
其实,这个原因主要与2方面有关:
1. OpenCV生成的视频的编码格式有关。
2. 非法退出录取有关(我用200次循环解决。或者可以用Timer。或者用其他键处理)
我个人推荐的解决方法如下:
1.下载一个XviD编码器并安装。
2.用以下代码进行测试:
#include "cv.h"#include "cxcore.h"#include "highgui.h"#include <iostream> using namespace std;int main(){ CvCapture* capture=cvCaptureFromCAM(-1); CvVideoWriter* video=NULL; IplImage* frame=NULL; int n; if(!capture) //如果不能打开摄像头给出警告 { cout<<"Can not open the camera."<<endl; return -1; } else { frame=cvQueryFrame(capture); //首先取得摄像头中的一帧 video=cvCreateVideoWriter("camera.avi", CV_FOURCC('X', 'V', 'I', 'D'), 25, cvSize(frame->width,frame->height)); //创建CvVideoWriter对象并分配空间 //保存的文件名为camera.avi,编码要在运行程序时选择,大小就是摄像头视频的大小,帧频率是32 if(video) //如果能创建CvVideoWriter对象则表明成功 { cout<<"VideoWriter has created."<<endl; } cvNamedWindow("Camera Video",1); //新建一个窗口 int i = 0; while(i <= 200) // 让它循环200次自动停止录取 { frame=cvQueryFrame(capture); //从CvCapture中获得一帧 if(!frame) { cout<<"Can not get frame from the capture."<<endl; break; } n=cvWriteFrame(video,frame); //判断是否写入成功,如果返回的是1,表示写入成功 cout<<n<<endl; cvShowImage("Camera Video",frame); //显示视频内容的图片 i++; if(cvWaitKey(2)>0) break; //有其他键盘响应,则退出 } cvReleaseVideoWriter(&video); cvReleaseCapture(&capture); cvDestroyWindow("Camera Video"); } return 0; }
给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow
OpenCV调用摄像头录像并保存下来相关推荐
- python3 + opencv 调用摄像头录像后保存视频
python3 + opencv 调用摄像头录像后保存视频 #!/usr/bin/python3 import cv2## opening videocapture cap = cv2.VideoCa ...
- opencv调用摄像头批量抓取图片
Opencv初学 函数学习 安装opencv opencv调用摄像头截图以及保存 利用opencv抓取600张图片 编辑器:Anaconda python3.6 函数学习 内容比较零散,持续更新中 安 ...
- 使用opencv调用摄像头然后录制视频和保存文件
用 OpenCV 开发经常用到摄像头,从 Camera获取图像后用OpenCV的算法进行处理,但是一般我们处理完图像之后,还需要将视频保存下来,比如保存成avi.mp4等格式.怎么保存呢?其实Open ...
- Python+opencv调用摄像头实现拍照并保存
Python+opencv调用摄像头实现拍照并保存 安装 OpenCV库 详细源码 注意事项 安装 OpenCV库 pip install opencv-python 详细源码 调用外接摄像头实现拍照 ...
- linux中cv调用摄像头,ubuntu中opencv调用摄像头
ubuntu中opencv调用摄像头 ubuntu中opencv调用摄像头 文章目录 一.Ubuntu中安装opencv 二.关于Linux如何开启摄像头 1.安装VMvareTools,这个是真的强 ...
- python人脸识别截图_Python OpenCV调用摄像头检测人脸并截图
本文实例为大家分享了Python OpenCV调用摄像头检测人脸并截图的具体代码,供大家参考,具体内容如下 注意:需要在python中安装OpenCV库,同时需要下载OpenCV人脸识别模型haarc ...
- python opencv打开摄像头,截图保存
python opencv打开摄像头,截图保存,学习结果如下: 使用python打开摄像头 import cv2 cap = cv2.VideoCapture(0) #设置摄像头 0是默认的摄像头 如 ...
- opencv-python——调用摄像头录制并保存视频
调用摄像头录制并保存视频 import numpy as np import cv2cap = cv2.VideoCapture(0) fourcc = cv2.VideoWriter_fourcc( ...
- 使用OpenCV调用摄像头检测人脸并截图-Python
注意:需要在python中安装OpenCV库,同时需要下载OpenCV人脸识别模型haarcascade_frontalface_alt.xml,模型可在https://github.com/Time ...
- Python进阶,使用 opencv 调用摄像头进行拍照
opencv 支持 Python 版本的模块叫作 opencv-p hon ,可直接使用 pip install opencv-python 令进行安装,但常常会因为网络等问题导致失 ...
最新文章
- python字符串常量_python教程---字符串常量ascii_letters、punctuation、digits、whitespace等...
- sap系统工单关闭_什么样的系统算是坑
- php 开启mysql_php如何开启mysqli扩展
- 专业网络推广浅析蜘蛛对网站有抓取但没收录的现象
- 有道精品课python-网易词典在线翻译
- 解惑(一) ----- super(XXX, self).__init__()到底是代表什么含义
- 【调试工具】之IOS真机测试
- java udp 流量控制_基于UDP传输协议的实现分析之流量和拥塞控制
- 北京理工大学语音识别技术.ppt
- 30多个最有用的Web开发框架
- I2C总线协议详解(特点、通信过程、典型I2C时序)
- 单片机炫彩灯实训报告_基于51单片机的流水灯实训报告.doc
- 微信卡券的创建、领取、核销
- php如何生成一年的日历表_PHP生成日历
- ERP系统,是管理意志的体现
- Matlab 导入并显示png格式的透明图片
- 网络安全意识 | 以人为本,安全意识工作大有可为
- [编译原理]DO-WHILE循环语句的翻译程序设计(LR(1)方法、输出四元式)C++实现
- 经典算法之左边界二分查找法(俗称左边界二分搜索法)
- Interface Trip Stop - SRS 报错