Think more, try less

Owen Zhangの言葉を大切にして,日々Kaggleに取り組んでいます.

GANによる超解像がもたらす新しい方向性と「The Perception-Distortion Tradeoff」の話

CVPR2018にて超解像分野において極めて重要そうだなと感じた論文がありました。Yochai Blauらによる下記の論文です。

[1711.06077] The Perception-Distortion Tradeoff

この内容を踏まえて最近の超解像研究の流れをまとめたいと思います。

超解像とは?

超解像について振り返ります。多くの方がwaifu2xというソフトウェアで一度は目にしたことがあるかもしれません。下記イメージのように低解像の画像を高解像の画像に変換する方法を 超解像(Super Resolution)と呼ばれます。

https://raw.githubusercontent.com/nagadomi/waifu2x/master/images/slide_upscaling.png

参照元二次元画像を拡大したいと思ったことはありませんか? - デー

このwaifu2xがざっくりどのように超解像を行っているかというと、ベースはSRCNNというConvolutional Neural Netoworkを使った超解像手法であり、下記のような流れで学習を行います。

  1. 元の高解像画像からBIcubicでDown-sampleとUp-sampleを行うことで低解像画像を生成する
  2. 低解像画像を入力として、元の高解像画像との差分がなくなるようにCNNで学習する

f:id:Keiku:20180722213740p:plain:w600

シンプルですがこのように学習して超解像を行うことができます。学習において便利なことは学習データとして高解像画像がありさえすれば良いという点で学習が容易であり、また驚くような綺麗な画像が得られる点で魅力的なComputer Visionのタスクの一つです。

SRCNNは下記論文にて発表されています。2014年12月頃です。

[1501.00092] Image Super-Resolution Using Deep Convolutional Networks

超解像の分野はObject Detectionなどのタスクのブレイクスルーなどの技術が転用されて発展するケースが多く、だいたいの時期が掴めるかと思います。

超解像における一般的なメトリック「PSNR

さきほど手法について「差分がなくなるようにCNNで学習する」と説明しましたが、この差分とは超解像分野では、PSNR(Peak Signal-to-Noise Ratio:ピーク信号対雑音比)で表される指標であり、下記のような簡単な数式で表すことができます。

{ \displaystyle
PSNR = 10 \cdot \log_{10} \tfrac{MAX ^2 _I}{MSE}
}

{ \displaystyle
\ \ \ \ \ \ \ \ \ \  = 20 \cdot \log_{10} \tfrac{MAX _I}{ \sqrt{MSE} }
}

ここで\( MAX _I \) は画像が取りうる最大ピクセル値です。至ってシンプルな指標で、低解像の画像と高解像の画像についてピクセルごとのデータに対してMSEを計算しているだけです。

GANを組み込んだ超解像「SRGAN」の登場

これまでCNNベースの手法が中心でしたが、時代の流れもありGenerative Adversarial Networks(GAN)を組み込んだ超解像手法の「SRGAN」が提案されました。2016年9月頃です。

[1609.04802] Photo-Realistic Single Image Super-Resolution Using a Generative Adversarial Network

名前からGANのイメージが強く見えますが、大きく4つの理論的な枠組みが組み込まれており、現代的な手法がいくつか組み込まれています。

  • ResNetによる細かいエラーを修正する深いネットワーク
  • Style Tranferにも使われているContent Lossを考慮することで主観的な評価を行う
  • GANを導入しAdversarial Lossを考慮してさらに主観的な評価を行う
  • Deconvolutionの代わりにPixel Shuffle Layerを導入し高速かつ綺麗な画像を生成する

f:id:Keiku:20180722213837p:plain

これらの技術的な改善により人間が見て知覚品質の良い超解像が実現できています。実際にモニターによって評価された結果が下記の通りです。

f:id:Keiku:20180722214856p:plain:w450

SRGANの特徴と従来手法の問題点

SRGANによって人間が見て知覚品質の良い結果が得られたわけですが、ここで一つの問題が生じます。人間が見て知覚品質の良い結果がPNSR(≒MSE)と相関していないことがわかります。下記の画像が一つの例です。

https://www.pirm2018.org/img/church.svg

これは山脈の雪に注目してみると、SRGANの結果はPNSRの値が低いけれども雪の状況を細かく表現しているのに対して、SRResNetの結果はPNSRの値が高いもののぼやけたような画像になっています。PNSRを高く最適化しようとして平均的に良いと思われる画像を生成してしまっています。SRGANの論文中でもこれは指摘されており、図で直観的な説明がなされています。

