[SciPy] 29. 平均化フィルタによる画像の平滑化(ndimage.uniform_filter)

matplotlib

はじめに

scipyのndimageのuniform_filterを使って、画像を平均化して平滑にする方法について説明する。

コード&解説

モジュールのインポート

バージョン

画像の読み込み

サボテン すみれ丸の画像を、plt.imread()で読み込む。

グレースケール変換

skimage.color の rgb2grayでRGB画像をグレースケール画像に変換する。

変換した画像をcmap=”bone”で表示すると以下のようになる。

ユニフォームフィルタ=平均化フィルタ

平均化フィルタのサイズを10として処理すると、以下のような画像が得られる。わずかに画像がボケていることがわかる。

sizeを変化させた場合

サイズを大きくすることで、画像がよりボケていくようになる。

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

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

参考

scipy.ndimage.uniform_filter — SciPy v1.8.1 Manual

コメント