[ipywidgets] 20. IntProgressでプログレスバーを表示する

ipywidgets

はじめに

jupyter notebook, labのパラメータを対話的に表示できる機能(ipywidgets IntProgress)でプログレスバーを表示する方法について説明する。ここでは、動画ファイルを画像に変換する処理の進捗状況をプログレスバーで表示する。

コード

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

解説

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

このコードはjupyter lab 2.0.1 で実行した。jupyter labでインタラクティブな操作をするために、%matplotlib widgetとする。

動画の読み込みとメタデータ

下記記事の動画を読み込み、メタデータを表示する。フレーム数は300であることがわかる。

[matplotlib animation] 75. テンプレートマッチングによる物体追跡でジャンプした回数を計測
scikit-imageのテンプレートマッチングによる物体追跡により、対象物がジャンプした回数を動画解析し、matplotlib, FuncAnimationのアニメーションで表示する。

ipywidgetsの設定

IntProgressでプログレスバーを表示する。minからmaxの値に応じて、バーの伸びが変化する。

動画から画像への変換の実行とプログレスバー

画像をひとつリストに追加するごとにプログレスバーに1を加えていくことで進捗状況がわかる。

参考

Widget List — Jupyter Widgets 7.5.1 documentation

コメント