[matplotlib animation] 104.画像上の四角が動くアニメーション

matplotlib

はじめに

この記事では、Matplotlibのアニメーション機能を使って、画像上に配置した四角形を走査するように動かすアニメーションの作成方法を解説します。画像処理や視覚的な解析において便利なテクニックです。

解説

モジュールのインポートなど

バージョン

画像データの作成

128 x 128のサイズの画像データを作成します。

動かす四角と画像の表示

四角形はpatches.Rectangleを使用して表示します。(-9,-9), 18, 18と指定することで、左下の位置が(-9,-9)で縦18横18の大きさの四角形を作成できます。ax.add_patch(rect)を実行することで、この四角形が図中に表示されます。

四角を動かすための配列の作成

左下から右へ動きながら、徐々に上へ上がっていく動きをする配列を作成します。np.tile()関数を使用することで、このパターンを繰り返した配列を生成できます。

画像上の四角を動かすアニメーション 1

四角の位置はrect.set_xyでupdateします。

画像上の四角を動かすアニメーション 2

四角の動きを変えてみたアニメーションは以下のようになります。

画像上の円を動かすアニメーション

同様の方法で画像上に表示した円も動かすことができます。

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

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

まとめ

Matplotlibのアニメーション機能を活用することで、画像上の四角形を自由に動かすことができます。この技術は画像処理のアルゴリズム可視化や、特定領域の強調表示など、様々な場面で応用可能です。コードの基本構造を理解すれば、独自のアニメーションを簡単に作成できるようになります。

参考

matplotlib.patches.Rectangle — Matplotlib 3.10.6 documentation
matplotlib.animation.FuncAnimation — Matplotlib 3.10.6 documentation
numpy.tile — NumPy v2.3 Manual

コメント