OpenCV类VideoCapture构造函数中参数apiPreference的可选值及意义
OpenCV类VideoCapture构造函数中参数apiPreference的可选值及意义
OpenCV的类VideoCapture有三种构造函数,原型如下。
C++:
cv::VideoCapture::VideoCapture ()
cv::VideoCapture::VideoCapture (const String & filename,int apiPreference = CAP_ANY )
cv::VideoCapture::VideoCapture (int index,int apiPreference = CAP_ANY )
Python:
<VideoCapture object> = cv.VideoCapture()
<VideoCapture object> = cv.VideoCapture(filename[, apiPreference] )
<VideoCapture object> = cv.VideoCapture(index[, apiPreference] )
从上面的原型可以看出,第二种和第三种原型都有参数apiPreference,它用于选择视频的API接口规范。
参数apiPreference的可选值比较多,官方文档大家可参考下面的链接:
https://docs.opencv.org/4.1.2/d4/d15/group__videoio__flags__base.html#ga023786be1ee68a9105bf2e48c700294d
这里昊虹君根据官方文档的描述,给大家介绍下各可选值的意义。
CAP_ANY
Python: cv.CAP_ANY
CAP_ANY代表自动检测视频文件的API接口规范。
CAP_VFW
Python: cv.CAP_VFW
官方描述:Video For Windows (obsolete, removed).
CAP_VFW代表视频文件的API接口规范为Windows视频文件规范,不过这个规范已经被OpenCV淘汰废除。
CAP_V4L
Python: cv.CAP_V4L
官方描述:V4L/V4L2 capturing support.
V4L2是Video for linux2的简称,为linux中关于视频设备的内核驱动。
CAP_V4L2
Python: cv.CAP_V4L2
CAP_V4L2和CAP_V4L 的意义一样。
CAP_FIREWIRE
Python: cv.CAP_FIREWIRE
官方描述:IEEE 1394 drivers.
CAP_FIREWIR代表视频文件的API接口规范为IEEE1394驱动规范。IEEE1394接口是苹果公司开发的串行标准,又称火线接口(firewire。
IEEE1394支持外设热插拔,可为外设提供电源,省去了外设自带的电源,能连接多个不同设备,支持同步数据传输。
CAP_FIREWARE
Python: cv.CAP_FIREWARE
CAP_FIREWARE和CAP_FIREWIRE的意义一样。
CAP_IEEE1394
Python: cv.CAP_IEEE1394
CAP_IEEE1394和CAP_FIREWIRE的意义一样。
CAP_DC1394
Python: cv.CAP_DC1394
CAP_DC1394和CAP_FIREWIRE的意义一样。
CAP_CMU1394
Python: cv.CAP_CMU1394
CAP_CMU1394和CAP_FIREWIRE的意义一样。
CAP_QT
Python: cv.CAP_QT
官方描述:QuickTime (obsolete, removed).
QuickTime是苹果公司开发的多媒体技术架构,不过这是已经淘汰废除的参数取值。
CAP_UNICAP
Python: cv.CAP_UNICAP
官方描述:Unicap drivers (obsolete, removed) .
CAP_UNICAP是一个已经淘汰废除的参数取值,具体Unicap drivers是个什么东西,昊虹君也不知道。有知道的朋友可以给昊虹君说一下。
CAP_DSHOW
Python: cv.CAP_DSHOW
官方描述:DirectShow (via videoInput).
CAP_DSHOW的详细意义请参看本博文的原版,链接如下:
https://www.hhai.cc/thread-132-1-1.html
CAP_PVAPI
Python: cv.CAP_PVAPI
官方描述:PvAPI, Prosilica GigE SDK.
Prosilica是一家加拿大的公司,是工业相机世界领导者,GigE是他制定的。GigE用来实现在机器视觉领域利用千兆以太网接口进行图像的高速传输。所以这个参数的意义是按工业相机GigE的标准获取视频。
CAP_OPENNI
Python: cv.CAP_OPENNI
官方描述:OpenNI (for Kinect).
OpenNI(开放自然交互)是一个多语言,跨平台的框架,它定义了编写应用程序,并利用其自然交互的API。OpenNI的主要目的是要形成一个标准的API,来搭建视觉和音频传感器与视觉和音频感知中间件通信的桥梁。
Kinect是微软在2009年6月2日的E3大展上,正式公布的XBOX360体感周边外设。
CAP_OPENNI2
Python: cv.CAP_OPENNI2
官方描述:OpenNI2 (for Kinect).
明白了上面CAP_OPENNI 的意义,就应该明白这个的意义了,所以就不多说了。
CAP_OPENNI_ASUS
Python: cv.CAP_OPENNI_ASUS
官方描述:OpenNI (for Asus Xtion).
OpenNI(开放自然交互)是一个多语言,跨平台的框架,它定义了编写应用程序,并利用其自然交互的API。OpenNI的主要目的是要形成一个标准的API,来搭建视觉和音频传感器与视觉和音频感知中间件通信的桥梁。
Asus Xtion是华硕公司的深度感知摄像头及其相关技术。
CAP_OPENNI2_ASUS
Python: cv.CAP_OPENNI2_ASUS
官方描述:OpenNI2 (for Asus Xtion and Occipital Structure sensors).
明白了上面CAP_OPENNI_ASUS 的意义,就知道了这个的意义了,所以就不多说了。
CAP_ANDROID
Python: cv.CAP_ANDROID
官方描述:Android - not used.
为安卓系统保留的参数,目前未启用。
CAP_XIAPI
Python: cv.CAP_XIAPI
官方描述:XIMEA Camera API.
XIMEA 是德国的一家公司,专业生成工业相机。
CAP_AVFOUNDATION
Python: cv.CAP_AVFOUNDATION
官方描述:AVFoundation framework for iOS (OS X Lion will have the same API).
AVFoundation是苹果在iOS和OS X系统中用于处理基于时间的媒体数据的框架。
CAP_GIGANETIX
Python: cv.CAP_GIGANETIX
官方描述:Smartek Giganetix GigEVisionSDK.
Smartek是一家生产工业相机的德国公司,Giganetix是其生产的一种工业相机的名称,GigEVisionSDK是这款工业相机的SDK。
CAP_MSMF
Python: cv.CAP_MSMF
官方描述:Microsoft Media Foundation (via videoInput).
Microsoft Media Foundation是微软公司的新一代多媒体开发平台,用以取代原来的Directshow,为了满足现在多媒体播放的高清晰,高品质,颜色管理,以及充分利用硬件加速等功能而建立的新一代开发平台。
CAP_WINRT
Python: cv.CAP_WINRT
官方描述:Microsoft Windows Runtime using Media Foundation.
微软实时窗口,技术基础是Microsoft Media Foundation 。
CAP_INTELPERC
Python: cv.CAP_INTELPERC
官方描述:RealSense (former Intel Perceptual Computing SDK).
Intel公司的RealSense深度摄像头产品,就是之前的英特尔感知计算SDK。
CAP_REALSENSE
Python: cv.CAP_REALSENSE
官方描述:Synonym for CAP_INTELPERC.
CAP_REALSENSE 和 CAP_INTELPERC的意义一样。
CAP_GPHOTO2
Python: cv.CAP_GPHOTO2
官方描述:gPhoto2 connection.
gPhoto2是一个免费软件,提供了在类Unix系统上通过终端来控制数码相机的功能。
CAP_GSTREAMER
Python: cv.CAP_GSTREAMER
官方描述:GStreamer.
Gstreamer是一个支持Windows,Linux,Android, iOS的跨平台的多媒体框架,应用程序可以通过管道(Pipeline)的方式,将多媒体处理的各个步骤串联起来,达到预期的效果。每个步骤通过元素(Element)基于GObject对象系统通过插件(plugins)的方式实现,方便了各项功能的扩展。
CAP_FFMPEG
Python: cv.CAP_FFMPEG
官方描述:Open and record video file or stream using the FFMPEG library.
使用FFMPEG library找开视频文件或记录视频流。
CAP_IMAGES
Python: cv.CAP_IMAGES
官方描述:OpenCV Image Sequence (e.g. img_%02d.jpg).
打开OpenCV的序列图像。
CAP_ARAVIS
Python: cv.CAP_ARAVIS
官方描述:Aravis SDK.
Aravis视觉平台是一款是基于Glib/Gobject的库,用于使用工业摄像机进行视频采集。目前,它实现了工业相机使用的千兆以太网和USB3.0协议。它还提供了基本的以太网摄像机模拟器和简单的视频查看器。用户可以通过我们现在常用的Linux操作系统来实现对于工业相机的操作。
CAP_OPENCV_MJPEG
Python: cv.CAP_OPENCV_MJPEG
官方描述:Built-in OpenCV MotionJPEG codec.
给OpenCV嵌入MotionJPEG编解码器。
CAP_INTEL_MFX
Python: cv.CAP_INTEL_MFX
官方描述:Intel MediaSDK.
英特尔媒体SDK。
CAP_XINE
Python: cv.CAP_XINE
官方描述:XINE engine (Linux).
XINE engine是什么鬼?昊虹君也不知道,有知道的朋友可以给昊虹君说一说。
总结一下,这里面绝大部分都是与具体的某个规范有关的可选值,除去第一个自动检测,昊虹君觉得有两个值得注意,具体是哪两个,请大家参看本博文的原版,链接如下:
https://www.hhai.cc/thread-132-1-1.html
OpenCV类VideoCapture构造函数中参数apiPreference的可选值及意义相关推荐
- php构造函数里抛出异常_php-在类的构造函数中返回值
php-在类的构造函数中返回值 到目前为止,我有一个带有构造函数的29447791671682017201728类 public function __construct ($identifier = ...
- C++对象模型4——多重继承的对象内存模型、vptr与vtbl的创建与重置的时机、不要在含有虚函数的类的构造函数中调用memset
一.多重继承的对象内存模型 class Base1 { public:virtual void f() {cout << "base1::f()" << e ...
- PHP调用类函数定义位置,OOP PHP – 如何有选择地调用类的构造函数中定义的特定方法?...
我正在学习用OOP方式编写Wordpress Multisite,因为我现在对OOP很新,我现在处于一种我似乎无法自己解决的问题. 具体来说,我正在创建一些类来使用OOP方法创建管理页面(在网络和子网 ...
- Bitmap类getPixels()方法中参数stride理解
转载自:http://blog.csdn.net/jie_qing/article/details/7259520 在学习Graphics中遇到位图(Bitmap)中getPixels()方法,对该方 ...
- java调用构造函数中某一个值_Java如何在枚举的构造函数中调用另一个枚举值
Java中的枚举(enum)是一种存储一组常量值的数据类型.您可以使用枚举来存储固定值,例如一周中的天,一年中的月等. 您可以使用关键字 enum定义枚举,后跟枚举的名称为-enum Days { S ...
- numpy.max中参数axis的取值问题
np.max(a, axis=None, out=None, keepdims=False) 求序列的最值 最少接收一个参数 axis:默认为列方向,即axis=0 一般为二维数组,用来表示行和列的信 ...
- OpenCV中使用类VideoCapture加载视频和打开摄像头
先直接上示例代码,然后对代码进行讲解. #!/usr/bin/env python # -*- coding: utf-8 -*- # 图像处理开发需求.图像处理接私活挣零花钱,请加微信/QQ 248 ...
- C++中基类与派生类的构造函数和析构函数
1.Cpp中的基类与派生类的构造函数 基类的成员函数可以被继承,可以通过派生类的对象访问,但这仅仅指的是普通的成员函数,类的构造函数不能被继承.构造函数不能被继承是有道理的,因为即使继承了,它的名字和 ...
- 基类成员的public访问权限在派生类中变为_C++ 派生类的构造函数(学习笔记:第7章 06)...
派生类的构造函数[1] 默认情况 基类的构造函数不被继承; 派生类需要定义自己的构造函数. C++11规定 可用using语句继承基类构造函数. 但是只能初始化从基类继承的成员. 派生类新增成员可以通 ...
最新文章
- java模拟器未载入,由于“活页夹线程池”,应用程序未在模拟器上运行
- python篇第6天【数据类型】
- android mysql 图片_android sqlite添加图片到数据库
- LeetCode 1201. 丑数 III(最小公倍数+二分查找)
- Spring组件之一 JDBC Template
- SAP License:SAP S/4 HANA模块功能介绍
- 求二叉树左右子树高度差_LeetCode刷题实战110:平衡二叉树
- Spring IOC(依赖注入的三种方式)
- 网站建设中常见的21个漏洞及预防方法
- c3p0数据库连接池使用步骤c3p0配置报错处理
- matlab二次求导函数,原来可以这样求导函数,再复杂的函数求导不再话下!
- linux node安装菜鸟教程,Docker 安装 Node.js
- 用excel制作,出入库信息管理表,动态库存表
- fat32文件系统格式在linux,FAT32文件系统的存储组织结构(一)
- 模型及贴图的细节及优化
- 钢铁侠材质制作——3、基础光照模型实现
- 创建一个简单的workflow工作流(WF4)
- Ubuntu安装Google Chrome,报NSS version的错误
- 【图像语义分割】Large Kernel Maters--Improved Semantic Segmentation by Global ConvNet
- 微信小程序源码反编译