Windows 10 中使用 Montreal-Forced-Aligner (MFA) 实现音频和文本强制对齐

文章目录

      • 一、实现目标
      • 二、安装 Montreal-Forced-Aligner
        • 1、使用 Anaconda 虚拟环境
        • 2、修改默认下载路径
        • 3、安装 montreal-forced-aligner 及相关第三方包
        • 4、验证是否安装成功
      • 三、下载声学模型和发音词典
        • 1、命令行方式下载
        • 2、手动方式下载
      • 四、强制对齐
        • 1、准备音频及对应文本
        • 2、开始对齐
      • 五、使用 Praat 工具查看对齐效果
      • 六、参考资料

一、实现目标

一份音频文件(audio.wav),一份音频对应的文本文件(audio.txt),希望能够列出文本中每个单词在音频当中出现的时间点。

二、安装 Montreal-Forced-Aligner

需要在 Anaconda 中创建虚拟环境后安装使用,所以需要先安装 Anaconda,此处已经安装完成,不再说明相关安装流程。

1、使用 Anaconda 虚拟环境

点击 Anaconda Prompt:

点击 Anaconda Prompt

创建虚拟环境:

conda create -n aligner

注:此处指定虚拟环境名称为 aligner,可自定义。

激活该虚拟环境:

conda activate aligner

2、修改默认下载路径

在下载对应模型及词典前,可通过添加环境变量 MFA_ROOT_DIR 修改默认下载路径:

添加环境变量

更多详情参见:https://montreal-forced-aligner.readthedocs.io/en/latest/user_guide/configuration/index.html

3、安装 montreal-forced-aligner 及相关第三方包

conda install -c conda-forge montreal-forced-aligner=2.2.17 openfst=1.8.2 kaldi=5.5.1068

注:可能因为网络问题需要等待很长时间。

安装详情参见:https://montreal-forced-aligner.readthedocs.io/en/latest/installation.html

4、验证是否安装成功

mfa

验证是否安装成功:

验证是否安装成功

三、下载声学模型和发音词典

1、命令行方式下载
  • 声学模型:

mfa model download acoustic english_us_arpa

  • 发音词典:

mfa model download dictionary english_us_arpa

注:此处安装的是 english_us_arpa,可根据需要自行跟换。下载完成后的压缩包不要解压。

查看可安装的声学模型列表:

mfa model download acoustic

此处以下载 english_mfa 为例,展示下载完成界面:

展示下载完成界面

网络问题可能无法下载成功,尝试手动下载。

2、手动方式下载

下载地址:https://mfa-models.readthedocs.io/en/latest/

手动下载

此处以下载发音词典 dictionary 为例,展示下载过程,声学模型 acoustic models 下载方式同理:

(1) 点击图片中的 Browse dictionaries,进入下载界面,通过关键字检索:

点击图片中的 Browse dictionaries

(2) 进入详情页后,点击跳转至 github 下载:

点击跳转至 github 下载

(3) 拉至页面底部,点击下载

拉至页面底部,点击下载

(4) 将文件放至环境变量对应的目录下

如果是 dictionary 就放在 pretrained_models/dictionary 文件夹下,同理,如果下载声学模型 acoustic 则放在 pretrained_models/acoustic 文件夹下:

拉至页面底部,点击下载

注:下载的声学模型压缩包不要解压。pretrained_models 文件夹是安装完 MFA 后自动生成的不用自行创建。

四、强制对齐

1、准备音频及对应文本

创建 corpus_pathtarget_path 文件夹:

创建 corpus_path 和 target_path 文件夹

将音频及文本文件放置 corpus_path 文件夹中:

放置

2、开始对齐

mfa align D:\AnacondaCLI\mfa_model_dic\pretrained_models\corpus_path english_us_arpa english_us_arpa D:\AnacondaCLI\mfa_model_dic\pretrained_models\target_path

参数说明:

mfa align [OPTIONS] CORPUS_DIRECTORY DICTIONARY_PATH ACOUSTIC_MODEL_PATH OUTPUT_DIRECTORY

  • CORPUS_DIRECTORY:需要对齐的音频及文本的文件夹路径
  • DICTIONARY_PATH:发音词典路径
  • ACOUSTIC_MODEL_PATH:声学模型路径
  • OUTPUT_DIRECTORY:对齐后生成的文件的存放路径

