Mugichoko's blog

Mugichoko’s blog

プログラミングを中心としたメモ書き.

Fast Digital Image Inpainting

目標

画像上の欠損領域を同一画像内の他の画素を用いて埋めるImage Inpaintingを実装する.

Fast Digital Image Inpainting

概要

とても簡単に実装できるImage Inpaintingの一つ.単に論文に書かれた以下のカーネルを用いて,欠損領域にて畳み込み処理を行うだけ.100回~数百回この処理を繰り返すことで,欠損領域を埋めることができる.

f:id:Mugichoko:20171125073003p:plain

※ 図は論文より抜粋.尚,{a = 0.073235, b = 0.176765}とする.

M. M. Oliveira, B. Bowen, R. McKenna, Y.-S. Chang: Fast Digital Image Inpainting, Proc. of Int. Conf. on Visualization, Imaging and Image Processing (VIIP), pp. 261-266, 2001.

結果

左から,入力画像,マスク画像,結果の画像の順で5つの例を挙げる.いずれもループ回数は500回.

example_1 example_2 example_3 example_4 example_5

ソースコード

今更ながら,初めてGitHubを使ってみた.これまでBitBucketで自身のコードを管理していたが,公開する場合はGitHubの方が便利そうだ.

github.com

所感

単に畳み込み処理を実装するだけなので,テストなども含めて数時間で終わる程度の実装だった.非常に簡単である.尚,欠損領域が大きい場合はループ回数を増やす必要がある.