與現有的基於 GAN 的方法相比,SinDiffusion 顯著提高了生成樣本的質量和多樣性。
從單幅自然影像生成影像的技術被廣為應用,也因此受到越來越多的關注。這一研究旨在從單幅自然影像中學習一個無條件生成模型,透過捕獲 patch 內部統計資訊,生成具有相似視覺內容的不同樣本。一旦訓練完成,模型不僅可以生成高質量且不限解析度的影像,而且還可以輕鬆適應多種應用,如影像編輯、影像和諧化(image harmonization)和影像間的轉換。
SinGAN 可以滿足上述要求,該方法可以構建自然影像的多個尺度,並訓練一系列 GANs 來學習單幅影像中 patch 的內部統計資訊。SinGAN 的核心思想是在漸進增長的尺度上訓練多個模型。然而,透過這些方法生成的影像可能不盡人意,因為它們存在小範圍的細節性誤差,從而導致生成的影像中存在明顯的偽影現象(見圖 2)。

本文中,來自中國科學技術大學、微軟亞洲研究院等機構的研究者提出了一個新的框架——單幅影像擴散模型(SinDiffusion,Single-image Diffusion),以用於從單幅自然影像中學習,其是在去噪擴散機率模型 (DDPM,Denoising Diffusion Probabilistic Model) 的基礎上完成的。雖然擴散模型是一個多步(multiple-step)生成過程,但它不存在累積誤差問題。原因是擴散模型具有系統的數學公式,中間步驟的誤差可視為干擾,並且可以在擴散過程中得到改善。
SinDiffusion 的另一個核心設計是限制擴散模型的感受野。該研究回顧了先前擴散模型[7] 中常用的網路結構,發現它具有較強的效能和較深的結構。不過該網路結構具有的感受野大到能夠覆蓋整個影像,這導致模型傾向於靠記憶訓練影像,從而生成與訓練影像完全相同的影像。為了鼓勵模型學習 patch 統計資訊而不是記憶整個影像,研究對網路結構進行了精細設計,並引入了一個 patch-wise 去噪網路。同之前的擴散結構相比,SinDiffusion 減少了原去噪網路結構中的下采樣次數和 ResBlock 數量。如此一來,SinDiffusion 可以從單幅自然影像中學習,並且生成高質量且多樣化的影像(見圖 2)。

-
SinDiffusion: Learning a Diffusion Model from a Single Natural Image
-
論文地址:https://arxiv.org/abs/2211.12445
-
專案地址:https://github.com/WeilunWang/SinDiffusion
SinDiffusion 的優點在於,它能靈活運用於各種場景(見圖 1)。它可以用於各種應用,而無需對模型進行任何重新訓練。在 SinGAN 中,下游應用主要透過將條件輸入預先訓練的不同尺度的 GANs 來實現。因此,SinGAN 的應用僅限於那些給定的空間對齊(spatiallyaligned)條件。與之不同的是,SinDiffusion 透過設計取樣程式可用於更廣泛的應用。SinDiffusion 透過無條件訓練學習預測資料分佈的梯度。假設有一個描述生成影像與條件之間相關性的評分函式(即 L−p 距離或一個預訓練網路,如 CLIP),該研究利用相關性評分的梯度來指導 SinDiffusion 的取樣過程。透過這種方式,SinDiffusion 能夠生成既符合資料分佈又和給定條件相吻合的影像。

研究對各種自然影像進行了實驗,以此來證明提出的框架的優勢,實驗物件包括風景和著名的藝術。定量和定性結果都證實了 SinDiffusion 可以產生高保真和多樣化的結果,而下游應用進一步證明了 SinDiffusion 的實用性和靈活性。
方法
與之前研究中的漸進式增長設計不同,SinDiffusion 採用單一尺度下的單一去噪模型進行訓練,防止了誤差的積累。此外,該研究發現擴散網路 patch-level 的感受野在捕獲內部 patch 分佈方面起著重要作用,並設計了一種新的去噪網路結構。基於這兩個核心設計,SinDiffusion 從單幅自然影像生成高質量和多樣化的影像。
本節其餘部分的組織如下:首先回顧 SinGAN 並展示 SinDiffusion 的動機,然後介紹了 SinDiffusion 的結構設計。
首先簡要回顧一下 SinGAN。圖 3(a)給出了 SinGAN 的生成過程。為了從單幅影像生成不同的影像,SinGAN 的一個關鍵設計是建立影像金字塔,並逐步增長生成的影像的解析度。
圖 3(b)為 SinDiffusion 新框架。與 SinGAN 不同的是,SinDiffusion 在單一尺度上使用單一去噪網路執行多步生成過程。雖然 SinDiffusion 也採用了像 SinGAN 一樣的多步生成過程,但是生成的結果是高質量的。這是因為擴散模型建立在對數學方程的系統推導的基礎上,中間步驟產生的誤差在擴散過程中被反覆細化為噪聲。

