国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

基于擴(kuò)散模型的圖像壓縮:創(chuàng)建基于Stable Diffusion的有損壓縮編解碼器

這篇具有很好參考價(jià)值的文章主要介紹了基于擴(kuò)散模型的圖像壓縮:創(chuàng)建基于Stable Diffusion的有損壓縮編解碼器。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

Stable Diffusion是最近在圖像生成領(lǐng)域大火的模型,在對(duì)他研究的時(shí)候我發(fā)現(xiàn)它可以作為非常強(qiáng)大的有損圖像壓縮編解碼器。在介紹之前,我們先看看它與高壓縮率下的JPG和WebP相比的而結(jié)果,所有都是512x512像素的分辨率為單位:

diffution 解碼器

上面這圖的細(xì)節(jié)如下:

這是JPG壓縮結(jié)果大小為5.66kB

diffution 解碼器

這是WebP ,大小為6.74kB:

diffution 解碼器

最后是Stable Diffusion 大小4.97kB

diffution 解碼器

還有一些其他示例,請(qǐng)參考我們最后提供的源代碼地址

這些示例非常明顯,與JPG和WebP相比,用Stable Diffusion壓縮這些圖像在較小的文件尺寸下會(huì)產(chǎn)生極好的圖像質(zhì)量。這么看來這是一種非常有前途的有損圖像壓縮的選擇,但是Stable Diffusion還會(huì)帶來一些問題,我們?cè)诤竺娼榻B。

Stable Diffusion的潛在空間

Stable Diffusion使用三個(gè)常用的神經(jīng)網(wǎng)絡(luò)進(jìn)行組合:

1、VAE

2、U-net

3、文本編碼器

Variational Auto Encoder(VAE)編碼和解碼器將圖像轉(zhuǎn)換為一些潛在空間表示。

VAE如何將圖像編碼到這個(gè)潛在空間中呢,它在訓(xùn)練過程中自行學(xué)習(xí),隨著模型的進(jìn)一步訓(xùn)練,模型的不同版本的潛在空間表示可能會(huì)有所不同,但是Stable Diffusion v1.4的表示形式看起來像這樣(重新映射為4通道顏色圖像):

diffution 解碼器

在重新縮放和解釋潛在的顏色值(帶有alpha通道)后,圖像的主要特征仍然是肉眼可見,VAE將較高的分辨率特征編碼到這些像素值中。一個(gè)vae的編碼/解碼的過程如下:

diffution 解碼器

左:512x512@24bpp的真實(shí)圖像,中:64x64@128bpp的潛在空間,右:潛在空間解碼生成的512x512@24bpp圖像

通過潛在空間還原的過程并不是無損的。可以看到解碼后,我們的羊駝?lì)^上藍(lán)色帶子包含的名字就不太清晰了。這是因?yàn)镾table Diffusion v1.4的VAE通常不太擅長(zhǎng)表示小文本以及人臉。

而我們知道Stable Diffusion的主要算法從短文本描述中生成新圖像,它從潛在空間表示中的隨機(jī)噪聲開始,然后通過使用訓(xùn)練過的U-Net對(duì)潛在空間圖像進(jìn)行迭代去噪,簡(jiǎn)單地說,U-Net輸出它認(rèn)為在噪聲中“看到”的東西的預(yù)測(cè)。當(dāng)生成圖像時(shí),這個(gè)迭代的去噪步驟由第三個(gè)ML模型(文本編碼器)進(jìn)行指導(dǎo),該模型向U-Net提供關(guān)于它應(yīng)該在噪聲中嘗試看到什么內(nèi)容的信息。所以對(duì)于我們這個(gè)壓縮的方案來說,不需要文本編碼器,也就是希望沒有文本來進(jìn)行引導(dǎo)。所以我們這里只創(chuàng)建一個(gè)空字符串的一次性編碼,這樣相當(dāng)于是告訴U-Net在圖像重建期間進(jìn)行無引導(dǎo)去噪。

壓縮方法

