[matplotlib animation] 34. HSV色空間での色変化アニメーション

matplotlib Animation

はじめに

HSV色空間を用いて色が変化するアニメーションを表示する。

コード

解説

モジュールのインポート

色を変化させる関数

[scikit-image] 9. グレースケール画像の色付け
skimage.colorのrgb2hsvとhsv2rgbなどを駆使した画像の色付け

↑で用いた関数を使う。詳細は下記の通り。

1.RGB画像をHSVに変換する

2.色相と彩度を設定する

3.HSV画像をRGBに変換する

画像の読み込み

hueの設定

色相を0から1に50stepで変化させる。

アニメーションの設定

ax.cla()で古い図を削除。
tinted_image = colorize(image, hue[num], saturation=0.7)でhueの値を順次変化させるアニメーションとする。
ax.set_axis_off()で軸を非表示としている。

アニメーションの表示

FuncAnimationでanimationの表示する。updateを50step実行してアニメーションとする。intervalは200 ms なので10秒のアニメーションとなる。
HTML(ani.to_html5_video())でjupyter notebook上にアニメーションを表示できる。

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

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

参考

matplotlib.animation.FuncAnimation — Matplotlib 3.9.3 documentation

コメント