プロンプトから人型キャラクターの3D動作を生成できるHY-Motion 1.0というモデルがTencentからでました。
以前に、VRoid Studioで3Dキャラモデルを作ってみたことがあって、それを使って何か面白いことが出来ないかと思い使ってみたのでその方法を解説します。
HY-Motion 1.0とは
TencentがリリースしたText-to-Motionモデル。
生成されたモーションデータは人型キャラクターのボーンに対応しており、そのままBlenderやUnity、Unreal Engineなどにインポートして再生させることも可能です。
ComfyUIでの実行
ComfyUI-HY-Motion1カスタムノードを使用して実行しました。
このカスタムノードのGithubにサンプルのworkflowもありますので今回はそれを使用してみます。
URL:https://github.com/jtydhr88/ComfyUI-HY-Motion1/blob/master/workflows/workflow-glb.json
このworkflowを実行したところ以下のエラーが発生しました。

そういえばまだモデルを入れていなかったので、それが原因でした。
GithubのREADMEにHugging Faceへのリンクと、どういったフォルダ構成で配置すればいいかがあったので、その通りにセッティングしたらこのエラーは解消しました。
次に、以下のようなエラーが発生しました。

“Using bitsandbytes 8-bit quantization requires the latest version of bitsandbytes: pip install -U bitsandbytes“
メッセージ通りにモジュールを入れる手もありましたが、以下の”HY-Motion Load LLM”ノードの”quantization”のパラメータをnoneにすればエラーはでなかったのでこの方法で行くことにしました。

これで先ほどのエラーはでなくなりましたが、今度は以下のエラーが発生しました。

“Allocation on device”
“This error means you ran out of memory on your GPU.”
“TIP: If the workflow worked before you might have accidentally set the batch_size to a large number.”
OOMになったということなので、ColabでGPUの設定をL4 GPUからA100 GPUに変更しました。

これでOOMは解消されましたが、次は以下のエラーが発生しました。

これは結局、avというモジュールが入ってなかったことが根本の原因でした。
このモジュールを入れた後、さらにモジュールが足りないという以下のエラーが発生しました。

これらのモジュールが必要ということで、Colab上で以下を実行しました。
| !python -m pip install av !python -m pip install torchdiffeq |
これで、やっとエラーなく実行することができました。

まとめ
HY-Motion 1.0を使用してテキストから3Dキャラ用のモーションデータを生成することができました。
以前にVRoid Studioでモデルを作ってみたことがあるので、今度そのモデルに生成したモーションデータを使ってみたいと思います。
3Dモデルに関連した他の記事
生成した3Dモデルを3Dプリンタで出力するなら…

Trellisで別視点の複数枚画像から生成する方法



コメント