超解像度画像生成(super-resolution)

 小さい画像をサイズ変更などで拡大すると、コントラストのある部分がギザギザ(Jaggy:ジャギー)になってしまう。また、拡大されることによって新たに生成されたピクセルの色調が実際の画像と異なるせいで写真全体がモヤけた感じになる。これまで、上記のような拡大画像ではなく元の大きな画像に近い拡大画像を得るために「bilenear」「nearest neighbor」「fractal」などの手法が存在していた。これらに加え、新たな手法として機械学習を用いた手法が近年考案された。

 前述の「bilenear」「nearest neighbor」「fractal」などの手法が、拡大前の画像内の新規ピクセル生成箇所近傍の情報を元に新規ピクセルを生成するのに対し、機械学習を用いた手法は「予め既存の画像の拡大前後の関係を学習させたニューラルネットワークモデルを用いて、拡大前画像に対する拡大後画像を求めさせる」という、人間が常識を用いて推測するプロセスに近い手法である(← かなりざっくり説明しました)。

 従来の手法および機械学習を用いた手法で下記に実際に画像を拡大した場合を示す(モデルは我が家のネコ)。確かにBilenearを用いて拡大した画像よりも、機械学習を用いた画像の方がコントラストのある稜線部分が特に明瞭に拡大できている。しかし、最後に表示してある元画像と比較すると、細部までの鮮明さが再現できておらず、奥行き感が劣っているように見える。

 
1. 拡大前画像(306 x 408 pixel)

 
2.1. Bilenear を用いた x2 拡大後画像(612 x 816 pixel)

 
2.2. 機械学習 を用いた x2 拡大後画像(612 x 816 pixel)

 
3. 元の画像(612 x 816 pixel)

 
 このことから、機械学習を用いた画像の拡大には従来の手法に比較して一定の優位性が認められるが、これを持って十分な成果が得られるとは言い切れない。今回の機械学習のトレーニングには一般的な画像(風景・物体・生物など)をニューラルネットワークモデルに学習させることで行ない、32dB程度のPSNRを得たが、猫の画像は含めていなかった。今後に検証するべきだが、猫の画像を十分に学習させたモデルをトレーニングに用いれば、元画像に近い鮮明な拡大画像が得られると考える(要検証)。

 
 
補足
 
PSNR:ピーク信号対雑音比(標準的な値は30~50dBで、高い方が画質が良い)
 
参考URL
 
https://github.com/jiny2001/dcscn-super-resolution