欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

kaldi utils/filter_scp.pl脚本解释

程序员文章站 2022-04-11 17:28:38
...

kaldi utils/filter_scp.pl脚本解释

# This script takes a list of utterance-ids or any file whose first field
# of each line is an utterance-id, and filters an scp
# file (or any file whose "n-th" field is an utterance id), printing
# out only those lines whose "n-th" field is in id_list. The index of
# the "n-th" field is 1, by default, but can be changed by using
# the -f <n> switch

用法:utils/filter_scp.pl utt.list utt2spk_all |sort -u > utt2spk
也可以这么写,加了一个<
新写法:utils/filter_scp.pl < utt.list utt2spk_all |sort -u > utt2spk

utils/filter_scp.pl utt.list utt2spk_all |sort -u > utt2spk
utils/filter_scp.pl < utt.list utt2spk_all |sort -u > utt2spk

【中文解释】
输入参数【utt.list】 每行是一个utterance-id
输入参数【utt2spk_all 】 每行是一个含有很多field字段的文本,其中第n序号字段是utterance-id
-f <n> 默认n为1,即utt2spk_all 中的第1个字段就是utterance-id,可以自己指定

【作用】
将utt2spk_all 中 满足utterance-id在utt.list中 的行给导出并重新生成给utt2spk文件

utt.list生成 可以从文本转写txt中得到,用以下命令:

awk '{print $1}' transcripts.txt > utt.list

【中文解释】
transcripts.txt是一个以空格隔开的含有两个字段(分别是utterance-id、text)的多行文本
通过awk打印出第一个字段(utterance-id)到utt.list

【注意】
awk 列数下标默认从1开始
其实utils/filter_scp.pl的作用是,utt2spk_all表 和 utt.list表(id表)【取交集】

相关标签: 语音