基本信息
文件名称:机器语音语言应用技术-语音合成.docx
文件大小:586.21 KB
总页数:4 页
更新时间:2025-06-14
总字数:约1.8千字
文档摘要

实验15语音合成

一、实验目的

1.了解语音信号和语音特征提取的基本知识。

2.熟悉文本合成语音的基本原理。

3.熟悉目前主流语音合成的算法框架。

二、实验内容

1.算法原理

1.1基本描述

文本合成语音合成(Text-to-Speech,TTS)是一种将文本转换为语音的技术,是人工智能的子领域之一,赋予机器像人一样自如说话能力的技术,是人机语音交互中重要的一环。语音合成的研究历史可追溯至18至19世纪,从早期的基于规则的机械式、电子式语音合成器,到基于波形拼接、统计参数的语音合成。近年来,基于深度学习(DeepLearning)和神经网络(NeuralNetwork)的建模方法在机器学习领域各个任务上都取得了快速的发展,语音合成技术也在此基础上得到了显著的提升。随着信息技术及人工智能技术的发展,各种应用场景对语音合成的效果有了越来越高的要求。

1.2文本合成语音原理

早期的波形拼接系统受限于音库大小、挑选算法、拼接调整的限制,合成语音质量较低。随后基于统计参数的语音合成方法被提,其基本原理是使用统计模型,对语音的参数化表征进行建模。在合成阶段,给定待合成文本,使用统计模型预测出对应的声学参数,经过声码器合成语音波形。基于隐马尔科夫的统计参数语音合成方法是发展最为完善的一种。

现代工业级神经网络语音合成系统主要包括三个部分:文本前端、声学模型和声码器,文本输入到文本前端中,将文本转换为音素、韵律边界等文本特征。文本特征输入到声学模型,转换为对应的声学特征。声学特征输入到声码器,重建为原始波形。

1.3声学模型

Tacotron-2是目前常用的声学模型。Tacotron-2部分采用典型的序列到序列结构。编码器是3个卷积层和一个双向LSTM层组成的模块,卷积层给予了模型类似于N-gram感知上下文的能力,并且对不发音字符更加鲁棒。经词嵌入的注音序列首先进入卷积层提取上下文信息,然后送入双向LSTM成编码器隐状态。

编码器隐状态生成后,就会被送入注意力机制,以生成编码向量。频谱生成网络的解码器将预处理网络的输出和注意力机制的编码向量做拼接,然后整体送入LSTM中,LSTM的输出用来计算新的编码向量,最后新计算出来的编码向量与LSTM输出做拼接,送入映射层以计算输出。输出有两种形式,一种是频谱帧,另一种是停止符的概率,后者是一个简单二分类问题,决定解码过程是否结束。为了能够有效加速计算,减小内存占用,引入缩减因子r(ReductionFactor),即每一个时间步都允许解码器预测r个频谱帧进行输出。解码完成后,送入后处理网络处理以生成最终的梅尔频谱。

2.功能设计

2.1功能描述

AiNLP人工智能轻量化应用框架是一款面向于人工智能自然语言应用的开发框架,采用统一模型调用、统一硬件接口、统一算法封装和统一应用模板的设计模式,实现了嵌入式边缘计算环境下进行快速的应用开发和项目实施。

AiNLP为模型算法的调用提供RESTful调用接口,实时返回自然语言算法处理结果,同时通过物联网云平台的应用接口,实现与硬件的连接和互动,最终形成各色智联网产业应用。

AiNLP框架如下图所示:

四、实验步骤

1.工程部署

1.1硬件部署

1)准备人工智能边缘应用平台,给边缘计算网关正确连接Wi-Fi天线、麦克风(麦克风阵列或者Ai语音摄像头)、电源。

2)按下电源开关上电启动边缘计算网关,将启动ubuntu操作系统。

3)系统启动后,连接局域网内的Wi-Fi网络,记录边缘计算网关的IP地址,比如:192.168.100.200。

1.2工程部署

1)运行MobaXterm工具,通过SSH登录到边缘计算网关。

2)在SSH终端创建实验工作目录,若文件夹已存在则跳过此步:

3)通过SSH将本实验工程代码和ainlp工程包上传到目录下

2.工程运行

1)在SSH终端输入以下命令运行实验工程:

3.文本合成语音

1)在实验交互区填入需要合成播报的文本信息,点击“发送按钮”,算法将进行语音合成并弹窗提示识别状态。

2)识别成功后,在实验交互区可以看到合成的语音频谱图,点击“播放”按钮可以播放合成的音频内容。