范文健康探索娱乐情感热点
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

音画代码(简单代码)

  音画代码(简单代码)原创机器之心Pro2021-03-24 13:17:42机器之心报道
  编辑:魔王
  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
  在该项目提供的 demo 视频中,伴随着 Saje 的歌「Raspberry」,GAN 生成的图像不断变换且呈现出了对应的节奏。
  工作原理
  生成艺术品通常是由 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 个不同类别。这些音高的振幅对传输至第二个输入向量(类别向量)的数字造成影响,而这由模型生成的对象来决定。
  项目作者表示,这个想法受到 Matt Siegelman 的 Deep Music Visualizer 项目的启发。目前网上也有一些类似的项目,但 Lucid Sonic Dreams 的独特之处在于以 Python 包形式实现,且允许自定义。
  使用 Lucid Sonic Dreams 包,你可以做到这些
  Lucid Sonic Dreams 具备极强的易用性和灵活性。用户可以使用 pip 进行安装:
  然后只需输入几行 Python 代码即可:fromlucidsonicdreamsimportLucidSonicDream      L=LucidSonicDream(song='chemical_love.mp3',style='abstractphotos')  L.hallucinate(file_name='chemical_love.mp4')
  改变风格
  运行以下代码,我们可以查看默认可用的风格:fromlucidsonicdreamsimportshow_styles      show_styles()
  这样就可以得到一组风格名称,这些风格来自 Justin Pinkney 创建的库。你还可以输入自己的 StyleGAN 权重,或者使用其他 GAN 架构。
  调整参数
  Lucid Sonic Dreams 包的默认设置很好用,但它实际上有很多参数——30 多个,不过这些参数是可以调整的(参数详细信息参见 Colab 教程)。
  哪些参数最重要呢?我们来看整个视频生成 pipeline:
  首先,对输入向量进行初始化和插值,作为视频的「基础运动」(base motion)。参数 speed_fpm 控制运动的速度,fpm 表示「每分钟帧数」,即每分钟初始化的向量数。对于每个后续帧而言,参数 pulse_react, motion_react, and class_react 控制音频操纵每个对应组件的程度。
  模型基于这些向量生成图像后,图像被传输经过一系列特效(也对音乐产生反应)。默认情况下,Lucid Sonic Dreams 包具备「contrast」和「flash」特效,可以与音频的敲击性节奏同步。通过设置 contrast_strength 和 flash_strength 参数,即可进行调整。使用者还可以创建自定义特效。
  以下代码展示了调参过程:L=LucidSonicDream('pancake_feet.mp3',style='modernart')L.hallucinate(file_name='pancake_feet.mp4',  speed_fpm=0,  motion_react=0.8,  contrast_strength=0.5,  flash_strength=0.7)
  使用自己的 StyleGAN 权重
  如果你自己训练过 StyleGAN,或者在网上获得了一些模型权重,你可以选择将文件路径传输至这些权重,作为风格参数的值。
  例如,文章开头的视频使用的是 Jeremy Torman 训练的模型。生成视频所用代码如下所示:L=LucidSonicDream(song='raspberry.mp3',style='VisionaryArt.pkl')L.hallucinate(file_name='raspberry.mp4',  pulse_react=1.2,  motion_react=0.7,  contrast_strength=0.5,  flash_strength=0.5)
  使用单独的音轨
  这个包还可以用作音乐可视化工具,使用者可以上传单独的音轨,进而控制 Pulse、Motion、Class、Contrast 和 Flash。如果你想使这些视觉组件与特定的乐器同步,使用这个包是不错的选择。你还可以利用这些单独的音轨自定义特效。
  以下是示例代码:L=LucidSonicDream(song='lucidsonicdreams_main.mp3',  pulse_audio='lucidsonicdreams_pulse.mp3',  class_audio='lucidsonicdreams_class.mp3',  style='wikiart')L.hallucinate('lucidsonicdreams.mp4',  pulse_react=0.25,  motion_react=0,  classes=[1,5,9,16,23,27,28,30,50,68,71,89],  dominant_classes_first=True,  class_shuffle_seconds=8,  class_smooth_seconds=4,  class_pitch_react=0.2,  contrast_strength=0.3)
  自定义特效
  除了内置的「Contrast」和「Flash」特效外,Lucid Sonic Dreams 包还允许用户自定义创建特效。用户只需创建一个包含至少以下 3 个参数的函数即可:array,表示应用特效的图像;strength,决定对音乐的反应强度;amplitude 表示在任意给定时间点的音量。之后,将该自定义函数传输至 EffectsGenerator 对象。
  作者用以下代码进行了试验,其使用的是 scikit-image 的 swirl 特效:importnumpyasnpfromskimage.transformimportswirlfromlucidsonicdreamsimportEffectsGeneratordefswirl_func(array,strength,amplitude):  swirled_image=swirl(array,  rotation=0,  strength=100*strength*amplitude,  radius=650)return(swirled_image*255).astype(np.uint8)swirl_effect=EffectsGenerator(swirl_func,  audio='unfaith.mp3',  strength=0.2,  percussive=False)L=LucidSonicDream('unfaith.mp3',  style='textures')L.hallucinate('unfaith.mp4',  motion_react=0.15,  speed_fpm=2,  pulse_react=1.5,  contrast_strength=1,  flash_strength=1,  custom_effects=[swirl_effect])files.download("unfaith.mp4")
  使用其他 GAN 架构
  你还可以使用其他 GAN 架构。只需定义一个函数,该函数以一组噪声向量和类别向量(NumPy 数组)作为输入,输出一组 Pillow 图像。事实上,该函数甚至不需要使用 GAN,它可以是能够将输入向量转换成图像的任意函数。
  下列代码使用 BigGAN 的 PyTorch 实现复现了 Deep Music Visualizer:frompytorch_pretrained_bigganimportBigGAN,convert_to_imagesimporttorchbiggan=BigGAN.from_pretrained('biggan-deep-512')biggan.to('cuda:0')defbiggan_func(noise_batch,class_batch):  noise_tensor=torch.from_numpy(noise_batch).cuda()  class_tensor=torch.from_numpy(class_batch).cuda()  withtorch.no_grad():  output_tensor=biggan(noise_tensor.float(),class_tensor.float(),truncation=1)  returnconvert_to_images(output_tensor.cpu())L=LucidSonicDream('sea_of_voices_inst.mp3',  style=biggan_func,  input_shape=128,  num_possible_classes=1000)L.hallucinate('sea_of_voices.mp4',  output_audio='sea_of_voices.mp3',  speed_fpm=3,  classes=[13,14,22,24,301,84,99,100,134,143,393,394],  class_shuffle_seconds=10,  class_shuffle_strength=0.1,  class_complexity=0.5,  class_smooth_seconds=4,  motion_react=0.35,  flash_strength=1,  contrast_strength=1)

