[matplotlib animation] 44. skimage.transform.swirlのstrength変化アニメーション

matplotlib Animation

はじめに

画像の非線形変換である渦巻き(skimage.transform.swirl)のパラメータ(strength)を変化させたときの画像の変化をmatplotlib FuncAnimationのアニメーションで表示する。
strengthを増加させることで、中心の旋回度合いが高まる。

コード

解説

モジュールのインポート

データの読み込みと図の生成

アニメーションの設定

表示されている図を消す

逐次、現在の画像を消して新しい画像を表示するという方法でアニメーション表示をするので、ax.cla()により、古い画像を消す。

画像の渦巻き処理

スワール変換については下記で解説した。ここでは、パラメータのstrengthを変化させたときの画像の変化を見る。

[scikit-image] 24. 画像の非線形変換(渦巻き模様:transform.swirl)
ここでは、skimage.transformのswirlを用いた画像の非線形変換(渦巻き)について説明する。

画像の表示

タイトルに変化するstrengthの値の表示

逐次変化するstrengthの値をタイトルに表示する。

アニメーションの表示

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

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

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

参考

Swirl — skimage 0.24.0 documentation

コメント