BackgroundSubtractorMOG2 参数设置样例 c++
时间: 2023-07-19 07:46:47 浏览: 76
以下是一个 C++ 版本的 BackgroundSubtractorMOG2 参数设置的样例:
```C++
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace std;
using namespace cv;
int main()
{
VideoCapture cap("test.mp4");
if (!cap.isOpened()) {
cout << "Error opening video stream or file" << endl;
return -1;
}
Mat frame;
Ptr<BackgroundSubtractorMOG2> fgbg = createBackgroundSubtractorMOG2(500, 16, false);
while (cap.read(frame)) {
Mat fgmask;
fgbg->apply(frame, fgmask);
imshow("Frame", fgmask);
int keyboard = waitKey(30);
if (keyboard == 'q' || keyboard == 27)
break;
}
cap.release();
destroyAllWindows();
return 0;
}
```
在这个样例中,我们创建了一个 BackgroundSubtractorMOG2 对象 fgbg,并设置了 history=500、varThreshold=16 和 detectShadows=false 等参数。在 while 循环中,我们通过调用 fgbg->apply(frame, fgmask) 对当前帧进行背景建模和前景检测,得到前景图像 fgmask,并将其显示出来。
阅读全文