【DPM】Deformable Part Models matlab代码在windows下的调试过程

我下载的是voc-release5

1.按照这篇文章,都操作了一遍:http://blog.csdn.net/pozen/article/details/7023742#quote

2.运行demo不成功 继续按照http://cfanz.cn/index.php?c=article&a=read&id=128978的方法修改

  2.1在按这一篇运行  >> mex cascade.cpp model.cpp  时报错:  D:\PROGRA~1\MATLAB\R2012B\BIN\MEX.PL: Error: 'cascade.cpp' not found. 

     解决:将matlab的当前路径修改成存放cascade.cpp文件的路径

     

     2.2 打开timer.h  将#include <sys\time.h> 改成 #include <time.h>

     2.3 惊喜。在运行mex fconv_var_dim.cpp时没有报错

3.运行demo.m

       3.1注释掉

       % fprintf('compiling the code...');
       % compile;
       % fprintf('done.\n\n');

        运行报错:Undefined function 'resize' for input arguments of type 'double'.

    看来还是不能注释掉上面那三句。

    取消注释后,把cascade_compile.m 中的第41行mexcmd = [mexcmd ' star-cascade/cascade.cc star-cascade/model.cc'];  改成 :mexcmd = [mexcmd ' star-cascade/cascade.cpp star-cascade/model.cpp'];  因为前面改过名字

           把当前路径改成voc-release5的路径:F:\competition\Deformable Part Model\voc-release5

 

做到上面一步,做不下去了。各种报错。 发现网上的教程都是对应4.01版本的 我用的版本5连文件名都不完全一样

--------------------------------------------------------------------------------------------------------------------

改下载旧版本voc-release4.01

按照:http://www.verydemo.com/demo_c92_i211009.html 的说明处理 实际上就是 http://blog.csdn.net/pozen/article/details/7023742#quote后面加上了一个步骤: 

    将void *process(void *thread_arg)  改为 void process(void *thread_arg) 

此外还需要把compile.m中的mex -O fconvsse.cc -o fconv 注释掉

posted @ 2014-07-17 15:14  匡子语  阅读(1210)  评论(0编辑  收藏  举报