不會PS沒關係,AI拼圖技巧已經能以假亂真
話說這兩年,「文字生成圖像的擴散模型」著實大火了一把,DALL·E 2和Imagen都是基於此開發出來的應用。
本文經AI新媒體量子位元(公眾號ID:QbitAI)授權轉載,轉載請聯絡來源。
這是一份看似平平無奇的日式便當。
但你敢信,其實每一格食物都是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),AI也能根據拿到的小圖,自動拼出一張效果自然的大圖。
研究團隊
最後,來說說背後的研究團隊,他們是史丹佛大學電腦科學系的一群師生。
論文一作,Vishnu Sarukkai現為史丹佛電腦科學系研究生,還是碩博連讀的那種。
他的主要研究方向為:電腦圖形學、電腦視覺和機器學習。
此外,論文的共同作者Linden Li,也是史丹佛計算機科學系研究生。
在校求學期間,他曾到英偉達實習4個月,與英偉達深度學習研究小組合作,參與訓練了增加100M 參數的視覺轉換器模型。
論文網址:https://arxiv.org/abs/2303.00262
以上是不會PS沒關係,AI拼圖技巧已經能以假亂真的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

使用C 中的chrono庫可以讓你更加精確地控制時間和時間間隔,讓我們來探討一下這個庫的魅力所在吧。 C 的chrono庫是標準庫的一部分,它提供了一種現代化的方式來處理時間和時間間隔。對於那些曾經飽受time.h和ctime折磨的程序員來說,chrono無疑是一個福音。它不僅提高了代碼的可讀性和可維護性,還提供了更高的精度和靈活性。讓我們從基礎開始,chrono庫主要包括以下幾個關鍵組件:std::chrono::system_clock:表示系統時鐘,用於獲取當前時間。 std::chron

DMA在C 中是指DirectMemoryAccess,直接內存訪問技術,允許硬件設備直接與內存進行數據傳輸,不需要CPU干預。 1)DMA操作高度依賴於硬件設備和驅動程序,實現方式因係統而異。 2)直接訪問內存可能帶來安全風險,需確保代碼的正確性和安全性。 3)DMA可提高性能,但使用不當可能導致系統性能下降。通過實踐和學習,可以掌握DMA的使用技巧,在高速數據傳輸和實時信號處理等場景中發揮其最大效能。

在C 中處理高DPI顯示可以通過以下步驟實現:1)理解DPI和縮放,使用操作系統API獲取DPI信息並調整圖形輸出;2)處理跨平台兼容性,使用如SDL或Qt的跨平台圖形庫;3)進行性能優化,通過緩存、硬件加速和動態調整細節級別來提升性能;4)解決常見問題,如模糊文本和界面元素過小,通過正確應用DPI縮放來解決。

C 在實時操作系統(RTOS)編程中表現出色,提供了高效的執行效率和精確的時間管理。 1)C 通過直接操作硬件資源和高效的內存管理滿足RTOS的需求。 2)利用面向對象特性,C 可以設計靈活的任務調度系統。 3)C 支持高效的中斷處理,但需避免動態內存分配和異常處理以保證實時性。 4)模板編程和內聯函數有助於性能優化。 5)實際應用中,C 可用於實現高效的日誌系統。

在C 中測量線程性能可以使用標準庫中的計時工具、性能分析工具和自定義計時器。 1.使用庫測量執行時間。 2.使用gprof進行性能分析,步驟包括編譯時添加-pg選項、運行程序生成gmon.out文件、生成性能報告。 3.使用Valgrind的Callgrind模塊進行更詳細的分析,步驟包括運行程序生成callgrind.out文件、使用kcachegrind查看結果。 4.自定義計時器可靈活測量特定代碼段的執行時間。這些方法幫助全面了解線程性能,並優化代碼。

交易所內置量化工具包括:1. Binance(幣安):提供Binance Futures量化模塊,低手續費,支持AI輔助交易。 2. OKX(歐易):支持多賬戶管理和智能訂單路由,提供機構級風控。獨立量化策略平台有:3. 3Commas:拖拽式策略生成器,適用於多平台對沖套利。 4. Quadency:專業級算法策略庫,支持自定義風險閾值。 5. Pionex:內置16 預設策略,低交易手續費。垂直領域工具包括:6. Cryptohopper:雲端量化平台,支持150 技術指標。 7. Bitsgap:

在MySQL中,添加字段使用ALTERTABLEtable_nameADDCOLUMNnew_columnVARCHAR(255)AFTERexisting_column,刪除字段使用ALTERTABLEtable_nameDROPCOLUMNcolumn_to_drop。添加字段時,需指定位置以優化查詢性能和數據結構;刪除字段前需確認操作不可逆;使用在線DDL、備份數據、測試環境和低負載時間段修改表結構是性能優化和最佳實踐。

C 中使用字符串流的主要步驟和注意事項如下:1.創建輸出字符串流並轉換數據,如將整數轉換為字符串。 2.應用於復雜數據結構的序列化,如將vector轉換為字符串。 3.注意性能問題,避免在處理大量數據時頻繁使用字符串流,可考慮使用std::string的append方法。 4.注意內存管理,避免頻繁創建和銷毀字符串流對象,可以重用或使用std::stringstream。