為了使用Stable Diffusion作為圖像壓縮編解碼器,我們還需要研究了如何有效地壓縮由VAE生成的潛在表示。在這個(gè)實(shí)驗(yàn)中,進(jìn)行下采樣或者應(yīng)用現(xiàn)有的有損圖像壓縮方法都會(huì)大大降低重構(gòu)圖像的質(zhì)量。但是我發(fā)現(xiàn)VAE的解碼似乎對(duì)潛在的量化非常穩(wěn)健。

對(duì)潛在空間進(jìn)行從浮點(diǎn)到8位無符號(hào)整數(shù)的量化,通過scaling,clamping,然后remapping ,只有非常小的可見重構(gòu)誤差:

為了量化由VAE生成的空間,我首先將它們按1 / 0.18215進(jìn)行縮放,這個(gè)數(shù)字是在Stable Diffusion源代碼中出現(xiàn)的。用這個(gè)數(shù)字可以很好地映射到[- 1,1]的范圍。

通過將潛在項(xiàng)量化到8位,圖像表示的數(shù)據(jù)大小現(xiàn)在是646448位= 16 kB(真實(shí)圖像為51251238位= 768 kB)

將潛在對(duì)象量化到8位以下并沒有產(chǎn)生好的結(jié)果,但通過重整色調(diào)和抖動(dòng)來進(jìn)一步量化它們卻出乎意料地好。使用256個(gè)48位向量和Floyd-Steinberg抖動(dòng)的潛在色調(diào)創(chuàng)建了一個(gè)色調(diào)表示。使用256的色調(diào)用單個(gè)8位索引表示每個(gè)潛在向量,使數(shù)據(jù)大小達(dá)到64648+2564*8位= 5 kB。

色調(diào)的抖動(dòng)會(huì)引入了噪聲使解碼結(jié)果失真。但由于擴(kuò)散模型是基于潛波的去噪,所以可以使用U-Net來去除抖動(dòng)帶來的噪聲。經(jīng)過4次迭代,重構(gòu)結(jié)果在視覺上非常接近于未量化的版本:

diffution 解碼器

左:抖動(dòng)后,中:4個(gè)去噪步驟,右:真實(shí)圖像

數(shù)據(jù)大小的極大減少了(壓縮系數(shù)為155倍),結(jié)果非常好,但是我們也看到心臟符號(hào)上新增了光澤陰影,這是在壓縮之前不存在。這種壓縮方案會(huì)引入新的內(nèi)容從而影響圖像表示而不是圖像質(zhì)量,這也說明擴(kuò)散模型是在創(chuàng)造而不僅僅是還原。

結(jié)果評(píng)估

為了評(píng)估此壓縮編解碼器,所以沒有使用任何公開的圖像,這樣以確保圖像不會(huì)包含在擴(kuò)散模型的訓(xùn)練集中(這樣的圖像可能會(huì)獲得不公平的壓縮優(yōu)勢(shì),因?yàn)樗鼈兊囊徊糠謹(jǐn)?shù)據(jù)可能已經(jīng)在訓(xùn)練時(shí)出現(xiàn)了)。為了使比較盡可能公平,使用了Python圖像庫的JPG和WebP壓縮的最高質(zhì)量設(shè)置,并且還使用MozJPEG庫對(duì)壓縮JPG數(shù)據(jù)進(jìn)行了無損壓縮。

雖然看起來Stable Diffusion結(jié)果比JPG和WebP壓縮圖像好得多,但就標(biāo)準(zhǔn)測(cè)量指標(biāo)(如PSNR或SSIM)而言,它們并沒有明顯好(但也沒更差)。這可能是因?yàn)镾table Diffusion創(chuàng)造了一些不太引人注意的新的內(nèi)容,這些內(nèi)容不會(huì)會(huì)影響圖像評(píng)分,但是對(duì)人類而言感覺卻變好了,例如重構(gòu)內(nèi)容可能會(huì)受到新生成內(nèi)容的影響,即使它看起來非常清晰(原圖沒有,但是還原圖被生成出來的一些細(xì)節(jié)欺騙了)。例如這張舊金山測(cè)試圖像中的一個(gè)細(xì)節(jié):

diffution 解碼器

左:JPG壓縮圖,中:真實(shí)圖片 -右:Stable Diffusion壓縮

