【语音算法】Montreal Forced Aligner教程(MFA,中文语音文本对齐)
Montreal Forced Aligner(MFA)是一种强制对齐工具,可以将音频文件和其对应的文本,转换为音频文件在word、phone等级别的时间对齐的标注。这个工具在语音识别、音频标注和语音合成等领域得到了广泛的应用。本文将为大家介绍如何使用MFA完成音频文件的强制对齐。Montreal Forced Aligner是一种非常有用的工具,可以帮助我们完成音频文件和文本之间的强制对齐,为语
1. 前言
Montreal Forced Aligner(MFA)是一种强制对齐工具,可以将音频文件和其对应的文本,转换为音频文件在word、phone等级别的时间对齐的标注。这个工具在语音识别、音频标注和语音合成等领域得到了广泛的应用。本文将为大家介绍如何使用MFA完成音频文件的强制对齐。
2. 安装
2.1 简易安装
MFA在github上release了一些编译好的可执行文件,直接下载解压即可。虽然版本停留在第一代,但可以满足基本需求了。(PS,亲测 v1.1.0 Beta 2 的bug更少,v1.0.1稳定版并没有更稳定。)
2.2 pip 安装
MFA是一个Python包,可以通过pip来安装。建议单独安装一个新的虚拟环境:
conda create -n aligner -c conda-forge openblas python=3.8 openfst pynini ngram baumwelch
conda activate aligner
安装MFA和第三方包:
pip install montreal-forced-aligner
mfa thirdparty download
部分系统版本较低的还需安装kaldi。
如果安装顺利,通过mfa命令可输出版本详情。
mfa version
3. MFA使用
根据官方文档,为了进行Forced Alignment,我们需要准备:
- 发音词典,对于我们常用的英文、中文,都有比较好的可用的词典。
- 声学模型,可以下载公开的声学模型,也可根据自己数据集训练。
- 语音数据,wav格式,其它格式需要安装sox工具。
- 文本数据,文件名要和对应的语音数据一致。
数据集格式可以如下:
+-- textgrid_corpus_directory
| --- recording1.wav
| --- recording1.TextGrid
| --- recording2.wav
| --- recording2.TextGrid
| --- ...
+-- prosodylab_corpus_directory
| +-- speaker1
| --- recording1.wav
| --- recording1.lab
| --- recording2.wav
| --- recording2.lab
| +-- speaker2
| --- recording3.wav
| --- recording3.lab
| +-- ...
这里以LJSpeech为例说明MFA的使用方法。
(1)下载LJSpeech数据集
需要整理成上述路径格式。
(2)下载英语发音词典
比较常用的是 LibriSpeech Lexicon,可复制保存成lexicon.txt
,与声学模型放置在一起。
此外,还可以在这里下载公开的声学模型和词典。
(3)下载English acoustic model
mfa download acoustic english
对于编译好的可执行文件,已经预放置了该声学模型于 `pretrained_models/english.zip`
也可以直接在LJSpeech上训练acoustic model:
mfa train /path/to/dataset /path/to/lexicon.txt /output/path
(4)Forced Alignment
使用预训练模型来进行alignment:
mfa align /path/to/dataset /path/to/lexicon.txt english /output/path
对于编译好的可执行文件,命令为:
bin/mfa_align /path/to/dataset /path/to/lexicon.txt english /output/path
4. 总结
Montreal Forced Aligner是一种非常有用的工具,可以帮助我们完成音频文件和文本之间的强制对齐,为语音识别、音频标注和语音合成等应用提供了基础的支持。在使用MFA进行强制对齐时,需要准备好音频文件、文本文件和字典文件,并使用MFA提供的命令来进行强制对齐。MFA的安装和使用相对简单,但需要一定的计算机基础和命令行操作的能力。
5. 参考文献
更多推荐
所有评论(0)