(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6662914
(24)【登録日】2020年2月17日
(45)【発行日】2020年3月11日
(54)【発明の名称】媒介現実
(51)【国際特許分類】
G06F 3/01 20060101AFI20200227BHJP
G06F 3/0481 20130101ALI20200227BHJP
G06T 19/00 20110101ALI20200227BHJP
【FI】
G06F3/01 570
G06F3/0481 150
G06T19/00 A
【請求項の数】14
【全頁数】22
(21)【出願番号】特願2017-562760(P2017-562760)
(86)(22)【出願日】2016年5月26日
(65)【公表番号】特表2018-524684(P2018-524684A)
(43)【公表日】2018年8月30日
(86)【国際出願番号】FI2016050366
(87)【国際公開番号】WO2016193537
(87)【国際公開日】20161208
【審査請求日】2018年1月15日
(31)【優先権主張番号】15170628.0
(32)【優先日】2015年6月4日
(33)【優先権主張国】EP
【前置審査】
(73)【特許権者】
【識別番号】315002955
【氏名又は名称】ノキア テクノロジーズ オーユー
(74)【代理人】
【識別番号】100127188
【弁理士】
【氏名又は名称】川守田 光紀
(72)【発明者】
【氏名】レッパネン ユッシ
(72)【発明者】
【氏名】エロネン アンッティ
(72)【発明者】
【氏名】レフティニエミ アルト
【審査官】
後藤 彰
(56)【参考文献】
【文献】
米国特許出願公開第2014/0225918(US,A1)
【文献】
国際公開第2014/016987(WO,A1)
【文献】
特開2014−072570(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/01
G06F 3/0481
G06T 19/00
(57)【特許請求の範囲】
【請求項1】
仮想空間の仮想シーンをユーザに見せることと;
前記ユーザの三次元ジェスチャを前記仮想空間において対応する三次元ジェスチャにマッピングすることと;
前記仮想空間において対応する三次元ジェスチャが、前記仮想空間の第1の部分に関連する一つ又は複数の第1の既定ジェスチャであるという決定に応じて、前記仮想空間の第1の部分に関連する、前記仮想空間におけるイベントを検出するために、前記仮想空間を経時的に分析することと;
を含む方法であって、
前記仮想空間の第1の部分は境界であり、前記検出されたイベントは、前記境界を移動仮想物体が横断する交差イベントである、方法。
【請求項2】
前記仮想空間の第1の部分は前記ユーザによって指定される、請求項1に記載の方法。
【請求項3】
前記仮想空間の第1の部分は、前記ユーザが三次元ジェスチャを用いて指定する、請求項2に記載の方法。
【請求項4】
前記仮想空間の第1の部分は境界を規定する、請求項1から3の何れかに記載の方法。
【請求項5】
前記ユーザの一つ又は複数の三次元ジェスチャを、前記仮想空間において対応する一つ又は複数の三次元ジェスチャにマッピングし、該一つ又は複数の三次元ジェスチャに応じて前記境界の少なくとも一次元を規定することを含む、請求項4に記載の方法。
【請求項6】
前記仮想空間の第1の部分の位置及び/又は向きの変化を定めるために、前記ユーザの一つ又は複数の三次元ジェスチャを、前記仮想空間において対応する一つ又は複数の三次元ジェスチャにマッピングすることを含む、請求項1から5の何れかに記載の方法。
【請求項7】
前記ユーザの一つ又は複数の三次元ジェスチャを、前記仮想空間において対応する一つ又は複数の三次元ジェスチャにマッピングすることは、前記仮想空間の仮想シーンを規定するために用いられる視野に依存する、請求項6に記載の方法。
【請求項8】
前記仮想空間の第1の部分は、一つ又は複数の仮想物体に関連して自動的に規定される、請求項1から7の何れかに記載の方法。
【請求項9】
前記検出されたイベントに応じて応答を生成することであって、該応答は前記ユーザに対するリアルタイム警報である、前記生成することを更に含む、請求項1から8の何れかに記載の方法。
【請求項10】
前記検出されたイベントに対する応答を生成することであって、該応答はロギング情報を含む、前記生成することを更に含む、請求項1から9の何れかに記載の方法。
【請求項11】
前記検出されたイベントに対する応答は、前記ユーザによって指定される、請求項9又は10に記載の方法。
【請求項12】
仮想空間の仮想シーンをユーザに見せる手段と;
前記ユーザの三次元ジェスチャを前記仮想空間において対応する三次元ジェスチャにマッピングする手段と;
前記仮想空間において対応する三次元ジェスチャが、前記仮想空間の第1の部分に関連する一つ又は複数の第1の既定ジェスチャであるという決定に応じて、前記仮想空間の第1の部分に関連する、前記仮想空間におけるイベントを検出するために、前記仮想空間を経時的に分析する手段と;
を備える装置であって、
前記仮想空間の第1の部分は境界であり、前記検出されたイベントは、前記境界を移動仮想物体が横断する交差イベントである、装置。
【請求項13】
処理手段及び記憶手段を備える装置であって、前記装置はプログラム命令を格納し、前記プログラム命令は、前記処理手段に実行されると、前記装置に、請求項1から11のいずれかに記載の方法を遂行させるように構成される、装置。
【請求項14】
装置の処理手段に実行されると、前記装置に、請求項1から11のいずれかに記載の方法を遂行させるように構成されるプログラム命令を備える、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、拡張現実(augmented reality)や仮想現実(virtual reality)等の媒介現実(mediated reality)に関する。
【0002】
本願における媒介現実は、ユーザが完全人工環境又は半人工環境を体験することである。
【0003】
拡張現実は媒介現実の一形態で、ユーザは半人工半現実環境を体験する。仮想現実も媒介現実の一形態で、ユーザは完全人工環境を体験する。
【0004】
必ずしも全てではないが本発明の種々の実施形態によれば、仮想空間の仮想シーンをユーザに見せることと;ユーザの三次元ジェスチャを仮想空間において対応する三次元ジェスチャにマッピングすることと;仮想空間において対応する三次元ジェスチャが、仮想空間の第1の部分に関連する一つ又は複数の第1の既定ジェスチャであることという決定に応じて、仮想空間の第1の部分に関連する、仮想空間におけるイベントを検出するために、仮想空間を経時的に分析することを含む方法が提供される。
【0005】
必ずしも全てではないが本発明の種々の実施形態によれば、仮想空間の仮想シーンをユーザに見せる手段と;ユーザの三次元ジェスチャを仮想空間において対応する三次元ジェスチャにマッピングする手段と;仮想空間において対応する三次元ジェスチャが、仮想空間の第1の部分に関連する一つ又は複数の第1の既定ジェスチャであることという決定に応じて、仮想空間の第1の部分に関連する、仮想空間におけるイベントを検出するために、仮想空間を経時的に分析する手段を備える装置が提供される。
【0006】
必ずしも全てではないが本発明の種々の実施形態によれば、コンピュータプログラムであって、プロセッサで実行されると、仮想空間の仮想シーンをユーザに見せることと;ユーザの三次元ジェスチャを仮想空間において対応する三次元ジェスチャにマッピングすることと;仮想空間において対応する三次元ジェスチャが、仮想空間の第1の部分に関連する一つ又は複数の第1の既定ジェスチャであることという決定に応じて、仮想空間の第1の部分に関連する、仮想空間におけるイベントを検出するために、仮想空間を経時的に分析することを実行するコンピュータプログラムが提供される。
【0007】
本発明の様々な実施形態(但し必ずしも全ての実施形態ではない)によれば、装置の発明を特定する請求項に特定されるような例が提供される。
【図面の簡単な説明】
【0008】
前述の簡単な説明を理解するために有用な種々の実施例の理解に資するべく、例として次の添付図面を参照する。
【
図1】
図1A、1B、1Cは、それぞれ媒介現実の実施例であって、同一の仮想空間と別々の視点を示す。
【
図2】
図2A、2B、2Cは、それぞれ媒介現実の実施例であって、それぞれの視点から見える仮想シーンを示す。
【
図4】媒介現実、拡張現実、仮想現実の何れか又は全てを可能にするように動作できる装置の実施例を示す。
【
図5A】媒介現実、拡張現実、仮想現実の何れか又は全てを可能にする方法の実施例を示す。
【
図5B】拡張現実のための仮想空間モデルを更新する方法の実施例を示す。
【
図6】
図6A及び6Bは、ユーザに仮想シーンの少なくとも一部を提示可能にする装置の実施例を示す。
【
図7】
図7Aは現実空間におけるジェスチャの例を示し、
図7Bは仮想空間にレンダリングされた、対応するジェスチャ表現を示す。
【
図8】仮想空間におけるイベント検出のユーザ制御を可能にする方法を示す。
【
図9】仮想空間の第1部分に関するユーザ指定の例を示す。
【
図10】仮想空間の第1部分に関するユーザ指定の例を示す。
【
図11】仮想空間の第1部分に関するユーザ指定の例を示す。
【
図12】仮想空間の第1部分に関するユーザ指定の例を示す。
【
図13】仮想空間の第1部分に関するユーザ指定の例を示す。
【
図14】仮想空間において仮想空間の第1部分に関連するイベント検出の実施例を示す。
【0009】
本発明の装置及び方法であって、ユーザ18が仮想空間20の監視を制御できるようにする装置及び方法が以下で詳述される。拡張現実実装における仮想空間20は、ユーザ18に関連し、実時間において見られる遠隔の又は局所の現実空間でもよい。仮想現実実装における仮想空間20は、人工仮想物体28を含む又は含まない完全人工仮想空間又は記録済み現実空間でもよい。
[定義]
【0010】
「仮想空間」は完全人工環境又は半人工環境を言及しており、三次元であってもよい。
【0011】
「仮想シーン」は、仮想空間内の特定の視点からみえる仮想空間の表現を言及する。
【0012】
「現実空間」は現実環境を言及し、三次元であってもよい。
【0013】
「現実シーン」は、現実空間内の特定の視点からみえる実空間の表現を言及する。
【0014】
本願における「媒介現実」は、コンピュータがユーザに少なくとも一部表示する完全人工環境又は半人工環境(仮想空間)を仮想シーンとしてユーザが視覚的に体験することを言及する。仮想シーンは、仮想空間内の視点及び視野によって決定される。仮想シーンの提示は、それをユーザに見える形態で提供することを意味する。
【0015】
本願における「拡張現実」は媒介現実の一形態を言及する。拡張現実では、半人工環境(仮想空間)であって、装置がユーザに表示する一つ又は複数の視覚要素で追加された物理的現実世界環境(現実空間)の現実シーンを含む半人工環境を仮想シーンとしてユーザが視覚的に体験する。
【0016】
本願における「仮想現実」は媒介現実の一形態を言及する。仮想現実では、装置が表示する完全人工環境(仮想空間)を仮想シーンとしてユーザが視覚的に体験する。
【0017】
媒介現実や拡張現実、仮想現実に適用される「視点媒介(perspective-mediated)」は、ユーザの動作が仮想空間内の視点を決定し、その視点が仮想シーンを変えることを意味する。
【0018】
媒介現実や拡張現実、仮想現実に適用される「主観視点媒介(first person perspective-mediated)」は、ユーザの現実の視点が仮想空間内の視点を決定する追加制約を持つ視点媒介を意味する。
【0019】
媒介現実や拡張現実、仮想現実に適用される「インタラクティブ媒介(user interactive-mediated)は、仮想空間内で生じたことをユーザの動作が少なくとも一部決定することを意味する。
【0020】
「表示/提示(displaying)」は、ユーザによって視覚的に知覚される形態を提供することを意味する。
[説明]
【0021】
図1Aから1C、2Aから2Cは媒介現実の実施例を示す。媒介現実は拡張現実又は仮想現実でもよい。
【0022】
図1A、1B、1Cは同一の仮想物体21を含む同一の仮想空間20を示しているが、各図はそれぞれ異なる視点24を示している。視点24の位置及び向きは独立して変化しうる。
図1Aから
図1Bで視点24の位置は同じで向きが変化している。
図1Bから
図1Cで視点24の位置と向きが変化している。
【0023】
図2A、2B、2Cは、
図1A、1B、1Cのそれぞれ異なる視点24から見える仮想シーン22を示す。仮想シーン22は、仮想空間20内の視点24及び視野26によって決定される。仮想シーン22は、ユーザに対して少なくとも一部表示される。
【0024】
ここで示す仮想シーン22は、媒介現実シーンや仮想現実シーン、拡張現実シーンでもよい。仮想現実シーンは完全人工仮想空間20を提示する。拡張現実シーンは半人工半現実空間20を提示する。
【0025】
媒介現実や拡張現実、仮想現実はインタラクティブ媒介(user interactive-mediated)でもよい。この場合、ユーザの動作は、仮想空間20内で生じることを少なくとも部分的に決定する。これにより、仮想空間20内の視覚要素28のような仮想物体21とのやり取りが可能となる。
【0026】
媒介現実や拡張現実、仮想現実は視点媒介(perspective-mediated)でもよい。この場合、ユーザの動作は、仮想空間20内における視点24を決定し、その視点24によって仮想シーン22が変わる。例えば、
図1A、1B、1Cに示されるように、仮想空間20内における視点24の位置23が変更されてもよく、仮想空間20内における視点24の方向又は向き25が変更されてもよい。また、この両方が同時に変更されてもよい。仮想空間20が三次元である場合、視点24位置23の自由度は、例えば上下、前後、左右の3であり、仮想空間20内の視点24方向25の自由度は、例えばロール、ピッチ、ヨーの3である。視点24は、位置23、方向25の何れか又は両方で連続可変でもよく、ユーザ動作が視点24の位置、方向の何れか又は両方を連続的に変える。あるいは、視点24が量子化された離散位置23、量子化された離散方向25の何れか又は両方を有してもよく、ユーザ動作が、視点24に関する許容位置23、許容方向25の何れか又は両方の間を離散的に移ることによって切り換える。
【0027】
図3Aは、現実物体11を含み、
図1Aの仮想空間20に一部対応する現実空間10を示す。この実施例では、現実空間10における現実物体11はそれぞれ仮想空間20において対応する仮想物体21を持つ。一方、仮想空間20における仮想物体21の中には現実空間10において対応する現実物体11を持たないものもある。この実施例では、仮想物体21の一つであるコンピュータ生成視覚要素28が、現実空間10において対応する現実物体11を有しない人工的な仮想物体21である。
【0028】
現実空間10と仮想空間20との間には線形写像が存在し、現実空間10における各現実物体11と対応する仮想物体21との間にも同一の線形写像が存在する。したがって、現実空間10における現実物体11同士の相対関係は、仮想空間20において対応する仮想物体21の間の相対関係と同一である。
【0029】
図3Bは、
図1Bの仮想空間20に一部対応する現実空間10を示す。現実空間10は現実物体11を含むが人工仮想物体は含まない。現実シーンは、
図1Aの仮想空間20における視点24に対応する視点から見える。現実シーン12の内容は、それに対応する視点24及び視野26によって決定される。
【0030】
図2Aは、
図3Bに示された現実シーン12に関する拡張現実版の実例である。仮想シーン22は、装置によってユーザに表示された一つ又は複数の視覚要素28が追加された、現実空間10の現実シーン12を含む。視覚要素28は、コンピュータ生成視覚要素でもよい。シースルー構成では、仮想シーン22は、一つ(又は複数)の追加視覚要素28の表示を通して見える実際の現実シーン12を含む。シービデオ構成では、仮想シーン22は、表示された現実シーン12及び表示された一つ(又は複数)の追加視覚要素28を含む。表示現実シーン12は単一視点24からのイメージに基づいていてもよく、同一時点における別々の視点24からの複数イメージに基づいていてもよい。複数イメージは、単一視点からのイメージを生成するために処理される。
【0031】
図4は、媒介現実、拡張現実、仮想現実の何れか又は全てを可能にするように動作できる装置30の実施例を示す。
【0032】
装置30は、ユーザの視点から見える形態でそのユーザに仮想シーン22の少なくとも一部を提示するディスプレイ32を備える。ディスプレイ32は、仮想シーン22の少なくとも一部をユーザに表示する光を出すビジュアルディスプレイでもよい。ビジュアルディスプレイの例には、液晶ディスプレイや有機発光ダイオードディスプレイ、発光型、反射型、透過型、半透過型の各ディスプレイ、網膜直接投影型ディスプレイ、ニアアイディスプレイ等が含まれる。
【0033】
この実施例ではディスプレイ32がコントローラ42によって制御されているが、全ての実施例がそうである必要はない。
【0034】
コントローラ42は、コントローラ回路として実装されてもよい。コントローラ42はハードウェア単独で実装され、ファームウェアを含むソフトウェア単独での側面を有していてもよい。あるいは、ハードウェアと(ファームウェアを含む)ソフトウェアの組合せも可能である。
【0035】
図4に描かれるように、コントローラ42は、ハードウェア機能を実現する命令であって、例えば、汎用プロセッサまたは特定用途向けプロセッサ40で実行可能なコンピュータプログラム命令48を用いて実装されてもよい。こうした命令は、プロセッサ40で実行可能なように、コンピュータ可読記憶媒体(ディスクやメモリ等)に保存されてもよい。
【0036】
プロセッサ40は、メモリ46から読み出し、かつメモリ24へ書き込むように構成される。プロセッサ40は出力インタフェースと入力インタフェースを備えてもよい。データおよび/または命令は、プロセッサ40によって出力インタフェースを介して出力され、入力インタフェースを介してプロセッサ40に入力される。
【0037】
メモリ46はコンピュータプログラム48を保存する。コンピュータプログラム48は、プロセッサ40にロードされて装置30の動作を制御するコンピュータプログラム命令(コンピュータプログラムコード)を含む。コンピュータプログラム48のコンピュータプログラム命令は、
図5A、5B、
図8から14に示された方法を装置が実行できるようにするロジック及びルーチンを提供する。プロセッサ40は、メモリ46を読み取ることによりコンピュータプログラム48をロードして実行することができる。
【0038】
したがって、装置30は、少なくとも1つのプロセッサ40と、コンピュータプログラムコード48を格納する少なくとも一つのメモリ46を備え、コンピュータプログラムコード48は、少なくとも一つのプロセッサ40に実行されると、装置30に少なくとも:
仮想空間20の仮想シーン22をユーザ18に見せることと;
ユーザ18の三次元ジェスチャ80を仮想空間20において対応する三次元ジェスチャにマッピングすることと;
仮想空間において対応する三次元ジェスチャが、仮想空間20の第1の部分120に関連する一つ又は複数の第1の既定ジェスチャであることという決定に応じて、仮想空間20の第1の部分120に関連する、仮想空間20におけるイベント130を検出するために、仮想空間20を経時的に分析することと;
を実行させるように構成される。
【0039】
コンピュータプログラム48は、任意の適切な配信機構を介して装置30に提供されてもよい。配信機構は、例えば、非一時的コンピュータ可読記憶媒体やコンピュータプログラム製品、メモリデバイス、コンパクトディスク・リードオンリーメモリ(CD−ROM:compact disc read-only memory)又はデジタル多用途ディスク(DVD:digital versatile disc)等の記憶媒体、あるいはコンピュータプログラム48を有形に具現した製造品であってもよい。配信機構はコンピュータプログラム48を確実に伝達するように構成される信号でもよい。装置30は、コンピュータデータ信号としてコンピュータプログラム48を伝達または伝送してもよい。
【0040】
メモリ46は単独要素又は回路として示されているが、物理的に異なる複数の要素又は回路として実装されてもよい。こうした要素の一部または全部は組込み型でも着脱可能型でもよく、および/または永久/半永久/動的/キャッシュの記憶方式でもよい。
【0041】
プロセッサ40は単独要素又は回路として示されているが、物理的に異なる複数の要素又は回路として実装されてもよい。こうした要素の一部または全部は組込み型でも着脱可能型でもよい。プロセッサ40はシングルコアのプロセッサでもよいし、マルチコアのプロセッサであってもよい。
【0042】
「コンピュータ可読記憶媒体」や「コンピュータプログラム製品」、「有形物として具現化されたコンピュータプログラム」等の用語や、「コントローラ」、「コンピュータ」、「プロセッサ」等の用語は、様々なアーキテクチャを有するコンピュータだけでなく、特殊回路もカバーものと理解すべきである。こうしたコンピュータのアーキテクチャには、シングル/マルチプロセッサ・アーキテクチャや、直列(ノイマン型)/並列アーキテクチャ等がある。特殊回路にはフィールドプログラマブルゲートアレイ(FPGA)や特定用途向け集積回路(ASIC)、シグナルプロセッシングデバイス、その他の処理回路等がある。コンピュータプログラムや命令、コード等の用語は、プログラマブルプロセッサやファームウェア用のソフトウェアもカバーするものと理解すべきである。こうしたものとして例えば、プロセッサに対する命令や、固定機能デバイス、ゲートアレイ、プログラマブルロジックデバイス等の構成設定といったハードウェアデバイスのプログラマブルコンテンツ等がある。
【0043】
なお本願において使用される「回路(circuitry)」との語句は、次の全てを表す:
(a)ハードウェアのみの回路実装(アナログおよび/またはデジタル回路のみの実装等);
(b)回路とソフトウェア(および/またはファームウェア)の組合せ、例えば(適用可能である場合):(i)一つまたは複数のプロセッサ、または(ii)一つまたは複数のプロセッサ/ソフトウェア(デジタルシグナルプロセッサを含む)、ソフトウェア、一つまたは複数のメモリの一部(これらは協働して、携帯電話やサーバなどの装置に様々な機能を実行させる);
(c)一つまたは複数のマイクロプロセッサやその一部等の回路であって、動作するためにソフトウェアやファームウェアを必要とする回路(ソフトウェアやファームウェアは物理的に存在しなくてもよい)。
【0044】
この「回路」の定義は、本願において当該用語を使う全ての場合において適用される。特許請求の範囲においても同様である。さらなる例として、本願で使用される場合、「回路(circuitry)」という用語は、単独(または複数)のプロセッサだけの実装やプロセッサの一部、付随するソフトウェアおよび/またはファームウェアによる実装も網羅するものである。「回路」という用語はまた、例えば、特許請求の範囲に記載される特定の要素をその範囲に含むことが可能な場合がある。例えば、携帯電話のベースバンド集積回路やアプリケーション処理集積回路を意味してもよく、サーバやセルラネットワークデバイス、その他のネットワークデバイスにおける同様の集積回路を意味してもよい。
【0045】
図5A及び5Bに示されたブロックは、方法のステップ、コンピュータプログラム48のコード区分の何れか又は全てを表わすことができる。ブロックを特定の順序で図示することは、必須順序又は推奨順序の存在を必ずしも示唆していない。こうしたブロックの順序や配置構成は変更することができる。また、一部のブロックを省略することも可能である。
【0046】
装置30は、例えば
図5Aに示された方法60又は同様の方法を用いて、媒介現実、拡張現実、仮想現実の何れか又は全てを可能にしてもよい。コントローラ42は、仮想空間20のモデル50を保存し保持する。モデルはコントローラ42に提供されてもよく、コントローラ42が決定してもよい。例えば、仮想空間の深度マップの重ね合わせを別々の視点から生成するために入力回路44のセンサが使用されてもよく、それによって三次元モデルが生成されてもよい。
【0047】
ブロック62で、仮想空間20のモデルが変わったかどうかが決定される。仮想空間20のモデルが変わった場合、本方法はブロック66に移る。仮想空間20のモデルが変わらなかった場合、本方法はブロック64に移る。
【0048】
ブロック64で、仮想空間20における視点24が変わったかどうかが決定される。視点24が変わった場合、本方法はブロック66に移る。視点24が変わらなかった場合、本方法はブロック62に戻る。
【0049】
ブロック66で、三次元仮想空間20の位置23からの二次元投影が、現在視点24によって規定される方向25に取られる。次に、この投影は視野26によって限定され、仮想シーン22を生成する。次に、本方法はブロック62に戻る。
【0050】
装置30が拡張現実を可能にする場合、仮想空間20は現実空間10からの物体11に加え、現実空間10には存在しない可視要素28も含む。かかる可視要素28の組合せは、人工仮想空間として参照されてもよい。
図5Bは、拡張現実のための仮想空間モデルを更新する方法70を示す。
【0051】
ブロック72で、現実空間10が変わったかどうかが決定される。現実空間10が変わった場合、本方法はブロック76に移る。現実空間10が変わらなかった場合、本方法はブロック74に移る。現実空間10における変化の検出は画素レベルの差異を利用して実現されてもよく、物体の動きに合わせてそれを追跡するコンピュータビジョンを利用して物体レベルで実現されてもよい。
【0052】
ブロック74で、人工仮想空間が変わったかどうかが決定される。人工仮想空間が変わった場合、本方法はブロック76に移る。人工仮想空間が変わらなかった場合、本方法はブロック72に戻る。人工仮想空間はコントローラ42によって生成されるため、視覚要素28に対する変化は容易に検出される。
【0053】
ブロック76で、仮想空間20のモデルが更新される。
【0054】
装置30は、媒介現実、拡張現実、仮想現実の何れか又は全てに対してインタラクティブ媒介を可能にしてもよい。ユーザ入力回路44はユーザ入力43を用いてユーザ動作を検出する。こうしたユーザ動作は、仮想空間20内で生じたことを決定するために用いられる。これにより、仮想空間20内の視覚要素28とのやり取りが可能となる。
【0055】
装置30は、媒介現実、拡張現実、仮想現実の何れか又は全てに対して視点媒介を可能にしてもよい。ユーザ入力回路44はユーザ動作を検出する。こうしたユーザ動作は、仮想空間20内での視点24を決定するために用いられ、その視点が仮想シーン22を変える。視点24は、位置、方向の何れか又は両方で連続可変でもよく、ユーザ動作が視点24の位置、方向の何れか又は両方を変える。あるいは、視点24が量子化された離散位置、量子化された離散方向の何れか又は両方を有してもよく、ユーザ動作が、視点24に関する次の位置、方向25の何れか又は両方に移ることによって切り換える。
【0056】
装置30は、媒介現実や拡張現実、仮想現実に対する主観視点を可能にしてもよい。ユーザ入力回路44は、ユーザ視点センサ45を用いてユーザの現実の視点14を検出する。ユーザの実際の視点は、仮想空間20内での視点24を決定するために用いられ、その視点が仮想シーン22を変える。
図3Aに戻ると、ユーザ18は実際の視点(現実視点)14を有する。現実視点は、ユーザ18によって変化する場合がある。例えば、現実視点14の実際の位置(現実位置)13はユーザ18の位置であり、ユーザ18の物理的位置13を変えることで変化しうる。例えば、現実視点14の実際の方向(現実方向)15はユーザ18が見ている方向であり、ユーザ18の現実方向を変えることで変化しうる。現実方向15は、例えば、ユーザ18が頭の向きや視点を変えたり、視線方向を変えたり、あるいはその全てを変えたりすることによって変えることができる。主観視点媒介を可能にするために、頭部装着型装置30が使用されてもよい。
【0057】
装置30は入力回路44の一部として、現実視点の変化を決定する視点センサ45を備えてもよい。
【0058】
例えば、ユーザ18の新たな物理的位置13及び現実視点14を決定するために、GPS等の測位技術、複数のレシーバへの送信と複数のトランスミッタからの受信の何れか又は両方による三角測量(三辺測量)、加速度検出、及びそれらの統合が用いられてもよい。
【0059】
また例えば、ユーザの頭の向きや視点の変化、及び結果として生じる現実視点14の現実方向15での変化を決定するために、加速度計や電子ジャイロスコープ、電子コンパスが使用されてもよい。
【0060】
さらに例えば、ユーザの片目又は両目の動きを追跡し、それによってユーザの視線方向及びその結果として生じる現実視点14の現実方向15での変化を決定するために、コンピュータビジョン等に基づく瞳孔追跡技術が用いられてもよい。
【0061】
装置30は入力回路44の一部として、現実空間10を撮像するイメージセンサ47を備えてもよい。
【0062】
イメージセンサ47の一例は、カメラとして動作するように構成されたデジタルイメージセンサである。かかるカメラは静止画や場合により動画、又はその両方を記録するように動作し得るが、全ての実施形態でそうである必要はない。現実空間10が様々な視点から見えるように、カメラが立体配置や他の空間分布配置で構成されてもよい。これは、三次元画像の生成、および/または、例えば視差効果を介した、奥行きを設定するための処理を可能する。
【0063】
必ずしも全てではないが実施形態によっては、入力回路44が深度センサ49を備える。深度センサ49は、トランスミッタおよびレシーバを備えてもよい。トランスミッタは(例えば、超音波または赤外光など人間が検出できない信号などの)信号を送信し、レシーバは反射された信号を受信する。単一のトランスミッタおよび単一のレシーバを用い、送信から受信までの伝搬時間を測定することによっていくらかの奥行き情報を得ることができる。より多くのトランスミッタおよび/またはより多くのレシーバを用いることによってより良好な分解能(空間的ダイバーシチ)が達成できる。一例において、トランスミッタは、光、好ましくは、赤外光など不可視光を使い、空間依存的パターンで、現実空間10を「描く」ように構成される。レシーバによる特定のパターンの検出は、現実空間10が空間的に分解されるようにする。現実空間10が空間的に分解された部分までの距離は、伝搬時間、(レシーバがトランスミッタに対し立体的な位置にある場合)立体視法の何れか又は両方で測定できる。
【0064】
必ずしも全てではないが実施形態によっては、入力回路44が一つ又は複数のイメージセンサ47及び深度センサ49に加えて、又はそれらの代替として通信回路41を備えてもよい。かかる通信回路41は、現実空間10における一つ又は複数のリモートイメージセンサ47、現実空間10におけるリモート深度センサ49の何れか又は全てと通信してもよい。
【0065】
図6A及び6Bは、ユーザに仮想シーン22の少なくとも一部を提示可能にする装置30の実施例を示す。仮想シーン22の少なくとも一部を提示可能する装置30に関する他の実施例が用いられてもよい。
【0066】
図6Aには、ユーザに画像を表示し、仮想シーンをユーザに表示するためにも使用されるディスプレイ32としての表示画面を備える携帯型装置31が示されている。装置30は、前述した自由度6の内一つ又は複数において、ユーザが意図的に手に持って動かすことができる。
【0067】
携帯型装置31は拡張現実用シービデオ構成でもよく、それとして動作してもよい。この拡張現実では、ユーザに見せるディスプレイ32に現実シーン12のライブ又は録画を表示可能にしつつ、一つ又は複数の可視要素28もユーザに見せるディスプレイ32に同時に表示される。表示された現実シーン12と表示された一つ又は複数の可視要素28の組合せは、ユーザに仮想シーン22を提示する。
【0068】
携帯型装置31は、ディスプレイ32とは反対面に搭載されたカメラを備える場合、ライブ現実シーン12を表示可能にしつつ、一つ又は複数の可視要素28もユーザに提示され、組み合わせて仮想シーン22を提供するシービデオ構成として動作することができる。
【0069】
図6Bは、ユーザに画像を表示するディスプレイ32を備える頭部装着型装置33を示す。頭部装着型装置33は、ユーザの頭が動くのと合わせて無意識に動かすことができる。
【0070】
頭部装着型装置33は、ライブ現実シーン12を表示可能にしつつ、一つ又は複数の可視要素28もユーザに提示され、組み合わせて仮想シーン22を提供する拡張現実のためのシースルー構成でもよい。この場合、バイザー34があれば、ライブ現実シーン12がバイザー34を通して見えるように透明又は半透明である。
【0071】
頭部装着型装置33は拡張現実用シービデオ構成として動作してもよい。この拡張現実では、ユーザに見せるディスプレイ32によって現実シーン12のライブ又は録画を表示可能にしつつ、一つ又は複数の可視要素28もユーザに見せるディスプレイ32によって同時に表示される。表示された現実シーン12と表示された一つ又は複数の可視要素28の組合せは、ユーザに仮想シーン22を提示する。この場合、バイザー34は不透明でディスプレイ32として使用されてもよい。
【0072】
図4に戻って参照すると、装置30は、媒介現実、拡張現実、仮想現実の何れか又は全てに対してインタラクティブ媒介を可能にしてもよい。ユーザ入力回路44はユーザ入力43を用いてユーザ動作を検出する。こうしたユーザ動作は、仮想空間20内で生じたことを決定するために用いられる。これにより、仮想空間20内の視覚要素28とのやり取りが可能となる。
【0073】
検出されたユーザ動作は例えば、現実空間10で行われたジェスチャでもよい。ジェスチャは様々な方法で検出できる。例えば、ユーザ18の体の一部の動きを検出するために深度センサ49が使用されてもよく、ユーザ18の体の一部の動きを検出するためにイメージセンサ47が使用されてもよく、手足の動きを検出するためにユーザ18の手足に装着された位置/動きセンサが使用されてもよい。あるいは、これら全てが使用されてもよい。
【0074】
物体追跡は、物体またはユーザが変わるときを決定するために使用されてもよい。例えば、物体を大きなマクロスケールで追跡することで、その物体と共に移動する基準枠を生成することができる。この基準枠は、物体に対する時間差分を用いて物体の形状の時間進展的な変化を追跡するために使うことができる。これは、ジェスチャ、手の動き、顔面の動きなど小規模な人間の動きを検出するために用いることができる。これらは、ユーザに関連する、シーン非依存性のユーザ(だけ)の動きである。
【0075】
装置30は、ユーザの体の一つ又は複数の関節等、ユーザの身体に関連する複数の物体、複数のポイントの何れか又は全てを追跡してもよい。実施例によっては、装置30はユーザの身体の全身骨格的な追跡を行ってもよい。
【0076】
ジェスチャの認識等において、人物の身体に関連する一つ又は複数の物体、複数のポイントの何れか又は全ての追跡が装置30によって使用されてよい。
【0077】
図7Aを参照すると、現実空間10における特定のジェスチャ80が、「ユーザ制御」イベントとしてコントローラ42が使用するジェスチャユーザ入力であり、仮想空間20内で生じることを決定することができる。ジェスチャユーザ入力は、装置30に対しユーザ入力としての意味を有するジェスチャ80である。
【0078】
図7Bを参照すると、必ずしも全てではないが実施例によっては、現実空間におけるジェスチャ80に対応する表現が、装置30によって仮想シーン22にレンダリングされることが示されている。こうした表現は、仮想シーン22においてジェスチャ80を再現又は標示するように動く(82)一つ又は複数の可視要素28を含む。
【0079】
ジェスチャ80は静的でも動きがあってもよい。動きがあるジェスチャ(動きジェスチャ)は、特定の動き又は一連の動きを含む動きのパターンを含むことができる。例えばこれは、旋回動作、または脇から脇への動き、または上下の動きをすること、または空間中で符号を描くこととしてもよい。例えば、動きジェスチャは、装置非依存性のジェスチャ、または装置依存性のジェスチャとしてもよい。動きジェスチャは、例えば、ユーザ身体の部分もしくは部分群、または追加の装置などのユーザ入力オブジェクトのセンサに対する動きを伴ってもよい。身体の部分は、ユーザの手、または親指以外の1つ以上の指および親指などユーザの手の一部を含んでよい。他の例において、ユーザ入力オブジェクトは、ユーザの頭または腕などユーザの身体のいろいろな部分を含んでもよい。三次元の動きは、自由度6の何れかにおけるユーザ入力オブジェクトの動きを含んでもよい。ユーザ入力オブジェクトの動きには、センサに向かうように又はセンサから離れるように動くことや、センサと平行な面内で動くこと、またこのような動きの任意の組み合せを含んでもよい。
【0080】
ジェスチャ80は非接触のジェスチャでもよい。非接触ジェスチャは、ジェスチャの間のどの時点でもセンサに接触することはない。
【0081】
ジェスチャ80は、センサからの絶対変位に関連して定義される絶対的ジェスチャとすることもできる。かかるジェスチャは、それが現実空間10における正確な位置で行われるという点で拘束(tether)されてもよい。あるいは、ジェスチャ80は、ジェスチャの間の相対変位に関連して定義される相対的ジェスチャであってもよい。かかるジェスチャは、それが現実空間10に対し正確な場所において行われる必要がないという点で非拘束(un-tethered)でもよく、多数の任意の場所で行うことができる。
【0082】
ジェスチャ80は、時間経過による、当初点に対する追跡点の変位の進展として定義することができる。これは、例えば、変位、速度など時間的可変パラメータを用いる、または他の運動学的パラメータを用いる動きに関連させて定義することができよう。非拘束ジェスチャは、相対時間Δtに対する相対変位Δdの進展として規定することができる。
【0083】
ジェスチャ80は一空間次元(1Dジェスチャ)や二空間次元(2Dジェスチャ)、三空間次元(3Dジェスチャ)で行われてもよい。
【0084】
図8は、仮想空間におけるイベント検出のユーザ制御を可能にする方法100を示す。
【0085】
本方法は:ブロック102で、仮想空間20の仮想シーン22をユーザ18に見せることと;ブロック104で、ユーザ18の三次元ジェスチャ80を仮想空間20において対応する三次元ジェスチャにマッピングすることと;ブロック106で、仮想空間において対応する三次元ジェスチャが、仮想空間20の第1の部分120に関連する一つ又は複数の第1の既定ジェスチャであるかどうかを決定することと;仮想空間において対応する三次元ジェスチャが、仮想空間20の第1の部分120に関連する一つ又は複数の第1の既定ジェスチャであることと決定された場合、それに応じて、ブロック108で、方法100は仮想空間20の第1の部分120に関連する、仮想空間20におけるイベント130を検出するために、仮想空間20を経時的に分析すること、を含む。
【0086】
ブロック110で、本方法100はイベント130の検出に対する応答122を行う。
【0087】
この方法は
図9A、9B、10A、10B、11A、11B、12A、12B、13A、13Bに示された実施例及び
図14A、14B、14Cに示された実施例に関連して理解することができる。前者では仮想空間20の第1の部分120に関するユーザ指定の実施例が示され、後者では仮想空間20において仮想空間20の第1の部分120に関連するイベント130を検出する実施例が示されている。これらの実施例では仮想空間20の第1の部分120が境界であるが、仮想空間20の第1の部分120が多数の異なる形態を取ってもよい。またこれらの実施例ではイベント130に対する応答122が視覚的警報であるが、応答122が多数の異なる形態を取ってもよい。
【0088】
図8に戻って、ブロック102で、方法100は、仮想空間20の仮想シーン22をユーザ18に見せる。仮想現実の実装では、仮想シーン22は複数の人工仮想物体28(
図1Bを参照)を含む。仮想シーン22は例えば、現実空間10の録画で提供されてもよく、コンピュータ生成されてもよい。
【0089】
拡張現実の実装では、仮想空間20の仮想シーン22は複数の仮想物体21を含む。仮想シーン22は、実時間、現実空間10における現実物体11の現実シーン12であって、一つ又は複数の仮想物体28(
図3B及び2Aを参照)で拡張された又は拡張可能である現実シーン12から成る。前述の通り、拡張現実実装はシースルー構成又はシービデオ構成で提供されてもよい。仮想シーン22及びその中の現実シーン12は、実生活及び実時間の中で見える。ユーザ18は仮想シーン22の中で見える現実空間10にいて、例えば、現実空間10で三次元ジェスチャ80を行い、シースルー構成又はシービデオ構成を使用していてもよい。あるいは、ユーザ18は仮想シーン22の中で見える現実空間10から離れていて、離れた場所で三次元ジェスチャ80を行い、シービデオ構成を使用していてもよい。
【0090】
ブロック104で、方法100は、ユーザ18の三次元ジェスチャ80を仮想空間20において対応する三次元ジェスチャにマッピングする。現実空間10を仮想空間20にマッピングするために使用されるマッピングの中でスケールマッピングは、三次元ユーザジェスチャ80を仮想空間20において対応する三次元ユーザジェスチャにマッピングするために使用できる。マッピングにおける拡大縮小は、例えば、ユーザジェスチャが見えている仮想空間20に対して伸縮するように、仮想シーン22を規定する視野26の大きさに依存してもよい。ユーザ18の三次元ジェスチャ80は仮想空間20におけるイベント検出を制御する。
【0091】
ブロック106で、方法100は、仮想空間において対応する三次元ジェスチャが、仮想空間20の第1の部分120に関連する一つ又は複数の第1の既定ジェスチャであるかどうかを決定する。
【0092】
第1の既定ジェスチャは、例えば、適切に事前定義された、仮想空間20の第1の部分120に関連するイベントの検出を作動させるために使用されてもよい。この事前定義は、例えば、仮想空間20の第1の部分120の事前定義、イベント130の事前定義、応答122の事前定義の何れか又は全てを要求してもよい。
【0093】
複数の既定ジェスチャは、例えば、仮想空間20の第1の部分120に関連するイベントの検出を定義するために使用されてもよい。この定義は、例えば、仮想空間20の第1の部分120の定義、イベント130の定義、応答122の定義の何れか又は全てを要求してもよい。
【0094】
ブロック108で、方法100は、仮想空間20の第1の部分120に関連する、仮想空間20におけるイベント130を検出するために、仮想空間20を経時的に分析する。仮想空間20の分析は、例えば、仮想空間20において第1の部分120を含む部分のみ空間的に限定されてもよい。仮想空間20の分析は、例えば、仮想空間20において第1の部分120を含む部分かつ見えている仮想シーン22の一部でもある部分のみに限定されてもよい。仮想空間20の分析は、例えば、仮想空間20において第1の部分120を含む部分かつ見えている仮想シーン22の一部ではない部分のみに限定されてもよい。仮想空間20の分析は、例えば、仮想空間20のどの部分が仮想シーン22に見えているかに関わらず、仮想空間20において第1の部分120を含む部分のみに限定されてもよい。この分析は、例えば、一つ(又は複数)の仮想物体21の追跡を含んでもよく、実装によっては、こうした仮想物体が一つ(又は複数)の人工仮想物体28、一つ(又は複数)の現実物体の何れか又は全てでもよい。
【0095】
ブロック110で、本方法100はイベント130の検出に対する応答122を行う。応答122は、例えば、ユーザ18に対するリアルタイムの警報通知でもよく、情報のロギングでもよい。例えば、応答は、
図14Cで示すような、ユーザ18に対する視覚音声警報の提示でもよい。他の実施例では、応答がイベント検出をログすることでもよい。また例えば、イベント検出の記録を作成し、この情報を例えば仮想シーン22の仮想物体28としてユーザ18に恒久的に、あるいはユーザ18の要求に応答して提示することも可能である。また、録画済みビデオストリームにおいてイベントのインデクスを例えばタイムスタンプとして付け、それによってインデクスされたイベントを後から見ることができるようにすることも可能である。また、イベント130の発生を捉えるために、ビデオストリームを空間的、時間的の何れか又は両方でクロップすることも望ましい。空間的クロップには、現実空間10のパノラマイメージが記録されながら、仮想シーン22ではユーザには狭められた視野のみが表示されるという特有の有利な点がある。
【0096】
必ずしも全てではないが実施例によっては、ユーザ18は、イベント130の検出に対する装置30の応答を指定するために装置30を使用することができる。
【0097】
方法100は、実施形態によっては、仮想空間20の監視を制御するため用いられてもよい。拡張現実実装における仮想空間20は、ユーザ18に関連し、実時間において見られる遠隔の又は局所の現実空間でもよい。仮想現実実装における仮想空間20は、人工仮想物体28を含む又は含まない完全人工仮想空間又は記録済み現実空間でもよい。検出されたイベント130は、録画したスポーツビデオのゴールや、ユーザ18が外出しているときの宅内監視アクティビティ等のような監視イベントでもよい。
【0098】
図9から13は、方法100ブロック104、106に従ってユーザが仮想空間20の第1の部分120を指定するやり方を示す。これに続いて、仮想空間20において仮想空間20の第1の部分120を関連するイベント130を検出するために、方法100のブロック108、110が使用される。これらの図のうち、図番号に「A」が付いている図は、仮想空間20と仮想空間20の視野26の位置で規定される仮想シーン22を示し、図番号に「ABが付いている図は、現実空間10におけるユーザ18のジェスチャ80を示す。実施例によっては、ユーザ18が占める現実空間10が、例えばリアルタイムで、仮想シーン22で見える現実空間でもよい。他の実施例では、ユーザ18が占める現実空間10が、例えばリアルタイムで、仮想シーン22で見える現実空間から離れていてもよい。他の実施例では、仮想空間20が人工でもよい。
【0099】
図9A及び9Bで示すように、ユーザ18は最初に
図9Bで示すような開始ジェスチャ80を行う。装置30はこのジェスチャ80を検出して認識し、その応答で方法100を開始する。
【0100】
ユーザ18は、装置30を通じて仮想シーン22を見ることができる。ユーザ18は、ユーザ動作により仮想空間20内の視野26を再配置してもよく、その結果、仮想シーン22を再規定してもよい。ただし、これは、開始ジェスチャ80が行われる前に完了すべきである。一旦開始ジェスチャが行われると、仮想空間20の第1の部分120に関するユーザ指定が開始される。仮想空間20の第1の部分120に関するユーザ指定は、
図10から13を参照して詳述される。
【0101】
図10Bに示されるように、ユーザ18は、仮想空間20における第1の部分120の第1の寸法を規定する第1のジェスチャ80を行う。この実施例では、ユーザ18は両腕を横に伸ばし、両手を水平方向に離しておくことによって、第1の部分120の横寸法を指定する。仮想空間20における第1の部分120の横寸法の大きさは、第1のジェスチャ80を行うユーザ18の両手が水平方向に実際に離れている距離に依存する。これに応じて、装置30はディスプレイ32を制御して、仮想シーン22に人工仮想物体28A、28B、28Cを表示することができる。これら人工仮想物体は、第1の部分120の位置及び横寸法を表わす。人工仮想物体28A、28Bは、ユーザの空間から仮想空間20へマッピングされる場合、ユーザの両手の位置に対応する仮想空間20での位置にあり、人工仮想物体28Cは、ユーザの空間から仮想空間20へマッピングされる場合、ユーザの両手の間の水平距離に対応するように仮想空間20に配置され大きさが決められる。
【0102】
必ずしも全てではないが実施例によっては、次にユーザ18は、例えば両手を近づけたり遠ざけたりして両手の水平距離を変えることによって、仮想空間20の第1の部分120の横寸法の大きさを変更することができる。必ずしも全てではないが実施例によっては、ユーザ18は、例えばユーザ18が向いている方向を、胴体ごと回るなどして変えることによって、仮想空間20の第1の部分120の横寸法の位置を変更することができる。仮想空間20における第1の部分120の第1の寸法が適切に位置決めされ大きさも決められたとユーザ18が満足すると、ユーザ18は第1のジェスチャ80の終了を示す第2のジェスチャ80を行うことができる。
【0103】
次に
図11Bに示されるように、ユーザ18は、仮想空間20における第1の部分120の第2の寸法を規定する第3のジェスチャ80を行う。この実施例では、ユーザ18は両腕を縦に伸ばし、両手を垂直方向に離しておくことによって、第1の部分120の縦寸法を指定する。仮想空間20における第1の部分120の縦寸法の大きさは、第3のジェスチャ80を行うユーザ18の両手が垂直方向に実際に離れている距離に依存する。これに応じて、装置30はディスプレイ32を制御して、仮想シーン22に人工仮想物体28D、28E、28Fを表示することができる。これら人工仮想物体は、第1の部分120の位置及び縦寸法を表わす。人工仮想物体28D、28Eは、ユーザの空間から仮想空間20へマッピングされる場合、ユーザの両手の位置に対応する仮想空間20での位置にあり、人工仮想物体28Fは、ユーザの空間から仮想空間20へマッピングされる場合、ユーザの両手の間の垂直距離に対応するように仮想空間20に配置され大きさが決められる。
【0104】
必ずしも全てではないが実施例によっては、次にユーザ18は、例えば両手を近づけたり遠ざけたりして両手の垂直距離を変えることによって、仮想空間20の第1の部分120の縦寸法の大きさを変更することができる。必ずしも全てではないが実施例によっては、ユーザ18は、例えばユーザ18が向いている方向を、胴体ごと回るなどして変えることによって、仮想空間20の第1の部分120の縦寸法の位置を変更することができる。仮想空間20における第1の部分120の第2の寸法が適切に位置決めされ大きさも決められたとユーザ18が満足すると、ユーザ18は第3のジェスチャ80の終了を示す第4のジェスチャ80を行うことができる。
【0105】
図12Bで示すように、ユーザ18は次に、仮想空間20の第1の部分120の位置、向きの何れか又は両方を変えるために追加のジェスチャ80を行ってもよい。この実施例では、仮想空間20の第1の部分120は、人工仮想物体28Gを表示することによって仮想シーン22に示される。この実施例では、人工仮想物体28Gは、仮想空間20の第1の部分120の第1の横寸法を規定する幅と、仮想空間20の第1の部分120の第2の縦寸法を規定する高さを有する矩形である。適切なジェスチャ80を行うことによって、ユーザは、仮想物体28Gによって示される仮想空間20における第1の部分120を3つの並進自由度、即ち前後、左右、上下の何れかに動かすことができる。ユーザは、人工仮想物体28Gによって示される仮想空間20における第1の部分120の向きを、3つの回転自由度の何れかで変えることができる。回転自由度の各々は、線形自由度の一つに関する回転としてそれぞれロール、ピッチ、ヨーと定義されてもよい。
【0106】
人工仮想物体28Gによって示される仮想空間20における第1の部分120が満足のいくような大きさ、位置、向きになったとユーザ18が満足すると、ユーザは、仮想空間20における現在の第1の部分120を受け入れ、第1の部分120に関連する方法100を有効化する、
図13Bで示すようなジェスチャ80を行ってもよい。実施形態によっては、仮想空間20における「有効化された」第1の部分120は、人工仮想物体28Gを用いて仮想シーン22に示されてもよい。こうして仮想空間20における第1の部分120を規定し有効化したユーザ18は、仮想空間20における視界26の位置を変え、それによって仮想シーン22を変えることができる。これは
図14Aで示されている。
【0107】
図12A及び12Bに戻ると、装置30は、人工仮想物体28Gとして示された、仮想空間20における第1の部分120を位置決めする追加グラフィカル標示子を人工仮想物体28として与えてもよい。例えば、ユーザ18が仮想空間20内で奥行きを見積もれるように、人工仮想物体28Gに対して一つ又は複数の影が与えられてもよい。こうしたグラフィカル標示子によって、仮想空間20における人工仮想物体28の位置決めが支援される。
【0108】
必ずしも全てではないが実施例によっては、仮想空間20における第1の部分120が、仮想シーン22における他の仮想物体21とは独立してユーザ18が作り、配置し、大きさと向きを決めた仮想物体21であると見なせることも理解されよう。一方、他の実施形態では、仮想空間20における第1の部分120の大きさと向きが仮想空間20における他の仮想物体に依存していてもよい。例えば、実施例によっては、第1の部分120を他の位置に配置できなくてもよい。実施例によっては、仮想空間20における第1の部分120を特定の位置、例えば仮想空間20における仮想物体21に対して相対的に規定された位置のみに配置可能であってもよい。また実施例によっては、仮想空間20における第1の部分120が限られた数の位置のみを占めるように強制する利点もある。例えば、仮想空間20における第1の部分120は、仮想空間20に存在する仮想物体21上に又はその間に第1の部分120をスナップする等によって、一つ又は複数の仮想物体に関して自動的に定義されてもよい。ここで自動的という用語は、少なくとも一部が自動であることを示唆し、必ずしも全自動又は完全自動を意味するものではない。
【0109】
図14A、14B、14Cは、方法100のブロック108、110に従う実施例を示す。
【0110】
図14Aでは、仮想空間20における第1の部分120が仮想空間20内で定義済みであるが、表示された仮想シーン22には既に見えなくなっている。
図14Bで、装置30は方法100のブロック108を実行する。装置30は、仮想空間20の第1の部分120に関連する、仮想空間20におけるイベント130を検出するために、仮想空間20を経時的に分析する。この実施例では、装置30は、仮想空間20内で動き、仮想シーン22内では動かなくてもよい仮想物体21を追跡する。
図14Bの実施例では、仮想物体21は、仮想空間20における第1の部分120に関連する、仮想空間20内で検出可能なイベントを未だ発生させていない。しかし
図14Cでは、仮想物体21が仮想空間20における第1の部分120を通過し、仮想空間20における第1の部分120に関連する仮想空間20内のイベント130を発生させる。装置30は、仮想空間20を経時的に分析することによってこのイベント130を検出し、
図8における方法100のブロック110で示すようにイベント検出に対する応答122を行う。この実施例において、応答は標示子122形態の人工仮想物体28であり、標示子122はイベント130が検出されたことをユーザに示し、かつ、イベント130が仮想シーン22内に含まれるように視点を変えるべき位置をユーザに示している。
図14Cの実施例では、こうした応答が人工仮想物体28として表示される左向き矢印である。
【0111】
したがって、
図14A、14B、14Cにおける仮想空間20の第1の部分120が高さと幅で限定された二次元境界を与えることも理解されよう。境界124は、それが仮想シーン22を規定する視界26内に含まれるとき、人工仮想物体28を用いて識別されてもよく、そうでなくてもよい。
図14Cの実施例では、動いている仮想物体21が境界124を定める二次元平面を通過するとき、検出イベント130が発生する。
【0112】
検出イベント130を発生させる移動仮想物体21は、例えば、現実空間10で動いている現実物体11でもよく、現実空間10には存在しない人工仮想物体21でもよい。
【0113】
ユーザ18は、イベント130を発生させる移動物体21の識別情報を指定することができる。こうして、ユーザ18は、仮想空間20における第1の部分120に関連して生じるイベント130に関する条件付けに限らず、発生イベント130の性質に関する条件付けも行うことができる。
【0114】
図8から14に関する記述では、三次元ジェスチャ80の実行が参照されてきたが、これらのジェスチャ80は静的ジェスチャでもよく、動きジェスチャでもよい。こうしたジェスチャには、例えば、ユーザの体の一部又は複数部分や追加装置等のユーザ入力物の動きも含まれる。三次元ジェスチャは、三次元での静止ポーズや三次元での動きの何れかを通じて三次元で行われるジェスチャである。こうしたジェスチャは、装置30に接触しない非接触ジェスチャでもよい。ジェスチャ80は、ジェスチャの間の相対変位で定義される相対的ジェスチャでもよい。ジェスチャ80は非拘束で、それを装置30に対する絶対空間又は相対空間の何れかにおける正確な位置で行う必要がなくてもよい。
【0115】
図8から14に関連して記述された方法は、例えば、上述の装置30の何れかによって実行されてもよい。前述の通り、仮想シーン22を変える仮想空間20内の視点24を決定するユーザ動作を検出するために、ユーザ入力回路44が使用されてもよい。装置30は、例えば、拡張現実用のシースルー構成又はシービデオ構成の何れかを備える頭部装着型装置33でもよい。頭部装着型装置33は主観視点媒介を提供し、そのために、ユーザ入力回路44がユーザ視点センサ45を使用してユーザの実際の視点(現実視点)14を検出する。ユーザの現実視点は、仮想空間20内での視点24を決定するために用いられ、その視点が仮想シーン22を変える。現実方向25は、例えば、ユーザ18が頭の向きや視点を変えたり、視線方向を変えたり、あるいはその全てを変えたりすることによって変えることができる。
【0116】
構造的特徴が記述されてきたが、こうした構造的特徴は、その構造的特徴における1つ又は複数の機能を実行する手段で置き換えられてもよい。こうした1つ又は複数の機能は明示的に記述されていてもよく、されていなくてもよい。
【0117】
本願で記載するように、「モジュール」という用語は、装置のユニットであって、エンドメーカーやユーザによって追加されるパーツ/部品を除いたものを表わす。コントローラ42はモジュール等でもよい。装置30がモジュールでもよい。入力回路がモジュールでもよく、複数のモジュールを具備してもよい。ディスプレイ32がモジュールでもよい。
【0118】
この簡潔な説明では、様々な例への参照がなされてきた。実施例に関する特徴または機能の説明は、これらの特徴または機能が、その実施例に認められることを示す。本明細書中の「実施例(example)」「例えば(for example)」「〜できる、〜場合がある(may)」といった単語の使用は、明示的であれ非明示的であれ、特徴及び機能が、少なくとも記載された実施例に存在することを意味する。実施例としての記載及び不記載にかかわらず、これら特徴及び機能が、他の一部または全ての実施例に存在する可能性があるが、必ずしもそうではないことを意味する。このように、「実施例」「例えば」「〜できる、〜の場合がある」は、ある例示群における特定の事例であることを指す。上記特定の事例の特性は、その事例のみの特性である場合、または上記例示群に属する一部の群の特性である場合がある。すなわち、上記特定の事例の特性は、例示群中の例示の全特性とは限らないが特性の一部を含む。したがって、ある特定の実施例を参照しているが別の実施例を参照しないで記述された特徴は、それが他の実施例でも使用される可能性もあれば、他の実施例での使用が不要である可能性もあることを示唆している。
【0119】
本願明細書及び図面において、本発明の様々な実施形態が様々な実施例と共に紹介されてきたが、当然のごとく、特許請求の範囲に特定される発明の範囲を逸脱することなく、紹介された実施形態を変形することができる。
【0120】
これまでに記述してきた事項は、明示的に記述された組合せだけでなく、それ以外の組合せで用いられてもよい。
【0121】
特定の事項を参照して種々の機能を記述してきたが、こうした機能は、記述の有無を問わずその他の事項によって遂行可能であってもよい。
【0122】
特定の実施形態を参照して種々の事項を記述してきたが、こうした事項は、記述の有無を問わずその他の実施形態で用いられてもよい。
【0123】
前述のように本明細書において、とりわけ重要であると考えられる本発明のこうした事項に注目するように努めてきた。しかし、前述した特許されうる全ての事項およびそれらの組合せに対して、参照された添付の図面にそうした事項が特段強調されていたかどうかにかかわらず、本出願人はその保護を求めるものである点を理解されたい。