前書き#
AnimatedDrawings は手描きの図形をアニメーション化するためのツールです。以下では、このツールのインストールと使用方法について説明します。
本文#
一、AnimatedDrawings のインストールと使用方法#
インストール手順
-
Miniconda のインストール
AnimatedDrawings をインストールする前に、Miniconda または Anaconda をインストールする必要があります。公式ウェブサイトのガイドに従ってダウンロードしてインストールできます。 -
仮想環境の作成と AnimatedDrawings のインストール
以下のコマンドをターミナルで実行します:
conda create --name animated_drawings python=3.8.13
conda activate animated_drawings
git clone https://github.com/facebookresearch/AnimatedDrawings.git
cd AnimatedDrawings
pip install -e .
使用手順
- Python インタプリタの実行
以下のコマンドをターミナルで実行します:
python
- AnimatedDrawings のインポート
Python インタプリタで以下のコマンドを実行します:
from animated_drawings import render
- アニメーションの生成
render.start('./examples/config/mvc/interactive_window_example.yaml')
その他の機能
- MP4 ビデオの生成
render.start('./examples/config/mvc/export_mp4_example.yaml')
- 透明背景の GIF のエクスポート
render.start('./examples/config/mvc/export_gif_alpha_example.yaml')
二、手描きのキャラクターをアニメーション化する方法#
キャラクターのアノテーション情報を作成する必要があります。作成手順は以下の通りです:
TorchServe を使用してアニメーションを生成するために、Docker コンテナを実行する必要があります:
git clone https://github.com/facebookresearch/AnimatedDrawings.git
cd AnimatedDrawings
cd torchserve
docker build -t docker_torchserve .
docker run -d --name docker_torchserve -p 8080:8080 -p 8081:8081 docker_torchserve
これにより、手描きの姿勢推定ファイルを生成するための Docker コンテナが起動します。
生成された姿勢推定ファイルを使用してアニメーション効果を作成する、ワンラインコマンド版:
cd ../examples && python image_to_animation.py drawings/jerry.png jerry_out
姿勢推定が正しくない場合は、python fix_annotations.py
を実行して Web インターフェースを起動し、annotations
を手動で修正し、更新後にpython annotations_to_animation.py jerry_out
を実行します。
これまでのところ、人間のオブジェクトのアニメーション作成について説明しましたが、複数のオブジェクトがある場合や、異なる背景を追加したり、巨大なモンスターを描いたりする場合はどうすればよいでしょうか?心配しないでください、プロジェクトには関連する設定ファイルがすべて用意されており、examples/config/mvc
ディレクトリにあります。設定ファイルを使用してカスタマイズできます。
三、異なるアクション効果をカスタマイズする方法#
BVH ファイルを作成する必要があります。基本的な手順は以下の通りです:
- カメラで自分が踊っている様子を録画します。
- Rokokoを使用して録画から BVH をエクスポートします(デバイスを装着してモーションをキャプチャする必要があります)。
- 新しいmotion config fileとretarget config fileを作成して、Rokoko からエクスポートされたスケルトンに適用します。
- AnimatedDrawings を使用して手描きの図形のアニメーション効果を完成させます。
プロジェクトの例での作成コマンドは以下の通りです:
from animated_drawings import render
render.start('./examples/config/mvc/rokoko_motion_example.yaml')
四、まとめ#
AnimatedDrawings は非常に面白くて便利なツールであり、まるで神筆馬良のように、絵の中の人物や動物に命を吹き込みます。
最後に#
参考記事#
免責事項#
この記事は個人的な研究学習記録として作成されました。
この記事はHBlogと同期しています。