農林漁牧網

您現在的位置是:首頁 > 林業

Stable Diffusion還能壓縮圖:比JPEG更小更清晰,但千萬別試人臉

2022-09-30由 量子位 發表于 林業

冷杉數量有多少

Alex 發自 凹非寺

量子位 | 公眾號 QbitAI

免費開源的Stable Diffusion又被玩兒出了新花樣:

這次是被拿來

壓縮圖片

Stable Diffusion不僅能把同一張原圖縮到更小,而且表現還

肉眼可見地優於JPEG和WebP

Stable Diffusion還能壓縮圖:比JPEG更小更清晰,但千萬別試人臉

對於同一張原圖,Stable Diffusion壓縮出來的影象不僅有更多細節,而且壓縮偽影也變少了。

但用Stable Diffusion來壓縮圖的軟體工程師Matthias Bühlmann(咱們就叫他MB哥吧)也指出,這種方式也有明顯的侷限性。

因為這不太擅長處理人臉和文字等,有時甚至會在解碼擴充套件回去後,幻化出原圖中不存在的特徵。

比如像這樣(效果可以讓人嚇一跳):

Stable Diffusion還能壓縮圖:比JPEG更小更清晰,但千萬別試人臉

△左為原圖,右為Stable Diffusion壓縮再擴充套件的生成圖

不過,話說回來——

Stable Diffusion是如何壓縮圖片的?

要講清楚Stable Diffusion怎麼壓縮圖片,不妨從Stable Diffusion的一些重要工作原理說起。

Stable Diffusion

是一種特殊的擴散模型,叫作

潛在擴散

(Latent Diffusion)。

和標準擴散(Standard Diffusion )不同,潛在擴散在維度較低的隱空間(Latent Space)上進行擴散過程,而不使用實際的畫素空間。

也就是說,隱空間的表示結果是一些解析度較低的壓縮圖,不過這些圖有較高的精確度。

這裡說一下,影象的解析度和精度是兩回事兒。解析度是表示一張圖資料量多少的引數,而精度是反映結果與真值接近程度的量。

就拿這個駱駝的大頭照來舉例:原圖大小768KB,解析度為512×512,精度為3×8位。

用Stable Diffusion壓縮到4。98KB後,解析度減少為64×64,而精度反而提升到4×32位了。

所以看起來,Stable Diffusion的壓縮圖和原圖相比,差別不大。

Stable Diffusion還能壓縮圖:比JPEG更小更清晰,但千萬別試人臉

如果再進一步具體而言而話,Stable Diffusion這種潛在擴散模型有

三個主要組成部分

VAE

(Variational Auto Encoder,變分自編碼器),

U-Net

,和

文字編碼器

(Text-encoder)。

不過在這項壓縮影象的測驗中,文字編輯器沒什麼用。

發揮主要作用的還是VAE,它由兩部分組成:一個編碼器和一個解碼器。

所以,VAE可以將一張圖從影象空間中,編碼再解碼得到一些潛在空間表示(Latent space representation)。

MB哥發現,VAE的解碼功能對於量化潛在表示來說,表現非常穩定。

透過縮放、拖拽和重新對映,將潛在表示從浮點量化為8位無符號整數,就可以得到不怎麼失真的壓縮圖了:

首先將latents量化為8位無符號整數,此時影象大小為64×64×4×8Bit=16 kB(原圖大小512×512×3×8Bit=768 kB)。

然後再運用調色盤(Palette)和抖動(Dither),進一步使資料縮小到5kB,同時還提高了影象的還原度。

Stable Diffusion還能壓縮圖:比JPEG更小更清晰,但千萬別試人臉

作為一位嚴謹的程式設計師,MB哥除了透過肉眼觀察,還對影象質量進行了資料分析。

不過,從影象質量評估的兩項重要指標PSNR(峰值信噪比)和SSIM(結構相似性)來看,Stable Diffusion的壓縮結果並沒有比JPG和WebP好到哪兒去。

另外,當把潛在表示重新解碼擴充套件到原圖解析度時,雖然影象的主要特徵仍然可見,但VAE也會將高解析度的特徵賦予這些畫素值。

用大白話講,就是重建的影象往往和原圖不一樣,裡面夾雜了不少新生成的“鬼畜”特徵。

讓我們再來回顧一下這張圖:

Stable Diffusion還能壓縮圖:比JPEG更小更清晰,但千萬別試人臉

雖然用Stable Diffusion來壓縮圖確實還存在不少問題,但用MB哥的話來說,其效果還是很驚豔的,非常有發展前途。

現在MB哥已經把相關程式碼放到了Google Colab上,感興趣的朋友可以仔細看看~

傳送門

https://colab。research。google。com/drive/1Ci1VYHuFJK5eOX9TB0Mq4NsqkeDrMaaH?usp=sharing