可在命令行后面追加 --clean 参数清除上一次使用的缓存,否则即便清空 corpus_path 文件夹下的内容后添加新的数据,执行命令后依然显示之前对齐的结果。

此处可直接使用 english_us_arpa 是因为模型及词典放置在了默认文件夹下,所以无需填写完整路径。

对齐:

对齐

查看文件:

查看文件

五、使用 Praat 工具查看对齐效果

Praat 工具下载链接:https://www.fon.hum.uva.nl/praat/

添加对齐后的文件和音频文件至目标区域:

查看文件

添加对齐后的文件:

对齐后的文件

添加对应的音频文件:

音频文件

同时选中后点击 View & Edit 按钮:

点击按钮

查看对齐结果:

查看对齐结果


六、参考资料

官方资料:

  • github Montreal-Forced-Aligner
  • Installation
  • First steps
  • mfa-models

相关博客:

  • 安装与使用Montreal Forced Aligner(MFA)
  • Montreal Forced Aligner Windows笔记
  • Montreal Forced Aligner使用教程(中文语音文本对齐)
  • Montreal Forced Aligner (MFA)安装教程及异常处理
  • 中文语音文本对齐-MFA-不需要配环境的傻瓜教程
  • Forced Alignment 踩坑日志

其他:

  • textgrid 处理

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/605927.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

docker学习笔记(三)搭建NFS服务实验

目录 什么是NFS 简单架构​编辑 一.搭建nfs服务器 二.新建共享目录和网页文件 三.设置共享目录 四:创建使用nfs共享目录的卷 五:创建容器使用nfs-web-1卷 六:测试访问 七:是否同步测试 什么是NFS NFS 服务器:ne…

人工智能将改变科研?从胰腺癌早筛到新药研发

