モデルをロードした後、ワークフローに情報を追加することができます。Spatial Workplace アプリでモデルを表示する場所を定義するには、ワークフローにspatial 参照を追加する必要があります。
参考文献には3種類ある:
注:ワークフロー内で異なるspatial 参照タイプを混在させることは現在サポートされていない。
マーカー
マーカーは、ワークフロー内で表示される情報を、現実のコンポーネントの上の希望の場所に配置するために使用されます。このために、エディタ内に少なくとも1つの仮想マーカーを、現実のマーカーが現実のコンポーネントと関係する位置に追加する必要があります。デバイスによって使用するマーカーの種類は異なります。その後、スキャンされたマーカーの位置に応じて、Spatial Workplaceにバーチャルモデルがロードされます。
マーカーには以下の種類がある:
- ArUcoマーカー:このタイプのマーカーは、モバイル機器(iOS 、Android)で使用することを想定している。マーカーのサイズはユーザーが調整でき、1~99cmの間で設定できる。経験則として、10cm(ボーダー付き12cm)または15cm(ボーダー付き18cm)のサイズのマーカーを使用すべきですが、ユーザーはそれぞれのコンポーネントに最適なサイズを選択するオプションがあります。
- QRコードマーカー:このタイプのマーカーは、HoloLens 2で使用するためのものです。この場合も、サイズはユーザーが調整できます。提案されているデフォルトは15cm(ボーダー付きは17cm)です。
注:正しくトラッキングするためには、Spatial エディターで追加したのと同じサイズでマーカーを印刷する必要があります。
モデルにマーカーを追加する:
- 一番上の「追加 」をクリック。
- ArUcoまたはQRコードマーカーのいずれかを要件に応じて選択してください。
- 置きたいモデルの表面をクリックします。マーカーを配置するまで、エディタの他のオプション/ボタンは無効になります。
- モデルのサーフェス上のマーカーの位置を変更するには、マーカーを選択し、上部メニューのObject > Snapをクリックするか、キーボードの
Sを
押します。 - 変形ギズモまたは右側の変形メニューを使用して、モデルのサーフェスから独立してマーカーの位置と回転を変更します。
6.右側で、マーカーの参照(IDとサイズ)を編集できます。
注意: エディターで使用するバーチャル・マーカーは、Spatial Workplace を使用する際に現実のコンポー ネントに付けるマーカーと同じでなければならないので、マーカー ID が一致していることを確認してください。正しいマーカーを印刷し、エディタと現実のコンポーネントの両方で同じ位置に配置することが重要です。
すべてのマーカーは、上部メニューのマーカーPDFをクリックしてダウンロードできます。大きなモデルの場合、HoloLens 2でのトラッキングを容易にするために、複数のマーカーを追加することをお勧めします。大きなモデルとは、すべてのピンを見るために、ユーザーが元のマーカーの位置に対して90度以上視点を動かす必要があるようなモデルを指します。このような場合は、実際のコンポーネントの各セクション(つまり側面)に追加のマーカーを追加します。各マーカーは、デバイスがピンの位置を再較正し、正しい配置を保証するのに役立ちます。
オブジェクトトラッカー
オブジェクトトラッカーを使用する場合、現実のオブジェクトを使用して、ワークフロー内で希望する場所に表示する情報の位置を計算する。オブジェクト・トラッカーは、HoloLens 2、iOS、Androidデバイスで表示されるワークフローで使用できます。
モデルにオブジェクトトラッカーを追加する:
- 3Dシーン上部のメニューから、Add > Object Trackerを クリックします。
- スマートグラスの赤いホログラム( )が表示されます(マウスのスクロールホイールを使ってズームアウトする必要があります)。このホログラムは、対象物がスマートグラスを通してどのように知覚されるかを示しています。
3.シーン内のモデルに対するオブジェクトトラッカーの位置は、Spatial Workplaceでワークフローを再生しながら、ユーザーが実際のオブジェクトをスキャンするためにデバイスを配置しなければならない位置と距離を表しています。
4.オブジェクトトラッカーを追加します。これで、3Dシーンのカメラがある場所(つまり、ユーザーが現在3Dシーンでモデルを見ている視点)に自動的に配置されます。
注:マウスを使ってシーンを回転させ、さまざまな視点から見ることができます。
5.オブジェクトトラッカーの上にあるギズモを使って位置を微調整したり、カメラを動かしたりする。
6.オプション:右側のメニューから「Set Transform From View 」をクリックし、再び自分の視点に移動させる。
注意:オブジェクトトラッカーがモデルから適度な距離にあり、そこから出る線がモデルに向いていることが重要です。
⇒ ワークフローをアップロードした後、ビューイングデバイスでスキャンパースと距離をテストし、エディターで微調整してください。こうすることで、最終的なユーザーにとってより良いスキャン体験が保証されます。
注: スマートグラスのホログラムの色が赤いのは、.objファイル が添付されていないことを意味します。.objファイルは、現実のコンポーネントを追跡するためにVisionLibからのオブジェクト追跡を補助します。
7.シーンから.objファイルを作成するには、赤いホログラムを選択します。
8.右側の設定に進む。
9.Assign > Generate new from scene underTracked Objectをクリックします。
10.オプション:ユーザーは、Exportを クリックしてファイルを保存することにより、.objファイルをコンピュータに保存することもできます。
注意: Spatial Editorにインポートされたモデルフォーマットとは別に、シーンから.objファイルを生成するか、ディスクから提供する必要があります。
11.これで、3Dシーンのオブジェクトトラッカーのホログラムの色が緑に変わるはずです。
12.オプション:Spatial でパーツを非表示にしたりモデルから移動した場合、ワークフローにこれらの変更を含めるために .obj ファイルを再生成する必要があります。Workplaceアプリ使用時に初期トラッキングの位置と回転を調整できるようにするには、Dynamic Initial Pose オプションを有効にします。
注意: HoloLens 2でのオブジェクトトラッキングのために、.objのスケールはメートル単位である必要があります。シーンから.objを生成する際、Spatial は自動的にこれを保証します。しかし、ユーザーがディスクからVisionLibライセンスで既存の.objをインポートする場合、スケールがメートル単位であることを確認するのはユーザーの責任です。他のデバイスには、この制限はありません。
13.右側のメニューを使用して、オブジェクトトラッカーの位置と回転を変更します。
14.Set Transform From View をクリックする。オブジェクトトラッカーが自動的に3Dシーンの位置と視点に移動します。
15.最後に、特定のオブジェクトのトラッキングを改善するために、トラッキングパラメータ(以下で説明)の値を変更することができます。
注:これらのパラメーターの1つはStatic Scene(静的シーン)で、作業中のシーンが動的な場合、ユーザーはこれを無効にすることができる。この機能は現在、モバイルデバイスでのみ利用可能です。
注: デフォルト値は、ほとんどのオブジェクトでうまく動作するように選択された一般的なパラメータです。
利用可能なトラッキング・パラメーターの一覧です:
- 動的な初期ポーズ:有効にすると、実行時に動的に初期トラッキング視点を設定することができます。
- 連続トラッキング(モバイルのみ): 有効な場合(デフォルト)、オブジェクトトラッカーはモバイルデバイス向けに連続的なオブジェクトトラッキングを行います。タスク中に移動や回転が可能で、形状が維持されるオブジェクトに適しています。 非連続トラッキングは タスク開始時にオブジェクトをトラッキングし、その後SLAMを使ってトラッキングを続けます。非連続トラッキングは、タスク中に移動や回転がなく、形状が変化する(例えば、パーツが追加されたり削除されたりする)オブジェクトにより適しています。
- 拡張可能なトラッキング:有効にすると(デフォルト)、モデルベースのトラッキングはSLAMベースのトラッキングで拡張されます。これにより、モデルがカメラ画像に見えなくなってもトラッキングを継続することができます。ユーザーはSLAMダンスを行う必要があり、これはカメラの平行移動と回転を行い、特徴再構成に十分なベースラインを確保することを意味します。
- 最小インライア比 Init:初期化時にトラッキングを検証するためのしきい値。値の範囲は0.5から0.9までで、0.6がデフォルト値です。ラインモデルがオクルージョンのない現実のオブジェクトと完全に一致する場合は、より高い値を推奨します。しかし、通常は完全には一致しないため、低い値の方が効果的です。
- ラプラスしきい値:ラインモデルを作成するためのしきい値(mm)。値の範囲は0.0001から100000までで、デフォルト値は5です。これは、エッジとして認識される2つの隣接するピクセル間の最小の深さを指定します。
- 通常のしきい値:ラインモデルを生成するためのしきい値。値の範囲は0.0001から1000までで、1000がデフォルト値である。これはエッジとして認識されるために必要な、隣接する2つのピクセル間の法線差の最小値を指定します。通常、法線ベースの線はあまり確実に認識できないため、高い値に設定されます。しかし、モデルによっては、より低い値を使用することに意味があるかもしれません。
- 線勾配のしきい値.画像のエッジ候補のしきい値。値の範囲は 0 から 256 で、デフォルト値は 40 です。高い値はコントラストが高いピクセルだけを候補とし、低い値はそれ以外のピクセルも候補とします。これはトレードオフです。候補が多すぎる場合、アルゴリズムは間違ったピクセルを選択するかもしれません。候補が少なければ、ラインモデルが画像内のオブジェクトにくっつかないかもしれません。
- キーフレームの距離:キーフレーム間の最小距離(mm)。値の範囲は0.001から100000までで、デフォルト値は100です。ラインモデルは特定のキーフレームに対してのみ生成されます。値を大きくするとパフォーマンスが向上しますが、精度が低下します(その逆もあります)。
- ラインサーチの長さ 初期相対:初期化とトラッキング中の最小解像度に対する直交サーチラインの長さ(単位:パーセント)。値の範囲は0.00625から1までで、0.03125がデフォルト値です。モデルベーストラッカーは3Dラインモデルをカメラ画像に投影し、投影されたラインに直交するエッジピクセルを検索します。
- Use Color:デフォルトでは無効になっています。有効にすると、トラッキング中に色のついたエッジが区別しやすくなります。色のついたエッジを持つオブジェクトにのみ有効です。トラッキングの質を上げることができますが、より多くの処理能力を必要とします。
- 視野(HoloLens 2のみ):視野を広くすると、画像キャプチャ中にオブジェクトが小さく見えます。大きな対象物には「ワイド」を、小さな対象物には「ナロー」を使用することをお勧めします。
注意:オブジェクトトラッキングは、TeamViewer/VISCOPICで有効にする必要があります。モデルごとまたはデバイスごとの追加ライセンスが必要です。
モデル配置
モデル配置は、Spatial Workplace を開始したときのユーザー位置を使用して、spatial リファレンスに接続されたすべてのモデルとピンを配置します。
HoloLens 2、iOS、Androidデバイスで表示されるワークフローで使用できる。
モデル配置spatial の参照を追加する:
- 3Dシーンの上部にあるAdd > Model Placementを クリックします。ギズモは、緑軸と赤軸に沿った動きと、青軸を中心とした回転のみを許可します。この制限は、モデルの配置リファレンスを同一平面上に保つためのものです。
2.緑色の矢印は、ユーザーの見る方向を象徴しています。ユーザーは、右側のメニューで、この基準に従って配置されるモデルを選択できます。Spatial Workplaceでワークフローを開始すると、選択したモデルと接続されたピンは、Spatial Workplaceアプリを起動したときに、ユーザーの視線方向に対して配置されます。
モデルの可視性: spatial リファレンスに接続されたピンとは異なり、モデルはデフォルトでは表示されません。ワークフローの再生中にモデルを表示するには、以下のいずれかを行う必要があります:
トラッキング
マーカーのサイズ
マーカーのサイズは、Spatial ワークプレイスで表示される情報の精度に影響し、またマーカーをスキャンできる距離にも影響する。エディターでは、1~99cmの間でマーカーのサイズを選択できます。
HoloLensデバイス上では、Frontline 、マーカーの大きさの50倍の距離から快適にスキャンできる。例えば、10cmのマーカーは、良好な照明条件下で約5m先までスキャンできます。低照度の環境では、マーカーのサイズを大きくすることを検討してください。iOSおよびAndroidの デバイスでは、Frontline マーカーの大きさの5倍の距離からマーカーを快適にスキャンすることができます(例:10cmの大きさのマーカーを50cmの距離からスキャン)。
注:一般的に、マーカーの最小推奨サイズは10cmです。ただし、照明条件、カメラの焦点、スキャナー・カメラからの距離によって異なる場合があります。
Spatial ワークプレイスは、ワークフローのコンテンツを、スキャンされたマーカーに関連して配置する。
この2D表示では、x軸( )とy軸(Y軸)のみが示されている。 Spatial しかしWorkplaceは、3つ目の軸も使って正確な3D位置をマッピングする。このソフトウェアでは、3D変換を決定するために、高さと幅に対するマーカーの中心を使用します。
エディターでワークフローに追加されたデジタルコンポーネントと異なるサイズのマーカーを現実のコンポーネントに配置することで、ユーザーはこのspatial 座標系の始点を間違った場所に設定する可能性に直面する。これは、ワークフロー内のすべての情報の位置決めを損なう可能性があります。
経験則: 目安:ArUcoマーカーは10cm、QRコードマーカーは15cmの大きさが、それぞれのデバイスでほとんどの場合に十分です。ただし、照明条件、カメラの焦点、スキャナーのカメラからの距離が大きく影響する場合があります。問題がある場合は、マーカーのサイズを大きくすることを検討してください。
注意:マーカーの四隅がスキャナーのカメラにはっきりと見え、エディターで定義された正確な位置に平らになっていなければなりません。マーカーにカールやしわがあると、ピンの正しい位置決めができない場合があります。
現実的なセッティングのすすめ
ピンを正確な位置に配置し、オフセットを最小限に抑えるには、すべてのトラッキング変数に注意することが重要です。これには、マーカーの物理的特性、環境、Spatial Workplace アプリケーションの実行に使用するデバイスが含まれます。可能な限り最良の結果を得るために、以下の推奨事項に従ってトラッキング効率を高めてください。
マーカーのコンディション
- エディターで定義された正しいサイズとID番号のマーカーを使用してください。
- 四隅は、周囲の余白も含めて、スキャナーのカメラからはっきりと見えるようにする。
- マーカーは常に平らにし、カールや裂け目、しわがないように、実際の対象物の正確な位置に置く。
- マーカーを覆う反射面はトラッキングを損なう可能性がある(ガラスやラミネートなど)。
- マーカーは常に、それが置かれている面に対して90度の角度からスキャンすること(つまり、カメラは対象物/マーカーを真正面から見ること)。異なる角度からスキャンすると、ピンの位置に影響を与えることがあります。
環境条件:
- 環境内のフィーチャの数とコンポーネントがトラッキングに影響します。マーカーがスキャンされ、元の位置が設定された後、デバイストラッキングシステムがコンテンツをその位置に維持する制御を行います。設定に含まれる特徴の数は、デバイストラッキングの効率を高めます。良い特徴には、コンポーネント自体やコンポーネントとその環境の間に見える角やコントラストが含まれます。
- 部屋には十分な照明が必要です。デバイスのカメラは通常、私たちの目に比べて光を受け取る能力が低い。可能な限り最高のトラッキング結果が得られるよう、部屋に十分な明るさがあることを確認してください。ただし、明るすぎる環境も避けてください。
- 特にマーカー、ピン、その他のコンテンツを配置する場合は、反射面を避けるべきである。
- タスク実行中に不規則な動きをすると、コンテンツの位置がずれることがあります。タスク実行中はデバイスの位置を安定させてください。
- 大きな設定では、ピンがスキャンされたマーカーの位置から離れれば離れるほど、コンテンツの位置決めに望ましくないドリフトが生じる可能性が大きくなる。これは、マーカー追跡の小さな不正確さが強まることと、マーカーとコンテンツ位置の間の必要な移動量によって引き起こされます。この問題を最小限に抑えるには、以下の「トラッキングを改善するためにマーカーを追加する」セクションをチェックしてください。
注意:コンポーネントのサイズによっては、マーカーを追加する必要があります。デバイスによってはトラッキング機能に制限があるため、モデルの異なるセクションに複数のマーカーを追加する必要があります。こうすることで、Spatial Workplace ソフトウェアがピンの位置を再トラッキングし、ピンを正しく配置することができます。リポジションタスク機能は、再トラッキングのタスクを実行する際にいつでも使用できます。
デバイスの条件:
- HoloLensデバイス
- HoloLensデバイスには、清潔なバイザーと、障害物のないセンサーが必要です。
- 部屋の中を見回したり、その周辺を歩き回ったりすると、デバイスが部屋の設定をトラッキングする能力が高まる。部屋の中で常に動いている人が大勢いると、トラッキングが損なわれる可能性があります。
- ユーザーの瞳孔間距離(IPD)は異なります。デバイスのIPD値がキャリブレーションされていないと、AR体験が損なわれる可能性があります。このマイクロソフトの記事では、キャリブレーションアプリを使用してデバイスのIPDをカスタマイズする方法を説明します。
- iOSおよびAndroidデバイス
- 正確なトラッキングには、クリアなカメラレンズが必要だ。
- オートフォーカスはピンの位置を損なう可能性がある。
タスク中にトラッキングを再開する
タスクの実行中にコンテンツの位置がずれた場合は、マーカーを再スキャンするだけです。デバイスのタスクメニューで「タスクの再配置」を選択し、プロンプトに従ってマーカーをスキャンします。マーカーを再スキャンすると、タスクは中断したところから再開されます。
タスクメニュー
モバイルデバイス(iOSとAndroid)では、タスクメニューは常に画面の左上隅に3本の線が入ったアイコンで表示されます。HoloLens 2では、デバイスの前で左手を上げるとタスクメニューが表示されます。タスクの再配置」音声コマンドを使ってトラッキングを再開することも可能です。
マーカーを追加してトラッキングを向上
ARデバイスは、すべてのピンがspatial 参照(マーカー)に近い位置にあり、ユーザーが元の位置に対して遠くに移動したり、大きく旋回したりする必要がない場合、より優れたトラッキング能力を発揮する。コンテンツが最初の基準(spatial )から離れている場合、マーカースキャンによる小さなトラッキングの不正確さは、距離によって潜在化されるため、より大きく見える。これに加えて、ユーザーが過度に動くと、コンテンツの位置に余分なドリフトが生じる可能性がある。
これが、この例のように、実際のコンポーネントの「セクション」ごとに異なるマーカーを作成することを推奨する理由である:
タスク実行中、ユーザーはコンポーネントの各セクションで新しいマーカーをスキャンすることができ、デバイスはコンテンツの位置を再読み込みし、ピンを正しい位置に配置することができます。詳しくは、上記の "タスク実行中のトラッキングの再開 "をご確認ください。
エディタでプロジェクトに複数のマーカーを追加する場合は、ワークフローで余分なマーカーがピンに接続されていることを確認してください。エディタでは、2D コネクタで接続できます。これにより、異なるマーカーが異なるピンからタスクを開始するか、またはピンとピンの間にマーカーを追加し、タスクのこの部分に到達したときにそのマーカーをスキャンするようユーザーに義務付けるかを決めることができます。これらの追加マーカーには、異なるマーカーIDまたは同じマーカーIDを自由に使用してください。
その他の推奨事項
シームレスなARトラッキング体験を保証し、トラッキングの質を高め、ARの泳ぎや誤った位置決めなどの問題を防ぐために、以下の要素を考慮してください:
- 実世界環境に光学的特徴がほとんど ない: 実世界環境に光学的特徴があまりない場合(例えば、テクスチャのある真っ白な壁)、カメラがヘッドセットやモバイルデバイスの動きを計算するのは難しいでしょう。
- 非常に複雑な3Dモデル/ホログラム:複雑なモデルやホログラムを視覚化する場合、すべてのオブジェクトやパーツを可視化するために高い計算能力が必要となる。
- 視線キャリブレーションなし (HoloLensユーザー向け):各ユーザーがデバイス上で視線キャリブレーションを実行すると、最高のHoloLens体験が得られます。HoloLens 2で「泳ぐ」問題が解決しない場合は、デバイス上で目のキャリブレーションを実行してみてください。HoloLensのキャリブレーションの詳細については、マイクロソフトのドキュメントページをご覧ください。
- コンピューティング・パワーに制限のあるモバイル・デバイス: Spatial Workplaceを実行するために使用しているデバイスが強力なコンピューティング・パワーを持たない場合、ARトラッキング体験がスムーズに行われない可能性がある。
- モバイル機器のカメラの画質が低い:デバイスのカメラの画質が低いと、トラッキングの品質が悪くなることがあります。
- 誤ったマーカーサイズ:マーカーは、マーカー PDF に記載されているサイズで正確に印刷する必要があります。マーカーが小さく印刷されていると、カメラはマーカーが遠くにあると認識するためです。
- 部屋のスキャンは役に立つかもしれない:ワークフローが同じ部屋だけで使用される場合、部屋をスキャンしてHoloLensに教えることが役立つかもしれません。これは、HoloLensをアイドルモード(電源は入っているが、アプリは起動していない状態)で使用しているときに、部屋の全方向の空中をタップすることで行うことができます。
- 長距離を歩く/何度も曲がる:Frontline Spatial アプリの実行中にユーザーがデバイスを持って長距離を歩いたり、ワークフローでユーザーが何度も90度回転する必要がある場合、ホログラムとピンの位置がずれる可能性がある。これを改善する方法として、ワークフローの途中にマーカーを追加し、ARトラッキングやピンの位置をリセットすることが考えられる。
- 現実世界でのマーカーの誤った配置:マーカーは、Spatial Editor内のバーチャルシーンで定義されたのと同じ位置に、実世界で正確に配置/接着することが重要です。これは、オブジェクトの正しい配置やトラッキングに役立ちますので、現実世界でのマーカーの位置が、Spatial Editor内の位置と一致していることを確認してください。
- 低消費電力のモバイルデバイス: Spatial Workplaceを実行するために使用しているデバイスに強力な計算能力がない場合、AR Tracking体験がスムーズに行われない可能性がある。