SinDiffusion
本文研究了生成多樣性與去噪網路感受野的關係——修改去噪網路的網路結構可以改變感受野,並且設計了四種感受野不同但效能相當的網路結構,在單幅自然影像上訓練這些模型。圖 4 顯示了不同感受野下模型生成的結果。可以觀察到,感受野越小,SinDiffusion 產生的生成結果越多樣化,反之亦然。然而,研究發現極小的感受野模型並不能保持影像的合理結構。因此,合適的感受野對於獲取合理的 patch 統計資訊是重要且必要的。

該研究重新設計了常用的擴散模型,並引入了用於單幅影像生成的 patch-wise 去噪網路。圖 5 是 SinDiffusion 中 patch-wise 去噪網路的概述,並且展現了與之前去噪網路的主要區別。首先,透過減少下采樣和上取樣操作來減小去噪網路的深度,從而極大地擴充套件了感受野。同時,去噪網路中原本使用的深層注意力層被自然去除,使 SinDiffusion 成為一個完全卷積的網路,適用於任意解析度的生成。其次,透過減少每個解析度中嵌入時間的 resblock,進一步限制 SinDiffusion 的感受野。用這種方法得到一個帶有適當感受野的 patch-wise 去噪網路,得到了逼真且多樣的結果。

實驗
SinDiffusion 隨機生成影像的定性結果如圖 6 所示。
可以發現,在不同的解析度下,SinDiffusion 可以生成與訓練影像具有相似模式的真實影像。

此外,本文還研究瞭如何從單幅影像生成高解析度影像的 SinDiffusion。圖 13 展示了訓練影像和生成的結果。訓練影像是一個 486 × 741 解析度的景觀影像,包含了豐富的元件,如雲、山、草、花和一個湖。為了適應高解析度的影像生成,SinDiffusion 已經升級到增強版本,該版本具有更大的感受野和網路能力。增強版的 SinDiffusion 生成了一個 486×2048 解析度的高解析度長滾動影像,其生成效果結果保持訓練影像的內部佈局不變,且歸納出了新的內容,見圖 13。

對比以往的方法
表 1 展示了 SinDiffusion 與幾個具有挑戰性的方法(即 SinGAN, ExSinGAN, ConSinGAN 和 GPNN)相比產生的定量結果。與之前基於 GAN 的方法相比,SinDiffusion 在經過逐步改進後,達到了 SOTA 效能。值得一提,本文的研究方法極大地提高了生成影像的多樣性,在 Places50 資料集上訓練的 50 個模型的平均值上,本文的方法以 + 0.082 LPIPS 的評分超過了目前最具挑戰性的方法。

除了定量結果之外,圖 8 還展示了 Places50 資料集上的定性結果。

圖 15 給出了 SinDiffusion 和之前方法的文字引導影像生成結果。

更多內容請檢視原論文。
CVPR/ECCV 2022論文和程式碼下載
後臺回覆:CVPR2022,即可下載CVPR 2022論文和程式碼開源的論文合集
後臺回覆:ECCV2022,即可下載ECCV 2022論文和程式碼開源的論文合集
後臺回覆:Transformer綜述,即可下載最新的3篇Transformer綜述PDF
目標檢測和Transformer交流群成立
掃描下方二維碼,或者新增微信:CVer222,即可新增CVer小助手微信,便可申請加入CVer-目標檢測或者Transformer 微信交流群。另外其他垂直方向已涵蓋:目標檢測、影像分割、目標跟蹤、人臉檢測&識別、OCR、姿態估計、超解析度、SLAM、醫療影像、Re-ID、GAN、NAS、深度估計、自動駕駛、強化學習、車道線檢測、模型剪枝&壓縮、去噪、去霧、去雨、風格遷移、遙感影像、行為識別、影片理解、影像融合、影像檢索、論文投稿&交流、PyTorch、TensorFlow和Transformer等。
一定要備註:研究方向+地點+學校/公司+暱稱(如目標檢測或者Transformer+上海+上交+卡卡),根據格式備註,可更快被透過且邀請進群

▲掃碼或加微訊號: CVer222,進交流群
CVer學術交流群(知識星球)來了!想要了解最新最快最好的CV/DL/ML論文速遞、優質開源專案、學習教程和實戰訓練等資料,歡迎掃描下方二維碼,加入CVer學術交流群,已彙集數千人!

▲掃碼進群
▲點選上方卡片,關注CVer公眾號
整理不易,請點贊和在看