可以非常清晰的看到,建筑物的形狀的改變。

一些限制

有些特征目前并沒有被保留得很好;特別是小文本和(參考 Stable Diffusion v1.4的Limitations and Biases節(jié))。下面是一個(gè)簡(jiǎn)單的例子

這是真實(shí)圖像:

diffution 解碼器

vae潛在空間 32bit

diffution 解碼器

8bit的解碼和去噪

diffution 解碼器

可以非常清晰的看到當(dāng)前的Stable Diffusion1.4模型在潛在空間中不能很好地保存小的文本,所以這個(gè)壓縮方案也有這些限制。但是據(jù)說從1.5以后似乎在人臉處理方面做得更好,期待stability.ai盡快發(fā)布更好的版本。

這種方法與基于ml的圖像恢復(fù)有何不同?

深度學(xué)習(xí)非常成功地用于恢復(fù)降級(jí)的圖像和視頻或?qū)⑵涮岣叩礁叩姆直媛?。這種方法與恢復(fù)圖像壓縮的圖像有何不同?

這里重要的區(qū)別是是要理解Stable Diffusion不是用來恢復(fù)由于壓縮而降級(jí)的圖像。它是將有損的壓縮應(yīng)用于對(duì)圖像的內(nèi)部理解,然后試圖“修復(fù)”有損壓縮對(duì)內(nèi)部表示造成的損害(這與修復(fù)降級(jí)圖像不同)。

例如,傳統(tǒng)的圖像恢復(fù)保留相機(jī)紋理(定性)以及任何其他定性退化,而AI恢復(fù)一個(gè)高度壓縮的jpg將無法恢復(fù)相機(jī)紋理,因?yàn)槿魏侮P(guān)于它的信息已經(jīng)從數(shù)據(jù)中丟失了。

一下這個(gè)比喻可能會(huì)更恰當(dāng)一點(diǎn):

假設(shè)我們有一個(gè)擁有過目不忘的高技能藝術(shù)家。我們給他們看一張圖像,然后讓他們重新創(chuàng)造它,藝術(shù)家可以根據(jù)自己的記憶創(chuàng)造一個(gè)近乎完美的副本。這位藝術(shù)家的攝影記憶就是是Stable Diffusion中VAE的潛在空間。

而傳統(tǒng)的圖像恢復(fù),我們會(huì)給這位藝術(shù)家看一張被圖像壓縮后嚴(yán)重降級(jí)的圖像,然后讓他們根據(jù)記憶重建這張圖像。

然對(duì)于我們的量化操作,可以認(rèn)為是我們向藝術(shù)家展示原始的、未壓縮的圖像并要求他們盡可能地記住它。然后我們對(duì)藝術(shù)家進(jìn)行腦部手術(shù),通過對(duì)其進(jìn)行一些有損壓縮來縮小他們記憶中的數(shù)據(jù)(量化或者上面提到的壓縮),這種壓縮去除了看起來不重要的細(xì)微差別,并用相同的變化替換了記憶圖像中非常非常相似的概念和方面的變化。

手術(shù)后,我們還是要求藝術(shù)家根據(jù)自己的記憶,創(chuàng)造一個(gè)完美的圖像重建。他們?nèi)匀粫?huì)記住圖像的所有重要方面,例如,從內(nèi)容到相機(jī)紋理的定性屬性,以及他們看到的每座建筑的位置和大致外觀,雖然可能每個(gè)點(diǎn)的確切位置不再相同,并且在他們記憶中還有一些奇怪的缺失,但是這些小的缺失對(duì)于整理來說影響并不大。

最后,藝術(shù)家通過這些手術(shù)后的記憶(壓縮后)來從新繪畫,細(xì)節(jié)變少了也就是被壓縮了,但是整體來說還是不變的。

所以在這種情況下,藝術(shù)家被要求根據(jù)他們的記憶和經(jīng)驗(yàn)畫出他們認(rèn)為應(yīng)該是什么樣子的東西,但由于這里的壓縮應(yīng)用于他們對(duì)圖像的記憶表示,圖像的視覺質(zhì)量和概念內(nèi)容都已降低,所以在某些部分可能是因?yàn)槠渌洃洰a(chǎn)生的所以藝術(shù)家會(huì)在圖畫中發(fā)明創(chuàng)造一些新的東西。這也就是我們剛才說到的創(chuàng)造。

