码迷,mamicode.com
首页 > 其他好文 > 详细

基于Tacotron模型的语音合成实践

时间:2019-12-23 22:46:09      阅读:135      评论:0      收藏:0      [点我收藏+]

标签:url   mode   logs   ash   替换   时间   一个   pre   好的   

技术图片

Tacotron模型架构图

 

(1)   下载tacotron模型的实现到本地,这里是基于GitHub上一个tacotron模型的实现开展研究的,GitHub网址:https://github.com/keithito/tacotron,由于

谷歌没有给出tacotron模型的官方实现,这里给出了tacotron模型的非官方实现;

1)    研究是在linux下开展的,由于源码较多,只展示tacotron模型源码的基本结构如下:

技术图片

 

 

2)   安装一些依赖项:

① 安装Python 3。

② 安装最新版本的TensorFlow。

③ 安装此模型的一些要求:pip install -r requirements.txt

   requirements.txt 文件:

技术图片

 

 

安装过程:

技术图片

 

 

(2)     基于预先训练好的模型来进行语音和成: 

1)   下载并解压缩模型: 

curl http://data.keithito.com/data/speech/tacotron-20180906.tar.gz | tar xzC /tmp

技术图片

 

 

2)   运行服务器,基于端口(9000)

python3 demo_server.py --checkpoint /tmp/tacotron-20180906/model.ckpt

技术图片

 

 技术图片

 

 

3)    将浏览器指向localhost:9000,即可输入要合成的内容,并输出合成的音频

合成中:

技术图片

 

 

合成完毕:

技术图片

 

 

(3)     使用其他数据,训练,合成语音

1)   下载语音数据集,我们尝试下载了一些数据集,如LJ Speech(LJ语音数据集);

2)   将数据集解压缩到 ai/tacotron(ai是我电脑下的一个目录)

解压缩后,对于LJ语音,对应的树如下所示:

  tacotron

  |- LJSpeech-1.1

      |- metadata.csv

      |- wavs

3)   预处理数据:

     python3 preprocess.py --dataset ljspeech

4)   训练模型

     python3 train.py

5)   从检查点合成

     python3 demo_server.py –checkpoint ~/tacotron/logs-tacotron /model .ckpt-185000

可将“185000”替换为要使用的检查点编号,然后打开浏览器localhost:9000并键入您要说的内容,即可合成。

在使用其他数据集来训练和合成的时候,经常由于不知道参数的意义、如何设置,机器太慢,导致花了很长时间都没有效果,这一块没有做出理想的效果。

 

       

基于Tacotron模型的语音合成实践

标签:url   mode   logs   ash   替换   时间   一个   pre   好的   

原文地址:https://www.cnblogs.com/xiaoxb17/p/12088478.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!