(57)【特許請求の範囲】
【請求項１】
3次元(3D)オブジェクトを伴う2次元(2D)面の画像をカメラで取り込んで表示するステップと、
前記2D面を検出およびトラッキングするステップと、
前記2D面の領域を、前記2D面における既知の位置を有する関心領域として割り当てるステップと、
前記3Dオブジェクトによる前記トラッキングされる2D面の前記画像における前記関心領域のオクルージョンを検出するステップと、
前記関心領域の前記検出されたオクルージョンに基づき、前記3Dオブジェクトの位置に関する情報を取得するステップと、
前記3Dオブジェクトの形状を決定するステップと、
前記3Dオブジェクトの前記形状に対して描画される、前記2D面の前記関心領域の前記既知の位置を基準にしたグラフィカルオブジェクトを描画および表示するステップと
を含む、方法。
【請求項２】
前記3Dオブジェクトの前記形状があらかじめ定められている、請求項1に記載の方法。
【請求項３】
前記3Dオブジェクトの前記形状を決定するステップが、前記2D面のオクルージョンの領域の形状、および、前記2D面に対する前記カメラの位置を決定するステップと、前記2D面のオクルージョンの前記領域の前記形状、および、前記2D面に対する前記カメラの前記位置を用いて前記3Dオブジェクトの前記形状を計算するステップとを含む、請求項1に記載の方法。
【請求項４】
前記グラフィカルオブジェクトが前記3Dオブジェクトの上に描画される、請求項1に記載の方法。
【請求項５】
前記グラフィカルオブジェクトが前記3Dオブジェクトの付近に描画される、請求項1に記載の方法。
【請求項６】
前記2D面における複数の領域が関心領域として割り当てられる、請求項1に記載の方法。
【請求項７】
前記関心領域の前記既知の位置があらかじめ定められている、請求項1に記載の方法。
【請求項８】
前記画像がモバイルプラットフォームによって取り込まれて表示される、請求項1に記載の方法。
【請求項９】
カメラと、
前記カメラに接続されたプロセッサと、
前記プロセッサに接続されたメモリと、
前記メモリに接続されたディスプレイと、
前記メモリ内に保持され、前記プロセッサの中で動作するソフトウェアであって、前記プロセッサに、前記カメラによって取り込まれた、3次元(3D)オブジェクトを伴う2次元(2D)面の画像を前記ディスプレイに表示させ、前記画像における前記2D面を検出およびトラッキングさせ、前記2D面における既知の位置を有する前記トラッキングされる2D面における関心領域として割り当てられた領域のオクルージョンを検出させ、前記関心領域の前記検出されたオクルージョンに基づき、前記3Dオブジェクトの位置に関する情報を取得させ、前記3Dオブジェクトの形状を決定させ、前記3Dオブジェクトの前記形状に対して描画される、前記2D面における前記関心領域の前記既知の位置を基準とするグラフィカルオブジェクトを前記ディスプレイに描画および表示させる、ソフトウェアと
を備える、モバイルプラットフォーム。
【請求項１０】
前記3Dオブジェクトの前記形状があらかじめ定められている、請求項9に記載のモバイルプラットフォーム。
【請求項１１】
前記プロセッサの中で動作する前記ソフトウェアが、前記プロセッサに、前記2D面のオクルージョンの領域の形状と、前記2D面に対する前記モバイルプラットフォームの前記位置とに基づいて前記3Dオブジェクトの前記形状を決定させる、請求項9に記載のモバイルプラットフォーム。
【請求項１２】
前記グラフィカルオブジェクトが、前記ディスプレイにおける前記3Dオブジェクトの上に描画される、請求項9に記載のモバイルプラットフォーム。
【請求項１３】
前記グラフィカルオブジェクトが、前記ディスプレイにおける前記3Dオブジェクトの付近に描画される、請求項9に記載のモバイルプラットフォーム。
【請求項１４】
前記2D面における複数の領域が関心領域として割り当てられている、請求項9に記載のモバイルプラットフォーム。
【請求項１５】
前記関心領域の前記既知の位置があらかじめ定められている、請求項9に記載のモバイルプラットフォーム。
【請求項１６】
動きセンサをさらに備え、前記ソフトウェアが、前記プロセッサに、前記動きセンサからのデータを用いて前記画像における前記2D面を検出およびトラッキングさせる、請求項9に記載のモバイルプラットフォーム。
【請求項１７】
前記ソフトウェアが、前記プロセッサに、前記カメラからのさらなる画像を用いて前記画像における前記2D面を検出およびトラッキングさせる、請求項9に記載のモバイルプラットフォーム。
【請求項１８】
3次元(3D)オブジェクトを伴う2次元(2D)面の画像を取り込むための手段と、
前記画像を表示するための手段と、
前記2D面を検出およびトラッキングするための手段と、
前記2D面における既知の位置を有する、前記トラッキングされる2D面における関心領域として割り当てられた領域のオクルージョンを検出するための手段と、
前記関心領域の前記検出されたオクルージョンに基づき、前記3Dオブジェクトの位置に関する情報を取得するための手段と、
前記3Dオブジェクトの形状を決定するための手段と、
前記3Dオブジェクトの前記形状に対して描画される、前記2D面の前記関心領域の前記既知の位置を基準にしたグラフィカルオブジェクトを描画および表示するための手段と
を備える、システム。
【請求項１９】
前記3Dオブジェクトの前記形状があらかじめ定められている、請求項18に記載のシステム。
【請求項２０】
前記2D面のオクルージョンの領域の形状を決定するための手段と、
前記2D面に対する、前記画像を取り込むための前記手段の前記位置を決定するための手段であって、前記3Dオブジェクトの前記形状を決定するための前記手段が、前記2D面のオクルージョンの前記領域の前記形状と、前記2D面に対する、前記画像を取り込むための前記手段の前記位置とを用いて前記3Dオブジェクトの前記形状を決定する、手段と、
をさらに備える、請求項18に記載のシステム。
【請求項２１】
前記グラフィカルオブジェクトが前記3Dオブジェクトの上に描画される、請求項18に記載のシステム。
【請求項２２】
前記グラフィカルオブジェクトが前記3Dオブジェクトの付近に描画される、請求項18に記載のシステム。
【請求項２３】
前記2D面における複数の領域が関心領域として割り当てられている、請求項18に記載のシステム。
【請求項２４】
前記関心領域の前記既知の位置があらかじめ定められている、請求項18に記載のシステム。
【請求項２５】
内部に記録されたプログラムコードを含むコンピュータ可読記録媒体であって、
カメラによって取り込まれた、3次元(3D)オブジェクトを伴う2次元(2D)面の画像を表示するためのプログラムコードと、
前記画像における前記2D面を検出およびトラッキングするためのプログラムコードと、
前記2D面における既知の位置を有する、前記トラッキングされる2D面における関心領域として割り当てられた領域のオクルージョンを検出するためのプログラムコードと、
前記3Dオブジェクトの形状を決定するためのプログラムコードと、
前記3Dオブジェクトの前記形状に対して描画される、前記2D面の前記関心領域の前記既知の位置を基準にしたグラフィカルオブジェクトを描画および表示するためのプログラムコードと
を備える、コンピュータ可読記録媒体。
【請求項２６】
前記3Dオブジェクトの前記形状があらかじめ定められている、請求項25に記載のコンピュータ可読記録媒体。
【請求項２７】
前記2D面のオクルージョンの領域の形状を決定するためのプログラムコードと、前記2D面に対する前記カメラの前記位置を決定するためのプログラムコードとをさらに備え、前記3Dオブジェクトの前記形状を決定するためのプログラムコードが、前記2D面のオクルージョンの前記領域の前記形状と、前記2D面に対する前記カメラの前記位置とを用いて前記3Dオブジェクトの前記形状を決定する、請求項25に記載のコンピュータ可読記録媒体。
【請求項２８】
前記グラフィカルオブジェクトが、ディスプレイにおける前記3Dオブジェクトの上に描画される、請求項25に記載のコンピュータ可読記録媒体。
【請求項２９】
前記グラフィカルオブジェクトが、ディスプレイにおける前記3Dオブジェクトの付近に描画される、請求項25に記載のコンピュータ可読記録媒体。
【請求項３０】
前記2D面における複数の領域が関心領域として割り当てられている、請求項25に記載のコンピュータ可読記録媒体。
【請求項３１】
前記関心領域の前記既知の位置があらかじめ定められている、請求項25に記載のコンピュータ可読記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、３次元オブジェクトを検出およびトラッキングするためのオクルージョンの使用に関する。
【背景技術】
【０００２】
拡張現実(AR)のアプリケーションでは、現実世界のオブジェクトが撮像され、画像情報またはテキスト情報などのコンピュータ生成情報とともにスクリーン上に表示される。ARでは、撮像された現実世界のオブジェクトは、そのオブジェクトに対するカメラの位置と向き(姿勢)の情報を求めるために、検出およびトラッキングされる。この情報は、現実世界のオブジェクトとともに表示されることになるグラフィカルオブジェクトを正確に描画するために用いられる。検出およびトラッキングされる現実世界のオブジェクトは、一般に2次元(2D)オブジェクトである。3次元(3D)オブジェクトの検出およびトラッキングは、2D面の検出およびトラッキングに比べてアルゴリズム的にさらに複雑となり、またコンピュータ計算の上では極めて高価となる。デスクトップコンピュータでは、通常、オブジェクトのジオメトリから3Dオブジェクト全体を認識することによって3Dの十分なトラッキングが行われている。スマートフォンなどのモバイルプラットフォームにおける処理能力の制限により、モバイルプラットフォームに向けた3Dオブジェクトの十分なトラッキングのソリューションは存在しない。しかし、3Dオブジェクトの検出およびトラッキングは、単なる2Dの画像または面ではなく、現実世界における3Dオブジェクトを取り巻く説得力のあるユーザエクスペリエンスを築くための、ARのアプリケーションにおける依然として重要な目的である。したがって、3Dオブジェクトを検出およびトラッキングするための方法の改善が必要である。
【発明の概要】
【課題を解決するための手段】
【０００３】
モバイルプラットフォームは、2D面における3Dオブジェクトのオクルージョンを用いて3Dオブジェクトを検出およびトラッキングする。3Dオブジェクトを検出およびトラッキングするために、3Dオブジェクトを伴う2D面の画像が取り込まれて表示され、また、2D面に対するモバイルプラットフォームの位置が検出およびトラッキングされる。2D面に関心領域として割り当てられた領域のオクルージョンが検出される。3Dオブジェクトの形状は、その形状を算出するために、所定の形状に基づき、または、遮蔽された2D面の領域の形状を用い、また2D面に対するモバイルプラットフォームの位置を用いることによって求められる。2D面の関心領域の位置と3Dオブジェクトの形状とに基づき、表示された3Dオブジェクトの上またはその付近にグラフィカルオブジェクトを描画および表示するなどの、2D面における3Dオブジェクトの位置に対する任意の所望のアクションが実行されてもよい。
【図面の簡単な説明】
【０００４】
【図１Ａ】2D面のオクルージョンを用いて3Dオブジェクトを検出およびトラッキングすることができるモバイルプラットフォームの前面部を示す図である。
【図１Ｂ】2D面のオクルージョンを用いて3Dオブジェクトを検出およびトラッキングすることができるモバイルプラットフォームの背面部を示す図である。
【図２】2Dの格子縞模様の面と3Dの筒状のオブジェクトとからなる取込み画像を表示している、ランドスケープモードにあるモバイルプラットフォームの前面部を示す図である。
【図３】モバイルプラットフォームにより、2D面のオクルージョンを用いて3Dオブジェクトを検出およびトラッキングするフローチャートである。
【図４】「関心領域」として割り当てられた2つの領域を伴う、撮像された2Dの格子縞模様の面における上部平面図である。
【図５】2D面の画像と、3Dオブジェクトの形状および2D面に対するモバイルプラットフォームの姿勢に基づいて2D面の領域を遮蔽している3Dオブジェクトとを取り込んでいるモバイルプラットフォームの側面図である。
【図６】3Dオブジェクトによって遮蔽された2D面の領域を示す、2Dの格子縞模様の面の上部平面図である。
【図７】2Dの格子縞模様の面と3Dの筒状のオブジェクトとからなる取込み画像と、描画および表示されたグラフィカルオブジェクトとを表示している、ランドスケープモードにあるモバイルプラットフォームの前面部を示す図である。
【図８】2D面のオクルージョンを用いて3Dオブジェクトを検出およびトラッキングすることができるモバイルプラットフォームのブロック図である。
【発明を実施するための形態】
【０００５】
図1Aおよび図1Bは、2D面のオクルージョンを用いて3Dオブジェクトを検出およびトラッキングすることができるモバイルプラットフォーム100の前面部と背面部をそれぞれ示す。図1Aおよび図1Bにおけるモバイルプラットフォーム100は、ハウジング101と、タッチスクリーンディスプレイでもよいディスプレイ102とを含むように示されている。また、モバイルプラットフォーム100は、たとえば携帯電話である場合には、スピーカ104およびマイクロフォン106を含み得る。さらに、モバイルプラットフォーム100は、ディスプレイ102に表示される周囲の物を撮像する前方カメラ108を含む。さらに、モバイルプラットフォーム100は、加速度計、ジャイロスコープなどの動きセンサ110を含むことができ、この動きセンサ110は、モバイルプラットフォーム100の姿勢を求める際の補助に用いられてもよく、または同様の意味合いで、動きセンサ110に対する、既知の/キャリブレーションされた位置関係を有し得るカメラ108の姿勢を求める際の補助に用いられてもよい。モバイルプラットフォーム100の姿勢は、視覚ベースのトラッキング技術を用いて付加的または代替的に求められてもよい。モバイルプラットフォーム100は、携帯電話もしくは他のワイヤレス通信デバイス、パーソナル通信システム(PCS)デバイス、パーソナルナビゲーションデバイス(PND)、個人情報マネージャ(PIM)、携帯情報端末(PDA)、ラップトップ、カメラ、または、拡張現実(AR)に対応可能な他の好適なモバイルデバイスなどの、任意のポータブル電子デバイスであってもよいことを理解されたい。
【０００６】
図2は、ランドスケープモードにあるモバイルプラットフォーム100の前面部を示す。ディスプレイ102は、現実世界の2Dの格子縞模様の面120の画像を、その面120の上にある現実世界の3Dの筒状のオブジェクト122とともに表示するように示されている。必要に応じて、コンピュータで描画されたグラフィカルオブジェクトがディスプレイ102によって同様に表示されてもよい。現実世界のオブジェクトは、カメラ108(図1B)を用いてもたらされるが、いかなるARオブジェクトも、コンピュータで描画されたオブジェクト(または情報)である。モバイルプラットフォーム100は、既知の位置における2D面120のオクルージョンと、求められた3Dオブジェクトの形状とに基づいて3Dオブジェクト122を検出およびトラッキングする。したがって、モバイルプラットフォーム100は、3Dオブジェクトを直接的に検出およびトラッキングする必要がなく、それにより計算の効率が改善され、このことは、フレームレートおよびバッテリー使用量の改善になる。
【０００７】
図3は、2D面のオクルージョンを用いて3Dオブジェクトを検出およびトラッキングするフローチャートである。図示されているように、3Dオブジェクトを伴う2D面の画像が取り込まれて表示される(202)。取り込まれる画像は、写真もしくはビデオフレームなどの1枚の画像でもよく、または必要に応じて、1枚の画像を作るために2枚以上の写真もしくはビデオフレームが用いられてもよいことを理解されたい。2D面に対するモバイルプラットフォームの位置が、検出およびトラッキングされる(204)。たとえば、図2に示されている2Dの格子縞模様の面120に対するモバイルプラットフォーム100の位置が検出およびトラッキングされる。2D面に対するモバイルプラットフォームの検出およびトラッキングは、周知の視覚ベースのトラッキングを用いて行われてもよく、その場合には、カメラ108からの追加画像の特徴が抽出され、その特徴が、2D面の画像から抽出された特徴と比較される。あるいは、必要に応じて、モバイルプラットフォームと2D面との関係は、現実世界における2D面の既知の姿勢と、動きセンサ110を用いて求められるモバイルプラットフォームの姿勢とに基づいて求められてもよい。
【０００８】
2D面の特定領域、すなわち既知の位置を有する領域が、「関心領域」として割り当てられる(206)。この関心領域は、3Dオブジェクトによって遮蔽されると想定される領域である。関心領域の割当ては、たとえばユーザが、モバイルプラットフォーム100のグラフィカルユーザインターフェースを用いて、ディスプレイ102を通じて2D面を見ながら行ってもよい。あるいは、関心領域の割当ては、オフラインで行われ、モバイルプラットフォーム100のメモリに記憶されてもよい。必要に応じて、2D面全体、または、2D面のほんのわずかな領域が、関心領域として割り当てられてもよい。1つまたは複数の領域が、関心領域として同じ2D面の中に割り当てられてもよい。これらの関心領域は、正方形、長方形、三角形、円、または、2D画像内の特定領域を覆う任意の多角形などの、一般的な幾何学的形状でもよい。たとえば、関心領域の形状と位置は、3Dオブジェクトの所定の形状と位置に基づいていてもよい。図4は、「関心領域」として割り当てられた、既知の位置を有する2つの領域124aおよび124bを伴う、撮像された2Dの格子縞模様の面120における上部平面図を例として示している。この例における想定される3Dオブジェクト122は、筒状の形状を有し、そのため円形の断面を有するため、これらの領域124aおよび124bは円形として示されている。必要に応じて、より多くの関心領域が割り当てられてもよい。さらに、必要に応じて、関心領域は、この3Dオブジェクトの断面形状と異なる形状を有してもよい。
【０００９】
次いでプロセスは、関心領域がいつ遮蔽されるか、すなわち、関心領域がいつ覆われるかを検出する(208)。オクルージョンは、自然特徴点の検出(natural feature detection)を行い、関心領域におけるいくつかの特徴点を用いてマッチングを行い、関心領域におけるかなりの部分の特徴点、すなわち、所定のしきい値を超える数が、カメラ108のビューの中に関心領域が入っている間にいつ検出されないかを特定することによって検出されてもよい。特徴点は、視覚ベースのトラッキング技術の一部として検出およびマッチングされてもよい。特徴点が関心領域にわたってかなり分散している場合には、覆われている関心領域の部分と、覆われていない関心領域の部分とを幾何学的に見つけることが可能である。必要に応じて、ARオブジェクトの描画および表示に向けて、関心領域全体、または、関心領域のかなりの部分のオクルージョンが必要となってもよい。言い換えれば、関心領域の一部だけを遮蔽することは不十分であり得る。関心領域のオクルージョンは、必ずしもそうでない場合もあるが、3Dオブジェクトによって引き起こされると想定され得る。誤検出量、すなわち、3Dオブジェクトに起因しない関心領域のオクルージョンの検出量を減らすために、関心領域の形状は、3Dオブジェクトと同じ断面を有してもよく、形状において関心領域と著しく異なる領域が遮蔽された場合には、そのオクルージョンは3Dオブジェクトに起因しないと判断することができる。たとえば、必要に応じて特定形状の関心領域が用いられてもよく、それにより、その関心領域を遮蔽するのに特定のオブジェクトだけを用いることができる。関心領域は、2D面の上に既知の位置を有しているため、検出された関心領域のオクルージョンは、3Dオブジェクトであると想定される、遮蔽しているオブジェクトの位置に関する情報を提供する。
【００１０】
また、3Dオブジェクトの形状が求められる(210)。3Dオブジェクトの形状は、あらかじめ定められていてもよい。すなわち、3Dオブジェクトの形状は、ユーザによって提供されるか、または、あらかじめプログラムされてメモリに記憶される。さらに、3Dオブジェクトの形状は、2D面のオクルージョンの領域に基づいて求められてもよい。たとえば、図5は、2D面120と、この2D面120の領域126を遮蔽している3Dオブジェクト122とからなる画像を取り込んでいるモバイルプラットフォーム100の側面図を示す。図5の光線123によって示されているように、3Dオブジェクト122は、3Dオブジェクト122の形状と、面120に対するモバイルプラットフォーム100の姿勢(すなわち、位置と向き)とに応じて変わる2D面120の領域126を遮蔽することになる。図6は、撮像された格子縞模様の面120と、ハッチング線で示されている、3Dオブジェクトによって遮蔽された領域126との上部平面図を示す。このように、2D面120をトラッキングすることによって求められる、2Dの格子縞模様の面120に対するモバイルプラットフォーム100の既知の姿勢と、2Dの格子縞模様の面120における遮蔽された領域の形状とに基づいて、3Dオブジェクト122の形状が計算され得る。モバイルプラットフォーム100が2Dの格子縞模様の面120に対して動き、3Dオブジェクト122を撮像すると、3Dオブジェクト122の形状に関する追加情報が得られ、その情報がモバイルプラットフォーム100のメモリに記憶されてもよい。
【００１１】
モバイルプラットフォーム100は、遮蔽された関心領域の既知の位置と、求められた3Dオブジェクトの形状とを用いて、3Dオブジェクトを間接的にトラッキングすることができる。このように、実際の3Dオブジェクトを直接的に検出およびトラッキングする代わりに、2D面における遮蔽された関心領域が検出およびトラッキングされ、それによって計算の要件が著しく低減される。次いで、2D面における3Dオブジェクトの位置に対して、任意の所望のアクションが実行されてもよい(212)。たとえば、拡張現実のオブジェクトが、遮蔽された関心領域の位置を基準にして次に描画および表示されてもよく、この場合にARオブジェクトは、求められた3Dオブジェクトの形状に対して描画される(212)。必要に応じて、離散的なアクションを行うか、または、モバイルプラットフォームを伴う動作もしくはモバイルプラットフォームの内部の動作をスイッチオンおよびスイッチオフするなどの、求められた3Dオブジェクトの位置に応じた任意の他のアクションが引き起こされてもよい。現実世界の動作またはアクションは、たとえば無線周波数の信号もしくは光信号を介して直接的に、またはワイヤレスネットワークを通じて、モバイルプラットフォームによって制御されてもよい。たとえば、現実世界の電気回路、または電気回路のシミュレーションが、配線図の上に3Dオブジェクト(触覚アイコン)を配置することによって制御されてもよい。鉄道駅の図面の上に3Dオブジェクトを配置することによって鉄道駅のスイッチ点が制御されてもよい。他の例には、たとえば風車換気装置(windmill ventilator)などのフローソース(flow source)でもよいオブスタクル(obstacle)として3Dオブジェクトをフロー内に配置することによって、フローシミュレーションのアプリケーションに影響を及ぼすか、またはそれを制御することなどが含まれる。実際の換気装置を現場に配置することによって、フローシミュレーションは、それに応じて変更され得る。別の例は、衝突反応を調整することである。たとえば、仮想オブジェクトは、物理シミュレーションのアプリケーションにオブスタクルとして配置された3Dオブジェクトの衝突に正確に反応し得る。
【００１２】
図7は、図2に示されているものと同様である、2Dの格子縞模様の面と3Dの筒状のオブジェクトとからなる取込み画像を表示しているモバイルプラットフォーム100の前面部を示すが、さらに、描画および表示されたグラフィカルオブジェクトも示している。たとえば、ARオブジェクト128は、ARオブジェクト128によって3Dオブジェクト122が覆われるか、または塗られて見えるように、3Dオブジェクト122の大きさに対して描画され、また遮蔽された関心領域を基準に表示されるように示されている。3Dオブジェクト122の大きさに対して他のARオブジェクト129aおよび129bが描画されてもよいが、それらは3Dオブジェクト122の上ではなく、3Dオブジェクト122の付近に表示される。この例では、ARオブジェクト129aおよび129bは、3Dオブジェクト122のまわりを飛び、ARオブジェクト129bで示されているように3Dオブジェクト122の後ろに姿を消す蜂として示されている。
【００１３】
図8は、2D面のオクルージョンを用いて3Dオブジェクトを検出およびトラッキングすることが可能なモバイルプラットフォーム100のブロック図である。モバイルプラットフォーム100は、カメラ108などの、3Dオブジェクトを伴う2D面の画像を取り込むための手段を含み、また、加速度計、ジャイロスコープ、電子コンパス、または他の同様の動き検知素子などの動きセンサ110を含み得る。また、モバイルプラットフォーム100は、「コンピュータビジョン」技術を用いるオブジェクト認識などの、他の位置決定方法を含み得る。さらに、モバイルプラットフォームは、ディスプレイ102などの、画像およびARオブジェクトを表示するための手段を含むユーザインターフェース150を含む。また、ユーザインターフェース150は、キーパッド152、または、ユーザが情報をモバイルプラットフォーム100に入力することができる他の入力デバイスを含み得る。必要に応じて、キーパッド152は、タッチセンサを有するディスプレイ102に仮想キーパッドを組み込むことによって省かれてもよい。また、ユーザインターフェース150は、たとえばモバイルプラットフォームが携帯電話である場合には、マイクロフォン106とスピーカ104を含み得る。当然ながら、モバイルプラットフォーム100は、ワイヤレストランシーバなどの、本開示に関係しない他の要素を含み得る。
【００１４】
また、モバイルプラットフォーム100は、カメラ108、動きセンサ110、およびユーザインターフェース150に接続され、それらと通信する制御ユニット160を含む。制御ユニット160は、カメラ108および動きセンサ110からデータを受けて処理し、それに応じてディスプレイ102を制御する。制御ユニット160は、プロセッサ161および関連するメモリ164、ハードウェア162、ソフトウェア165、ならびにファームウェア163によって提供され得る。制御ユニット160は、2D面を検出し、関心領域がいつ遮蔽されたかを判断し、また必要に応じて、遮蔽された領域の形状を判定するために、カメラ108からの画像を処理する画像プロセッサ166を含み得る。また、制御ユニットは、カメラ108からの視覚データ、および/または、動きセンサ110から受信されたデータに基づき、検出された2D面に対するモバイルプラットフォーム100の姿勢を決定およびトラッキングするための位置プロセッサ167を含み得る。さらに、制御ユニット160は、遮蔽された関心領域の位置と、求められた3Dオブジェクトの形状とに対して所望のARオブジェクトを描画するための、ゲームエンジンなどでもよいグラフィックスエンジン168を含み得る。このグラフィックスエンジン168は、(たとえば、メモリ164内の)記憶場所からARオブジェクトを取り出すことができる。画像プロセッサ166、位置プロセッサ167、およびグラフィックスエンジンは、説明を簡単にするためにプロセッサ161とは別に示されているが、これらはプロセッサ161の一部でもよく、または、プロセッサ161の中で動作するソフトウェア165の命令に基づいてプロセッサの中で実施されてもよい。本明細書では、プロセッサ161は、1つまたは複数のマイクロプロセッサ、組込み型プロセッサ、コントローラ、特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)などを含み得るが、必ずしもそれらを含む必要はないことが理解されよう。プロセッサという用語は、特定のハードウェアではなく、システムによって実施される機能を説明するように考えられている。さらに、本明細書では、「メモリ」という用語は、長期メモリ、短期メモリ、またはモバイルプラットフォームに関連する他のメモリを含む任意の種類のコンピュータ記憶媒体を指し
、いかなる特定の種類のメモリ、もしくはメモリの数、またはメモリが記憶される媒体の種類に限定されない。
【００１５】
本装置は、画像プロセッサ166、位置プロセッサ167、ならびに、必要に応じて動きセンサ110を含み得る、2D面を検出およびトラッキングするための手段を含む。さらに本装置は、画像プロセッサ166を含み得る、2D面における関心領域のオクルージョンを検出するための手段を含む。3Dオブジェクトの形状を求めるための手段は、メモリ164から3Dオブジェクトの所定の形状を取り出すグラフィックスエンジン168を含み得る。さらに、2D面のオクルージョンの領域の形状を求めるための手段は、たとえば画像プロセッサ166によって提供されてもよく、2D面に対するモバイルプラットフォームの姿勢を求めるための手段は、たとえば位置プロセッサ167、および、必要に応じて動きセンサ110によって提供されてもよく、3Dオブジェクトの形状を求めるための手段は、3Dオブジェクトの形状を求めるために、2D面のオクルージョンの領域の形状と、2D面に対するカメラの姿勢とを用いるプロセッサ161などでもよい。2D面の関心領域の位置を基準にした、3Dオブジェクトの形状に対して描画されるグラフィカルオブジェクトを描画するための手段は、グラフィックスエンジン168でもよい。
【００１６】
本明細書で説明される方法は、用途に応じて様々な手段によって実施されてもよい。たとえば、これらの方法は、ハードウェア162、ファームウェア163、ソフトウェア165、またはそれらの任意の組合せで実施されてもよい。ハードウェアの実装形態の場合、処理ユニットは、本明細書で説明された機能を実行するように設計された、1つもしくは複数の特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号プロセッシングデバイス(DSPD)、プログラマブル論理デバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、電子デバイス、他の電子ユニット、またはそれらの組合せ内で実装されてもよい。
【００１７】
ファームウェアおよび/またはソフトウェアの実装形態の場合、これらの方法は、本明細書で説明された機能を実行するモジュール(たとえば、プロシージャ、関数など)によって実装されてもよい。本明細書で説明された方法を実施する際に、命令を有形に具現化する任意の機械可読媒体が用いられてもよい。たとえば、ソフトウェアコードがメモリ164に記憶され、プロセッサ161によって実行されてもよい。メモリは、プロセッサ161の内部に実装されてもよく、または、プロセッサ161の外部に実装されてもよい。
【００１８】
ファームウェアおよび/またはソフトウェアで実装される場合、機能は、コンピュータ可読媒体上に1つもしくは複数の命令またはコードとして記憶されてもよい。例としては、データ構造で符号化された非一時的なコンピュータ可読媒体、およびコンピュータプログラムで符号化されたコンピュータ可読媒体が挙げられる。たとえば、内部に記憶されたプログラムコードを含むコンピュータ可読媒体は、カメラによって取り込まれた、3Dオブジェクトを伴う2D面の画像を表示するためのプログラムコードと、その画像の2D面を検出およびトラッキングするためのプログラムコードと、2D面に関心領域として割り当てられた領域のオクルージョンを検出するためのプログラムコードと、3Dオブジェクトの形状を決定するためのプログラムコードと、3Dオブジェクトの形状に対して描画される、2D面における関心領域の位置を基準にしたグラフィカルオブジェクトを描画および表示するためのプログラムコードとを含み得る。さらに、コンピュータ可読媒体は、2D面のオクルージョンの領域の形状を決定するためのプログラムコードと、2D面に対するカメラの姿勢を決定するためのプログラムコードとを含むことができ、このうち、3Dオブジェクトの形状を決定するためのプログラムコードは、2D面のオクルージョンの領域の形状と、2D面の姿勢とを用いて3Dオブジェクトの形状を決定する。コンピュータ可読媒体は、物理的なコンピュータ記憶媒体を含む。記憶媒体は、コンピュータによってアクセスされ得る任意の利用可能な媒体でもよい。限定ではなく、例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROM、または他の光ディスクストレージ、磁気ディスクストレージまたは他の磁気記憶デバイス、あるいは、所望のプログラムコードを命令またはデータ構造の形で記憶するのに使用することができ、かつコンピュータによってアクセスすることのできる任意の他の媒体を備えてよく、本明細書で使用するディスク(diskおよびdisc)には、コンパクトディスク(disc)(CD)、レーザディスク(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フレキシブルディスク(disk)、およびブルーレイディスク(disc)が含まれ、ディスク(disk)は通常、データを磁気的に再
生し、一方、ディスク(disc)はデータをレーザによって光学的に再生する。上記の組合せも、コンピュータ可読媒体の範囲内に含まれるべきである。
【００１９】
たとえば、内部に記憶されたプログラムコードを含むコンピュータ可読媒体は、カメラによって取り込まれた、3Dオブジェクトを伴う2D面の画像を表示するためのプログラムコードと、その画像の2D面を検出およびトラッキングするためのプログラムコードと、2D面に関心領域として割り当てられた領域のオクルージョンを検出するためのプログラムコードと、3Dオブジェクトの形状を決定するためのプログラムコードと、3Dオブジェクトの形状に対して描画される、2D面における関心領域の位置を基準にしたグラフィカルオブジェクトを描画および表示するためのプログラムコードとを含み得る。
【００２０】
説明のために本発明を特定の実施形態に関連して示したが、本発明はそれらの実施形態に限定されない。本発明の範囲から逸脱することなく様々な変更および改変がなされてもよい。したがって、添付の特許請求の範囲における趣旨および範囲は、上記の説明に限定されるべきではない。
【符号の説明】
【００２１】
100  モバイルプラットフォーム
102  ディスプレイ
108  カメラ
110  動きセンサ
120  2D面
122  3Dオブジェクト
124a  領域
124b  領域
126  領域
128  ARオブジェクト
129a  他のARオブジェクト
129b  他のARオブジェクト
150  ユーザインターフェース
160  制御ユニット
161  プロセッサ
166  画像プロセッサ
167  位置センサ
168  グラフィックスエンジン
【図１Ａ】
0005554457.tif 000002
【図１Ｂ】
0005554457.tif 000003
【図２】
0005554457.tif 000004
【図３】
0005554457.tif 000005
【図４】
0005554457.tif 000006
【図５】
0005554457.tif 000007
【図６】
0005554457.tif 000008
【図７】
0005554457.tif 000009
【図８】
0005554457.tif 000010