f:id:Keiku:20180722214604p:plain:w450

The Perception-Distortion Tradeoff

上記の問題に着目し、この知覚品質とPNSRの関係性を定量的に評価した論文が下記です。

[1711.06077] The Perception-Distortion Tradeoff

本論文では要点として、超解像において知覚品質と歪みにはトレードオフがあることが示されています。つまり知覚品質と歪みの精度をお互いに高めることはできないということです。論文中に下記のように図示されています。アルゴリズムによっては不可能な領域があることがわかります。

f:id:Keiku:20180722214912p:plain:w500

知覚品質と歪みについて定量的なメトリックで説明します。歪みを測定するためには、Full-Reference Metric(完全参照メトリック)と呼ばれるメトリックを使用します。ピクセル単位や意味単位などに依存するメトリックで、MSE(Mean Square Error:平均二乗誤差)、PSNR(Peak Signal-to-Noise Ratio:ピーク信号対雑音比)、SSIM(Structural SIMilarity:構造的類似性指数)などがそうです。一方、知覚品質を測定するためには、No-Reference Metric(非参照メトリック)と呼ばれるメトリックを使用します。BRISQUE(Blind/Referenceless Image Spatial Quality Evaluator)、NIQE(Natural Image Quality Evaluator)などがあります。

これらのメトリックに関して最近の超解像手法について実験した結果が次の通りです。この実験では、Ma et al. という知覚スコアで評価されています。PSNR/SSIMで高精度が出ているモデルEDSR(NTIRE2017コンペティションのWinning Solution )などはMa et al.では精度が低く、逆にSRGANやEnhanceNetなどのモデルはPSNRの精度は低いものの、Ma et al.は高いことが見て取れます。

https://www.pirm2018.org/img/PD_plot.svg

ECCV 2018 PIRM Workshopのメトリック

現在、ECCV 2018 PIRM Workshopにて超解像コンペティションが開催されています。

PIRM-SR: Challenge on Perceptual Super-Resolution

上記で説明した知覚品質の歪みのトレードオフの問題を踏まえて、本コンペティションでは、従来の評価尺度とは異なり新しいメトリックが導入されました。下記となります。

\text{Perceptual score} = \tfrac{1}{2} ((10 - \text{Ma et al.}) + \text{NIQE}).

\( \text{Ma et al.} \) というのは、Chao Maらによる下記の論文による仕事が元となったメトリックです。

Learning a No-Reference Metric for Single-Image Super-Resolution - Chao Ma's Homepage

丁寧に説明すると長くなってしまうため要約すると、3つの低レベルの統計的特徴から2ステージの回帰モデルを構築することでスコアを算出する仕組みになっています。模式図としては下記のように表されています。

f:id:Keiku:20180722222844p:plain

もう一つの\( \text{NIQE} \) というのは、下記の論文に説明があります。モデルを学習させるために使用されるイメージデータベースから取得された特徴と測定したいイメージから計算されたNSS(Natural Scene Statistic)ベースの特徴の間の距離を測定します。

Mittal, A., R. Soundararajan, and A. C. Bovik. "Making a Completely Blind Image Quality Analyzer." IEEE Signal Processing Letters. Vol. 22, Number 3, March 2013, pp. 209–212.

ECCV 2018 PIRM Workshopでは、このように記述されるメトリックで、RMSEの領域ごとにモデルを評価する形を取っています。本記事執筆時点でまだコンペティション開催中のため、Winning Solutionが出たらまた確認したいと思います。

今後の超解像分野の研究の方向性

アカデミックな研究者でもないので個人的な考えですが、おそらくこれから \( \text{Perceptual score} \) メトリックの確立化がより進んでいくと思われます。複雑なメトリックであればあるほど、使いにくくわかりにくいもののになり超解像の研究として一般化していかなくなります。より簡単でかつわかりやすいメトリックが開発されること方向になると思います。同時に、GANもしくはその他のアプローチによりこの暫定版の \( \text{Perceptual score} \) がより改善されるアーキテクチャが提案されてくることが予想されます。おそらくCVPR2019、2020あたりではこのあたりのアプローチが提案されていると思っています。

おわりに

超解像の研究分野は、他の分野のDeep Learning手法が転用されて発展するケースがままあり、勉強してみるとさまざまな分野の手法が一気に学べて面白いです。素人目に見てもやるべきことが多く、間違いなく発展していく分野であることは間違いありません。今後の発展も引き続き追っていきたいと思います。

参考文献