VideoCapture類
用于從視頻文件或攝像機(jī)捕獲視頻.該類提供了用于從攝像機(jī)捕獲視頻或者讀取視頻文件的C++ API牧抽。
注意:在C API中使用黑盒子結(jié)構(gòu)CvCapture來代替VideoCapture。
構(gòu)造函數(shù)
VideoCapture::VideoCapture()
VideoCapture::VideoCapture(const string& filename)//filename – 文件名
VideoCapture::VideoCapture(int device)//device – 捕獲視頻的編號(hào). 如果只有一個(gè)設(shè)備日丹,默認(rèn)編號(hào)為0
open函數(shù)
打開視頻文件或捕獲設(shè)備進(jìn)行視頻捕獲
bool VideoCapture::open(const string& filename)//filename – 文件名
bool VideoCapture::open(int device)//device – 捕獲視頻的編號(hào). 如果只有一個(gè)設(shè)備,默認(rèn)編號(hào)為0
isopened函數(shù)
如果視頻捕獲已經(jīng)初始化,則返回true。
bool VideoCapture::isOpened()
release函數(shù)
關(guān)閉視頻文件或捕獲設(shè)備
void VideoCapture::release()
grap函數(shù)
從視頻文件或捕獲設(shè)備中捕獲下一幀
bool VideoCapture::grab()
retrieve函數(shù)
解碼并返回抓取的視頻幀
bool VideoCapture::retrieve(Mat& image, int channel=0)
read函數(shù)
抓取冶伞,解碼并返回下一個(gè)視頻幀
bool VideoCapture::read(Mat& image)
get函數(shù)
返回指定的VideoCapture屬性
double VideoCapture::get(int propId)//propId - 屬性標(biāo)識(shí)符
CV_CAP_PROP_POS_MSEC - 視頻文件的當(dāng)前位置(以毫秒為單位)或視頻捕獲時(shí)間戳。
CV_CAP_PROP_POS_FRAMES - 下一個(gè)要解碼/捕獲的幀的基于0的索引步氏。
CV_CAP_PROP_POS_AVI_RATIO - 視頻文件的相對位置:0 - 電影的開始响禽,1 - 電影的結(jié)束。
CV_CAP_PROP_FRAME_WIDTH - 視頻流中幀的寬度荚醒。
CV_CAP_PROP_FRAME_HEIGHT - 視頻流中幀的高度芋类。
CV_CAP_PROP_FPS - 幀速率。
CV_CAP_PROP_FOURCC - 編解碼器的4個(gè)字符代碼界阁。
CV_CAP_PROP_FRAME_COUNT - 視頻文件中的幀數(shù)侯繁。
CV_CAP_PROP_FORMAT - retrieve()返回的Mat對象的格式。
CV_CAP_PROP_MODE - 指示當(dāng)前捕獲模式的后端特定值泡躯。
CV_CAP_PROP_BRIGHTNESS - 圖像的亮度(僅適用于相機(jī))贮竟。
CV_CAP_PROP_CONTRAST - 圖像的對比度(僅適用于相機(jī))。
CV_CAP_PROP_SATURATION - 圖像的飽和度(僅適用于相機(jī))较剃。
CV_CAP_PROP_HUE - 圖像的色調(diào)(僅適用于攝像機(jī))坝锰。
CV_CAP_PROP_GAIN - 圖像的增益(僅適用于攝像機(jī))。
CV_CAP_PROP_EXPOSURE - 曝光(僅適用于相機(jī))重付。
CV_CAP_PROP_CONVERT_RGB - 指示圖像是否應(yīng)轉(zhuǎn)換為RGB的布爾標(biāo)志。
CV_CAP_PROP_WHITE_BALANCE - 目前不支持
CV_CAP_PROP_RECTIFICATION - 立體相機(jī)的校正標(biāo)志(注意:目前僅由DC1394 v 2.x后端支持)
set函數(shù)
設(shè)置VideoCapture中的屬性凫乖。
bool VideoCapture::set(int propertyId, double value)//propId - 屬性標(biāo)識(shí)符确垫,同get;value - 屬性的值帽芽。