危!我用python克隆了女朋友的声音!

Jack Cui

共 1447字,需浏览 3分钟

 ·

2021-10-03 00:14

大家好,我是 Jack。

今天,给大家介绍一个算法。

AI 算法 5 秒钟,就能克隆你的声音,你信吗?

听听这段音频,猜猜看是 AI 合成音,还是真人录音?

答案是:AI 合成。

这个人的原始声音在这里:

你给这个 AI 克隆声音的算法打几分?

上述两个音频,算法运行起来的效果:


录制一段音频,就可以根据输入的文字,5s 即可自动生成对应的合成音

突然有个大胆的想法,你说女朋友要是哪天突然不承认自己说过了某句话,我就给她造一份!

兄弟们,我做的对吗?

MockingBird

这个算法是基于比较著名的 Real Time Voice Cloning 实现的。

MockingBird 是最近开源的中文版。

论文的名字是:

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 模式和工具箱模式。

在项目根目录运行:

python web.py

即可开启 Web ,打开地址 http://localhost:8080 就能操作了。

这个界面比较简陋,建议使用工具箱模式。

python demo_toolbox.py -d <datasets_root>

datasets_root就是下载好的数据集的地址。

总结

Enjoy it!

喜欢的话,来个再看喽~

如果人多的话,后面我再出个详细的算法原理剖析和训练教程。

我是 Jack,我们下期见~

·················END·················

推荐阅读

•   好家伙,又火几个。。•   我最成功的一笔投资!•   我,从高考到程序员的成长之路

浏览 15
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报