成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

讓GAN隨音樂律動的Python工具,網友:GAN的建議用法

新聞 開發工具
一位外國小哥開發的Python工具,能讓GAN生成的圖像隨音樂律動,幾個小時內就在reddit上收獲了1.5k個贊。

本文經AI新媒體量子位(公眾號ID:QbitAI)授權轉載,轉載請聯系出處。

 用GAN生成畫作已經不是新鮮事了,不過你見過“懂音樂”的GAN嗎?

一位外國小哥開發的Python工具,能讓GAN生成的圖像隨音樂律動,幾個小時內就在reddit上收獲了1.5k個贊。

讓GAN隨音樂律動的Python工具,網友:GAN的<span><span><span><i style=最佳用法">

從它的名字清晰的聲波夢就能感受到一種夢幻色彩,正如網友所說:

這就像海市蜃樓,好像能看出描繪的物體或場景,但是下一分鐘,你又會意識到它們并不存在。

讓GAN隨音樂律動的Python工具,網友:GAN的<span><span><span><i style=最佳用法">

而這樣的音樂視效,只需幾行代碼就可以實現,還支持各種自定義,一起來了解一下吧~

在輸入向量中加入音樂特征

Lucid Sonic Dreams默認使用StyleGAN2-ADA架構,并且使用Justin Pinkney的存儲庫awesome-pretrained-stylegan2中的預訓練模型。

根據指定風格的圖像數據集進行訓練,得到與其風格相似的大量圖像。

讓GAN隨音樂律動的Python工具,網友:GAN的<span><span><span><i style=最佳用法">

模型首先從向量生成圖像,圖像再通過動態效果來展現音樂。

在圖像生成過程中,向模型中輸入包含512個數值的向量來決定輸出圖像,而向量的細微變化,在輸出圖像中也會產生相應地細微的變化。

因此,Lucid Sonic Dreams將從音樂的聲波中提取的數值(例如:振幅),添加到輸入向量中。對視頻中的每一幀都執行此操作,創造出隨音樂跳動和變化的藝術效果。

作者開發這一工具的靈感,來自Matt Siegelman的Deep Music Visualizer項目——BigGAN,它能夠使其生成的圖像與音樂同步變化。

讓GAN隨音樂律動的Python工具,網友:GAN的<span><span><span><i style=最佳用法">

圖源:Matt Siegelman

雖然以前也有一些類似的項目,但Lucid Sonic Dreams與眾不同的地方在于,它是能夠實現自定義Python軟件包

可簡可繁,滿足不同需求

Lucid Sonic Dreams的安裝十分簡單,只需要運行pip install lucidsonicdreams進行安裝就可以了。

