深度推定:平面の動画が隠す軸
動画は平面なので、カメラにまっすぐ近づく・遠ざかる動きは、画面上の動きとしてはほとんど現れません。ファンスクリプトのための深度推定はその穴を埋めます。AutoScript Sync はあなたの PC 上で MiDaS モデルを動かし、フレームの各部分がどれだけ近いかを推定し、動いている領域でそれがどう変化するかを追います。その結果は、位置信号の候補がもう 1 つ増えるということです。深度はオプションで、スクリプトはあくまでオプティカルフローを土台に作られます。
2026 年 9 月 21 日にアプリのコードと照合済み。
深度が重要な理由
オプティカルフローは、ものが画面上をどう動くか(上下左右)を測定します。POV 映像のようにストロークがカメラの視線に沿って動く場合、動く物体は画面を横切るのではなく、主に大きくなったり小さくなったりします。フローにはそれがほとんど見えません。深度モデルは同じフレームを近い・遠いとして読むので、その軸に沿ったストロークは深度の変化として現れます。
使われる MiDaS モデル
AutoScript Sync は ONNX 形式の MiDaS v2.1 深度モデルを使います。得られるのは相対的な深度、つまり 1 枚の画像の中でどちらが近くどちらが遠いかで、センチメートル単位の距離ではありません。
| モデル | サイズ | 使用条件 |
|---|---|---|
| MiDaS small | 約 64 MB | Fast と Balanced、および CPU ではすべての段階。既定でダウンロードされるモデル。 |
| MiDaS large | ~397 MB | High で、CUDA GPU のみ、ダウンロード済みの場合。GPU を推奨します。 |
この選択は Auto-pick model tier from Accuracy(既定でオン)によって行われ、インストール済みのモデルしか選べません。エンジンは指定された相対深度の ONNX モデルならどれでも受け付けますが、アプリがダウンロードを提供しているのは MiDaS だけです。
深度が信号になるまで
深度は、サンプリングしたフレームの 2 枚に 1 枚について、幅 320 px の解析用画像で推論され、追跡領域の中で実際に動いているピクセルについて平均されます。その結果は、領域の中心や姿勢のキーポイントと並んで、位置の軌跡のアンカー候補になります。深度モデルが 1 フレームに 3 秒以上かかる場合、1 つの遅いモデルで処理全体が止まらないよう、エンジンはその実行の残りの間は深度をオフにします。
深度スケールはフレームごとではなく動画ごとに 1 つ
深度モデルの出力には決まった単位がなく、フレームごとに独自のスケールで返ってきます。フレームごとに個別に正規化すると、スケールそのものがフレームごとにずれ、そのずれが動きのように見えてしまいます。そこで AutoScript Sync は、深度の読み取り値の頑健なパーセンタイルから動画全体に 1 つのスケールを設定します。こうすれば、数値の変化はシーンの変化を意味します。
| 指標 | フレームごとにスケーリング | 動画ごとにスケーリング |
|---|---|---|
| 深度変化のフレーム間相関 | 0.594 | 0.963 |
| 誤った方向反転が起きたステップ | 42% | 2% |
これはモデルの生の出力に対する限定的な技術的測定で、開発者が 2026 年 9 月 10 日に行ったものです。動画ごとのスケーリングで深度信号の自己矛盾がなくなることを示していますが、完成したスクリプトの精度を測ったものではありません。
深度に影響する設定
ストローク設定には、名前に Depth を含むスライダーが 2 つあります。解析を変えるのは Depth priority だけです。Depth emphasis はデバイスに送る途中でストロークの長さを整えるもので、MiDaS モデルは関係しません。どちらも深度モデルをオン・オフするものではなく、それは深度モデルがインストールされ選ばれているかどうかで決まります。
- Depth priority
- 30〜90、既定値 85。位置の軌跡のどれだけを、深度がその候補の 1 つである位置アンカーではなく、測定した速度から得るかを決めます。値が高いほど、アンカーの重みは小さくなります。アプリのツールチップでは、速度はストロークの大きさを担い、アンカーはずれを止めるが深さを平らにする、と説明しており、スクリプトがせわしない、または深すぎると感じたら 45〜65 に下げることを勧めています。解析を変える設定なので、再生成が必要です。
- Depth emphasis
- 100%〜200%、既定値 100%(中立)。深いストロークほど比例して長く動きます。デバイスに送るコピーを整えるものなので、変更したらスクリプトを再送してください。保存したファイルは変更されません。リリース済みのアプリでは、このデバイス向けの調整は Autoblow AI Ultra へのアップロードに適用されます。Intiface のデバイスへの適用と、Export Script (as played) への反映は、次回のアップデートで行われます。
深度の処理コスト
深度は、NVIDIA GPU があれば CUDA を通じてその上で、なければ CPU で動作します。アプリは実際にどちらを使っているかを表示します。RTX 5080 のテスト用 PC で書かれたコードのコメントによると、MiDaS small は 1 回あたり GPU で約 25.8 ms、CPU で 234 ms です。サンプリングしたフレームの全部ではなく 2 枚に 1 枚で実行するので、その処理量は半分になります。GPU では、深度モデルの CUDA メモリプールは 4 GB に制限されています。
解析全体のうち深度がどれだけの割合を占めるかは公表していません。現時点の見積もりを裏付ける測定表がないためです。測定済みの内容はベンチマークのページに載っています。
制限
- 絶対値ではなく相対値。MiDaS がわかるのは近いか遠いかで、どれだけ離れているかではありません。ストロークの大きさは、深度だけでなく、統合した軌跡から決まります。
- 動いている領域全体の平均。深度は追跡領域の中の動いているすべてのピクセルについて平均されるので、その中のほかの動きもストロークと一緒に平均されます。Set Motion Region… や Live Track で自分で領域を描けば、範囲を絞れます。
- 重いほど良いとは実証されていない。MiDaS small と MiDaS large のストローク精度の比較は記録されていません。
- ストロークの大きさは依然として弱点。開発者が手作業でスクリプトを作ったテストクリップと比べると、最も速い 2 本の動画でのエンジンのストロークは、人間のものの 4 分の 1 と 2 分の 1 の大きさでした。絶対単位での深度誤差の測定結果は、コミットされたものがありません。
よくある質問
深度モデルは必要ですか?
いいえ。なければエンジンはオプティカルフロー、領域の中心、そしてインストールされていれば姿勢推定で動作します。自動ダウンロードをオフにしない限り、MiDaS small は自動でダウンロードされます。
MiDaS large は入手すべきですか?
NVIDIA GPU で High を使う場合だけです。CPU やほかの段階では使われません。MiDaS small より良いスクリプトになるかどうかは測定していません。
スクリプトが深すぎる、またはせわしなく感じます。深度のせいですか?
速度とアンカーのバランスが原因かもしれません。Depth priority を 45〜65 にして再生成してみてください。単にデバイス上でストロークが長すぎると感じる場合、Depth emphasis は 100% が中立です。
深度推定は VR 動画でも使えますか?
VR 映像は、まず片目分の通常の透視投影の映像に補正され、深度はほかの映像と同じようにその映像に対して実行されます。レイアウトの判定は、数枚のサンプリングしたフレームに基づく経験的なものです。
次に読む
- AI ファンスクリプト生成のしくみデコードからデバイスまでのパイプライン全体。
- オプティカルフローが動きを読み取るしくみ深度と比較される速度信号。
- AutoScript Sync の姿勢推定もう 1 つのオプションのモデルであり、アンカー候補。
- AI の各部分の役割製品から見たモデルの役割と、アプリが編集から学習するしくみ。