这个算法的全称是Clustering of Static-Adaptive Correspondences for Deformable Object Tracking,文章发表在CVPR2015上,官方的网址为:
http://www.gnebehay.com/cmt/ 这个作者就是OpenTLD的C++版本的作者,包括ROS版的OpenTLD也是基于他的代码改的。

-1. 下载源码,并且解压,我是解压到F盘根目录的。F:\CppMT-master
-2. 打开里面的fastcluster.cpp后,找到heapify()函数,修改成下面:

  void heapify() {// Arrange the indices I and R so that H[i] := A[I[i]] satisfies the heap// condition H[i] < H[2*i+1] and H[i] < H[2*i+2] for each i.//// Complexity: Θ(size)// Reference: Cormen, Leiserson, Rivest, Stein, Introduction to Algorithms,// 3rd ed., 2009, Section 6.3 “Building a heap”// t_index idx; 注释这里int_fast32_t idx;//添加这句for (idx=(size>>1); idx>0; ) {--idx;update_geq_(idx);}}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

-3. 在F盘根目录下新建一个BuildCppMT文件夹,用来存放适合VS2013工程文件。
-4. 下载最新的CMake工具,https://cmake.org/download/ 我自己用的是CMake 3.4.0 RC
-5. 安装OpenCV,必须是2.4.8以上,我用的是3.0,最新版本3.1是不行的,个人觉得因为里面没有x86的库,如果你自己编译x86库就可能可以。因为OpenCV官网不翻墙是上不了的,所以我还是给出3.0的下载链接https://yunpan.cn/cqF2Eps8WApZS 访问密码 7df9
-6. 安装完OpenCV后,添加环境变量,下面的路径自己灵活变通,不要全抄。

在path环境变量里面添加:D:\OpenCV3.0\opencv\build\x86\vc12\bin
新建一个OpenCV_DIR变量,值为:D:\OpenCV3.0\opencv\build
  • 1
  • 2

-7. 打开CMake,然后配置如下图:

-8.点击Configure,选择VS2013编译器后,点击Finish,然后再点击一下Configure。如下图:

-9. 点击Generate生成工程文件。
-10. 用VS2013打开BuildCppMT文件里面的CMT.sln工程。在这里我们可以看到四种生成配置,四种生成配置最后都会生成cmt.lib静态库,记得是静态库,其实这四种四种生成配置实现的效果都是一样的,只是有的是为带输出调试的lib文件,有的是体积比较小的lib文件,所以你可以只编译Release就行了,下面就为每一种生成配置都单独编译一次。

  1. 选择Debug版本的配置。打开cmt工程的属性页面,按照图片设置:

然后点击[生成]-[生成解决方案],大概几十秒就看到文件夹里面有一个Debug的目录,里面就有cmt.lib文件。

  1. 选择MinSizeRel生成配置,同样来到cmt的属性页里面,修改运行库为/MTd,然后跟第一种编译方式一样。
  2. 选择Release生成配置,来到cmt的属性页面里面,修改运行库为/MT,然后编译。
  3. 选择RelWithDebInfo生成配置,来到cmt的属性页面里面,同样修改运行库为/MTd,然后编译。

-11.编译完成后就看到里面有四个文件夹对应四种生成。

这时候可以试试运行里面的cmt.exe这个demo,因为博主见不了人就不截图了~~~

转载自:https://blog.csdn.net/trustguan/article/details/51042558

VS2013+OpenCV3.0编译CMT跟踪算法相关推荐

  1. VS2013+OpenCV3.0编译TLD跟踪算法

    TLD算法跟CMT算法是同一个大神写的,不过现在已经停止更新了,原作者推荐使用CMT算法,不过还是要编译一下它比较一下两个有什么不同.因为TLD算法停止更新的时候还是OPenCV2.X,所以要移植到O ...

  2. VS2013+openCV3.0无脑配置方法+解决警告问题【windows平台】

    VS2013+openCV3.0无脑配置方法+解决警告问题[windows平台] 参考文章: (1)VS2013+openCV3.0无脑配置方法+解决警告问题[windows平台] (2)https: ...

  3. CMT跟踪算法学习笔记

    近期在学习目标跟踪算法的过程中发现,CMT算法的代码实测效果非常不错.对比之前学习过的SCM之类基于稀疏表示的跟踪算法,CMT的鲁棒性虽然不一定比之更高,但稀疏表示的方法普遍耗时很严重,导致其无法应用 ...

  4. ubuntu14.04下安装cudnn5.1.3,opencv3.0,编译caffe及配置matlab和python接口过程记录

    已有条件: ubuntu14.04+cuda7.5+anaconda2(即python2.7)+matlabR2014a 上述已经装好了,开始搭建caffe环境. 1. 装cudnn5.1.3,参照: ...

  5. cmt跟踪算法 matlab_“水上大疆”招聘——雷达算法工程师

    企业情况 企业做无人船艇,坐落于深圳and珠海,拥有世界一流的无人船艇研发及产业化团队,无人船艇自主航行.智能壁障.协同控制等核心技术处于全球领先水平.产品应用于:环境测量.海洋调查.军用.无人航运等 ...

  6. vs2013+opencv3.0.0 计算机丢失 opencv_world300d.dll

    把opencv文件下的/x84/vc12/bin下面的3个dll文件拷贝到C盘system64文件夹中去(有的是放在system32下),问题就解决了. 若是在编译过程中出现 error LNK110 ...

  7. QT5.50+opencv3.0+VS2013安装教程

    QT5.50+opencv3.0+VS2013安装教程 1.安装软件 VS2013 opencv3.0 qt-vs-addin-1.2.4-opensource qt-opensource-windo ...

  8. opencv3.0中contrib模块的添加

    opencv从2.x到3.x是一个很大的转变,对于很多功能不完善.性能不稳定的模块,都被方法了extra_modules(扩展模块)里面了.这样倒是稳定了,但是对于我这样的新手,要添加这些扩展模块却是 ...

  9. Opencv3.0 手写数字识别(Hog特征+SVM分类器)

    配置:VS2013+Opencv3.0 参考: http://blog.csdn.net/iamzhangzhuping/article/details/51254567 http://blog.cs ...

最新文章

  1. 自动调试用于移动GPU的卷积网络
  2. 提权 调试权限 OpenProcess 拒绝访问的解决办法
  3. 请查收!深度学习超详细发展路线大公开!
  4. leetcode 343. Integer Break | 343. 整数拆分(Java)
  5. [矩阵乘法/快速幂专题]Arc of Dream,Recursive sequence,233 Matrix,Training little cats
  6. 列出Server上5张最大的表
  7. 手动制作一个QQ群机器人
  8. 如何成为一名合格的算法工程师?我们做了一次技能拆分…
  9. 利用Python使图片完美去除水印,我想试试马赛克的效果∧v∧
  10. Android中常用计时器,延时,定时
  11. [4G5G专题-4]:RRU 全面了解什么是4G+5G RF静态射频共享?
  12. 热血格斗场(二分法+STL运用)
  13. 东方财富开通融资融券知识测评问卷答案
  14. 鉴客 iPad横屏(Landscape)尺寸规格说明
  15. 【最新版】宝塔面板7.9.3企业版 开心破解版一键脚本
  16. XML文件怎么添加注释
  17. HAUT 1261 地狱飞龙(数值积分)(河南工业大学2017校赛)
  18. 边缘计算在自动驾驶中的应用场景丨边缘计算阅读周
  19. 关于STM32F103 TIM2重映射
  20. linux解析core文件都是问号,gdb core文件函数出现问号

热门文章

  1. GitHub+Vue自动化构建部署
  2. Nginx handler模块
  3. linux的oracle修改实例名SID
  4. 微信小程序入门二:底部导航tabBar
  5. vue :key的说明 看到这文章,解决你的疑问
  6. 前端 优化 json stringify 在IE浏览器的兼容性 按钮点击不生效
  7. init,service和systemctl的区别
  8. 知识图谱开发实战案例剖析_我从剖析Web开发人员路线图中学到的知识
  9. mysql8安装步骤及排坑
  10. 关于非对称加密算法在不同系统间对接时的使用要点