サブミリメートルのアンカーと書道の問い
たいていのARは数センチのドリフトを許容する。書道の家庭教師は何も許容しない。RakuAIは、ARがデモであることをやめ、教師になり始める、その精度のために作られている。
この土曜の朝、頭の中にはあるパートナーとの会話がまだ新しく残っていて、それと一緒に少し怖くなるような精度目標があった。NTT QONOQは日本で本格的な文化系ARの取り組みを進めており、彼らがこのエンジンに支えてほしいと望む書道のユースケースには容赦のない仕様がある。練習紙に重ねられる仮想の運筆ガイドは、毎フレーム、瞬き一つごとに、同じ紙のまったく同じ場所に着地しなければならない。
たいていのAR体験は精度に対して寛容だ。仮想のロボットが床のどこかに立っていて、目をそらしてまた戻したときに3センチずれていても、気づかないかもしれない。ロボットはロボットだ。ロボットはうろつくものだ。
書道の家庭教師は寛容ではない。3センチのドリフトは使い物にならない製品だ。3ミリのドリフトはイライラする製品だ。基準はサブミリメートルだ。この週末、ランタイムはそれをクリアし始めた。
何が着地したか
5つのAPIと、1つのパートナーシップへの言及。
- 高精度なARコンテンツの位置合わせのためのサブミリメートルのアンカーポーズAPI
- マーカーベースの紙のキャリブレーションのための紙CV検出API
- リアルタイムのペンおよび筆トラッキングのための運筆パスCV解析
- 音声レイテンシのイベントタイムスタンプとリアルタイム指標
- アニメ寄りのデモ向けのアニメーションレイテンシトラッキング
- READMEにおけるNTT QONOQとの研究への言及
週末全体で70コミット。エンジニアリング作業のほとんどは最初の3つに集中していた。
なぜ「サブミリメートル」が正しい数字なのか
サブミリメートルという要求はマーケティングの演習から出てきたものではない。ユースケースから出てきたものだ。ユーザーは書道の筆を練習紙の上に構える。ランタイムは筆を見て、紙を見て、部屋を見る。ユーザーが次に書くべき運筆を、紙の上にかすかな光として重ねる。ユーザーはその光をなぞる。
その光が紙から少しでもずれていれば、体験全体が崩壊する。なぜならユーザーの目は、物理的な筆先ではなく光のほうに固定されてしまい、実際の運筆はそのずれた光に従ってしまうからだ。オーバーレイのドリフトは、練習される運筆のドリフトを生む。製品は消え失せる。
だから基準は「サブミリメートルはすごい」ではない。基準は「このユースケースにとってサブミリメートルだけが唯一許容できる失敗ケースだ」というものだ。それを超えれば製品は壊れる。
サブミリメートルのアンカーはどう動くか
その仕組みを単純化すると、紙自体がアンカーになる。練習紙に印刷されたレジストレーションマーカーが毎フレーム検出される。ランタイムは、ユーザーの視界に対する紙のポーズを6DoFで計算する。オーバーレイは部屋座標ではなく紙座標でレンダリングされる。ユーザーの頭が動くと、演算は逆方向に走る。紙のポーズが更新され、オーバーレイが再投影され、光は次の運筆が行くべき場所に着地する。
これは「仮想オブジェクトを部屋にアンカーし、部屋の再構成を信用する」という標準的な設計とは異なる。部屋の再構成は家具スケールの精度には十分だが、紙スケールの精度には不十分だ。なぜなら部屋の再構成の誤差がユーザーの頭部ポーズの誤差と積み重なるからだ。既知の物理オブジェクト(紙)に直接アンカーし、そのオブジェクトに対してオーバーレイを登録することで、誤差の連鎖を崩壊させる。
そのコストは、紙が既知の物理オブジェクトでなければならないということだ。これは今週末、マーカーベースの紙CV検出APIで解決した。マーカーは小さく、目立たず、このデモが同梱するすべての練習用紙に印刷されている。ランタイムはフレームあたりおよそ2ミリ秒でマーカーを検出し、通常の照明下で安定してトラッキングする。
成果は、私たちがこれをARグラスの持つコンピュート予算の範囲内で、リアルタイムに、毎フレーム、通常使用下でオーバーレイのドリフトを1ミリ未満に抑えてやり遂げているということだ。
NTT QONOQへの言及
今週末、READMEにNTT QONOQへの言及を追加した。私たちが活発な研究上の会話をしているからだ。日本のNTT QONOQは、現実世界のARと、AR体験が物理的な人工物にどうアンカーされるかという問いについて、本格的な取り組みを進めてきた。書道のユースケースは、日本の空間コンピューティングコミュニティが押し進めてきた文化系ARの取り組みの方向性と一致する。
これはパートナーシップの発表ではない。パートナーシップの会話が起きていること、そしてこの週末のエンジニアリングがそれをうまく支えるために何が必要かを反映していることのメモだ。「東京の書道教室でこれができるか」という製品上の問いは、「どこかでこれができるか」という問いよりも具体的だ。具体的な問いはより良いエンジニアリングを生む。
運筆パスCV:より難しいほう
サブミリメートルのアンカーがこの週末の目玉だ。だが実際に最も難しかったエンジニアリングの部分は運筆パスCVだった。
ARグラス上でリアルタイムにペンや筆をトラッキングするのは、解決済みの問題ではない。先端は小さく、しばしばユーザーの手で部分的に隠れ、可変の速度で動く。この週末に書かれたCVパイプラインは、紙に対する先端の位置をトラッキングし、先端が接触している(浮いているのではなく)タイミングを推論し、タイムスタンプ付きの点のストリームとして運筆パスを発行する。手による遮蔽からの復帰が最も時間を食った部分だった。テストのトレースが点を取りこぼさなくなるまで、私とエージェントは復帰ロジックの3つのバージョンを検討した。
これは、AIがランタイムのプリミティブとして重要になり始める種類のエンジニアリングだ。CVパイプラインはすべてのフレームを受け取る。デバイス上の小さなモデルが、現在のフレームが接触フレームか浮遊フレームかを判断する。そのモデルの判断が運筆パスの発行器に供給される。そのモデルはチャットボットではない。シミュレーションステップの中で実行されるランタイムの要素だ。
そのアーキテクチャ上のパターンは、このエンジンの中で繰り返し登場するようになっている。AIは追加する機能ではない。AIは、ユーザーが何をしていようとも、センサーとレンダラーの間で毎フレーム起きていることだ。
パートナーとビルダーにこれから読み取ってほしいこと
もしあなたがNTT QONOQ、あるいは現実の環境における精密なARオーバーレイについて考えている他のパートナーなら、この書道家庭教師の取り組みは、このエンジンが目指す種類の精度を示す具体的なデモだ。このフレームワークは汎用的だ。特に書道のツールというわけではない。サブミリメートルのアンカーと運筆パスCVパイプラインであり、そのどちらも書道とはまったく異なって見える多くのものに応用できる。
もしあなたが手やペンのセグメンテーションを得意とする小さなモデルを持つAIラボなら、これはこのエンジン上でシミュレーションステップの中に住む種類のモデルだ。レイテンシ予算はタイトだ。品質基準は高い。あなたのモデルが収まるなら、このエンジンにはそのための場所がある。
70コミット。1つのデモターゲット。1つの加速するパートナーシップの会話。何にも代えがたい種類の土曜日だった。
精度はパートナーシップの物語だ
あなたの製品が、位置をサブミリメートルまで保つARオーバーレイを必要とするなら — 文化系AR、トレーニング、精密ガイダンス — RakuAIはその基準のために作られたランタイムだ。あなたのユースケースが何を必要としているか、話をしよう。