2

我想使用 OpenSMILE 工具包作为语音特征提取器。但是我在 Matlab 环境中开发了我的项目脚本。因此,我正在寻找一种从 Matlab 调用 OpenSMILE 并处理获得的特征的方法。如果有人在这件事上指导我,我会很高兴。

可在 windows CMD 环境下执行的 OpenSMILE 脚本示例:

SMILExtract_Release.exe -C config/MFCC.conf -I a.wav -O a.HTK
4

1 回答 1

2

我找到了一个非常简单的方法来做到这一点。安装 OpenSMILE 后,可以通过 CMD 环境访问该程序。这就是我在 MATLAB 中编写以下函数并通过它运行 OpenSMILE 的原因。

function featureSet = OpenSmileFE_MFCC(filePath,fileName)

% make result file name
resultName  = [fileName,'_MFCC.HTK'];

% make OpenSmile Command
comD =['SMILExtract_Release.exe -C config/MFCC12_E_D_A_Z.conf -I ',filePath,... 
'-O ', resultName , '  -noconsoleoutput'];


% excute command
system(comD);
[ features, sampPeriod, parmKind ] = readhtk_lite( resultName );

您还可以在链接中找到readhtk_lite函数脚本。您还可以从以下命令中删除 -noconsoleoutput 选项以查看执行详细信息。

comD =['SMILExtract_Release.exe -C config/MFCC12_E_D_A_Z.conf -I ',filePath,... 
'-O ', resultName ];
于 2020-09-10T07:37:41.010 回答