(57)【要約】      （修正有）【課題】周辺機器追跡システムおよび方法を提供する。【解決手段】実環境においてユーザが操作可能な周辺機器を追跡するためのシステムにおいて、方法は、ユーザに取り付け可能なカメラで、実環境の画像をキャプチャしと、カメラによってキャプチャされた第１の画像セットに属する画像の特徴を特徴識別部で識別し、カメラによってキャプチャされた第２の画像セットに属する画像における周辺機器の画像位置を周辺機器識別部で識別し、位置決定部により、識別された特徴に応じて実環境におけるカメラの第１の位置情報を生成し、周辺機器の識別された画像位置に応じてカメラに対する周辺機器の第２の位置情報を生成する。カメラによってキャプチャされた第１の画像セットおよび第２の画像セットは、各セットからの１つまたは複数の画像グループが順番にキャプチャされるようにインタリーブされる。【選択図】図７
2020144847.tif 000002
【特許請求の範囲】
【請求項１】
実環境においてユーザが操作可能な１つまたは複数の周辺機器を追跡するためのシステムであって、
ユーザに取り付け可能であり、前記実環境の画像をキャプチャするように動作可能であるカメラと、
前記カメラによってキャプチャされた第１の画像セットに属する画像の特徴を識別するように動作可能である特徴識別部と、
前記カメラによってキャプチャされた第２の画像セットに属する１つまたは複数の画像における１つまたは複数の周辺機器の画像位置を識別するように動作可能である周辺機器識別部と、
前記識別された特徴の１つまたは複数に応じて前記実環境における前記カメラの第１の位置情報を生成し、前記１つまたは複数の周辺機器の前記識別された画像位置に応じて前記カメラに対する前記１つまたは複数の周辺機器のそれぞれの第２の位置情報を生成するように動作可能である位置決定部とを含み、
前記カメラによってキャプチャされた前記第１の画像セットおよび前記第２の画像セットは、各セットからの１つまたは複数の画像グループが順番にキャプチャされるようにインタリーブされ、
前記位置決定部は、前記第２の画像セット内の所与の画像グループに対応する前記第２の位置情報を、前記所与の画像グループに先行する前記第１の画像セット内の画像グループに対応する前記第１の位置情報と、前記所与の画像グループに続く前記第１の画像セット内の画像グループに対応する前記第１の位置情報との関数と組み合わせることにより、前記実環境における前記１つまたは複数の周辺機器の位置を識別する第３の位置情報を生成するように動作可能である、システム。
【請求項２】
１つまたは複数の画像キャプチャフレームの少なくとも第１のセットに対して前記環境を照明するように動作可能である光源を含む、請求項１に記載のシステム。
【請求項３】
前記カメラは、前記周辺機器に関連付けられたライトが照明されているときに前記周辺機器の画像をキャプチャするように動作可能である、請求項１に記載のシステム。
【請求項４】
１つまたは複数のキャプチャされた画像の異なるセットに対して異なる露出時間で画像がキャプチャされる、請求項１に記載のシステム。
【請求項５】
前記関数は前記位置情報の平均である、請求項１に記載のシステム。
【請求項６】
前記位置決定部は、前記環境の地図を使用して位置情報を生成するように動作可能である、請求項１に記載のシステム。
【請求項７】
前記位置決定部は、前記所与の画像グループの直前の前記第１の画像セット内の画像グループに対応する前記第１の位置情報と、前記所与の画像グループの直後の前記第１の画像セット内の画像グループに対応する前記第１の位置情報とを用いて前記第３の位置情報を生成するように動作可能である、請求項１に記載のシステム。
【請求項８】
動き追跡情報を生成するために前記カメラに関連付けられた１つまたは複数のハードウェア動き検出器を含む、請求項１に記載のシステム。
【請求項９】
前記カメラは、第３の画像セットをキャプチャするように動作可能である、請求項１に記載のシステム。
【請求項１０】
前記第１、前記第２および前記第３の画像セットは、それぞれの異なる数の画像のグループを含む、請求項９に記載のシステム。
【請求項１１】
前記グループのうちの少なくとも２つは、各グループについて異なる数の画像を含む、請求項１に記載のシステム。
【請求項１２】
前記第１、前記第２、および前記第３の画像セットの少なくとも１つに属するグループは、グループ毎に異なる数の画像を含む、請求項９に記載のシステム。
【請求項１３】
実環境においてユーザによって操作可能な１つまたは複数の周辺機器を追跡する方法であって、
ユーザに取り付け可能なカメラを用いて前記実環境の画像をキャプチャするステップと、
前記カメラによってキャプチャされた第１の画像セットに属する画像の特徴を識別するステップと、
前記カメラによってキャプチャされた第２の画像セットに属する１つまたは複数の画像における１つまたは複数の周辺機器の画像位置を識別するステップであって、前記カメラによってキャプチャされた前記第１の画像セットおよび前記第２の画像セットは、各セットからの１つまたは複数の画像グループが順番にキャプチャされるようにインタリーブされる、ステップと、
前記識別された特徴の１つまたは複数に応じて、前記実環境における前記カメラの第１の位置情報を生成するステップと、
前記１つまたは複数の周辺機器の前記識別された画像位置に応じて、前記カメラに対する前記１つまたは複数の周辺機器のそれぞれの第２の位置情報を生成するステップと、
前記第２の画像セット内の所与の画像グループに対応する前記第２の位置情報を、前記所与の画像グループに先行する画像グループに対応する前記第１の位置情報と、前記所与の画像グループに続く前記第１の画像セット内の画像グループに対応する前記第１の位置情報との関数と組み合わせることにより、前記実環境における前記１つまたは複数の周辺機器の位置を識別する第３の位置情報を生成するステップとを含む、方法。
【請求項１４】
コンピュータによって実行されるとき、前記コンピュータに請求項１３の方法を実行させるコンピュータソフトウェア。
【請求項１５】
請求項１４に記載のコンピュータソフトウェアを格納する非一時的機械読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、周辺機器追跡システムおよび方法に関する。
【背景技術】
【０００２】
ユーザがより自然な入力を提供できるようにするための周辺機器が長年使用されてきたが、そのようなデバイスの数が最近増加している。たとえば、多くのデバイスは、加速度計やその他のハードウェアモーションセンサを使用して、周辺機器の動きを検出する。この追跡されたモーションをユーザによる入力として使用してもよく、コンテンツの没入感を高めるために、ボタンを押す代わりに、より自然なモーション（ゲームコントローラを動かしてゴルフスイングをシミュレートするなど）を使用できるようになる。
【０００３】
このような入力方法とデバイスへの関心は、ユーザがバーチャルリアリティ（ＶＲ）または拡張現実（ＡＲ）コンテンツを体験できるヘッドマウントディスプレイユニット（ＨＭＤ）の開発によって近年推進されてきた。このような体験へのユーザの没入レベルが、表示されたコンテンツを楽しむために重要であると考えられていることから、モーション追跡される周辺機器を使用することが望ましいと見られている。
【０００４】
多くの実施の形態では、周辺機器の動きが追跡されることで十分である。絶対位置（つまり、実環境での位置）はほとんど影響しないであろう。たとえば、ゴルフゲームでは、ユーザが部屋でスイングをどこで実行するかは重要ではない。重要なのは、場所ではなくユーザがアクションを模倣することであることから、「ゴルフクラブ」（つまり、ゴルフクラブを表す周辺機器）の動きこそがそのアクションの実行にとって重要である。
【０００５】
しかしながら、他の実施の形態では、周辺機器の絶対位置を入力として使用することが考えられる。ただし、位置を追跡するときに、加速度計やその他のハードウェアのモーション検出器を使用すると、多くの場合（センサのドリフトなどにより）エラーが発生しやすくなるため、このような情報を取得することは困難である。これにより、大きなエラーが比較的急速に増加し、検出された周辺機器の位置が実際の周辺機器の位置と大幅に異なることがある。
【０００６】
提案されている１つの解決策は、周辺機器に関連付けられている処理デバイス（ゲームコントローラに関連付けられているＳｏｎｙ（登録商標）ＰｌａｙＳｔａｔｉｏｎ（登録商標）４など）にあるカメラを使用して周辺機器を追跡することである。そのような方法は、周辺機器の位置の追加の測定値が得られ、必要に応じてハードウェア動き検出器からの検出された動きを補正するために使用できるという点で有利である。しかしながら、そのような方法に関連する多くの欠点があり、例えば、オクルージョンという潜在的な問題や提供されるべき追加のハードウェアに対する潜在的な要件などがある。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明が生じるのは、上記の問題の文脈においてである。
【課題を解決するための手段】
【０００８】
本発明の前述の一般的な説明および以下の詳細な説明の両方は、本発明の例示であり、本発明を限定するものではないことを理解されたい。本開示は、請求項１によって定義される。
【０００９】
本開示のさらなるそれぞれの態様および特徴は、添付の特許請求の範囲で定義される。
【図面の簡単な説明】
【００１０】
以下の詳細な説明を添付の図面と併せて参照することにより、その開示がよりよく理解されるので、本開示およびその付随する利点の多くのより完全な理解が容易に得られるであろう。
【図１】ＨＭＤを着用しているユーザを概略的に示す。
【図２Ａ】ＨＭＤに関連付けられたカメラによって取り込まれた画像を概略的に示す。
【図２Ｂ】ＨＭＤに関連付けられたカメラによって取り込まれた画像を概略的に示す。
【図３】画像取込みシーケンスを概略的に示す図である。
【図４Ａ】追跡の実施の形態を概略的に示す図である。
【図４Ｂ】追跡の実施の形態を概略的に示す図である。
【図５】画像取込みシーケンスを概略的に示す図である。
【図６】周辺機器追跡方法を概略的に示す図である。
【図７】周辺機器追跡装置を概略的に示す図である。
【発明を実施するための形態】
【００１１】
ここで図面を参照すると、同様の参照番号は、いくつかの図を通して同一または対応する部分を示し、本開示の実施の形態が説明される。これらの実施の形態の特徴は、説明された例示的な構成においてのみ適切であると考えられるのではなく、適切に組み合わされてもよいことが理解されるべきである。
【００１２】
図１は、基本デバイスの例として、Ｓｏｎｙ（登録商標）ＰｌａｙＳｔａｔｉｏｎ  ３（登録商標）ゲームコンソール１００に接続されたＨＭＤ２０を着用しているユーザを概略的に示す。ゲームコンソール１００は、主電源１１０および（オプションとして）主表示画面（図示せず）に接続される。上述のケーブル８２、８４として機能する（したがって、電源ケーブルと信号ケーブルの両方として機能する）ケーブルは、ＨＭＤ２０をゲームコンソール１００にリンクし、例えば、コンソール１００のＵＳＢソケット１２０に差し込まれる。本実施の形態では、ケーブル８２、８４の機能を満たす単一の物理ケーブルが提供されることに留意されたい。図１には、現在実行されているゲームプログラムに関連するゲーム操作を制御する（または制御に貢献する）ためにゲームコンソール１００と無線で通信する、例えば、ソニー（登録商標）Ｍｏｖｅ（登録商標）コントローラのようなハンドヘルドコントローラ１３０を保持するユーザも示されている。
【００１３】
ＨＭＤ２０内のビデオディスプレイは、ゲームコンソール１００によって生成された画像を表示するように構成され、ＨＭＤ２０内のイヤホンは、ゲームコンソール１００によって生成されたオーディオ信号を再生するように構成される。ＵＳＢタイプのケーブルが使用される場合、この信号は、ＨＭＤ２０に到達したときにデジタル形式であることから、ＨＭＤ２０は、少なくともオーディオ信号をアナログ形式に変換して再生するためのデジタルアナログ変換器（ＤＡＣ）を備えることに留意されたい。
【００１４】
ＨＭＤ２０に取り付けられたカメラ１２２からの画像は、ケーブル８２、８４を介してゲームコンソール１００に戻される。これらの画像は、モーショントラッキング、ユーザへの提示、あるいはこれらまたは他の目的の任意の組み合わせに使用されてもよい。光源（例えば、赤外線光源または可視光源）の動き追跡を支援するためにこれらの画像が提供されてもよい。いくつかの実施の形態では、カメラ１２２は、深度カメラまたは立体カメラ構成であってもよい。同様に、モーションまたは他のセンサがＨＭＤ２０で提供される場合、それらのセンサからの信号は、ＨＭＤ２０で少なくとも部分的に処理されてもよく、および／またはゲームコンソール１００で少なくとも部分的に処理されてもよい。このような信号の使用および処理を以下でさらに説明する。
【００１５】
ゲームコンソール１００からのＵＳＢ接続はまた、ＵＳＢ規格に従ってＨＭＤ２０に電力を提供するが、電力を任意の数の代替または追加の供給源から受け取ってもよい。
【００１６】
上記のように、ＨＭＤの位置の追跡は、ＨＭＤに関連付けられたカメラによってキャプチャされた画像を使用して実行されてもよい。この追跡データは、加速度計またはジャイロスコープによって生成されたものなど、追加のモーション追跡データによって改良またはさもなければ補充することができる。
【００１７】
図２Ａおよび２Ｂは、ＨＭＤに取り付けられたカメラによってキャプチャされた画像を概略的に示す。
【００１８】
図２Ａは、カメラによってキャプチャされた第１の画像を示す。画像は部屋の上隅である。天井２００は、壁２１０の上にある。窓２２０は、左の壁２１０上で検出される特徴の例を提供するが、もちろん、取り込まれた画像における参照点として任意の適切な特徴を使用することができる。
【００１９】
図２Ｂは、カメラによってキャプチャされた第２の画像を示す。この画像は、図２Ａよりも後にキャプチャされている。矢印２３０は、取り込まれた画像の一部ではなく、むしろ、それらは前の画像に対する画像内の特徴の動きを示すのに役立つ。この画像では、各特徴が固定量だけ左にシフトしていることがわかる。これは、特徴自体の動きではなく、カメラ（およびＨＭＤとユーザの頭）の右への回転または平行移動を示すものと見なすことができる。
【００２０】
画像間の特徴の動きの分析を実行することにより、ＨＭＤの動きの正確な測定値を決定することができ、したがって、ＨＭＤの追跡を実行することができる。
【００２１】
ＨＭＤの動きを明示的に追跡するのではなく、いくつかの実施の形態では、ＨＭＤの位置を各画像フレームで導き出すことが可能である。いくつかの例では、これは、画像の参照として環境の事前定義されたマッピングを使用することによって達成できる。特徴の識別は各画像で実行され、環境マッピングからの既知の特徴と比較されて、特徴とＨＭＤの相対位置が識別される。もちろん、そのような方法は、適切な場合に特徴の画像間の動きを測定する方法と併せて使用されて、例えば、位置特定プロセスをより頻繁に実行しないことによって処理負担を軽減することができる。
【００２２】
所定のマッピングを使用するのではなく、いくつかの実施の形態では、代わりに、マッピング技法を利用して地図を生成することができる。たとえば、Ｓｉｍｕｌｔａｎｅｏｕｓ  Ｌｏｃａｌｉｓａｔｉｏｎ  ａｎｄ  Ｍａｐｐｉｎｇ（ＳＬＡＭ）技術を使用して、環境の地図を生成すると同時に、その環境内のＨＭＤの場所を特定することができる。
【００２３】
ＨＭＤとともに使用される１つまたは複数の周辺機器の追跡も実行できることが有利であると考えられる。これは、たとえばゲームコンソールなどに配置された追加のカメラ、または加速度計などのハードウェアモーション検出を使用して実行できるが、ＨＭＤトラッキングのために使用されているのと同じカメラによってこのトラッキングが実行されるなら、エンターテインメントシステムの複雑さが軽減される。ただし、ＨＭＤと周辺機器のトラッキングを実行するときの技術的な考慮事項が異なるため、これには多くの問題がある。これらの考慮事項は、たとえば、異なる露出および／またはピクセルの感度が異なる光の波長を使用して環境と周辺機器の画像をキャプチャすることによって、１つの画像で解決することができるが、すべての目的に適しているとは限らない。
【００２４】
図３は、インタリーブ形式で異なるパラメータを使用して画像がキャプチャされる画像キャプチャスキームの一部を示す。ここでは２セットの画像（ＡとＢ）のみを示すが、もちろんこれを適切な数の画像セットに拡張することもできる。この例では、画像Ａ１からＡ４はＨＭＤ追跡に関連し、画像Ｂ１からＢ４は周辺機器追跡に関連していると考えられる。ここには示されていない他の画像セットも、画像キャプチャスキームの一部を形成することがある。これらの画像は、ユーザへの表示や追加の周辺機器の追跡のために画像をキャプチャするなど、他の目的で使用することもあり、機能上の目的では全く使用しないこともある。
【００２５】
もちろん、画像がキャプチャされる順序を変更してもよく、画像が各方式を使用して１：１の比率でキャプチャされることは必須ではない。たとえば、Ａ１、Ａ２、Ｂ１、Ａ３、Ａ４、Ｂ２またはＡ１、Ａ２、Ｂ１、Ｂ２、Ａ３、Ａ４、Ｂ３、Ｂ４などの画像キャプチャスキームを使用することができる。同じセットに属する連続した画像フレーム（または、同じセットに属する連続した画像フレームがない場合は単一の画像フレーム）は、そのセットに属する一つのグループを構成する。たとえば、この段落の２つの例にはそれぞれ４つのグループがある。「Ａ１、Ａ２」は第１、「Ｂ１」または「Ｂ１、Ｂ２」は第２、「Ａ３、Ａ４」は第３、「Ｂ２」または「Ｂ３、Ｂ４」は最後のグループである。セットＡとセットＢの画像キャプチャパラメータの違いの例を以下に説明するが、これらは非限定的であると考えられるべきであり、これらのパラメータを特定の実施のために適切に修正してもよいことに注意すべきである。
【００２６】
画像取込み順序の不規則な配置も、いくつかの実施の形態では適切であると見なされる。これには、たとえば、Ａ１、Ａ２、Ｂ１、Ａ３、Ｂ２、Ａ４、Ｂ３、Ｂ４などの配置が含まれる。画像取込み順序のそのような配置は、場合によっては、疑似ランダムな方法で生成されてもよく、あるいは異なるサイズのグループが含まれる事前定義されたパターンに単に従ってもよい。
【００２７】
所与のグループで複数の画像が提供される場合、たとえば、グループ内の各画像に対する検出を平均することによって、単一の位置検出（「Ｂ」グループの場合はカメラから周辺機器への位置、または「Ａ」グループの場合は環境内カメラの位置）がその所与のグループから生成される。あるいは、グループ内の各画像に対して個別の検出を行い、たとえばカメラ位置の場合は、カメラから周辺機器への位置の検出に時間的に最も近い検出として代表的な検出を選択することができる（その結果、たとえば、配置例Ａ１、Ａ２、Ｂ１、Ａ３、Ａ４、Ｂ２、Ａ５、Ａ６では、画像Ｂ１に対して行われた検出に関して使用されるカメラ位置検出はＡ２、Ａ３からのものであり、画像Ｂ２に対して行われた検出に関して使用されるカメラ位置検出はＡ４、Ａ５からのものである）。
【００２８】
画像セットＡおよび画像セットＢに加えて第３の画像セットが取り込まれる場合、第３の画像セットは、任意の適切な方法で最初の２つの画像セットとインタリーブ（交互に配置）されてもよい。例えば、Ｄが第３のセットの１つまたは複数の画像のグループを表す場合、ＡＢＤＡＢＤ、ＡＢＤＡＢＡＢＤ、ＡＤＢＤＡＤＢＤまたは任意の他のインタリービングが適切に使用される。
【００２９】
画像Ａ１からＡ４を使用して実行されるＨＭＤ追跡に対して、画像内の環境の特徴の識別を可能にするように画像が十分に明るいことが有利であると考えられる。これは、露出時間の延長、および環境を照らすための光源（ＨＭＤまたはＨＭＤに関連付けられたコンソールに搭載されているものなど）の使用の一方または両方を用いて実現することができる。画像キャプチャの例は、図４Ａに示され、ＨＭＤに取り付けられた光源４００は、環境を照明するために起動される。
【００３０】
画像Ｂ１からＢ４を用いて行われる周辺機器追跡に対して、画像から周辺機器を容易に特定できるという利点があると考えられる。図４Ｂに示されるように、これは、図４Ａに示されるようなＨＭＤに関連する光源４００ではなく、周辺機器を制御して光を発することを含んでもよい。これにより、しばしば周辺機器が環境内で最も明るいオブジェクトになり、そのため、キャプチャした画像で周辺機器を識別しやすくなる可能性がある。上述の照明構成の代わりに、またはそれに加えて、画像を取り込むときの露出時間を短くすることもできる。周辺装置は、常に発光するように制御することも、セットＢに属する画像フレームをキャプチャする場合にのみ発光するように制御することもできる（たとえば、カメラを制御する装置から周辺装置に送信されるタイミング信号によって調整される）。後者は、Ａフレームを使用したＨＭＤの拡張追跡処理を有効にする可能性がある。いくつかの例では、周辺機器によって断続的に放出されるそのような照明は、ユーザに主観的な妨害を引き起こさないように、不可視範囲（たとえば、赤外線照明）にあってもよい。
【００３１】
ＨＭＤの追跡に使用するカメラと同じカメラを使用して周辺機器を追跡する場合、周辺機器の位置はＨＭＤのみを基準にして決定されてもよい。周辺機器の実際の（実環境の）位置を取得するには、その時点でのＨＭＤ位置の検出を考慮に入れる必要がある。ただし、上で説明した交互の画像キャプチャ方式のため、周辺機器追跡の正確な時間におけるＨＭＤの位置情報は利用可能ではない。
【００３２】
画像Ａ１から得られたＨＭＤ位置情報を画像Ｂ１から得られた周辺機器位置情報と組み合わせて使用すると、ＨＭＤ位置がこの時点での履歴データと見なされるため、周辺機器に対する位置データが不正確になり、ジッタが発生する可能性がある。これは周辺機器位置の妥当な概算を提供するが、精度の高い位置データを必要とするアプリケーションには適さないかもしれない。
【００３３】
図５は、周辺機器位置データＣ１によって表される第３の位置情報の生成を概略的に示す。この周辺機器位置データは、画像Ｂ１から生成された位置データに基づいて、画像Ａ１およびＡ２から生成されたＨＭＤ位置データの関数（言い換えれば、所与の画像グループに先行する第１の画像セットにおける画像グループに対応する第１の位置情報と、所与の画像グループに続く第１の画像セットにおける画像グループに対応する第１の位置情報との関数）を用いて生成される。これは、周辺機器追跡方法において１つのカメラフレームのレイテンシをもたらす一方、有利には、追跡の滑らかさとともに周辺機器追跡の精度を改善することができる。この第３の位置情報は、Ｂ画像から得られた位置情報を使用することによって識別される１つまたは複数の周辺機器の単なる画像位置ではなく、環境内の１つまたは複数の周辺機器の位置を示す。
【００３４】
画像Ａ１およびＡ２から生成されたＨＭＤ位置データの関数は、２組の位置データに基づいて位置を導出するための任意の適切な関数であってもよい。例えば、関数が２組の位置データの平均値を取ることを要求するようにして、位置データの平均が生成されてもよい。場合によっては、たとえば、目的の時間に最も近くキャプチャされた位置データに対する関数の寄与を増やすために、これは加重平均になることがある。
【００３５】
あるいは、またはさらに、ＨＭＤ加速度の測定値を使用して重み付け値を生成してもよい。たとえば、画像Ａ１とＡ２のキャプチャの間に正の加速が実行された場合、キャプチャされた画像間の中間の時間におけるユーザの位置は、それらの画像に関連付けられたそれぞれの位置間の中間点であるとは限らない。この場合、前の画像に関連付けられた位置データの重み係数は増加するが、減速の場合、後の画像に関連付けられた位置データの重み係数が大きくなる。
【００３６】
そのような実施の形態では、位置データは、Ｂ画像または画像グループのそれぞれに対してこのようにして生成されてもよい。例えば、周辺機器位置データＣ２は、画像Ａ２およびＡ３から生成されたＨＭＤ位置データと、画像Ｂ２から生成された周辺機器位置データとの組み合わせを使用して生成されてもよい。
【００３７】
ある実施の形態では、周辺機器追跡データＣは、Ｂ画像がキャプチャされるのと同じ速度で（すなわち、図５の例では１つおきのフレームで）生成される。しかしながら、他の実施の形態では、周辺機器追跡データＣは、それぞれＡ画像フレームおよびＢ画像フレームから得られた位置データのローリング平均を使用して画像取込み速度と同じ速度で生成されてもよい。ある実施の形態では、アプリケーションまたはシナリオに応じていずれかの方法を選択できるアプローチが実装されてもよい。例えば、より高いサンプリングレートが周辺機器追跡に役立つ場合（特定のタスクまたは入力など）、後者のアプローチは、少なくともユーザのインタラクションのサブセットに対して行うことができる。
【００３８】
図６は、実環境においてユーザによって操作可能な１つまたは複数の周辺機器を追跡する方法を概略的に示す。
【００３９】
ステップ６００は、ユーザ、例えば、ユーザが装着することのできるＨＭＤに取り付け可能なカメラを用いて実環境の画像をキャプチャすることを含む。
【００４０】
ステップ６１０は、カメラによってキャプチャされた第１の画像セットに属する画像の特徴を識別することを含む。
【００４１】
ステップ６２０は、カメラによってキャプチャされた第２の画像セットに属する１つまたは複数の画像における１つまたは複数の周辺機器の画像位置を識別することを含み、カメラによってキャプチャされた第１の画像セットおよび第２の画像セットは、各セットからの１つまたは複数の画像グループが順番にキャプチャされるようにインタリーブされる。
【００４２】
ステップ６３０は、識別された特徴の１つまたは複数に応じて、実環境におけるカメラの第１の位置情報を生成することを含む。このステップは、特徴識別ステップ６１０が実行される画像のキャプチャに対応する時間に実行される。つまり、カメラ（カメラがＨＭＤに取り付けられている場合はＨＭＤ）の位置情報の生成は、上記の図５の例のフレームＡ１の特徴検出時に実行される。
【００４３】
ステップ６４０は、１つまたは複数の周辺機器の識別された画像位置に応じて、カメラに対する１つまたは複数の周辺機器のそれぞれの第２の位置情報を生成することを含む。このステップは、周辺機器識別ステップ６２０が実行される画像のキャプチャに対応する時間に実行される。つまり、周辺機器の位置情報の生成は、上記の例では画像フレームＢ１の特徴検出時に行われる。
【００４４】
ステップ６３０および６４０において、画像キャプチャに対応する時間は、画像キャプチャの時間、またはキャプチャされた画像が処理される前に遅延がある場合、この直後の時間であってもよい。たとえば、画像がＨＭＤを介して処理するためにカメラから関連する処理デバイス（ゲームコンソールなど）に送信される場合、画像キャプチャと画像処理の間に遅延が発生する。
【００４５】
ステップ６５０は、第２の画像セット内の所与の画像グループに対応する第１の平均を用いた所与の画像の第２の位置情報を、所与の画像グループに先行する画像グループに対応する第１の位置情報と、所与の画像グループに続く第１の画像セット内の画像グループに対応する第１の位置情報との関数と組み合わせることにより、実環境における１つまたは複数の周辺機器の位置を識別する第３の位置情報を生成することを含む。
【００４６】
このステップは、特徴識別ステップ６１０が実行される後続の画像のキャプチャに対応する時間に実行される。つまり、上記の図５の例では、フレームＡ２の特徴検出時に第３の位置情報の生成が実行される。いくつかの実施の形態では、関数は位置情報の平均である。上記のように、これは適切な場合は加重平均であってもよい。
【００４７】
図７は、実環境においてユーザが操作可能な１つまたは複数の周辺機器を追跡するためのシステムを概略的に示し、このシステムは、カメラ７００、特徴識別部７１０、周辺機器識別部７２０、および位置決定部７３０を備える。
【００４８】
ユーザおよび／またはＨＭＤに取り付け可能なカメラ７００は、実環境および／または１つまたは複数の周辺機器の画像をキャプチャするように動作可能である。ある実施の形態では、画像は、１つまたは複数のキャプチャされた画像の異なるセットに対して異なる露光時間でキャプチャされる。例えば、上述のように、周辺機器追跡のために周辺機器の画像を取り込むときよりも、ＨＭＤ追跡のために環境の画像を取り込むときの方が、より長い露光時間が使用されてもよい。ある実施の形態では、カメラ７００は、画像を取り込むための広角レンズ（魚眼レンズ、または視野が６０°を超える任意のレンズなど）を含む。
【００４９】
ある実施の形態では、システムはまた、カメラが環境のより明るい画像を取り込むことを可能にするために、１つまたは複数の画像キャプチャフレームの少なくとも第１のセットに対して環境を照明するように動作可能である光源（図４Ａの参照符号４００など）を備える。これにより、特徴の認識が向上する可能性がある。
【００５０】
ある実施の形態では、カメラは、周辺機器に関連付けられたライトが照明されているときに周辺機器の画像をキャプチャするように動作可能である。上述のように、ある実施の形態では、周辺機器は、環境を照明するように動作可能な光源がアクティブではないフレームにおいて（たとえば、周辺機器上のＬＥＤによって）照明されるように動作可能である。
【００５１】
特徴識別部７１０は、カメラによってキャプチャされた第１の画像セットに属する画像の特徴を識別するように動作可能である。
【００５２】
周辺機器識別部７２０は、カメラによってキャプチャされた第２の画像セットに属する１つまたは複数の画像における１つまたは複数の周辺機器の画像位置を識別するように動作可能であり、特徴識別部および周辺機器識別部は、１つまたは複数のキャプチャされた画像のインタリーブされたセット上でそれぞれの識別プロセスを実行する。図６のステップ６２０を参照して説明したように、カメラによってキャプチャされた第１の画像セットおよび第２の画像セットは、各セットからの１つまたは複数の画像のグループが順にキャプチャされるようにインタリーブされる。
【００５３】
上記のように、１つまたは複数の画像のインタリーブセットの例には、ＡＢＡＢ形式またはＡＡＢＢＡＡＢＢ形式への画像の配置が含まれる。ここでＡとＢは、異なるセットに属する画像を表す。ある実施の形態では、このセットは、上述のＡＡＢＡＡＢフォーマットなどのように、セット内に異なる数のキャプチャされた画像フレームを有してもよい。
【００５４】
位置決定部７３０は、識別された特徴の１つまたは複数に応じて実環境におけるカメラの第１の位置情報を生成し、１つまたは複数の周辺機器の識別された画像位置に応じてカメラに対する１つまたは複数の周辺機器のそれぞれの第２の位置情報を生成するように動作可能である。
【００５５】
位置決定部７３０はまた、第２の画像セット内の所与の画像グループに対応する第２の位置情報を、所与の画像グループに先行する第１の画像セット内の画像グループに対応する第１の位置情報と、所与の画像グループに続く第１の画像セット内の画像グループに対応する第１の位置情報との関数と組み合わせることにより、実環境における１つまたは複数の周辺機器の位置を識別する第３の位置情報を生成するように動作可能である。
【００５６】
ある実施の形態では、位置決定部７３０は、所与の画像グループの直前の第１の画像セット内の画像グループに対応する第１の位置情報と、所与の画像グループの直後の第１の画像セット内の画像グループに対応する第１の位置情報とを用いて第３の位置情報を生成するように動作可能である。
【００５７】
ある実施の形態では、位置決定部７３０は、環境の地図を使用して位置情報を生成するように動作可能である。例えば、地図は、ＳＬＡＭ処理を用いて生成されてもよい。
【００５８】
代替的に、または追加的に、システムは、動き追跡情報を生成するためにカメラ７００に関連付けられた１つまたは複数のハードウェア動き検出器を備えてもよい。そのようなハードウェア動き検出器の例には、加速度計とジャイロスコープが含まれる。
【００５９】
上記のシステムに対する多くの変形が、本開示において考慮される。
【００６０】
ある実施の形態では、カメラ７００は、第３の画像セットをキャプチャするように動作可能である。上記のように、これらの画像は、ユーザへの表示または追加の周辺機器の追跡のために画像をキャプチャするなど、他の目的で使用することも、機能上の目的では全く使用しないこともある。ある実施の形態では、３つの画像セットのそれぞれは、異なる数の画像のグループを含み、各機能の画像のグループの数の間に１：１：１の比がないようにする。ある実施の形態では、第１、第２および第３の画像セットは、それぞれの異なる数の画像のグループを含むことも想定される。
【００６１】
ある実施の形態では、グループは、各セットについて異なる数の画像を含む。つまり、各グループを形成する画像の数は、周辺機器追跡に対してではなくＨＭＤ追跡に対して異なってもよい。これは、優先順位付けされたデバイスの追跡の頻度を増やすのに有利である。また、画像セットに属するグループは、様々な数の画像を含んでもよいと考えられる。たとえば、ＡＡＢＡＢＡＡＢＡＡＡＢ配置では、Ａグループ内の画像フレームの数は、そのセットに属するグループ間で異なる。より一般的な用語では、ある実施の形態では、グループのうちの少なくとも２つは、各グループについて異なる数の画像を含む。３つの画像セットがキャプチャされる実施の形態では、第１、第２、および第３の画像セットの少なくとも１つに属するグループは、グループ毎に異なる数の画像を含む。
【００６２】
上述の技法は、ハードウェア、ソフトウェア、またはその２つの組み合わせで実装されてもよい。ソフトウェア制御データ処理装置を使用して実施の形態の１つまたは複数の機能を実装する場合、そのようなソフトウェア、およびそのようなソフトウェアが提供される非一時的機械可読記憶媒体などの記憶媒体または伝送媒体もまた本開示の実施の形態と見なされることが理解されるであろう。
【００６３】
したがって、前述の議論は、本発明の単なる例示的な実施の形態を開示および説明する。当業者によって理解されるように、本発明は、その精神または本質的な特徴から逸脱することなく、他の特定の形態で実施されてもよい。したがって、本発明の開示は、例示を意図したものであり、本発明の範囲および他の請求項を限定するものではない。本明細書の教示の容易に識別可能な変形を含む開示は、発明の主題が公に捧げられないように、前述の請求項の用語の範囲を部分的に定義する。
【図１】
2020144847.tif 000003
【図２Ａ】
2020144847.tif 000004
【図２Ｂ】
2020144847.tif 000005
【図３】
2020144847.tif 000006
【図４Ａ】
2020144847.tif 000007
【図４Ｂ】
2020144847.tif 000008
【図５】
2020144847.tif 000009
【図６】
2020144847.tif 000010
【図７】
2020144847.tif 000011
【外国語明細書】
2020144847000001.pdf