總結(jié)

作為有損圖像壓縮方案,Stable Diffusion似乎非常有前途。我們可以通過更多的實(shí)驗(yàn)來完整這個(gè)方案并且還可以專門設(shè)計(jì)和訓(xùn)練用于圖像壓縮的VAE,或者其他更好的方法都是我們?cè)谖磥硌芯康姆较?,如果你感興趣,請(qǐng)看看下本文的源代碼并加以改進(jìn)。

https://avoid.overfit.cn/post/3b8ce036928f431d93061e5a307f8067

作者:Matthias Bühlmann文章來源地址http://www.zghlxwxcb.cn/news/detail-530060.html

到了這里,關(guān)于基于擴(kuò)散模型的圖像壓縮:創(chuàng)建基于Stable Diffusion的有損壓縮編解碼器的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【學(xué)習(xí)筆記】?穩(wěn)定擴(kuò)散模型(Stable Diffusion)—— 最流行的 AI 繪畫大模型,了解一下:輸入的內(nèi)容可以是圖像,文本,部分圖像,以及他們的組合——直接出圖!
  • SegDiff: Image Segmentation with Diffusion Probabilistic Models 基于擴(kuò)散模型的圖像語義分割模型

    SegDiff: Image Segmentation with Diffusion Probabilistic Models 基于擴(kuò)散模型的圖像語義分割模型

    目錄 Diffusion models是生成模型的一種,同樣的還有GAN,VAE,F(xiàn)low模型等 Abstract 2、related work 3、背景 前向擴(kuò)散表達(dá): 反向生成過程: 4、理論 5、實(shí)驗(yàn) ? 論文地址:https://arxiv.org/pdf/2112.00390.pdf 代碼:截至今天還未公開。 隨著人工智能在圖像生成,文本生成以及多模態(tài)生成等領(lǐng)域

    2024年02月02日
    瀏覽(26)
  • 【CVPR 2023的AIGC應(yīng)用匯總(4)】圖像恢復(fù),基于GAN生成對(duì)抗/diffusion擴(kuò)散模型方法...

    【CVPR 2023的AIGC應(yīng)用匯總(4)】圖像恢復(fù),基于GAN生成對(duì)抗/diffusion擴(kuò)散模型方法...

    【CVPR 2023的AIGC應(yīng)用匯總(1)】圖像轉(zhuǎn)換/翻譯,基于GAN生成對(duì)抗/diffusion擴(kuò)散模型方法 【CVPR 2023的AIGC應(yīng)用匯總(2)】可控文生圖,基于diffusion擴(kuò)散模型/GAN生成對(duì)抗方法 【CVPR 2023的AIGC應(yīng)用匯總(3)】GAN改進(jìn)/可控生成的方法10篇 本文研究JPEG圖像恢復(fù)問題,即加密比特流中的比特錯(cuò)誤。

    2024年02月06日
    瀏覽(24)
  • 番外篇Diffusion&Stable Diffusion擴(kuò)散模型與穩(wěn)定擴(kuò)散模型

    番外篇Diffusion&Stable Diffusion擴(kuò)散模型與穩(wěn)定擴(kuò)散模型

    本篇文章為閱讀筆記,,主要內(nèi)容圍繞擴(kuò)散模型和穩(wěn)定擴(kuò)散模型展開,介紹了kl loss、vae模型的損失函數(shù)以及變分下限作為擴(kuò)展部分。擴(kuò)散模型是一種生成模型,定義了一個(gè)逐漸擴(kuò)散的馬爾科夫鏈,逐漸項(xiàng)數(shù)據(jù)添加噪聲,然后學(xué)習(xí)逆擴(kuò)散過程,從噪聲中構(gòu)建所需的數(shù)據(jù)樣本。穩(wěn)

    2024年02月03日
    瀏覽(27)
  • 擴(kuò)散模型 - Stable Diffusion

    擴(kuò)散模型 - Stable Diffusion

    ? Stable Diffusion 是由 Stability AI 開發(fā)的 開源 擴(kuò)散模型。Stable Diffusion 可以完成多模態(tài)任務(wù),包括:文字生成圖像(text2img)、圖像生成圖像(img2img)等。 4.1 Stable Diffusion 的組成部分 ? Stable Diffusion 由兩部分 組成 : 文本編碼器:提取文本 prompt 的信息 圖像生成器:根據(jù)文本

    2024年02月11日
    瀏覽(24)
  • Stable diffusion擴(kuò)散模型相關(guān)

    Stable diffusion擴(kuò)散模型相關(guān)

    時(shí)隔兩年半(2年4個(gè)月),我又回來研究生成技術(shù)了。以前學(xué)習(xí)研究GAN沒結(jié)果,不管是技術(shù)上,還是應(yīng)用產(chǎn)品上,結(jié)果就放棄了,現(xiàn)在基于diffusion的技術(shù)又把生成技術(shù)帶上了一個(gè)新的高度?,F(xiàn)在自己又來研究學(xué)習(xí)這方面的東西了?,F(xiàn)在看來,以前還是自己自我定位不清晰,想

    2024年01月17日
    瀏覽(30)
  • 【CV】穩(wěn)定擴(kuò)散模型(Stable Diffusion)

    【CV】穩(wěn)定擴(kuò)散模型(Stable Diffusion)

    ????大家好,我是Sonhhxg_柒,希望你看完之后,能對(duì)你有所幫助,不足請(qǐng)指正!共同學(xué)習(xí)交流?? ??個(gè)人主頁-Sonhhxg_柒的博客_CSDN博客??? ??歡迎各位→點(diǎn)贊?? + 收藏?? + 留言??? ??系列專欄 - 機(jī)器學(xué)習(xí)【ML】?自然語言處理【NLP】? 深度學(xué)習(xí)【DL】 ?? ???foreword

    2024年02月09日
    瀏覽(42)
  • Stable Diffusion擴(kuò)散模型 + Consistency一致性模型

    Stable Diffusion擴(kuò)散模型 + Consistency一致性模型

    通過估計(jì)數(shù)據(jù)分布梯度進(jìn)行生成建模 一文解釋 Diffusion Model (一) DDPM 理論推導(dǎo) 隨著人工智能在圖像生成,文本生成以及多模態(tài)生成等 生成領(lǐng)域 的技術(shù)不斷累積,生成對(duì)抗網(wǎng)絡(luò)(GAN)、變微分自動(dòng)編碼器(VAE)、normalizing flow models、自回歸模型(AR)、energy-based models以及近年來

    2024年02月09日
    瀏覽(20)
  • Stable Diffusion生成式擴(kuò)散模型代碼實(shí)現(xiàn)原理

    Stable Diffusion可以使用PyTorch或TensorFlow等深度學(xué)習(xí)框架來實(shí)現(xiàn)。這些框架提供了一系列的工具和函數(shù),使得開發(fā)者可以更方便地構(gòu)建、訓(xùn)練和部署深度學(xué)習(xí)模型。因此可以使用PyTorch或TensorFlow來實(shí)現(xiàn)Stable Diffusion模型。 安裝PyTorch:確保您已經(jīng)安裝了PyTorch,并具備基本的PyTorch使用

    2024年03月13日
    瀏覽(34)
  • 【擴(kuò)散模型】11、Stable Diffusion | 使用 Diffusers 庫來看看 Stable Diffusion 的結(jié)構(gòu)

    【擴(kuò)散模型】11、Stable Diffusion | 使用 Diffusers 庫來看看 Stable Diffusion 的結(jié)構(gòu)

    參考:HuggingFace 參考:https://jalammar.github.io/illustrated-stable-diffusion/ Stable Diffusion 這個(gè)模型架構(gòu)是由 Stability AI 公司推于2022年8月由 CompVis、Stability AI 和 LAION 的研究人員在 Latent Diffusion Model 的基礎(chǔ)上創(chuàng)建并推出的。 其原型是(Latent Diffusion Model),一般的擴(kuò)散模型都需要直接在像

    2024年01月16日
    瀏覽(36)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包