MRにおける自我ポーズ推定

May 08 2022
第2章:複合現実における自我ポーズ推定
私のシリーズ「HowtoMR」の第2章へようこそ。ここでは、複合現実(MR)における重要なエンジニアリングと研究の問題について話します。第1章では、MRにおけるアライメントの問題について説明しました。

私のシリーズ「HowtoMR」の第2章へようこそ。ここでは、複合現実(MR)における重要なエンジニアリングと研究の問題について話します。第1章、MRでのアライメントの問題について説明しました。問題は、実世界のオブジェクトの3Dポーズを正確に推定することです。これは、メンテナンスやトレーニングのためにCADモデルを精密工学機器に重ね合わせるなど、現在のMRの多くのアプリケーションのバックボーンを形成します。この章では、自我ポーズ推定の問題について説明します。ラテン語の「自我」は「自己」を意味します。自我ポーズ推定は、世界座標系に対するMRヘッドセットのポーズを正確に推定するタスクです。これは、仮想オブジェクトが実際のサーフェス/アンカーに正確かつ永続的にレンダリングされるようにするために絶対に重要です。この記事では、エゴポーズ推定のタスクと、それを実現するためにオブジェクトトラッキングを使用する方法について正式に説明します。また、この分野における課題と研究の現在の傾向についても説明します。

図1:時刻tでのポーズ(p_t)の図は、2D空間の例です。

自我ポーズ推定は、同時ローカリゼーションおよびマッピング(SLAM)のパラダイムで最も一般的に扱われます。SLAMの詳細なチュートリアルについては、この講義シリーズを参照してください。このセクションでは、簡単な2Dの例を使用して問題を解決するための基本的な方法論について説明します。

まず、ポーズのコンセプトを紹介します。図1は、2D座標系でのMRヘッドセットの上面図を示しています。ヘッドセットのポーズは、その空間位置座標と座標軸に対する向きで構成されます。上記の2Dの例では、ポーズは2つの位置の座標xy 、およびx軸に対して測定された方向θを示す1つの角度で構成されています。下付き文字tは時間を示します。

エゴポーズ推定のタスクは、ヘッドセットが空間を移動するときに、グローバル座標フレーム内の特定の時間tでポーズpを正確に推定することです。

オドメトリ

ヘッドセットの現在のポーズを推定する1つの方法は、ヘッドセットの開始から現在までの動きを追跡することです。ヘッドセットの初期ポーズがわかっている場合は、各タイムステップでの動きを累積して、現在のポーズを計算できます。オドメトリは、これらの動きを測定するタスクを扱います。MRヘッドセットには通常、位置と向きが時間の経過とともにどのように変化するかを追跡するための慣性測定ユニット(IMU)が装備されています。IMUの出力は、ヘッドセットの基準フレームである自己中心座標フレームの線形および角速度です。ほとんどのIMU(HoloLens-2など)は、これらの推定を行うために使用される3つのコンポーネント(加速度計、ジャイロスコープ、磁力計)で構成されています。

  • 加速度計は、自己中心座標系の空間軸に沿った線形加速度を測定します。
  • ジャイロスコープは角加速度を測定し、それを統合して方向の推定値を維持します。
  • 磁力計は、地球の磁場の双極子モーメントの測定に基づいた方向の推定も提供します。

グローバル座標系またはグローバル参照フレームとも呼ばれるワールド座標系は、環境に対して固定されたままで、ヘッドセットと一緒に移動しない参照フレームです。自己中心座標系(図2で青色でマークされている)は、ヘッドセットに取り付けられている参照フレームを指します。通常、自己中心座標を世界座標に変換するための線形変換(平行移動と回転)が存在します。ヘッドセットが空間を移動すると、この変換も変化します。エゴポーズ推定のタスクは、この変換が時間の経過とともにどのように変化するかを追跡することです。

図2は、グローバルおよびエゴセントリック座標系でpで示される特定のベクトルの座標がどのように関連しているかを示しています。上付き文字「 h 」を使用して、自己中心座標を参照します。また、単位ベクトルを表すために「ハット」を使用します。

図2:グローバルリファレンスフレームとヘッドセットのリファレンスフレームの関係は、平行移動と回転で構成される単純な線形変換によって記述できます。

エゴセントリック座標系で点の座標が(x ^ h、y ^ h)('^'は方程式と図で上付き文字を表す)である場合、そのグローバル座標は次の関係で与えられます(上記の式のRHSをマトリックスの形式で再配置します):

図3:ワールド座標とヘッドセットの座標間の変換は、単純な行列乗算で表すことができます。

オドメトリを使用したローカリゼーション

すべてのMRアプリケーションは、グローバル座標フレームを定義することから始まります。Microsoft HoloLensでは、この座標系の原点は、ユーザーがMRアプリケーションを起動するヘッドセットのポーズに割り当てられます。

