【代码调试】HCF算法运行matlab代码过程遇到的一些问题(mex,引用错误)

HCF运行matlab代码过程遇到的一些问题

https://github.com/jbhuang0604/CF2/tree/4b895b516b2d73fc83174439729d2157902c9d63下载源码后将http://www.vlfeat.org/matconvnet/models/imagenet-vgg-verydeep-19.mat预训练模型下载完成把文件拷贝到/CF2/model中,参考博客:目标跟踪HCF算法matlab代码运行教程(含GPU)_matlab跑目标跟踪算法_zllxot的博客-优快云博客(师哥写的,哈哈,不得不说师哥厉害)

1.MEX配置

(参考博客:【Matlab】Matlab2016a+VS2015之间mex过程出错的解决方法_matlab2016 vs_芒果太甜的博客-优快云博客 ||https://blog.youkuaiyun.com/guidgeek/article/details/105422236

运行demo.m后命令行出现

我的解决方案:下载visiual studio2015(或者别的版本,我用的matlab是2018b)下载安装好后在matlab命令行输入

mex -setup

还是没有成功,查看详细信息在命令行输入

mex -setup -v

发现出现

... 正在查找编译器 'Microsoft Visual C++ 2015 Professional (C)'...
... 正在查找注册表设置 'HKLM\SOFTWARE\Microsoft\VisualStudio\SxS\VS7' 14.0...否。
... 正在查找注册表设置 'HKCU\SOFTWARE\Microsoft\VisualStudio\SxS\VS7' 14.0...否。
... 正在查找注册表设置 'HKLM\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VS7' 14.0...是('D:\ProgramFiles\Microsoft Visual Studio 14.0\')。
... 正在查找文件 'D:\ProgramFiles\Microsoft Visual Studio 14.0\VC\bin\amd64\cl.exe'...否。
找不到已安装的编译器 'Microsoft Visual C++ 2015 Professional (C)'。

发现是找不到cl.exe这个问题,一般是在安装vs的时候没有勾选C++选项,重新安装或者修改visiual studio勾选c++那个选项安装一下就可以。然后再打开matlab,在命令行输入

mex -setup

出现下图所示结果,点击C++那个,问题解决。

(2)换了电脑装了visual2017之后发现问题不一样了出现:

cl.exe' 不是内部或外部命令,也不是可运行的程序  或批处理文件。 

错误使用 vl_compilenn>check_clpath (line 656)

Unable to find cl.exe

借鉴博客(VS2017:'cl' 不是内部或外部命令,也不是可运行的程序 或批处理文件的解决方法_vs没有cl_六六六六神的博客-优快云博客

将搜索出来的第一个cl.exe地址直接放在系统PATH中:我的地址是:(找不到全局搜索一下)
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x64

打开系统-高级系统设置-环境变量-系统变量-PATH

将cl.exe的路径添加上去,点击确定,重新打开matlab,就可以了。

2.引用错误

运行demo.m出现如下错误

.

我的解决方法:在get_feature的normalization前面添加meta如图

(原因俺也不知道,就是看别人的博客类似代码normalization前边有meta),问题解决。。。

解决完normalization又出现

解决方法参考博客:目标跟踪HCF算法matlab代码运行教程(含GPU)_matlab跑目标跟踪算法_zllxot的博客-优快云博客(师哥写的,哈哈,不得不说师哥厉害)

vl_simplenn.m所在位置如图

到此,可以用CPU运行了,如何使用GPU运行,请移步上述博客:目标跟踪HCF算法matlab代码运行教程(含GPU)_matlab跑目标跟踪算法_zllxot的博客-优快云博客

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值