【发布时间】:2015-12-08 09:38:50
【问题描述】:
我在 Windows 7 64bit 的 VS2015 + OpenCV3.0 中开发代码。这是一个演示代码,我想试一试。我已经尝试了很多演示,但我遇到了同样的问题:
不允许抽象类类型“cv::BackgroundSubtractorMOG2”的对象。所有方法都是纯虚函数。
演示代码为:
using namespace cv;
using namespace std;
int main() {
VideoCapture video("1.avi");
Mat frame, mask, thresholdImage, output;
//video>>frame;
Ptr<BackgroundSubtractor> pMOG2;
pMOG2 = new BackgroundSubtractorMOG2();
BackgroundSubtractorMOG2 bgSubtractor(20, 16, true);
while (true) {
video >> frame;
++frameNum;
bgSubtractor(frame, mask, 0.001);
cout << frameNum << endl;
//imshow("mask",mask);
//waitKey(10);
}
return 0;
}
我包含了很多头文件,但我仍然无法使用 BackgroundSubtractorMOG2 类,更糟糕的是,BackgroundSubtractorMOG 类显示为未声明。
【问题讨论】:
标签: c++ visual-studio opencv opencv3.0