Ошибка: Невозможно выделить объект абстрактного типа в Qt Opencv

Я работаю над простым вычитанием фона. Вот мой код

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/video/background_segm.hpp>

using namespace cv;
using namespace std;

//global variables
int history = 1;
float varThreshold = 16;
bool bShadowDetection = true;

Mat src; //source image
Mat fgMaskMOG2; //fg mask generated by MOG2 method
Ptr<BackgroundSubtractor> pMOG2; //MOG2 Background subtractor

int main(int argc, char* argv[])
{
//create GUI windows
namedWindow("Source");
namedWindow("FG Mask MOG 2");

src = imread("bluePaper1.png", 1);

//create Background Subtractor objects
pMOG2 = new BackgroundSubtractorMOG2(history, varThreshold, bShadowDetection); //MOG2 approach
pMOG2->setInt("nmixtures", 3);
pMOG2->setDouble("fTau", 0.5);

pMOG2->operator()(src, fgMaskMOG2);

imshow("Source", src);
imshow("FG Mask MOG 2", fgMaskMOG2);

waitKey(0);

return 0;
}

но я получаю ошибку

не может выделить объект абстрактного типа ‘cv :: BackgroundSubtractorMOG2’

на линии pMOG2 = new BackgroundSubtractorMOG2(history, varThreshold, bShadowDetection); //MOG2 approach

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector