在qtcreator + opencv中编译错误

时间:2014-03-15 12:15:06

标签: opencv qt-creator

我在另一台无法编译的笔记本电脑中导出了qtcreator + opencv项目

xxx/dialog.h:63: error: cannot declare field 'Dialog::pMOG' to be of abstract type 'cv::BackgroundSubtractorMOG2'

xxx/ note: because the following virtual functions are pure within 'cv::BackgroundSubtractorMOG2': ....... .......

但是在我的主要archlinux pc中可以编译这个

我怀疑有不同的opencv版本: 我的arch版本是2.4.8,我的笔记本电脑版本是3.0.0(通过pkg-config --modversion opencv命令....)

不然是什么?

1 个答案:

答案 0 :(得分:0)

你是正确的假设opencv 2.4分支和3.0(主)分支之间的版本问题。

api在那里发生了一些变化:

    2.4中的
  • 你可以创建一个BackgroundSubtractorMOG2(无论是在堆栈还是堆上)

  • 3.0中的
  • 您必须使用Ptr<BackgroundSubtractorMOG2>,并致电createBackgroundSubtractorMOG2()进行初始化