文章插图
音画代码(这个Python包只需几行代码)
Lucid Sonic Dreams 包可以实现 GAN 生成图像的「音画同步」效果,且支持自定义 。GAN 生成图像奇幻诡谲,对此我们早已不陌生 。如果它们还可以卡音效呢?最近,有人就创建了一个实现类似效果的 Python 包——Lucid Sonic Dreams,只用几行代码就可以实现 AI 生成画作与音乐的同步 。
- GitHub 地址:https://github.com/mikaelalafriz/lucid-sonic-dreams
- Colab 教程地址:https://colab.research.google.com/drive/1Y5i50xSFIuN3V4Md8TB30_GOAtts7RQD?usp=sharing
工作原理
生成艺术品通常是由 GAN 网络来完成的 。Lucid Sonic Dreams 包默认使用 StyleGAN2-ADA 架构,不过 GAN 架构也可以自定义 。将这些模型在特定「风格」的图像数据集上进行训练,使之能够输出与训练图像风格一致的无穷多张图像 。此外,Lucid Sonic Dreams 使用 Justin Pinkney 创建库中的 StyleGAN2 预训练模型(地址:
https://github.com/justinpinkney/awesome-pretrained-stylegan2)。
那么这些图像到底是如何生成的呢?
将输入馈送至 StyleGAN2 模型(输入为有 512 个数字的向量),输入决定了模型的输出图像,因此对输入向量进行微小更改也将带来输出图像的微小变化 。
现在,有趣的部分到了:如果我们从音乐中获取声波,从声波中提取数值(如振幅)并添加至输入向量,会发生什么?
Lucid Sonic Dreams 对视频每一帧执行这些操作,生成脉冲与变换与音乐一致的图像 。
具体而言,利用 Lucid Sonic Dreams 包,音乐控制了 3 个主要视觉组件:脉冲(Pulse)、运动(Motion)和类别(Class):
- 脉冲指视觉画面随着音乐的敲击性节奏而「跳动」 。从数学角度来看,「脉冲」是向输入向量暂时添加声波振幅的结果(即在下一帧中该向量仍是初始向量);
- 运动指视觉画面变换的速度 。从数学上看,它是向输入向量累积添加振幅(即添加的振幅后续不会被清零);
- 类别指生成图像中物体的标签,例如基于 WikiArt 图像训练的风格中就有 167 个类别(包括梵高、达芬奇、抽象派等) 。而这些由音调进行控制,具体而言,12 个音高分别对应 12 个不同类别 。这些音高的振幅对传输至第二个输入向量(类别向量)的数字造成影响,而这由模型生成的对象来决定 。
使用 Lucid Sonic Dreams 包,你可以做到这些
Lucid Sonic Dreams 具备极强的易用性和灵活性 。用户可以使用 pip 进行安装:
然后只需输入几行 Python 代码即可:
from lucidsonicdreams import LucidSonicDreamL = LucidSonicDream(song = 'chemical_love.mp3', style = 'abstract photos')L.hallucinate(file_name = 'chemical_love.mp4') 改变风格
运行以下代码,我们可以查看默认可用的风格:
from lucidsonicdreams import show_stylesshow_styles() 这样就可以得到一组风格名称,这些风格来自 Justin Pinkney 创建的库 。你还可以输入自己的 StyleGAN 权重,或者使用其他 GAN 架构 。
以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!
「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助:- 格力空调故障代码大全(格力空调五大常见故障代码 C5、E1、E2、E4、E5的排除方法)
- 日志代码 小白学习如何打日志
- 格力空调故障代码大全 格力空调比较常见故障代码介绍
- ibooks怎么用 苹果iBooks的这个妙用你尝试过吗
- 我会和谁结婚测试,谁能解释一下这个卦象啊 测我和他会结婚吗?
- 五官中郎将 五官中郎将这个官职到底是做什么的?
- 凤凰阁音画 相思共赋 | 凤凰阁
- 中国风水第一村 中国风水圣地在这个村庄
- 喀纳斯湖畔古村落 喀纳斯这个古村落人少景美
- 身份证可以查出来结婚了吗,如果有一个人的身份证号,可以知道这个人结婚没