(57)【要約】【課題】  本開示は、本開示は、両眼光透過拡張現実ディスプレイを較正するシステム及び方法を提供する。【解決手段】  較正アプリケーションは、ヒューマンインタフェースモジュールの１又は複数のディスプレイ上で仮想オブジェクトの１又は複数の画像をレンダリングし、１又は複数のディスプレイ上で１又は複数の画像の位置を調整するためのユーザ入力を受信する。入力に応答して、較正アプリケーションは、それぞれ第１及び第２の深さにある現実世界オブジェクトの周囲の目標範囲の第１及び第２の境界を識別する。較正アプリケーションは、第１及び第２の境界に対応する第１及び第２の視差を決定し、現実世界オブジェクトの深さに関連して視差を記録しても良い。【選択図】  図４
2015142383.tif 000002
【特許請求の範囲】
【請求項１】
１又は複数のプロセッサにより、ヒューマンインタフェースモジュールのディスプレイで、第１の深さにある現実世界オブジェクトに対して位置決めされた仮想オブジェクトの画像をレンダリングするステップと、
前記１又は複数のプロセッサにより、前記ディスプレイ上の前記画像の位置を調整するためのユーザ入力を受信するステップと、
前記１又は複数のプロセッサにより、前記ユーザ入力に基づき視差範囲を決定するステップと、
前記１又は複数のプロセッサにより、前記第１の深さと前記視差範囲との間のマッピングを決定するステップと、
を有するコンピュータが実施する方法。
【請求項２】
前記視差範囲は融合範囲である、請求項１に記載のコンピュータが実施する方法。
【請求項３】
前記視差範囲は許容範囲である、請求項１に記載のコンピュータが実施する方法。
【請求項４】
前記ユーザ入力に基づき前記視差範囲を決定するステップは、
第１のユーザ入力に応答して、ユーザの目から前記第１の深さにある現実世界オブジェクトの前記視差範囲の第１の境界を識別するステップと、
第２のユーザ入力に応答して、前記ユーザの前記目から前記第１の深さにある前記現実世界オブジェクトの前記視差範囲の第２の境界を識別するステップと、
前記第１の境界に対応する第１の視差及び前記第２の境界に対応する第２の視差を決定するステップと、
を有し、
前記視差範囲は、前記第１の視差と前記第２の視差との間にある、請求項１に記載のコンピュータが実施する方法。
【請求項５】
前記第１の深さと前記視差範囲との間の前記マッピングを決定するステップは、前記第１の視差及び第２の視差の前記第１の深さとのマッピングの回帰分析を実行するステップを有する、請求項４に記載のコンピュータが実施する方法。
【請求項６】
前記第１の深さと前記視差範囲との間の前記マッピングを決定するステップは線形であり、前記方法は、近端境界についての第１の定数及び遠端境界についての第２の定数を推定する、請求項１に記載のコンピュータが実施する方法。
【請求項７】
前記画像をレンダリングするステップは、第１の画像及び第２の画像をレンダリングするステップを有し、
前記視差範囲は、前記ユーザの融合立体視領域を有する、
請求項１に記載のコンピュータが実施する方法。
【請求項８】
前記第１の画像は両眼透視ヒューマンインタフェースモジュールの左目ディスプレイでレンダリングされ、前記第２の画像は右目ディスプレイでレンダリングされる、請求項７に記載のコンピュータが実施する方法。
【請求項９】
前記視差範囲は、前記画像が前記現実世界オブジェクトに揃えられて現れる領域を有する、請求項１に記載のコンピュータが実施する方法。
【請求項１０】
前記ヒューマンインタフェースモジュールの前記ディスプレイで、第２の深さにある前記現実世界オブジェクトに対して位置決めされた仮想オブジェクトの第２の画像をレンダリングするステップと、
前記ディスプレイ上の前記画像の前記位置を調整するための追加ユーザ入力を受信するステップと、
前記追加ユーザ入力に基づき第２の視差範囲を決定するステップと、
前記第２の深さと前記視差範囲との間の第２のマッピングを決定するステップと、
を有する請求項１に記載のコンピュータが実施する方法。
【請求項１１】
システムであって、
１又は複数のプロセッサと、
前記１又は複数のプロセッサに結合され命令を格納するメモリと、
を有し、前記命令は、実行されると前記システムに、
前記１又は複数のプロセッサにより、ヒューマンインタフェースモジュールのディスプレイで、第１の深さにある現実世界オブジェクトに対して位置決めされた第１の深さにある現実世界オブジェクトに対して位置決めされた仮想オブジェクトの画像をレンダリングするステップと、
前記１又は複数のプロセッサにより、前記ディスプレイ上の前記画像の位置を調整するためのユーザ入力を受信するステップと、
前記１又は複数のプロセッサにより、前記ユーザ入力に基づき視差範囲を決定するステップと、
前記１又は複数のプロセッサにより、前記第１の深さと前記視差範囲との間のマッピングを決定するステップと、
を有する動作を実行させる、システム。
【請求項１２】
前記視差範囲は融合範囲である、請求項１１に記載のシステム。
【請求項１３】
前記視差範囲は許容範囲である、請求項１１に記載のシステム。
【請求項１４】
前記メモリは、前記１又は複数のプロセッサにより実行されると前記システムに、
第１のユーザ入力に応答して、ユーザの目から前記第１の深さにある現実世界オブジェクトの前記視差範囲の第１の境界を識別するステップと、
第２のユーザ入力に応答して、前記ユーザの前記目から前記第１の深さにある前記現実世界オブジェクトの前記視差範囲の第２の境界を識別するステップと、
前記第１の境界に対応する第１の視差及び前記第２の境界に対応する第２の視差を決定するステップと、
を有する動作を実行させる命令を更に格納し、
前記視差範囲は、前記第１の視差と前記第２の視差との間にある、請求項１１に記載のシステム。
【請求項１５】
前記第１の深さと前記視差範囲との間の前記マッピングを決定するステップは、前記第１の視差及び第２の視差の前記第１の深さとのマッピングの回帰分析を実行するステップを有する、請求項１４に記載のシステム。
【請求項１６】
前記第１の深さと前記視差範囲との間の前記マッピングを決定するステップは線形であり、前記システムは、近端境界についての第１の定数及び遠端境界についての第２の定数を推定する、請求項１１に記載のシステム。
【請求項１７】
前記画像をレンダリングするステップは、第１の画像及び第２の画像をレンダリングするステップを有し、
前記視差範囲は、前記ユーザの融合立体視領域を有する、
請求項１１に記載のシステム。
【請求項１８】
前記第１の画像は両眼透視ヒューマンインタフェースモジュールの左目ディスプレイでレンダリングされ、前記第２の画像は右目ディスプレイでレンダリングされる、請求項１7に記載のシステム。
【請求項１９】
前記視差範囲は、前記画像が前記現実世界オブジェクトに揃えられて現れる領域を有する、請求項１１に記載のシステム。
【請求項２０】
前記メモリは、前記１又は複数のプロセッサにより実行されると前記システムに、
前記ヒューマンインタフェースモジュールの前記ディスプレイで、第２の深さにある前記現実世界オブジェクトに対して位置決めされた仮想オブジェクトの第２の画像をレンダリングするステップと、
前記ディスプレイ上の前記画像の前記位置を調整するための追加ユーザ入力を受信するステップと、
前記追加ユーザ入力に基づき第２の視差範囲を決定するステップと、
前記第２の深さと前記視差範囲との間の第２のマッピングを決定するステップと、
を有する動作を実行させる命令を更に格納する、請求項１１に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願明細書は、ユーザ入力に基づく両眼光学透視拡張現実ディスプレイの較正に関する。特に、本願明細書は、視差範囲を用いる両眼光透視システムを較正するシステム及び方法に関する。更に詳細には、本願明細書は、融合範囲又は許容範囲を較正するシステム及び方法に関する。
【背景技術】
【０００２】
既存のポータブルコンピューティング装置は、拡張現実アプリケーションを可能にするとき、根本的な制限を有する。仮想情報を示すことのできる数個のニアアイディスプレイ（near-eye  display）が存在するが、それらは、小さい視野、限られた３Ｄ能力、及び限られた拡張現実サポートを含む欠点を示す。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
本開示は、両眼光透過拡張現実ディスプレイを較正するシステム及び方法を提供する。
【課題を解決するための手段】
【０００４】
本開示は、両眼光透過拡張現実ディスプレイを較正するシステム及び方法を含む。一実施形態では、システムは較正アプリケーションを有する。較正アプリケーションは、ヒューマンインタフェースモジュールのディスプレイで、第１の深さにある現実世界オブジェクトに対して位置決めされた仮想オブジェクトの画像をレンダリングし、前記ディスプレイ上の前記画像の位置を調整するためのユーザ入力を受信し、前記ユーザ入力に基づき視差範囲を決定し、前記第１の深さと前記視差範囲との間のマッピングを決定する、よう構成される。較正アプリケーションは、前記ユーザの前記目から第１の深さにある現実世界オブジェクトの周囲の視差範囲の第１の境界を識別するよう構成されても良い。較正アプリケーションは、前記ユーザの前記目から前記第１の深さにある前記現実世界オブジェクトの周囲の前記視差範囲の第２の境界を識別するよう構成されても良い。較正アプリケーションは、前記第１の境界に対応する第１の視差、及び前記第２の境界に対応する第２の視差を決定するよう更に構成されても良く、前記視差範囲は、前記第１の視差と前記第２の視差との間にある。
【０００５】
他の態様は、上述の及び他の新規な態様のための対応する方法、システム、装置及びコンピュータプログラムを有する。
【０００６】
本願明細書は、両眼光透過拡張現実ディスプレイの範囲較正手順を記載する。本願明細書に記載する技術の１つの重要な利点は、整列及び較正のためのユーザの融合立体視領域の使用である。この結果、現実世界オブジェクトオブジェクトの上にデジタル情報及び像のシームレスなオーバレイをもたらし、それにより高品質拡張現実アプリケーションを可能にする。
【図面の簡単な説明】
【０００７】
ここで紹介する技術は、例を用いて説明され、添付の図面に限定されるものではない。図中、同様の参照符号は同様の要素を表すために用いられる。
【図１】両眼光学透視拡張現実ディスプレイを較正するシステムの一実施形態を示す上位ブロック図である。
【図２】較正アプリケーションを有するシステムの一実施形態を示すブロック図である。
【図３】較正方法の一実施形態を示すフロー図である。
【図４】視差範囲を決定する視差較正方法の一実施形態を示すフロー図である。
【図５】ユーザの融合立体視領域の近端境界及び遠端境界に対応する視差範囲を決定する視差較正方法の一実施形態を示すフロー図である。
【図６】ユーザの視差許容範囲に対応する視差範囲を決定する視差較正方法の一実施形態を示すフロー図である。
【図７】深さ−視差マッピングの一実施形態の図式表現である。
【発明を実施するための形態】
【０００８】
両眼光透視拡張現実ディスプレイを較正するシステム及び方法を説明する。図１は、一実施形態による、光学透視拡張現実ディスプレイを較正するシステム１００のブロック図を示す。図示のシステム１００は、ヒューマンインタフェースモジュール１０２ａ．．．１０２ｎ、計算及び通信モジュール１０４ａ．．．１０４ｎ、バックエンドサービスサーバ１０８、位置決めシステム１１０、及び他のシステム１１２を有しても良い。図１Ａ及び以下の図では、参照符号の後の文字は、例えば「１０２ａ」は、特定の参照符号を有する要素への参照を表す。文章中の、後続の文字を有しない参照符号、例えば「１０２」は、その参照符号を付された要素の例への全般的な参照を表す。図示の実施形態では、システム１００のこれらのエンティティはネットワーク１０６を介して通信可能に結合される。
【０００９】
ネットワーク１０６は、従来型の有線又は無線であり、スター構成、トークンリング構成若しくは他の構成を含む多数の異なる構成を有しても良い。さらに、ネットワーク１０６は、ＬＡＮ（local  area  network）、ＷＡＮ（wide  area  network）（例えば、インターネット）、及び／又は複数の装置が通信できる他の相互接続されたデータ経路を有しても良い。幾つかの実施形態では、ネットワーク１０６は、ピアツーピアネットワークであっても良い。ネットワーク１０６は、種々の異なる通信プロトコルでデータを送信する通信ネットワークの一部に結合され又はそれを含んでも良い。幾つかの実施形態では、ネットワーク１０６は、Ｂｌｕｅｔｏｏｔｈ(登録商標)通信ネットワーク又はＳＭＳ（short  messaging  service）、ＭＭＳ（multimedia  messaging  service）、ＨＴＴＰ（hypertext  transfer  protocol）、直接データ接続、ＷＡＰ、電子メール等を介することを含むデータを送信及び受信するセルラ通信ネットワークを有しても良い。図１はヒューマンインタフェースモジュール１０２ｎ、計算及び通信モジュール１０４ｎ、バックエンドサービスサーバ１０８、位置決めシステム１１０、及び他のシステム１１２に結合される１つのネットワーク１０６を示すが、実際には１又は複数のネットワーク１０６がこれらのエンティティに接続できる。
【００１０】
一実施形態では、較正アプリケーション１０３ａは、対応する計算及び通信モジュール１０４ａに結合されるヒューマンインタフェースモジュール１０２ａで動作可能であっても良い。一実施形態では、ヒューマンインタフェースモジュール１０２ａ、並びに計算及び通信モジュール１０４ａは、望ましくは、ポータブルであり、単一ユーザにより一緒に用いられる。一実施形態では、ヒューマンインタフェースモジュール１０２ａは、メモリ、プロセッサ、画像配信及び表示機構、オーディオ配信若しくはスピーカ機構、並びにオーディオキャプチャ能力を有し得るウェアラブルコンピューティング装置であっても良い。例えば、ヒューマンインタフェースモジュール１０２は、両眼眼鏡の形式をとっても良い。
【００１１】
一実施形態では、ヒューマンインタフェースモジュール１０２は、大きな画像、両眼透視（透明）ディスプレイ、又は３次元の表示画像を提示するために広い視野を提供する画像配信及び表示機構を有しても良い。別の実施形態では、ヒューマンインタフェースモジュール１０２内の画像配信及び表示機構は、両眼光透視拡張現実表示システムを有しても良い。画像配信及び表示機構は、現実世界に近似して（グラフィック、テキスト、画像、及びビデオのような）デジタルの仮想可視化をシームレスに位置決めする、例えば物理的テーブル面上に仮想３Ｄチャートを配置する。幾つかの実施形態では、デジタル又は仮想可視化又は提示は、現実世界オブジェクト又は背景にオーバレイされ又は重ね合わせられる。用語「オーバレイ」は、特に断らない限り、現実世界オブジェクト又は背景に対するデジタル表現の位置決めを表す。一実施形態では、ヒューマンインタフェースモジュール１０２の画像配信及び表示機構は、現実世界オブジェクトの上にオーバレイされる仮想画像の視野内（in-eye）投影のための投影能力を有しても良い。別の実施形態では、画像配信及び表示機構は、ヒューマンインタフェースモジュール１０２を形成する眼鏡のレンズ上に仮想画像を投影する。更に別の実施形態では、ヒューマンインタフェースモジュール１０２内の画像配信及び表示機構は、壁、机上、テーブル上、又はすぐ近くの面に画像を投影する。一実施形態では、ヒューマンインタフェースモジュール１０２内の画像配信及び表示機構は、レーザダイオード、スキャニングファイバディスプレイ、スキャン光ディスプレイ、３Ｄディスプレイ（立体、自動立体、又は体積）、光照射野、基板導光光学系、導光光学素子、等を有しても良い。一実施形態では、画像配信及び表示機構は、ユーザの視覚能力を補正するための適応型光学系を有しても良く、度付き眼鏡を必要とするか否かを問わず誰によってもヒューマンインタフェースモジュール１０２が使用できるようにする。別の実施形態では、画像配信及び表示機構は、他のセンサ及びシステムと協働して、周囲光条件を検出し、及び自動的に若しくはユーザ制御下で表示のピクセル毎の不透明度の制御を提供する。理解されるべきことに、ディスプレイがディスプレイに入る周囲光のレベルを変更するために、ヒューマンインタフェースモジュール１０２の眼鏡への紫外線光又は電気信号の適用のような他の調光機構も提供されても良い。
【００１２】
ヒューマンインタフェースモジュール１０２は、通常、現実世界オブジェクト上に仮想情報のシーン適応オーバレイを可能にするウェアラブル装置である。特定の実施形態にかかわらず、用語「オーバレイ」、「複数のオーバレイ」又は「オーバレイされた」への言及は、シーン適応オーバレイを表す。本開示の実施形態では、画像配信及び表示機構はユーザに関する情報を視野に「オーバレイし」、又は検索された情報が視野に「オーバレイされる」。言い換えると、ユーザは、オーバレイにより遮られない現実世界を見ることできる。好適な実施形態では、画像配信及び表示機構は透視媒体であり、該透視媒体を通じて現実世界はユーザの目により見ることができ、該透視媒体上に仮想オブジェクトが現実オブジェクトの上に若しくはその隣にオーバレイされて表示できる。例えば、このオーバレイは、情報を目に投影して、投影された情報が目から特定の距離に位置する仮想画像面上で見えるようにする画像配信及び表示機構により達成されても良く、一方で、現実世界は目の前に位置する光学接眼部を通じて見えても良い。第２の実施形態では、画像配信及び表示機構は情報を投影し、仮想画像面の背後の領域は不透明にされて、可能な限り背後の現実世界を隠すが、投影されたオーバレイにより遮られない現実世界の部分はユーザにより見える。シーン情報全体が与えられると、画像配信および表示機構は、特定のレンダリング手段、例えば高輝度コントラスト又は色コントラスト、フォントスタイル／サイズ及び種類、等を選択する。したがって、投影された情報は現実世界の背景に対して可視である。。オーバレイされた仮想オブジェクトは、現実オブジェクトから反射される光を完全に遮ることができ、又は光を部分的に伝達できる。
【００１３】
ヒューマンインタフェースモジュール１０２内のオーディオ配信又はスピーカシステムは、モノ又はステレオ音声をユーザに提供するオーディオ出力装置を有しても良い。ヒューマンインタフェースモジュール１０２ａは、異なるセンサを用いて画像、音声、動き及び種々の情報をキャプチャする能力を有しても良い。例えば、ヒューマンインタフェースモジュール１０２ａにより提示されるデータを操作する１つの方法として、ヒューマンインタフェースモジュール１０２ａは、画像を処理しジェスチャを認識する。別の例では、ヒューマンインタフェースモジュール１０２ａは、リアルタイムに、現実世界シーンをキャプチャし、それらを計算及び通信モジュール１０４ａに配信する。計算及び通信モジュール１０４ａは、画像を処理して、シーンの３Ｄ深さマップを生成し、及び／又はオブジェクト認識を実行する。幾つかの実施形態では、ヒューマンインタフェースモジュール１０２ａは、ポータブル光源を有しても良い。
【００１４】
一実施形態では、較正アプリケーション１０３ｂは、ネットワーク１０６に結合される計算及び通信モジュール１０４ａで動作可能であっても良い。計算及び通信モジュール１０４ａは、ヒューマンインタフェースモジュール１０２ａに結合される。したがって、ヒューマンインタフェースモジュール１０２、並びに計算及び通信モジュール１０４は、一緒に、バックエンドサービスサーバ１０８、位置決めシステム１１０、又は他のシステム１１２のうちの任意のものとネットワーク１０６を介して通信可能である。一実施形態では、計算及び通信モジュール１０４ａは、ヒューマンインタフェースモジュール１０２ａのために計算的サポートを提供する。別の実施形態では、計算及び通信モジュール１０４ａは、任意の種類のアプリケーションのために一般的グラフィック及びマルチメディア処理を提供する。例えば、計算及び通信モジュール１０４ａは、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、スマートフォン、ＰＤＡ（personal  digital  assistant）、モバイル電子メール装置、等であり得る。別の例では、計算及び通信モジュール１０４ａは、ブレスレット、ペンダント、腕時計、ヘッドセット、眼鏡、又は他のウェアラブルコンピューティングの形式であっても良い。一実施形態では、計算及び通信モジュール１０４ａは、従来のオペレーティングシステムを用いて動作しても良い。別の実施形態では、計算及び通信モジュール１０４ａは、ネットワーク１０６と通信するための広帯域通信能力も有する。
【００１５】
図１のヒューマンインタフェースモジュール１０２ａ．．．１０２ｎ、並びに計算及び通信モジュール１０４ａ．．．１０４ｎは、例として用いられる。図１は２個のヒューマンインタフェースモジュール１０２ａ及び１０２ｎ並びに計算及び通信モジュール１０４ａ及び１０４ｎのみを示すが、本開示は、１又は複数のヒューマンインタフェースモジュール１０２並びに１又は複数の計算及び通信モジュール１０４を有するシステムアーキテクチャにも適用される。
【００１６】
一実施形態では、較正アプリケーション１０３ｃは、ネットワーク１０６に結合される、サービスを提供可能なバックエンドサービスサーバ１０８で動作可能であっても良い。一実施形態では、バックエンドサービスサーバ１０８は、ハードウェアサーバ又はソフトウェアサーバであっても良い。別の実施形態では、バックエンドサービスサーバ１０８は、完全にハードウェア、又は完全にソフトウェア、又はハードウェアとソフトウェアとの組合せであっても良い。バックエンドサービスサーバ１０８は、プロセッサ、メモリ、アプリケーション、データベース及びネットワーク通信能力を有するコンピューティング装置であっても良い。図１には単一のバックエンドサービスサーバ１０８のみが示されるが、任意の数のバックエンドサービスサーバ１０８又はサーバクラスタが存在しても良いことが理解されるべきである。他の実施形態では、異なるサーバは異なるサービスを提供する。例えば、バックエンドサービスサーバ１０８内の異なるサーバコンポーネントは、銀行業務、小売、運送、飲食物提供、ホテル及び住宅供給、等のような特定のビジネス鉛直圏（vertical）に関連するサービスを提供しても良い。同様に、バックエンドサービスサーバ１０８内の異なるサービスコンポーネントは、画像処理、シーン分析、顔認識、虹彩検出及び認証、音声認識、暗号化、変換、フォーマット変換、等のような異なる種類のコンピューティング機能を提供しても良い。
【００１７】
一実施形態では、較正アプリケーション１０３ｄは、ネットワーク１０６に結合される位置決めシステム１１０で動作可能であっても良い。位置決めシステム１１０は、ヒューマンインタフェースモジュール１０２及び／又は計算及び通信モジュール１０４の位置及び方向を検出するセンサのシリーズ、センサのグリッド若しくはアレイ、又はビーコンであっても良い。例えば、位置決めシステム１１０は、モジュールの位置及び方向を決定するために、ヒューマンインタフェースモジュール１０２及び／又は計算及び通信モジュール１０４からのデータを用いても良い。例えば、種々の屋内システムは、ヒューマンインタフェースモジュール１０２ａ並びに計算及び通信モジュール１０４が用いられる、より小さな環境の正確な位置及び方向情報を得るために用いられても良い。位置決めシステム１１０は、ＧＰＳ、Ｗｉ−Ｆｉ位置決め、セルラ位置決め、ＭＥＭＳセンサ、Ｂｌｕｅｔｏｏｔｈビーコン、屋内メッセージングシステム、近距離通信、ＲＦＩＤ、超音波ビーコン、カメラネットワーク、等を用いても良い。より詳細には、幾つかの実施形態では、位置決めシステム１１０は、ユーザの目から現実世界オブジェクトまでの深さ又は位置測定を提供する。
【００１８】
一実施形態では、較正アプリケーション１０３ｅは、ネットワーク１０６に結合される他のシステム１１２で動作可能であっても良い。図１の他のシステム１１２は、他の既存のシステムを表す。例えば、他のシステム１１２は、動きセンサ、壁ディスプレイ、コーヒーメーカ、照明制御のための投影システム、温度センサ、周囲光センサ、健康監視センサ、汚染センサ、放射線センサ、ＨＶＡＣシステム、等を有しても良い。ヒューマンインタフェースモジュール１０２並びに計算及び通信モジュール１０４は、他のシステム１１２と接続及び相互作用可能である。ヒューマンインタフェースモジュール１０２並びに計算及び通信モジュール１０４は、他のシステム１１２に情報及びコマンドを送信し、又は他のシステム１１２から情報を受信できる。例えば、飛行時間センサ、レーザ範囲探知器、構造光センサ、平面光（plenoptic）センサ、等の形式の深さセンサは、ユーザの目からの現実世界オブジェクトの深さを決定し、直接に又は計算及び通信モジュール１０４を介して情報をヒューマンインタフェースモジュール１０２に送信しても良い。
【００１９】
一実施形態では、較正アプリケーション１０３は、部分的にヒューマンインタフェースモジュール１０２に、部分的に計算及び通信モジュール１０４に、部分的にバックエンドサービスサーバ１０８に、及び部分的に位置決めシステム１１０のコンポーネントに格納されても良い小型軽量クライアントアプリケーションとして動作する。例えば、ヒューマンインタフェースモジュール１０２にある較正アプリケーション１０３ａは、現実世界シーンの画像をキャプチャするソフトウェアを有し、幾つかの実施形態では３Ｄ深さマップ生成を実行し得る。較正アプリケーション１０３ａは、深さ及び視差の正しいマッピングを決定するために、バックエンドサービスサーバ１０８にある較正アプリケーション１０３ｃへユーザ深さ−視差較正データを送信しても良い。
【００２０】
較正アプリケーション１０３は、較正を実行する機能を提供するために、ソフトウェア及び／又はロジックを有しても良い。一実施形態では、較正アプリケーション１０３は、ＦＰＧＡ（field-programmable  gate  array）又はＡＳＩＣ（application-specific  integrated  circuit）を含むハードウェアを用いて実装できる。別の実施形態では、較正アプリケーション１０３は、ハードウェア及びソフトウェアの組み合わせを用いて実装できる。他の実施形態では、較正アプリケーション１０３は、装置及びサーバの組合せに、又は装置又はサーバのうちの１つに、格納されても良い。
【００２１】
一実施形態では、較正アプリケーション１０３は、現実世界オブジェクトに対して位置決めされる仮想オブジェクトをレンダリングする。より詳細には、ヒューマンインタフェースモジュール１０２を通じて閲覧されるとき、仮想オブジェクトが現実世界オブジェクトにオーバレイされ揃えられて現れるまで、ユーザ入力に応答して仮想オブジェクトが位置を変更されるように、較正アプリケーション１０３は、ヒューマンインタフェースモジュール１０２のディスプレイにより仮想オブジェクトをレンダリングする。例えば、較正アプリケーション１０３は、最初に、仮想オブジェクトを特定の位置（例えば、スクリーンの中央）にレンダリングし、次に、仮想オブジェクトを揃えるようユーザに依存して仮想オブジェクトを移動する。較正アプリケーション１０３は、ユーザの目からの現実世界オブジェクトの深さを決定する。較正アプリケーション１０３は、深さ−視差較正のためにディスプレイ上で仮想オブジェクトを移動するためのユーザ入力を受信する。較正アプリケーション１０３は、深さ−視差較正が完了したか（例えば、ユーザは現実世界オブジェクトと深さの揃った仮想オブジェクトが見える）否かを決定する。較正は、ユーザからの入力に基づき完了したと、較正アプリケーション１０３により処理されたと、又はそれら両者と決定できる。較正アプリケーション１０３は、較正が完了したのに応答して、深さと視差との間のマッピングを決定する。別の実施形態では、較正アプリケーション１０３は、現実世界オブジェクトの３Ｄ点座標とディスプレイ上の仮想オブジェクトの２Ｄピクセル座標との間のマッピングを決定する。較正アプリケーション１０３の動作及び上述の機能は、図３〜７を参照して以下に詳述する。
【００２２】
図２を参照すると、較正アプリケーション１０３の一例がより詳細に示される。図２は、幾つかの例による、較正アプリケーション１０３、プロセッサ２３５、メモリ２３７、通信ユニット２４１、及びデータ記憶装置２４３を有し得るコンピューティング装置２００のブロック図である。コンピューティング装置２００のコンポーネントは、バス２２０により通信可能に結合される。バス２２０は、ＩＳＡ（industry  standard  architecture）バス、ＰＣＩ（peripheral  component  interconnect）バス、ＵＳＢ（universal  serial  bus）又は同様の機能を提供する従来知られている特定の他のバスを含む１又は複数のバスを表しても良い。幾つかの実施形態では、コンピューティング装置２００は、ヒューマンインタフェースモジュール１０２、計算及び通信モジュール１０４、バックエンドサービスサーバ１０８、位置決めシステム１１０、及び他のシステム１１２のうちの１つであり得る。
【００２３】
プロセッサ２３５は、種々の入力／出力、論理、及び／又は演算動作を実行することによりソフトウェア命令を実行しても良い。プロセッサ２３５は、例えばＣＩＳＣ（complex  instruction  set  computer）アーキテクチャ、ＲＩＳＣ（reduced  instruction  set  computer）アーキテクチャ、及び／又は命令セットの組合せを実施するアーキテクチャを含む、データ信号を処理する種々のコンピューティングアーキテクチャを有しても良い。プロセッサ２３５は、物理的及び／又は仮想的であっても良く、単一の信号処理ユニット又は複数の信号処理ユニット及び／又はコアを有しても良い。幾つかの実装では、プロセッサ２３５は、電子ディスプレイ信号を生成しディスプレイ装置に提供し、画像の表示をサポートし、画像をキャプチャ及び送信し、種々の特徴抽出及びサンプリングを含む複雑なタスクを実行する、等が可能であっても良い。幾つかの実装では、プロセッサ２３５は、バス２２０を介してメモリ２３７に結合されても良く、メモリ２３７からのデータ及び命令にアクセスし、メモリ２３７内にデ―タを格納しても良い。バス２２０は、例えばメモリ２３７、通信ユニット２４１、較正アプリケーション１０３、及びデータ記憶装置２４３を含むコンピューティング装置２００の他のコンポーネントに、プロセッサ２３５を結合しても良い。当業者には、他のプロセッサ、オペレーティングシステム、センサ、ディスプレイ、物理的構成が可能であることが明らかである。
【００２４】
メモリ２３７は、コンピューティング装置２００の他のコンポーネントのためにデータを格納しデータへのアクセスを提供しても良い。メモリ２３７は、本願明細書のどこかで議論されるように、単一のコンピューティング装置又は複数のコンピューティング装置に含まれても良い。幾つかの実装では、メモリ２３７は、プロセッサ２３５により実行され得る命令及び／又はデータを格納しても良い。例えば、一実施形態では、メモリ２３７は、較正アプリケーション１０３を格納しても良い。メモリ２３７は、例えばオペレーティングシステム、ハードウェアドライバ、他のソフトウェアアプリケーション、データベース、等を含む他の命令及びデータも格納可能である。メモリ２３７は、プロセッサ２３５及びコンピューティング装置２００の他のコンポーネントと通信するために、バス２２０に結合されても良い。
【００２５】
メモリ２３７は、１又は複数の非一時的コンピュータ使用可能（例えば、可読、書き込み可能、等）媒体を有しても良く、プロセッサ２３５により若しくはプロセッサ２３５と共に処理するために、命令、データ、コンピュータプログラム、ソフトウェアコード、ルーチン、等を有し、格納し、通信し、伝搬し又は伝送する任意の有形機器若しくは装置であり得る。幾つかの実装では、メモリ２３７は、揮発性メモリ及び不揮発性メモリのうちの１又は複数を有しても良い。例えば、メモリ２３７は、ＤＲＡＭ（dynamic  random  access  memory）装置、ＳＲＡＭ（static  random  access  memory）装置、埋め込みメモリ装置、個別メモリ装置（例えば、ＰＲＯＭ、ＦＰＲＯＭ、ＲＯＭ）、ハードディスクドライブ、光ディスクドライブ（ＣＤ、ＤＶＤ、Ｂｌｕｅ−ｒａｙ（登録商標）、等）のうちの１又は複数を有しても良いが、これに限定されない。理解されるべきことに、メモリ２３７は、単一の装置であっても良く、又は複数種類の装置及び較正を有しても良い。
【００２６】
通信ユニット２４１は、プロセッサ２３５に接続することにより、ネットワーク１０６及び他の処理システムからデータを受信し及びそれへ送信するハードウェアである。通信ユニット２４１は、ヒューマンインタフェースモジュール１０２から較正要求のようなデータを受信し、制御部２０１へ要求、例えば両眼ディスプレイの視差を調整する要求を送信する。通信ユニット２４１は、例えば現実世界オブジェクトと揃えるために、ヒューマンインタフェースモジュール１０２へ、表示用に仮想面のデジタル情報を含む情報も送信する。通信ユニット２４１はバス２２０に結合される。一実施形態では、通信ユニット２４１は、ヒューマンインタフェースモジュール１０２への又は別の通信チャネルへの直接物理接続のためのポートを有しても良い。例えば、通信ユニット２４１は、ヒューマンインタフェースモジュール１０２との有線通信のためにＲＪ４５又は類似のポートを有しても良い。別の実施形態では、通信ユニット２４１は、ＩＥＥＥ８０２．１１、ＩＥＥＥ８０２．１６、Ｂｌｕｅｔｏｏｔｈ（登録商標）又は別の適切な無線通信方法のような１又は複数の無線通信方法を用いて、ヒューマンインタフェースモジュール１０２又は任意の他の通信チャネルとデータを交換するために無線通信機（図示しない）を有しても良い。
【００２７】
更に別の実施形態では、通信ユニット２４１は、ＳＭＳ（short  messaging  service）、ＭＭＳ（multimedia  messaging  service）、ＨＴＴＰ（hypertext  transfer  protocol）、直接データ接続、ＷＡＰ、電子メール又は他の適切な種類の電子通信等を介してセルラネットワークでデータを送信及び受信するセルラ通信トランシーバを有しても良い。更に別の実施形態では、通信ユニット２４１は、有線ポート及び無線通信機を有しても良い。通信ユニット２４１は、当業者に理解されるように、ＴＣＰ／ＩＰ、ＨＴＴＰ、ＨＴＴＰＳ及びＳＭＴＰのような標準的ネットワークプロトコルを用いてファイル及び／又はメディアオブジェクトを配信するために、ネットワーク１０６への他の従来型接続も提供する。
【００２８】
データ記憶装置２４３は、本願明細書に記載の機能を提供するためにデータを格納する非一時的メモリである。データ記憶装置２４３は、ＤＲＡＭ（dynamic  random  access  memory）素子、ＳＲＡＭ（static  random  access  memory）素子、フラッシュメモリ又は幾つかの他のメモリ素子であっても良い。幾つかの実施形態では、データ記憶装置２４３は、不揮発性メモリ、又はハードディスクドライブ、フロッピディスクドライブ、ＣＤ−ＲＯＭ装置、ＤＶＤ−ＲＯＭ装置、ＤＶＤ−ＲＡＭ装置、ＤＶＤ−ＲＷ装置、フラッシュメモリ装置又は従来知られているより永久的に情報を格納する特定の他の大容量記憶装置を含む同様の永久記憶装置及び媒体も有しても良い。
【００２９】
図示の実施形態では、データ記憶装置２４３は、バス２２０に通信可能に結合される。一実施形態では、データ記憶装置２４３は、ヒューマンインタフェースモジュール１０２のディスプレイ上の仮想オブジェクトの現在位置を格納する。別の実施形態では、データ記憶装置２４３は、深さのセットの各深さについて集められた深さ−視差較正データ及び２Ｄ位置較正データを格納する。データ記憶装置２４３に格納されたデータは、以下に詳細に記載される。一実施形態では、データ記憶装置２４３は、本願明細書に記載の機能を提供する他のデータを格納しても良い。
【００３０】
一実施形態では、較正アプリケーション１０３は、制御部２０１、画像配信モジュール２０３、較正エンジン２０５及びユーザインタフェースエンジン２０７を有しても良い。較正アプリケーション１０３のコンポーネントは、バス２２０により通信可能に結合される。
【００３１】
制御部２０１は、較正アプリケーション１０３の他のコンポーネントの動作を制御するためにソフトウェア及び／又はロジックを有しても良い。制御部２０１は、図３〜７を参照して以下に記載される方法を実行するために較正アプリケーション１０３の他のコンポーネントを制御する。制御部２０１は、較正アプリケーション１０３とコンピューティング装置２００の他のコンポーネントとの間の、並びに較正アプリケーション１０３のコンポーネント同士の間の通信を処理する機能を提供するために、ソフトウェア及び／又はロジックを有しても良い。幾つかの実施形態では、制御部２０１は、ＦＰＧＡ（field-programmable  gate  array）又はＡＳＩＣ（application-specific  integrated  circuit）を含むハードウェアを用いて実装できる。幾つかの実施形態では、画像配信モジュール２０３は、ハードウェアとプロセッサ２３５により実行可能なソフトウェアとの組み合わせを用いて実装できる。幾つかの実施形態では、制御部２０１は、プロセッサ２３５により実行可能な命令セットである。幾つかの実装では、制御部２０１は、メモリ２３７に格納され、プロセッサ２３５によりアクセス可能且つ実行可能である。幾つかの実装では、制御部２０１は、プロセッサ２３５、メモリ２３７及び較正アプリケーション１０３の他のコンポーネントとバス２２０を介して協働し通信するために適応される。
【００３２】
一実施形態では、制御部２０１は、通信ユニット２４１を介して、ヒューマンインタフェースモジュール１０２、計算及び通信モジュール１０４、バックエンドサービスサーバ１０８、位置決めシステム１１０、及び他のシステム１１２のうちの１又は複数へ及びから、データを送信し及び受信する。例えば、制御部２０１は、通信ユニット２４１を介して、サービスを提供するバックエンドサービスサーバ１０８から仮想画像を受信し、該仮想画像を画像配信モジュール２０３へ送信する。別の例では、制御部２０１は、仮想画像を含むユーザインタフェースをユーザに提供するためのグラフィカルデータをユーザインタフェースエンジン２０７から受信し、該グラフィカルデータをヒューマンインタフェースモジュール１０２へ送信して、ヒューマンインタフェースモジュール１０２に、仮想画像を含むユーザインタフェースをユーザに提示させる。
【００３３】
一実施形態では、制御部２０１は、較正アプリケーション１０３の他のコンポーネントからデータを受信し、データ記憶装置２４３に該データを格納する。例えば、制御部２０１は、較正情報を含むデータを較正エンジン２０５から受信し、データ記憶装置２４３に該データを格納する。別の実施形態では、制御部２０１は、データ記憶装置２４３からデータを読み出し、較正アプリケーション１０３の他のコンポーネントへ該データを送信する。例えば、制御部２０１は、仮想情報を含むデータをデータ記憶装置２４３から読み出し、較正エンジン２０５に該読み出したデータを送信する。
【００３４】
画像配信モジュール２０３は、仮想オブジェクトが仮想画像面上に位置付けられるように見えるよう、ヒューマンインタフェースモジュール１０２のディスプレイに仮想オブジェクトを含むデジタル情報を表示する機能を提供するために、ソフトウェア及び／又はロジックを有しても良い。幾つかの実施形態では、画像配信モジュール２０３は、ＦＰＧＡ（field-programmable  gate  array）又はＡＳＩＣ（application-specific  integrated  circuit）を含むハードウェアを用いて実装できる。幾つかの実施形態では、画像配信モジュール２０３は、ハードウェアとプロセッサ２３５により実行可能なソフトウェアとの組み合わせを用いて実装できる。幾つかの実施形態では、画像配信モジュール２０３は、プロセッサ２３５により実行可能な命令セットである。幾つかの実装では、画像配信モジュール２０３は、メモリ２３７に格納され、プロセッサ２３５によりアクセス可能且つ実行可能である。幾つかの実装では、画像配信モジュール２０３は、プロセッサ２３５、メモリ２３７及び較正アプリケーション１０３の他のコンポーネントとバス２２０を介して協働し通信するために適応される。
【００３５】
一実施形態では、画像配信モジュール２０３は、仮想オブジェクトデータを含む光学情報を受信し又は生成し、制御部２０１は、ユーザインタフェースエンジン２０７に、ヒューマンインタフェースモジュール１０２のディスプレイで提示するための画像を生成するよう指示する。一実施形態では、画像配信モジュール２０３は、バックエンドサービスサーバ１０８から完全に、計算及び通信モジュール１０４から完全に、又はそれら両者から共同で、仮想オブジェクトデータを読み出す。例えば、仮想オブジェクトデータは、較正目的のために十字形の表現であり得る。別の例では、仮想オブジェクトデータは、対応する現実の銀行顧客に重ね合わせられる銀行顧客プロファイルデータであっても良い。
【００３６】
一実施形態では、画像配信モジュール２０３は、ユーザインタフェースエンジン２０７から、ヒューマンインタフェースモジュール１０２のディスプレイ上の仮想オブジェクトの現在位置に関連する命令を受信する。一実施形態では、画像配信モジュール２０３は、較正エンジン２０５へ、仮想オブジェクトの現在位置を含む情報を送信する。別の実施形態では、画像配信モジュール２０３は、データ記憶装置２４３に情報を格納する。
【００３７】
較正エンジン２０５は、ヒューマンインタフェースモジュール１２０を通じて閲覧されるとき、仮想オブジェクトが現実世界オブジェクトにオーバレイされ又は重ね合わされてユーザに見えるよう、ディスプレイ上にレンダリングされる仮想オブジェクトに関するユーザ入力に基づく較正を実行する機能を提供するために、ソフトウェア及び／又はロジックを有しても良い。較正エンジン２０５の機能及び動作は、以下に図３〜７を参照してより詳細に記載される。幾つかの実施形態では、較正エンジン２０５は、ＦＰＧＡ（field-programmable  gate  array）又はＡＳＩＣ（application-specific  integrated  circuit）を含むハードウェアを用いて実装できる。幾つかの実施形態では、較正エンジン２０５は、ハードウェアとプロセッサ２３５により実行可能なソフトウェアとの組み合わせを用いて実装できる。幾つかの実施形態では、較正エンジン２０５は、プロセッサ２３５により実行可能な命令セットである。幾つかの実装では、較正エンジン２０５は、メモリ２３７に格納され、プロセッサ２３５によりアクセス可能且つ実行可能である。幾つかの実装では、較正エンジン２０５は、プロセッサ２３５、メモリ２３７及び較正アプリケーション１０３の他のコンポーネントとバス２２０を介して協働し通信するために適応される。
【００３８】
一実施形態では、較正エンジン２０５は、ヒューマンインタフェースモジュール１０２のディスプレイから現実世界オブジェクトを配置するために深さセットを決定する。較正エンジン２０５は、深さセットからの各深さにおけるユーザ入力に基づき較正を実行する。例えば、較正エンジン２０５は、ヒューマンインタフェースモジュール１０２のディスプレイから現実世界オブジェクトが配置される、短距離／深さ（０．５メートル又は２ジオプター）、中距離／深さ（２．７５メートル又は０．３６３６ジオプター）、及び長距離／深さ（５メートル又は０．２ジオプター）において、較正手順を開始しても良い。一実施形態では、ヒューマンインタフェースモジュール１０２のディスプレイは、単一焦点面ディスプレイであり得る。別の実施形態では、ヒューマンインタフェースモジュール１０２のディスプレイは、複数焦点面ディスプレイであり得る。
【００３９】
幾つかの実施形態では、較正エンジン２０５は、ユーザの目からの現実世界オブジェクトの深さを決定する。一実施形態では、較正エンジン２０５は、関心のある現実世界オブジェクトを含む現実世界シーンのキャプチャされた画像を受信する。例えばシーン内で現実世界オブジェクトを識別する白黒パターンの基準マーカ等である。較正エンジン２０５は、キャプチャされた画像の深さマップを決定する。深さマップは、ユーザの目の視点からの現実世界オブジェクトの表面の距離に関連する情報を有しても良い。例えば、現実世界シーン内の現実世界オブジェクトの位置（例えば、Ｘ１、Ｙ１及びＺ１）は、３次元座標系を用いて記述でき、同じ座標系で目の位置（例えば、Ｘ２、Ｙ２及びＺ２）が記述できる。Ｚ値の原点がユーザの目にあり、座標系のＺ軸がユーザの目と現実世界オブジェクトとの間を直接指す線に沿う場合、深さは、ユーザの目と現実世界オブジェクトとの間のＺ軸に沿った距離（例えば、Ｚ１−Ｚ２）である。別の実施形態では、較正エンジン２０５は、ヒューマンインタフェースモジュール１０２に関連する深さセンサから、ユーザの目と現実世界オブジェクトとの間の距離の深さ値を受信するために結合される。深さセンサは、ヒューマンインタフェースモジュール１０２の部分又は別のシステム１１２の部分であっても良い。
【００４０】
幾つかの実施形態では、較正エンジン２０５は、現実世界オブジェクトがユーザにより知覚され得る深さセットからの各深さにおいて、ヒューマンインタフェースモジュール１０２のディスプレイに仮想オブジェクトをレンダリングするために較正を実行する。別の実施形態では、較正エンジン２０５は、現実世界オブジェクトの１又は複数の深さにおいてディスプレイに仮想オブジェクトをレンダリングするための較正を実行するために、ユーザ入力を受信する。現実世界オブジェクトは、ユーザにより物理距離測定ツールを用いて、ディスプレイから離れた異なる深さに配置されても良い。例えば、ユーザは、第１の短距離／深さ（０．５メートル又は２ジオプター）、第２の中距離／深さ（２．７５メートル又は０．３６３６ジオプター）、及び第３の長距離／深さ（５メートル又は０．２ジオプター）のうちの各々１つに、ディスプレイから離して現実世界オブジェクトを配置しても良い。較正アプリケーション１０３、特に画像配信モジュール２０３及びユーザインタフェースモジュール２０７は、仮想オブジェクトを現実世界オブジェクトを含む画像シーンにオーバレイして、ヒューマンインタフェースモジュール１０２のディスプレイに表示させる仮想オブジェクトは、仮想オブジェクトが現実世界オブジェクトの知覚される深さに位置するように及びユーザ入力に基づき現実世界オブジェクトに関連するように見えるように、レンダリングされる。仮想オブジェクトは、現実世界オブジェクトを含む画像シーンにオーバレイ又は重ね合わされると考えられても良い。
【００４１】
一実施形態では、較正エンジン２０５は、ディスプレイからの現実世界オブジェクトの深さが与えられる場合、視差を決定するためにユーザ入力に基づき深さ−視差較正を実行する。通常の場合には、視差は、図７を参照して後述するように、基準点に対するオフセットとして定められる。以下の議論で基準点は通常、スクリーンの中央にあると想定されるが、他の実施形態では、基準点はスクリーンのどこにあっても良いことが理解されるべきである。例えば、視差は、両眼視差、網膜歪覚、全眼視差、左目の網膜視差、右目の網膜視差、スクリーン視差、全スクリーン視差、左目のスクリーン視差、右目のスクリーン視差、等を含む多数の異なる種類を有し得るが、これらに限定されない。これらの異なる種類の視差は、図１０及び以下の説明を参照して良好に理解できる。ディスプレイのスクリーン視差は、例えば、ピクセル、サブピクセル、スクリーンサイズに対する比、視角、等で測定できる。一実施形態では、較正エンジン２０５は、特定のユーザについて深さパラメータとスクリーン視差パラメータとの間のマッピング関係を決定するために、１又は複数の深さにおいて深さ−視差較正を実行する。これは、仮想オブジェクトが知覚される仮想画像面が、現実世界オブジェクトの深さ／距離と異なる深さ／距離に存在し得るからである。ヒューマンインタフェースモジュール１０２のディスプレイを通じてユーザにより知覚されるとき現実世界オブジェクトに対してディスプレイ上の仮想オブジェクトを位置決めする技術は、深さパラメータとスクリーン視差パラメータとの間のマッピングに基づく。一実施形態では、仮想オブジェクトは、深さパラメータとスクリーン視差パラメータとの間のマッピングに基づき、仮想オブジェクトが現実世界オブジェクトの上にオーバレイされて見えるように、及びユーザの目が現実世界オブジェクトの深さに集中して仮想オブジェクトが現実世界オブジェクトに関連するように知覚するように、ディスプレイ上で位置決めされる。
【００４２】
図７を参照すると、深さと異なる視差パラメータとの間の関係が記載される。一実施形態では、ピンホールカメラを用いてモデル化される深さと異なる視差パラメータとの間の関係は、次式のように定式化できる。
【数１】
2015142383.tif 000003
【００４３】
ここで、Ｚは現実世界オブジェクトの深さを示し、ＩＰＤは瞳孔間距離を示し、ｌは左目の目標又は基準点の網膜視差を示し、ｒは右目の目標又は基準点の網膜視差を示し、ｆは目の焦点長を示す。全眼視差がδ＝ｌ＋ｒと定められる場合、次式が分かる。
【数２】
2015142383.tif 000004
【００４４】
一実施形態では、両眼光透過ディスプレイの全スクリーン視差ｄは、ｄ＝Ｌ＋Ｒとして定められる。ここで、Ｌは左目のスクリーン視差であり、Ｒは右目のスクリーン視差である。図７で、ｒが右目の網膜視差を示し、ｌが左目の網膜視差を示し、ＷＨが（例えば、ピクセル数で）仮想画像面幅を示し、ｗｌ及びｗｒがそれぞれ左目網膜及び右目網膜の部分の幅を示し、両眼光学透過ディスプレイの視野（field  of  view：ＦｏＶ）に対応する場合、両眼光学透過ディスプレイのこれらの要素の間の関係は、次式のように記述できる。
【数３】
2015142383.tif 000005
【数４】
2015142383.tif 000006
【００４５】
ピンホールカメラモデルの微分、
【数５】
2015142383.tif 000007
から、両眼光学透視ディスプレイの全スクリーン視差は次式のように記述できる。
【数６】
2015142383.tif 000008
【００４６】
ここで、
【数７】
2015142383.tif 000009
は定数である。
【００４７】
一実施形態では、定数Ｃの値は、透視ディスプレイを介して人間の目の知覚される深さに影響を与える１又は複数の要素に基づき計算された値からの微分であっても良い。したがって、特定のユーザについてのマッピングを決定するために、ユーザ入力に基づき深さ−視差較正を提供することは有利である。較正中に、ユーザが仮想コンテンツを単一画像として知覚する視差範囲（融合範囲）、及び仮想オブジェクトが現実世界オブジェクトに深さが揃えられる視差範囲（許容範囲）を決定することは有利であり得る。
【００４８】
一実施形態では、較正エンジン２０５は、多数の深さ（例えば、試行）における深さ−視差較正のための較正データを受信し、深さパラメータと視差パラメータとの間の関係をマッピングする回帰アルゴリズムを適用する。例えば、較正エンジン２０５は、線形最小二乗回帰、一般最小二乗回帰、平均二乗誤差、等を用いて、較正データに対して分析を実行しても良い。一実施形態では、較正エンジン２０５は、深さと視差との間の線形であるマッピングを生成しても良い。例えば、較正エンジン２０５が較正データに線形回帰を適用するとき、マッピングは線形マッピングに対応する。一実施形態では、第１のユーザの較正データのマッピングの勾配は定数Ｃに対応しても良い。別の実施形態では、較正エンジン２０５は、次に、第２のユーザの瞳孔間距離を用いることにより、第２のユーザの定数Ｃの値を推定でき、それによりユーザ毎の較正を廃止する。
【００４９】
一実施形態では、較正エンジン２０５は、ユーザ入力に基づき２Ｄ位置較正を実行して、仮想オブジェクトが現実世界オブジェクトに重ね合わされて又は関連付けられてユーザの目に知覚され得るディスプレイ上のスクリーンピクセル座標を決定する。一実施形態では、較正エンジン２０５は、特定のユーザについて現実世界オブジェクトの３Ｄ座標と仮想オブジェクトが位置決めされ得るディスプレイ上の２Ｄスクリーンピクセル座標との間のマッピング関係を決定するために、１又は複数の深さで２Ｄ位置較正を実行する。一実施形態では、較正エンジン２０５は、深さセンサ（例えば、飛行時間、構造光、平面光カメラ、レーザ範囲探知器、等）を介して、又は伝統的なデジタルカメラを介して、現実世界シーン内の現実世界オブジェクトの３Ｄ座標を取得しても良い。幾つかの実施形態では、現実世界オブジェクトは、３Ｄ座標の精度を増大するために、検出可能特徴（例えば、白黒パターンの基準マーカ）を有しても良い。
【００５０】
一実施形態では、カメラとしてモデル化された人間の目についての、２Ｄスクリーンピクセル座標と３Ｄ現実世界オブジェクト座標との間の対応マッピングは、次式のように定式化できる。
【数８】
2015142383.tif 000010
ここで
【数９】
2015142383.tif 000011
である。
【００５１】
ここで、（Ｘ，Ｙ，Ｚ）は現実世界シーン内の３Ｄ現実世界オブジェクト点の座標であり、ｓはスケーリング係数であり、（ｕ，ｖ）はヒューマンインタフェースモジュール１０２のディスプレイ上でレンダリングされる仮想オブジェクトのピクセルスクリーン座標であり、（ｆｘ，ｆｙ）はピクセル単位で表現される目の（水平及び垂直）焦点長であり、（ｃｘ，ｃｙ）は画像中央にある主点又は基準点であり、［Ｒ｜ｆ］は３Ｄ点座標を２Ｄスクリーンピクセル座標に変換する結合回転−変換行列である。
【００５２】
一実施形態では、較正エンジン２０５は、多数の深さ（例えば、試行）における２Ｄ位置較正のための較正データを受信し、現実世界オブジェクトの３Ｄ座標とディスプレイ上の２Ｄスクリーンピクセル座標との間の関係をマッピングする回帰アルゴリズムを適用する。例えば、較正エンジン２０５は、Levenberg-Marquardt最適化アルゴリズム、Nelder-Mead最適化アルゴリズム、等を用いて較正データに対する分析を実行しても良い。
【００５３】
一実施形態では、較正エンジン２０５は、ユーザの対を成す目について、深さ−視差較正手順を実行する。ユーザの対を成す目についての深さ−視差較正は、ユーザの目からの変化する深さのセットのうちの第１の深さに配置される現実世界オブジェクトから開始する。一実施形態では、ユーザは、深さ−視差較正手順の間、現実世界オブジェクトに焦点を合わせる。
【００５４】
一実施形態では、較正エンジン２０５は、仮想オブジェクトが特定の両眼スクリーン視差値を有しディスプレイの立体視で表示されていることを確認するユーザ入力を受信する。較正エンジン２０５は、ディスプレイ上の仮想オブジェクトがユーザの融合立体視領域内に含まれるまで、仮想オブジェクトを移動するためのユーザ入力を受信し、ユーザ入力に基づきディスプレイ上の仮想オブジェクトを閲覧するための両眼スクリーン視差値を決定する。融合立体視領域は、ユーザの脳が２つの目により見える別個の画像を同じオブジェクトとして解釈し及びオブジェクトの深さを知覚する領域として定めることができる。この融合立体視領域は、Panum融合領域として表されても良い。両眼スクリーン視差値が大きすぎる又は小さすぎるとき、ユーザは、脳が２つの目の中の別個の画像を融合できない複視を経験し得る。一実施形態では、較正エンジン２０５は、ユーザの融合立体視領域内で仮想オブジェクトを移動するために、ユーザ入力を受信する。仮想オブジェクトは、ディスプレイ上の融合立体視領域内で、現実世界オブジェクトに深さを揃えるように移動される。一実施形態では、較正エンジン２０５は、較正が完了したか否かを決定する。例えば、較正エンジン２０５は、ユーザは融合画像、及び現実オブジェクトと深さの揃った仮想オブジェクトが見えることの指示をユーザから受信しても良い。較正が完了していないと決定された場合、較正エンジン２０５は、更なる較正のためにユーザ入力を受信し続ける。一実施形態では、較正エンジン２０５は、深さのセットからの他の深さについて深さ−視差較正手順を繰り返し、深さのセットの各深さについて集められた較正データ、両眼視差値をデータ記憶装置２４３に格納する。別の実施形態では、較正エンジン２０５は、深さのセットの各深さについて集められた較正データに基づき、深さと両眼スクリーン視差との間のマッピングを決定する。
【００５５】
別の実施形態では、較正エンジン２０５は、ユーザの別個の目を順次用いて、別個の目の深さ−視差較正手順を実行する。別個の目についての深さ−視差較正は、ユーザの別個の目からの変化する深さのセットのうちの第１の深さに配置される現実世界オブジェクトから開始する。一実施形態では、較正エンジン２０５は、仮想オブジェクトが特定の視差値を有して表示されることを確認するユーザ入力を受信する。
【００５６】
一実施形態では、較正エンジン２０５は、ユーザの右目が閉じられ又は閉塞されている間にユーザの左目を用いて仮想オブジェクトの２Ｄスクリーン位置を現実世界オブジェクトに揃えるために、ディスプレイ上で仮想オブジェクトを移動させるために、ユーザ入力を受信する。一実施形態では、較正エンジン２０５は、左目を用いたユーザ入力に基づく２Ｄ位置調整が完了したか（例えば、仮想オブジェクトが現実世界オブジェクトに揃う）否かを決定する。左目を用いた位置調整は、較正アプリケーション１０３により、又はユーザからの入力に基づき完了したと決定される。２Ｄ位置調整が完了していないと決定された場合、較正エンジン２０５は、２Ｄ位置調整が完了したと決定されるまで、又は較正アプリケーション１０３の時間制限閾に達するまで、更なる整列調整のためにユーザ入力を受信し続ける。別個の目の深さ−視差較正の第２の部分として、較正エンジン２０５は、ユーザの左目が閉じられ又は閉塞されている間にユーザの右目を用いて仮想オブジェクトを閲覧するスクリーン視差値を決定するために、第１の深さにあるディスプレイ上の仮想オブジェクトを移動するために、ユーザ入力を受信する。ユーザ入力は、閲覧者が両目で同じ画像を見るように、仮想目標のスクリーン視差を調整するために用いられる。一実施形態では、較正エンジン２０５は、右目を用いたユーザ入力に基づく視差調整が完了したか（例えば、２つの目により別個に見えるとき、仮想オブジェクトが現実世界オブジェクトに揃う）否かを決定する。位置調整と同様に、右目のみを用いる視差調整は、較正アプリケーション１０３により、又はユーザからの入力に基づき完了したと決定できる。較正アプリケーション１０３により又はユーザからの入力に基づき決定されたように、右目を用いるユーザ入力に基づく視差調整が完了した場合、較正エンジン２０５は、スクリーン視差を決定する。視差調整が完了していないと決定された場合、較正エンジン２０５は、視差調整が完了したと決定されるまで、又は較正アプリケーション１０３の時間制限閾に達するまで、更なる視差調整のためにユーザ入力を受信し続ける。一実施形態では、較正エンジン２０５は、深さのセットからの他の深さについて深さ−視差較正手順を繰り返し、深さのセットの各深さについて集められた較正データ、視差値をデータ記憶装置２４３に格納する。別の実施形態では、較正エンジン２０５は、深さのセットの各深さについて集められた較正データに基づき、深さとスクリーン視差との間のマッピングを決定する。上述の処理は左目を用いてスクリーン位置を決定し、右目を用いてスクリーン視差を決定するとして記載されたが、スクリーン位置は右目を用いて決定され、スクリーン視差は左目を用いて決定されても良いことが理解されるべきである。さらに、異なる目又はそれらの組み合わせは、スクリーン位置を決定するため及びスクリーン視差を決定するために異なる深さにおいて用いられ得る。したがって、同じ深さについての情報が後に対にされマッピングのために用いられる限り混合され得る本方法により想定される右、左及び深さに基づく種々の順序が存在する。
【００５７】
一実施形態では、較正エンジン２０５は、結合３Ｄ較正手順を実行する。結合３Ｄ較正手順は、以下を有しても良い。１）深さ−視差較正、及び２）３Ｄ位置較正、である。例えば、較正エンジン２０５は、ヒューマンインタフェースモジュール１０２のディスプレイ上で仮想オブジェクトを移動するためのユーザ入力を受信して、仮想オブジェクトをレンダリングするための視差を決定し、及び仮想オブジェクトが現実世界オブジェクトと位置及び深さにおいて揃うように、ディスプレイ上の仮想オブジェクトの２Ｄ位置を揃える。結合３Ｄ較正手順の２つの実施形態があることが理解されるべきである。第１の実施形態は、先ず深さ−視差較正を実行し、次に２Ｄ位置較正を実行する。２Ｄ位置較正の間に、第１の深さ−視差較正ステップからの較正された視差は、対応する深さにおいて仮想オブジェクトをレンダリングするために用いることができる。第２の実施形態は、２Ｄ位置較正及び深さ−視差較正を同時に一緒に実行する。ここに記載されない他の実施形態は、深さ−視差較正及び２Ｄ位置較正を異なる順序で実行しても良いことが理解されるべきである。
【００５８】
第１の実施形態では、較正エンジン２０５は、先ず深さ−視差較正を決定し、次に２Ｄ位置マッピング中に対応する深さにおいて仮想オブジェクトをレンダリングするために深さ−視差較正からの較正された視差を用いることにより、結合３Ｄ較正手順を実行する。結合３Ｄ較正手順の第１の実施形態は、ユーザの対を成す目を用いる。対を成す目についての結合３Ｄ較正は、ユーザの目からの変化する深さのセットのうちの第１の深さに配置される現実世界オブジェクトから開始する。一実施形態では、ユーザは、結合３Ｄ較正中、現実世界オブジェクトに焦点を合わせる。
【００５９】
結合３Ｄ較正手順の第１の実施形態では、較正エンジン２０５は、先ず、深さ視差を決定することにより、深さ−視差較正を実行する。次に、較正エンジン２０５は、深さ−視差較正からのマッピングされた視差を用いて、右の深さにおいて仮想目標をレンダリングする。次に、較正エンジン２０５は、ディスプレイ上で仮想オブジェクトを移動するためのユーザ入力を受信し、ディスプレイ上の仮想オブジェクトの２Ｄピクセル位置を現実世界オブジェクトに揃える。一実施形態では、較正エンジン２０５は、較正が完了したか（例えば、ユーザは現実世界オブジェクトと深さ及び位置の揃った仮想オブジェクトが見える）否かを決定する。較正が完了した場合、視差値は、深さと共に格納され又は記録される。上述のように、較正は、較正アプリケーション１０３により又はユーザからの入力に基づき完了したと決定できる。較正が完了していないと決定された場合、較正エンジン２０５は、更なる較正のためにユーザ入力を受信し続ける。一実施形態では、較正エンジン２０５は、深さのセットからの他の深さについて結合３Ｄ較正手順を繰り返し、深さのセットの各深さについて集められた較正データをデータ記憶装置２４３に格納する。別の実施形態では、較正エンジン２０５は、深さと視差との間の第１のマッピング、及び現実世界オブジェクトの３Ｄ座標とディスプレイ上の２Ｄスクリーンピクセル座標との間の第２のマッピングを、深さのセットの各深さについて集められた較正データに基づき決定する。
【００６０】
３Ｄ較正手順の第２の実施形態では、較正エンジン２０５は、２Ｄ位置較正及び深さ−視差較正を一緒に決定することにより、結合３Ｄ較正手順を実行する。この代替は、ユーザの別個の目を用いた結合３Ｄ較正手順として説明できる。別個の目についての結合３Ｄ較正は、ヒューマンインタフェースモジュール１０２からの変化する深さのセットのうちの第１の深さに配置される現実世界オブジェクトから開始する。本実施形態では、較正エンジン２０５は、ユーザの右目が閉じられ又は閉塞されている間に、ユーザの左目を用いて仮想オブジェクトの２Ｄスクリーンピクセル位置を現実世界オブジェクトに先ず揃えるために、ディスプレイ上で仮想オブジェクトを移動させるためのユーザ入力を受信する。次に、較正エンジン２０５は、ユーザの右目が閉じられ又は閉塞されている間に、ユーザの左目を用いてディスプレイ上の仮想オブジェクトをレンダリングするための視差値を決定するために、ディスプレイ上の仮想オブジェクトを第１の深さに移動するためのユーザ入力を受信する。一実施形態では、較正エンジン２０５は、左目を用いた較正が完了したか（例えば、ユーザは現実世界オブジェクトと深さ及び位置の揃った仮想オブジェクトが見える）否かを決定する。上述のように、較正は、較正アプリケーション１０３により又はユーザからの入力に基づき完了したと決定できる。本方法及び他の方法では、較正が完了したか否かの決定は、単にユーザ入力のみに基づき決定できる。左目を用いる較正が完了していないと決定された場合、較正エンジン２０５は、左目を用いる較正が完了したと決定されるまで、又は較正アプリケーション１０３の時間制限閾に達するまで、更なる較正のためにユーザ入力を受信し続ける。上述のステップで左目について決定された較正情報は、後の使用のために格納できる。特に、左目データは、幾つかの実施形態では、以下に詳述するように２Ｄ較正回帰を実行するために用いられる。別個の目についての結合３Ｄ較正の第２の部分として、較正エンジン２０５は、ユーザの左目が閉じられ又は閉塞されている間に、ユーザの右目を用いて仮想オブジェクトの２Ｄスクリーンピクセル位置を現実世界オブジェクトに先ず揃えるために、ディスプレイ上で仮想オブジェクトを移動させるためのユーザ入力を受信する。次に、較正エンジン２０５は、ユーザの左目が閉じられ又は閉塞されている間に、ユーザの右目を用いてディスプレイ上の仮想オブジェクトをレンダリングするための視差値を決定するために、ディスプレイ上の仮想オブジェクトを第１の深さに移動するためのユーザ入力を受信する。一実施形態では、較正エンジン２０５は、右目を用いた較正が完了したか（例えば、ユーザは現実世界オブジェクトと深さ及び位置の揃った仮想オブジェクトが見える）否かを決定する。上述のように、較正は、較正アプリケーション１０３により又はユーザからの入力に基づき完了したと決定できる。右目を用いる較正が完了していないと決定された場合、較正エンジン２０５は、左目を用いる較正が完了したと決定されるまで、又は較正アプリケーション１０３の時間制限閾に達するまで、更なる較正のためにユーザ入力を受信し続ける。上述のステップで右目について決定された較正情報は、後の使用のために格納できる。特に、右目データは、幾つかの実施形態では、以下に詳述するように３Ｄ較正回帰を実行するために用いられる。一実施形態では、較正エンジン２０５は、深さのセットからの他の深さについて３Ｄ較正手順を繰り返し、深さのセットの各深さについて集められた較正データをデータ記憶装置２４３に格納する。別の実施形態では、較正エンジン２０５は、深さと視差との間の第１のマッピング、及び現実世界オブジェクトの３Ｄ座標とディスプレイ上の２Ｄスクリーンピクセル座標との間の第２のマッピングを、深さのセットの各深さについて集められた較正データに基づき決定する。
【００６１】
一実施形態では、較正エンジン２０５は、ユーザ入力に基づきヒューマンインタフェースモジュール１０２のユーザインタフェース上で仮想目標を移動するための命令をユーザインタフェースエンジン２０７へ送信する。
【００６２】
ユーザインタフェースエンジン２０７は、ユーザインタフェースをユーザに提供するソフトウェア及び／又はロジックを有しても良い。幾つかの実施形態では、ユーザインタフェースエンジン２０７は、ＦＰＧＡ（field-programmable  gate  array）又はＡＳＩＣ（application-specific  integrated  circuit）を含むハードウェアを用いて実装できる。幾つかの実施形態では、ユーザインタフェースエンジン２０７は、ハードウェアとプロセッサ２３５により実行可能なソフトウェアとの組み合わせを用いて実装できる。幾つかの実施形態では、ユーザインタフェースエンジン２０７は、プロセッサ２３５により実行可能な命令セットである。幾つかの実装では、ユーザインタフェースエンジン２０７は、メモリ２３７に格納され、プロセッサ２３５によりアクセス可能且つ実行可能である。幾つかの実装では、ユーザインタフェースエンジン２０７は、プロセッサ２３５、メモリ２３７及び較正アプリケーション１０３の他のコンポーネントとバス２２０を介して協働し通信するために適応される。
【００６３】
一実施形態では、ユーザインタフェースエンジン２０７は、画像配信モジュール２０３から命令を受信し、ヒューマンインタフェースモジュール１０２のディスプレイに仮想オブジェクト（又は仮想オブジェクトの画像）を描写するグラフィカルインタフェースを生成する。別の実施形態では、仮想オブジェクトを移動し及び整列を示すための較正入力を提供するヒューマンインタフェースモジュール１０２のユーザに応答して、ユーザインタフェースエンジン２０７は、画像配信モジュール２０３から仮想オブジェクトの現在位置を受信する。ユーザインタフェースエンジン２０７は、ユーザ較正入力に基づき、仮想オブジェクトを新しい位置へ移動するグラフィカルインタフェースを生成する。ユーザインタフェースエンジン２０７は、通信ユニット２４１を介してデータをヒューマンインタフェースモジュール１０２のディスプレイへ送信し、ディスプレイに仮想オブジェクトの移動及び整列を表示させる。
【００６４】
図３は、較正方法３００の一実施形態を示すフロー図である。較正アプリケーション１０３は、制御部２０１、画像配信モジュール２０３、較正エンジン２０５及びユーザインタフェースエンジン２０７を有しても良い。３０２で、画像配信モジュール２０３は、ヒューマンインタフェースモジュール１０２のディスプレイ上で現実世界オブジェクトの上にオーバレイすべき仮想オブジェクトを識別する。例えば、仮想オブジェクト（又は仮想オブジェクトの画像）は、十字形、円形の点、又は他の画像であり得る。別の例では、現実世界オブジェクトは、現実世界オブジェクトを識別する白黒パターンの基準マーカを有しても良い。本方法及び以下の他の方法で用いられるように、「仮想オブジェクトがヒューマンインタフェースモジュール１０２のディスプレイ上で現実世界オブジェクトの上にオーバレイされる」とき、これは、通常、較正アプリケーション１０３が、ヒューマンインタフェースモジュール１０２のディスプレイで現実世界オブジェクトに対して位置決めされた仮想オブジェクトをレンダリングすることを表す。３０４で、較正エンジン２０５は、ディスプレイから１つの深さ又は複数の深さにある現実世界オブジェクトを検出する。他の実施形態では、較正エンジン２０５は、深さセンサのような種々の外部センサから、又はユーザから、現実世界オブジェクトの深さを受信しても良い。一実施形態では、ディスプレイは、単一焦点面ディスプレイ又は複数焦点面ディスプレイであり得る。３０６で、各深さについて、較正エンジン２０５は、オーバレイするために仮想オブジェクトをレンダリングするために、ディスプレイを較正するためのユーザ入力を受信する。ユーザ入力は、例えばユーザインタフェースエンジン２０７を通じて受信されても良い。例えば、ディスプレイを較正するユーザ入力は、ヒューマンインタフェースモジュール１０２のディスプレイ上でレンダリングする仮想オブジェクトのサイズ、深さ及び位置を決定するために用いることができる。３０８で、較正エンジン２０５は、ディスプレイ上で、仮想オブジェクトを現実世界オブジェクトの上にオーバレイする。例えば、仮想オブジェクトは、ディスプレイ上で、現実世界オブジェクトの上に（又は特定の他の関係で）オーバレイされ、仮想オブジェクトを現実世界オブジェクトに関連付ける。理解されるべきことに、この処理ステップは、較正が完了するまで繰り返し及び反復的に実行されても良い。
【００６５】
図４は、視差範囲を決定する視差較正方法４００の一実施形態を示すフロー図である。上述のように、視差は、スクリーンピクセル単位での基準点へのオフセットである。基準点は、通常、スクリーンの中心にあると想定されるが、他の実施形態ではスクリーン上のどこでも良い。幾つかの実施形態では、方法４００は、現実世界オブジェクトを検出するステップと、ユーザの目からの現実世界オブジェクトの深さを決定するステップと、を有する。幾つかの実施形態では、ヒューマンインタフェースモジュール１０２ｎは又はそのコンポーネントのうちの１つ（例えば、較正エンジン２０５）は、画像認識ソフトウェア又はハードウェアを用いてオブジェクトを検出しても良い。認識は、オブジェクト上のシンボル（例えば、白黒の十字、目標、又は任意の他の予め決定された形状、色若しくはパターン）により実現されても良い。幾つかの実施形態では、ヒューマンインタフェースモジュール１０２ｎ又はそのコンポーネントのうちの任意のものによる現実世界オブジェクトの検出は任意であっても良く、むしろ、ユーザが現実世界オブジェクトを識別しヒューマンインタフェースモジュール１０２ｎを用いて現実世界オブジェクトの指示を提供しても良い。更に他の実施形態では、ユーザが現実世界オブジェクトの深さを指定しても良い。他の実施形態では、較正エンジン２０５は、本願明細書のどこかに記載される検出及び測定機構を用いてユーザの目からの現実世界オブジェクトの深さを自動的に決定するために較正され、較正エンジン２０５に深さ情報を提供するために結合されても良い。他の実施形態では、較正エンジン２０５は、ヒューマンインタフェースモジュール１０２ｎを通じて深さを提供するために、ユーザに依存しても良い。ユーザは、例えば測定テープ又は他の測定装置を用いて、ヒューマンインタフェースモジュール１０２ｎからの現実世界オブジェクトの深さを物理的に測定しても良い。深さは、飛行時間センサ、構造光センサ、レーザ範囲探知器、平面光カメラ、等のような深さセンサを用いることにより得ることもできる。
【００６６】
４０４で、方法４００は、ヒューマンインタフェースモジュール１０２ｎのディスプレイ上で、現実世界オブジェクトと一緒に仮想オブジェクトの画像をレンダリングするステップを有する。種々の実施形態では、較正エンジン２０５、画像配信モジュール２０３、又はシステム１００の特定の他のコンポーネントは、仮想オブジェクトの画像をレンダリングしても良い。幾つかの実施形態では、仮想オブジェクトの単一の画像が、単一のディスプレイでレンダリングされても良い。例えば、単眼透視ディスプレイは、ディスプレイ上でレンダリングされる単一画像を有しても良い。他の実施形態では、両眼透視ディスプレイは、右又は左ディスプレイ上に表示される単一画像を有しても良い。他の実施形態では、仮想オブジェクトの複数の画像、又は複数の仮想オブジェクトの複数の画像が、単一のディスプレイ上に、又は複数のディスプレイ上にレンダリングされても良い。例えば、一実施形態では、ヒューマンインタフェースモジュール１０２ｎは、仮想オブジェクトの画像が右及び左ディスプレイの各々でレンダリングされ得る両眼光透過ディスプレイを有しても良い。別の実施形態では、ヒューマンインタフェースモジュール１０２ｎは、人が両目で見ることができ及び１つの画像が各目の視野内でレンダリングされるよう仮想オブジェクトが単一のディスプレイ上で２回レンダリングされ得る単一の透視ディスプレイを有しても良い。
【００６７】
４０５で、較正エンジン２０５は、ディスプレイ又はユーザの目からの現実世界オブジェクトの深さのセットを決定する。種々の実施形態では、深さのセットは、１より多い任意の数であっても良い。上述のように、一実施形態は、３個の深さのセットを有する。他の実施形態では、較正エンジン２０５は、深さセンサのような種々の外部センサから、又はユーザから、現実世界オブジェクトの深さを受信しても良い。例えば、較正エンジン２０５は、現実世界オブジェクトのキャプチャされた画像から、深さマップを決定する。深さマップは、ユーザの目からの現実世界オブジェクトの表面の距離に関連する情報を有しても良い。
【００６８】
４０６で、方法４００は、目標範囲の境界が決定されるまで、ディスプレイ上の仮想オブジェクトの画像の位置を調整するためのユーザ入力を受信するステップを有する。４０８で、較正アプリケーション１０３は、範囲境界が識別されるまで、ユーザ入力を受信し続けても良い。例えば、ユーザは、スクリーン視差値が識別され及び１又は複数の範囲境界に関連付けられるよう、仮想オブジェクトの画像の位置を移動するよう指示される。較正アプリケーション１０３又はそのコンポーネントのうちの１つは、方法４００を通じて任意の点でユーザ入力を受信するよう較正されても良い。較正アプリケーション１０３は、視差が目標範囲内に又は目標範囲の境界上に含まれるまで、視差、したがってディスプレイ上の仮想オブジェクトの画像の位置を調整しても良い。幾つかの実施形態では、較正アプリケーション１０３は、仮想オブジェクト、したがって視差が目標範囲内に又は目標範囲の境界上に含まれるまで、ユーザがディスプレイ上の仮想オブジェクトを移動する又は移動を停止するための入力を供給することを要求するために、ユーザへの指示を生成する信号を提供しても良い。幾つかの実施形態では、本願明細書のどこか、例えば図５を参照して記載するように、目標範囲の近端境界及び遠端境界は、ユーザの融合立体視領域の近端境界及び遠端境界に対応しても良い。幾つかの実施形態では、近端境界及び遠端境界は、現実オブジェクトのユーザの目までの距離に関する。
【００６９】
幾つかの実施形態では、ユーザが入力を提供すると、画像は、ディスプレイ上の複数の位置でユーザに見えても良い。各位置は、対応するスクリーンピクセル視差値を有する。複数の位置は、例えば、近端境界、遠端境界、近端境界より近い又は遠端境界より遠い１又は複数の位置、近端境界と遠端境界との間の１又は複数の位置、融合又は融和した位置、画像が２つの画像に分かれる位置、等を有しても良い。ユーザ入力に応答して、画像は、目標範囲の境界上に又は前述の位置のうちの１つに含まれるよう、移動しても良い。
【００７０】
方法４００は、４１０で、目標範囲の近端境界及び／又は遠端境界に対応する視差値を決定するステップを有し、４１２で、深さと視差範囲境界との間のマッピングを決定しても良い。幾つかの実施形態では、較正エンジン２０５は、本願明細書のどこかに記載される方法を用いて視差値を決定する。幾つかの実施形態では、較正エンジン２０５は、本願明細書のどこかに記載される方法を用いて深さ及び視差範囲境界をマッピングしても良い。幾つかの実施形態では、方法４００の全部又は一部は、深さの範囲に亘る較正が決定できるよう、現実世界オブジェクトの深さのセットについて繰り返されても良い。幾つかの実施形態では、単一の現実世界オブジェクトは、較正処理中に更なる深さへと移動されても良い。他の実施形態では、較正処理で使用するために、複数の現実世界オブジェクトが、それぞれ深さのセットからの１つの深さに、配置されても良い。種々のアルゴリズムが、方法４００が実行された深さ以外の更なる深さを推定するために用いられても良い。
【００７１】
図５は、ユーザの融合立体視領域の近端境界及び遠端境界に対応する視差の範囲を決定する視差較正方法５００の一実施形態を示すフロー図である。幾つかの実施形態では、方法５００は、５０２で、現実世界オブジェクトを検出するステップと、ユーザの目からの現実世界オブジェクトの深さを決定するステップと、を有しても良い。幾つかの実施形態では、ヒューマンインタフェースモジュール１０２ｎは又はそのコンポーネントのうちの１つ（例えば、較正エンジン２０５）は、画像認識ソフトウェア又はハードウェアを用いてオブジェクトを検出しても良い。認識は、オブジェクト上のシンボル（例えば、白黒の十字、目標、又は任意の他の予め決定された形状、色若しくはパターン）により実現されても良い。幾つかの実施形態では、ヒューマンインタフェースモジュール１０２ｎ又はそのコンポーネントのうちの任意のものによる現実世界オブジェクトの検出は任意であっても良く、むしろ、ユーザが現実世界オブジェクトを識別しヒューマンインタフェースモジュール１０２ｎを用いて現実世界オブジェクトの指示を提供しても良い。幾つかの実施形態では、ユーザが現実世界オブジェクトの深さを指定しても良い。幾つかの実施形態では、較正エンジン２０５は、本願明細書のどこかに記載される検出及び測定機構を用いて、ヒューマンインタフェースモジュール１０２ｎからの現実世界オブジェクトの深さを自動的に決定するよう較正されても良い。他の実施形態では、較正エンジン２０５は、ヒューマンインタフェースモジュール１０２ｎを通じて深さを提供するために、ユーザに依存しても良い。例えば、ユーザは、測定テープ又は他の測定装置を用いて、ユーザの目からの現実世界オブジェクトの深さを物理的に測定しても良い。深さは、飛行時間センサ、構造光センサ、レーザ範囲探知器、平面光カメラ、等のような深さセンサを用いることにより得ることもできる。
【００７２】
５０４で、方法５００は、ヒューマンインタフェースモジュール１０２ｎのディスプレイ上で、現実世界オブジェクトと一緒に仮想オブジェクトの画像をレンダリングするステップを有する。種々の実施形態では、較正エンジン２０５、画像配信モジュール２０３、又はシステム１００の特定の他のコンポーネントは、仮想オブジェクトの画像をレンダリングしても良い。幾つかの実施形態では、仮想オブジェクトの単一の画像が、単一のディスプレイでレンダリングされても良い。例えば、単眼透視ディスプレイは、ディスプレイでレンダリングされる単一画像を有しても良く、あるいは両眼光透視ディスプレイは右若しくは左ディスプレイで表示される単一画像を有しても良い。他の実施形態では、仮想オブジェクトの複数の画像、又は複数の仮想オブジェクトの複数の画像が、単一のディスプレイ上に、又は複数のディスプレイ上にレンダリングされても良い。例えば、一実施形態では、ヒューマンインタフェースモジュール１０２ｎは両眼光透過ディスプレイを有しても良く、仮想オブジェクトの画像は右及び左ディスプレイの各々で１回レンダリングされても良い。別の実施形態では、ヒューマンインタフェースモジュール１０２ｎは、人が両目で見ることができ及び１つの画像が各目の視野内でレンダリングされるよう仮想オブジェクトが単一のディスプレイ上で２回レンダリングされ得る単一の透視ディスプレイを有しても良い。
【００７３】
５０６で、方法５００は、画像がユーザの視野内で融合されるまで、ディスプレイ上の仮想オブジェクトの画像の位置を調整するためのユーザ入力を受信するステップを有する。画像は、融合立体視領域内のユーザの視野内で融合されて現れる。融合立体視領域の境界は、ユーザ又は較正アプリケーション１０３により、画像がもはや融合されない又は融和されない位置として決定できる。較正アプリケーション１０３は、ブロック４０６に関して上述したように、仮想オブジェクトの画像を閲覧するためにディスプレイを調整しても良い。しかしながら、さらに、ユーザから受信される入力は、仮想オブジェクトの画像がユーザの視野内で融合されることの指示を有する。ユーザは、両目の焦点を現実世界オブジェクトに合わせているユーザが、画像が融合立体視領域内に含まれるまで仮想オブジェクトの画像の位置を調整するとき、仮想オブジェクトの画像が融合されるときを決定しても良い。幾つかの実施形態では、システム１００のコンポーネント（例えば、ユーザインタフェースエンジン２０７）は、較正中に両目を開け現実世界オブジェクトに焦点を合わせるよう、ユーザに指示を伝達しても良い。較正エンジン２０５が、ユーザ入力を用いて、ユーザの融合立体視領域の近端境界を決定すると、５０８で、較正エンジン２０５が仮想オブジェクトの画像が融合／融和する深さ、及び仮想オブジェクトの画像が複視に分かれる深さを決定するまで、較正エンジン２０５はユーザからの入力を受信し続けても良い。
【００７４】
方法５００は、５１０でユーザの融合立体視領域の近端境界及び／又は遠端境界に対応する視差値を決定するステップと、５１２で深さと視差範囲境界との間のマッピングを決定するステップと、を有する。幾つかの実施形態では、較正エンジン２０５は、本願明細書のどこかに記載される方法を用いて視差値を決定する。幾つかの実施形態では、較正エンジン２０５は、本願明細書のどこかに記載される方法を用いて深さ及び視差範囲境界をマッピングしても良い。幾つかの実施形態では、方法５００の全部又は一部は、深さの範囲に亘る較正が決定できるよう、現実世界オブジェクトの深さのセットについて繰り返されても良い。幾つかの実施形態では、単一の現実世界オブジェクトは、較正処理中に更なる深さへと移動されても良い。他の実施形態では、較正処理で使用するために、複数の現実世界オブジェクトが、それぞれ深さのセットからの１つの深さに、配置されても良い。種々のアルゴリズムが、方法５００が実行された深さ以外の更なる深さを推定するために用いられても良い。さらに、理解されるべきことに、深さと視差範囲との間のマッピングを決定するステップは、定数Ｃの決定について上述したように線形であり、本開示の方法は、近端視差境界について第１の定数、及び遠端境界について第２の定数を推定しても良い。
【００７５】
図６は、ユーザの視差許容範囲に対応する視差範囲を決定する視差較正方法６００の一実施形態を示すフロー図である。幾つかの実施形態では、方法６００は、６０２で、現実世界オブジェクトを検出するステップと、ユーザの目からの現実世界オブジェクトの深さを決定するステップと、を有しても良い。幾つかの実施形態では、ヒューマンインタフェースモジュール１０２ｎは又はそのコンポーネントのうちの１つ（例えば、較正エンジン２０５）は、画像認識ソフトウェア又はハードウェアを用いてオブジェクトを検出しても良い。認識は、オブジェクト上のシンボル（例えば、白黒の十字、目標、又は任意の他の予め決定された形状、色若しくはパターン）により実現されても良い。幾つかの実施形態では、ヒューマンインタフェースモジュール１０２ｎ又はそのコンポーネントのうちの任意のものによる現実世界オブジェクトの検出は任意であっても良く、むしろ、ユーザが現実世界オブジェクトを識別しヒューマンインタフェースモジュール１０２ｎを用いて現実世界オブジェクトの指示を提供しても良い。幾つかの実施形態では、ユーザが現実世界オブジェクトの深さを指定しても良い。幾つかの実施形態では、較正エンジン２０５は、本願明細書のどこかに記載される検出及び測定機構を用いて、ヒューマンインタフェースモジュール１０２ｎからの現実世界オブジェクトの深さを自動的に決定するよう較正されても良い。他の実施形態では、較正エンジン２０５は、ヒューマンインタフェースモジュール１０２ｎを通じて深さを提供するために、ユーザに依存しても良い。例えば、ユーザは、測定テープ又は他の測定装置を用いて、ヒューマンインタフェースモジュール１０２ｎからの現実世界オブジェクトの深さを物理的に測定しても良い。深さは、飛行時間センサ、構造光センサ、レーザ範囲探知器、平面光カメラ、等のような深さセンサを用いることにより得ることもできる。
【００７６】
６０４で、方法６００は、ヒューマンインタフェースモジュール１０２ｎのディスプレイ上で、現実世界オブジェクトと一緒に仮想オブジェクトの画像をレンダリングするステップを有する。種々の実施形態では、較正エンジン２０５、画像配信モジュール２０３、又はシステム１００の特定の他のコンポーネントは、仮想オブジェクトの画像をレンダリングしても良い。幾つかの実施形態では、仮想オブジェクトの単一の画像が、単一のディスプレイでレンダリングされても良い。例えば、単眼透視ディスプレイは、ディスプレイでレンダリングされる単一画像を有しても良く、あるいは両眼光透視ディスプレイは右若しくは左ディスプレイで表示される単一画像を有しても良い。他の実施形態では、仮想オブジェクトの複数の画像、又は複数の仮想オブジェクトの複数の画像が、単一のディスプレイ上に、又は複数のディスプレイ上にレンダリングされても良い。例えば、一実施形態では、ヒューマンインタフェースモジュール１０２ｎは両眼光透過ディスプレイを有しても良く、仮想オブジェクトの画像は右及び左ディスプレイの各々で１回レンダリングされても良い。別の実施形態では、ヒューマンインタフェースモジュール１０２ｎは、人が両目で見ることができ及び１つの画像が各目の視野内でレンダリングされるよう仮想オブジェクトが単一のディスプレイ上で２回レンダリングされ得る単一の透視ディスプレイを有しても良い。
【００７７】
ここで用いられるように、視差許容範囲は、ユーザが人間の知覚限界のために基準点に対する配置構造の違いを区別できない視差近辺の小さな範囲に対応する。この範囲の境界は、見える距離、スクリーン解像度、仮想及び現実コンテンツの空間周波数、偏心度（窩からのオブジェクトの距離）、単視軌跡からの距離（視差がゼロである領域）、等に伴い変化し得る。視差許容範囲は、多くの方法で有用であり得る。例えば、視差許容範囲は、較正及び／又は実行時間オーバレイ方法を有効にするために（つまり、マッピングされた視差が対応する範囲内にあるか否かを調べるために）用いることができる。視差許容範囲は、リソース最適化決定（例えば、視差値の圧縮／量子化、等）を導くためにも用いられても良い。
【００７８】
６０６で、方法６００は、画像がユーザの視野内の現実世界オブジェクトと揃って現れるまで、ヒューマンインタフェースモジュール１０２ｎのディスプレイ上の仮想オブジェクトの画像の位置を調整するためのユーザ入力を受信するステップを有する。画像は、許容範囲内で現実世界オブジェクトに揃えられて現れても良い。許容範囲の境界は、ユーザ又は較正アプリケーション１０３により、画像がもはや現実世界オブジェクトに揃えられて現れない位置として決定できる。較正アプリケーション１０３は、上述したように、仮想オブジェクトの画像を閲覧するためにディスプレイを調整しても良い。しかしながら、さらに、ユーザから受信される入力は、仮想オブジェクトの画像がユーザの視野内で現実世界オブジェクトに揃えられて現れることの指示を有しても良い。幾つかの実施形態では、ユーザは、１つ画像が各目で閲覧される２つの画像がユーザの融合立体視領域内のどこかに含まれるとき、仮想オブジェクトの画像の整列を示しても良い。幾つかの実施形態では、ユーザは、１つの目で閲覧される単一画像が現実世界オブジェクトの範囲内に含まれるよう現れるとき、画像の整列を示しても良い。較正エンジン２０５は、移動するための、及び／又はユーザの画像知覚が現実世界オブジェクトとの整列から外れて移動したか否かを示すための、許容範囲の境界を生じるユーザからの入力を受信し続けても良い。例えば、ユーザは、ディスプレイを通じて現実世界オブジェクトを見ても良く、較正エンジン２０５に入力を提供しても良い。入力に応答して、較正エンジン２０５は、画像の視差を調整するよう、画像配信モジュール２０３に指示しても良い。本例では、ユーザは、画像が現実世界オブジェクトとの整列から外れて移動した（もはは、同じ知覚される深さに存在しない、したがって許容範囲の外側にある）ことをユーザが知覚するまで、入力を提供し続けても良い。種々の実施形態では、ユーザは、目標範囲の境界に関連する２つの仮想オブジェクト位置を示しても良い。これらの位置は、例えば、仮想オブジェクトを更に近くに移動するとき、仮想オブジェクトがもはや現実世界オブジェクトに揃っていないとユーザに知覚させ（例えば、近端許容範囲境界を示す）、仮想オブジェクトを更に遠くに移動するとき、仮想オブジェクトがもはや現実世界オブジェクトに揃っていないとユーザに知覚させる（例えば、遠端許容範囲境界を示す）。
【００７９】
方法６００は、６１０でユーザの許容範囲の近端境界及び／又は遠端境界に対応する視差値を決定するステップと、６１２で深さと視差範囲境界との間のマッピングを決定するステップと、を有する。幾つかの実施形態では、較正エンジン２０５は、本願明細書のどこかに記載される方法を用いて視差値を決定する。幾つかの実施形態では、較正エンジン２０５は、本願明細書のどこかに記載される方法を用いて深さ及び視差許容範囲境界をマッピングしても良い。幾つかの実施形態では、方法６００の全部又は一部は、深さの範囲に亘る較正が決定できるよう、現実世界オブジェクトの深さのセットについて繰り返されても良い。幾つかの実施形態では、単一の現実世界オブジェクトは、較正処理中に更なる深さへと移動されても良い。他の実施形態では、較正処理で使用するために、複数の現実世界オブジェクトが、それぞれ深さのセットからの１つの深さに、配置されても良い。種々のアルゴリズムが、方法６００が実行された深さ以外の更なる深さを推定するために用いられても良い。  両眼光透過拡張現実ディスプレイを較正するシステム及び方法が記載された。以上の説明では、説明を目的として、上述の技術の完全な理解を提供するために、多くの詳細事項が説明された。しかしながら、当業者は、実施技術がそのような特定の詳細にかかわらず実施できることを理解するだろう。他の例では、説明を不明瞭にしないために及び理解を容易にするために、構造及び装置がブロック図で示される。例えば、技術は上述の一実施形態では主にソフトウェア及び特定のハードウェアを参照して記載される。しかしながら、本発明は、サービスを提供する任意の周辺装置の部分としてデータ及びコマンドを受信し及び情報を提示できる任意の種類のコンピューティングシステムに適用される。
【００８０】
本願明細書において「一実施形態」又は「ある実施形態」等のような表現は、実施形態と関連して記載された特定の機能、構造又は特徴が少なくとも１つの実施形態に含まれることを意味する。明細所内の種々の文の中の「一実施形態では」という表現の出現は、必ずしも全て同じ実施形態を参照していない。
【００８１】
上述の詳細な説明の幾つかの部分は、コンピュータメモリ内のデータビットに対する動作のアルゴリズム及び象徴的表現の観点で提示される。これらのアルゴリズムの説明及び表現は、幾つかの環境では、データ処理技術の当業者により、業務内容を最も効率的に他の当業者に伝えるために用いられる手段である。アルゴリズムは、ここでは及び概して、所望の結果を生じる自己矛盾のないステップシーケンスであると考えられる。ステップは、物理量の物理的操作を必要とするステップである。通常、必ずしも必要ではないが、これらの量は、格納され、転送され、結合され、比較され及びその他の場合には操作され得る電気信号又は磁気信号の形式を取る。基本的に一般的に用いられるという理由で、これらの信号をビット、値、要素、シンボル、文字、語、数値、等として表すことが便利であることが分かっている。
【００８２】
しかしながら、これらの及び類似の語の全ては、適切な物理量に関連付けられ、これらの量に適用される便宜的ラベルに過ぎない。特に断りのない限り、以下の議論から明らかなように、以下の説明を通じて、「処理」、「計算」、「演算」、「決定」、「表示」、等の語を用いた議論は、コンピュータシステム又は同様の電子コンピューティング装置の動作及び処理を表す。コンピュータシステム又は同様の電子コンピューティング装置は、コンピュータシステムのレジスタ及びメモリ内にある物理（電子）量として表されたデータを操作し、コンピュータシステムのメモリ若しくはレジスタ又は情報記憶、送信又は表示装置等の中の物理量として同様に表される他のデータに変換する。
【００８３】
技術は、本願明細書の動作を実行する装置にも関する。この装置は、所要の目的のために特に構成されても良く、又はコンピュータに格納されたコンピュータプログラムにより選択的に起動され又は再構成される汎用目的コンピュータを有しても良い。このようなコンピュータプログラムは、フロッピディスク、光ディスク、ＣＤ−ＲＯＭ及び磁気ディスクを含む任意の種類のディスク、ＲＯＭ（read-only  memory）、ＲＡＭ（random  access  memory）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気若しくは光カード、不揮発性メモリを有するＵＳＢキーを含むフラッシュメモリ、又は電子命令を格納するのに適する任意の種類の媒体のような、各々がコンピュータシステムバスに結合された、しかしこれらに限定されないコンピュータ可読記憶媒体に格納されても良い。
【００８４】
幾つかの実施形態は、完全なハードウェアの実施形態、完全なソフトウェアの実施形態又はハードウェアとソフトウェア要素の両方を含む実施形態の形式を取り得る。一実施形態は、ファームウェア、常駐ソフトウェア、マイクロコード等を含むがこれらに限定されないソフトウェアで実装されても良い。
【００８５】
さらに、幾つかの実施形態は、コンピュータ又は任意の命令実行システムにより又はそれと関連して使用するためのプログラムコードを提供するコンピュータにより使用可能な又はコンピュータにより読み取り可能な媒体からアクセス可能なコンピュータプログラムプロダクトの形式を取り得る。この説明の目的のために、コンピュータにより使用可能な又はコンピュータにより読み取り可能な媒体は、命令実行システム、機器又は装置により若しくはそれらと関連して使用するためのプログラムを有し、格納し、通信し、伝達し又は転送することが可能な任意の機器であっても良い。
【００８６】
プログラムコードを格納し及び／又は実行するのに適するデータ処理システムは、システムバスを通じてメモリ要素に直接又は間接に結合される少なくとも１つのプロセッサを有し得る。メモリ要素は、プログラムコードの実際の実行中に用いられるローカルメモリ、大容量記憶装置、及び実行中にコードが大容量記憶装置から読み出されなければならない回数を低減するために少なくとも特定のプログラムコードの一時的記憶を提供するキャッシュメモリを含み得る。
【００８７】
入力／出力又はＩ／Ｏ装置（キーボード、ディスプレイ、ポインティングデバイス等を含むがこれらに限定されない）は、直接に又は介入するＩ／Ｏ制御部を通じてシステムに結合され得る。
【００８８】
ネットワークアダプタも、介入する私設若しくは公衆ネットワークを通じてデータ処理システムを他のデータ処理システムに又は遠隔プリンタ若しくは記憶装置に結合するために、システムに結合されても良い。モデム、ケーブルモデム及びEthernet(登録商標)カードは、現在利用可能な種類のネットワークアダプタのうちの少数の例に過ぎない。
【００８９】
最後に、本願明細書で提示されるアルゴリズム及びディスプレイは、本質的に、任意の特定のコンピュータ又は他の機器にも関連しない。種々の汎用システムが、本願明細書の教示に従ってプログラムと共に用いられても良く、所要の方法ステップを実行するために更に特定の装置を構成することが都合が良いことがあり得る。種々のこれらのシステムの所要の構造は、以下の説明から明らかである。さらに、技術は、任意の特定のプログラミング言語を参照して記載されない。理解されるべきことに、種々のプログラミング言語が、本願明細書に記載された種々の実施形態の教示を実施するために用いられても良い。
【００９０】
以上の実施形態の説明は、説明及び開設を目的としている。上述の記載は、網羅的であること又は本願明細書を開示の特定の形式に限定することを意図しない。上述の教示に照らして多くの修正及び変形が可能である。実施形態の範囲はこの詳細な説明に限定されず、本願の特許請求の範囲により定められる。当業者により理解されるように、種々の例が、本発明の精神又は基本的特徴から逸脱することなく他の特定の形式で実施できる。同様に、モジュール、ルーチン、特徴、属性、方法及び他の態様の特定の名称及び区分は、必須でも重要でもなく、明細書及びその特徴を実施するメカニズムは、異なる名称、区分及び／又はフォーマットを有しても良い。さらに、当業者に明らかなように、本願明細書のモジュール、ルーチン、特徴、属性、方法は、ソフトウェア、ファームウェア、又それらの任意の組合せで実装できる。また、本願明細書の例えばモジュールであるコンポーネントがソフトウェアとして実装されるときは、コンポーネントは、スタンドアロンプログラム、大規模プログラムの一部、複数の別個のプログラム、静的又は動的リンクライブラリ、カーネルローダブルモジュール、デバイスドライバとして、及び／又はコンピュータプログラミングの当業者に現在知られている若しくは将来知られる如何なる他の方法でも実装され得る。さらに、本願明細書は、特定プログラミング言語、又は特定のオペレーティングシステム若しくは環境での実施形態に限定されない。したがって、本開示は、限定ではなく、本願明細書の範囲の説明を目的とする。
【００９１】
［関連出願の参照］
本願は、米国仮特許出願番号第６１／９３３１７８、２０１４年１月２９日出願、名称「Binocular  Optical  See-Through  System  and  Associated  Calibration  Procedure」の３５Ｕ．Ｓ．Ｃ．§１１９に基づく優先権を主張する。該米国仮特許出願は、参照することによりその全体がここに組み込まれる。
【符号の説明】
【００９２】
１００  システム
１０２  ヒューマンインタフェースモジュール
１０３  較正アプリケーション
１０４  計算及び通信モジュール
１０６  ネットワーク
１０８  バックエンドサービスサーバ
１１０  位置決めシステム
１１２  他のシステム
２００  コンピューティング装置
２０１  制御部
２０３  画像配信モジュール
２０５  較正エンジン
２０７  ユーザインタフェースエンジン
２２０  バス
２３５  プロセッサ
２３７  メモリ
２４１  通信ユニット
２４３  データ記憶装置
【図１】
2015142383.tif 000012
【図２】
2015142383.tif 000013
【図３】
2015142383.tif 000014
【図４】
2015142383.tif 000015
【図５】
2015142383.tif 000016
【図６】
2015142383.tif 000017
【図７】
2015142383.tif 000018