在kaldi tidigits示例中运行.sh出错,我做错了什么?

时间:2016-11-29 06:45:03

标签: bash speech-recognition

我是第一次设置Kaldi并通过tidigits示例。但是使用run.sh,我得到:

steps/make_mfcc.sh --cmd run.pl --mem 2G --nj 20 data/test exp/make_mfcc/test mfcc

utils/validate_data_dir.sh: Successfully validated data-directory data/test

steps/make_mfcc.sh: [info]: no segments file exists: assuming wav.scp indexed by utterance.

run.pl: 20 / 20 failed, log is in exp/make_mfcc/test/make_mfcc_test.*.log

查看日志文件,我发现问题是:

bash: line 1: compute-mfcc-feats: command not found

bash: line 1: copy-feats: command not found

这似乎是一个PATH问题,在线查看其他论坛似乎证实了这一点。但是,我不确定如何解决PATH问题。我已经跟踪过,在steps文件夹中的make_mfcc.sh中调用了compute-mfcc-feat和copy-feats命令(据说是wsj示例的符号链接)。请帮忙!

1 个答案:

答案 0 :(得分:1)

可执行文件的路径在配方内的KALDI_ROOT脚本中的Kaldi配方中使用path.sh变量进行配置,例如,在tidigits内部为kaldi/egs/tidigits/s5/path.sh。指定的路径是相对路径,因此您必须从kaldi/egs/tidigits/s5文件夹而不是从其他文件夹运行命令。可能存在以下问题

  1. 你没有编译Kaldi,二进制文件中不存在 kaldi / SRC / featbin
  2. 您从kaldi移动了培训文件夹 您没有更新KALDI_ROOT
  3. 中的path.sh变量
  4. 您从其他文件夹运行命令run.sh,而不是从 kaldi/egs/tidigits/s5文件夹。
  5. 通常您只需要检查path.sh的内容并在那里指定正确的kaldi根。