员工幸福感(员工幸福感的自我感悟)员工幸福感(员工幸福感的自我感悟)华章经管20180730001809华章经管20周年这个时代处在正急速变换的大背景下,人与组织不再是过去简单的单向关系,以绩效为中心的思维注定是短银行资金紧张(十大安全借钱平台)银行资金紧张(十大安全借钱平台)4月23日,21世纪经济报道记者从交易员处获悉,银行间资金持续紧张,银行间市场的质押式回购利率R001最高利率达18,R007最高利率达15,R01万绮雯老公(万绮雯老公是谁)万绮雯老公(万绮雯老公是谁)人美腿长的马小玲成功引起了20世纪末最后的僵尸热潮,引起了无数人的注意,全城的话题纷纷围绕我和僵尸有个约会这部经典之作。这个爱钱嘴贫的驱魔龙族马氏第40示波器使用方法(这些细节100个工程师有99个会忽视!都在误操作)示波器使用方法(这些细节100个工程师有99个会忽视!都在误操作)相信对于电源工程师,示波器的功劳是不可替代的,一旦产品有问题就需要抓波形,抓时序,测试准确数值,以帮助工程师分析,教大家airpods离线怎么定位的方法最近有挺多人都跟小编说想要了解airpods离线怎么定位,那么或许你会好奇为什么要了解airpods离线怎么定位,这里小编就来给大家细细的说道说道,如今很多小伙伴们在玩手机与各种电寒冷的近义词(孩子饭后记两个)寒冷的近义词(孩子饭后记两个)语文二年级下近反义词归纳汇总,孩子饭后记两个,做题不多想!专栏小学生写字课作者教师育儿29。9币35人已购查看第一单元近义词丝绦丝带裁剪奔跑仔细细心寻中国公众科技网(中国专利信息网)中国公众科技网(中国专利信息网)各设区市科协有关单位按照江苏省科协省科技厅联合下发的关于举办2020年中国创新方法大赛江苏赛区决赛的通知要求,近期省科协研究制定了2020年中国创新欧铁中国官网(欧铁是哪个国家)欧铁中国官网(欧铁是哪个国家)新快报记者陈镟跟幅员辽阔的中国相比,欧洲其实面积并不大,但国家众多,而且铁路交通十分发达,遍布整个欧洲的同时班次密集快速准时。无论你是想到充满现代气息青岛黑老大(青岛于竹君抓起来了吗)青岛黑老大(青岛于竹君抓起来了吗)原创青岛新闻网20191111094840一审宣判照片。青岛新闻网11月11日讯(记者陈志伟)出来混总是要还的!今年2月27日,曾在青岛市市北区称bms系统(医学bms是什么意思)bms系统(医学bms是什么意思)新能源BMS20210527223146电流作为动力电池管理过程中的一个重要参数,电流的采集方案影响到系统成本采集精度,采集精度直接影响到SOC的赠刘景文古诗的意思(赠刘景文古诗的意思及注释)赠刘景文古诗的意思(赠刘景文古诗的意思及注释)赠刘景文是北宋文学家苏轼创作的一首七言绝句。这首诗作于元祐五年(公元1090年),是送给好友刘景文的一首勉励诗。本文整理了原文及注释赏
教大家vivoX27什么时候发布的方法最近有挺多人都跟小编说想要了解vivoX27什么时候发布,那么或许你会好奇为什么要了解vivoX27什么时候发布,这里小编就来给大家细细的说道说道,如今很多小伙伴们在玩手机与各种电数码知识红米k30s有防误触吗防误触功能在哪如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道红米k30s有防误数码知识腾讯课堂怎么看听课记录怎么查上课记录如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道腾讯课堂怎么看听课数码知识腾讯课堂怎么查上课记录怎么查看听课记录如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道腾讯课堂怎么查上课数码知识怎么一键清空淘宝聊天记录批量清空聊天记录教程如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道怎么一键清空淘宝聊数码知识qq小帆船怎么弄出来小帆船怎么快速获得如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道qq小帆船怎么弄出数码知识华为白色圆点怎么关掉取消圆球教程如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道华为白色圆点怎么关数码知识华为手机左滑那个页面怎么关掉关掉左滑页面教程如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道华为手机左滑那个页数码知识钉钉头像上的小卡通怎么设置设置头像挂件教程如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道钉钉头像上的小卡通数码知识vivoy7s怎么开微信视频美颜微信怎么开美颜如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道vivoy7s怎么数码知识小米10如何微信美颜微信视频支持美颜吗如今使用IT数码设备的小伙伴们是越来越多了,那么IT数码设备当中是有很多小技巧的,这些技巧很多小伙伴一般都是不知道如何来实用的,就好比最近就有很多小伙伴们想要知道小米10如何微信美