JP6972135B2 - 複合現実において動的仮想コンテンツを生成するデバイスおよび方法 - Google Patents

複合現実において動的仮想コンテンツを生成するデバイスおよび方法 Download PDF

Info

Publication number
JP6972135B2
JP6972135B2 JP2019533114A JP2019533114A JP6972135B2 JP 6972135 B2 JP6972135 B2 JP 6972135B2 JP 2019533114 A JP2019533114 A JP 2019533114A JP 2019533114 A JP2019533114 A JP 2019533114A JP 6972135 B2 JP6972135 B2 JP 6972135B2
Authority
JP
Japan
Prior art keywords
real
scene
world
scenario
constraint
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019533114A
Other languages
English (en)
Other versions
JP2020503611A (ja
JP2020503611A5 (ja
Inventor
ローラン,アンソニー
フラデ,マシュー
バイヤール,カロリーヌ
Original Assignee
インターディジタル・シーイー・パテント・ホールディングス・ソシエテ・パ・アクシオンス・シンプリフィエ
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by インターディジタル・シーイー・パテント・ホールディングス・ソシエテ・パ・アクシオンス・シンプリフィエ filed Critical インターディジタル・シーイー・パテント・ホールディングス・ソシエテ・パ・アクシオンス・シンプリフィエ
Publication of JP2020503611A publication Critical patent/JP2020503611A/ja
Publication of JP2020503611A5 publication Critical patent/JP2020503611A5/ja
Priority to JP2021179542A priority Critical patent/JP7556839B2/ja
Application granted granted Critical
Publication of JP6972135B2 publication Critical patent/JP6972135B2/ja
Priority to JP2023166658A priority patent/JP2023171435A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2021Shape modification

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Architecture (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本発明は、コンピュータによって生成された(CG)コンテンツが、単に現実世界のビューの上に重ね合わせられるのではなく、デジタルリアリティと物理的リアリティが途切れなく一体に混合するように、現実世界の環境と現実にインタラクトする、複合現実(MR)の分野に関する。
拡張現実(AR)アプリケーションは、動画またはグラフィックスといったCGコンテンツによってその要素が拡張される現実世界の環境のライブビューを指す。MRでは、CGコンテンツは、さらに、現実世界の環境とインタラクトする。
AR/MRアプリケーションでは、ビジュアルCGコンテンツは、現実世界のビューに所与の位置で挿入される。この位置は、一般に、事前定義されたビジュアル2D/3Dパターンに対して相対的に画定される(例えば産業用アプリケーションの場合)か、空間座標(例えば、屋外の場所に基づくアプリケーション)またはスクリーン座標(例えば、Google Glassアプリケーション)によって事前に決められるか、もしくはユーザによって手動で選択される(例えば、インタラクティブアプリケーション)かのいずれかである。
しかしながら、高度なアプリケーションでは、仮想シーンは、準備されたアニメ化コンテンツを含み得る。これは、単一面および減じられた占有体積に基づくアニメーション(例えば、キャラクタがその場で飛び跳ねる、または、ダンサーが回転する)から、インタラクションの可能性があるかつ複雑な軌跡を有するいくつかのキャラクタおよび/またはオブジェクトを含む様々な面に基づく複雑なシナリオによって構築されたアニメーション(例えば、キャラクタが初期位置から第2の位置まで面上を歩いてオブジェクトをつかむ、そしてそのキャラクタは方向を変えて、そのオブジェクトを別のオブジェクトの後ろに隠しにいく、そしてそのキャラクタは再度方向を変え、突然穴の中に落ちる)にまで及ぶ。
良いユーザ体験、没頭感、およびリアリズムのために、そうした複雑な仮想アニメ化コンテンツは、現実環境と空間的にインタラクトするべきである。すなわち、キャラクタが歩く面は、十分に大きいはずでありかつ十分に空いている場所を有する現実の平面、例えばテーブルであり得、遮っているオブジェクトは、テーブル上の現実のオブジェクトであり得、穴は、テーブルの境界に対応し得る、など。
アニメ化CGコンテンツがアーティストによって生成されることは、この種の強い仮定および現実環境の形状に対する制約および現実要素の存在または非存在に基づく。しかしながら、現実環境が制御されない場合、そうした複雑なMRアニメーションを効率的にレンダリングすることは問題を含むことになる。例えば、水平な場所は、期待されるよりもかなり小さくまたはかなり大きくあり得、水平面は、多数のオブジェクトをその面上に有し得、その結果、欠落しているオクルージョンのような幾何学的収差なしでアニメーションを行うのに十分に空いている場所は残されていない。このシチュエーションは、さらに、アニメーションのセマンティック自体への疑問につながり得る。
既知の解決策は、仮想アニメーションを現実環境に適合させることからなる。これは、2つのステップ:上流で仮想アニメ化コンテンツを準備するときに、アニメーションをパラメータ化することによるステップと;その後の前処理ステップで、仮想コンテンツに適用される最適な位置、方位、およびスケールを計算するように、現実環境をスキャンしそのレイアウトを分析することによるステップとで構成され得る。
この点において柔軟に拡張された解決策が、Daqri LLCに対する特許出願US2015/0187108号において展開され、拡張現実のコンテンツは、ローカル環境の現実世界の空間形状の変化に適合される。より正確には、デバイスは、現実世界の空間形状の物理的な変化を、マッピングされた現実世界の空間形状に基づいて特定することができ、その物理的な変化に応じて仮想オブジェクトを修正することができる。そうした修正は、仮想オブジェクトのサイズ、形、位置、または挙動に関し得る。
しかしながら、そうした既存の解決策は、現実環境がアニメーションを効率的にレンダリングするのに十分な最低限の要件を含むことを保証しない。例えば、仮想キャラクタを歩かせるための水平面が欠落し得、または、現実オブジェクトが、キャラクタによってつかまれている仮想オブジェクトを隠し得る。
また、US2015/0187108号に提案されるような仮想コンテンツを動的に適合させることは、所望のシナリオにとって不利であり得る。加えて、広範な現実のシチュエーションに適合されるのに十分に柔軟なシナリオを提供することは、著しい格納および計算リソースを要し得る。
本開示の目的は、著しい追加の格納または計算リソースを要せずに、広範な現実のシチュエーションへのMRシナリオの柔軟な適合を有利に可能とすることである。
好ましい実施形態では、したがって、様々な制約を有するいくつかのシナリオを、現実環境を根拠としてリアルタイムで実行することができる。
この点において、本開示の目的は、特に、現実の3Dシーンの表現に重ねられる少なくとも1つの動的仮想コンテンツを生成するデバイスであり、動的仮想コンテンツ(複数可)は、シナリオ(複数可)のランタイム前に規定されかつ少なくとも1つの現実世界の制約を含む少なくとも1つのシナリオに準拠している。デバイスは、
−現実の3Dシーンにおいてキャプチャされた現実世界の情報を受信するようになされた少なくとも1つの入力部と、
−現実世界の情報から特定された現実世界の制約(複数可)の存在下で、ランタイム時にシナリオ(複数可)を実行するように構成された少なくとも1つのプロセッサとを備える。
本開示によれば、少なくとも1つのプロセッサは、さらに、少なくとも1つの現実世界の制約が現実世界の情報から特定されないとき、シナリオ(複数可)を実行する前に、現実の3Dシーンの表現の、仮想適合された3Dシーンへの変形を、仮想適合された3Dシーンが制約(複数可)を満たすように行い、現実の3Dシーンにおいてシナリオ(複数可)を実行する代わりに、現実の3Dシーンを置き換えている仮想適合された3Dシーンにおいてシナリオ(複数可)を実行するように構成されている。
デバイスは、それによって、仮想適合された3Dシーン上の取得情報があたかも有効な現実の3Dシーンに関する情報であるかのように動作し、ある種の意図的なシステムのミスリーディングにつながるように有利に構成されている。すなわち、計画されたシナリオは、有利に、正常に実行され、現実世界の表現に適用されたいくつかの予備の仮想パッチを受け得る。
MRシナリオは、環境の正確な知識がなくても、または、例えばテレビセットおよびTVが置かれているテーブルといった多種多様の様々な環境の場合さらなる正確さがなくても、上流で設計されていてもよいことに留意し得る。そして、適合は、有利に、それらのシナリオを使用可能とするように、実行場所においてローカルに達成される。
以下において、「適合された」または「完成した」環境または現実のシーン、もしくは、「移動された」または「変形された」現実のオブジェクトが参照されよう。便利および簡潔のために用いられるそれらの表現は、現実の3Dシーンが、シナリオの実行前に、その表現の関連変形を、仮想効果を介して受けることを意味するとして理解されるべきである。それらの仮想効果は、特に、加算、減算、色またはテクスチャの修正を含み得る。より一般には、それらは、リアリティの表現に対するアクションによって、ユーザによる現実の3Dシーンの知覚への任意の変化を備える。
そうした表現は、さらに、ユーザに対する任意の種類の表現を意味しており、それは、特に、透明または半透明ガラスを通すもの(直視型)であり得、もしくは、スクリーン上でユーザによって視覚化されている、現実の3Dシーンの画像をキャプチャするカメラの仲介によるもの(間接視型)であり得る。それらの技術は、当業者によく知られているので、本明細書ではさらに説明しない。
シナリオは、クリエータによって事前設計されたCGコンテンツアニメーションとして規定される。
現実の3Dシーンならびに仮想適合された3Dシーンの表現は、リアルタイムで行われることが好ましい。
既存の解決策とは異なり、かつ、仮想世界の、現実世界への適合を用いた当業者にとって驚くべきことに、本デバイスは、仮想シナリオの制約を満たすために、仮想修正を、あたかも現実世界に適用されたかのように人工的に導入する。適用された変形は実際のところ仮想世界のフィールドにとどまるが、それらは、所与のシナリオが実行される前に、現実世界に関連する制約に正常に従うように導入される。
ある実施形態では、現実の3Dシーンの表現の変形は、任意のシナリオランタイム前に、予備の調整ステージで行われる。
別の実施形態では、その表現の変形は、前のシナリオのランタイム中に行われ、1つ以上の次に続くシナリオにそなえる。この点において、2つ以上のシーンを備える所与のシナリオの異なる連続部分は、それらの連続部分の各々が少なくとも1つの各現実世界の制約と関連する限り、異なるシナリオとして見なされる場合があり得る。
拡張版では、シナリオの1つの部分から別の部分への推移は、現実の3Dシーンの変化(例えば、現実のオブジェクトが環境において削除される)によって引き起こされる。これは、シナリオが両方の部分において同様の特徴および現実世界の制約を備えるが、制約の少なくとも1つが、ランタイム中に修正される現実の3Dシーンの特異性に依存する場合をも有利に含む。そして、その変化は、先に開示したように、MR処理の枠内で現実の3Dシーンの知覚をだますことを手段として、仮想適合された3Dシーンにおいて関係する制約(複数可)を満たすことによって考慮に入れることができる。そして、変化に追尾するシナリオの一部は、それ自体が「シナリオ」と見なされる。
現実の3Dシーンにおいてキャプチャされた現実世界の情報は、環境のスキャンから取得される点群または3Dモデルを有利に備える。また、少なくとも1つのプロセッサは、特に現実の3Dシーンに存在するオブジェクトおよびそれらの種類、位置、サイズ、および形の一部または全て、ならびに空いている平面エリアを特定するといった、環境特異性を判定するように有利に構成されている。また、MRアプリケーション要件(特に要素または空いている平面エリアに関係し得る現実世界の制約)を分析しかつ環境がそれらの要件を部分的にでも満たすかどうかを確認するようにも有利に構成されている。
また、少なくとも1つのプロセッサは、実行されるまたは現在実行中のMRアプリケーションを、仮想適合された3Dシーンが現実の3Dシーンを置き換えている状態で更新するように有利に構成されている。
好ましい実装例では、少なくとも1つの現実世界の制約は、少なくとも2つあり、かつ潜在的にインタラクトしており、少なくとも1つのプロセッサは、さらに、それらの現実世界の制約に対して、仮想適合された3Dシーンがそれらの制約を満たすように、合同で変形を行うように構成されている。
いくつかの関連実施形態では、合同変形は、その後、2つ以上の制約が満たされるまで、変形の様々なアイテムを対象としたいくつかの連続する試みを介して、反復的に達成される。
別の実装例では、少なくとも1つの現実世界の制約は、少なくとも2つあり、かつ潜在的にインタラクトしており、重要順にしたがってランク付けされる。少なくとも1つのプロセッサは、さらに、少なくとも1つの最優位ランクを有する制約(複数可)を優先して変形を行うように、かつ、最優位ランク(複数可)を有する現実世界の制約と異なる現実世界の制約のうち少なくとも1つがない状態でランタイム時にシナリオを実行するように構成されている。
その結果、いくつかの制約は、他の制約が、関係しているシナリオの実行においてあまり重要ではないと見なされる限り、他の制約が満たされなくとも、満たされ得る。
好ましい実施形態によれば、単独でまたは任意の適切な組み合わせで検討されるが:
−少なくとも1つの制約は、少なくとも1つの現実世界のオブジェクトの存在を含み、少なくとも1つのプロセッサは、仮想適合された3Dシーンにおいて現実世界のオブジェクト(複数可)の仮想表現を追加するように構成されている;
−少なくとも1つの制約は、少なくとも1つの現実世界のオブジェクトの少なくとも1つの次元に関し、少なくとも1つのプロセッサは、次元(複数可)に対する少なくとも1つの制約が満たされるように、仮想適合された3Dシーンにおいて現実世界のオブジェクト(複数可)の少なくとも1つの次元の表現を修正するように構成されている;
−少なくとも1つのプロセッサは、仮想適合された3Dシーンにおいて、少なくとも1つの制約が満たされるように、少なくとも1つの制約にとって不利な少なくとも1つの現実世界のオブジェクトの仮想表現を変形するように構成されている;
−少なくとも1つのプロセッサは、仮想適合された3Dシーンにおいて現実世界のオブジェクト(複数可)の削除、縮小、および移動のうち少なくとも1つによって変形を行うように構成されている;
−少なくとも1つの制約は、少なくとも1つの現実世界のオブジェクトに関連し、少なくとも1つのプロセッサは、現実世界のオブジェクト(複数可)に対する少なくとも1つの制約が満たされるように、現実世界のオブジェクト(複数可)の移動、回転、変換、拡大縮小、複製のうち少なくとも1つによって変形を行うように構成されている。
有利には、変形は、仮想適合された3Dシーンにおける少なくとも1つのエリアをクリアアップすることを含み、少なくとも1つのプロセッサは、さらに、仮想適合された3Dシーンにおける少なくとも1つのエリアを修復するように構成されている。
そして、仮想適合によっていくつかの不規則性が導入される場合でさえも、例えば現実の3Dシーンの現実のオブジェクトを仮想的に削除することによって、連続性の知覚をユーザに提供することができる。
いくつかの実装例では、少なくとも1つのプロセッサは、さらに、ユーザに、変形の実行に明確に関与させるように構成されている。
ユーザはそれによって、自動プロセスを完了することができ、それは、特に、よりユーザフレンドリなまたはカスタマイズされたシナリオの実行を可能にする。
有利には、少なくとも1つの入力部はまた、シナリオ(複数可)を受信するようになされ、デバイスは、さらに、ユーザが仮想適合された3Dシーンにおいてシナリオ(複数可)を視覚化するための、仮想適合された3Dシーンの表現の少なくとも一部を出力するようになされた少なくとも1つの出力部を備える。
開示はさらに、開示によるデバイスを備える装置に関連し、その装置は、動画受信器、携帯電話、タブレット、または拡張現実用の頭部装着ディスプレイシステムである。
本開示の別の目的は、現実の3Dシーンの表現に重ねられる少なくとも1つの動的仮想コンテンツを生成するデバイスであり、動的仮想コンテンツ(複数可)は、シナリオ(複数可)のランタイム前に規定されかつ少なくとも1つの現実世界の制約を含む少なくとも1つのシナリオに準拠している。デバイスは、
−現実の3Dシーンにおいてキャプチャされた現実世界の情報を受信する手段と、
−現実世界の情報から特定された現実世界の制約(複数可)の存在下で、ランタイム時にシナリオ(複数可)を実行する手段とを備える。
本開示によれば、実行する手段は、少なくとも1つの現実世界の制約が現実世界の情報から特定されないとき、シナリオ(複数可)を実行する前に、現実の3Dシーンの表現の、仮想適合された3Dシーンへの変形を、仮想適合された3Dシーンが制約(複数可)を満たすように行い、現実の3Dシーンにおいてシナリオ(複数可)を実行する代わりに、現実の3Dシーンを置き換えている仮想適合された3Dシーンにおいてシナリオ(複数可)を実行するようになされている。
開示はまた、現実の3Dシーンの表現に重ねられる少なくとも1つの動的仮想コンテンツを生成する方法に関連し、少なくとも1つの動的仮想コンテンツは、シナリオ(複数可)のランタイム前に規定されかつ少なくとも1つの現実世界の制約を含む少なくとも1つのシナリオに準拠している。その方法は、
−現実の3Dシーンにおいてキャプチャされた現実世界の情報を受信することと、
−現実世界の情報から特定された現実世界の制約(複数可)の存在下で、ランタイム時にシナリオ(複数可)を実行することとを含む。
開示によれば、方法は、さらに、少なくとも1つの現実世界の制約が現実世界の情報から特定されないとき、シナリオ(複数可)を実行する前に、現実の3Dシーンの表現の、仮想適合された3Dシーンへの変形を、仮想適合された3Dシーンが少なくとも1つの制約を満たすように行い、現実の3Dシーンにおいてシナリオ(複数可)を実行する代わりに、現実の3Dシーンを置き換えている仮想適合された3Dシーンにおいてシナリオ(複数可)を実行することを含む。
その方法は、開示の実施モードのいずれかによるデバイスによって有利に実行される。
加えて、開示は、少なくとも1つの動的仮想コンテンツを生成するコンピュータプログラムであって、プログラムがプロセッサによって実行されると、上記の実行モードのいずれかに準拠している方法を行うようになされたソフトウェアコードを備えるコンピュータプログラムに関する。
本開示は、さらに、本開示に準拠している少なくとも1つの動的仮想コンテンツを生成する方法を行うための、コンピュータにより可読であり、コンピュータによって実行可能な命令のプログラムを有形に具体化する非一時的なプログラム格納デバイスに関する。
そうした非一時的なプログラム格納デバイスは、限定するものではないが、電子、磁気、光学、電磁、赤外線、または半導体デバイス、もしくは前述の任意の適切な組み合わせであり得る。以下:ポータブルフロッピーディスク、ハードディスク、ROM(読み取り専用メモリ)、EPROM(消去可能プログラマブルROM)またはフラッシュメモリ、ポータブルCD−ROM(コンパクトディスクROM)は、より具体的な例を提供しているが、当業者によって容易に理解されるように単なる例示であり、包括的な列挙ではないことが理解されよう。
特定のかつ非限定的な例示的実施形態の以下の説明を閲読することにより、本開示はより良く理解され、他の具体的な特徴および利点が明らかとなろう。説明は、添付の図面を参照している。
本開示に準拠している、動的仮想コンテンツを生成するデバイスを概略的に表すブロック図である。 図1のデバイスを利用するのに検討されるユーザの環境の例の図である。 図1のデバイスを用いて実行される連続的な複合現実のステップを示すフローチャートである。 図1に表されたデバイスを備えるMR装置の図である。
発明の詳細な説明
本説明は、本開示の原則を例示する。したがって、当業者は、本明細書中に明示的に記載または示されていないが、開示の原則を具体化しかつその趣旨および範囲内に含まれる様々な構成を考案可能であろうことが理解されよう。
本明細書中に列挙された全ての例及び条件付き言語は、開示の原則および本分野を促進するために発明者によって寄与される概念を読み手が理解することを助けるという教育上の目的を意図するものであり、そうした具体的に列挙された例および条件に対する限定はないとして解釈されよう。
さらに、開示の原則、態様、および実施形態、ならびにそれらの具体的な例を列挙する本明細書中の全ての記述は、それらの構造的かつ機能的等価物の両方を網羅することが意図される。加えて、そうした等価物は、現在知られている等価物、ならびに将来開発される等価物、すなわち、構造に関わらず同一の機能を行う開発される任意の要素の両方を含むことが意図される。
したがって、例えば、本明細書中に提示されたブロック図は、開示の原則を具体化する例示的な回路の概念図を表すことが当業者によって理解されよう。同様に、任意のフローチャート、流れ図などは、コンピュータ可読媒体において実質的に表され得、かつ、コンピュータまたはプロセッサによって、そうしたコンピュータまたはプロセッサが明示的に示されるか否かに関わりなく、そのように実行され得る様々なプロセスを表すことが理解されよう。
「なされた」および「構成された」という用語は、本開示において、材料によって達成されようともソフトウェア手段(ファームウェアを含む)によって達成されようとも、本デバイスの初期構成、後の適合、または補完、もしくは同様にそれらの任意の組み合わせを広範に網羅するとして用いられる。
図に示される様々な要素の機能は、専用ハードウェアならびにソフトウェアを適切なソフトウェアとともに実行可能なハードウェアを用いることによって提供され得る。プロセッサによって提供されるとき、機能は、単一の専用プロセッサ、単一の共用プロセッサ、または、一部が共有され得る複数の個別のプロセッサによって提供され得る。さらに、「プロセッサ」という用語の明示的な使用は、ソフトウェアを実行可能なハードウェアだけを指すと解釈されるべきでなく、一般に、例えばコンピュータ、マイクロプロセッサ、集積回路、またはプログラマブル論理デバイス(PLD)を含み得る処理デバイスを指す。加えて、関連するかつ/または結果として生じる機能の実行を可能にする命令および/またはデータは、例えば集積回路、ハードディスク、CD(コンパクトディスク)、DVD(デジタル多用途ディスク)などの光学ディスク、RAM(ランダムアクセスメモリ)、またはROMメモリといった任意のプロセッサ可読媒体に格納され得る。命令は、特に、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組み合わせに格納され得る。
図に示される要素は様々な形のハードウェア、ソフトウェア、またはそれらの組み合わせで実装され得ることを理解すべきである。好ましくは、これらの要素は、プロセッサ、メモリ、および入力/出力インタフェースを含み得る、1つ以上の適切にプログラミングされた汎用デバイス上でハードウェアとソフトウェアの組み合わせで実装される。
本開示は、図1に例示するような、動的仮想コンテンツを生成するデバイス1の特定の機能の実施形態を参照して説明されよう。
図1
デバイス1は、現実の3Dシーンの表現に重ねられかつ少なくとも1つのシナリオに準拠している少なくとも1つの動的仮想コンテンツを生成するようになされており、複合現実(MR)に関連する。
デバイス1は、有利には、記述された機能を行うようにかつ記述された効果または結果を生むように設計、構成、かつ/または適合された装置、または装置の物理的な一部である。代替の実装例では、デバイス1は、同一の機械でグループ化されるか、異なる、場合によっては遠隔の機械でグループ化されるかに関わらず、装置または装置の物理的な一部のセットとして具体化される。
以下において、モジュールは、材料、物理的に明確なコンポーネントではなく機能性エンティティとして理解されよう。それらは、結果的に、同一の有形かつ具体的なコンポーネントでまとめてグループ化されるか、または、いくつかのそうしたコンポーネントに分散されるかのいずれかで具体化され得る。また、それらのモジュールの各々は、場合によっては、それ自体が、少なくとも2つの物理的コンポーネントの間で共有される。加えて、モジュールは、ハードウェア、ソフトウェア、ファームウェア、または同様にそれらの任意の混合形式で実装される。それらは、デバイス1の少なくとも1つのプロセッサ内で具体化されることが好ましい。
デバイス1は、例えば現実の3Dシーンのカメラキャプチャから取得された現実世界の情報22を分析するモジュール11、分析された現実世界の情報22に対してMRシナリオ(仮想アプリケーション23)の要件を分析かつ確認するモジュール12、現実の3Dシーンの表現に適用される関連する仮想適合を進めるモジュール13、およびその適合によって生じた仮想適合された3Dシーンに適用されるシナリオを実行するモジュール14を備える。モジュール13の出力は、場合によっては、満足のいく適合の解決策が見つかるまで適合が反復的に調整され得るように、モジュール12に戻り得る。
情報は、デバイス1とインタラクトしているユーザインタフェース20を介してユーザによって入力かつ取得され得る。ユーザインタフェース20は、当業者によってよく知られているような以下の手段:スクリーン、キーボード、トラックボール、タッチパッド、タッチスクリーン、スピーカ、音声認識システムのうちのいずれかまたはいくつかを網羅し得る、データ、情報、または命令、特に視覚的、触覚的かつ/または音声機能を入力または取得するのに適切な任意の手段を含む。
デバイス1はまた、MRシナリオ要件に対する仮想適合を行うための、格納リソース10からの仮想ツール21を設けるようにもなされている。それら格納リソース10は、特に、場合によってはSSD(ソリッドステートディスク)内のRAM、またはフラッシュメモリなどのEEPROM(電気的消去可能プログラマブル読み取り専用メモリ)であり得る任意の種類の適切な格納手段の中から利用可能であり得る。
デバイス1の機能は、以下に詳述される。
5.1 前提条件:シナリオの規定
初期ステップにおいて、MRアプリケーションのクリエータは、シナリオを規定する。クリエータは、特に、シナリオに含まれる現実要素、および仮想要素がそれらとどのようにインタラクトするかを指定する。連続的なシナリオの要素の例は、以下のようである。
−第1の仮想の石が落下し、現実のキューブ上でバウンドし、現実のテーブル上で止まる
−第2の仮想の石が、現実の空のグラスに衝突する
−仮想の動物が、現実のテーブル上の空いている平面エリアに位置する事前定義されかつ変更不可能なアニメーションを有する
−仮想のキャラクタが、空いているエリアにおいて地面上を歩き、現実のテーブルの脚を登り、現実のテーブル上を歩き、仮想の動物と合流する;その軌跡は、現実のテーブル上の空いているエリアに依存する。
このシナリオを満たすために、クリエータは、現実環境に関するいくつかの要件を指定する。前のシナリオに対する要件のいくつかの例は、以下に列挙される。シーンは屋内で行われている:
−1.20m×0.60mの最小サイズを有するテーブル
−03m×0.2mの次元を有しかつテーブルの中心を中心とする、テーブル上の空いている平面エリア
−テーブルの左部分に載っている、0.10mの辺を有するキューブ
−テーブル上に載っている空のグラス
−テーブルの左側に位置しかつテーブルの左前方の脚を含む、0.6m×0.3mの次元を有する、地面上の空いている平面エリア。
要件はまた、具体的な位置または方位も課し得る。それらは、さらに、「制約のレベル」によって影響され得る。すなわち、いくつかの要件は、他の要件がそこまでではない一方で、強烈に制約を課している。例えば、強烈に制約を課している要件は、1.20m×0.60mのサイズのテーブルを有することからなる。なぜなら、テーブルが存在する場合、要件を満たすためにこれらの正確な次元を有さなければならないからである。そこまで制約を課さない要件は、テーブルの左側に載っている0.10mの辺を有するキューブを有することからなる。なぜなら、その正確な位置を課すものではないからである。
5.2 前提条件:要件の階層ソーティング
要件は、要件間の関係に関する階層でソートされることが好ましい。したがって、各要件には、階層レベルが割り当てられ、階層的分類は、コンテンツのクリエータによってコンテンツのオーサリング段階内で行われる。
例えば上記の要件を検討すると、最も重要な要件は、第1の要件(「1.20m×0.60mの最小サイズを有するテーブル」)である。4つの他の要件は、テーブルの存在に依存するが、互いからは独立している。したがって、それらは、同一の重要度、すなわち同一の階層レベルを有する。かくして、以下のソートされたテーブルが得られる。
1 1.20m×0.60mの最小サイズを有するテーブル
1.1 03m×0.2mの次元を有しかつテーブルの中心を中心とする、テーブル上の空いている平面エリア
1.2 テーブルの左部分に載っている、0.10mの辺を有するキューブ
1.3 テーブル上に載っている空のグラス
1.4 テーブルの左側に位置しかつテーブルの左前方の脚を含む、0.6m×0.3mの次元を有する、地面上の空いている平面エリア
「キューブ上に載っている0.1mの半径および0.3mの高さを有するシリンダ」といったさらなる要件が含まれる場合、そのレベルは、要件1.2を満たすことに依存するので、1.2.1である。
5.3 環境のスキャンおよび特異性の判定
次のステップは、環境のスキャンおよび関連する特異性の判定からなる。それは、特に環境において存在するオブジェクト(例えば、テーブル、テーブル上に載っているグラス、植物)および空いている平面エリアといった環境特異性を検出かつラベル付けすることによって、環境説明を確立することを対象とする。
よって、ユーザは、ユーザの環境をスキャンする。それは、特に、スキャンされたシーンの点群を提供する「Intel Real Sense」という名前で市販されている製品などのデプスセンサを備えるデバイスを用いて達成することができる。
点群は、次いで、分析されて、環境特性を検出かつラベル付けする。そのタスクを達成するための技術的解決策は、特に、2011年7月のイスタンブールでの第15回RoboCup International Symposiumの議事録におけるDirk Holz、Stefan Holzer、Rady Bogdan Rusu、およびSven Behnkeによる「Real−Time Plane Segmentation using RGB−D Cameras」;Humanoids 2012、198〜203ページにおけるAndre Uckermann、Robert Haschke、およびHelge J.Ritterによる「Real−time 3D segmentation of cluttered scenes for robot grasping」;MultiMedia Modeling 2014、449〜460ページにおけるZhe Whang、Hong Liu、Xiangdong Wang、およびYueliang Qianによる「Segment and Label Indoor Scene Based on RB−D for the Visually Impaired」;および、Robotics and Autonomous Systems 2013、61(12)、1641〜1652ページにおけるJ.Xiao、J.Zhang、B.Adler、H.Zhang、およびJ.Zhangによる「Three−dimensional point cloud plane segmentation in both structured and unstructured environments」の記事に記載される。
環境の分析はまた、3Dメッシュを出力する、Microsoft Hololensという名前で市販されているものなどのデバイスを用いて達成することもできる。そうした3Dメッシュから環境特性を取得することを可能にするいくつかの解決策は、CVPR2013におけるJulien P.C.Valentin、Sunando Sengupta、Jonathan Warrel、Ali Shahrokni、およびPhilip H.S.Torrによる「Mesh Based Semantic Modelling for Indoor and Outdoor Scenes」;およびComputer Graphics forum、vol.27、2008、n.6、1539〜1556ページにおけるAriel Shamirによる「A survey on Mesh Segmentation Techniques」の記事に記載されるものを含む。
このステップを担う、現実世界の情報を分析するモジュール11は、シーンをスキャンするのに用いられるデバイスに組み込まれ得るかまたはサーバ上で動作し得るかである。
5.4 仮想情報の判定
このレベルにおいて、環境の説明は既知である。本ステップは、要求される可能性のある仮想環境を判定するために、シナリオ要件と合わせて様々な環境説明を分析することからなる。この仮想環境は、全ユーザに同様の挙動および体験をもたらすように、ユーザごとに固有のものであり、現実環境に重ねられる。
そのステップは、2つの部分:満たされるシナリオ要件および満たされないシナリオ要件を確認すること(モジュール12)と、現実環境ごとに、完全に満たされない各シナリオ要件をどのように補完するかを判定すること(モジュール13)とを備える。
それら2つの部分は、先に提示した例示的な要件に関連して以下に詳述する。よって、環境は、
1/1.20m×0.60mの最小サイズを有するテーブルと;
2/03m×0.2mの次元を有しかつテーブルの中心を中心とする、テーブル上の空いている平面エリアと;
3/テーブルの左部分に載っている、0.10mの辺を有するキューブと;
4/テーブル上に載っている空のグラスと;
5/テーブルの左側に位置しかつテーブルの左前方の脚を含む、0.6m×0.3mの次元を有する、地面上の空いている平面エリアとを含まなければならない。
例示的な現実環境が図2に表され、そこでは、テーブル31が、左側に載っているキューブ32および右側に載っている花瓶33を有し、植物34が、テーブル31の右側に位置する。
5.4.1 シナリオ要件の確認
モジュール12は、いずれのシナリオ要件が満たされいずれが満たされないかを確認する。要件の総数は、nbReqと示される。
対応するアルゴリズムは、以下のように進む:
−環境のスキャンおよび特異性の判定から推定される特性をロードする(モジュール11);
−各要件のステータス(完全に満たされているまたはそうではない)を格納しているnbReqのブール値のステータスリストの一覧を作成する;
−対応するシナリオ要件が部分的にまたは完全に満たされる場合は現実環境の特異性/特異性(複数)を格納している、もしくはそれ以外の場合は何も格納していないnbReqのデータのデータリストの一覧を作成する;
−シナリオ要件の一覧をロードする。
−シナリオ要件ごとに、次いでモジュール13が以下を担う:
−要件が満たされるか否かを確認する;
−yesであれば、ステータスリストの対応する要素をTrueに設定し、データリストの対応する要素を、この要件に関連する環境特異性/特異性(複数)で埋める;
−noであれば、ステータスリストの対応する要素をFalseに設定し、データリストの対応する要素を、この要件に関連する環境特異性/特異性(複数)で埋める(例えば、オブジェクトは存在するが、期待よりも小さいまたは間違った位置にある)か、もしくは、特異性が存在しない場合(例えば、要求されるオブジェクトが存在しない)、Emptyとする。
要件が部分的にのみ満たされる場合でも、以下に展開する理由により、環境特異性/特異性(複数)を格納することは興味深くあることに留意すべきである。
上記の例を続けると、ステータスリストは、以下の値:
1/False(テーブル31は、要求される次元を有さない)
2/True
3/True(キューブ32)
4/False
5/True
を有し、データリストは、以下の値:
1/テーブルサイズは、1.0m×0.6m
2/0.5m×0.6mのサイズの(Xtfp、Ytfp)を中心とする、空いている平面エリア
3/0.10mのサイズの(Xc、Yc)を中心とする、キューブ32
4/
5/2m×1mの(Xgfp、Ygfp)を中心とする、地面上の空いている平面エリア
を有する。
5.4.2 シナリオ要件の分析
MRアプリケーション要件(特に、要素、空いている平面エリア)の分析および環境がこれらの要件をたとえ部分的にでも満たすかどうかの確認に加えて、モジュール13は、要件(複数可)を完全に満たさないユーザ(現実)の環境の現在の部分を、仮想要素を用いて完成させる。この適合は、いかなる環境も最終的に、MRアプリケーションが同様にレンダリングされることを確保する共通の特異性を含むようなものである。
最終的に、モジュール13は、現実環境を強化する仮想環境を用いてMRアプリケーションを更新する。
より正確には、モジュール13は、具体的な現実環境ごとに、完全に満たされない各シナリオ要件をどのように補完するかを判定する。
第1のシチュエーションにおいて、特異性は欠落しており、それは、例えば上記の例におけるグラスといった、要求される要素の欠如を意味し得る。この問題は、オブジェクトの事前定義された仮想モデルに基づく仮想オブジェクトを追加することによって解決される。
第2のシチュエーションにおいて、特異性は、現実環境において適切にではないが存在する。これは、特に、要求されるオブジェクトは存在するが、そのサイズ、位置、および/または方位がシナリオ要件を満たさない場合を網羅する。現実のオブジェクトがラベル付けされると、その関連する3Dモデルおよび場合によってはそのテクスチャが明らかになる。そして、有利な実装例では、その3Dモデルが変形される(移動される、拡大縮小される、かつ/または回転される)。
3Dモデルが小さすぎる場合、そのスケールを拡大することができ、3Dモデルが大きすぎる場合、そのスケールを縮小することができる。後者の場合、現実環境における「削除された」または「欠落している」現実のオブジェクトの一部は埋められ、それは、例えば、IEEE Transactions on Visualization and Computer Graphics、Vol.20、2014、n.6、866〜879ページにおけるJan HerlingおよびWolfgang Brollによる「High−Quality Real−Time Video Inpainting with PixMix」の記事に展開された技術などの修復技術によって行うことができる。
要求されるオブジェクトが現実の3Dシーンに存在するがその位置が間違っている場合、それは、有利に、移動されるかまたは複製/コピーされるかである。そして、適用される解決策がオブジェクトを移動することからなる場合、オブジェクトによってもはや覆われない現実のオブジェクトの領域は埋められる(修復によって行うことができる)。オブジェクトの方位が正しくない場合、同様のアクションを行うことができる。
別の実施形態では、ユーザは、現実のオブジェクトを正しい位置および/または方位で、手動で移動かつ/または回転するように求められる。この点において、オブジェクトの最終的な位置および/または方位は、その形状が現実のオブジェクトの形状と同一である仮想オブジェクトを表示することによって、ユーザに示される。ユーザは、現実のオブジェクトの表現を、それが仮想のオブジェクトと重ねられるまで、移動/回転する。
欠落しているまたは十分な大きさのない、空いている平面エリア/体積の場合、2つの先に記述された方法を適用することができる。修復技術を用いることによって、平面エリア/体積を占めている現実要素の表現を「削除」することが可能となり、ユーザは、エリア/体積を手動で「きれいに」するように求められ得る。
5.4.3 複数のシナリオ要件の合同管理
完全に満たされていない要件を補完することは、別の要件がもはや満たされないということにつながり得る。例えば、欠落しているグラスをテーブル31(図2)上に追加することによって、要件2の空いているエリア(0.3m×0.2mの、テーブル上の空いている平面エリア)は消失し得る。
そうしたシチュエーションを管理するために用いられるアルゴリズムを以下に記載する。値がFalseに設定された、そしてIfalseと称されるインデックスを有する、ステータスリストの現在の要素ごとに、以下のステップが実行される:
−上記で展開したように、その現在の要素に対応する要件を満たす解決策を判定するステップと;
−インデックスIfalseを有するステータスリストの現在の要素をTrueに設定するステップと;
−値がTrueに設定された(かつItrueと称されるインデックスを有する)、ステータスリストの他の要素ごとに、現在の要素に対して上記の解決策を採用したときに、対応する要件が依然として満たされるかどうかを確認するステップと;
−満たされない場合、現在の要件に対して、インデックスItrueの要件を依然として満たされることを可能にする別の構成をテストするステップと、
−可能でない場合、インデックスIfalseを有する、ステータスリストの現在の要素をFalseとするステップとである。
そのプロセスの拡張版は、後で検討される要件は満たすことができないが、最初に処理された要件のみを制御されない方法で満たす(「最初に到達したものが、最初に対処される」)ことの回避を可能にする。よって、最優先ランキングを有する要件が最初に処理され、他の要件は、連続的に下降するランキングにしたがって最下位ランキングまで処理される。
さらなる改良版では、そのステータスリストの値がTrueである要件(複数可)を既に満たす1つ以上の現実要素(既に配置されている要素を特に含む)の表現にいくつかの修正を適用することができるかどうかが確認され、以下を得られるようにする:
−既に満たされている要件は完全に満たされたままとする
−インデックスIfalseを有する現在の要件も完全に満たされる。
言い換えれば、このステップは、両方の目的を満たす修正の組み合わせを見つけようとしており、その上、現実要素の表現の修正は、1つ以上の(場合によっては多くの)他の表現の修正を誘発し得る。
さらに、要件の階層は、全ての制約を満たすことができないときに、最高ランクを優先させるのに有利に用いられる。
ステータスリストの全ての要素がTrueに等しい場合、シナリオを完全に満たす解決策が見つけられている。そうでない場合、明白な解決策は見つからず、最低優先ランキング(または最低優先ランキング(複数))を有する1つ以上の制約は、残しておかれ得る。いかなる全体的な解決策もない変形実装例では、全ての要件がユーザに対して提示され、ユーザは、要件を満たすために、当ユーザの現実環境の表現の修正(要素の追加/移動/削除)を要求される。
実施に際して、図3に例示するように、デバイス1は、MR動作において、好ましくは以下のように進む。取得ステージにおいて、現実の3D環境の特異性(それら特異性は、それぞれの、場合によっては同一のトピックと関連している)が、シナリオ要件の一覧(ステップ42)に加えてロードされる(ステップ41)。要件全てが処理されているかどうかが確認される(ステップ431)。yesである場合、プロセスは停止される(ステップ432)。そうでない場合、次の要件がロードされ、対応するステータスリストがFalseで初期化され、対応するデータリストがEmptyとされる(ステップ433)。
次いで、環境特異性全てが処理されているかどうかが確認される(ステップ441)。yesである場合、プロセスはステップ431にループバックする。そうでない場合、次の環境特異性がロードされる(ステップ451)。次いで、特異性が要件のトピックに対応するかどうかが確認される(ステップ452)。noである場合、プロセスは、ステップ441にループバックする。そうでない場合、特異性が、検討される要件を満たすかどうかが確認される(ステップ453)。noである場合、対応するステータスリストはFalseに設定され、特異性は、対応するデータリスト内に追加され、プロセスは、ステップ441にループバックする。
そうでない場合、対応するステータスリストはTrueに設定され、特異性は、対応するデータリスト内に追加され、プロセスは、ステップ441にループバックする。
図4に見ることができる特定の装置5は、上述のデバイス1を具体化している。それは、例えば、タブレット、スマートフォン、頭部装着ディスプレイ(HMD)、ゲーム機−ライブで画像を生成かつ表示する専用ゲーム機など、またはラップトップに対応する。その装置5は、直視型(ユーザは通常、現実の3Dシーンをガラス越しに見ている)または間接視型(ユーザは、スクリーンに表示された現実の3Dシーンを見ている)に関わらず、拡張現実に適している。両方の能力を組み合わせることもできる。
装置5は、クロック信号も輸送するアドレスおよびデータのバス55によって互いと接続されている以下の要素を備える:
−マイクロプロセッサ51(すなわちCPU)と;
−いくつかのグラフィカルプロセッサユニット(すなわちGPU)520およびグラフィカルランダムアクセスメモリ(GRAM)521を備えるグラフィックカード52と;
−ROMタイプの不揮発性メモリ56と;
−RAM57と;
−例えばキーボード、マウス、ジョイスティック、ウェブカムといった1つまたはいくつかのI/O(入力/出力)デバイス54;例えば音声認識といったコマンドを導入する他のモードもやはり可能である;
−電源58と;
−無線周波数ユニット59とである。
装置5はまた、例えばライブでグラフィックカードにおいて計算かつ構成された合成画像を表示するための、グラフィックカード52に直接接続されている表示スクリーン型の表示デバイス53も備える。表示デバイス53をグラフィックカード52に接続するのに専用バスを用いることにより、データ送信ビットレートをかなり大きくし、かくして、グラフィックカードによって構成された画像を表示するための待ち時間を低減するという利点がもたらされる。変形例によれば、表示デバイスは装置5の外部にあり、装置5に、表示信号を送信するために、ケーブルでまたは無線で接続されている。装置5は、例えばグラフィックカード52を通して、表示信号を例えばLCDまたはプラズマスクリーンまたはビデオプロジェクタといった外部の表示手段に送信するようになされた送信または接続のインタフェースを備える。この点において、RFユニット59を、無線送信に用いることができる。
代替の実装例では、表示デバイス53は、ユーザがそれを通して現実環境を見ているガラスに相当し、装置5は、さらに、例えば生成された仮想画像またはコンテンツをガラス上で投影可能とする光学投影システム(表さず)を備える。
メモリ521、56、および57の説明で用いられる「レジスタ」という単語は、記述されるメモリの各々において、低容量のメモリゾーン(いくつかのバイナリデータ)ならびに大容量のメモリゾーン(プログラム全体を格納可能とする、または、データを代表するデータの全てまたは一部を計算または表示可能とする)の両方を示すことに留意されたい。また、GRAM521に対して表されるレジスタは、任意の方法で配置かつ構成され得、それらの各々は、隣接するメモリ場所に必ずしも対応するものではなく、分散され得る(1つのレジスタがいくつかのより小さなレジスタを含むシチュエーションを特に包含する)。
スイッチが入れられると、マイクロプロセッサ51は、RAM57に含まれるプログラムの命令をロードし実行する。
ランダムアクセスメモリ57は、特に、
−レジスタ570に、装置5上のスイッチングに関与するマイクロプロセッサ51のオペレーティングプログラムと;
−レジスタ571に、現実の3Dシーンを表すパラメータ(例えば、シーンのオブジェクト(複数可)のモデルおよび照明パラメータ)と;
−レジスタ572に、1つまたはいくつかのMRシナリオを表すパラメータと;
−レジスタ573に、MRシナリオに関連する、現実の3Dシーンに対する制約と;
−レジスタ574に、現実の3Dシーンに対するかつMRシナリオの制約に対応する仮想適合のパラメータとを備える。
本開示に特有のかつ上述された方法のステップを実装するアルゴリズムは、それらステップを実装する装置5に関連するグラフィックカード52のメモリGRAM521に格納される。スイッチが入れられパラメータ571、572、および574がRAM57内にロードされると、グラフィックカード52のグラフィックプロセッサ520は、それらパラメータをGRAM521内にロードし、それらアルゴリズムの命令を、例えばHLSL(上位レベルシェーダ言語)言語またはGLSL(OpenGLシェーディング言語)を用いる「シェーダ」タイプのマイクロプログラムの形で実行する。
ランダムアクセスメモリGRAM521は、特に、
−レジスタ5211に、現実の3Dシーンを表すパラメータと;
−レジスタ5212に、MRシナリオを表すパラメータと;
−レジスタ5213に、シナリオ制約と関連して適用される仮想適合を表すパラメータとを備える。
変形例によれば、基本命令に関するデータの少なくとも一部がRAM57に格納され、マイクロプロセッサ51によって処理される。この変形例は、しかしながら、データがグラフィックカードからランダムアクセスメモリ57にバス55による通過で送信されなければならず、その送信能力は一般に、データのGPU520からGRAM521へのそしてその逆の送信においてグラフィックカードで利用可能な送信能力よりも劣るので、GPU520に含まれるマイクロプログラムから構成された環境の表現を備える画像を構成するにおいて、より大きな待ち時間を生じさせる。
当業者によって理解されるように、グラフィックカード52の存在は必須ではなく、より簡潔な視覚化の実装で置き換えることができる。
別の変形例によれば、電源58は、装置1の外部にある。
本開示および詳細な実施形態を根拠として、他の実装例は、実現可能であり、発明の範囲から逸脱せずに当業者が到達する範囲内にある。指定される要素は、特に、本開示の枠内にとどまる任意の方法で交換または関連付けすることができる。また、様々な実装例の要素は、組み合わされ、補足され、修正され、または削除されて、他の実装例を作成し得る。それら全ての可能性は、本開示によって予定される。
上記実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
現実の3Dシーンの表現に重ねられる少なくとも1つの動的仮想コンテンツを生成するデバイス(1、5)であって、前記少なくとも1つの動的仮想コンテンツは、少なくとも1つのシナリオのランタイム前に規定されかつ少なくとも1つの現実世界の制約を含む前記少なくとも1つのシナリオに準拠しており(23)、前記デバイスは、
−前記現実の3Dシーンにおいてキャプチャされた現実世界の情報(22)を受信するようになされた少なくとも1つの入力部と、
−前記現実世界の情報から特定された前記少なくとも1つの現実世界の制約の存在下で、前記ランタイム時に前記少なくとも1つのシナリオを実行(14)するように構成された少なくとも1つのプロセッサとを備え、
前記少なくとも1つのプロセッサは、さらに、前記少なくとも1つの現実世界の制約が前記現実世界の情報から特定されないとき(12)、前記少なくとも1つのシナリオを実行する前に、前記現実の3Dシーンの前記表現の、仮想適合された3Dシーンへの変形(13)を、前記仮想適合された3Dシーンが前記少なくとも1つの制約を満たすように行い、前記現実の3Dシーンにおいて前記少なくとも1つのシナリオを実行する代わりに、前記現実の3Dシーンを置き換えている前記仮想適合された3Dシーンにおいて前記少なくとも1つのシナリオを実行するように構成されたことを特徴とする、デバイス。
(付記2)
前記少なくとも1つの現実世界の制約が、少なくとも2つあり、かつ潜在的にインタラクトしており、前記少なくとも1つのプロセッサが、さらに、前記仮想適合された3Dシーンが前記少なくとも2つの制約を満たすように、前記少なくとも2つの現実世界の制約に対して合同で前記変形を行うように構成されたことを特徴とする、付記1に記載のデバイス(1、5)。
(付記3)
前記少なくとも1つの現実世界の制約が、少なくとも2つあり、潜在的にインタラクトしており、かつ重要順にしたがってランク付けされており、前記少なくとも1つのプロセッサが、さらに、少なくとも1つの最優先ランクを有する前記少なくとも1つの現実世界の制約を優先して前記変形を行うように、かつ、前記少なくとも1つの最優先ランクを有する前記少なくとも1つの現実世界の制約とは異なる前記少なくとも1つの現実世界の制約がない状態で、前記ランタイム時に、前記少なくとも1つのシナリオを実行するように構成されたことを特徴とする、付記1または2に記載のデバイス(1、5)。
(付記4)
前記少なくとも1つの制約が、少なくとも1つの現実世界のオブジェクトの存在を含み、前記少なくとも1つのプロセッサが、前記仮想適合された3Dシーンにおいて前記少なくとも1つの現実世界のオブジェクトの仮想表現を追加するように構成されたことを特徴とする、先行付記のいずれかに記載のデバイス(1、5)。
(付記5)
前記少なくとも1つの制約が、少なくとも1つの現実世界のオブジェクトの少なくとも1つの次元に関し、前記少なくとも1つのプロセッサが、前記少なくとも1つの次元に対する前記少なくとも1つの制約が満たされるように、前記仮想適合された3Dシーンにおいて前記少なくとも1つの現実世界のオブジェクトの前記少なくとも1つの次元の表現を修正するように構成されたことを特徴とする、先行付記のいずれかに記載のデバイス(1、5)。
(付記6)
前記少なくとも1つのプロセッサが、前記仮想適合された3Dシーンにおいて、前記少なくとも1つの制約が満たされるように、前記少なくとも1つの制約にとって不利である少なくとも1つの現実世界のオブジェクトの仮想表現を変形するように構成されたことを特徴とする、先行付記のいずれかに記載のデバイス(1、5)。
(付記7)
前記少なくとも1つのプロセッサが、前記仮想適合された3Dシーンにおいて前記少なくとも1つの現実世界のオブジェクトの削除、縮小、および移動のうちの少なくとも1つによって前記変形を行うように構成されたことを特徴とする、付記6に記載のデバイス(1、5)。
(付記8)
前記少なくとも1つの制約が、少なくとも1つの現実世界のオブジェクトに関係し、前記少なくとも1つのプロセッサが、前記少なくとも1つの現実世界のオブジェクトに対する前記少なくとも1つの制約が満たされるように、前記少なくとも1つの現実世界のオブジェクトの移動、回転、変換、拡大縮小、複製のうちの少なくとも1つによって前記変形を行うように構成されたことを特徴とする、先行付記のいずれかに記載のデバイス(1、5)。
(付記9)
前記変形は、前記仮想適合された3Dシーンにおいて少なくとも1つのエリアをクリアアップすることを含み、前記少なくとも1つのプロセッサが、さらに、前記仮想適合された3Dシーンにおいて前記少なくとも1つのエリアを修復するように構成されたことを特徴とする、先行付記のいずれかに記載のデバイス(1、5)。
(付記10)
前記少なくとも1つのプロセッサが、さらに、ユーザに、前記変形を行うことに明確に関与させるように構成されたことを特徴とする、先行付記のいずれかに記載のデバイス(1、5)。
(付記11)
前記少なくとも1つの入力部がまた、前記少なくとも1つのシナリオを受信するようになされ、前記デバイスが、さらに、ユーザが、前記仮想適合された3Dシーンにおいて前記少なくとも1つのシナリオを視覚化するために、前記仮想適合された3Dシーンの表現の少なくとも一部を出力するようになされた少なくとも1つの出力部を備えることを特徴とする、先行付記のいずれかに記載のデバイス(1、5)。
(付記12)
装置(5)であって、前記装置は、先行付記のいずれかによるデバイスを備え、前記装置は、動画受信器、携帯電話、タブレット、および拡張現実用の頭部装着ディスプレイシステムから選択されることを特徴とする、装置。
(付記13)
現実の3Dシーンの表現に重ねられる少なくとも1つの動的仮想コンテンツを生成する方法であって、前記少なくとも1つの動的仮想コンテンツは、少なくとも1つのシナリオのランタイム前に規定されかつ少なくとも1つの現実世界の制約を含む前記少なくとも1つのシナリオに準拠しており、前記方法は、
−前記現実の3Dシーンにおいてキャプチャされた現実世界の情報を受信すること(41)と、
−前記現実世界の情報から特定された前記少なくとも1つの現実世界の制約の存在下で、前記ランタイム時に前記少なくとも1つのシナリオを実行することとを含み、
前記方法が、さらに、前記少なくとも1つの現実世界の制約が前記現実世界の情報から特定されないとき(452、453)、前記少なくとも1つのシナリオを実行する前に、前記現実の3Dシーンの前記表現の、仮想適合された3Dシーンへの変形を、前記仮想適合された3Dシーンが前記少なくとも1つの制約を満たすように行い、前記現実の3Dシーンにおいて前記少なくとも1つのシナリオを実行する代わりに、前記現実の3Dシーンを置き換えている前記仮想適合された3Dシーンにおいて前記少なくとも1つのシナリオを実行することを含むことを特徴とする、方法。
(付記14)
付記1〜10のいずれかによるデバイス(1、5)によって実行されることを特徴とする、付記13に記載の方法。
(付記15)
少なくとも1つの動的仮想コンテンツを生成するコンピュータプログラムであって、前記プログラムがプロセッサによって実行されると、付記13または14に準拠する方法を行うようになされたソフトウェアコードを備える、コンピュータプログラム。

Claims (15)

  1. 現実の3Dシーンの表現に重ねられる少なくとも1つの動的仮想コンテンツを生成するデバイスであって、前記少なくとも1つの動的仮想コンテンツは、少なくとも1つのシナリオのランタイム前に規定されかつ少なくとも1つの現実世界の制約を含む前記少なくとも1つのシナリオに準拠しており、前記デバイスは、
    −前記現実の3Dシーンにおいてキャプチャされた現実世界の情報を受信するようになされた少なくとも1つの入力部と、
    −前記現実世界の情報から特定された前記少なくとも1つの現実世界の制約の存在下で、前記ランタイム時に前記少なくとも1つのシナリオを実行するように構成された少なくとも1つのプロセッサとを備え、
    前記少なくとも1つのプロセッサは、さらに、前記少なくとも1つの現実世界の制約が前記現実世界の情報から特定されないとき、前記少なくとも1つのシナリオを実行する前に、前記現実の3Dシーンの前記表現の、仮想適合された3Dシーンへの変形を、前記仮想適合された3Dシーンが前記少なくとも1つの制約を満たすように行い、前記現実の3Dシーンにおいて前記少なくとも1つのシナリオを実行する代わりに、前記現実の3Dシーンを置き換えている前記仮想適合された3Dシーンにおいて前記少なくとも1つのシナリオを実行するように構成されたことを特徴とする、デバイス。
  2. 前記少なくとも1つの現実世界の制約が、少なくとも2つあり、かつ潜在的にインタラクトしており、前記少なくとも1つのプロセッサが、さらに、前記仮想適合された3Dシーンが前記少なくとも2つの制約を満たすように、前記少なくとも2つの現実世界の制約に対して合同で前記変形を行うように構成されたことを特徴とする、請求項1に記載のデバイス。
  3. 前記少なくとも1つの現実世界の制約が、少なくとも2つあり、潜在的にインタラクトしており、かつ重要順にしたがってランク付けされており、前記少なくとも1つのプロセッサが、さらに、少なくとも1つの最優先ランクを有する前記少なくとも1つの現実世界の制約を優先して前記変形を行うように、かつ、前記少なくとも1つの最優先ランクを有する前記少なくとも1つの現実世界の制約とは異なる前記少なくとも1つの現実世界の制約がない状態で、前記ランタイム時に、前記少なくとも1つのシナリオを実行するように構成されたことを特徴とする、請求項1または2に記載のデバイス。
  4. 前記少なくとも1つの制約が、少なくとも1つの現実世界のオブジェクトの存在を含み、前記少なくとも1つのプロセッサが、前記仮想適合された3Dシーンにおいて前記少なくとも1つの現実世界のオブジェクトの仮想表現を追加するように構成されたことを特徴とする、請求項1から3のいずれかに記載のデバイス。
  5. 前記少なくとも1つの制約が、少なくとも1つの現実世界のオブジェクトの少なくとも1つの次元に関し、前記少なくとも1つのプロセッサが、前記少なくとも1つの次元に対する前記少なくとも1つの制約が満たされるように、前記仮想適合された3Dシーンにおいて前記少なくとも1つの現実世界のオブジェクトの前記少なくとも1つの次元の表現を修正するように構成されたことを特徴とする、請求項1から4のいずれかに記載のデバイス。
  6. 前記少なくとも1つのプロセッサが、前記仮想適合された3Dシーンにおいて、前記少なくとも1つの制約が満たされるように、前記少なくとも1つの制約にとって不利である少なくとも1つの現実世界のオブジェクトの仮想表現を変形するように構成されたことを特徴とする、請求項1から5のいずれかに記載のデバイス。
  7. 前記少なくとも1つのプロセッサが、前記仮想適合された3Dシーンにおいて前記少なくとも1つの現実世界のオブジェクトの削除、縮小、および移動のうちの少なくとも1つによって前記変形を行うように構成されたことを特徴とする、請求項6に記載のデバイス。
  8. 前記少なくとも1つの制約が、少なくとも1つの現実世界のオブジェクトに関係し、前記少なくとも1つのプロセッサが、前記少なくとも1つの現実世界のオブジェクトに対する前記少なくとも1つの制約が満たされるように、前記少なくとも1つの現実世界のオブジェクトの移動、回転、変換、拡大縮小、複製のうちの少なくとも1つによって前記変形を行うように構成されたことを特徴とする、請求項1から7のいずれかに記載のデバイス。
  9. 前記変形は、前記仮想適合された3Dシーンにおいて少なくとも1つのエリアをクリアアップすることを含み、前記少なくとも1つのプロセッサが、さらに、前記仮想適合された3Dシーンにおいて前記少なくとも1つのエリアを修復するように構成されたことを特徴とする、請求項1から8のいずれかに記載のデバイス。
  10. 前記少なくとも1つのプロセッサが、さらに、ユーザに、前記変形を行うことに明確に関与させるように構成されたことを特徴とする、請求項1から9のいずれかに記載のデバイス。
  11. 前記少なくとも1つの入力部がまた、前記少なくとも1つのシナリオを受信するようになされ、前記デバイスが、さらに、ユーザが、前記仮想適合された3Dシーンにおいて前記少なくとも1つのシナリオを視覚化するために、前記仮想適合された3Dシーンの表現の少なくとも一部を出力するようになされた少なくとも1つの出力部を備えることを特徴とする、請求項1から10のいずれかに記載のデバイス。
  12. 置であって、前記装置は、請求項1から11のいずれかによるデバイスを備え、前記装置は、動画受信器、携帯電話、タブレット、および拡張現実用の頭部装着ディスプレイシステムから選択されることを特徴とする、装置。
  13. 現実の3Dシーンの表現に重ねられる少なくとも1つの動的仮想コンテンツを生成する方法であって、前記少なくとも1つの動的仮想コンテンツは、少なくとも1つのシナリオのランタイム前に規定されかつ少なくとも1つの現実世界の制約を含む前記少なくとも1つのシナリオに準拠しており、前記方法は、
    −前記現実の3Dシーンにおいてキャプチャされた現実世界の情報を受信することと
    −前記現実世界の情報から特定された前記少なくとも1つの現実世界の制約の存在下で、前記ランタイム時に前記少なくとも1つのシナリオを実行することとを含み、
    前記方法が、さらに、前記少なくとも1つの現実世界の制約が前記現実世界の情報から特定されないとき、前記少なくとも1つのシナリオを実行する前に、前記現実の3Dシーンの前記表現の、仮想適合された3Dシーンへの変形を、前記仮想適合された3Dシーンが前記少なくとも1つの制約を満たすように行い、前記現実の3Dシーンにおいて前記少なくとも1つのシナリオを実行する代わりに、前記現実の3Dシーンを置き換えている前記仮想適合された3Dシーンにおいて前記少なくとも1つのシナリオを実行することを含むことを特徴とする、方法。
  14. 請求項1〜10のいずれか一項によるデバイスによって実行されることを特徴とする、請求項13に記載の方法。
  15. 少なくとも1つの動的仮想コンテンツを生成するコンピュータプログラムであって、前記プログラムがプロセッサによって実行されると、請求項13または14に準拠する方法を行うようになされたソフトウェアコードを備える、コンピュータプログラム。
JP2019533114A 2016-12-26 2017-12-19 複合現実において動的仮想コンテンツを生成するデバイスおよび方法 Active JP6972135B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021179542A JP7556839B2 (ja) 2016-12-26 2021-11-02 複合現実において動的仮想コンテンツを生成するデバイスおよび方法
JP2023166658A JP2023171435A (ja) 2016-12-26 2023-09-28 複合現実において動的仮想コンテンツを生成するデバイスおよび方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP16306818.2 2016-12-26
EP16306818.2A EP3340187A1 (en) 2016-12-26 2016-12-26 Device and method for generating dynamic virtual contents in mixed reality
PCT/EP2017/083461 WO2018122030A1 (en) 2016-12-26 2017-12-19 Device and method for generating dynamic virtual contents in mixed reality

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2021179542A Division JP7556839B2 (ja) 2016-12-26 2021-11-02 複合現実において動的仮想コンテンツを生成するデバイスおよび方法

Publications (3)

Publication Number Publication Date
JP2020503611A JP2020503611A (ja) 2020-01-30
JP2020503611A5 JP2020503611A5 (ja) 2021-01-14
JP6972135B2 true JP6972135B2 (ja) 2021-11-24

Family

ID=57755150

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2019533114A Active JP6972135B2 (ja) 2016-12-26 2017-12-19 複合現実において動的仮想コンテンツを生成するデバイスおよび方法
JP2021179542A Active JP7556839B2 (ja) 2016-12-26 2021-11-02 複合現実において動的仮想コンテンツを生成するデバイスおよび方法
JP2023166658A Pending JP2023171435A (ja) 2016-12-26 2023-09-28 複合現実において動的仮想コンテンツを生成するデバイスおよび方法

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2021179542A Active JP7556839B2 (ja) 2016-12-26 2021-11-02 複合現実において動的仮想コンテンツを生成するデバイスおよび方法
JP2023166658A Pending JP2023171435A (ja) 2016-12-26 2023-09-28 複合現実において動的仮想コンテンツを生成するデバイスおよび方法

Country Status (6)

Country Link
US (2) US11113888B2 (ja)
EP (2) EP3340187A1 (ja)
JP (3) JP6972135B2 (ja)
KR (2) KR102433857B1 (ja)
CN (2) CN110168614B (ja)
WO (1) WO2018122030A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3640767B1 (de) * 2018-10-17 2024-09-11 Siemens Schweiz AG Verfahren zum bestimmen mindestens eines bereichs in mindestens einem eingabemodell für mindestens ein zu platzierendes element
CN112015272B (zh) * 2020-03-10 2022-03-25 北京欧倍尔软件技术开发有限公司 虚拟现实系统及虚拟现实对象控制装置
US12020379B2 (en) * 2020-04-17 2024-06-25 Apple Inc. Virtual anchoring systems and methods for extended reality
CN111932683B (zh) * 2020-08-06 2022-12-30 北京理工大学 一种语义驱动的混合现实场景下的虚拟宠物行为生成方法
CN113129372B (zh) * 2021-03-29 2023-11-03 深圳清元文化科技有限公司 基于HoloLens空间映射的三维场景语义分析方法
US11943565B2 (en) * 2021-07-12 2024-03-26 Milestone Systems A/S Computer implemented method and apparatus for operating a video management system
CN114363557B (zh) * 2022-03-04 2022-06-24 西安电子科技大学 一种面向语义保真的虚拟会议方法及三维虚拟会议系统
CN115147520A (zh) * 2022-06-07 2022-10-04 聚好看科技股份有限公司 基于视觉语义驱动虚拟人物的方法及设备

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7523411B2 (en) * 2000-08-22 2009-04-21 Bruce Carlin Network-linked interactive three-dimensional composition and display of saleable objects in situ in viewer-selected scenes for purposes of object promotion and procurement, and generation of object advertisements
CN101174332B (zh) * 2007-10-29 2010-11-03 张建中 一种将真实世界实时场景与虚拟现实场景结合交互的方法和装置以及系统
WO2010071531A1 (en) 2008-12-19 2010-06-24 Saab Ab System and method for mixing a scene with a virtual scenario
US8939840B2 (en) * 2009-07-29 2015-01-27 Disney Enterprises, Inc. System and method for playsets using tracked objects and corresponding virtual worlds
US9490003B2 (en) * 2011-03-31 2016-11-08 Intel Corporation Induced thermal gradients
US20120269494A1 (en) 2011-04-22 2012-10-25 Qualcomm Incorporated Augmented reality for live events
JP6040564B2 (ja) * 2012-05-08 2016-12-07 ソニー株式会社 画像処理装置、投影制御方法及びプログラム
US8878846B1 (en) * 2012-10-29 2014-11-04 Google Inc. Superimposing virtual views of 3D objects with live images
JP6281495B2 (ja) * 2013-02-01 2018-02-21 ソニー株式会社 情報処理装置、端末装置、情報処理方法及びプログラム
US20140267228A1 (en) 2013-03-14 2014-09-18 Microsoft Corporation Mapping augmented reality experience to various environments
US9639964B2 (en) 2013-03-15 2017-05-02 Elwha Llc Dynamically preserving scene elements in augmented reality systems
KR101543287B1 (ko) * 2013-04-23 2015-08-11 한국과학기술원 현실 객체의 물리적 동작-증강 현실 상호작용형 전자책 시스템 및 구현 방법
US10509533B2 (en) * 2013-05-14 2019-12-17 Qualcomm Incorporated Systems and methods of generating augmented reality (AR) objects
US9639987B2 (en) 2013-06-27 2017-05-02 Canon Information And Imaging Solutions, Inc. Devices, systems, and methods for generating proxy models for an enhanced scene
US9761053B2 (en) * 2013-08-21 2017-09-12 Nantmobile, Llc Chroma key content management systems and methods
US20160292923A1 (en) * 2013-10-03 2016-10-06 Sulon Technologies Inc. System and method for incorporating a physical image stream in a head mounted display
JP6332281B2 (ja) * 2013-12-17 2018-05-30 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
US9898844B2 (en) * 2013-12-31 2018-02-20 Daqri, Llc Augmented reality content adapted to changes in real world space geometry
US9460340B2 (en) 2014-01-31 2016-10-04 Google Inc. Self-initiated change of appearance for subjects in video and images
CN103810353A (zh) 2014-03-09 2014-05-21 杨智 一种虚拟现实中的现实场景映射系统和方法
US9240077B1 (en) * 2014-03-19 2016-01-19 A9.Com, Inc. Real-time visual effects for a live camera view
JP6572600B2 (ja) 2015-04-09 2019-09-11 セイコーエプソン株式会社 情報処理装置、情報処理装置の制御方法、および、コンピュータープログラム
EP3286718A4 (en) 2015-04-23 2018-12-05 Hasbro, Inc. Context-aware digital play
US11367257B2 (en) * 2016-05-26 2022-06-21 Sony Corporation Information processing apparatus, information processing method, and storage medium
US10380803B1 (en) * 2018-03-26 2019-08-13 Verizon Patent And Licensing Inc. Methods and systems for virtualizing a target object within a mixed reality presentation

Also Published As

Publication number Publication date
JP2020503611A (ja) 2020-01-30
KR102433857B1 (ko) 2022-08-19
CN117274542A (zh) 2023-12-22
US20190340825A1 (en) 2019-11-07
KR20220119180A (ko) 2022-08-26
JP2023171435A (ja) 2023-12-01
EP3559915A1 (en) 2019-10-30
KR20190100305A (ko) 2019-08-28
EP3340187A1 (en) 2018-06-27
US11580706B2 (en) 2023-02-14
US11113888B2 (en) 2021-09-07
US20210366197A1 (en) 2021-11-25
CN110168614B (zh) 2023-08-15
WO2018122030A1 (en) 2018-07-05
CN110168614A (zh) 2019-08-23
JP2022019748A (ja) 2022-01-27
JP7556839B2 (ja) 2024-09-26
KR102555214B1 (ko) 2023-07-13

Similar Documents

Publication Publication Date Title
JP6972135B2 (ja) 複合現実において動的仮想コンテンツを生成するデバイスおよび方法
US11570372B2 (en) Virtual camera for 3-d modeling applications
US20200409544A1 (en) Displaying a three dimensional user interface
US20220249949A1 (en) Method and apparatus for displaying virtual scene, device, and storage medium
KR101842106B1 (ko) 알려지지 않은 오브젝트들에 대한 증강 현실 콘텐츠의 생성
CN102622776B (zh) 三维环境重构
US20170213394A1 (en) Environmentally mapped virtualization mechanism
EP3343513A1 (en) Device and method for generating flexible dynamic virtual contents in mixed reality
JP2022548345A (ja) 宣言的グラフィックスサーバを使用して画像をレンダリングすること
US9940757B2 (en) Modifying a simulated character by direct manipulation
US11625900B2 (en) Broker for instancing
US10726621B2 (en) Traversal selection of components for a geometric model
US8890889B1 (en) System and method for generating a pose of an object
KR20160010780A (ko) 3d 이미지 제공 시스템 및 그 제공방법
KR20230078114A (ko) 가상 객체와 물리 객체 간의 상호작용 방법 및 장치
Cantor-Rivera et al. Designing Cameras for WebGL Applications

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201124

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210928

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20211006

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211102

R150 Certificate of patent or registration of utility model

Ref document number: 6972135

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150