简介
原始代码来自:https://github.com/a-nagrani/VGGVox
这是一个Matlab代码,同时也需要配置安装一些额外的东西
代码功能git中的readme已经大致说清了,总之他是一个以不同人的声音进行区分的代码
环境配置与安装
根据文中描述
需要 Matlab 与 Matconvnet
但是需要注意的是,第二的安装有很大的坑
Matlab版本我选择是 R2018b
Visual Studio版本是Visual Studio 2017
CUDA版本CUDA 10.0
这三个装好后添加环境变量
不同的电脑与安装位置可能会有不同
总之第一个是为了让 Matlab使用cl.exe进行c/c++的编译
第二个是为了让Matlab进行CUDA代码的编译
完成后安装Matconvnet
下载地址:http://www.vlfeat.org/matconvnet/
下载完成后选择合适的位置解压
然后在matlab中打开文件:vl_comilenn.m 替换以下内容
modify line 620 to:
args = horzcat({'-outdir', mex_dir}, ...
flags.base, flags.mexlink, ...
'-R2018a',...
{['LDFLAGS=$LDFLAGS ' strjoin(flags.mexlink_ldflags)]}, ...
{['LDOPTIMFLAGS=$LDOPTIMFLAGS ' strjoin(flags.mexlink_ldoptimflags)]}, ...
{['LINKLIBS=' strjoin(flags.mexlink_linklibs) ' $LINKLIBS']}, ...
objs) ;
Then, I modified line 359 to be:
flags.mexlink = {'-lmwblas'};
打开Matlab在控制台中输入以下命令
cd C:\Users\Administrator\Desktop\matconvnet-1.0-beta25 //根据自己下载的位置修改路径
addpath matlab
vl_compilenn
vl_compilenn('enableGpu', true)
完成后环境配置完毕
测试
按照https://github.com/a-nagrani/VGGVox 中所说运行相应的文件
如果第二个文件运行报错,将以下代码复制
featid = strcmp({net.vars.name},'distance');
按照如下图替换即可