論文LT会で作成した「Free-Form Image Inpainting with Gated Convolution」の説明資料です。
画像処理&機械学習 論文LT会 #7Free-Form Image Inpaintingwith Gated Convolution2019年9月13日(金)矢農 正紀 (Masanori YANO)
View Slide
論文2標題: Free-Form Image Inpaintingwith 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を把握
Inpaintingとは3[入力] マスクを含む画像[出力] マスクを除去した画像⇒ 本論文では、マスク(白塗り)は任意の形状に対応し、加えてユーザーのスケッチ(黒い線)もガイダンス的な情報として活用
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で修復するところは共通スキップ接続あり
P-Conv(Partial Convolution)5マスクを考慮して畳み込み、マスクは更新で縮める・入力画像とは別に、マスクのチャネルを使用1=マスクされていない、0=マスクされている・入力画像は、マスクを考慮して畳み込み・マスクは、定数のカーネルで畳み込んで0以外は1に ⇒ 次第に縮んでいくバイアス項は簡単のため省略
Gated Convolution6二種類の重みを使って、マスクの畳み込みも学習はReLUなどの活性化関数、はシグモイド関数(活性化関数を通した結果と、0~1のシグモイド関数とのアダマール積)バイアス項は簡単のため省略
本論文のネットワークアーキテクチャ7SN-PatchGANと呼称・Generatorは、Gated Convolutionを中心としたCNN・Discriminatorは、CNNで畳み込まれた特徴量で個別判定- カーネルサイズ5・ストライド2で畳み込み- Spectral Normalizationを使用するSN-GANベース学習のためのマスクやスケッチは、アルゴリズムで自動生成
まとめ8本論文はGated ConvolutionとSN-PatchGANを提案・任意の形状のマスクやスケッチに対応できた事例を提示・定量的な評価は、バリデーション画像のlossの平均を比較・50人のユーザーに、本物の画像と修復画像を見せて評価も- 修復画像の88.7%を「リアル」と判定(本物は94.3%)所感・Inpaintingの論文は、成功事例の画像がインパクト大・一方で、だめな事例については後続の論文で初めて見ることも・新しい手法やアーキテクチャは違うタスクに適用できるかも
参考文献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 Completionhttps://arxiv.org/abs/1908.08718↑ Gated Convolutionを知るきっかけとなったICCV 2019論文(動画の修復)[4] DeepCreamPyで学ぶモザイク除去https://note.mu/koshian2/n/naa60d5c9ebba↑ P-ConvやU-Netの実装コードを含む、わかりやすい解説