Очистить фон SubtractorMOG2
У меня есть следующий код.
cv::VideoCapture capture;
cv::Mat image;
cv::Mat foregroundMask
cv::BackgroundSubtractorMOG2 backgroundModel;
// update background model
for(int i = 0; i < 10; ++i)
{
capture >> image;
backgroundModel(image, foregroundMask);
}
//clear background model
// TODO
// update background model
for(int i = 0; i < 10; ++i)
{
capture >> image;
backgroundModel(image, foregroundMask);
}
Как очистить фоновую модель и снова обновить ее с самого начала? Как будто это не было обновлено раньше. Каким должен быть код для замены части TODO в приведенном выше коде?
1 ответ
Решение
Вызов void initialize(Size frameSize, int frameType);
метод.
//clear background model
backgroundModel.initialize(image.size(), image.type());
Согласно исходному коду, эти методы очистят внутреннюю модель.