树莓派5上部署文本转语音TTS(使用Coqui TTS模型)

前言

本文主要针对2023年发布的树莓派新产品树莓派5的开发使用,为了实现离线的文本(中文)转语音功能,本文使用了TTS技术,本文模型使用的是Coqui的中文模型 。

一、环境需要

树莓派5(最好8GB内存)

Rspberry PI系统

Conda环境(可自行搜索,也可以查看我专栏下的其他文章)

在本文下使用的是Miniconda3

二、TTS

1)TTS是什么

TTS 是“文本到语音”(Text-to-Speech)的缩写,指的是将书面文本转换为自然语言语音的技术。TTS 系统通常涉及以下几个关键组件:
文本分析:分析输入的文本,识别语言、语法、标点符号等信息,以便为语音合成做好准备。
语音合成:根据文本和分析结果生成相应的语音输出。这一步通常使用预录制的音频片段(拼接合成)或通过算法生成(波形合成)。
声音处理:调整语音的音调、速度、音量等,以达到自然的听觉效果。

2)TTS 的应用

辅助技术:帮助视力障碍人士读取文本内容。
虚拟助手:如 Siri、Alexa 等,通过语音与用户交互。
教育:用于语言学习或读书软件,帮助用户理解文本。
娱乐:为游戏、动画或多媒体内容生成配音。

3)常见的 TTS 技术

拼接合成:将短语音片段拼接在一起形成完整的句子。
参数合成:使用数学模型生成声音,通常更灵活,但需要更复杂的算法。
神经网络合成:近年来兴起的深度学习方法,如 Tacotron 和 WaveNet,能够生成更自然、更流畅的语音。

三、使用步骤

1) 创建并激活虚拟环境 tts_env(这里使用单独的一个虚拟环境,防止与其他环境包冲突)

conda create -n tts_env python=3.9

conda activate tts_env

2)安装tts相关依赖项

由于tts相关依赖项体积过于庞大,并且数量众多,所以需要提前安装以避免安装时时间过长导致的pip问题。
并且由于体积大,下载时长长,故选择换源下载,代码如下:

conda install numpy scipy librosa unidecode sentencepiece transformers inflect spacy -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r/ -c conda-forge

3)安装TTS

由于tts包较大,所以我们依然使用换源下载,代码如下:

pip install TTS -i https://pypi.tuna.tsinghua.edu.cn/simple --timeout 100 --retries 5

需等待一定时间,这个过程可能出现错误
博主遇到过轮子安装失败,需要下载rust包的此时可以通过下列代码安装

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh 
 

如果还有其他问题,请在评论区反馈,希望大家能够将遇到的问题解决并把方法上传。

4)下载模型

安装TTS后需要下载语言模型,我们这里选择在coqui.ai 的中文模型,可以到github他的官网寻找,一半来说会有一个压缩包放着,这里博主直接告诉大家路径在哪。
经过寻找,新版本的Coqui里并没有库,所以我们查看已经发行版本
https://github.com/coqui-ai/TTS/releases
在这个网址上可以查看以往的版本,这里博主选择0.6.1的版本
在这里插入图片描述

其中的
在这里插入图片描述
就是我们需要的模型
我们可以通过电脑下载,然后使用Finalshell等软件进行文件传输
在这里插入图片描述

也可以通过命令行下载,但是命令行下载较慢,所以推荐使用电脑使用科学上网工具到github上下载。

wget https://github.com/coqui-ai/TTS/releases/download/v0.6.1_models/tts_models--zh-CN--baker--tacotron2-DDC-GST.zip

下载后确保当前目录有该zip文件

在这里插入图片描述
接着解压zip文件

unzip /home/zx/ts_models--zh-CN--baker--tacotron2-DDC-GST.zip

在这里插入图片描述

5)配置模型文件

首先来到文件目录/home/usr/ENTER/envs/zx2/lib/python3.9/site-packages/TTS
在这里,你应该进入到你所在的环境下的软件包中的TTS文件夹中,在TTS下有tts文件夹,在tts文件夹中有models文件夹 ,如图:

在这里插入图片描述
接下来需要将刚刚解压的文件夹移动到这个文件夹下,在这里我将这个文件夹重新命名成my_models.
接下来进入my_models.查看里面的文件。
在这里插入图片描述
记住这个路径以及这三个文件名,接下来会用。
接下来需要配置 config.json文件。

nano config.json

在这里插入图片描述
将stats_path设置为刚刚的文件scale.stats.npy的路径(这里需要注意,千万不能错误修改该文件,注意没有改错某个地方)
接下来测试运行(这里需要你换成你自己的路径)

tts --text "你好,世界" \
    --config_path "/home/zx/tts_models/config.json" \
    --model_path "/home/zx/tts_models/model.pth" \
    --out_path "output.wav"

这个过程可能出现包冲突(根据给出的信息去重新安装不会互相冲突的包)
会在当前目录下生成一个ouput.wav文件,说明成功!接下来你可以在你的python文件中调用了!

总结

本文详细介绍了如何在树莓派5上使用 Coqui TTS 实现中文文本转语音的功能,包括环境配置、依赖安装、模型下载及测试运行等步骤。希望对大家有所帮助!如果有任何问题,欢迎留言讨论。

★★★★★★ 软件介绍 ★★★★★★一,软件名:TTS-Reader版本号:1.5二,功能介绍 ⒈功能清单 ①英文全文朗读  英语朗读新增语气符号:陈述句语气符号为".",感叹句语气符号"!",疑问句语气符号为"?"。添加新的语气过滤后,更加接近真人发音!不信?您听听!^&^ ②中文全文朗读 ③中英文混合朗读 ④直接导入外部文本文件★⑤文本文件 → WAV音频文件(有换进度条及时间提示) ⑥可进行暂停朗读、继续朗读、停止朗读等操作 ⑦朗读时亦可调整音量和语速 ⑧特有鼠标选定朗读、录入朗读功能 ⑨新增朗读角色选项,分别有3个角色朗读英文(2男1女),目前只有一个男中文朗读者★↘↓↙★★★↘↙★★★↘↓↙★欢迎您选用本版软件,该版本绝对不用其它任何体积庞大的语音库支持,真正无须金山词霸语音驱动支持,功能强大,体积娇小!采用XP界面方案,赏心悦目!希望她能给您的生活、生习和工作带来便利!同时,若您对本软件有任何意见、建议或是发现Bug(水平有限,Bug难免),请EMail我,没有您的支持就没有我的进步,谢谢使用!☆☆本软件采取自愿交费注册,注册后可在软件上提供个性服务(如:嵌入个性照片、个性文字、程序源代码等等)。 ★ 风之竹 20030718 QQ122512447 信息安全工作室 isxuzhu@sohu.com fengzhizhu@hotmail.com http://isxuzhu.myrice.com
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值