KCF无法释放所有分配的内存

时间:2018-08-24 03:36:02

标签: opencv memory tracker

我们使用opencv3测试KCF跟踪器。使我们感到困惑的是内存占用。删除跟踪器后,内存仍被占用。 在运行KCF之后如何释放所有分配的内存?
这是取决于opencv 3.4的示例代码:

#include <opencv2/core/utility.hpp>
#include <opencv2/tracking.hpp>
#include <opencv2/tracking/tracker.hpp>
#include <opencv2/highgui.hpp>
#include <unistd.h>
using namespace std;
using namespace cv;

int main() {
    Mat frame=imread("/home/images/D1.png");
    Rect2d roi(1,1,200,200);
    Ptr<TrackerKCF> tracker_tt = TrackerKCF::create();
    tracker_tt->init(frame, roi);
    tracker_tt->update(frame,roi); //simplify issue tracking on the same image
    tracker_tt.release();
    frame.release();
    cout<<"track finished!"<<endl;
    cin.get();
    return 0;  
}

我们用

停止程序
  

cin.get()

,以便我们可以检查内存使用状态。 运行示例代码后,htop类似于: memory usage

0 个答案:

没有答案