画像変換まとめ【GANGAN心惹かれていく】

タイトルがしょうもないって?

本日は画像変換のアルゴリズムについてまとめます。Deep Learningを活用した画像変換の動向として、やはりGANなしでは語れません。

画像変換のジャンル分け

GANを使った画像変換の入力-出力の対応とアルゴリズムをまとめてみます。

Uni-modal(1:1) Multi-modal(1:N)
教師あり Pix2Pix BicycleGAN
教師なし CYcleGAN, DiscoGAN, UNIT StarGAN, MUNIT, DRIT

Uni-modalとは1対1の画像変換のことでMulti-modalは1対多の画像変換を行います。

Pix2Pixは画像変換において最も基本となる学習アルゴリズムで、1対1のペアの画像入力の返還を行います。たとえば簡易地図/航空写真の変換や白黒画像/カラー画像の変換など、正解ペアを大量に用意できるケースに適しています。ゆえに教師あり学習といわれます。

一方で、馬/シマウマの変換のように多対多で画像を用意できるものの、きれいな1対1のペアの画像が用意できないケースは教師なし学習でCycleGANが基準のアルゴリズムとなります。

教師なしの画像変換といえばCycleGAN

多くのGANでは学習時にDiscriminatorの穴をついた出力をGeneratorが学習してしまい同じ画像の出力をし続けるMode collapse問題に悩まされます。CycleGANではCycle-consistency lossを導入したことでmode collapseに陥ることを防ぎつつ、Identity lossによって入力の色・形を維持することが可能になりました。

さらに、CycleGANでは形を維持したデータの学習を得意としますが、DiscoGANでは形状の違いすらも学習時に吸収することができます。二つの学習におけるDiscriminatorのReceptive field(見ている範囲)の差がこのような違いを生んでいます。(例:256x256 VS 64x64)

CycleGANの派生:マルチモーダルドメイン変換

種別 CycleGANとの違い 特徴
StarGAN Conditionの追加(CycleGAN + ACGAN) ・変数が少ない
UNIT 潜在空間の重み共有 ・変数が少ない
MUNIT コンテンツ&スタイル分離 ・マルチモーダル変換
DRIT UNIT + MUNIT ・変数が少ない

・マルチモーダル変換

StarGANはCycleGANの入力にconditionを追加して、Generatorでは変換先の画像を指定し、DiscriminatorではそのClass判別も学習する工夫(ACGAN)をしています。これにより多対多のマルチドメイン変換であっても複数のGenerator/Discriminatorを持つ必要がなくなります。

(http://www.lherranz.org/2018/08/07/imagetranslation/)

ネットワークアーキテクチャの概略図

(編集途中)

シェアする

フォローする