Manim:Pythonで使える数学アニメーションライブラリ

以前、畳み込みニューラルネットワークの仕組みを可視化した例を探した時に、数学をアニメーションで視覚的に解説する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を利用して機械学習の概念を視覚的に説明するためのライブラリも登場↓
ManimML:機械学習の概念を視覚的に説明するためのライブラリ
数学の概念をアニメーションで視覚的に説明するためのManim, Manim Community Library↓に加えて、機械学習の概念をアニメーションで説明するためのプロジェクト↓ManimMLManimMLは、Manim Communi...

2025年7月 追記:Manim Communityの日本語のチュートリアル動画シリーズが始まった↓


関連記事

MeshLab:3Dオブジェクトの確認・変換に便利なフリーウ...

クラスの基本

Unreal Engine 5の情報が公開された!

SVM (Support Vector Machine)

Google製オープンソース機械学習ライブラリ『Tensor...

UnityのTransformクラスについて調べてみた

Raspberry Piでセンサーの常時稼働を検討する

Dlib:C++の機械学習ライブラリ

libigl:軽量なジオメトリ処理ライブラリ

第1回 3D勉強会@関東『SLAMチュートリアル大会』

PyMC:Pythonのベイズ統計ライブラリ

PythonのHTML・XMLパーサー『BeautifulS...

オープンソースのIT資産・ライセンス管理システム『Snipe...

オープンソースのネットワーク可視化ソフトウェアプラットフォー...

WordPress on Windows Azure

GAN (Generative Adversarial Ne...

TensorFlowでCGを微分できる『TensorFlow...

3Dグラフィックスの入門書

OANDAのfxTrade API

WordPress on Google App Engine...

Math Inspector:科学計算向けビジュアルプログラ...

Swark:コードからアーキテクチャ図を作成できるVSCod...

UnrealCV:コンピュータビジョン研究のためのUnrea...

WinSCP

Verilog HDL

NumSharp:C#で使えるNumPyライクな数値計算ライ...

C++の抽象クラス

Twitter APIのPythonラッパー『python-...

ArUco:OpenCVベースのコンパクトなARライブラリ

PythonでBlenderのAdd-on開発

ブログをGoogle App EngineからAmazon ...

プログラムによる景観の自動生成

Unityの薄い本

Mitsuba 2:オープンソースの物理ベースレンダラ

畳み込みニューラルネットワーク (CNN: Convolut...

2D→3D復元技術で使われる用語まとめ

Web経由でRaspberry PiのGPIOを操作したい

ManimML:機械学習の概念を視覚的に説明するためのライブ...

MVStudio:オープンソースのPhotogrammetr...

定数

MB-Lab:Blenderの人体モデリングアドオン

Pythonの自然言語処理ライブラリ『NLTK(Natura...

コメント