OpenCV标识符“Tracker”未定义

时间:2017-03-16 11:20:10

标签: c++ opencv

我正在使用OpenCV 3.2并尝试使用Visual Studio 2013编译以下代码:

#include <opencv2/core/utility.hpp>
#include <opencv2/video/tracking.hpp>
#include <opencv2/videoio.hpp>
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>


#include <iostream>

using namespace cv;
using namespace std;

int main(int argc, char** argv)
{
    VideoCapture cap;
    Mat frame;
    cap.set(CV_CAP_PROP_FRAME_WIDTH, 160);
    cap.set(CV_CAP_PROP_FRAME_HEIGHT, 120);
    cap.set(CV_CAP_PROP_FPS, 15);
    cap.set(CV_CAP_PROP_FOURCC, CV_FOURCC('B', 'G', 'R', '3'));
    cap = VideoCapture(0);
    Ptr<Tracker> tracker = Tracker::create("KCF");
    while (1){
        cap.read(frame);
        imshow("TEST", frame);
        waitKey(1);
    }
    return 0;
}

但它告诉我跟踪器未定义。我试图使用Here.中的示例 在我的include目录中使用的opencv2 / tracking.hpp不存在,所以我添加了一些文件来修复包括问题(所需文件是feature.hpp,onlineMIL.hpp,onlineBoosting.hpp,tracking.hpp。从opencv github复制)<但是VS仍告诉我Tracker未定义

1 个答案:

答案 0 :(得分:0)

在3.0版本发布时,Opencv已将所有这些扩展库移动到Opencv-contrib,您可以从github网站安装: https://github.com/opencv/opencv_contrib 请注意选择有关此存储库的版本。