【#3 論文解説】pix2pix
こんにちは,ohashiです.
今回は条件付き画像生成モデルpix2pixをご紹介します.
画像変換タスクに興味のある方はぜひ!
目的
こんな人向け
- 社内で扱ったことのない深層学習分野の技術調査を始めたい.
- ゼミでの論文紹介の前に論文がどんな技術か把握したい.
- githubのコードを触る前に論文の要点を把握したい.
- そもそも論文を読むことが苦手.
こんな人向けではない
- 論文内の数式を完璧に追って理解したい.(要は何がしたいのかの説明を優先します.)
- 著者または他者実装の追試結果,実装ノウハウを知りたい.(githubをご参照下さい.)
論文
今回まとめるのは以下の2つ:
Image-to-Image Translation with Conditional Adversarial Networks [CVPR, 2017]
Authors: Phillip Isola, Jun-Yan Zhu, Tinghui Zhou, Alexei A. Efros
Publication: arXiv:1611.07004v3 [cs.CV]
Precomputed Real-Time Texture Synthesis with Markovian Generative Adversarial Networks [arXiv, 2016]
Authors: Chuan Li, Michael Wand
Publication: arXiv:1604.04382v1 [cs.CV]
できるようになったこと
CGANの入力の乱数+Condition vectorを画像へ拡張
2017年にPhillip Isolaらが提案したモデルは,様々なタスクをConditional GANで解くことを提案した生成モデルです.
今回の論文では,前回のConditional GANの記事で紹介した乱数+Condition vectorをグレイスケール画像やヒートマップ画像に置き換えています.つまり,従来の乱数+Condition vectorと解釈できる入力画像を前提条件として学習を行うため,出力画像も入力画像の構造に対応した画像の生成が可能となります.(逆にこのときの条件以外の構造の画像を生成しようとすると上手くいかない場合があります.)この条件を満たした上で,Isolaらのモデルは構造を転写するための高いパフォーマンスを発揮します. 今回は論文内で報告された様々なタスクの内,グレイスケール画像からRGB画像を復元するタスク,自動着色モデルについて説明します.
敵対的損失の導入で平均色による着色を回避
自動着色モデルに限らず生成モデルの損失関数では,これまでに以下のことが報告されています.
この観点から,提案手法ではユークリッド距離を損失関数に組み込むことを廃止し,敵対的損失を導入しています.敵対的損失は生成画像の"本物らしさ"を再現しようとするため,より本物らしい色を持つ画像を生成します.これにより,L1ノルムやL2ノルムのような灰色の多い画像の生成を避けることができます.
PatchGANで生成画像のぼけを解決
しかし,本物らしい色を持つ画像を生成するだけで本物のテクスチャや細部の質感まで厳密に生成することはできていません.見た目がそれっぽくなるような画像を生成するだけです.これが従来のGANの課題の一つでした.
Isoraらは,見た目がそれっぽくなる画像,とは周波数空間上における低周波成分の再現は成功している画像である,と解釈しました.そこで,彼らは識別器(Discriminator)に,高周波成分に着目して本物か偽物か判断するPatch GANの機構を導入しました.(2枚目の論文まとめ)Patch GANはその名の通り生成画像をパッチに分割して,局所的な領域が一致しているかをパッチ単位で識別することで高周波成分のスタイル合成に成功しています.(2枚目の論文まとめ,赤枠"重要"部分)
CGAN+PatchGANで本物らしいぼけない画像を生成
この機構を提案手法の識別器に導入することで
- CGANで ”本物らしい”+"低周波成分が一致した"画像
- Patch GAN → ”高周波成分も一致した”画像
の生成を実現しています.
まだできないこと
正解画像と位置合わせがされていない入力画像を使った画像生成
論文中で使用されているデータセットは入力画像と正解画像のペアの位置関係が上手く保存されている画像群から構成されています.これは,正解画像から学習用の入力画像を生成しているためです.例えば,自動着色の例では,正解画像をRGB画像として,入力画像を正解画像のRGBをグレイスケール変換することで取得しています.色情報のみが変化するため,位置情報は保存されたままです.
学習データセットを1枚の画像から生成する場合は今回の論文の技術を十分に発揮できると考えられますが,入力画像と正解画像を別の場所から収集してきた場合には,これらの画像の位置合わせを前処理として実施する必要があると考えられます.これは,今回紹介した手法では学習画像と正解画像の位置ずれは明示的に考慮していないためです.もちろんMax Poolingである程度の位置ずれは吸収できているはずですが,あまりに位置ずれが大きい画像対を学習に使用する際には,あらかじめ位置合わせをしておくことが重要になると考えられます.
所感
従来手法と比較して生成画像のぼけが非常に少なく,細部まで比較的鮮明に画像生成されていることから非常に話題になった論文です.PhillipらはGANが”本物らしい”画像を生成することから,”低周波成分の再現に強い”画像生成手法であることを見抜き,不足している高周波成分の情報をPatch GANを導入することで補いました.
一見綺麗に問題を解決したように感じますが,生成モデルはここからさらに発展します.2020年5月31日時点で,リアルな画像生成を突き詰めた形がStyleGAN2だと筆者は感じますが,そちら方面の研究はまだ追っていません.
次回はこの論文を読んで興味関心が強く湧いた自動着色について記事をまとめます.
ohashi
2019年入社,深層学習を扱う部署に配属.大学院では動画から脈波を抽出する研究に従事.動画像の理解,人間の魅力の解析,人間の自律神経や生体信号に興味関心.深層学習だと自然言語処理の実用化に興味関心.
同じ研究分野の人間が利害問わず協力して研究動向を追って,初学者の方に自分が勉強した教材を利用してもらって,研究のコミュニティが広がると嬉しいですよね.AIはとっつきにくい分野ではないことを知ってほしいです.むしろ社会にも実装され始めている現在は,みんなでAIが今できることとできないことを把握して,知恵を絞って面白いアイデアをどんどん出して実現していく段階だと思います.そういった時代に向けて,情報共有の一助になれば幸いです.
ご連絡はお問い合わせフォームからお願い致します.