Kaldi是一款基于C++编写的开源语音识别工具箱。这款工具既可以在Windows下编译也可以在Linux下编译。本次我是在Centos 服务器上安装。说明一点:之前是在Ubuntu16.04下面安装的,跑第一个说话人识别的例子aishell的时候,开始运行计算机不能进行处理。跑了两天只好关机重启,但是重新运行的时候又出现了错误。把运行生成的文件夹data、exp删了重新sudo ./run.sh
(申明:这里一定要加sudo 命令,由于数据集是在`/export/a05/xna/data/下面放,所以要有root权限才行)又好了。但速度还是之前那么慢。所以这次配置是在服务器上进行。
一、kaldi-master下载
下载地址:(https://pan.baidu.com/s/1lbxtdma6qyw_w6bRfSk3fQ) 密码:er1e
二、kaldi依赖环境安装
下载kaldi-master后,直接解压进入tools目录。
运行命令:cat INSTALL
进行安装。
在kaldi-master版本中运行INSTALL后就会将一些依赖环境安装好。然后返回/kaldi-master/tools/extras
目录。运行
sudo ./check_dependencies.sh
这个文件用来检查一些依赖包的安装,没有安装的依赖包会有提示。运行之后会出现以下依赖包未安装。在Centos中用yum命令安装,但是yum命令需要下载安装包才能进行安装。所以考虑一个命令pip进行安装。用两个命令交替进行安装,哪个可以运行就用哪个命令。首先安装pip命令。
pip下载地址:
wget "https://pypi.python.org/packages/source/p/pip/pip-1.5.4.tar.gz#md5=834b2904f92d46aaa333267fb1c922bb" --no-check-certificate
pip安装
# tar -xzvf pip-1.5.4.tar.gz
# cd pip-1.5.4
# python setup.py install
1、依赖包介绍
a、gcc
详细的解释请看这篇文章:(https://www.zhihu.com/question/20940822)
**b、automake**
。
Linux下编程时,为了方便编译,往往使用Makefile文件自动完成编译,但是Makefile文件本身的书写十分复杂且规则很多。好在Linux为我们提供了自动生成功能完善的Makefile文件的工具autoconf/automake
c、autoconf
autoconf是一个用于包以适应多种Unix类系统的 shell脚本的工具,生成可以自动地配置软件源代码
e、 libtool
libtool 是一个通用库支持脚本,将使用动态库的复杂性隐藏在统一、可移植的接口中,也就是说,你可以通过如下所示的标准方法,在不同平台上创建并调用动态库,我们 可以认为libtool是gcc的一个抽象,也就是说,它包装了gcc或者其他的任何编译器,用户无需知道细节,只要告诉libtool说我需要要编译哪 些库即可,并且,它只与libtool文件打交道,例如lo、la为后缀的文件。
f、libatlas-dev libatlas-base-dev
ATLAS是python下的一个线性代数库,是基于另外两个线性代数库BLAS和lapack的.libatlas-dev libatlas-base-dev这两个是它的依赖包
h、gfortran
命令 gfortran 可将多个 fortran 源码文件编译链接成为一个单一的可执行程序。
2、依赖包安装:
sudo yum install gcc automake autoconf subversion libtool libatlas-dev libatlas-base-dev gfortran
3、配置
进入该目录:cd /kaldi-master/src/
运行命令:
sudo ./configure`
sudo make -j 8
sudo make depend install
然后再次进入/kaldi-master/tools/extras
目录,运行sudo ./check_dependencies.sh
进行检测。显示成功后进入egs文件目录运行yesno例子进行测试。
4、测试
进入目录:cd kaldi-master/egs/yesno/s5
运行命令:sudo ./run.sh
最终显示成功。
注:直接运行 ./run.sh
会报错,要在前面加上sudo命令。