- Kimodoはkinematic motion diffusion model の略。テキスト+運動学的な制約から3Dモーションを生成するNVIDIA製OSS(コードはApache-2.0・★3,096)
- 学習データは商用利用しやすいライセンスの光学式モーキャプ700時間。SOMA(人体)・Unitree G1(ヒューマノイド)・SMPL-Xの3骨格7モデルが公開されている
- 制御できるのはテキストだけではない。全身キーフレーム/エンドエフェクタ位置・回転/地面上の2Dパス・ウェイポイントをタイムラインで重ねられる
- ローカル生成には約17GBのVRAM。
TEXT_ENCODER_DEVICE=cpuで3GB未満まで落とせる(やや低速) - 2026-07-10に後継のリアルタイム版「ARDY」が公開済み。用途が対話的なら先にそちらを見る価値がある
NVIDIAの空間知能ラボ(nv-tlabs)が公開した Kimodo は、「歩いてから振り返って手を振る」といった自然文の指示と、地面に引いたパスや手足の目標位置といった運動学的な制約を同時に受け取って、3Dのモーションを生成する拡散モデルだ。名前は kinematic motion diffusion model の頭文字を並べたもので、コモドオオトカゲとは関係がない。
assets/teaser.gif をMP4化)旧版は Kimodo を「LiDAR+カメラの3D物体検出・トラッキング基盤」と説明していましたが、これは別物との取り違えによる誤りでした。実際の Kimodo は上記のとおりモーション生成モデルで、物体検出の機能はありません。旧版に載っていたnuScenes/TensorRT関連の記述・コード例・比較表はすべて事実に基づかないため削除し、公式README・公式ドキュメント・Hugging Faceのモデルカードで裏を取り直した内容に置き換えています。
テキスト指示からメディア成果物を作る系のOSSでは、動画の字幕生成・翻訳・吹き替えを一括で自動化する VideoLingo も同じ「素材生成を自動化する」系統にあたる。
Kimodoとは——テキストと「制約」を同時に食わせる拡散モデル
何ができるのかを一言でいえば、自然文で指示した動きを、こちらが指定した空間的な条件を守ったまま3Dモーションとして出力できる。テキストだけのモーション生成モデルは以前からあるが、Kimodoの主眼は制約の効き方にある。
・フルボディキーフレーム——特定フレームの全身関節位置を固定する
・エンドエフェクタ——手・足の位置と回転を指定する
・2Dルート——地面平面上に通過させたい経路(パス)を引く
・2Dウェイポイント——通過点だけを置き、間はモデルに任せる
これらは排他ではなく、Webデモのタイムライン上で別トラックとして重ねられる。「このパスを歩き、3秒目にこの姿勢を通り、右手はこの位置」といった条件を同時に課せる、というのが実用上のポイントだ。

