Opencv VideoCapture打开摄像头接口讲解

4人阅读 评论(0) 收藏 举报
分类:

VideoCapture打开摄像头接口讲解

  1. VideoCapture
  2. bool open (int index)
  3. VideoCapture cap(index)
  4. open(int cameraNum, int apiPreference)

源码
cap_ffmpeg_impl.hpp

VideoCapture打开视频流文件

  1. bool open (const String& filename)
  2. VideoCapture cap(const String & filename)
  3. bool open(const String & filename, int apiPreference)

VideoCapture 关闭和空间释放

  1. 关闭和空间释放
  2. ~VideoCapture
  3. release()

读取一帧视频

read(OutputArray image)//cap.cpp
bool grab()   //读取并解码
virtual bool retrieve(OutputArray image, int flag = 0);//图像色彩转化
vc >> mat

bool VideoCapture::read(OutputArray image)
{
    CV_INSTRUMENT_REGION()

    if(grab())
        retrieve(image);
    else
        image.release();
    return !image.empty();
}


#include<iostream>
#include<stdio.h>
#include <opencv2/core.hpp>
#include <opencv2/imgcodecs.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/imgproc.hpp>
#include <opencv2/videoio.hpp>
using namespace cv;
using namespace std;

int main(int argc, char *argv)
{
    VideoCapture video;
    video.open("1.mp4");
    if (!video.isOpened())
    {
        cout << "open video failed!" << endl;
        getchar();
        return -1;
    }
    cout << "open video success!" << endl;
    namedWindow("video");
    Mat frame;
    for (;;)
    {
        if (!video.read(frame))
        {
            break;
        }
        if (frame.empty()) break;
        imshow("video", frame);
        waitKey(5);
    }
    getchar();


    return 0;
}


#include<iostream>
#include<stdio.h>
#include <opencv2/core.hpp>
#include <opencv2/imgcodecs.hpp>
#include <opencv2/highgui.hpp>
#include <opencv2/imgproc.hpp>
#include <opencv2/videoio.hpp>
using namespace cv;
using namespace std;

int main(int argc, char *argv)
{
    VideoCapture video;
    video.open("1.mp4");
    if (!video.isOpened())
    {
        cout << "open video failed!" << endl;
        getchar();
        return -1;
    }
    cout << "open video success!" << endl;
    namedWindow("video");
    Mat frame;
    for (;;)
    {
        //if (!video.read(frame))
        //{
        //  break;
        //}
        //读帧与解码
        if (!video.grab())
        {
            break;
        }
        //转换颜色格式
        if (!video.retrieve(frame))
        {
            break;
        }
        if (frame.empty()) break;
        imshow("video", frame);
        waitKey(5);
    }
    getchar();


    return 0;
}
查看评论

OpenCV

-
  • 1970年01月01日 08:00

【OpenCV】VideoCapture单步调试能够成功打开摄像头,但执行时却打不开

int main() { VideoCapture cap(0); if (!cap.isOpened()) { cout
  • u012330429
  • u012330429
  • 2015-02-03 13:38:54
  • 1894

OpenCV之VideoCapture的使用——打开网络摄像头/图像序列

OpenCV中的VideoCapture不仅可以打开视频、usb摄像头,还可以做很多事,例如读取流媒体文件,网络摄像头,图像序列等。OpenCV如何读取usb摄像头可以参考本人的另外一篇,地址如下:点...
  • u011028345
  • u011028345
  • 2017-07-19 16:54:28
  • 2034

【opencv学习之十七】摄像头及视频操作VideoCapture

opencv操作摄像头和视频都需要用VideoCapture类;话不多说吧,内容都在代码和注释里(Qt+opencv3); 1、打开摄像头并修改保存 //1.打开摄像头 void VideoOpe...
  • abcvincent
  • abcvincent
  • 2017-11-30 21:03:12
  • 807

opencv中VideoCapture的使用——打开网络摄像头/图像序列

OpenCV中的VideoCapture不仅可以打开视频、usb摄像头,还可以做很多事,例如读取流媒体文件,网络摄像头,图像序列等。 OpenCV如何读取usb摄像头可以参考本人的另外一篇,地址如下:...
  • tfygg
  • tfygg
  • 2015-12-25 19:14:06
  • 19126

opencv3_java 启动摄像头 VideoCapture Videoio

启动摄像头 VideoCapture Videoio package opencv_java_demo; import javax.swing.JFrame; import javax.s...
  • sileixinhua
  • sileixinhua
  • 2017-05-30 17:28:25
  • 2000

opencv VideoCapture调用摄像头无响应问题

利用opencv videocapture类型对象可以开启摄像头,参数设为0开启笔记本内置摄像头,参数1开启外置摄像头。。。有时候开启内置摄像头之后程序没等摄像头打开就一闪而过,是因为有些笔记本的内置...
  • lgfun
  • lgfun
  • 2016-04-08 16:57:34
  • 3382

opencv 2.4.13 videoCapture无法读取视频

改用读取摄像头时,可以获取到照片和视频信息。 最后只能上opencv官方网站,查看issue和问题列表(没打算跟踪C语言代码),发现videocapture-doesnt-work-with-v...
  • u012371090
  • u012371090
  • 2017-10-28 20:28:41
  • 171

opencv读取多个摄像头

说明:今天蹭了机器视觉课程,讲到了stereopsis,立体视觉,讲到了关于通过多个摄像头获取object的depth信息的事情,因为想到从来没有试过打开多个摄像头进行过处理,这次进行了测试,这里小小...
  • cpongo3
  • cpongo3
  • 2015-11-19 17:58:59
  • 2866

Opencv打开内置摄像头

Opencv中VideoCapture是专门用来处理视频文件或者摄像头视频流的类,详细的说明和用法可以参考Opencv2.4.13的说明文档:点击打开链接 使用VideoCapture打开内置摄...
  • dcrmg
  • dcrmg
  • 2016-08-13 20:31:17
  • 7589
    个人资料
    持之以恒
    等级:
    访问量: 7764
    积分: 298
    排名: 26万+
    文章存档
    最新评论