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の日本語のチュートリアル動画シリーズが始まった↓


関連記事

Math.NET Numerics:Unityで使える数値計...

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

スクラッチで既存のキャラクターを立体化したい

OpenGVのライブラリ構成

OpenVDB:3Dボリュームデータ処理ライブラリ

機械学習で遊ぶ

Javaで作られたオープンソースの3DCGレンダラ『Sunf...

Mayaのプラグイン開発

Russian3DScannerのトポロジー転送ツール『Wr...

Mean Stack開発の最初の一歩

Faster R-CNN:ディープラーニングによる一般物体検...

OpenGV:画像からカメラの3次元位置・姿勢を推定するライ...

Deep Fluids:流体シミュレーションをディープラーニ...

Immersive Math:線形代数をインタラクティブに学...

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

WebGL開発に関する情報が充実してきている

動的なメモリの扱い

SONY製のニューラルネットワークライブラリ『NNabla』

konashiのサンプルコードを動かしてみた

WordPress on Google App Engine...

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

Blender 2.8がついに正式リリース!

Polyscope:3Dデータ操作用GUIライブラリ

OpenCVでカメラ画像から自己位置認識 (Visual O...

OpenCV 3.1とopencv_contribモジュール...

機械学習手法『Random Forest』

SVM (Support Vector Machine)

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

Mask R-CNN:ディープラーニングによる一般物体検出・...

3分の動画でプログラミングを学習できるサイト『ドットインスト...

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

Gource:バージョン管理の履歴を可視化するツール

Google XML Sitemap Generatorプラ...

書籍『データビジュアライゼーションのデザインパターン20』読...

VCG Library:C++のポリゴン操作ライブラリ

法線マップを用意してCanvas上でShadingするサンプ...

書籍『OpenCV 3 プログラミングブック』を購入

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

サンプルコードにも間違いはある?

AndroidもopenGLも初心者さ (でもJavaは知っ...

PyDataTokyo主催のDeep Learning勉強会

ブログのデザイン変えました

コメント