以前、畳み込みニューラルネットワークの仕組みを可視化した例を探した時に、数学をアニメーションで視覚的に解説する3Blue1BrownというYouTubeチャンネルを知った。

そのYouTubeチャンネルの動画作りに使われているアニメーションエンジンがPythonのライブラリとして公開されている↓
Manim: Mathematical Animation Engine
Manimは、正確なプログラマティックアニメーションのためのエンジンであり、数学の解説ビデオを作成するために設計されています。
Manimには2つのバージョンがあることに注意してください。 このリポジトリは、3Blue1Brownの作者がアニメーション動画作成のために始めた個人プロジェクトで、動画固有のコードはこちらから入手できます。
このリポジトリを2020年に開発者グループがフォークし、現在のコミュニティエディションとなりました。こちらはより安定し、より適切にテストされ、コミュニティの貢献に迅速に対応し、より親しみやすく始められることを目標としています。詳細はこちらのページを参照してください。
ということで、こちらがコミュニティエディション↓
Manim Community
Manimは数学の解説ビデオ作成用のアニメーションエンジンです。 3Blue1Brownの動画のような正確なアニメーションをプログラムで作成することができます。
注意:このリポジトリはManimCommunityによって管理されており、Grant Sandersonや3Blue1Brownとは一切関係ありません(ただし、このworkを世界に提供してくれた彼には間違いなく感謝しています)。 Grantがどのようにビデオを作成しているかを調べたい場合は、彼のリポジトリ (3b1b/manim)にアクセスしてください。このフォーク版はGrantのリポジトリよりも頻繁に更新されます。自分のプロジェクトでManimを使用する場合はこのフォーク版の使用をお勧めします。
ManimCEとか呼ばれたりもしてるみたい。
Example Galleryを見るとコードと可視化例が一望できて良いですね。
ちなみに、東京大学の学生有志団体が3Blue1Brownを日本語訳した3Blue1BrownJapanを公開している↓
2023年2月 追記:Manim Communityを利用して機械学習の概念を視覚的に説明するためのライブラリも登場↓

2025年7月 追記:Manim Communityの日本語のチュートリアル動画シリーズが始まった↓
関連記事
『手を動かしながら学ぶエンジニアのためのデータサイエンス』ハ...
PyMC:Pythonのベイズ統計ライブラリ
書籍『データビジュアライゼーションのデザインパターン20』読...
SONY製のニューラルネットワークライブラリ『NNabla』
uvでWindows11のPython環境を管理する
Perfumeのライブパフォーマンスのビジュアル
OpenCVで平均顔を作るチュートリアル
OpenMVS:Multi-View Stereoによる3次...
Python for Unity:UnityEditorでP...
Google製オープンソース機械学習ライブラリ『Tensor...
2D→3D復元技術で使われる用語まとめ
ROSでガンダムを動かす
Caffe:読みやすくて高速なディープラーニングのフレームワ...
Google App Engineのデプロイ失敗
書籍『ROSプログラミング』
AfterEffectsプラグイン開発
CNN Explainer:畳み込みニューラルネットワーク可...
BlenderProc:Blenderで機械学習用の画像デー...
OpenCVでPhotoshopのプラグイン開発
Gource:バージョン管理の履歴を可視化するツール
科学技術計算向けスクリプト言語『Julia』
Raspberry Pi 2を買いました
3分の動画でプログラミングを学習できるサイト『ドットインスト...
ブログのデザイン変えました
OpenSfM:PythonのStructure from ...
SDカードサイズのコンピューター『Intel Edison』
UnityでLight Shaftを表現する
UnityのGameObjectの向きをScriptで制御す...
C++始めようと思うんだ
FCN (Fully Convolutional Netwo...
ZBrushのZScript入門
OpenCVの三角測量関数『cv::triangulatep...
OpenCV 3.1から追加されたSfMモジュール
Windows10でPyTorchをインストールしてVSCo...
AndroidもopenGLも初心者さ (でもJavaは知っ...
PyDataTokyo主催のDeep Learning勉強会
Unityの各コンポーネント間でのやり取り
UnityでShaderの入力パラメータとして行列を渡す
OpenCVでカメラ画像から自己位置認識 (Visual O...
Kubric:機械学習用アノテーション付き動画生成パイプライ...
C++ 標準テンプレートライブラリ (STL)
Google Colaboratoryで遊ぶ準備



コメント