assets/demo_screenshot.png)学習データは 700時間の光学式モーションキャプチャで、README は「commercially-friendly(商用利用しやすい)」と明記している。モデル構造と学習の詳細はNVIDIAが公開しているテクニカルレポート(PDF)にまとまっている。
リポジトリが提供する4点
| 提供物 | 中身 |
|---|---|
| Inference | 人体骨格・ロボット骨格それぞれでモーションを生成するコードとCLI |
| Interactive Demo | テキストと運動学制約をタイムラインで編集するWeb UI(kimodo_demo) |
| Benchmark | BONES-SEED上に構築したテストケースと評価コード(Hugging Face: nvidia/Kimodo-Motion-Gen-Benchmark) |
| Annotations | Kimodo用に作られた細粒度の時系列テキスト記述(BONES-SEEDに同梱) |
主要スペック
| 項目 | 内容 |
|---|---|
| 開発元 | NVIDIA(nv-tlabs) |
| リポジトリのライセンス | Apache-2.0 |
| モデル重みのライセンス | NVIDIA Open Model License(SMPL-X版のみ NVIDIA R&D Model License) |
| GitHub Stars | 3,096(2026-08-06時点) |
| Forks | 346(2026-08-06時点) |
| 最終コミット | 2026-07-13 |
| GitHub Releases | なし(タグ付きリリースは切られていない。更新はCHANGELOG.mdとNewsで追う) |
| 学習データ | 光学式モーキャプ700時間(Bones Rigplay 1)/公開版は288時間(BONES-SEED) |
| 対応骨格 | SOMA・Unitree G1・SMPL-X |
| VRAM | 約17GB(TEXT_ENCODER_DEVICE=cpu で3GB未満) |
| 検証済みGPU | GeForce RTX 3090・RTX 4090・NVIDIA A100 |
| 開発OS | Linux(WindowsはDocker利用が無難) |
(1本 or 複数の連結)"] --> D["Kimodo
拡散モデル"] B["運動学的な制約
全身キーフレーム / エンドエフェクタ
2Dパス / 2Dウェイポイント"] --> D C["骨格の選択
SOMA / Unitree G1 / SMPL-X"] --> D D --> E["既定: NPZ
posed_joints / 回転行列 / 接地ラベル"] D --> F["G1: MuJoCo qpos CSV"] D --> G["SMPL-X: AMASS npz"] E --> H["Web対話デモで再生・再編集"] F --> I["MuJoCoでヒューマノイド可視化"]
公開されている7つのモデル——骨格とデータセットの組み合わせ
Kimodoは単一モデルではなく、骨格 × 学習データの組み合わせで複数の重みが配布されている。ここを取り違えると出力形式ごと変わるので、最初に選ぶ必要がある。
| モデル | 骨格 | 学習データ | 公開日 | ライセンス |
|---|---|---|---|---|
| Kimodo-SOMA-RP-v1.1 | SOMA | Bones Rigplay 1(700時間) | 2026-04-10 | NVIDIA Open Model |
| Kimodo-SOMA-SEED-v1.1 | SOMA | BONES-SEED(288時間・公開データ) | 2026-04-10 | NVIDIA Open Model |
| Kimodo-SOMA-RP-v1 | SOMA | Bones Rigplay 1 | 2026-03-16 | NVIDIA Open Model |
| Kimodo-G1-RP-v1 | Unitree G1 | Bones Rigplay 1 | 2026-03-16 | NVIDIA Open Model |
| Kimodo-SOMA-SEED-v1 | SOMA | BONES-SEED | 2026-03-16 | NVIDIA Open Model |
| Kimodo-G1-SEED-v1 | Unitree G1 | BONES-SEED | 2026-03-16 | NVIDIA Open Model |
| Kimodo-SMPLX-RP-v1 | SMPL-X | Bones Rigplay 1 | 2026-03-16 | NVIDIA R&D Model |
実際にモーションを作りたいなら Bones Rigplay 1(700時間)で学習したRP系が推奨されている。SEED系は公開モーキャプ288時間のみで学習しているぶん能力は落ちるが、同じBONES-SEEDで学習した他モデルとの横比較に使えるという位置づけ。ベンチマークで数字を並べたいときだけSEED系を選ぶ、と考えればよい。
v1.1で何が変わったか:v1.1のSOMA系は主に新しいモーション生成ベンチマークとの互換のために出されたもので、加えてv1からの細かな品質改善が入っている。改善点の詳細は各モデルのHugging Faceページに記載がある。
なお、モデルはCLIやデモから生成を実行した時点で自動ダウンロードされるため、事前に手作業で落としておく必要はない。
Kimodoの使い方——インストール・CLI・Webデモ
導入と実行の入口は「対話デモ」と「CLI」の2つで、どちらも同じ重みを使う。
Webの対話デモを起動する
インストール後、次のコマンドでローカルにデモが立つ。ブラウザで http://127.0.0.1:7860 を開く(サーバー上で動かす場合はポートフォワードする)。
kimodo_demo
デモ側でできることは、複数キャラクター(SOMA・G1・SMPL-X)の切り替え、タイムラインへの複数プロンプト入力、制約トラックのキーフレーム/区間の追加と再編集、スケルトン表示とスキンメッシュ表示の切り替え、再生速度の調整、複数サンプルの生成と比較、サンプルの読み込み、そして制約と生成結果のエクスポートまで。エクスポートした制約ファイルをそのままCLIへ渡せるのが、この2つを併用する意味になる。
CLIから生成する
コマンドラインでは kimodo_gen、あるいは同等の python -m kimodo.scripts.generate を使う。
# テキストのみで生成
kimodo_gen "walks forward, then turns around and waves" \
--model Kimodo-SOMA-RP-v1.1 \
--duration 6 \
--num_samples 4 \
--seed 0
# Webデモで作った制約ファイルを効かせて生成
kimodo_gen "walks along the path and picks up an object" \
--model Kimodo-SOMA-RP-v1.1 \
--constraints my_constraints.npz \
--diffusion_steps 50 \
--cfg_type separated
主な引数は次のとおり。
・prompt(必須)——1本のテキスト、または連結して使う複数テキスト
・--model——使用するKimodoモデル
・--duration——モーションの長さ(秒)
・--num_samples——生成するバリエーション数
・--constraints——制約ファイル(Webデモから保存したものなど)
・--diffusion_steps——デノイジングのステップ数
・--cfg_type / --cfg_weight——classifier-free guidance。nocfg / regular(重み1つ)/ separated(テキスト用と制約用で重みを分ける)から選ぶ
・--no-postprocess——足の滑り(foot skate)と制約クリーンアップの後処理を無効化
・--seed——再現性のための乱数シード
--cfg_type separated は Kimodo 特有の実用ポイントだ。テキストへの追従と制約への追従に別々の重みを割り当てられるので、「文章の雰囲気は緩めでいいから、指定したパスは厳密に踏ませたい」といった調整ができる。
VRAMが足りないとき
ローカルでGPUだけで完結させると約17GBを要求する。内訳の大半はテキスト埋め込みモデルなので、そこだけCPUに逃がせば要求は一気に下がる。
TEXT_ENCODER_DEVICE=cpu kimodo_gen "runs and jumps over an obstacle" --model Kimodo-SOMA-RP-v1.1
この指定で3GB未満まで落ちる。速度は多少犠牲になるが、8GB〜12GBクラスのカードでも試せるようになる。この環境変数は2026-04-24の更新で追加されたもので、同時にマルチプロンプト生成も改善されている。
出力フォーマット——ロボット制御にそのまま流せるかどうか
生成結果の保存形式は選んだ骨格によって変わる。ここが「研究用の可視化で終わるか、下流のパイプラインに載るか」の分かれ目になる。
| 骨格 | 保存形式 | 下流での使い道 |
|---|---|---|
| SOMA(既定) | 独自NPZ | Web対話デモで再生・再編集 |
| Unitree G1 | MuJoCo qpos CSV | MuJoCoでの可視化、ヒューマノイド制御の学習データ |
| SMPL-X | AMASS形式 npz | AMASS前提の既存パイプラインへ接続 |
既定のNPZに含まれるキーは次のとおり(T=フレーム数、J=関節数)。
・posed_joints——全体座標系での関節位置 [T, J, 3]
・global_rot_mats——全体座標系の関節回転行列 [T, J, 3, 3]
・local_rot_mats——親関節相対の回転行列 [T, J, 3, 3]
・foot_contacts——接地ラベル(左かかと・左つま先・右かかと・右つま先)[T, 4]
・smooth_root_pos——モデルが出力する平滑化済みルート表現 [T, 3]
・root_positions——平滑化前の実際のルート関節(骨盤など)の軌跡 [T, 3]
・global_root_heading——モデルが出力する向き [T, 2]
foot_contacts が明示的に出る点は地味に効く。足の滑りを後処理で補正したり、物理シミュレータへ渡す前に接地判定を作り直したりする際、接地ラベルを自前で推定しなくて済む。
さらに柔軟性が要るなら、高レベルCLIを経由せず低レベルのPython推論APIを直接呼ぶ選択肢もある。マルチプロンプト列の遷移パラメータやCFG重みなど、CLIが露出していない設定に触れる。
Kimodoの更新履歴と後継モデル——導入前に確認すべき2点
Kimodoにはタグ付きのGitHub Releaseが無く、更新はCHANGELOG.mdとREADMEのNewsで追う形になっている。破壊的変更が1件あり、後継プロジェクトも出ているので、古い記事やサンプルを参考にする前に押さえておきたい。
| 日付 | 内容 |
|---|---|
| 2026-07-10 | ARDY を公開——Kimodoの制御性をそのままにリアルタイムでモーション生成するモデル |
| 2026-05-03 | 修正:ベンチマークの制約テストケースで平均メトリクスの計算が誤っていた |
| 2026-04-24 | マルチプロンプト生成を改善、TEXT_ENCODER_DEVICE=cpu で小VRAM GPUに対応 |
| 2026-04-10 | モーション生成ベンチマークと v1.1 の Kimodo-SOMA モデルを公開 |
| 2026-03-19 | 破壊的変更:モデルの入出力が SOMA 77関節骨格(somaskel77)に変更 |
| 2026-03-16 | 初回OSS公開(5モデル・CLI・対話デモ・BONES-SEED向けタイムラインアノテーション) |
入出力の骨格が
somaskel77(SOMA 77関節)へ切り替わった破壊的変更が入っている。ネット上に残る初期のスクリプトや、当時のNPZを前提にした後処理コードは、関節数・関節順の想定が合わずに壊れる。移行時はまず出力NPZの posed_joints の J を確認するのが早い。
用途が対話的なら、まずARDYを見る。 2026-07-10に公開されたARDYは「Kimodoのコントロール性をそのまま持つリアルタイム版」と位置づけられており、ゲームやインタラクティブなツールのようにレイテンシが効く用途では選択肢が変わる。逆に、オフラインで高品質なモーションを作り込む・ベンチマークを回すといった用途なら、制約の作り込みができるKimodo側が引き続き素直だ。
ライセンス——コードとモデルで条件が違う
ここは実務でいちばん事故りやすいところなので分けて書く。
| 対象 | ライセンス | 実務上の注意 |
|---|---|---|
| リポジトリのコード | Apache-2.0 | 通常のOSS利用が可能 |
| SOMA系・G1系の重み | NVIDIA Open Model License | 商用利用を想定した条件だが、NVIDIAの規約本文を要確認 |
| SMPL-X版の重み | NVIDIA R&D Model License(社内科学研究・開発用) | 他の重みと条件が異なる。同じ感覚で扱わない |
つまり「リポジトリがApache-2.0だから重みも自由」という読み方は誤りになる。使う骨格を決めた時点で、その重みのHugging Faceページのライセンス表記を必ず読む——特にSMPL-X版だけが別ライセンスである点は見落としやすい。
なお学習データ側も、Bones Rigplay 1(700時間)と BONES-SEED(288時間の公開データ)で出所が分かれている。データセットの再配布条件が絡む用途では、モデルの重みだけでなく学習データ側の条件も追う必要がある。
よくある誤解——「3D物体検出」ではない
検索でこのリポジトリにたどり着く人の一部は、名前の響きやNVIDIAという文脈から、自動運転向けの知覚(perception)スタックだと考えて開いている。実際には逆方向のタスクだ。
| 3D物体検出・トラッキング | Kimodo | |
|---|---|---|
| 入力 | LiDAR点群・カメラ画像 | テキスト+運動学的な制約 |
| 出力 | 3Dバウンディングボックス・追跡ID | 関節の軌跡(モーション) |
| 方向 | センサー観測 → 世界の理解 | 意図の記述 → 動きの生成 |
| 代表的な用途 | 自動運転の周辺認識 | キャラクターアニメーション、ヒューマノイド制御の学習データ |
KimodoにLiDAR入力もセンサーフュージョンも存在しない。同じ「3D」でも扱う問題が違うので、知覚パイプラインを探している場合は別のプロジェクトを当たることになる。
こんな人に向いている
・ヒューマノイドロボットの研究・開発者——Unitree G1骨格の出力をMuJoCoのqpos CSVで直接得られるため、モーションの目標軌道を大量に作って制御学習に流す用途に噛み合う
・キャラクターアニメーションのTA・技術検証担当——パスと手足の目標位置を指定したうえで自然文で演技を指示できるので、ラフモーションの一次生成に使える
・モーション生成モデルを評価したい研究者——BONES-SEEDで学習したSEED系モデルと同梱ベンチマークがそろっており、他手法との比較条件をそろえやすい
・逆に向かないケース——リアルタイム応答が要件なら後継のARDY、センサーからの3D知覚が目的なら本プロジェクトは対象外
参照ソース
・nv-tlabs/kimodo — GitHub リポジトリ(README・CHANGELOG・News)
・Kimodo プロジェクトページ(NVIDIA Research・Spatial Intelligence Lab)
・Kimodo 公式ドキュメント(Quick Start・インストール・CLI・API リファレンス)
・nvidia/Kimodo-Motion-Gen-Benchmark — Hugging Face データセット
・ARDY プロジェクトページ(リアルタイム版・2026-07-10 公開)