opencv启动USB摄像头并保存图片

原创 2015年11月18日 14:43:56

网上有许多打开摄像头的程序,但是大都是针对旧版本的opencv,并且并不带有截取图片的功能,结合大牛的博客和书本教材,写了个采集摄像头样本代码。功能不是很完善,有瑕疵,大牛勿喷!

#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/core/core.hpp>
#include<iostream>
#include <string>
#include <sstream>
using namespace cv;
using namespace std;
int main()
{
VideoCapture capture(0);
//设置摄像头
capture.set( CV_CAP_PROP_FRAME_WIDTH,1280);
capture.set( CV_CAP_PROP_FRAME_HEIGHT,720);
//确认是否成功打开摄像头
if(!capture.isOpened())
{
cout<<"打开摄像头失败,退出"<<endl;
exit(-1);
}
int i=0;
std::string b="yangben";//保存图片名称
std::string ext=".jpg";
Mat frame(Size(1280,720),CV_8UC3);
while (1)
{

       if (!capture.read(frame))
    break;
capture>>frame;
if (!frame.empty())   //很重要,确保摄像头已启动

 {
  imshow("window", frame);
std::string name(b);
std::ostringstream ss; 
ss << i; 
name+= ss.str();
i++;
name+=ext;
std::cout << name <<std::endl;
cv::imwrite(name,frame);
}
if( waitKey(30)>=0 ) break;//延时时间可调
}
return 0;
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Linux USB摄像头采集保存bmp图片

操作摄像头是基于V4L2提供的系统调用,步骤大体如下:1、打开设备 open2、查询设备信息和能力,用到的结构体为struct v4l2_capability 用到的ioctl命令为 VIDIOC...

opencv调用摄像头截图保存图片

opencv调用摄像头截图保存图片

基于OPENCV3与QT5.6实现摄像头拍照并保存图片

本文的编程环境是VS2013配置的QT5.6和OPENCV3.0。实现的功能是,通过OPENCV3开启摄像头,然后实时拍照并将照片保存起来。好了不说了直接上代码。

图像识别(8)——使用OpenCV预览USB摄像头+曝光设置

博主QQ:1356438802 QQ群:473383394——UVC&OpenCV473383394 平台:Win7 64bits + Visual Studio 2012 + OpenCV...

Linux环境下使用V4L2+opencv以MJPEG格式读取USB摄像头并实时显示

转眼间,V4L2已经搞了很长时间,从最开始的一窍不通,到后来的渐渐熟悉,从最开始照猫画虎的使用YUYV格式之间转换,到后来使用MJPEG格式读取,中间颇有周折。趁任务完成间隙,来简单总结下V4L2的使...

分别使用OpenCV2和MATLAB获取USB摄像头

介绍了分别使用opencv2及matlab获取 USB webcam 进行视频显示,抓拍图像及保存的程序,一些微小的工作,希望能帮助大家!
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)