首先要實現基本可視化,代碼是這樣的:

  1. from lucidsonicdreams import LucidSonicDream 
  2. L = LucidSonicDream(song = 'song.mp3'
  3.                     style = 'abstract photos'
  4. L.hallucinate(file_name = 'song.mp4'

由此就可以生成抽象風格的視頻:

讓GAN隨音樂律動的Python工具,網友:GAN的<span><span><span><i style=最佳用法">

如果想要改變風格、查看可用風格的列表,可以運行命令:

  1. from lucidsonicdreams import show_styles 
  2. show_styles() 

此外,也可以使用其他風格,只需要將參數值style設為相應的pkl文件路徑,就像這樣:

  1. L = LucidSonicDream(song = 'raspberry.mp3', style = 'VisionaryArt.pkl'
  2.   L.hallucinate(file_name = 'raspberry.mp4',  
  3.                 pulse_react = 1.2,  
  4.                 motion_react = 0.7,  
  5.                 contrast_strength = 0.5,  
  6.                 flash_strength = 0.5

例如,使用Jeremy Torman訓練的模型生成的效果:

讓GAN隨音樂律動的Python工具,網友:GAN的<span><span><span><i style=最佳用法">

Lucid Sonic Dreams的默認設置使它用起來十分容易,但除此在外,它也有很多可調的參數,作者在Colab上詳細地羅列了這些參數。

例如,參數pulse_react、motion_react和class_react,分別控制著3個主要視覺組件:Pulse(脈沖)、Motion(運動)和Class(種類)。

Pulse組件,是指視音樂中打擊樂元素的視覺效果。從數學上講,脈沖是聲波振幅臨時添加到輸入向量的結果,而在下一幀視頻中,向量則恢復正常。

讓GAN隨音樂律動的Python工具,網友:GAN的<span><span><span><i style=最佳用法">

Motion,指的是視覺效果變形的速度,是將振幅累加到輸入向量中的結果。

讓GAN隨音樂律動的Python工具,網友:GAN的<span><span><span><i style=最佳用法">

Class,則是指生成的圖像中對象的標簽。例如,利用WikiArt圖像訓練的樣式,共有167個種類,包括:梵高、達芬奇、抽象繪畫等。

讓GAN隨音樂律動的Python工具,網友:GAN的<span><span><span><i style=最佳用法">

這些類別由音調控制,具體來說,就是將12個音高映射到12個類別。而這些音高的不同振幅,會影響第二輸入向量(類向量)的數值,該向量則決定了模型生成的對象。

此外,參數speed_fpm控制該運動的速度,該參數為0時,則使圖像在歌曲的無聲的部分靜止。FPM代表每分鐘幀數,也就是每分鐘初始化的向量數。

在默認情況下,程序還帶有與音頻中打擊樂元素同步的“對比”和“閃光”效果,分別通過contrast_strength和flash_strength參數進行設置。

調整參數的代碼就像這樣:

  1. L = LucidSonicDream('pancake_feet.mp3', style = 'modern art'
  2.   L.hallucinate(file_name = 'pancake_feet.mp4',  
  3.                 speed_fpm = 0,  
  4.                 motion_react = 0.8,  
  5.                 contrast_strength = 0.5,  
  6.                 flash_strength = 0.7

除了這些內置的效果外,Lucid Sonic Dreams還支持創建自定義效果。只需創建一個函數,其中至少包含3個參數:

array用來指示應用效果的圖像;strength決定對音樂的反應程度;amplitude則是指音樂在任何給定時間點的音量。

然后,將此自定義函數傳遞給EffectsGenerator對象。比如,利用scikit-image生成旋流效果的代碼:

  1. import numpy as np  
  2.   from skimage.transform import swirl 
  3.   from lucidsonicdreams import EffectsGenerator   
  4.   def swirl_func(array, strength, amplitude): 
  5.     swirled_image = swirl(array,  
  6.                           rotation = 0,  
  7.                           strength = 100 * strength * amplitude, 
  8.                           radius=650
  9.     return (swirled_image*255).astype(np.uint8)   
  10.   swirl_effect = EffectsGenerator(swirl_func, 
  11.                                   audio = 'unfaith.mp3',  
  12.                                   strength = 0.2,  
  13.                                   percussive = False) 

生成的旋流效果示例:

讓GAN隨音樂律動的Python工具,網友:GAN的<span><span><span><i style=最佳用法">

如果想要使用其他的GAN架構,只需定義一個函數,將噪聲向量和類向量(NumPy數組)作為輸入,從而輸出圖像。

實際上,這個函數可以是將輸入向量轉換為圖像的任何函數,甚至不需要使用GAN。

除此之外,Lucid Sonic Dreams支持上傳分離后的音軌來控制參數,音樂制作者可以用它作為音樂可視化程序。

例如,使用分離后的打擊樂音軌來控制Pulse,同時用一個分離后的“合成和弦”音軌來控制Class:

  1. L = LucidSonicDream(song = 'lucidsonicdreams_main.mp3'
  2.                       pulse_audio = 'lucidsonicdreams_pulse.mp3'
  3.                       class_audio = 'lucidsonicdreams_class.mp3'
  4.                       style = 'wikiart'

既有簡便易用的默認模式,又支持各種自定義素材,難怪網友們對它大加贊賞。

OMG,我認為這是我見過的GAN的最佳用法。

讓GAN隨音樂律動的Python工具,網友:GAN的<span><span><span><i style=最佳用法">

還有網友想體驗一下VR版本:

讓GAN隨音樂律動的Python工具,網友:GAN的<span><span><span><i style=最佳用法">

也有部分“密恐”患者表示:對它又愛又恨!

讓GAN隨音樂律動的Python工具,網友:GAN的<span><span><span><i style=最佳用法">

Lucid Sonic Dreams在GitHub上開源,感興趣的小伙伴,快去聽個音樂感受一下吧~

責任編輯:張燕妮 來源: 量子位
相關推薦

2019-04-13 14:33:29

2021-09-26 18:52:14

AI 數據人工智能

2020-10-22 09:13:14

NVIDIA

2021-09-10 10:01:34

神經網絡AI算法

2020-12-21 11:00:33

AI 數據人工智能

2019-02-19 09:07:42

GAN生成對抗網絡神經網絡

2023-12-18 08:57:22

GAN網絡

2021-08-25 17:03:09

模型人工智能PyTorch

2023-08-06 12:42:02

AI模型

2017-03-28 08:53:22

2017-07-13 17:33:18

生成對抗網絡GANIan Goodfel

2017-10-09 16:29:44

KerasWassertein 生成對抗網絡

2017-08-07 17:09:46

GAN信息檢索 IR

2022-10-09 15:26:45

人工智能ML機器學習

2024-12-04 07:59:48

2017-07-12 10:58:31

醫療大數據電子化服務

2025-01-13 08:20:00

AI模型訓練

2020-05-28 10:45:36

機器學習人工智能 PyTorch

2019-09-03 10:55:20

Python函數lambad

2021-12-06 09:35:38

英偉達人工智能軟件
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久久美女 | 国产激情91久久精品导航 | 草草草网站 | 91国自视频| 国产精品久久久久久久久久三级 | 99热热99| 91干b| 日本二区在线观看 | 国产超碰人人爽人人做人人爱 | 大乳boobs巨大吃奶挤奶 | 久久国内精品 | 精品日韩一区二区 | 国产精品夜夜夜一区二区三区尤 | 九色在线视频 | 91人人视频在线观看 | 欧美久久久久 | 国产精品不卡 | 亚洲色图综合 | 免费xxxx大片国产在线 | 中午字幕在线观看 | www.亚洲精品 | 中文字幕11页 | 国产精品揄拍一区二区 | 天天操 夜夜操 | 久久99久久98精品免观看软件 | 久久久久国产精品午夜一区 | www.成人.com | 国产精品自拍视频 | 99久热在线精品视频观看 | 欧美日韩一区在线播放 | 91社影院在线观看 | 国产性生活一级片 | 午夜激情国产 | 国产成人艳妇aa视频在线 | 日日日日操 | 中文字幕电影在线观看 | 中文字幕在线免费视频 | 亚洲精品一区在线 | 91精品久久久久久久久 | 无码日韩精品一区二区免费 | 可以在线观看av的网站 |