原创作品:转载请联系本人
OpenTLD在VS2010编译运行包括如下步骤:
- 下载Alan TorresC++实现的OpenTLD zip包。
- 解压缩。
- 新建空工程(我是vs2010),取名TLD,并将解压缩下include的文件导入到TLD头head file中;并将解压缩下src的文件导入到TLD头sorce file中。
- 开始编译,将编译错误逐个排除。
这里提一下 round错误;解决办法:在TLD.cpp上面加上如下代码。错误原因参考:http://rejessica.blog.163.com/blog/static/1835631512011629941566/
double round(double r) { return (r > 0.0) ? floor(r + 0.5) : ceil(r - 0.5); }
- 编译成功后,运行,摄像头一直亮着;没任何反应。看了一下代码,才知道在run_tld.cpp中有一个print_help函数。
看了之后,明白了原来运行需要传递参数。见下面cmd命令:
TLD.exe -p parameters.yml -s datasets\01_david\david.mpg -b datasets\01_david\init.txt -tl