在過去,每一個網站小編都會用PhotoShop來將圖片去背,然後把一張圖片貼在另外一張圖片的圖層上,才能進行簡單的合成圖。而且如果是人物的話,頭髮的處理更是複雜,簡單的將人物移花接木到其它背景上,往往就要處理大半天。
不過,現在「AI拼圖」技術太強,你根本不需要這麼麻煩。
例如,這是一份看似平平無奇的日式便當。
但你敢信,其實每一格食物都是 P 上去的,而且原圖還是這樣的?
背後操作者並不是什麼 PS 大師,而是一隻 AI,名字很直白:拼圖擴散(Collage Diffusion)。
隨便找幾張小圖拿給它,AI 就能自己看懂圖片內容,再把各元素非常自然地拼成一張大圖 —— 完全不存在一眼假。
其效果驚豔了不少網友。
甚至還有 PS 愛好者直呼道:這簡直是個天賜之物…… 希望很快能在 Automatic1111( Stable Diffusion 使用者常用的網路 UI,也有內建在 PS 中的外掛版)中看到它。
為什麼效果這麼自然?
實際上,此 AI 生成的「日式便當」還有好幾個生成版本 —— 都很自然。
至於為啥還有多種版本?問就是因為使用者還能自訂,在總體不變得太離譜的前提下,他們可以微調各種細節。
除了「日式便當」,它還有不少出色的作品。
比如,這是拿給 AI 的素材,P 圖痕跡明顯:
這是 AI 拼好的圖,反正我愣是沒看出什麼 P 圖痕跡:
話說這兩年,文字生成圖像的擴散模型真的是大紅了,DALL・E 2 和 Imagen 都是基於此開發出來的應用。這種擴散模型的優點,是生成圖片多樣化、品質較高。
不過,文字終究對於目標圖像,最多只能起到模糊的規範作用,所以使用者通常要花大量時間調整提示(prompt),還得搭配上額外的控制元件,才可以取得不錯的效果。
就拿前文展示的日式便當來說:
如果使用者只輸入「一個裝有米飯、毛豆、生薑和壽司的便當盒」,那就既沒描述哪種食物放到哪一格,也沒有說明每種食物的外觀。但如果非要講清楚的話,使用者恐怕得寫一篇小作文了……
鑑於此,史丹佛團隊決定從別的角度出發。
他們決定參考傳統思路,通過拼圖來生成最終圖像,並由此開發出了一種新的擴散模型。
有意思的是,說白了,這種模型也算是用經典技術「拼」出來的。
首先是分層:使用基於圖層的圖像編輯 UI,將源圖像分解成一個個 RGBA 圖層(R、G、B 分別代表紅、綠、藍,A 代表透明度),然後將這些圖層排列在畫布上,並把每個圖層和文字提示配對。
通過分層,可以修改圖像中的各種元素。
到目前為止,分層已經是電腦圖形領域中一項成熟的技術,不過此前分層資訊一般是作為單張圖片輸出結果使用的。
而在這種新型「拼圖擴散模型」中,分層資訊成了後續操作的輸入。
除了分層,還搭配了現有的基於擴散的圖像協調技術,提升圖像視覺品質。
總而言之,該演算法不僅限制了對象的某些屬性(如視覺特徵)的變化,同時允許屬性(方向、光照、透視、遮擋)發生改變。
—— 從而平衡了還原度和自然度之間的關係,生成“神似”且毫無違和感的圖片。
操作過程也很 easy,在互動編輯模式下,使用者在幾分鐘內就能創作一幅拼貼畫。
他們不僅可以自訂場景中的空間排列順序(就是把從別處扣出來的圖放到適當的位置);還能調整生成圖像的各個元件。用同樣的源圖,可以得出不同的效果。
而在非互動式模式下(即使用者不拼圖,直接把一堆小圖丟給 AI),AI 也能根據拿到的小圖,自動拼出一張效果自然的大圖。
研究團隊
最後,來說說背後的研究團隊,他們是史丹佛大學電腦科學系的一群師生。
論文一作,Vishnu Sarukkai 現為史丹佛電腦科學系研究生,還是碩博連讀的那種。他的主要研究方向為:電腦圖形學、電腦視覺和機器學習。
此外,論文的共同作者 Linden Li,也是史丹佛電腦科學系研究生。
在校求學期間,他曾到 NVIDIA 實習 4 個月,與 NVIDIA 深度學習研究小組合作,參與訓練了增加 100M + 參數的視覺轉換器模型。
論文地址:
https://arxiv.org/abs/2303.00262
參考連結:
請注意!留言要自負法律責任,相關案例層出不窮,請慎重發文!