kaldi,我就不做过多介绍了,源码在github上,官方教程网址是 http://kaldi-asr.org/doc/index.html。
源码下载
我的操作系统是Linux。
下载直接利用git版本控制系统就可以了,打开终端,直接在你的实验目录下的命令行输入命令:
git clone https://github.com/kaldi-asr/kaldi.git
稍等一会,提示OK后,能够看到以下文件:
- egs :此目录为 Kaldi 例子目录,其中例子包含了不乏语音识别、语种识别、声纹识别、关键字识别等。
- misc : 此目录包含了一些 pdf、以及相关 docker、htk 等资源
- scripts: 此目录只用来存放 Rnnlm,以及相应的运行脚本。
- src : 此目录为 Kaldi 的源代码目录,Kaldi 的多数算法的源代码都存放于此,其中不乏GMM、Ivector、Nnet等一系列的算法。
- tools: 此目录主要存放 Kaldi 依赖库的安装脚本
- windows: 此目录为在 Windows 平台运行所必须的脚本以及相关的执行程序。
安装依赖及工具
在kaldi文件夹下可以检查依赖库是否已经安装。
运行指令:tools/extras/check_dependencies.sh
,会提示没有安装的包,根据脚本输出的提示安装对应包即可。
如果全部安装完成,会显示如下:
关于第三方工具,这里主要介绍必须安装的两个工具:OpenFst及CUB,具体作用就不介绍了。对应命令是在tools文件夹下,命令行依次运行指令
make openfst
make cub
第三方包还有很多,其它基本类似。等待安装成功即可。
编译kaldi代码
这是必要步骤,不要漏这一步。
编译环境kaldi使用configure命令来配置,在src目录下配置即可。
配置完成后分别运行:
make depend
make
大约要几十分钟吧。可以用-j 4
作为make
的参数,使用多线程加速编译。
编译完成后就可以运行其中的egs目录下的例子了。
egs/yesno脚本运行
yesno脚本是一个最简单的语音识别脚本,只能识别Yes和No(当然还有沉默)。进入对应文件夹,命令行使用./run.sh
。如果前面步骤没有出错,很快就会有最后结果。
运行结果如下:
最后一行输出表示,232个测试样例全部判断准确。
最后的识别结果输出在exp/mono0a/decode_test_yesn,打开文件看看即可。
以上就是本次分享的Kaldi的helloworld步骤了。
结束语
跑通一个简单的样例后,就是对源码的阅读、探索、整理了。
希望本文能对Kaldi的新手有帮助。