[scikit-image] 37. 画像の欠損部分を修復(skimage.restoration inpaint)

python

はじめに

ここでは、skimage restoration inpaintにより画像の欠損部分を修復する例について説明する。

コード

コードをダウンロード(.pyファイル)

コードをダウンロード(.ipynbファイル)

解説

モジュールのインポート

画像データの読み込み

下のロフォフォラの画像を読み込む。

マスク画像の作成

image_orig.shape[:-1]は(512,512)なので、maskはすべての要素が0の配列となる。
そのマスクの所定の位置を1にしてマスク画像としている。

画像のマスク処理

マスク画像中のマスクされている部分を読み込んだ画像に適用する。R, G, Bの層があるので各層でマスク処理をする。image_defect.shape[-1]はRGB画像なので3となる。

画像の修復

inpaint_biharmonicにより画像を修復する。
image_defectはマスク処理により欠損部分をある画像でmaskはマスク画像となる。
multichannel=Trueはカラー画像なのでTrue となる。グレースケールならFalse。

画像の表示

右下のInpainted imageで、欠損部分がボケた感じに修復されていることがわかる。

参考

Fill in defects with inpainting — skimage 0.24.0 documentation
skimage.restoration — skimage 0.24.0 documentation

コメント