最近在学习TLD算法,网上资源很多,这里不再列举,但是在win下调试代码的过程中(jmfs版 https://github.com/jmfs/OpenTLD),遇到了一些问题,特此写出以供交流。(修改后的代码文件已经上传,文末给出连接,建议还是在Linux下调试)
由于此版本代码的原作者编译环境为VS2010+OpenCV2,然而小白我配置环境为VS2013+OpenCV3,结果在编译时报错,主要问题有以下几点:
1.PatchGenerator类缺失
此问题网上已有解决方案,自行搜索OpenCV3+PatchGenerator即可
http://blog.csdn.net/j10527/article/details/51305087(如有侵权烦请告知)
2.类添加后的问题
作者代码水平一般,因此在代码添加的问题上琢磨了半天,请大大们不要见怪。写好了了类后,分别将头文件和cpp添加到解压后的include和src文件夹下,并且在调试代码时,在对应的报错cpp中添加#include<PatchGenerator.h>。需要注意的是,上面提供的地址里头文件需要加上宏定义防止重定义。在最后的启动项run_tld里,需要加入头文件和cpp。
3.videoInput.lib
可能是原作者编译环境的问题,编译时总显示模型计算机x86与目标计算机x64不符的问题(名称我不太记得了),因此将其改为用计算机摄像头输入。对代码结构的调整较为麻烦,有需要的话,我在另起一篇对其进行详细描述。
最后的成功运行,大功告成。http://download.csdn.net/detail/natebecker/9662175
这是本人的第一篇博客,如有问题烦请指出,谢谢。