littlebot
Published on 2025-04-11 / 1 Visits
0

【源码】基于PythonPyTorch的Tacotron2文本到语音合成系统

项目简介

本项目是基于Tacotron2模型的文本到语音合成系统。Tacotron2作为深度学习模型,可将文本转换为语音波形,高效实现语音合成。项目在原有基础上修改扩展,适配特定语言需求,支持台湾拼音(TW)和台罗拼音(TLP)的语音合成。

项目的主要特性和功能

  1. 文本清洗和预处理:多种文本清洗器可去除无关字符和标记,让文本更适合模型训练。
  2. 台湾拼音和台罗拼音支持:借助TWDict和ARPAbet处理,实现台湾拼音和台罗拼音的语音合成。
  3. 音频文件处理:能筛选音频文件,划分训练集和测试集,为模型训练准备数据。
  4. 模型训练:提供训练脚本,支持分布式环境下的模型训练。
  5. 符号和拼音处理:具备符号和拼音的转换处理功能,便于模型处理文本和语音数据。

安装使用步骤

安装Anaconda虚拟环境

  • 下载并安装Anaconda:wget https://repo.anaconda.com/archive/Anaconda3-2021.05-Linux-x86_64.sh --no-check-certificate
  • 安装Anaconda:bash Anaconda3-2021.05-Linux-x86_64.sh
  • 配置环境变量:echo 'export PATH="~/anaconda3/bin:$PATH"' >> ~/.bashrc
  • 激活环境变量:source ~/.bashrc
  • 创建虚拟环境:conda create -n tacotron2 python=3.8 -y
  • 激活虚拟环境:conda activate tacotron2

安装依赖库

  • 安装TensorFlow GPU版本:pip install tensorflow-gpu==2.4.1
  • 安装PyTorch:conda install pytorch torchvision torchaudio cudatoolkit=11.3 -c pytorch -y
  • 安装其他依赖:pip install -r requirements.txt

训练模型

  • 单GPU训练:python train.py --o='model' --l='logs'
  • 多GPU训练:nohup python -m multiproc train.py --o='model' --l='logs' --n_gpus='10' >& M1.log &
  • 查看训练日志:tail -f M1.log

语音合成

  • 下载WaveGlow模型并放置在model/waveglow目录下。
  • 编辑synthesizer.py,设置模型路径:tacotron_model='tacotron2/model/checkpoint_XXXXXX'
  • 运行合成脚本:python synthesizer.py
  • 合成后的音频文件将保存在wavs目录中。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】