去年底英国《自然》杂志刊文预测的2024年十大科学进展中,人工智能的进步和ChatGPT人工智能占据前两位。那么,人工智能对于科学而言,它的哪些成果将带来有益的发展?今天我们请知名科普作者张田勘来聊聊这个话题。 (1&am…

万兆以太网MAC设计(13)主机与FPGA之间进行PING

文章目录 前言:一、ICMP校验和计算二、上板效果1、终端命令行1、wireshark捕捉 前言: 在上板尝试进行PING操作的时候,发现一直是请求超时的情况,结果排查发现是首部校验和没有计算的问题。在UDP层,我们不进行校验和是…

ReentrantReadWriteLock源码分析

ReentrantReadWriteLock是基于AQS实现的读写锁,读锁与读锁不互斥、读锁与写锁互斥、写锁与写锁互斥。 类的继承关系 AQS提供了共享和排它两种模式,acquire/release、acquireShared/releaseShared 是AQS里面的两对模板方法。写锁是排它模式基于acquire/…

Yii2 自动生成php代码

文档地址:入门(Getting Started): 用 Gii 生成代码(Generating Code with Gii) - Yii 2.0 权威指南 - 文档 - Yii Framework 中文网 找到配置文件,以我的项目为例: 因为的是开启了路由美化所以访…

在线扭蛋机小程序:商家稳占市场的新突破口

近几年,扭蛋机进入了爆发期,动漫、游戏的发展更是推动了市场的发展,我国扭蛋机正在蓬勃发展中。 不过,在市场规模扩大下,扭蛋机行业的竞争力也在同时加大,企业商家需要在市场竞争中寻求发展新思路&#xf…

开源推荐榜【FunClip是一款完全开源、本地部署的自动化视频剪辑工具】

FunClip是一款完全开源、本地部署的自动化视频剪辑工具,通过调用阿里巴巴通义实验室开源的FunASR Paraformer系列模型进行视频的语音识别,随后用户可以自由选择识别结果中的文本片段或说话人,点击裁剪按钮即可获取对应片段的视频(…

基于EBAZ4205矿板的图像处理:12图像二值化(阈值可调)

基于EBAZ4205矿板的图像处理:12图像二值化(阈值可调) 我的项目是基于EBAZ4205矿板的阈值可调的图像阈值二值化处理,可以通过按键调整二值化的阈值,key1为阈值加1,key4为阈值减1,key2为阈值加10,key5为阈值…

【AI+音视频总结】如何在几分钟内用智能工具摘取音视频精华?揭秘下一代学习和内容创作神器!

今天无意发现一个网站,可以一步到位完成AI音视频总结。 我之前对于音视频总结的步骤还是借助 工具下载 剪映来完成的。详情可以参考之前写的一篇文章 【AI应用】模仿爆款视频二次创作短视频操作步骤 。 这里介绍的网站是 BibiGPT 。 BibiGPT AI 音视频助理 - 它是…

构建第一个ArkTS应用之@AppStorage:应用全局的UI状态存储

AppStorage是应用全局的UI状态存储,是和应用的进程绑定的,由UI框架在应用程序启动时创建,为应用程序UI状态属性提供中央存储。 和AppStorage不同的是,LocalStorage是页面级的,通常应用于页面内的数据共享。而AppStora…

VMare Workstation安装ubuntu虚拟机异常问题处理

安装方法 ubuntu官网下载插件 异常处理 开启时报错"unable to proceed without a log file" 遇到此问题的都有一个共同点,工作目录路径上都带了数字,比如"Ubuntu 64位 01",解决方法为: 选中"Ubuntu 64位…

可视化大屏的应用:电子政务领域的巨大应用价值

可视化大屏在电子政务领域的应用价值主要体现在以下几个方面: 数据监控与分析 可视化大屏可以将政务数据以图表、地图等形式展示在大屏上,帮助政府部门实时监控和分析各项指标和数据变化。例如,可以实时显示人口统计、经济指标、环境监测等…

利用“AnaTraf“网络流量分析仪轻松诊断和优化网络

网络性能监测和诊断(NPMD)是网络管理和优化的重要环节,准确快速地定位和排除网络故障对于保障业务正常运转至关重要。作为一款专业的网络流量分析设备,AnaTraf网络流量分析仪凭借其强大的流量分析和故障诊断功能,为网络管理者提供了一个高效的网络优化解决方案。 全面掌握网络…

如何将pdf文件换成3d模型?---模大狮模型网

PDF文件是一种广泛用于文档传输和共享的格式,但在某些情况下,我们可能希望将其中的内容转换为更具交互性和视觉效果的3D模型。本文将介绍如何将PDF文件转换为3D模型,为您展示实现这一想象的步骤。 选择合适的PDF文件: 首先&#…

利用AnaTraf网络流量分析仪轻松解决网络故障问题

网络故障是每个企业都必须面对的头痛问题。如何快速定位并解决网络问题,不仅能提高员工工作效率,也能减少因网络问题而带来的经济损失。 AnaTraf网络流量分析仪就是为解决这一问题而问世的一款高性能网络诊断工具。它能够对网络流量进行全面的实时监控和分析,帮助网络管理员快…

软考中级之数据库系统工程师笔记总结(六)多媒体基础

作者:Maynor 博客之星大数据领域Top1,GitHub项目awesome-chatgpt-project作者, 大厂程序员, 全网技术矩阵粉丝7w 公众号:Maynor996📢博客主页:https://manor.blog.csdn.net 📢欢迎点赞 👍 收藏 ⭐留言 &am…

请求响应里面的日期参数

日期参数 需要在控制类使用DateTimeFormat注解 package com.ming.controller; ​ ​ import org.springframework.format.annotation.DateTimeFormat; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.Rest…

1756jsp农产品销售管理系统Myeclipse开发mysql数据库C2C模式java编程计算机网页项目沙箱支付

一、源码特点 java 农产品销售管理系统 是一套完善的web设计系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统采用web模式,系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发&#xff0…

在做题中学习(53): 寻找旋转数组中的最小值

153. 寻找旋转排序数组中的最小值 - 力扣(LeetCode) 解法:O(logn)->很可能就是二分查找 思路:再看看题目要求,可以画出旋转之后数组中元素的大小关系: 首先,数组是具有二段性的(适配二分查…

8.1 AWS创建用户池(Amazon Cognito)和用户

AWS创建用户池(Amazon Cognito)和用户 目录一、Amazon Cognito1. 创建用户池2. 添加用户 目录 一、Amazon Cognito Amazon Cognito: https://aws.amazon.com/cognito/ Amazon Cognito 是亚马逊提供的一种身份验证、授权和用户管理服务。它为开发人员提供…