# VITS+BigVGAN+SpanPSP 中文TTS
本项目实现vits+BigVGAN端到端的中文TTS 模型,推理阶段加入中文韵律预测模型,实现的带韵律预测的中文TTS模型。
## 1.环境准备(Environment)
- Python 3.7 or higher.
- Pytorch 1.9.0, or any compatible version.
- NLTK 3.2, torch-struct 0.4, transformers 4.3.0, or compatible.
- pytokenizations 0.7.2 or compatible.
- 安装espeak库:apt-get install espeak
- 编译monotonic_align:
```
cd monotonic_align
python setup.py build_ext --inplace
```
## 2.数据(Dataset)
使用标贝16k,10000句中文女声数据进行tts训练。
## 3.项目结构(Repository structure)
```
VITS-BigVGAN-Chinese
├──benepar
| ├──integrations
| ├── ...
├──bert-base-chinese
| ├──config.json
| ├──pytorch_model.bin
| └──vocab.txt
├──configs
| ├──baker_bigvgan_vits.json
├──dataset
| ├──baker
| ├──000001.txt
| ├──000001.wav
| ├── ...
| ├──baker_npz
| ├──000001-010000.txt
| └──baker_train.txt
├──logs
├──misc
├──monotonic_align
├──text
├──vits_out
├──weights
| ├──pretrained_SpanPSP_Databaker.pt
├──...
├──README.md
```
### bert-base-chinese
> Link: https://huggingface.co/bert-base-chinese
## 4.数据预处理(Data preprocessing)
使用标贝16k女声数据集
```
cd dataset
#解压baker的txt
tar -xvf baker.tar
#拷贝你的baker音频文件到./dataset/baker下
cp /你的标贝数据路径/*.wav ./baker/
cd ..
python preprocess.py
```
预处理数据格式如下所示:
```
├──dataset
| ├──baker #预处理文件
| ├──000001.txt
| ├──000001.wav
| ├── ...
| ├──baker_npz #预处理后文件保存路径
| ├──000001-010000.txt #baker原始标注文件
| └──baker_train.txt #baker转音素韵律后标注文件
```
000001.wav中文标注
```
卡尔普#2陪外孙#1玩滑梯#4。
```
转为dataset/baker/000001.txt
```
sil k a2 #0 ^ er2 #0 p u3 #2 p ei2 #0 ^ uai4 #0 s uen1 #1 ^ uan2 #0 h ua2 #0 t i1 #4 sil eos
```
注:如需使用其他数据集,需按标贝格式和韵律标注方式制作数据集。
## 5.模型训练(Training)
```
python train_vits_with_bigvgan.py -c configs/baker_bigvgan_vits.json -m baker
```
## 6.模型推理(Inference)
模型tts合成vits_strings.txt文本内容
```
python vits_strings_psp.py
```
其中vits_strings.txt文本内容在推理阶段使用SpanPSP的模型进行语录预测:
```
#输入:
猴子用尾巴荡秋千
#韵律预测结果:
猴子#2用#1尾巴#2荡秋千#4。
```
## 7.合成效果(Results)
标贝数据集合成效果:
```
#输入:
云雾有时宛如玉带平卧峰峦山涧,有时炊烟袅绕,薄雾轻旋。
#韵律预测结果:
云雾#2有时#1宛如#1玉带#2平卧#2峰峦#1山涧#3有时#2炊烟#1袅绕#3薄雾#1轻旋#4
#合成结果:
./vits_out/baker_output.wav
```
## 8.预训练模型(Pretrained model)
#### weights/pretrained_SpanPSP_Databaker.pt:
https://pan.baidu.com/s/1Cox0ouFCUKJLemysiLZ4vQ 提取码:7ell
#### bert-base-chinese:
https://pan.baidu.com/s/1twX20z1O_xqMVyq_le4E5g 提取码:p12j
#### ./logs/baker/G_745000.pth:
链接:https://pan.baidu.com/s/1qxR1AdQAFrOR1QItofwLGA 提取码:n8cs
## 扩展(Extension)
#### 最近在试验基于4k视频的人物换装和物品替换,感兴趣的可以去看看视频展示的效果,我会在空闲时逐步整理代码更新项目:
https://github.com/Zz-ww/Virtual-try-on-4kVideo
## 参考(Reference)
- BigVGAN: https://arxiv.org/abs/2206.04658
- BigVGAN:https://github.com/sh-lee-prml/BigVGAN
- VITS: https://github.com/jaywalnut310/vits
- SpanPSP:https://github.com/thuhcsi/SpanPSP
- vits_chinese:https://github.com/lutianxiong/vits_chinese
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
基于PyTorch的VITS-BigVGAN的tts中文模型,加入韵律预测模型。.zip (71个子文件)
DSpytorch180
utils.py 7KB
attentions.py 12KB
model_vits_with_bigvgan.py 25KB
losses.py 2KB
prosody_txt.py 2KB
preprocess.py 3KB
train_bigvgan_vocoder.py 12KB
misc
pypinyin-local.dict 7KB
treebanks.py 6KB
models_bigvgan.py 12KB
make_voice_txt.py 2KB
vits_out
output.wav 186KB
baker_output.wav 186KB
ouput.wav 186KB
vits_strings.txt 81B
configs
baker_bigvgan_vits.json 1KB
train_vits_with_bigvgan.py 13KB
dataset
baker.tar 9.78MB
000001-010000.txt 1.55MB
baker_train.txt 1.66MB
benepar
nkutil.py 2KB
retokenization.py 11KB
__init__.py 594B
subbatching.py 2KB
partitioned_transformer.py 7KB
char_lstm.py 6KB
parse_base.py 8KB
ptb_unescape.py 3KB
parse_chart.py 17KB
integrations
__init__.py 0B
spacy_extensions.py 5KB
downloader.py 1KB
nltk_plugin.py 12KB
spacy_plugin.py 6KB
__pycache__
spacy_plugin.cpython-37.pyc 6KB
spacy_extensions.cpython-37.pyc 4KB
nltk_plugin.cpython-37.pyc 11KB
__init__.cpython-37.pyc 164B
downloader.cpython-37.pyc 1KB
decode_chart.py 10KB
spacy_plugin.py 497B
__pycache__
nkutil.cpython-37.pyc 2KB
retokenization.cpython-37.pyc 7KB
ptb_unescape.cpython-37.pyc 3KB
parse_chart.cpython-37.pyc 11KB
char_lstm.cpython-37.pyc 5KB
parse_base.cpython-37.pyc 7KB
decode_chart.cpython-37.pyc 10KB
__init__.cpython-37.pyc 494B
partitioned_transformer.cpython-37.pyc 8KB
subbatching.cpython-37.pyc 2KB
data_utils_vocoder.py 10KB
transforms.py 8KB
text
__init__.py 1KB
LICENSE 1KB
symbols.py 862B
mel_processing.py 4KB
commons.py 5KB
modules.py 18KB
requirements.txt 251B
pinyin_dict.py 10KB
monotonic_align
__init__.py 631B
setup.py 204B
core.c 759KB
build
temp.linux-x86_64-3.7
core.o 2.06MB
core.pyx 1KB
monotonic_align
core.cpython-37m-x86_64-linux-gnu.so 846KB
__pycache__
__init__.cpython-37.pyc 802B
README.md 4KB
vits_strings_psp.py 4KB
seq_with_label.py 4KB
共 71 条
- 1
资源评论
嵌入式大圣
- 粉丝: 2318
- 资源: 680
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- JAVA的SSH框架综合CRM客户管理财务系统源码数据库 MySQL源码类型 WebForm
- STM32F030C8T6单片机 SPI SD卡数据读写,FatFs文件系统
- 考研高等数学重点知识点解析及其应用
- Java编程教程:深入解析输入类型异常及其处理方法
- 中国矿业大学智能电网ppt习题
- 电流+转速双闭环pi传递参数仿真
- 大学生数学建模竞赛活动的一些问题 共38页.pptx
- C#ASP.NET智能PDAC物联网后台管理系统源码带文档数据库 SQL2008源码类型 WebForm
- 单片机实验5思考题答案
- JAVA的SpringBoot物联网风电监测系统源码 iot物联网风电能源电场监控系统源码数据库 MySQL源码类型 WebFo
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功