Py学习  »  Python

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

Crossin的编程教室 • 2 年前 • 240 次点击  

大家好,欢迎来到 Crossin的编程教室 !

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

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就是下载好的数据集的地址。

剩下的,就看各位的发挥啦。Enjoy it!

如果文章对你有帮助,欢迎转发/点赞/收藏~

作者:Jack Cui

来源:Jack Cui


_往期文章推荐_

如何用100行Python代码做出魔性声控游戏“八分音符酱”




如需了解付费精品课程教学答疑服务
请在Crossin的编程教室内回复: 666

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/123532
 
240 次点击