opencv videocapture类

VideoCapture::VideoCapture()
VideoCapture::VideoCapture(const string& filename)
VideoCapture::VideoCapture(int device)

VideoCapture 类 常用函数
(1)VideoCapture::open
Open 函数的功能是打开一个视频文件或者打开一个捕获视频的设备(即摄像头)

bool VideoCapture::open(const string& filename)
bool VideoCapture::open(int device)

filename:打开的视频文件名。
device:打开的视频捕获设备 id,如果只有一个摄像头可以填 0,表示打开默认的摄像头。
———————————————————————————————————————

(2)OpenCV 读入视频的方法有两种,比如读取当前目录下名为"test.avi"的视频文件,如下:

//第一种方法:先实例化再初始化
VideoCapture capture;capture.open("test.avi");

//第二种方法:在实例化的同时进行初始化
VideoCapture capture("test.avi");
————————————————————————————————

(3)VideoCapture::isOpened 判断打开正常与否

————————————————————————————————

(4)VideoCapture::release
C++: void VideoCapture::release()
功能:关闭视频文件或者摄像头。

 ————————————————————————————————

5)VideoCapture::retrieve
C++: bool VideoCapture::retrieve(Mat& image, int channel=0)
功能:解码并且返回刚刚抓取的视频帧,假如没有视频帧被捕获(相机没有连接或者视频文件中没有更多的帧)将返回 false。

————————————————————————————————
(6)VideoCapture::read
C++: VideoCapture& VideoCapture::operator>>(Mat& image)
C++: bool VideoCapture::read(Mat& image)
功能:该函数结合 VideoCapture::grab()和 VideoCapture::retrieve()其中之一被调用,用于捕获、解码和返回下一个视频帧。这是一个最方便的函数,对于读取视频文件或者捕获从解码和返回刚刚捕获的帧,假如没有视频帧被捕获(相机没有连接或者视频文件中没有更多的帧)将返回 false。
————————————————————————————————
(7)VideoCapture::get
C++: double VideoCapture::get(int propId)
功能:一个视频有很多属性,比如:帧率、总帧数、尺寸、格式等,VideoCapture 的 get方法可以获取这些属性。其中参数,即属性的 ID

————————————————————————————————

(8)VideoCapture::set
C++: bool VideoCapture::set(int propertyId, double value)
功能:设置 VideoCapture 类的属性,设置成功返回 ture,失败返回 false。
参数:第一个是属性 ID,第二个是该属性要设置的值。
————————————————————————————————

 

posted @ 2022-03-16 20:45  0MrMKG  阅读(208)  评论(0)    收藏  举报