0

我已经使用 opencv 2.3 实时实现了轮廓检测代码。我已经使用了我的网络摄像头。现在我想在之前记录并在我的数据库中的捕获视频中实现它。

cv::Mat frame;
cv::Mat back;
cv::Mat fore;
cv::VideoCapture cap(0);
cv::BackgroundSubtractorMOG2 bg;
bg.nmixtures = 3;
bg.bShadowDetection = true;

std::vector<std::vector<cv::Point> > contours;

我没有提到我的整个代码,因为要加载一个 AVI 文件,我只需要在这里进行构建。

请问有人可以指导我吗?

谢谢。

4

1 回答 1

0

您可以使用以下代码片段打开视频并读取帧:

cv::Mat frame;
cv::VideoCapture cap("/path/to/file.avi");
bool ok = cap.open();
// check for errors
cap >> frame; // or cap.read(frame);

您可以阅读有关VideoCapture的文档以获取更多详细信息。如果遇到问题,您应该检查您的视频的编解码器是否受支持

于 2013-02-06T10:14:38.893 回答