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...

関連記事

trimesh:PythonでポリゴンMeshを扱うライブラリ

3Dモデルを立体視で確認できるVRアプリを作っている

BlenderでPhotogrammetryできるアドオン

WordPressプラグインの作り方

PGGAN:段階的に解像度を上げて学習を進めるGAN

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

オープンソースの物理ベースレンダラ『Mitsuba』をMayaで使う

JavaScriptとかWebGLとかCanvasとか

画像生成AI Stable Diffusionで遊ぶ

機械学習手法『Random Forest』

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

Runway ML:クリエイターのための機械学習ツール

Unityの薄い本

PythonのHTML・XMLパーサー『BeautifulSoup』

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

Pylearn2:ディープラーニングに対応したPythonの機械学習ライブラリ

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

UnityでShaderの入力パラメータとして行列を渡す

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

ブラウザ操作自動化ツール『Selenium』を試す

OpenCVで顔のランドマークを検出する『Facemark API』

OpenCVの顔検出過程を可視化した動画

LLM Visualization:大規模言語モデルの可視化

OpenMVS:Multi-View Stereoによる3次元復元ライブラリ

書籍『伝わる イラスト思考』読了

Unityで強化学習できる『Unity ML-Agents』

Model View Controller

C++の抽象クラス

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

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

iOSデバイスと接続して連携するガジェットの開発方法

MVStudio:オープンソースのPhotogrammetryツール

書籍『ROSプログラミング』

OpenCVでiPhone6sのカメラをキャリブレーションする

Boost オープンソースライブラリ

fSpy:1枚の写真からカメラパラメーターを割り出すツール

FCN (Fully Convolutional Network):ディープラーニングによるSema...

Pythonの自然言語処理ライブラリ『NLTK(Natural Language Toolkit)』

Pythonのソースコードに特化した検索エンジン『Nullege』

Verilog HDL

Mitsuba 3:オープンソースの研究向けレンダラ

Unity Scriptコーディング→Unreal Engine Scriptコーディング

コメント