図4:オドメトリを使用した単純なローカリゼーション。ヘッドセットは、測定された動きを現在のタイムステップでのポーズ推定に追加して、次のタイムステップのポーズ推定を取得します。

X (t)を時間tでのヘッドセットのグローバル座標とします。その場合、時間t+1でのヘッドセットのグローバル座標は次のようになります。

θ_tが時間tでのヘッドセットのグローバル方向である場合、時間t+1でのヘッドセットのグローバル方向は次のようになります。

ここで、ωは時間tにおける自我中心座標フレームの角速度を示します。

オドメトリノイズの影響

オドメトリは、IMUのセンサーの精度に大きく依存しています。ただし、これらのセンサーはノイズの多い信号を生成することがよくあります。最後の2つの式で見たように、時間t + 1でのポーズは、時間ステップtt+1の間でIMUによって記録された変化を時間tでのポーズに加算することによって計算されます。これにより、時間の経過とともにノイズが増加します。これにより、推定されたポーズが時間の経過とともに正しいポーズから「ドリフト」します。これには、ポーズの推定値を時々修正するメカニズムが必要です。SLAMでは、これは静止オブジェクト(ランドマーク)を追跡することによって行われます。

ランドマークのマッピング

Mixed Realityシステムには、オブジェクトを検出し、ヘッドセットの基準フレーム内のオブジェクトの座標を推定するためのカメラとソフトウェアが付属しています。ヘッドセットの現在の推定値(ローカリゼーションによって取得)を使用して、それらのグローバル座標を計算し、環境のマップに配置できます。次の図は、プロセスを説明しています。

図5:ヘッドセットの視野内のオブジェクトのマッピング。

オブジェクトのポーズは、ヘッドセットの推定ポーズを基準にして計算されていることに注意してください。また、静的オブジェクトのグローバル座標は変更しないでおく必要があることに注意してください。正確なオドメトリがある場合、上記の式を使用して計算されたX_objectは、ヘッドセットがオブジェクトをどのポーズから見ても一定のままである必要があります。ただし、ヘッドセットの推定ポーズが時間の経過とともに正しいポーズからずれると、X_objectも変化します(下の図を参照)。

図6:オドメトリエラーによる異なるヘッドセット位置からの静的な世界のオブジェクトの推定位置の不一致。測定された不一致は、ヘッドセットのオドメトリエラーを修正して、より正確な位置特定を行うために使用されます。詳細については、テキストを参照してください。

ローカリゼーションの次のステップは、この欠点をチャンスに変えるだけです。静的オブジェクトのグローバル座標は一定でなければならないことがわかっているので、X_objectを初期値に戻す変換関数を見つけることができます。同じ変換機能を使用して、ヘッドセットの推定ポーズを修正できます。

ランドマークを追跡してローカリゼーションを修正する

補正変換は線形であると見なすことができ、x軸とy軸に沿った回転角( θ)と平行移動(t_x、t_y )の3つの未知数(2D)で構成されます。3Dには、6つの未知数があります。x、y、z軸に沿った平行移動と、x、y、z軸を中心とした回転(それぞれヨー、ピッチ、ロールとも呼ばれます)。この説明では、簡単にするために2Dスペースに固執します。同じ方法が3Dにも適用されます。変換行列Tは次のように作成できます。

N個のオブジェクトを追跡する場合(2Dと3Dにはそれぞれ3個と6個の未知数があるため、2DではN> = 3、3DではN> = 6)、次の連立方程式を解いて未知数を取得できます。

図7:静的な世界のオブジェクトを追跡することによる正確な位置特定のためのオドメトリエラーの修正。

この連立方程式は、最小二乗平均の目的を使用して解くことができます。この変換を推測したら、推定されたヘッドセットポーズに同じものを適用して、ヘッドセットのローカリゼーションを修正できます。

実際の実装に関する注意

エクステンデットリアリティデバイスには、3DoFまたは6DoFのポーズ追跡[リファレンス]が付属しています。「DoF」は「自由度」の略です。

  • 3DoFシステムは、x、y、およびz軸の回転運動のみを追跡します。したがって、ヘッドセットポーズは3つの角度で構成されます。3DoFトラッキングを使用すると、左/右、上/下を見て、頭を左右に傾けることができます。ユーザーのすべての翻訳は無視されます。3DoFトラッキングは通常、Google Cardboard(電話を使用)やOculusGoなどの低コストのバーチャルリアリティ製品で見られます。これらのデバイスでの自我ポーズ推定は、ほとんどの場合、純粋にオドメトリに依存しています。
  • 6DoFは6自由度の略です。x、y、z軸に沿った回転と変換の両方を追跡して応答することにより(コンテンツ/アプリケーションで許可されている場合)、MRでより没入感のあるエクスペリエンスを提供します。ユーザーは、前後に歩いたり、左右にシャッフルしたり、しゃがんだり、立ち上がったりすることができます。6DoFトラッキングは通常、強力なVRプラットフォームで見られます。これらのシステムは、前のセクションで説明したのと同じ原理を使用して、正確なポーズ推定のためにオドメトリとともにランドマーク追跡を活用します。

