當(dāng)前位置:首頁(yè) > IT技術(shù) > 編程語(yǔ)言 > 正文

真實(shí)場(chǎng)景超分算法-Real-ESRGAN
2022-05-11 11:06:03


1. 介紹

在單張圖片超分辨率(Single Image Super-resolution)的問(wèn)題中,許多方法都采用傳統(tǒng)的 Bicubic 方法實(shí)現(xiàn)降采樣,但是這與現(xiàn)實(shí)世界的降采樣情況不同,太過(guò)單一。

盲超分辨率(Blind Super-resolution)旨在恢復(fù)未知且復(fù)雜的退化的低分辨率圖像。根據(jù)其使用的降采樣方式不同,可以分為顯式建模(explicit modeling)和隱式建模(implicit modeling)。

  • 顯式建模:經(jīng)典的退化模型由模糊、降采樣、噪聲和 JPEG
    壓縮組成。但是現(xiàn)實(shí)世界的降采樣模型過(guò)于復(fù)雜,僅通過(guò)這幾個(gè)方式的簡(jiǎn)單組合無(wú)法達(dá)到理想的效果。
  • 隱式建模:依賴于學(xué)習(xí)數(shù)據(jù)分布和采用 GAN 來(lái)學(xué)習(xí)退化模型,但是這種方法受限于數(shù)據(jù)集,無(wú)法很好的泛化到數(shù)據(jù)集之外分布的圖像。

在現(xiàn)實(shí)世界中,圖像分辨率的退化通常是由多種不同的退化復(fù)雜組合而成的。

因此,作者將經(jīng)典的一階退化模型(“first-order” degradation model)拓展現(xiàn)實(shí)世界的高階退化建模(“high-order” degradation modeling),即利用多個(gè)重復(fù)的退化過(guò)程建模,每一個(gè)退化過(guò)程都是一個(gè)經(jīng)典的退化模型。但是為了平衡簡(jiǎn)單性和有效性,作者在代碼中實(shí)際采用的是二階退化模型(“second-order” degradation model)。

真實(shí)場(chǎng)景超分算法-Real-ESRGAN_算法

但是因?yàn)椴捎昧烁唠A退化模型,使得退化空間相比于 ESRGAN 來(lái)說(shuō)大得多,訓(xùn)練也就更加具有挑戰(zhàn)性。因此作者在 ESTGAN 的基礎(chǔ)上做了兩個(gè)改動(dòng):

  1. 使用 U-Net 判別器替換 ESRGAN 中使用的 VGG 判別器;
  2. 引入 spectral normalization 來(lái)使得訓(xùn)練更加穩(wěn)定,并減少 artifacts。

綜上所述,在這篇文章中作者做出了如下研究,

  1. 提出使用高階退化模型,并利用 sinc 濾波器來(lái)建模常見(jiàn)的振鈴(ringing)和超調(diào)效應(yīng)(overshoot artifacts)。
  2. 采用了一些基本的修改(例如,帶 spectral normalization 的 U-Net判別器)來(lái)增加判別器的能力和訓(xùn)練穩(wěn)定性。
  3. 使用純合成數(shù)據(jù)訓(xùn)練的 Real-ESRGAN 能夠恢復(fù)大部分真實(shí)世界的圖像,比以往的作品具有更好的視覺(jué)性能,在現(xiàn)實(shí)世界中更具有實(shí)用性。

2. 經(jīng)典退化模型

真實(shí)場(chǎng)景超分算法-Real-ESRGAN_圖像增強(qiáng)_02

其中,真實(shí)場(chǎng)景超分算法-Real-ESRGAN_計(jì)算機(jī)視覺(jué)_03 表示原始圖像,真實(shí)場(chǎng)景超分算法-Real-ESRGAN_計(jì)算機(jī)視覺(jué)_04 表示模糊函數(shù),真實(shí)場(chǎng)景超分算法-Real-ESRGAN_算法_05 表示下采樣因子,真實(shí)場(chǎng)景超分算法-Real-ESRGAN_超分辨率_06表示噪聲, 真實(shí)場(chǎng)景超分算法-Real-ESRGAN_圖像增強(qiáng)_07 表示將得到的結(jié)果使用 JPEG 方式壓縮處理。

因此,整個(gè)式子的含義就是將一張高分辨率圖像 真實(shí)場(chǎng)景超分算法-Real-ESRGAN_計(jì)算機(jī)視覺(jué)_03 通過(guò)模糊處理之后進(jìn)行下采樣,然后添加噪聲,最后通過(guò) JPEG 壓縮處理得到低分辨率圖像真實(shí)場(chǎng)景超分算法-Real-ESRGAN_圖像增強(qiáng)_09

3. 高階退化模型(High-order Degradation Model)

高階退化模型是在一階退化模型的基礎(chǔ)上,重復(fù)多次得到,但是每一次退化過(guò)程中使用的參數(shù)都不盡相同。比如 Blur 這個(gè)操作可以選用多種核函數(shù)間的一個(gè),每一個(gè)取得的概率不同。作者在代碼中實(shí)際采用的是二階退化模型。

真實(shí)場(chǎng)景超分算法-Real-ESRGAN_算法

真實(shí)場(chǎng)景超分算法-Real-ESRGAN_圖像增強(qiáng)_11

4. 網(wǎng)絡(luò)結(jié)構(gòu)

Generator:采用 ESRGAN 中的 Generator,即使用 Residual-in-residul Dense Block(RRDB)。

Discriminator:使用有 spectral normalization(SN) 的 U-Net。使用 SN 是為了穩(wěn)定訓(xùn)練過(guò)程,并且使用 SN 有助于緩和 oversharp 和 artifacts。

真實(shí)場(chǎng)景超分算法-Real-ESRGAN_計(jì)算機(jī)視覺(jué)_12

5. 訓(xùn)練方法

  1. 預(yù)訓(xùn)練一個(gè)以 PSNR 為目標(biāo)的模型,并采用 L1 loss,得到 Real-ESRNet
  2. 用 Real-ESRNet 初始化 Real-ESRGAN 中的 Generator,然后訓(xùn)練 Real-ESRGAN,采用 L1 Loss、perceptual loss 和 GAN loss 三種組合的 loss。

6. 實(shí)驗(yàn)效果

真實(shí)場(chǎng)景超分算法-Real-ESRGAN_算法_13

7. 最后




本文摘自 :https://blog.51cto.com/u

開通會(huì)員,享受整站包年服務(wù)立即開通 >