Slide 1

Slide 1 text

画像処理&機械学習 論文LT会 #7 Free-Form Image Inpainting with Gated Convolution 2019年9月13日(金) 矢農 正紀 (Masanori YANO)

Slide 2

Slide 2 text

論文 2 標題: Free-Form Image Inpainting with Gated Convolution 論文のURL: https://arxiv.org/abs/1806.03589 公式ページ: http://jiahuiyu.com/deepfill2/ ⇒ 画像のInpainting(修復)の手法に関する論文 著者の所属は、イリノイ大学及びAdobe Research 選んだ理由 ・画像を生成する観点で、Inpaintingの手法に関心あり ・ICCV 2019採択の論文で、本論文の手法が引用されていた ・NVIDIAのP-Convを長いこと理解できなかった ・本論文の説明と参考文献[4]で、ようやくP-Convを把握

Slide 3

Slide 3 text

Inpaintingとは 3 [入力] マスクを含む画像 [出力] マスクを除去した画像 ⇒ 本論文では、マスク(白塗り)は 任意の形状に対応し、加えて ユーザーのスケッチ(黒い線)も ガイダンス的な情報として活用

Slide 4

Slide 4 text

Inpaintingのアプローチ 4 [1] GLCIC(Globally and Locally Consistent Image Completion) Dilated Convolutionを含むCNN + GAN [2] P-Conv(Image Inpainting for Irregular Holes Using Partial Convolutions) Partial Convolutionを用いたU-Net構造のCNN [3] 本論文(Free-Form Image Inpainting with Gated Convolution) Gated ConvolutionのCNN(Dilatedも使用) + SN-PatchGAN ⇒ 「エンコーダ→デコーダ」のCNNで修復するところは共通 スキップ接続あり

Slide 5

Slide 5 text

P-Conv(Partial Convolution) 5 マスクを考慮して畳み込み、マスクは更新で縮める ・入力画像とは別に、マスクのチャネルを使用 1=マスクされていない、0=マスクされている ・入力画像は、マスクを考慮して畳み込み ・マスクは、定数のカーネルで畳み込んで 0以外は1に ⇒ 次第に縮んでいく バイアス項は 簡単のため省略

Slide 6

Slide 6 text

Gated Convolution 6 二種類の重みを使って、マスクの畳み込みも学習 はReLUなどの活性化関数、はシグモイド関数 (活性化関数を通した結果と、0~1のシグモイド関数とのアダマール積) バイアス項は 簡単のため省略

Slide 7

Slide 7 text

本論文のネットワークアーキテクチャ 7 SN-PatchGANと呼称 ・Generatorは、Gated Convolutionを中心としたCNN ・Discriminatorは、CNNで畳み込まれた特徴量で個別判定 - カーネルサイズ5・ストライド2で畳み込み - Spectral Normalizationを使用するSN-GANベース 学習のためのマスクやスケッチは、アルゴリズムで自動生成

Slide 8

Slide 8 text

まとめ 8 本論文はGated ConvolutionとSN-PatchGANを提案 ・任意の形状のマスクやスケッチに対応できた事例を提示 ・定量的な評価は、バリデーション画像のlossの平均を比較 ・50人のユーザーに、本物の画像と修復画像を見せて評価も - 修復画像の88.7%を「リアル」と判定(本物は94.3%) 所感 ・Inpaintingの論文は、成功事例の画像がインパクト大 ・一方で、だめな事例については 後続の論文で初めて見ることも ・新しい手法やアーキテクチャは 違うタスクに適用できるかも

Slide 9

Slide 9 text

参考文献 9 [1] GLCIC(Globally and Locally Consistent Image Completion) http://iizuka.cs.tsukuba.ac.jp/projects/completion/ [2] P-Conv(Image Inpainting for Irregular Holes Using Partial Convolutions) https://arxiv.org/abs/1804.07723 [3] Onion-Peel Networks for Deep Video Completion https://arxiv.org/abs/1908.08718 ↑ Gated Convolutionを知るきっかけとなったICCV 2019論文(動画の修復) [4] DeepCreamPyで学ぶモザイク除去 https://note.mu/koshian2/n/naa60d5c9ebba ↑ P-ConvやU-Netの実装コードを含む、わかりやすい解説