-
VideoCapture
2012-02-29 14:22:32VideoCapture -
videocapture
2015-09-28 22:40:32vfw videocapture*4 -
VideoCapture详解
2020-03-03 16:12:42官方文档: 頑張ります Constructor &...VideoCapture object> = cv.VideoCapture( ) <VideoCapture object> = cv.VideoCapture( filename[, apiPreference] ) <VideoCapture object> = c...官方文档: 頑張ります
Constructor & Dectructor
<VideoCapture object> = cv.VideoCapture( ) <VideoCapture object> = cv.VideoCapture( filename[, apiPreference] ) <VideoCapture object> = cv.VideoCapture( index[, apiPreference] )
用于打开视频文件 网络视频 视频捕捉设备(摄像头) 的API(程序应用接口)
Parameters:
filename :
- 本地视频文件(video.avi)
- 图像序列(这个我没用过,也不知道啥意思,要是以后用了就写上)
- URL(没用过同上)
apiPreference:
详见: 支持参数表name value function CAP_ANY 0 首选参数 CAP_DSHOW 700 DirectShow CAP_MSMF 1400 Microsoft Media Foundation (via videoInput) CAP_FIREWIRE 300 IEEE 1394 设备 CAP_V4L 200 V4L/V4L2 CAP_FFMPEG 1900 用FFMPEG库打开 CAP_IMAGES 2000 图像序列
~VideoCapture()
解析函数。调用
VideoCapture::release
释放Member Function
retval = cv.VideoCapture.isOpened( )
如果video capturing类已经初始化成功返回 ture
retval = cv.VideoCapture.open( filename[, apiPreference] ) retval = cv.VideoCapture.open( index[, apiPreference] )
打开视频文件 网络视频 捕捉设备
如果文件成功打开,返回 true
参数列表同constructor VideoCapture
注意:该函数会首先调用VideoCapture::release
关闭已启动文件或摄像机
retval, image = cv.VideoCapture.read( [, image] )
Parameter:
retval :是否成功获取图像.成功获取为 true
image : 视频帧.当获取失败时为空这个函数实际上调用了
VideoCapture::grab()
和VideCapture::retrieve()
。首先读取文件数据 或者 对获取相机数据解码 ,最终返回由其组成的帧信息
None = cv.VideoCapture.release( )
关闭文件或设备
会被VideoCapture::open
和VideoCapture destructor
自动调用
retval = cv.VideoCapture.set( propId, value )
设置VideoCapture属性,参数被支持返回true
注意:即使返回true也不一定说明设定成功Parameters:
- proId: 详见
- value :设定值
-
videocapture error
2020-12-08 20:06:58when i use opencv Videocapture to open the camera ,it shows HIGHGUI ERROR:V4L2,pixel format of incoming image is unsuppoted by OpenCV</p><p>该提问来源于开源项目:jetsonhacks/... -
videocapture whl 文件
2019-01-09 13:57:06no module named 'VideoCapture', 通过pip安装 找不到资源, 此时,下载该whl文件, pip install VideoCapture-0.9.5-cp36-cp36m-win32.whl 即可安装videoCapture包 -
OpenCV VideoCapture
2020-07-17 12:11:08capture = cv.VideoCapture(0) while True: ret,frame = capture.read() cv.imshow("Video",frame) c = cv.waitKey(1) if c == 27: break capture.release() cv.destroyAllWindows() VideoCapture()中...import cv2 as cv capture = cv.VideoCapture(0) while True: ret,frame = capture.read() frame = cv.flip(frame,1) cv.imshow("Video",frame) c = cv.waitKey(1) if c == 27: break capture.release() cv.destroyAllWindows()
- VideoCapture()中参数是0,表示打开笔记本的内置摄像头;如果你想播放一个mp4视频,可以将视频的路径传入空号内,比如capture = cv.VideoCapture(’…/demo.mp4’)
- capture.read()按帧读取视频,ret,frame是cap.read()方法的两个返回值。其中ret是布尔值,如果读取帧是正确的则返回True,如果文件读取到结尾,它的返回值就为False。frame就是每一帧的图像,是个三维矩阵。
- cv.flip()表示将屏幕反转,参数为fram和1,Fram表示视频的每一帧,1表示水平方向翻转,可以选择不同形式的反转,比如,0 — 垂直方向翻转;-1:水平、垂直方向同时翻转
- waitKey()方法本身表示等待键盘输入,参数是1,表示延时1ms切换到下一帧图像,对于视频而言;参数为0,如cv2.waitKey(0)只显示当前帧图像,相当于视频暂停,;参数过大如cv2.waitKey(1000),会因为延时过久而卡顿感觉到卡顿。c得到的是键盘输入的ASCII码,esc键对应的ASCII码是27,即当按esc键是if条件句成立
-
VideoCapture类
2017-11-03 10:38:51通过一个读取视频的综合例子来介绍VideoCapture类的一些基本操作: #include #include #include #include using namespace std; using namespace cv; int main() { //打开视频文件:其实就是建立一个...通过一个读取视频的综合例子来介绍VideoCapture类的一些基本操作:
#include<opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>
#include<opencv2/imgproc/imgproc.hpp>
#include<iostream>using namespace std;
using namespace cv;int main()
{
//打开视频文件:其实就是建立一个VideoCapture结构
VideoCapture capture("C:\\Users\\蓝月亮\\Desktop\\常用\\小视频\\111.mp4");
//检测是否正常打开:成功打开时,isOpened返回ture
if (!capture.isOpened())
cout << "fail to open!" << endl;
//获取整个帧数
long totalFrameNumber = capture.get(CV_CAP_PROP_FRAME_COUNT);
cout << "整个视频共" << totalFrameNumber << "帧" << endl;
//设置开始帧()
long frameToStart= 6000;
capture.set(CV_CAP_PROP_POS_FRAMES, frameToStart);
cout << "从第" << frameToStart << "帧开始读" << endl;
//设置结束帧
int frameToStop= 7500;if (frameToStop < frameToStart)
{
cout << "结束帧小于开始帧,程序错误,即将退出!" << endl;
return - 1;
}
else
{
cout << "结束帧为:第" << frameToStop << "帧" << endl;
}
//获取帧率
double rate= capture.get(CV_CAP_PROP_FPS);
cout << "帧率为:" << rate << endl;//定义一个用来控制读取视频循环结束的变量
bool stop= false;
//承载每一帧的图像
Mat frame;
//显示每一帧的窗口
namedWindow("Extracted frame");
//两帧间的间隔时间:
//int delay = 1000/rate;
int delay= 1000 / rate;
//利用while循环读取帧
//currentFrame是在循环体中控制读取到指定的帧后循环结束的变量
long currentFrame = frameToStart;
//滤波器的核
int kernel_size= 3;
Mat kernel= Mat::ones(kernel_size, kernel_size, CV_32F) / (float)(kernel_size*kernel_size);while (!stop)
{
//读取下一帧
if (!capture.read(frame))
{
cout << "读取视频失败" << endl;
return - 1;
}//这里加滤波程序
imshow("Extracted frame", frame);
filter2D(frame, frame, -1, kernel);imshow("after filter", frame);
cout << "正在读取第" << currentFrame << "帧" << endl;
//waitKey(int delay=0)当delay ≤ 0时会永远等待;当delay>0时会等待delay毫秒
//当时间结束前没有按键按下时,返回值为-1;否则返回按键
int c= waitKey(delay); // 格式:waitKey(x);第一个参数: 等待x ms,如果在此期间有按键按下,
//则立即结束并返回按下按键的ASCII码,否则返回 - 1
//如果x = 0,那么无限等待下去,直到有按键按下
//按下ESC或者到达指定的结束帧后退出读取视频
if ((char)c== 27 || currentFrame>frameToStop) //esc键的ASCII码为27
{
stop= true;
}
//按下按键后会停留在当前帧,等待下一次按键
if (c>= 0)
{
waitKey(0);
}
currentFrame++;}
//关闭视频文件
capture.release();
waitKey(0);
return 0;
}form:http://blog.csdn.net/thefutureisour/article/details/7530344 -
class VideoCapture之:: VideoCapture
2013-03-27 10:56:55VideoCapture constructors. C++: VideoCapture::VideoCapture() C++: VideoCapture::VideoCapture(const string& filename) C++: VideoCapture::VideoCapture(int device) Python: cv2...VideoCapture constructors.
- C++: VideoCapture::VideoCapture()
- C++: VideoCapture::VideoCapture(const string& filename)
- C++: VideoCapture::VideoCapture(int device)
- Python: cv2.VideoCapture() → <VideoCapture object>
- Python: cv2.VideoCapture(filename) → <VideoCapture object>
- Python: cv2.VideoCapture(device) → <VideoCapture object>
- C: CvCapture* cvCaptureFromCAM(int device)
- Python: cv.CaptureFromCAM(index) → CvCapture
- C: CvCapture* cvCaptureFromFile(const char* filename)
- Python: cv.CaptureFromFile(filename) → CvCapture
-
Parameters: - filename – name of the opened video file
- device – id of the opened video capturing device (i.e. a camera index). If there is a single camera connected, just pass 0.
Note
In C API, when you finished working with video, release CvCapture structure with cvReleaseCapture(), or usePtr<CvCapture> that calls cvReleaseCapture() automatically in the destructor.
-
videocapture 保存图片_OpenCV中VideoCapture类的使用详解
2021-01-14 01:27:50主要记录Python-OpenCV中的VideoCapture类的使用;官方文档;VideoCapture()是用于从视频文件、图片序列、摄像头捕获视频的类;#!/usr/bin/env python#-*- coding:utf-8 -*-# @Time : 19-4-21 上午10:31# @Author : ... -
OpenCV VideoCapture类
2020-11-27 15:09:54OpenCV VideoCapture类 OpenCV VideoCapture类 视频捕获类,可以从视频文件、图像序列和摄像头捕获视频。 新的改变 我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了... -
Videocapture类使用介绍
2018-03-17 10:39:15opencv中通过VideoCaptrue类对视频...1.VideoCapture类的构造函数:C++: VideoCapture::VideoCapture()C++: VideoCapture::VideoCapture(const string& filename)C++: VideoCapture::VideoCapture(int de... -
videocapture的小问题
2021-01-07 03:25:44videoCapture()->capture() 是失败的。然后当中如果是 <code>player->play(); <code>Sleep(1000); <code>player->videoCapture()->capture(); 就可以。 我设置了player->setAsyncLoad(false);也不行... -
OpenCV中VideoCapture类的使用详解
2021-01-20 01:55:53主要记录Python-OpenCV中的VideoCapture类的使用;官方文档; VideoCapture()是用于从视频文件、图片序列、摄像头捕获视频的类; #!/usr/bin/env python #-*- coding:utf-8 -*- # @Time : 19-4-21 上午10:31 # @... -
OpenCV — VideoCapture
2018-03-28 14:01:43OpenCV 之 VideoCapture类 OpenCV 之 VideoCapture类 头文件 类的成员组成 实例 Reference VideoCapture 类提供了C++ API,主要用来处理视频文件、图像序列或者摄像机实时拍摄的画面。 本文是作者学了... -
VideoCapture error on Anaconda
2020-12-27 05:41:36VideoCapture('2538-5_70133.avi') <p>Error: cap = VideoCapture('2538-5_70133.avi') Traceback (most recent call last): File "", line 1, in File "/home/01677387637/... -
opencv视频操作基础---VideoCapture类
2016-11-28 18:02:31opencv中通过VideoCaptrue类对视频进行...1.VideoCapture类的构造函数:C++: VideoCapture::VideoCapture(); C++: VideoCapture::VideoCapture(const string& filename); C++: VideoCapture::VideoCaptur... -
opencv之videocapture类
2019-12-20 11:01:55opencvc中提供了专门操作视频的接口类...videocapture();//无参构造 videocapture(const string &filename);//视频的文件路径使用/而非\ videocapture(int device);//摄像头为0 2.操作单帧 bool videocapture::... -
inputs: OpenCV VideoCapture Alternative
2020-12-08 20:18:13but its VideoCapture is incompatible for some capture devices. Eventually we need to look for another solution. <p>Ideas) - Add native DirectShow input and bypass OpenCV VideoCapture - Add virtual ... -
undefined reference to `cv::VideoCapture::VideoCapture()'
2017-02-14 10:27:38undefined reference to `cv::VideoCapture::VideoCapture()' -
VideoCapture read Method will stuck
2021-01-12 03:32:16<p>While using the VideoCapture class to load a given mp4 file and use a loop to iterate over frames, the read(frame) method will stuck (without a visible warning / exception). Are there any known ... -
cv::VideoCapture::VideoCapture(int)’未定义的引用
2019-04-25 13:46:11cv::VideoCapture::VideoCapture(int)’未定义的引用 解决方法:在cmakelists.txt文件中的find_package中添加OpenCV包即可 参考链接:https://blog.csdn.net/u010925447/article/details/80033288 ... -
class VideoCapture之VideoCapture::grab
2013-03-27 10:58:14Grabs the next frame from video file or capturing ...C++: bool VideoCapture::grab() Python: cv2.VideoCapture.grab() → retval C: int cvGrabFrame(CvCapture* capture) Python: c -
videocapture库制作python视频高速传输程序
2020-12-24 06:55:37复制代码 代码如下:from VideoCapture import Devicecam = Device()cam.setResolution(320,240) #设置显示分辨率cam.saveSnapshot(‘demo.jpg’) #抓取并保存图片 这样,你就得到了一张图片.当然,要实现比较高速的... -
OpenCV VideoCapture类使用
2017-09-26 10:31:42opencv中通过VideoCaptrue类对视频进行读取操作以及调用摄像头,下面是该...C++: VideoCapture::VideoCapture() C++: VideoCapture::VideoCapture(const string& filename) 参数: filename – 打开的视频文件名。 C++: -
GStreamer backend support for VideoCapture
2021-01-07 11:46:36<p>There is no API to replace FFMPEG as the default CaptureDevice for VideoCapture's backend like what we have in <a href="https://docs.opencv.org/3.3.1/d0/da7/videoio_overview.html">OpenCV</a>. ...