sailalign是美国南加利福尼亚大学nassos katsamanis等人研发的一个可以实现自动文语对齐的工具包,现在介绍一下sailalign的安装和功能。
本机安装环境:centos 6.6
sailalign最新安装包:sailalign-v1.4.0
(github地址:https://github.com/nassosoassos/sail_align)
安装步骤:
一,安装
(1)安装perl
yum install perl
(2)安装HTK和HDecode(见前面的博文)
(3)安装cpan
yum install cpan
(4)用cpan安装如下模块
cpan Module::Build
(5)Build
perl Build.PL
在这个过程中,要保持联网,因为安装过程中会下载一些声学模型。另外,此间可能会报错,提示有LWP::Simple,Archieve::Extract,Archieve::Tar等模块缺少,此时再用cpan安装即可,安装命令同步骤(4)。
(6)接下来执行如下命令
./Build installdeps
./Build
./Build install
二,测试
为测试模块已经安装,执行如下命令:
sail_align -i support/data/timit_5.wav -t support/data/timit_5.txt -w support/test/local \
-e timit_sample_test -c config/timit_alignment.cfg
(上面的命令是一条命令,不是回车符)
接下来将会运行对齐算法,对timit_5.wav和timit_5.txt进行对齐,结果在“support/test/local/timit_sample_test”文件夹中,同时在“docs”中有关于细节问题的教程。
另外,在运行过程中可能会出现如下提示,无需担心:
“Ambiguous call resolved as CORE::read(), qualify as such or use & at (eval 18) line 4.
Subroutine Audio::Wav::Read::read redefined at /usr/lib/perl5/site_perl/5.10.0/Audio/Wav/Read.pm line 316.”
安装文档给出的解释是:
It is due to a minor bug in the Audio::Wav external dependency and it does not affect sail_align’s result.
看来不用担心
三,说明
sail_align -i support/data/timit_5.wav -t support/data/timit_5.txt -w support/test/local \
-e timit_sample_test -c config/timit_alignment.cfg
命令中的timit_5.wav和timit_5.txt是要对齐的语音和文本。
上述命令将产生三个文件做为对齐结果,分别为:
support/data/test/timit_sample_test/text_align/hyp_test
support/data/test/timit_sample_test/text_align/hyp_test.pra
support/data/test/result_test
接着执行 perl get_txt_time.pl path1 path2 path3
其中path1为存放对齐结果的文件夹,path2为存放对齐后的文本的文件夹,path3存放对齐后文本所对应的时间的文件夹