JP2024503135A - 3d拡張シーンの構造フロアプランへの位置合わせ - Google Patents
3d拡張シーンの構造フロアプランへの位置合わせ Download PDFInfo
- Publication number
- JP2024503135A JP2024503135A JP2023543290A JP2023543290A JP2024503135A JP 2024503135 A JP2024503135 A JP 2024503135A JP 2023543290 A JP2023543290 A JP 2023543290A JP 2023543290 A JP2023543290 A JP 2023543290A JP 2024503135 A JP2024503135 A JP 2024503135A
- Authority
- JP
- Japan
- Prior art keywords
- model
- geometric
- planes
- rotation angle
- data set
- 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.)
- Pending
Links
- 230000003190 augmentative effect Effects 0.000 title claims abstract description 26
- 238000000034 method Methods 0.000 claims abstract description 65
- 238000013519 translation Methods 0.000 claims abstract description 49
- 239000013598 vector Substances 0.000 claims abstract description 47
- 230000000007 visual effect Effects 0.000 claims abstract description 36
- 238000003384 imaging method Methods 0.000 claims abstract description 30
- 238000004590 computer program Methods 0.000 claims description 12
- 230000004931 aggregating effect Effects 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000003068 static effect Effects 0.000 claims description 4
- 230000001105 regulatory effect Effects 0.000 claims 1
- 230000014616 translation Effects 0.000 description 34
- 238000010586 diagram Methods 0.000 description 19
- 230000008901 benefit Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 7
- 239000000203 mixture Substances 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 150000001875 compounds Chemical class 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 239000000835 fiber Substances 0.000 description 3
- 238000009472 formulation Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000004308 accommodation Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000021615 conjugation Effects 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 238000013481 data capture Methods 0.000 description 1
- 238000005034 decoration Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000011524 similarity measure Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/30—Determination of transform parameters for the alignment of images, i.e. image registration
- G06T7/33—Determination of transform parameters for the alignment of images, i.e. image registration using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2004—Aligning objects, relative positioning of parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2016—Rotation, translation, scaling
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Architecture (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Geometry (AREA)
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
Abstract
拡張現実(AR)シーンを特定領域の3Dモデルに位置合わせする方法及びシステムを開示する。ARセッション中に撮像センサーによってキャプチャされた視覚データに基づいて、特定の領域の幾何学的データセットを蓄積し、その特定領域の3Dモデルを取得し、複数の候補となる主回転角度で回転された3Dモデルと比較して、幾何学的データセットの類似度スコアを、幾何学的データセットと回転3Dモデルとにおいて識別された複数の対応する平面の平行度を基に計算し、最もスコアの高い主回転角度を選択し、選択した主回転角度に対して、対応する平面間の距離に基づいて、複数の微調回転角度のそれぞれの並進ベクトルを計算し、最小距離の微調回転角度を選択し、選択した微調回転角及びその並進ベクトルに従って、幾何学的データセットを3Dモデルに位置合わせする、ことを含む。
Description
本出願は、2021年7月6日に出願された米国特許出願第17/367,707号の優先権の利益を主張するものであり、これは2021年1月17日に出願された米国仮特許出願第63/138,473号の優先権を主張するものである。これらの内容は参照によりその全体が本明細書に組み込まれる。
本発明は、そのいくつかの実施形態において、三次元(3D)拡張現実シーンの位置合わせに関する。より具体的には、これに限るものではないが、3D拡張現実シーンをそのシーン位置のフロアプランに基づいて生成された構造モデルに位置合わせすることに関する。
実世界のシーンに、例えば視覚データ、音響データ、触覚データなどのデータを、付加、重ね合わせ、階層化、重畳などを行う拡張現実(AR)は近年急速に発展している。ARの技術、システム及びアプリケーションは急速に広がりつつあり、医療処置の訓練、実践用途から、取引、ショッピング、ゲーム、レジャーの用途、さらには産業/軍事訓練用途に至るまでの様々な、多様のニーズ、アプリケーション、市場などが対象となり得る。
その固有の利点により、AR技術は現実的、効率的で、したがって高度に訴求的なプラットフォームとなり得る。人間のユーザと対話して、現実、合成、及び/又はその組み合わせの付加的な視覚データを含み、また任意で聴覚、触覚及び/又は他の感覚シミュレーションを結合するように拡張した実世界のシーンをユーザに提供可能である。対話を使用して、複数の多様なシーン、シナリオ、イベント、状況、場合、条件などを現実的にシミュレート可能である。
本発明の目的は、特定の領域のARシーンを、その特定領域の1以上のフロアプランに基づいて作成された特定領域の1以上の3Dモデルに位置合わせするための、方法、システム及びソフトウェアプログラム製品を提供することである。前述の目的及びその他の目的は、独立請求項の特徴によって達成される。さらなる実装形態は、従属請求項、説明および図から明らかである。
本発明の第1の態様によれば、特定の領域の拡張現実(AR)シーンを、その特定領域の三次元(3D)モデルに位置合わせする方法が提供される。この方法は、
アクティブなARセッション中に1以上の撮像センサーによってキャプチャした視覚データに基づいて、特定の領域の幾何学的データセットを蓄積し、
その特定領域の3Dモデルを取得し、
3Dモデルを複数の主回転角度のそれぞれで回転させて幾何学的データセットと比較し、幾何学的データセットと回転した3Dモデルとにおいて特定される複数の対応する平面の平行度を示す類似度スコアを計算し、
最も高い類似度スコアをもたらす主回転角度を選択し、
選択された主回転角度に関して、対応する平面間の距離に基づいて、複数の微調回転角度のそれぞれの並進ベクトルを計算し、
対応する平面間の最小距離をもたらす微調回転角度を選択し、
選択した微調回転角度及びその各並進ベクトルに従って、幾何学的データセットを3Dモデルに位置合わせする、
ように構成された1以上のプロセッサを使用することを含む。
アクティブなARセッション中に1以上の撮像センサーによってキャプチャした視覚データに基づいて、特定の領域の幾何学的データセットを蓄積し、
その特定領域の3Dモデルを取得し、
3Dモデルを複数の主回転角度のそれぞれで回転させて幾何学的データセットと比較し、幾何学的データセットと回転した3Dモデルとにおいて特定される複数の対応する平面の平行度を示す類似度スコアを計算し、
最も高い類似度スコアをもたらす主回転角度を選択し、
選択された主回転角度に関して、対応する平面間の距離に基づいて、複数の微調回転角度のそれぞれの並進ベクトルを計算し、
対応する平面間の最小距離をもたらす微調回転角度を選択し、
選択した微調回転角度及びその各並進ベクトルに従って、幾何学的データセットを3Dモデルに位置合わせする、
ように構成された1以上のプロセッサを使用することを含む。
本発明の第2の態様によれば、特定の領域の拡張現実(AR)シーンを、その特定領域の三次元(3D)モデルに位置合わせするためのシステムが提供される。このシステムは、
アクティブなARセッション中に1以上の撮像センサによってキャプチャされた視覚データに基づいて、特定領域の幾何学的データセットを蓄積するためのコード命令と、
特定領域の3Dモデルを取得するためのコード命令と、
複数の主回転角度のそれぞれで回転された3Dモデルと比較して、幾何学的データセットの類似度スコアを計算するためのコード命令であって、この類似度スコアは幾何学的データセットと回転された3Dモデルとにおいて特定される複数の対応する平面の平行度を示すものであるコード命令と、
最も高い類似度スコアをもたらす主回転角度を選択するためのコード命令と、
選択された主回転角度に関して、対応する平面間の距離に基づいて複数の微調回転角度のそれぞれの並進ベクトルを計算するためのコード命令と、
対応する平面間の最小距離をもたらす微調回転角度を選択するためのコード命令と、
選択した微調回転角度及びその各並進ベクトルに従って、幾何学的データセットを3Dモデルに位置合わせするためのコード命令と、
を含むコードを実行するように構成された1以上のプロセッサを備える。
アクティブなARセッション中に1以上の撮像センサによってキャプチャされた視覚データに基づいて、特定領域の幾何学的データセットを蓄積するためのコード命令と、
特定領域の3Dモデルを取得するためのコード命令と、
複数の主回転角度のそれぞれで回転された3Dモデルと比較して、幾何学的データセットの類似度スコアを計算するためのコード命令であって、この類似度スコアは幾何学的データセットと回転された3Dモデルとにおいて特定される複数の対応する平面の平行度を示すものであるコード命令と、
最も高い類似度スコアをもたらす主回転角度を選択するためのコード命令と、
選択された主回転角度に関して、対応する平面間の距離に基づいて複数の微調回転角度のそれぞれの並進ベクトルを計算するためのコード命令と、
対応する平面間の最小距離をもたらす微調回転角度を選択するためのコード命令と、
選択した微調回転角度及びその各並進ベクトルに従って、幾何学的データセットを3Dモデルに位置合わせするためのコード命令と、
を含むコードを実行するように構成された1以上のプロセッサを備える。
本発明の第3の態様によれば、拡張現実(AR)セッションに適合するフロアプランを特定するためのコンピュータプログラム製品が提供される。これは、
アクティブなARセッション中に1以上の撮像センサによってキャプチャされた視覚データに基づいて、特定の領域の幾何学的データセットを蓄積する命令を1以上のプロセッサにコード化させる、1以上のプロセッサによって実行可能な第1のプログラム命令と、
1以上のプロセッサに特定領域の3Dモデルを取得させる、1以上のプロセッサによって実行可能な第2プログラム命令と、
複数の主回転角度のそれぞれで回転された3Dモデルと比較して、幾何学的データセットの類似度スコアを1以上のプロセッサに計算させる、1以上のプロセッサにより実行可能な第3のプログラム命令と、ここで、類似度スコアは幾何学的データセットと回転された3Dモデルとにおいて特定される複数の対応する平面の平行度を示すものである第3のプログラム命令と、
1以上のプロセッサに最も高い類似度スコアをもたらす主回転角度を選択させる、1以上のプロセッサによって実行可能な第4のプログラム命令と、
1以上のプロセッサに、選択された主回転角度に関して、対応する平面間の距離に基づいて、複数の微調回転角度のそれぞれの並進ベクトルを計算させる、1以上のプロセッサによって実行可能な第5のプログラム命令と、
1以上のプロセッサに対応する平面間の最小の距離をもたらす微調回転角度を選択させる、1以上のプロセッサによって実行可能な第6のプログラム命令と、
1以上のプロセッサに、選択した微調回転角度及びその各並進ベクトルに従って、幾何学的データセットを3Dモデルに位置合わせさせる、1以上のプロセッサによって実行可能な第7のプログラム命令と、
を有する1以上のコンピュータ可読記憶媒体を備える、コンピュータプログラム製品である。
アクティブなARセッション中に1以上の撮像センサによってキャプチャされた視覚データに基づいて、特定の領域の幾何学的データセットを蓄積する命令を1以上のプロセッサにコード化させる、1以上のプロセッサによって実行可能な第1のプログラム命令と、
1以上のプロセッサに特定領域の3Dモデルを取得させる、1以上のプロセッサによって実行可能な第2プログラム命令と、
複数の主回転角度のそれぞれで回転された3Dモデルと比較して、幾何学的データセットの類似度スコアを1以上のプロセッサに計算させる、1以上のプロセッサにより実行可能な第3のプログラム命令と、ここで、類似度スコアは幾何学的データセットと回転された3Dモデルとにおいて特定される複数の対応する平面の平行度を示すものである第3のプログラム命令と、
1以上のプロセッサに最も高い類似度スコアをもたらす主回転角度を選択させる、1以上のプロセッサによって実行可能な第4のプログラム命令と、
1以上のプロセッサに、選択された主回転角度に関して、対応する平面間の距離に基づいて、複数の微調回転角度のそれぞれの並進ベクトルを計算させる、1以上のプロセッサによって実行可能な第5のプログラム命令と、
1以上のプロセッサに対応する平面間の最小の距離をもたらす微調回転角度を選択させる、1以上のプロセッサによって実行可能な第6のプログラム命令と、
1以上のプロセッサに、選択した微調回転角度及びその各並進ベクトルに従って、幾何学的データセットを3Dモデルに位置合わせさせる、1以上のプロセッサによって実行可能な第7のプログラム命令と、
を有する1以上のコンピュータ可読記憶媒体を備える、コンピュータプログラム製品である。
第1、第2及び/又は第3の任意の実装形態において、上記の最小距離がある閾値を超える場合には、選択された回転角度と並進ベクトルによる位置合わせは行わない。
第1、第2及び/又は第3の態様の更なる実装形態において、幾何学的データセットと各回転される3Dモデルは、類似度スコアを計算する前に、先ず特定領域の正の垂直軸とゼロのフロア高さに整列される、
第1、第2及び/又は第3の態様の更なる実装形態において、各微調回転角度に関する並進ベクトルの計算は、
幾何学的データセット及びそれぞれの微調回転角度に従って回転する3Dモデルにスライド窓を適用して、スライド窓が幾何学的データセット及び3Dモデルを覆う、複数の窓位置をとるようにすることと、
複数の窓位置のそれぞれにおいて、幾何学的データセットの窓と3Dモデルの窓で識別される各平面の間の距離を計算することと、
複数の窓位置において識別される、複数の対応する平面に対して計算される複数の距離の値を集計することによって、それぞれの微調回転角度の並進ベクトルを計算することと、
を含む。
幾何学的データセット及びそれぞれの微調回転角度に従って回転する3Dモデルにスライド窓を適用して、スライド窓が幾何学的データセット及び3Dモデルを覆う、複数の窓位置をとるようにすることと、
複数の窓位置のそれぞれにおいて、幾何学的データセットの窓と3Dモデルの窓で識別される各平面の間の距離を計算することと、
複数の窓位置において識別される、複数の対応する平面に対して計算される複数の距離の値を集計することによって、それぞれの微調回転角度の並進ベクトルを計算することと、
を含む。
第1、第2及び/又は第3の態様の更なる実装形態において、並進ベクトルを計算するための複数の距離の値を集計することは、複数の距離の値の平均値を計算することを含む。
第1、第2及び/又は第3の態様の更なる実装形態において、3Dモデルは、特定の領域に関して、特定領域の少なくとも1つのフロアプランに基づいて生成される。
第1、第2及び/又は第3の態様の更なる実装形態において、複数の平面のそれぞれは、壁、床、天井、扉及び窓から成る群のメンバである。
第1、第2及び/又は第3の態様の更なる実装形態において、複数の回転角度は、3Dモデルの原点に整列する第1の角度、第1の角度+π/2、第1の角度+π、第1の角度+π*3/2から成る群のメンバである。
第1、第2及び/又は第3の態様の更なる実装形態において、幾何学的データセットと各微調回転角に従って回転される3Dモデルとにおいて識別される対応する平面間の距離は、それぞれの平面の法線のドット積である。
第1、第2及び/又は第3の態様の更なる実装形態において、幾何学的データセットは、幾何学的データセット内に特定される3Dモデル内の少なくとも1つの参照平面に基づいて、3Dモデルに位置合わせされる。
第1、第2及び/又は第3の態様の更なる実装形態において、特定の領域に関係する可能性のある複数の3Dモデルに関して幾何学的データセットの並進ベクトルが計算され、
それぞれのフロアプランに基づいて生成される複数の3Dモデルのそれぞれにおいて、対応する平面間の距離が最小となる、複数の3Dモデルのうちの1つを選択する。
それぞれのフロアプランに基づいて生成される複数の3Dモデルのそれぞれにおいて、対応する平面間の距離が最小となる、複数の3Dモデルのうちの1つを選択する。
第1、第2及び/又は第3の態様の更なる実装形態において、少なくとも1つの撮像センサの視点及び/又は場所の変化による潜在的なドリフトを克服するために、選択した微調回転角とそのそれぞれの並進ベクトルを調節することにより幾何学的データセットの3Dモデルへの位置合わせが追跡される。
第1、第2及び/又は第3の態様の更なる実装形態において、位置合わせは、幾何学的データセットにおいて識別される複数の平面と、3Dモデルで識別される対応する複数の平面との間で計算される距離値に基づく並進ベクトルを計算することにより調節される。ここで複数の平面のそれぞれにはそれぞれの重みが割り当てられる。
第1、第2及び/又は第3の態様の更なる実装形態において、複数の平面のそれぞれに対して割り当てられる重みは、以下の1以上に基づいて計算される。
1以上の撮像センサからのそれぞれの平面の距離。より近い平面ほどより大きな重みが、またより遠い平面遠いほどより小さい重みが割り当てられる。
それぞれの平面が識別された最も直近の時間。より直近に検出された平面はより大きい重みが割り当てられ、より以前に検出された平面はより小さい重みが割り当てられる。
幾何学的データセットから求められるそれぞれの平面の位置及び/又は向き。
1以上の撮像センサからのそれぞれの平面の距離。より近い平面ほどより大きな重みが、またより遠い平面遠いほどより小さい重みが割り当てられる。
それぞれの平面が識別された最も直近の時間。より直近に検出された平面はより大きい重みが割り当てられ、より以前に検出された平面はより小さい重みが割り当てられる。
幾何学的データセットから求められるそれぞれの平面の位置及び/又は向き。
第1、第2及び/又は第3の態様の更なる実装形態において、位置合わせは、
幾何学的データセットにおいて最近更新された各平面、及び3Dモデルにおけるそれに対応する平面を列挙し、
3Dモデルでの対応する平面の静的位置に基づいて幾何学的データセットのそれぞれの平面の位置を計算する、
ことにより調節される。
幾何学的データセットにおいて最近更新された各平面、及び3Dモデルにおけるそれに対応する平面を列挙し、
3Dモデルでの対応する平面の静的位置に基づいて幾何学的データセットのそれぞれの平面の位置を計算する、
ことにより調節される。
第1、第2及び/又は第3の態様の更なる実装形態において、特定領域の3Dモデルは、幾何学的データセットから抽出される複数の平面の1以上に関する1以上の幾何学的特徴に基づいてを更新される。
第1、第2及び/又は第3の態様の更なる実装形態において、現実的3Dモデルが、3Dモデルに視覚データの少なくとも一部を重畳することによりを生成される。
第1、第2及び/又は第3の態様の更なる実装形態において、特定領域の3Dモデルは、その特定領域における1以上の過去のARセッションにおいて蓄積された1以上の以前の幾何学的データセットに基づいて生成される。1以上の以前の幾何学的データセットは1以上の過去のARセッション中に1以上のARデバイスでキャプチャされた視覚データに基づいて生成される。
本開示のこの他のシステム、方法、特徴及び利点は、以下の図面及び詳細な説明を精査することで当業者には明らかであるか、明らかとなるであろう。そのような追加的なシステム、方法、特徴及び利点のすべては、本説明内に含まれ、本開示の範囲内であり、添付の特許請求の範囲によって保護されるべきものである。
別段の定義がない限り、本明細書で使用するすべての技術用語及び科学用語は、本発明が属する技術分野の当業者により一般に理解されるものと同じ意味を有する。本明細書に記載のものと類似又は同等の方法及び材料が本発明の実施形態の実行又は試行に使用可能であるが、例示的な方法及び/又は材料を以下に記述する。矛盾する場合には、定義を含めて本発明の明細書が優先される。さらに、材料、方法及び実施例は例示に過ぎず、必ずしも制限的であることを意図するものではない。
本発明の実施形態の方法及び/又はシステムの実施は、選択されたタスクを自動的に実行又は完了させることを含み得る。さらに、本発明の方法及び/又はシステムの実施形態の実際の計装機器及び設備によれば、いくつかの選択されたタスクは、ハードウェアによって、あるいはオペレーティングシステムを用いたソフトウェア又はファームウェア及び/又はそれらの組合せによって実施可能である。
例えば、本発明の実施形態による、選択されたタスクを実行するためのハードウェアは、チップ又は回路として実装可能である。ソフトウェアに関しては、本発明の実施形態による選択されたタスクは、任意の適切なオペレーティングシステムを用いるコンピュータによって実行される複数のソフトウェア命令として実装可能である。本発明の例示的実施形態では、本明細書に記載の方法及び/又はシステムの例示的実施形態による1以上のタスクは、複数の命令を実行するコンピューティングプラットフォームなどのデータプロセッサにより実行される。任意選択により、データプロセッサには、命令及び/又はデータを格納する揮発性メモリ、及び/又は命令及び/又はデータを格納する不揮発性記憶装置、例えば磁気ハードディスク及び/又はリムーバブル媒体、が含まれる。任意選択により、ネットワーク接続も提供される。ディスプレイ及び/又はキーボードやマウスなどのユーザ入力装置もまた任意選択で提供される。
本発明のいくつかの実施形態は、添付図面を参照して例示としてのみ本明細書に記載する。ここで、図面を詳細に具体的に参照すると、示される詳細事項は一例であって、本発明の実施形態の例示的議論を目的とするものであることが強調される。これに関し、図面と共に行われる説明により、本発明の実施形態がどのように実行され得るかが当業者には明らかとなる。
本発明は、そのいくつかの実施形態において、3D拡張現実シーンを位置合わせすることに関する。より具体的には、これに限るものではないが、3D拡張現実シーンをそのシーン位置のフロアプランに基づいて生成されたシーンの構造モデルに位置合わせすることに関する。
本発明のいくつかの実施形態によれば、アクティブなARセッション中に、特定領域の幾何学的データセットを、その特定領域の3D構造モデルに位置合わせすることにより、特定領域の3D拡張現実(AR)シーンをその特定領域の3D構造モデルに位置合わせするための方法、システム及びコンピュータプログラム製品が提供される。ここで、幾何学的データセットはARセッション中にキャプチャされた視覚データを基に生成され、かつ徐々に蓄積される。
拡張現実(AR)デバイス、例えば、立体視ゴーグル、3Dヘルメットマウントディスプレイ(HMD)、スマートフォン、タブレット、ラップトップ及び/又はユーザが携帯する類似のものなどは、特定のエリア、例えば、部屋、アパート、住宅、ビル、オフィス、店舗、モール、及び実質的にあらゆる屋内及び/又は屋外の建築構造物でのARセッション中に使用され、その特定領域の視覚シーンに基づいてARシーンを生成することが可能である。
具体的には、例えば物体、シンボル、アイコン、テキスト等の1以上の仮想要素が、ARデバイスを介してユーザに提示(表示)されて、例えばARデバイスに組み込み、搭載、取り付け及び/又はその他の形で結合されたカメラ、ビデオカメラ、パノラマ撮像センサ、360撮像センサアレイ等でキャプチャされた実世界シーンを拡張することが可能である。
ただし、信頼性及び/又は一貫性のあるARセッションを生成するために、付加される仮想要素は、特定領域の実世界シーンに正確に配置及び位置づけられるべきであり、それには、ARシーンを実世界シーンに正確に位置合わせすることを必要とする。
このために、ARデバイスを携帯するユーザが特定領域を移動する間に、撮像センサによってキャプチャされる視覚データに基づいて、特定領域の幾何学的データセットが生成及び蓄積されて、視覚データが特定領域及び/又はその一部を、特定領域内の複数の位置、1以上の視点、1以上の画角などから描写できるようにすることが可能である。幾何学的データセットには、特定領域において識別される1以上の要素及び/又は物体、特に特定領域内に識別される1以上の構造要素、例えば、壁、床、天井、扉、窓等の、幾何学的表示(位置、配置、向き、寸法、など)が含まれ得る。幾何学的データセットはさらに、特定位置に適用される座標系、例えばデカルト座標系などに関して、平面のそれぞれを配置、位置決め、及び/又は配列することができる。
幾何学的データセットは、次に、特定の領域に対して使用可能であってその特定領域の幾何学的特徴を含む参照幾何学的データセットを表す、3D構造モデルに位置合わせすることができる。これは、当技術分野で知られている1以上のフォーマット、例えばSparXフォーマットなどで利用可能である。3Dモデルは、その特定領域の1以上のフロアプラン、例えば図面、設計図、概略図、などを基に作成することができる。具体的に、フロアプランには特定領域の1以上の視点からの縮尺図が含まれ得る。さらに、別々のフロアプランに基づいてそれぞれ作成された、特定領域に潜在的に関係し得る複数の3Dモデルが、特定の領域に蓄積された幾何学的データセットをそれらの1つに位置合わせするために取得される場合もある。ただし、簡単のために、これ以後は単一の3Dモデルについて議論する。
具体的には、アクティブなARセッション中に特定領域に蓄積される幾何学的データセットは2ステップ(段階)で3Dモデルに登録可能である。第1に、幾何学データセットが3Dモデルに最もよく一致する主回転角度が特定される。第2段階で、選択された主回転角度を補う、幾何学データセットが3Dモデルに最もよく一致する微調回転角度を特定し、それに応じてARシーンを3Dモデルへ位置合わせするように選択することができる。
第1段階では、幾何学データセットを複数の(候補の)主回転角度のそれぞれで回転させている間に3Dモデルと比較することが可能である。これは例えば、3Dモデルの原点に整列する第1の角度、第1の角度+π/2、第1の角度+π、第1の角度+π*3/2である。具体的には、幾何学データと各主回転角度で回転させた3Dモデルを整列させて、共通の座標系と原点を共有した後に、各回転させた3Dモデルに対する幾何学的データセットの類似度スコアが計算される。幾何学的データセットと回転させた3Dモデルとにある対応する平面間の距離に基づいて計算される類似度スコアは、幾何学的データセットにおいて識別される複数の平面と、回転する3Dモデルにおいて識別される対応の平面との平行度を示唆する。
最も高い類似度スコアをもたらす主回転角度が、3Dモデルの回転の微調を行なう、位置合わせの第2段階の開始点として選択可能である。この段階において、幾何学的データセットが、選択された主回転角度に対して複数の(候補の)微調回転角度のそれぞれで回転される3Dモデルと比較され得る。すなわち、微調回転角度は、選択された主回転角度を起点としてシフト及び/又は漸増される。
並進ベクトルを、複数の微調回転角度のそれぞれに関して計算することが可能であり、並進、回転、拡大縮小などを表す変換行列に基づくことができる並進ベクトルは、幾何学的データセットで識別される平面のそれぞれを、微調回転3Dモデルにおけるそれぞれの平面に写像することができる。
並進ベクトルは、幾何学的データセットと各微調回転角度で回転された3Dモデルを通して表(テーブル)検索に基づいて計算でき、幾何学データセットと各回転3Dモデル内に識別された対応する平面を最良適合させることが可能である。テーブル検索は、例えば、幾何学的データセットと回転3Dモデルの限られた、典型的には小部分のみをカバーするスライド窓を使用して、幾何学的データセットと回転3Dモデルに適用するグリッドに基づいてもよい。スライド窓は幾何学的データセットと回転3Dモデルの上を移動して、スライド窓が幾何学的データセットと回転3Dモデルをカバーする複数の窓位置に配置されるようにすることができる。各窓位置において、幾何学的データセットにおいて識別される各平面と回転3Dモデルにおける対応する平面との間の距離が計算可能である。複数の窓位置において計算された距離の値は、次に集計されて、例えば、それぞれの微調回転角度の並進ベクトルを計算するために、平均化(平均値)することができる。
さらに、各微調回転角度に関して、集計された距離の値が幾何学的データセットに識別された平面と微調回転3Dモデル内の対応する平面との間で計算され、最小距離をもたらす微調回転角度が選択可能である。
3Dモデルに対する幾何学的データセットが次に、選択された微調回転角度に対して計算された並進ベクトルを使用して、選択された微調回転角度に従って回転された3Dモデルに位置合わせされ得る。
任意選択により、位置合わせが不十分な場合、例えば複数の微調回転角度の間で最小の集計距離値が特定の閾値を超える場合、位置合わせは失敗する。
幾何学的データセットが特定領域の3Dモデルにうまく位置合わせされた後、この3DモデルはARセッション中に複数のアプリケーションの1以上に使用可能である。例えば、3Dモデルで表現される地理的領域の1以上の構造要素の、位置、配置、方向、1以上の寸法などは、ARセッション中に使用されて、特定領域の実世界のシーンを拡張するARシーンにおける1以上の視覚物体、要素、シンボル、アイコン、テキストなどを提示(表示)するために使用可能である。例えばARセッションは、1以上の物体、例えば家具、(例えばテーブル、いす、ソファ、カーペットなど)、家電製品(例えば台所用品、テレビなど)が特定場所のARシーンで、特に、その特定場所が現実には空の時に、シミュレートされる、インテリアデザインのアプリケーション向けであってもよい。別の例では、ARセッションは、ゲームアプリケーション向けであってもよい。そこでは、1以上のゲーム用のオブジェクト、要素、シンボル、アイコン、テキストなどがARシーンに存在し得る。
本発明のいくつかの実施形態によれば、特定領域においてARセッション中に蓄積される幾何学的データセットと3Dモデルの間の位置合わせは、追跡及び動的な調整が行われて高信頼度の位置合わせを維持し、特定領域内の撮像センサの視点及び/又は位置の変化から生じ得る、幾何学的データセットと3Dモデルの間の潜在的なドリフトを克服することが可能である。
動的な位置合わせ調整は、幾何学的データセット内に識別された平面に割り当てられた重みに基づいて、幾何学的データセットを3Dモデルに写像する並進ベクトルを、再計算及び/又は調節することに基づく。そうして、位置合わせに正の寄与をすると評価される平面(例えばより近い平面、より直近に検出された平面など)に、より高い重みを割り当て、位置合わせに小さい及び/又は負の寄与をすると評価される平面(例えばより遠い平面、より以前に検出された平面など)に、より低い重みを割り当てることが可能である。
任意選択により、特定領域の3Dモデルは、ARセッション中にその特定領域に蓄積された幾何学的データセットから抽出されるデータセットによって、調整、更新及び/又は修正することが可能である。さらには、ARセッション中にARデバイスの撮像センサにより特定領域内にキャプチャされる1以上の画像を使用して、その特定領域の3Dモデルを充実させること、例えば、3Dモデルに画像を上乗せして、その特定領域の視覚的、実際的な3Dモデルを生成することが可能である。
本発明のいくつかの実施形態によれば、特定領域の3Dモデルは、1以上の過去のARセッションにおいてその特定領域に蓄積された1以上の幾何学的データセットに基づいて生成することも可能である。このことは、3Dモデルを特定領域のフロアプランに基づいて生成するというより、1以上のARセッションにおいて1以上のARデバイスにより生成及び蓄積された1以上の幾何学的データセットから抽出される実世界データに基づいて生成し、特定領域の1以上の未来のARセッション中にキャプチャされる幾何学的データセットの位置合わせに使用することが可能なことを意味する。
特定領域のシーンを拡張するARシーンを、特定領域の3Dモデルに2段階の位置合わせ方法を使用して位置合わせすることは、既存のARシーンの位置合わせ方法及びシステムに比べて大きな利益及び利点を提示する可能性がある。
第1に、AR技術がより一般的になり広く使用されるようになるに連れ、特に、正確な工学及び建築のデータベースやモデルに文書化されたような実際の物理的領域及び位置にARシーンを位置合わせした後に、複数のアプリケーションがARの利点と能力を利用することが可能である。そうして、仮想的なシンボル、オブジェクト、要素、テキスト及び/又はそれに類似するものを、正確に付加して実世界シーンを拡張し、実世界領域の構造要素の正確な配置、位置、向き及び/又は寸法を表す、実世界の建築モデル上に、高度に正確、高信頼、及び/又は一貫性のあるARシーンベースを生成することが可能となる。
正確さが向上したARシーンはこうして、新しいAR機能性、向上した信頼性、その他を、可能とし、サポートし、導入することができる。これらはユーザ体験を顕著に向上させることができる。例えば、住宅設計アプリケーション、宿泊施設提供アプリケーション等において、例えば、アパート、住宅、オフィス、店舗等の1以上の領域におけるARセッション中に、家具、家電品、装飾等がまだないときに、それらのシミュレーション及び可視化を可能とすることができる。
正確さが向上したARシーンはこうして、新しいAR機能性、向上した信頼性、その他を、可能とし、サポートし、導入することができる。これらはユーザ体験を顕著に向上させることができる。例えば、住宅設計アプリケーション、宿泊施設提供アプリケーション等において、例えば、アパート、住宅、オフィス、店舗等の1以上の領域におけるARセッション中に、家具、家電品、装飾等がまだないときに、それらのシミュレーション及び可視化を可能とすることができる。
さらに、最初に主回転角度を4つだけの候補から選択する2段階の位置合わせ提供手法では、本質的に複数の自由度を有する多次元問題である位置合わせ問題を、それぞれが2自由度しか持たない4つの場合に絞り込んで、問題の複雑さを大幅に低減可能である。位置合わせ問題の次元を低減することは、計算リソース、例えば処理リソース、記憶リソース、処理時間等を大幅に低減可能である。所要の計算リソースを低減することで、計算リソースが限られるローエンドのARデバイスを使用して、それぞれの3Dモデルに対して正確、高信頼の位置合わせが行われる高品質のARセッションの生成、維持を可能とし得る。さらに、位置合わせ時間を低減することで、リアルタイムで正確に位置合わせされるARセッションを可能とし、これがさらに、ARセッション中のユーザのユーザ体験の改善を可能とする。
さらに、ARシーンを追跡し、それに従って3DモデルへのARシーンの位置合わせを動的に調節することで、ARデバイスの移動によって生じ得るドリフト効果を解決可能である。それにより、ARシーンに付加される追加的な視覚データの精度を維持可能であり、その結果ユーザ体験をさらに改善できる。
それに加えて、例えば、(ユーザが携帯する)ARデバイスが場所及び/又は視点を変える間に、ARアプリケーションが閉じられたり中断されるなどの1以上の理由によってARセッションがしばしば中断される可能性がある。そのため、追跡及び位置合わせが中断されて失われ、撮像センサがブロックされて、視覚データのキャプチャリング、シーン又はシーンの一部の鏡での反射などが停止されることがある。2段階の位置合わせの適用により、そのようなAR中断のシナリオにおいても、簡単、迅速、かつロバストなARセッションの回復が可能となり得る。
また、途中で幾何学的データセットから抽出された幾何学的データ及び/又は特徴に従って、特定領域の3Dモデルを更新することにより、3Dモデルの精度、信頼性、及び/又は完全性を大幅に向上可能であり、これにより、その後の特定領域のARセッション中における位置合わせプロセス及び/又はユーザ体験が改善され得る。さらに、ARセッション中にキャプチャした画像を使用して特定領域の視覚的、写実的な3Dモデルを生成することで、3Dモデルの外観をより写実的なものとすることが可能であり、これにより、その特定領域のその後のARセッション中での位置合わせプロセス及び/又はユーザ体験をさらに向上可能である。
それ以前のARセッションの間にキャプチャされた視覚データに基づいて、特にそれ以前のARセッション中に蓄積された幾何学的データセットに基づいて特定領域の3Dモデルを生成することは、後続のARセッション中に、その特定領域のフロアプランを必要とせずにARシーンの正確な位置合わせを可能とし得る。このことは、特定領域のフロアプラン(見取り図)が入手できないアプリケーションにとっては大きな利点となるであろう。
例えば、複数の領域、例えばアパート、住宅、オフィスなどへのARセッション及び/又は仮想ツアーを支援するように構成された、1以上の宿泊施設提供アプリケーション(Airbnb、ブッキングなど)は、これらの領域のフロアプランへのアクセスを持たない場合がある。ただし、過去に蓄積された幾何学的データセットに基づいて生成された3Dモデルを使用することで、ARシーンをそれぞれの3Dモデルに正確に位置合わせすることが可能となり、これらの領域の実際のフロアプランを必要とせずにユーザ体験を向上させることが可能である。
例えば、複数の領域、例えばアパート、住宅、オフィスなどへのARセッション及び/又は仮想ツアーを支援するように構成された、1以上の宿泊施設提供アプリケーション(Airbnb、ブッキングなど)は、これらの領域のフロアプランへのアクセスを持たない場合がある。ただし、過去に蓄積された幾何学的データセットに基づいて生成された3Dモデルを使用することで、ARシーンをそれぞれの3Dモデルに正確に位置合わせすることが可能となり、これらの領域の実際のフロアプランを必要とせずにユーザ体験を向上させることが可能である。
本発明の少なくとも1つの実施形態を詳細に説明する前に、本発明はその適用において、以下の記述で説明され、及び/又は図面や実施例で示される、構成要素の構造及び配置、及び/又は方法の詳細に必ずしも限定されるものではないことを理解されたい。本発明は、他の実施形態が可能であり、また様々な方法で実行又は実施することが可能である。
当業者には理解されるように、本発明の態様は、システム、方法又はコンピュータプログラム製品として具体化され得る。したがって、本発明の態様は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)、又はソフトウェアとハードウェアを結合した実施形態の形をとり得る。これらはすべて、本明細書においては「回路」、「モジュール」又は「システム」と総称され得る。さらには、本発明の態様は、具体化されたコンピュータ可読プログラムコードを有する1以上のコンピュータ可読媒体内に具体化されたコンピュータプログラム製品の形態をとり得る。
1以上のコンピュータ可読媒体の任意の組み合わせが利用され得る。 コンピュータ可読記憶媒体は、命令実行デバイスによって使用される命令を保持、格納可能な有形デバイスであってよい。コンピュータ可読記憶媒体は、これに限らないが例えば、電子記憶装置、磁気記憶装置、光記憶装置、電磁記憶装置、半導体記憶装置、又はそれらの任意の適切な組合せであってよい。コンピュータ可読記憶媒体のより具体的な例の非網羅的リストとしては、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能なプログラマブル読み出し専用メモリ(EPROMまたはフラッシュメモリ)、静的ランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスク読み出し専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピー(登録商標)ディスク、パンチカードや命令を記録した溝内の隆起構造などの機械的に符号化された装置、及びそれらの任意の適切な組み合わせが含まれる。本明細書で使用するコンピュータ可読記憶媒体は、電波やその他の自由伝播する電磁波、導波路又は他の伝送媒体を通って伝播する電磁波(例えば光ファイバケーブルを通過する光パルス)、又はワイヤを通って伝送される電気信号、などのそれ自体が一過性の信号であるとみなすべきではない。
コンピュータ可読媒体上に具体化されたコンピュータ可読プログラム命令を含むコンピュータプログラムコードは、任意の適切な媒体を用いて送信され得る。その媒体には、これに限らないが、無線、有線、光ファイバケーブル、RFなど、あるいはそれらの任意の適切な組み合わせが含まれる。
本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から個別の計算/処理装置へ、あるいは、例えばインターネット、ローカルエリアネットワーク、ワイドエリアネットワーク、及び/又は無線ネットワークなどのネットワークを介して外部コンピュータ又は外部記憶装置へダウンロードすることができる。ネットワークは、銅線伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイコンピュータ、及び/又はエッジサーバで構成され得る。各計算/処理装置内のネットワークアダプタカードまたはネットワークインターフェースは、ネットワークからコンピュータ可読プログラム命令を受信し、それぞれの計算/処理装置内のコンピュータ可読記憶媒体に格納するためにコンピュータ可読プログラム命令を転送する。
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データなどの1以上のプログラミング言語の任意の組み合わせで書かれてもよいし、又はSmalltalk、C++などのオブジェクト指向プログラミング言語、および「C」プログラミング言語または同様のプログラミング言語などの従来の手続き型プログラミング言語、などの1以上のプログラミング言語の任意の組み合わせで記述された、ソースコードまたはオブジェクトコードであってもよい。
コンピュータ可読プログラム命令は、全体をユーザのコンピュータ上で、一部をスタンドアロンソフトウェアパッケージとしてユーザのコンピュータ上で、一部はユーザのコンピュータ上でかつ一部はリモートコンピュータ上で、あるいは全体をリモートコンピュータもしくはサーバ上で実行されてよい。後者の場合には、リモートコンピュータは、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを介してユーザーのコンピュータに接続されてもよいし、(たとえば、インターネットサービスプロバイダーを利用したインターネット経由で)外部コンピュータに接続されてもよい。いくつかの実施形態では、例えば、プログラマブルロジック回路、フィールドプログラマブルゲートアレイ(FPGA)、またはプログラマブルロジックアレイ(PLA)を含む電子回路は、本発明の態様を実行するために、コンピュータ可読プログラム命令の状態情報を利用して電子回路をパーソナライズすることにより、コンピュータ可読プログラム命令を実行することができる。
本発明の態様を、本発明の実施形態による方法、装置(システム)及びコンピュータプログラム製品の、フロー図表示及び/又はブロック図を参照して本明細書に記載する。フロー図表示及び/又はブロック図の各ブロック、及びフロー図表示及び/又はブロック図のブロックの組合せは、コンピュータ可読プログラム命令によって実装可能であることが理解されよう。
図中のフロー図及びブロック図は、本発明の様々な実施形態による、システム、方法及びコンピュータプログラム製品の可能な実装形態の、構成、機能及び動作を示す。これに関し、フロー図及びブロック図の各ブロックは、命令のモジュール、セグメント又は部分を表すことができ、これは特定の論理機能を実装するための1以上の実行可能命令を含む。いくつかの代替実装形態においては、ブロックで表される機能は、その図に示す順序とは異なっていてもよい。例えば、連続して示される2つのブロックは、含まれる機能によって、実際には実質的に同時に実行されてもよいし、あるいは逆の順序で実行される場合があってもよい。ブロック図及び/又はフロー図表示の各ブロック、及びブロック図及び/又はフロー図表示の複数のブロックの組合せは、特定の機能又は動作を実行し、あるいは専用ハードウェアとコンピュータ命令の組み合わせを実行する、専用ハードウェアベースのシステムで実装することができることにも留意されたい。
ここで図を参照すると、図1は、本発明のいくつかの実施形態による、特定領域の3D拡張現実シーンを特定領域の構造モデルに位置合わせする例示的プロセスのフロー図である。
プロセス100は、ARセッション中にキャプチャされた視覚データに基づいて徐々に蓄積、生成された特定領域の幾何学的データセットを構造モデルに位置合わせすることにより、ARセッション中に特定領域の3D拡張現実(AR)シーンを特定領域の構造モデルへ位置合わせするために実行することができる。
具体的には、本質的に複数自由度を有する多次元問題である位置合わせを、それぞれが2自由度しか持たない4つのケースに絞ることが可能であり、こうして問題の複雑さを大幅に低減可能である。
ARシーンの3D構造モデルへの位置合わせ問題の次元削減により、高精度、一貫性及び信頼性のある位置合わせを維持しながら計算リソース及び/又は位置合わせ時間を大幅に低減可能である。
図2も参照すると、これは本発明のいくつかの実施形態による、ある領域の3D拡張現実シーンをその特定領域の構造モデルに位置合わせする例示的システムの模式図である。
ARクライアントデバイス202、具体的にはモバイルARデバイスがARセッション中にユーザ204により使用されて、実質的に任意の場所が含まれ得るが典型的には室内の場所に関係する、ある領域206のシーンに重ねて拡張現実環境を生成することが可能である。この特定領域206には、例えば部屋、アパート、住宅、ビル、オフィス、店舗、モール、及び実質的に任意の屋内及び/又は屋外建築物が含まれ得る。
ARデバイス202は、例えば、立体視ゴーグル、3D HMD、スマートフォン、タブレット、ラップトップなどであって、ネットワークインターフェース212、プロセッサ214、ストレージ216、ユーザインターフェース218、および1以上の撮像センサ220を含むことができる。
ネットワークインタフェース212には、例えば、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、メトロポリタンエリアネットワーク(MAN)、無線LAN(WLAN)、セルラーネットワーク及び/又はインターネットから構成されるネットワーク208に接続するための1以上の有線および/または無線インターフェースを含むことができ、1以上のリモートネットワークリソース210、例えば、サーバ、ストレージサーバ、データベース、クラウドサービス及び/又はプラットフォームなどとの通信を容易にする。
プロセッサ214は、同種又は異種のものであり、クラスタとして、及び/又は1以上のマルチコアプロセッサとして、並列処理用に配列された1以上のプロセッサを含むことができる。ストレージ216には、1以上の非一時的な永続的記憶装置、例えば読み出し専用メモリ(ROM)、フラッシュアレイ、ソリッドステートドライブ(SSD)、ハードディスク(HDD)などが含まれる。ストレージ216には、1以上の揮発性デバイス、例えばランダムアクセスメモリ(RAM)コンポーネント、キャッシュなども含むことができる。
ユーザインタフェース218には、ユーザ204と対話するためのヒューマンマシンインタフェース(HMI)を含むことができる。具体的には、ユーザインタフェース218には、ARシーンをユーザ204に提示するための、ディスプレイ、スクリーン、プロジェクタ、タッチスクリーン等を含むことができる。ただしユーザインタフェース218は、典型的には、ユーザ204と更なる対話、入力及び/又は出力のための1以上の追加のHMI、例えばキーボード、タッチパッド、ポインティングデバイス、デジタルペン、スピーカ、イヤホン、マイクロホン等をさらに含むことができる。
撮像センサ220は、例えばカメラ、ビデオカメラ、パノラマ撮像センサ、360撮像センサアレイ等であり、特定領域206の視覚データ、例えば1以上の画像、特に画像シーケンス、ビデオストリーム等をキャプチャするように構成されており、ARデバイス202、具体的にはプロセッサ214に対して通信可能に結合することができる。
撮像センサ220は、例えば一体型、搭載型、取り付け型等の、1以上の方法、実装及び/又は配置を用いて、ARデバイス202に機械的に結合可能である。したがって撮像センサ220は、撮像センサの220の配置に応じてARデバイス202内部及び/又は外部にある1以上の通信チャネル、インタフェース及び/又はネットワークを介して、プロセッサ214と通信することが可能である。
プロセッサ214は、それぞれがストレージ216などの非一時的媒体(プログラムストア)に格納され、プロセッサ214などの1以上のプロセッサによって実行される、複数のプログラム命令を含む、例えばプロセス、スクリプト、アプリケーション、エージェント、ユーティリティ、ツール、オペレーティングシステム(OS)等の1以上のソフトウェアモジュールを実行可能である。プロセッサ214は、任意選択で、ARデバイス202に統合され、利用され、および/または他の方法で利用可能な1つまたは複数のハードウェア要素(モジュール)、例えば、回路、部品、集積回路(IC)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、グラフィカル処理ユニット(GPU)等を統合、利用、及び/又は促進することができる。
プロセッサ214はしたがって、1以上のソフトウェアモジュール、1以上のハードウェアモジュール及び/又はそれらの組み合わせを用いて実装された1以上の機能モジュール、例えばプロセス100を実行する位置合わせエンジン222を実行可能である。
ステップ102に示すように、プロセス100は位置合わせエンジン222が、アクティブなARセッション中にARデバイス202の1以上の撮像センサ220によってキャプチャされた特定領域206の視覚データを受信することから開始可能である。
ARデバイス202を使用、装着及び/又はその他の形で携帯するユーザ204は、撮像センサ220で、例えば連続的、周期的、及び/又はオンコマンドの1以上のキャプチャモードで特定領域206の視覚データをキャプチャしながら領域206内を移動することが可能である。
位置合わせエンジン222はしたがって、ユーザ204がARデバイス202を携帯して特定領域を移動する間にキャプチャされた視覚データを収集及び蓄積可能であり、視覚データが特定領域及び/又はその一部を特定領域206内の複数の場所から、複数の視点、視角等から描写できるようにする。
ステップ104に示すように、収集、蓄積した視覚データに基づいて、位置合わせエンジン222がその特定領域206の幾何学データセットを生成、蓄積、更新することが可能である。
幾何学的データセットには、特定領域206において識別される1以上の要素及び/又は物体、具体的には例えば、壁、床、天井、扉、窓等の特定領域206における構造要素、の幾何学的表示が含まれ得る。
蓄積された幾何学的データセットは、したがって、ARセッション中に特定領域206で特定された各構造要素のそれぞれを表す1以上の平面を含むか表すかの、少なくともいずれかである。具体的には、幾何学的データセットは、平面のそれぞれの1以上の寸法、例えば長さ、幅、高さ、深さ等を含むか、及び/又は記述することが可能である。幾何学的データセットはさらに、平面のそれぞれを、その特定の場所206に適用される座標系、例えばデカルト座標系等に関して配置、位置決め、及び/又は配列をすることが可能である。
ステップ106において、位置合わせエンジン222は特定領域206に潜在的に関係する可能性のある1以上の3Dモデルを取得することができる。各3Dモデルは各領域の参照幾何学的データセットを表現可能であり、その特定領域に関係する可能性のある各領域の幾何学的特徴を含み得る。3Dモデルは当技術分野で知られる1以上のフォーマット、例えば、SparXフォーマット等で利用可能である。
3Dモデルのそれぞれは、それぞれの領域の1以上のフロアプラン、例えば、図面、設計図、概略図等を基に作成することができる。具体的には、各フロアプランは、各領域の上面図、側面図、底面図等からの縮尺図であってよい。各領域の3Dモデルはしたがって、各領域の各構造要素の表示、特には幾何学的表示を含むことができ、これは本明細書で前述したように、例えば、壁、床、天井、扉、窓及び/又は類似のものを含み得る。
いくつかの実施形態において、特定の領域206が確定的に特定可能な場合には、位置合わせエンジン222はその特定領域206の1以上のフロアプランに基づいて生成される、特定領域206の単一の3Dモデルを取得可能である。例えば、位置合わせエンジン222が正確な地理的位置、例えば特定領域206の住所、座標等を決定及び/又は特定可能であると仮定する。例えば、特定領域206が特定の通りに位置する住宅であるとすると、位置合わせエンジン222がその特定の住宅に関わる3Dモデルを取得可能である。別の例では、特定領域があるモール内の店舗で、店舗番号、識別子等で特定可能であると仮定する。そのような場合、位置合わせエンジン222が特定モール内の店舗の1以上の3Dモデルにアクセスできると仮定すると、位置合わせエンジン222はその特定の家に係わる3Dモデルを取得可能である。
位置合わせエンジン222は1以上の方法及び/又は手法及び/又は実装を用いて特定領域206を特定する。例えば、ユーザ204はユーザインタフェース218を介して位置合わせエンジン222と対話し、特定領域206の識別子、例えばその地理的位置を提供することができる。別の例では、位置合わせエンジン222はARデバイス202の1以上の測位センサ、例えば全地球測位システム(GPS)センサと通信して、ARデバイス202の現在の地理的位置(地理的読み値)を取得し、それにより特定領域206を特定することができる。別の例では、位置合わせエンジン222はARデバイス202の1以上のセンサ、例えば1つの撮像センサ220と通信し、解析して特定領域206を特定可能な1以上の画像を受信することができる。例えば画像の解析に基づいて、位置合わせセンサ222は番地の標識、プレート等を識別して、それにより特定領域206を特定可能である。
ただし、別の実施形態では、特に特定領域206が明確に識別されない場合、位置合わせエンジン222は、特定領域206に一致及び/又は関係する可能性のある複数の領域の複数の3Dモデルを取得する場合がある。複数の3Dモデルのそれぞれが、特定領域206などの複数の異なる領域のそれぞれ1つの1以上のフロアプランに基づいて生成される可能性がある。
図3は、本発明のいくつかの実施形態による、特定領域の1以上のフロアプランを基にして特定領域に関して生成された例示的3D構造モデルの模式図である。特定領域206などのようなある領域の3D(構造)モデル300は、特定領域206の1以上のフロアプラン、例えば上面図、側面図、底面図等の1以上の図からの特定領域206の1以上の縮尺図に基づいて作成可能である。
ここで再び図1を参照する。
ステップ108で示すように、位置合わせエンジン222は、複数の(候補の)主回転角度のそれぞれで回転された3Dモデルに比べた、幾何学的データセットの類似度スコアを計算可能である。類似度スコアは、幾何学的データセットと回転3Dモデルとで識別された複数の対応する平面の平行度を示し、本明細書で前述したように、平面は幾何学的データセットと主回転角度のそれぞれで回転された3Dモデルとにおいて識別された1以上の構造要素に関連し得る。
簡潔にするために、ステップ108は特定領域206の単一の3Dモデルについて記述する。ただし、このプロセスを拡張して、それぞれが各主回転角度で回転された複数の3Dモデルのそれぞれについて類似度スコアを計算可能であるので、これを制限的であるとみなすべきではない。
複数の主回転角度は、例えば特定領域206の3Dモデルの原点に整列する第1の角度、第1の角度+π/2、第1の角度+π、及び/又は第1の角度+π*3/2、を含むことができる。特定領域206の3Dモデルの原点は、当技術分野で知られているように、例えば座標系の原点等で定義可能である。
位置合わせエンジン222は、先ず幾何学的データセットと回転された3Dモデルを、共通の座標系、例えばデカルト座標系の共通の向きに整列させることができる。例えば、位置合わせエンジン222は幾何学的データセットと回転された3Dモデルを、特定領域206の右手系の正の垂直軸(Y軸)と、Y軸が重力軸に整列するゼロのフロア高さを中心に整列可能である。
具体的には、位置合わせエンジン222は、ARデバイス202に関連付けられ、結合され、一体化され、及び/又は取り付けられた、1以上の慣性センサでキャプチャ及び/又は測定される方位データを用いて、蓄積された幾何学的データセットを回転された3Dモデルの座標系に整列させることができる。方位データは、例えばARデバイス202のピッチ、ロール、ヨーの姿勢角を示すことが可能であり、ARデバイス202に対する撮像センサ220の位置決めが予め決められていて既知であるので、これは幾何学的データセットの方位を示すことができる。
幾何学的データセットが各主回転角で回転された3Dモデルに整列された後、位置合わせエンジン222は、それぞれの主回転角で回転された3Dモデルに対して、幾何学的データセットの類似度スコアを計算して、幾何学的データセットと各主回転角で回転された3Dモデル内に識別される1以上の構造要素に関係する対応の平面の平行度を評価することが可能である。
位置合わせエンジン222は、類似度スコアの計算に1以上の方法、アルゴリズム及び/又は定式化を適用することが可能である。例えば、位置合わせエンジン222は、幾何学的データセットと回転した各3Dモデルとを解析して、共通座標系に関するその位置、配置及び/又は向きに基づいて、幾何学的データセット内の1以上の平面と回転した3Dモデル内の対応する平面を特定することが可能である。例えば、位置合わせエンジン222は、識別された平面同士の間の距離を最小化することにより対応する平面を特定し、対応する平面を相互に関連付けることが可能である。
例えば、位置合わせエンジン222は幾何学的データセット内の平面
(j=1,2,3,4主回転角度θ)に関するそれぞれの平面piの距離関数parallel_distanceを最小化して、それぞれの平面pに対応するある平面sを高い確率で特定する。
式1:
ここで、
である。
(j=1,2,3,4主回転角度θ)に関するそれぞれの平面piの距離関数parallel_distanceを最小化して、それぞれの平面pに対応するある平面sを高い確率で特定する。
式1:
ここで、
である。
位置合わせエンジン222は、幾何学的データセットおよび各主回転角度で回転された3Dモデルにおいて識別された対応するすべての平面について計算したparallel_distance値を集計して、例えば、下記の式2によって、それぞれの主回転角度について集計した距離値を求めることが可能である。
式2:
式2:
各主回転角度θ1,θ2,θ3,θ4のそれぞれで回転した3Dモデルに関して幾何学的データセットについて計算された集計距離値が、したがって、各主回転角度で回転した3Dモデルに関する幾何学的データセットの類似度スコアを表すことができる。
ここで図4を参照する。これは、本発明のいくつかの実施形態による、ある主回転角度で回転された特定領域の3D構造モデルに対する、特定領域の3D拡張現実シーンのために生成された例示的な幾何学的データセットの位置合わせの模式図である。
特定領域206などの特定の領域のために生成された、3Dモデル300等の3Dモデルは、複数の主回転角度、例えば3Dモデル300の原点に整列させた第1の角度、第1の角度+π/2、第1の角度+π、及び/又は第1の角度+π*3/2、の複数の主回転角度で、特定領域206に関して生成、蓄積、及び更新された幾何学的データセット400に対して回転可能である。
図からわかるように、幾何学的データセット400は、例えば特定領域206の正の垂直重力軸(Y軸)及び床高さゼロの周りに回転される3Dモデル300に整列されて、共通の座標系原点を確立することが可能である。
ここで再び図1を参照する。
ステップ110に示すように、位置合わせエンジン222は、選択された主回転角度で回転された3Dモデルが、幾何学的データセットに対して例えば向きが最も似ていることを示す、最高の類似度スコアをもたらす主回転角度を選択することが可能である。
ステップ112に示すように、位置合わせエンジン222は、複数の微調回転角度のそれぞれに対して並進ベクトルを計算可能である。ここで、3Dモデルが選択された主回転角度からさらに各微調回転角度で少しだけ回転される。微調回転角度は、例えば1度、2度、3度などの固定のステップで、シフト又は漸増させることができる。
当技術分野で知られているように、並進、回転、拡大縮小等を表わす変換行列に基づく並進ベクトルが、幾何学的データセットの平面を回転した3Dモデルのそれぞれの平面に写像することができる。
位置合わせエンジン222は、幾何学的データセットと各微調回転角度で回転された3Dモデルに表(テーブル)検索を行って、並進ベクトルを計算し、幾何学的データセットと対応する回転された3Dモデル内の対応する平面を最良適合させることが可能である。
例えば、位置合わせエンジン222は、幾何学的データセットと回転3Dモデルの上にグリッドを生成して、幾何学的データセットと回転3Dモデルの限られた、典型的には小寸法部分だけをカバーするスライド窓を適用することが可能である。位置合わせエンジン222は、スライド窓を幾何学的データセットとそれぞれの微調回転角度に従って回転された3Dモデルの上を移動させて、スライド窓が幾何学的データセットとそれぞれの回転した3Dモデルを覆う、複数の窓位置となるようにすることが可能である。
複数の窓位置のそれぞれに関し、位置合わせエンジン222は幾何学的データセットの窓内と、対応するそれぞれの回転3Dモデルの窓内に識別された各平面間の距離値を計算可能である。窓の寸法及び/又は窓のシフト(ステップ)の寸法は、予め決めることができる。例えば、スライド窓の寸法は実世界の特定領域206内の例えば5メートル、7.5メートル、10メートルなどを反映するように設定可能であり、スライド窓のシフト(ステップ)は例えば0.5メートル、1メートルなどであってよい。
グリッド付きの幾何学的データセットとそれぞれの回転3Dモデルの全体に亘ってスライド窓を移動させた後、位置合わせエンジン222は、複数の窓位置で識別される複数の対応する平面に対して計算された複数の距離値を集計することによって、各微調回転角度の並進ベクトルを計算可能である。位置合わせエンジン222は、1以上の計算及び/又は定式化を適用して、複数の平面に対して計算された複数の距離値を集計することが可能である。例えば、位置合わせエンジン222は、複数の距離値を平均して、それぞれの微調回転角度の並進ベクトルに使用可能な距離値の平均値を計算することができる。
ここで図5を参照する。これは、本発明のいくつかの実施形態による、特定領域の3D拡張現実シーンのために生成された例示的幾何学的データセットの、ある微調回転角度で回転された特定領域の3D構造モデルへの位置合わせの模式図である。
ある領域206などの特定領域に対して作成された3Dモデル300などの3Dモデルは、ある領域206に対して生成、蓄積及び更新された幾何学的データセット400などの幾何学的データセットに関して、選択された1つの主回転角度に対して例えば1度、2度、3度などの固定ステップでシフト及び/又は漸増される複数の微調回転角度で、回転可能である。
ここで再び図1を参照する。
ステップ114に示すように、複数の微調回転角度のそれぞれに対して位置合わせエンジン222は、集計距離値、例えば幾何学的データセット内と、それぞれの微調回転角度で回転された3Dモデル内で識別された対応する平面間の平均値を計算することができる。
位置合わせエンジン222は、1以上の方法、技術及び/又は定式化を適用して、対応する平面間の距離値を計算可能である。例えば、位置合わせエンジン222は、式1のドット積ベースの計算を適用して、各微調回転角度に対する集計された(平均、統計的平均などの)距離値を計算可能である。
ステップ116に示すように、位置合わせエンジン222は、対応する平面間に最小距離、具体的には、例えば最小の平均値である、最小の集計距離値を生じる微小回転角度の1つのを選択可能である。
ステップ118に示すように、位置合わせエンジン222は、選択した微調回転角度と、その選択した微調回転角度に対して計算したそれぞれの並進ベクトルとに従って、幾何学的データセットを3Dモデルに位置合わせすることが可能である。
任意選択により、位置合わせエンジン222は、位置合わせが非効率的及び/又は不満足であると判定した場合には、位置合わせを実行しない場合がある。具体的には、位置合わせエンジン222は、最小距離すなわち幾何学的データセットといずれかの微小回転角度で回転した3Dモデルとの間の最小集計距離が、特定の閾値を超える(すなわちより大きい)場合には位置合わせをしない場合がある。
位置合わせエンジン222はさらに、例えばメッセージなどの、位置合わせが失敗したことを示す表示を出力する場合がある。
幾何学的データセットが特定領域206の3Dモデルにうまく位置合わせされた後、この特定領域206の3Dモデルが複数のアプリケーションの1以上に関してARセッションの間使用可能である。具体的には、3Dモデルで表現される地理的領域206の1以上の構造要素の、位置、1以上の寸法などは、ARセッション中に使用されて、ARシーンにおける1以上の物体、要素、シンボル、アイコン、テキストなどを表現(表示)することができる。
例えばARセッションは、特定場所206内の1以上の物体、例えば家具(例えばテーブル、いす、ソファ、カーペットなど)、家電品(例えば台所用品、テレビなど)が、特にその特定場所206が空の時にARシーンにおいてシミュレート及び可視化される、インテリアデザインのアプリケーションに向けられたものであってもよい。そのような場合、シミュレートされる物体は、特定領域の206の3Dモデルに反映されるように、地理的領域206の1以上の構造要素の位置及び/又は寸法に応じた縮尺でARシーン内に提示(表示)することができる。別の例では、ARセッションはゲームアプリケーションに向けることも可能である。そこでは、1以上の要素、シンボル、テキスト等が、特定領域206の3Dモデルの構造要素の寸法及び/又は位置に応じてARシーンに提示(表示)することができる。
本発明のいくつかの実施形態によれば、特定領域206においてARセッション中に蓄積される幾何学的データセットと3Dモデルの間の位置合わせを追跡し、動的に調節して高信頼度の位置合わせを維持し、幾何学的データセットと選択された微調回転角度に従って回転される3Dモデルの間の潜在的なドリフトを克服することが可能である。具体的には、位置合わせエンジン222は、微調回転角度とそのそれぞれに計算される並進ベクトルとを動的に調節して、撮像センサ220の視点変化及び/又は移動の補償及び調節をすることにより位置合わせを追跡可能である。
ユーザ204がARデバイス202を携帯して特定領域206を通って旅行及び移動する間、拡張シーンを生成するために使用される視覚データをキャプチャするARデバイス202の撮像センサ220は、特定領域206内での視点及び場所を変えることがあり、それが、幾何学的データセットと選択された微調回転角度に従って回転する3Dモデルとの間でドリフトをもたらす可能性がある。目立つランドマーク、特に幾何学的データセットを3Dモデルに位置合わせするために使用可能な構造要素の平面がわずかしかない領域206において、ドリフト効果は増大し、強調され得る。
位置合わせエンジン222はしたがって、1以上の方法、技術及び/又はアルゴリズムを適用して、特定領域206の幾何学的データセットの特定領域206の3Dモデルへの位置合わせの追跡、及び動的調節が可能である。
第1の例示的実施形態では、位置合わせエンジン222は、幾何学的データセット内に識別される平面に重みをかけることによって位置合わせを追跡可能である。具体的には、位置合わせエンジン222は、選択された微調回転角度に対する新規の並進ベクトルを計算するか、及び/又はもともと計算された並進ベクトルを更新するために、幾何学的データセット内の平面と3Dモデル内の対応する平面との間で計算された距離値をそれぞれの重みに従って調節可能である。位置合わせエンジン222は、1以上の操作モードを適用して、幾何学的データセット内に識別された平面に重みを割り当てることが可能である。
例えば、位置合わせエンジン222は、ARデバイス202からの、特に、幾何学データセットを生成するために視覚データをキャプチャする撮像センサ220からの平面の距離に基づいて、幾何学的データセット内に識別される平面に重みを割り当てることが可能である。具体的には、位置合わせエンジン222は撮像センサ220により近い平面により高い重みを割り当て、撮像センサ220からより遠い場所の平面により低い重みを割り当てることができる。このように、遠く離れた平面に比べて近い平面ほど並進ベクトルへの寄与が高く、したがって、ユーザ204の直近及び近接する環境に対して位置合わせを強化することが可能である。
別の例では、位置合わせエンジン222は、平面が特定領域206で蓄積された幾何学的データセット内で識別された最も最近の時間、これは平面がARシーンで検出された最も最近の時間ということになるが、に基づいて、幾何学的データセット内に識別された平面に重みを割り当てることができる。具体的には、位置合わせエンジン222は最近に検出(識別)された平面に、より高い重みを割り当て、より以前に検出された平面に、より低い重みを割り当てることができる。このように、最も更新されたデータ、すなわちより直近で識別された平面の並進ベクトルへの寄与が増加され、他方で、より古いデータ、すなわちより以前に検出された平面は低い寄与となり得る。このことは、例えば以前訪問した部屋及び/又は空間で識別された可能性のある、より以前の平面は、並進ベクトルへの寄与はより小さくなり得ることを意味する。したがって、ユーザ204の現在位置に対する幾何学的データセットの位置合わせが強化される。
別の例では、位置合わせエンジン222は、幾何学的データセットから得られる平面の位置及び/又は向きに基づいて、幾何学的データセット内に識別された平面に重み付けすることができる。具体的には、位置合わせエンジン222は、ARシーン内で現在目に見え、したがって、その位置及び/又は向きが明らかな平面に対してより高い重みを割り当て、現在目視できず、その位置及び/又は向きを推測できないか少なくとも正確には推測できない平面に対してより低い重みを割り当てることができる。このように、位置及び向きが正確に決定される平面は、位置及び/又は向きが決定できない平面に比べて、より高い寄与を有する可能性がある。
別の例示的実施形態では、位置合わせエンジン222が、幾何学的データセットにおいて最近更新された各平面を列挙し、さらに3Dモデルで識別された対応する平面を列挙することで位置合わせを追跡可能である。位置合わせエンジン222は、次に3Dモデルにおける対応する平面の静止位置に基づいて、幾何学的データセットにおいて検出されて列挙された各平面の位置を計算し、並進ベクトルを更新及び/又は再計算して位置合わせを常に更新することが可能である。
任意選択により、位置合わせエンジン222は幾何学的データセットから、ARセッション中にARシーンで検出された1以上の平面に関する幾何学的データ及び/又は特徴を抽出することができる。特定領域206の3Dモデルは、次いで、それぞれの平面の実世界の特徴を表す抽出された幾何学的データにより、調節、更新及び/又は修正される可能性があり、それにより、3Dモデルの精度、信頼性等が強化される。
任意選択により、位置合わせエンジン222は、特定領域206の視覚データの少なくとも一部、例えば、ARセッション中に1以上の撮像センサ220によってキャプチャされた1以上の画像、を使用することが可能である。キャプチャされた画像を使用して特定領域の3Dモデルを強化可能であり、例えば、画像を3Dモデルに重ねて特定領域の視覚的、現実的な3Dモデルを作成して、幾何学的3Dモデルに正確に結合した実世界の視覚(画像)データを提示する。
本発明のいくつかの実施形態によれば、フロアプランを使用する代わりに、特定領域206の3Dモデルを、その領域の1以上の過去のARセッション中に蓄積された1以上の幾何学的データセットに基づいて生成することが可能である。1以上のARセッションは、特定領域206の視覚データをキャプチャ可能なARデバイス202などの1以上のARデバイスを用いて、特定領域206で実行可能である。それぞれの幾何学的データセットは、キャプチャされる視覚データに基づいてARセッション中に生成及び蓄積可能である。特定領域206で検出される1以上の平面の幾何学的データ及び/又は幾何学的特徴は、次いで、特定領域206の3Dモデルの生成及び/又は更新に使用可能である。特定領域206における後続の1以上のARセッションの間に、ARシーン、具体的には後続のARセッション中に蓄積される幾何学的データは、後続のARセッションでキャプチャされるデータに基づいて生成される3Dモデルに位置合わすることが可能である。
本発明の様々な実施形態の説明を、例示を目的として提示してきたが、これは開示の実施形態を網羅することも、またそれに限定することも意図するものではない。説明した実施形態の範囲及び精神から逸脱することなく、多くの修正、変形が当業者には明らかであろう。本明細書で使用する用語は、実施形態の原理、実際の応用、又は市場にある技術に対する技術的改良を最もよく説明するために、あるいは、本明細書に開示の実施形態を他の当業者が理解できるようにするために選択された。
この出願から成熟する特許の存続期間の間に、多くの関連するシステム、方法及びコンピュータプログラムが開発されるであろうが、ARデバイスという用語の範囲は、そのような新技術を先験的に含むことを意図している。
本明細書で使用の用語「約」は、±10%を指す。
用語「備える」、「備えた」、「含む」、「含んだ」、「有する」、およびそれらの活用形は、「含むがそれに限らない」ことを意味する。この用語は、「~から成る」、及び「本質的に~から成る」という用語を包含する。
「本質的に~から成る」という表現は、組成又は方法が追加的な成分及び/又はステップを含み得るが、その追加的な成分及び/又はステップが特許請求の組成又は方法の基本的かつ新規の特性を実質的に変更しない場合に限ることを意味する。
本明細書で使用の、単数形の「1つの(a、an)」、「この(the)」は文脈が明確に別段の指示をしない限り、複数の参照も含む。例えば、「1つの化合物」または「少なくとも1つの化合物」という用語は、複数の化合物を、それらの混合物も含めて包含し得る。
「例示的」という用語は、本明細書では、「例、実例、例示に供する」という意味で使用される。「例示的」として記述される任意の実施形態は、必ずしも他の実施形態よりも好適又は有利であるとして、及び/又は他の実施形態の特徴を組み込むことを排除するものとして解釈されるべきではない。
「任意選択により」という用語は、本明細書においては、「ある実施形態では提供され、他の実施形態では提供されない」ことを意味するように使用される。本発明の任意の特定の実施形態は、そのような特徴が相反しない限り、複数の「任意選択の」特徴を含み得る。
本出願を通じて、本発明の様々な実施形態が範囲形式で提示され得る。範囲形式の記述は、単に便宜的かつ簡潔化のためのものであって、本発明の範囲の一定不動の限定として解釈されるべきではないことを理解されたい。従って、範囲の記述は、その範囲内の個別の数値と共にすべての可能な部分範囲を具体的に開示しているものと見なされるべきである。例えば、1~6というような範囲の記述は、1~3、1~4、1~5、2~4、2~6、3~6などの具体的に開示された部分範囲、並びにその範囲内の個別の数値、例えば1、2、3、4、5、6を有すると見なされるべきである。このことは、範囲の広さに拘わらず適用される。
本明細書で数値範囲が示されるときはいつでも、示された範囲内の任意の引用された数値(分数または整数)を含むことが意味される。第1の指定数と第2の指定数「の間の範囲の/範囲にある」という句、および、第1の指定数「から」第2の指定数「まで」の「範囲の/範囲にある」という句は、本明細書では互換的に使用されて、第1の指定数と第2の指定数、並びにその間のすべての分数および整数を含むことを意味する。
「例示的」という用語は、本明細書では、「例、実例、例示に供する」という意味で使用される。「例示的」として記述される任意の実施形態は、必ずしも他の実施形態よりも好適又は有利であるとして、及び/又は他の実施形態の特徴を組み込むことを排除するものとして、解釈されるべきではない。
「任意選択により」という用語は、本明細書においては、「ある実施形態では提供され、他の実施形態では提供されない」ことを意味するように使用される。本発明の任意の特定の実施形態は、そのような特徴が相反しない限り、複数の「任意選択の」特徴を含み得る。
本発明の特定の特徴は、明確にするために別々の実施形態の文脈に記述されていても、組み合わせて1つの実施形態で提供され得ることが理解される。逆に、簡潔にするために単一の実施形態の文脈中に記述される本発明の様々な特徴は、別々に、又は任意の適切な部分的組合せで提供されることも、又は本発明の任意の他の説明される実施形態に適切であるように提供されることも可能である。様々な実施形態の文脈で記述される特定の特徴は、これらの要素なしではその実施形態が動作不能でない限りは、これらの実施形態の必須の特徴とは見なされない。
本発明を、その特定の実施形態に関連して説明してきたが、当業者には多くの代替、修正、変形が明らかなことは明白である。したがって、添付の特許請求の範囲の精神及び広い範囲内にあるそのような代替、修正及び変形のすべてを包含することが意図されている。
本明細書で言及したすべての刊行物、特許及び特許出願は、各個別の刊行物、特許及び特許出願が、参照により本明細書に組み込まれることを具体的かつ個別的に注記されたかのごとくに、参照によってその全体が本明細書に組み込まれることが出願人の意図である。さらに、本出願内のいかなる参考文献の引用又は特定も、そのような参照が本発明に対する先行技術として利用可能であることを認めるものと解釈されるべきではない。節の表題に使用される限りでは、それらは必ずしも限定的であると解釈されるべきではない。さらに、本出願のあらゆる優先権書類は参照によりその全体が本明細書に組み込まれる。
Claims (20)
- 特定領域の拡張現実(AR)シーンを、該特定領域の三次元(3D)モデルに位置合わせする方法であって、
アクティブなARセッション中に少なくとも1つの撮像センサーによってキャプチャした視覚データに基づいて、特定の領域の幾何学的データセットを蓄積し、
前記特定領域の3Dモデルを取得し、
前記3Dモデルを複数の主回転角度のそれぞれで回転させて前記幾何学的データセットと比較し、前記幾何学的データセットと前記回転した3Dモデルとにおいて特定される複数の対応する平面の平行度を示す類似度スコアを計算し、
最も高い類似度スコアをもたらす主回転角度を選択し、
前記選択された主回転角度に関する複数の微調回転角度に対するそれぞれの並進ベクトルを、対応する平面間の距離に基づいて計算し、
前記対応する平面間の最小距離をもたらす微調回転角度を選択し、
前記選択した微調回転角度及びその各並進ベクトルに従って、前記幾何学的データセットを前記3Dモデルに位置合わせする、
ように構成された少なくとも1つのプロセッサを使用することを含む、方法。 - 前記最小距離が特定の閾値を超える場合には、前記選択された回転角度及び並進ベクトルによる位置合わせを行わないことをさらに含む、請求項1に記載の方法。
- 前記幾何学的データセットと各回転された3Dモデルは、前記類似度スコアを計算する前に、先ず前記特定領域の正の垂直軸の周り、及びゼロのフロア高さに整列される、請求項1に記載の方法。
- 各微調回転角度に関する前記並進ベクトルの計算は、
前記幾何学的データセット及びそれぞれの微調回転角度に従って回転する前記3Dモデルにスライド窓を適用して、前記スライド窓が前記幾何学的データセット及び前記3Dモデルを覆う、複数の窓位置をとるようにし、
前記複数の窓位置のそれぞれにおいて、前記幾何学的データセットの窓と前記3Dモデルの窓で識別される各平面の間の距離を計算し、
前記複数の窓位置において識別される、複数の対応する平面に対して計算される複数の距離の値を集計することによって、前記それぞれの微調回転角度の並進ベクトルを計算する、
ことを含む、請求項1に記載の方法。 - 前記並進ベクトルを計算するための複数の距離の値を集計することは、前記複数の距離の値の平均値を計算することを含む、請求項4に記載の方法。
- 前記3Dモデルは、前記特定の領域に関して、前記特定領域の少なくとも1つのフロアプランに基づいて生成される、請求項1に記載の方法。
- 前記複数の平面のそれぞれは、壁、床、天井、扉及び窓から成る群のメンバである、請求項1に記載の方法。
- 前記複数の主回転角度は、前記3Dモデルの原点に整列する第1の角度、第1の角度+π/2、第1の角度+π、第1の角度+π*3/2から成る群のメンバである、請求項1に記載の方法。
- 前記幾何学的データセットと各微調回転角度に従って回転される前記3Dモデルとにおいて識別される対応する平面間の前記距離は、前記それぞれの平面の法線のドット積である、請求項1に記載の方法。
- 前記幾何学的データセット内に特定される、3Dモデル内の少なくとも1つの参照平面に基づいて、前記幾何学的データセットを前記3Dモデルに位置合わせすることをさらに含む、請求項1に記載の方法。
- 前記特定の領域に関係する可能性のある複数の3Dモデルに関して前記幾何学的データセットの前記並進ベクトルを計算し、それぞれのフロアプランに基づいて生成される前記複数の3Dモデルのそれぞれにおいて、前記対応する平面の間の最小距離をもたらす、前記複数の3Dモデルのうちの1つを選択することをさらに含む、請求項1に記載の方法。
- 前記少なくとも1つの撮像センサの視点及び/又は場所の変化による潜在的なドリフトを克服するために、前記選択した微調回転角とそのそれぞれの並進ベクトルを調節することにより前記幾何学的データセットの前記3Dモデルへの位置合わせを追跡することをさらに含む、請求項1に記載の方法。
- 前記位置合わせは、前記幾何学的データセットにおいて識別される複数の平面と、前記3Dモデルで識別される対応する複数の平面との間で計算される距離値に基づく前記並進ベクトルを計算することにより調節され、ここで前記複数の平面のそれぞれにはそれぞれの重みが割り当てられる、請求項12に記載の方法。
- 前記複数の平面のそれぞれに対して割り当てられる前記重みは、
-前記少なくとも1つの撮像センサからのそれぞれの平面の距離に基づき、より近い平面ほどより大きな重みが、またより遠い平面ほどより小さい重みが割り当てられる、
-前記それぞれの平面が識別された最も直近の時間に基づき、より直近に検出された平面はより大きい重みが割り当てられ、より以前に検出された平面はより小さい重みが割り当てられる、
-前記幾何学的データセットから求められる前記それぞれの平面の位置及び/又は向きに基づく、
の少なくとも1つに基づいて計算される、請求項13に記載の方法。 - 前記位置合わせは、
前記幾何学的データセットにおいて最近更新された各平面、及び前記3Dモデルにおけるそれに対応する平面を列挙し、
前記3Dモデルでの対応する平面の静的位置に基づいて前記幾何学的データセットのそれぞれの平面の位置を計算する、
ことにより調節される、請求項12に記載の方法。 - 前記幾何学的データセットから抽出される前記複数の平面の少なくとも1つに関する少なくとも1つの幾何学的特徴に基づいて、前記特定領域の前記3Dモデルを更新することをさらに含む、請求項1に記載の方法。
- 前記3Dモデルに前記視覚データの少なくとも一部を重畳することにより現実的3Dモデルを生成することをさらに含む、請求項1に記載の方法。
- 前記特定領域における少なくとも1つの過去のARセッション中に生成された少なくとも1つの過去の幾何学的データセットに基づいて、前記特定領域の前記3Dモデルを生成することをさらに含み、前記少なくとも1つの過去の幾何学的データセットは、少なくとも1つの過去のARセッション中に少なくとも1つのARデバイスによってキャプチャされた視覚データに基づいて生成される、請求項1に記載の方法。
- 特定領域の拡張現実(AR)シーンを、前記特定領域の三次元(3D)モデルに対して位置合わせするためのシステムであって、
アクティブなARセッション中に少なくとも1つの撮像センサによってキャプチャされた視覚データに基づいて、特定の領域の幾何学的データセットを蓄積するためのコード命令と、
前記特定領域の3Dモデルを取得するためのコード命令と、
複数の主回転角度のそれぞれで回転された前記3Dモデルと比較して、前記幾何学的データセットの類似度スコアを計算するコード命令であって、前記類似度スコアは前記幾何学的データセットと回転された前記3Dモデルにおいて特定される複数の対応する平面の平行度を示すものであるコード命令と、
最も高い類似度スコアをもたらす主回転角度を選択するためのコード命令と、
前記選択された主回転角度に関して、対応する平面間の距離に基づいて、複数の微調回転角度のそれぞれの並進ベクトルを計算するためのコード命令と、
前記対応する平面間の最小距離をもたらす微調回転角度を選択するためのコード命令と、
前記選択した微調回転角度及びその各並進ベクトルに従って、前記幾何学的データセットを前記3Dモデルに位置合わせするためのコード命令と、
を含むコードを実行するように構成された少なくとも1つのプロセッサを備えるシステム。 - 拡張現実(AR)セッションに適合するフロアプランを特定するためのコンピュータプログラム製品であって、
アクティブなARセッション中に少なくとも1つの撮像センサによってキャプチャされた視覚データに基づいて、特定領域の幾何学的データセットを蓄積する命令を少なくとも1つのプロセッサにコード化させる、少なくとも1つのプロセッサによって実行可能な第1のプログラム命令と、
前記少なくとも1つのプロセッサに前記特定領域の3Dモデルを取得させる前記少なくとも1つのプロセッサによって実行可能な第2プログラム命令と、
複数の主回転角度のそれぞれで回転された前記3Dモデルと比較して、前記幾何学的データセットの類似度スコアを前記少なくとも1つのプロセッサに計算させる前記少なくとも1つのプロセッサによって実行可能な第3プログラム命令であって、前記類似度スコアは前記幾何学的データセットと回転された前記3Dモデルとにおいて特定される複数の対応する平面の平行度を示すものである、第3プログラム命令と、
前記少なくとも1つのプロセッサに最も高い類似度スコアをもたらす主回転角度を選択させる、前記少なくとも1つのプロセッサによって実行可能な第4のプログラム命令と、
前記少なくとも1つのプロセッサに、対応する平面間の距離に基づいて、前記選択された主回転角度に対する、複数の微調回転角度のそれぞれの並進ベクトルを計算させる、前記少なくとも1つのプロセッサによって実行可能な第5のプログラム命令と、
前記少なくとも1つのプロセッサに、前記対応する平面間の最小の距離をもたらす微調回転角度を選択させる、前記少なくとも1つのプロセッサによって実行可能な第6のプログラム命令と、
前記少なくとも1つのプロセッサに、前記選択した微調回転角度及びその各並進ベクトルに従って、前記幾何学的データセットを前記3Dモデルに位置合わせさせる、前記少なくとも1つのプロセッサによって実行可能な第7のプログラム命令と、
を有する少なくとも1つのコンピュータ可読記憶媒体を備える、コンピュータプログラム製品。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163138473P | 2021-01-17 | 2021-01-17 | |
US63/138,473 | 2021-01-17 | ||
US17/367,707 | 2021-07-06 | ||
US17/367,707 US11315339B1 (en) | 2021-01-17 | 2021-07-06 | Registration of 3D augmented scene to structural floor plans |
PCT/IL2022/050066 WO2022153315A1 (en) | 2021-01-17 | 2022-01-17 | Registration of 3d augmented scene to structural floor plans |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2024503135A true JP2024503135A (ja) | 2024-01-24 |
Family
ID=81259987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023543290A Pending JP2024503135A (ja) | 2021-01-17 | 2022-01-17 | 3d拡張シーンの構造フロアプランへの位置合わせ |
Country Status (7)
Country | Link |
---|---|
US (2) | US11315339B1 (ja) |
EP (1) | EP4275180A1 (ja) |
JP (1) | JP2024503135A (ja) |
KR (1) | KR20230130110A (ja) |
AU (1) | AU2022208470A1 (ja) |
CA (1) | CA3204640A1 (ja) |
WO (1) | WO2022153315A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117690095B (zh) * | 2024-02-03 | 2024-05-03 | 成都坤舆空间科技有限公司 | 一种基于三维场景的智慧社区管理系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11468639B2 (en) * | 2015-02-20 | 2022-10-11 | Microsoft Technology Licensing, Llc | Selective occlusion system for augmented reality devices |
US10733800B2 (en) * | 2018-09-17 | 2020-08-04 | Facebook Technologies, Llc | Reconstruction of essential visual cues in mixed reality applications |
-
2021
- 2021-07-06 US US17/367,707 patent/US11315339B1/en active Active
-
2022
- 2022-01-17 EP EP22739272.7A patent/EP4275180A1/en active Pending
- 2022-01-17 CA CA3204640A patent/CA3204640A1/en active Pending
- 2022-01-17 AU AU2022208470A patent/AU2022208470A1/en active Pending
- 2022-01-17 WO PCT/IL2022/050066 patent/WO2022153315A1/en active Application Filing
- 2022-01-17 KR KR1020237027799A patent/KR20230130110A/ko unknown
- 2022-01-17 JP JP2023543290A patent/JP2024503135A/ja active Pending
-
2023
- 2023-07-17 US US18/222,505 patent/US20230368482A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
KR20230130110A (ko) | 2023-09-11 |
AU2022208470A1 (en) | 2023-08-24 |
WO2022153315A1 (en) | 2022-07-21 |
CA3204640A1 (en) | 2022-07-21 |
US11315339B1 (en) | 2022-04-26 |
US20230368482A1 (en) | 2023-11-16 |
EP4275180A1 (en) | 2023-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220028156A1 (en) | Generating Floor Maps For Buildings From Automated Analysis Of Visual Data Of The Buildings' Interiors | |
CA3058602A1 (en) | Automated mapping information generation from inter-connected images | |
KR20210154861A (ko) | 장치 위치 측정을 위한 다중 동기화 통합 모델 | |
JP2014525089A5 (ja) | ||
JP2014525089A (ja) | 3次元特徴シミュレーション | |
Unal et al. | Distant augmented reality: Bringing a new dimension to user experience using drones | |
JP2023520765A (ja) | 仮想および拡張現実のためのシステムおよび方法 | |
JP7277548B2 (ja) | サンプル画像生成方法、装置及び電子機器 | |
TWI760978B (zh) | 用於依據由一相機擷取之影像定位該相機之方法及相關之非暫時性電腦可讀儲存媒體與電腦系統 | |
CN104360729A (zh) | 基于Kinect和Unity3D的多交互方法与装置 | |
US12033270B2 (en) | Systems and methods for generating stabilized images of a real environment in artificial reality | |
Kasperi et al. | Occlusion in outdoor augmented reality using geospatial building data | |
US10565786B1 (en) | Sensor placement interface | |
US20230368482A1 (en) | Registration of 3d augmented scene to structural floor plans | |
CN111737603A (zh) | 用于判断兴趣点是否可视的方法、装置、电子设备以及存储介质 | |
Tian et al. | Registration and occlusion handling based on the FAST ICP-ORB method for augmented reality systems | |
WO2023088127A1 (zh) | 室内导航方法、服务器、装置和终端 | |
US11756267B2 (en) | Method and apparatus for generating guidance among viewpoints in a scene | |
WO2022089061A1 (zh) | 物体标注信息呈现方法、装置、电子设备及存储介质 | |
Zheng et al. | [Retracted] Rendering and Optimization Algorithm of Digital City’s 3D Artistic Landscape Based on Virtual Reality | |
RU2702495C1 (ru) | Способ и система сбора информации для устройства совмещенной реальности в режиме реального времени | |
Pispidikis et al. | 3D Modelling and virtual reality for the management of public buildings | |
WO2022129646A1 (en) | Virtual reality environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20230719 |