ランドマーク追跡に関する簡単なメモ

前のセクションで見たように、ランドマークの追跡は、正確なローカリゼーション/自我ポーズ推定に不可欠です。このセクションでは、MixedReality[リファレンス]でランドマーク追跡を実装する方法を簡単に紹介します。

最初のステップはオブジェクトの検出です。これらは、ランドマークとして使用できる静的なオブジェクトやパターンです。畳み込みニューラルネットワークは、オブジェクト検出用の最先端のアルゴリズムの一部であり、モバイルハードウェア上で高スループットで正確に実行するために、長年の研究を通じて大幅に最適化されています。オブジェクトが検出されたら、ヘッドセットが移動するときに、さまざまなフレームでオブジェクトを識別(追跡)する必要があります。したがって、各オブジェクトインスタンス(またはそのバウンディングボックス)には一意のIDが割り当てられます。

ほとんどのオブジェクト追跡アルゴリズムは、主に2つの近接性の仮定に依存しています。これらの仮定は次のように述べています。

  1. オブジェクトが前のフレームの他のオブジェクトよりも自身のインスタンスに最も近い可能性が高い場合、および
  2. 同じオブジェクトの外観がフレームごとに変わる可能性はほとんどありません。

エゴポーズ推定における課題

自我ポーズ推定は困難な作業であり、最先端のアルゴリズムでさえ堅牢性の欠如に悩まされています。ただし、環境のいくつかの重要なプロパティが満たされていることを確認すれば、ほとんどの場合、追跡を機能させることができます。[参照]

点灯

優れた照明は、視覚ベースのポーズ推定システムにとって非常に重要です。ユーザーが問題なく歩き回ったり、部屋の反対側から人の顔を見ることができる十分な照明がある環境では、主要なMRシステムのいずれかで自我ポーズを推定するのに十分なはずです。ただし、部屋の光源が明るすぎると、カメラが飽和状態になり、ポーズの推定に大きな誤差が生じる可能性があることに注意してください。

ビジュアルマーカー

先に説明したように、エゴポーズ推定は環境内のオブジェクトを追跡することによって機能するため、MRシステムを使用するときは、周囲に十分な視覚的マーカーがあることを確認する必要があります。壁の装飾、コントラストのポイント、伝統的な家具は、ほとんどの場合うまく機能します。白い壁のある空白の部屋で実験を行うことは避けてください。

突然の動き

Microsoft HoloLensなどの最新のMRデバイスの追跡システムは、人間の最速の動きにも耐えられるように構築されていますが、日常の使用シナリオでMRヘッドセットを装着した後に突然動くことは一般的に推奨されていません。没入型ヘッドセットは、空間認識を部分的に失う可能性があることを覚えておくことが重要です。注意深く移動することは、ユーザーが自分の環境で安全であることを保証するのに役立ちます。

結論

この記事で前述したように、環境照明とセンサーノイズに対する堅牢性は、複合現実での正確な自我ポーズ推定の最大の課題のいくつかです。閉塞を意識した追跡も課題であり、現在活発な研究の対象となっています。Microsoft HoloLensのような複合現実システムは高価であり、主にエンタープライズユースケースを対象としています。メタバースへの関心の高まりのおかげでエクステンデットリアリティが民主化されるにつれ、手頃な価格のハードウェアを使用して実行可能な正確なローカリゼーションを実現することが課題になります。

さらに読む資料

  1. 人間の視覚スパンからの自己中心的なポーズ推定
  2. リアルタイムPD制御としての自我ポーズ推定と予測
  3. SelfPose:ヘッドセットに取り付けられたカメラからの3D自己中心的なポーズ推定
  4. PoseConvGRU:学習による視覚的自我運動推定のための単眼アプローチ
  5. オブジェクトトラッキング| ディープラーニング| コンピュータビジョン| VisionWizard
  6. インサイドアウトトラッキングの仕組み—愛好家ガイド| Microsoft Docs
  7. OpenCVによるシンプルなオブジェクトトラッキング— PyImageSearch
  8. ローカリゼーションと追跡(スライド)
  9. ダミーのためのSLAM
  10. 自己中心的なワークスペースを使用した一人称ポーズ認識

© Copyright 2021 - 2022 | hachiwiki.com | All Rights Reserved