matlab 版 tld 单步调试,TLD算法matlab版本的程序调试

看了很多大神文章,综合了一下,终于搞定了。。。

64位win10 + visual studio 2015 + opencv 320 + matlab r2014b

具体opencv如何配置不多说了,记得在realese和debug下都要配置就行。。。

1.在matlab里面运行mex -setup,选择 C++。

2.在matlab里把工作文件转到TLD源代码的文件夹。打开compile.m文件,把里面的对OpenCV的绝对路径改成自己在电脑上安装的OpenCV的路径。

我的是:

include = ' -ID:\opencv\build\include\opencv\-ID:\opencv\build\include\opencv2\-ID:\opencv\build\include\';

libpath = 'D:\opencv\build\x64\vc14\lib\';

3.然后点开mex文件夹,对于vs2010以上版本需要,将文件lk.cpp, fern.cpp,bb_overlap.cpp, 头文件中的

#ifdef_CHAR16T

#define CHAR16_T

#endif

这三句话注释掉。

4.将 lk.cpp 里面的

cvCalcOpticalFlowPyrLK( IMG[J], IMG[I], PYR[J], PYR[I], points[1], points[2], nPts, cvSize(win_size,win_size), Level, 0 , 0, cvTermCriteria(CV_TERMCRIT_ITER|CV_TERMCRIT_EPS,20,0.03), CV_LKFLOW_INITIAL_GUESSES | CV_LKFLOW_PYR_A_READY | CV_LKFLOW_PYR_B_READY );

改为:

cvCalcOpticalFlowPyrLK( IMG[J], IMG[I], PYR[J], PYR[I], points[1], points[2], nPts, cvSize(win_size,win_size), Level, status , 0, cvTermCriteria(CV_TERMCRIT_ITER|CV_TERMCRIT_EPS,20,0.03), CV_LKFLOW_INITIAL_GUESSES | CV_LKFLOW_PYR_A_READY | CV_LKFLOW_PYR_B_READY );

5.运行compile.m,编译完成;然后运行run_TLD.m即可。

6.如需要用摄像头完成图像采集。将initcamera.m里面的

source.vid = videoinput('winvideo', 1, 'YUY2_640x480');

要依据自己的摄像头修改,具体修改方法可以参考网上的“matlab调用摄像头”。

修改run_TLD.m的

opt.source = struct('camera',1,'input','_input/','bb0',[])

这时候,再依次运行compile.m,initcamera.m,run_TLD.m。即可运行TLD程序了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值