AI 畫的瑪麗蓮 · 夢露,倒轉 180 ° 後,竟然變成了愛因斯坦?!
這是最近在社交媒體上爆火的擴散模型視錯覺畫,随便給 AI 兩組不同的提示詞,它都能給你畫出來!
哪怕是截然不同的對象也可以,例如一位男子,經過反色處理,就神奇地轉變成一名女子:
就連單詞也能被翻轉出新效果,happy 和 holiday 隻在一旋轉間:
原來,這是來自密歇根大學的一項 " 視覺字謎 " 新研究,論文一發出就在 Hacker News 上爆火,熱度飙至近 800。
英偉達高級 AI 科學家 Jim Fan 贊歎稱:
這是我近期見到最酷的擴散模型!
還有網友感歎稱:
這讓我想到了從事分形壓縮工作的那段經曆。我一直認爲它是純粹的藝術。
要知道,創作一幅經過旋轉、反色或變形後呈現出新主題的繪畫作品,怎麽也需要畫家對色彩、形狀、空間具備一定的理解能力。
如今連 AI 也能畫出這樣的效果,究竟是如何實現的?實際效果是否有這麽好?
我們上手試玩了一番,也探究了一下背後的原理。
Colab 就能直接試玩
我們用這個模型繪制了一組 Lowpoly 風格的畫,讓它正着看是一座山,反過來則是城市的天際線。
同時,我們讓 ChatGPT(DALL · E-3)也試着畫了一下,結果除了清晰度高一些之外似乎就沒什麽優勢了。
而作者自己展示的效果則更加豐富,也更爲精彩。
一座雪後的山峰,旋轉 90 度就變成了一匹馬;一張餐桌換個角度就成了瀑布……
最精彩的還要屬下面這張圖——從上下左右四個角度看,每個方向的内容都不一樣。
(這裏先考驗一下各位讀者,你能看出這四種動物分别是什麽嗎?)
以兔子爲初始狀态,每逆時針旋轉 90 度,看到的依次是鳥、長頸鹿和泰迪熊。
而下面這兩張圖雖然沒做到四個方向每個都有 " 新内容 ",但還是做出了三個不同的方向。
除了旋轉,它還可以把圖像切割成拼圖,然後重組成新的内容,甚至是直接分解到像素級。
風格也是千變萬化,水彩、油畫、水墨、線稿……應有盡有。
那麽這個模型去哪裏能玩呢?
爲了能讓更多網友體驗到這個新玩具,作者準備了一份 Colab 筆記。
不過免費版 Colab 的 T4 不太能帶動,V100 偶爾也會顯存超限,要用 A100 才能穩定運行。
甚至作者自己也說,如果誰發現免費版能帶動了,請馬上告訴他。
言歸正傳,第一行代碼運行後會讓我們填寫 Hugging Face 的令牌,并給出了獲取地址。
同時還需要到 DeepFloyd 的項目頁面中同意一個用戶協議,才能繼續後面的步驟。
準備工作完成後,依次運行這三個部分的代碼完成環境部署。
需要注意的是,作者目前還沒有給模型設計圖形界面,效果的選擇和提示詞的修改需要我們手動調整代碼。
作者在筆記中放了三種效果,想用哪個就取消注釋(去掉那一行前面的井号),并把不用的删除或注釋掉(加上井号)。
這裏列出的三種效果不是全部,如果想用其他效果可以手動替換代碼,具體支持的效果有這些:
修改好後要運行這行代碼,然後提示詞也是如法炮制:
修改好并運行後,就可以進入生成環節了,這裏也可以對推理步數和指導強度進行修改。
需要注意的是,這裏一定要先運行 image_64 函數生成小圖,然後再用後面的 image 變成大圖,否則會報錯。
做個總結的話,我們體驗後的一個感覺是,這個模型對提示詞的要求還是比較高的。
作者也意識到了這一點,并給出了一些提示詞技巧:
△機翻,僅供參考
那麽,研究團隊是如何實現這些效果的呢?
" 糅合 " 多視角圖像噪聲
首先來看看作者生成視錯覺圖像的關鍵原理。
爲了讓圖像在不同視角下,能根據不同的提示詞呈現出不同的畫面效果,作者特意采用了 " 噪聲平均 " 的方法,來進一步将兩個視角的圖像糅合在一起。
簡單來說,擴散模型(DDPM)的核心,是通過訓練模型将圖像 " 打碎重組 ",基于 " 噪點圖 " 來生成新圖像:
所以,要想讓圖像在變換前後,能根據不同提示詞生成不同圖像,就需要對擴散模型的去噪過程進行改動。
簡單來說,就是對原始圖像和變換後的圖像,同時用擴散模型進行 " 打碎 " 處理做成 " 噪點圖 ",并在這個過程中将處理後的結果取平均,計算出一個新的 " 噪點圖 "。
随後,基于這個新的 " 噪點圖 " 生成的圖像,就能在經過變換後呈現出想要的視覺效果。
當然,這個變換的圖像處理過程,必須要是正交變換,也就是我們在展示效果中看到的旋轉、變形、打碎重組或反色等操作。
具體到擴散模型的選擇上,也有要求。
具體來說,這篇論文采用了DeepFloyd IF來實現視錯覺圖像生成。
DeepFloyd IF 是一個基于像素的擴散模型,相比其他擴散模型,它能直接在像素空間(而非潛在空間或其他中間表示)上進行操作。
這也讓它能更好地處理圖像的局部信息,尤其在生成低分辨率圖像上有所幫助。
這樣一來,就能讓圖像最終呈現出視錯覺效果。
爲了評估這種方法的效果,作者們基于 GPT-3.5 自己編寫了一個 50 個圖像變換對的數據集。
具體來說,他們讓 GPT-3.5 随機生成一種圖像風格(例如油畫風、街頭藝術風),然後再随機生成兩組提示詞(一個老人、一個雪山),并交給模型生成變換畫。
這是一些随機變換生成的結果:
随後,他們也拿 CIFAR-10 進行了一下不同模型間圖像生成的測試:
随後用 CLIP 評估了一下,結果顯示變換後的效果和變換之前的質量一樣好:
作者們也測試了一下,這個 AI 能經得起多少個圖像塊的 " 打碎重組 "。
事實證明,從 8 × 8 到 64 × 64,打碎重組的圖像效果看起來都不錯:
對于這一系列圖像變換,有網友感歎 " 印象深刻 ",尤其是男人轉變成女人的那個圖像變換:
我看了大概有 10 遍左右。
還有網友已經想把它做成藝術作品挂在牆上了,或是使用電子墨水屏:
但也有專業的攝影師認爲,現階段 AI 生成的這些圖像仍然不行:
仔細觀察的話,會發現細節經不起推敲。敏銳的眼睛總是能分辨出糟糕的地方,但大衆并不在意這些。
那麽,你覺得 AI 生成的這一系列視錯覺圖像效果如何?還能用在哪些地方?
參考鏈接:
[ 1 ] https://news.ycombinator.com/item?id=38477259
[ 2 ] https://arxiv.org/pdf/2311.17919.pdf
[ 3 ] https://twitter.com/DrJimFan/status/1730253638935920738