[转载]kaldi学习笔记:run.sh(egs/timit/s5)详细分析:从数据准备到特征提取
来源:互联网 发布:什么叫网络投资 编辑:程序博客网 时间:2024/05/16 13:39
- 首先看一下前三行:
- 1
- 2
- 3
(1)cmd.sh脚本文件包含三部分内容:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
其中a)和b)都是在集群上运行,而c)是在本地运行,因此c)是我们需要的,将a)和b)注释掉,只保留c)。
(2) 若path.sh是常规文件就运行之:-f 判断path.sh是否常规文件,另,常见文件判断命令如下:
-e filename 如果 filename存在,则为真
-d filename 如果 filename为目录,则为真
-f filename 如果 filename为常规文件,则为真
-L filename 如果 filename为符号链接,则为真
-r filename 如果 filename可读,则为真
-w filename 如果 filename可写,则为真
-x filename 如果 filename可执行,则为真
-s filename 如果文件长度不为0,则为真
-h filename 如果文件是软链接,则为真
filename1 -nt filename2 如果 filename1比 filename2新,则为真。
filename1 -ot filename2 如果 filename1比 filename2旧,则为真。
-eq 等于
-ne 不等于
-gt 大于
-ge 大于等于
-lt 小于
-le 小于等于
!非
path.sh内容为:
修改前:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
只修改第一行:(注意,有一些不需要修改也能成功运行)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
修改为kaldi安装目录;
将各种目录设置为环境变量;
LC_ALL它是一个宏,如果该值设置了,则该值会覆盖所有LC_*的设置值。注意,LANG的值不受该宏影响。”C” 这是标准的C Locale。”POSIX”是”C”的别名。它所指定的属性和行为由ISO C标准所指定。
irstlm为开源的语言模型工具包。。
将openfst设为 LD_LIBRARY_PATH 动态库环境变量
(3) set -e 表示告诉bash如果任何语句的执行结果不是true(返回值非零)则应该退出。写每个脚本都应该在开头加上set -e, 这样的好处是防止错误像雪球一样越滚越大。ps: 用set -o errexit也是一样的效果.
2. 然后是声学模型参数设置
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
这部分基本默认不改,除非自己训练自己的数据库。nj指运行的jobs数目,一般不超过CPU的数量。
3.数据准备
- 1
- 2
- 3
- 4
- 5
- 6
- 7
(1) 首先timit数据库原始的wav文件目录赋值给timit,然后运行local目录下的timit_data_prep.sh 脚本,此脚本为数据准备脚本,输入为timit wav文件,输出为data/目录下的:
其中关于特征提取的文件夹为dev,test和train,每个文件夹内容都具有相同文件名的文件,如下图所示
其中四个为必要:wav.scp,text,spk2utt,utt2spk ,这四个文件将作为下一步特征提取的输入。
注: 数据准备详细解析,见博客 (kaldi学习笔记:data_prep.sh详细分析)
4.特征提取
- 1
- 2
- 3
- 4
- 5
- 6
(1)mfccdir=mfcc:将mfcc字符串赋值给变量mfccdir
(2)然后运行steps/下的特征提取脚本make_mfcc.sh,其中–cmd
(3)compute_cmvn_stats.sh 是为了计算提取特征的CMVN,即为倒谱方差均值归一化!
注:
MFCC特征提取详细解析,见博客 (kaldi学习笔记:make_mfcc.sh详细分析)
CMVN详细解析,见博客 (kaldi学习笔记:compute_cmvn_stats.sh 详细分析)
- kaldi学习笔记:run.sh(egs/timit/s5)详细分析:从数据准备到特征提取
- [转载]kaldi学习笔记:run.sh(egs/timit/s5)详细分析:从数据准备到特征提取
- kaldi学习笔记:data_prep.sh详细分析
- kaldi源码中run.sh脚本分析
- Kaldi学习之数据准备详细解释说明
- kaldi run.sh 执行
- Kaldi下运行TIMIT实例需要对run.sh进行修改的部分(不包括DNN部分)
- kaldi中的特征提取
- Kaldi脚本分析(2)——特征提取
- 利用kaldi提取mfcc特征
- Kaldi特征提取之-预处理
- Kaldi特征提取之-FBank
- Kaldi特征提取之-MFCC
- Kaldi特征提取之-VAD
- kaldi中的数据准备
- 数据特征提取,特征量相关性分析
- Kaldi脚本分析(1)——数据准备
- kaldi的语音识别数据timit例子详解
- C++ 模板的显示具体化
- QT控件大全 三十一 QReflex
- rocket mq windows环境下部署
- SuperSocket 入门,实现客户端和服务端消息互发
- Oracle 查询数据库有多少张表
- [转载]kaldi学习笔记:run.sh(egs/timit/s5)详细分析:从数据准备到特征提取
- 父子进程间通信---通过设置环境变量
- Eclipse 常用设置
- SQL truncate 、delete与drop区别
- HDOJ1393 Weird Clock
- 这七种迹象,暗示你的生活正慢慢变好
- 使用AntiSamy防范XSS跨站脚本攻击
- JACK_C#_游戏英雄武器和攻击
- SIM7600CE TCP success AT