[matplotlib animation] 50. rank.mean_bilateralを用いた平均化する領域が変化していくアニメーション

matplotlib Animation

はじめに

ここではskimage.rank.mean_bilateralのs0, s1が変化するアニメーションについて解説する。
画像の平均化については下記で解説した。

[scikit-image] 35. 平均化フィルタによる画像の平滑化(skimage.rank mean, mean_percentile, mean_percentile)
ここでは、skimage rank mean, mean_percentile, mean_percentileにより画像に平均化フィルタを適用した例について説明する。

コード

解説

モジュールのインポート

画像の読み込みとグレースケール化

平均化範囲の設定

アニメーション設定

bilateral_imageはrank.mean_bilateral()を適用した画像であり、rank.mean_bilateralのs0, s1を増加させて表示するアニメーションとなる。
ax.cla()により、古い画像を消している。
ax.axis(‘off’)で軸が非表示となる。

アニメーションの表示

10stepアニメーション関数を実行して、500 ms間隔で順次図をかえていくので、5 secのアニメーションとなる。
HTML(ani.to_html5_video())とすればjupyter notebook上にアニメーションを表示できる。

中央のロフォフォラが徐々に平滑になっていく様子を観察することができる。

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

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

参考

skimage.filters.rank — skimage 0.24.1rc0.dev0 documentation

コメント