はじめに
画像の非線形変換である渦巻き(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上にアニメーションを表示できる。
参考
Swirl — skimage 0.24.0 documentation
コメント