大家好,我是 Jack。
今天,给大家介绍一个算法。
AI 算法 5 秒钟,就能克隆你的声音,你信吗?
听听这段音频,猜猜看是 AI 合成音,还是真人录音?
答案是:AI 合成。
这个人的原始声音在这里:
你给这个 AI 克隆声音的算法打几分?
上述两个音频,算法运行起来的效果:
录制一段音频,就可以根据输入的文字,5s 即可自动生成对应的合成音。
突然有个大胆的想法,你说女朋友要是哪天突然不承认自己说过了某句话,我就给她造一份!
兄弟们,我做的对吗?
MockingBird
这个算法是基于比较著名的 Real Time Voice Cloning 实现的。
MockingBird 是最近开源的中文版。
论文的名字是:
1 | Transfer Learning from Speaker Verification to Multispeaker Text-To-Speech Synthesis |
简单介绍下:
算法分为三个模块:encoder模块、systhesis模块、vocoder模块。
- encoder模块将说话人的声音转换成人声的数字编码(speaker embedding)
- synthesis 模块将文本转换成梅尔频谱(mel-spectrogram)
- vocoder模块将梅尔频谱(mel-spectrogram)转换成(波形)waveform
具体的算法原理,大家可以先看论文:
https://arxiv.org/pdf/1806.04558.pdf
论文还没详细看,等我研究好后,后面有机会再发吧。
今天主要聊聊,这个算法怎么玩。
项目地址:
https://github.com/babysor/MockingBird
有深度学习基础的话,这个应该不难。
就是部署环境,分四步:
- Anaconda 配置 Pytorch 开发环境
- 根据项目 requirements.txt 安装第三方库依赖
- 下载权重文件
- 下载训练集,这个几十G,有点大
具体的配置方法,直接看这里:
https://github.com/babysor/MockingBird/blob/main/README-CN.md
环境搭建的方法,可以参考我写过的两篇文章:
都搞定了,就可以运行代码了。
有两种模式可以启动,Web 模式和工具箱模式。
在项目根目录运行:
1 | python web.py |
即可开启 Web ,打开地址 http://localhost:8080 就能操作了。
这个界面比较简陋,建议使用工具箱模式。
1 | python demo_toolbox.py -d <datasets_root> |
datasets_root就是下载好的数据集的地址。
总结
Enjoy it!
喜欢的话,来个再看喽~
如果人多的话,后面我再出个详细的算法原理剖析和训练教程。
我是 Jack,我们下期见~
2021年10月6日 上午7:12 沙发
牛啊
2021年10月6日 上午10:21 板凳
好厉害好厉害
2021年10月20日 下午5:17 地板
👍啊
2021年10月25日 下午7:04 4楼
完美复制
2021年10月25日 下午9:40 5楼
对不对我不知道 还没女朋友倒是真的O(∩_∩)O哈哈~
2021年12月13日 下午6:52 6楼
刚装好环境 准备试一试
2023年4月3日 下午9:37 7楼
有意思!赞!