TLD学习(2)-调试lk.cpp

来源:互联网 发布:期货大盘软件 编辑:程序博客网 时间:2024/06/15 08:36

All Right。

step1. 现在我们有OpenTLD-Master的代码放在:C:\Users\Administrator\Documents\MATLAB\OpenTLD-master\mex。

step2. 根据《在VS2013中调试mex文件》,我们需要重新修改TLD中的compile.m,将原来的mex改为mex -g。

if ispc    disp('PC');    include = ' -Id:\opencv\build\include\opencv\ -Id:\opencv\build\include\';    libpath = 'd:\opencv\build\x64\vc12\lib\';    files = dir([libpath '*.lib']);        lib = [];    for i = 1:length(files),        lib = [lib ' ' libpath files(i).name];    end        eval(['mex lk.cpp -O -g' include lib]);    mex -O -c -g tld.cpp    mex -O -g fern.cpp tld.obj    mex -O -g linkagemex.cpp    mex -O -g bb_overlap.cpp    mex -O -g warp.cpp    mex -O -g distance.cppend

step3. 运行compile.m,显示编译成功。

step4.打开VS2013,我在这里重建了DLL项目,把lk.cpp等文件加入。设置包含目录、库目录,将工程改为x64,等等....(见《基于OpenCV的mex文件及其编译》)。

step5.Ctrl+Alt+P,添加matlab进程。回到Matlab,运行run_TLD.m。

但此时仍然是无法进入中断的,VS中的断点显示警告“不会进入断点,因为未加载符号”。我再这里退出调试。

step6.重新回到Matlab,在mex目录下,运行lk(0),能正确运行。重新回到step5。能正确设置断点。


可以对TLD的lk.cpp进行Debug了。


发现csdn同行对TLD学习的资源汇总:http://blog.csdn.net/windtalkersm/article/details/8018980,写的非常好,在这里感谢他。


0 0
原创粉丝点击