IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ テレフオンアクチーボラゲット エル エム エリクソン(パブル)の特許一覧

特許7461478メモリおよびデバイスのトラッキングを使用する拡張現実アプリケーションにおけるオクルージョンハンドリングのための方法と関連装置
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-26
(45)【発行日】2024-04-03
(54)【発明の名称】メモリおよびデバイスのトラッキングを使用する拡張現実アプリケーションにおけるオクルージョンハンドリングのための方法と関連装置
(51)【国際特許分類】
   G06T 19/00 20110101AFI20240327BHJP
【FI】
G06T19/00 600
【請求項の数】 20
(21)【出願番号】P 2022535825
(86)(22)【出願日】2019-12-13
(65)【公表番号】
(43)【公表日】2023-02-13
(86)【国際出願番号】 EP2019085191
(87)【国際公開番号】W WO2021115623
(87)【国際公開日】2021-06-17
【審査請求日】2022-08-23
(73)【特許権者】
【識別番号】598036300
【氏名又は名称】テレフオンアクチーボラゲット エルエム エリクソン(パブル)
(74)【代理人】
【識別番号】100109726
【弁理士】
【氏名又は名称】園田 吉隆
(74)【代理人】
【識別番号】100161470
【弁理士】
【氏名又は名称】冨樫 義孝
(74)【代理人】
【識別番号】100194294
【弁理士】
【氏名又は名称】石岡 利康
(74)【代理人】
【識別番号】100194320
【弁理士】
【氏名又は名称】藤井 亮
(74)【代理人】
【識別番号】100150670
【弁理士】
【氏名又は名称】小梶 晴美
(72)【発明者】
【氏名】アラウーホ, ホセ
(72)【発明者】
【氏名】タヘル クーヘスタニ, アミルホセイン
(72)【発明者】
【氏名】カラギアニス, イオアニス
(72)【発明者】
【氏名】ムドゥクリシュナ, アナンヤ
(72)【発明者】
【氏名】ググリエモ, シモナ
(72)【発明者】
【氏名】ゴンサレス モリン, ディエゴ
【審査官】佐野 潤一
(56)【参考文献】
【文献】特表2019-525515(JP,A)
【文献】特表2019-514101(JP,A)
【文献】米国特許出願公開第2017/0358092(US,A1)
【文献】韓国公開特許第10-2008-0052363(KR,A)
【文献】特開2016-095849(JP,A)
【文献】拡張現実感におけるオクルージョン問題の簡便な解決手法とそのインタラクションへの応用,日本バーチャルリアリティ学会論文誌,第9巻 第4号,2004年12月31日
(58)【調査した分野】(Int.Cl.,DB名)
G06T 15/00-19/00
H04N 13/00
G09G 5/00
G06F 3/01
(57)【特許請求の範囲】
【請求項1】
デバイス(400、40)によって行われる拡張現実におけるオクルージョンハンドリングのための方法であって、
一フレームの少なくとも1つの画素分類画像を生成すること(902)であって、
前記少なくとも1つの画素分類画像には、オクルージョンオブジェクトが含まれ、前景画素として分類される画素を有する前景、背景画素として分類される画素を有する背景、および未知の画素を含む画素があり、
前記生成することが、(1)前記オクルージョンオブジェクトが収まっている画像の前記画素のうちの1つまたは複数のそれぞれに対して、前記画素が前景画素であることの確率を前景色確率分布から規定する初期前景画素確率画像を計算し、前記画素のうちの1つまたは複数のそれぞれに対して、前記画素のうちの1つまたは複数の前記それぞれが動的であるかまたは静的であるかの確率を規定する初期背景画素確率画像を背景確率分布に基づき計算することと、(2)前記オクルージョンオブジェクトの奥行き情報に基づき、前記オクルージョンオブジェクトの正規化奥行き画像を計算することと、(3)前記初期前景画素確率画像、前記初期背景画素確率画像、および前記正規化奥行き画像を使用して、画素分類画像を生成することと、で構成されている、一フレームの少なくとも1つの画素分類画像を生成すること(902)と、
アルファマスクを得て、前記未知の画素の色を決定することに基づき、仮想オブジェクトと前記少なくとも1つの画素分類画像の前記前景とを融合させるアルファマッティングプロセスを開始すること(904)と、
前記少なくとも1つの画素分類画像における画素に前記アルファマスクを施すのに基づき、前記オクルージョンオブジェクトにオクルージョンされた前記仮想オブジェクトが収まっている拡張現実画像の最終構成をレンダリングすること(906)と、を含む、方法。
【請求項2】
前記画素のうちの1つまたは複数のそれぞれが静的であるかまたは動的であるかの確率に基づき、前記画素のうちの1つまたは複数の前記それぞれに対する初期背景画素確率画像を前記計算することは、3次元再構成背景を使用して、前記画像の前記画素のうちの1つまたは複数の前記それぞれが背景画素であることの初期確率を推定することを含む、請求項1に記載の方法。
【請求項3】
前記画素のうちの1つまたは複数のそれぞれに対する初期背景画素確率画像を前記計算することは、背景確率分布Lをそれまでに学習していなければ、または前景セグメント化画素が動的である確率が規定の閾値Tを下回っていれば、背景画素に対して色確率分布Pbを使用する、請求項1または2に記載の方法。
【請求項4】
前記前景画素のうちの前記1つまたは複数が動的オブジェクトに対応すると見なされている場合、前記画素のうちの1つまたは複数のそれぞれに対する前記初期背景画素確率画像が、それまでに学習した背景確率分布に基づき計算される、請求項1または2に記載の方法。
【請求項5】
前記前景セグメント化画素が動的である確率が、
前記画像の途切れのないフレームにおける前記背景画素のうちのそれぞれ1つまたは複数の位置の変化を追跡することと、
前記背景画素のうちの前記それぞれ1つまたは複数が属するオブジェクトの種類を、オブジェクト検出工程を経て意味的に理解することと、
前記オクルージョンオブジェクトが収まっている前記画像からの測定値、のうちの1つによって推定される、請求項3に記載の方法。
【請求項6】
前記画素のうちの1つまたは複数のそれぞれが静的であるかまたは動的であるかの確率に基づき、前記画素のうちの1つまたは複数の前記それぞれに対する初期背景画素確率画像を前記計算することが、
前記1つまたは複数の画素のそれぞれが静的オブジェクトに対応すると見なされるという確率閾値を満たすかどうかを判断することと、
学習した背景確率分布を使用して、前記1つまたは複数の画素のそれぞれが前記背景の一部であることの確率を引き出すことと、で構成されている、請求項1または2に記載の方法。
【請求項7】
前記オクルージョンオブジェクトの奥行き情報に基づく前記オクルージョンオブジェクトの前記正規化奥行き画像が、決定した奥行き値が前記仮想オブジェクトまでの間隔Dよりも小さい画素に1を設定することにより計算され、前記画素のうちの残りの画素が、Dにより近い奥行き値を有する前記1つまたは複数の画素に、より高い値を割り当てる指数関数によって与えられる、0から1の間の奥行き値を有する、請求項1に記載の方法。
【請求項8】
前記少なくとも1つの画素分類画像を前記生成すること(902)はさらに、
前記初期背景画素確率画および前記初期前景画素確率画像、前記正規化奥行き画像、ならびに前記1つまたは複数の画素の前記色と前記奥行きの可変性に基づき、前記画素分類画像を生成するために使用される重み付き背景画素確率画像および重み付き前景画素確率画像を計算することを含む、請求項1から7のいずれか一項に記載の方法。
【請求項9】
前記少なくとも1つの画素分類画像を前記生成すること(902)はさらに、
前記画素のうちの前記1つまたは複数のそれぞれが、前記画像における前景または背景として分類される確率を推定することと、
前記画素のうちの前記1つまたは複数のそれぞれが前景または背景として分類される確率の推定規定の閾値よりも高いことに基づき、前記画像における前記画素のうちの前記1つまたは複数の前記それぞれを前景として分類することと、
前景として分類されない前記画像における前記画素のうちの前記1つまたは複数の前記それぞれの残りに対して、前記画素のうちの1つまたは複数の前記それぞれの残りを背景として分類することと、
前景として分類した前記画素によって形成された前記画像の前景域のエッジを計算して、拡張することに基づき、前記未知の画素を決定することと、に基づき、
正規化背景画素確率画像および正規化前景画素確率画像を計算することを含む、請求項1から8のいずれか一項に記載の方法。
【請求項10】
前記画素のうちの前記1つまたは複数のそれぞれが前記画像における前景として、または背景として分類されることの確率が、重み付き前景画素確率画像および重み付き背景画素確率画像を使用して計算される、請求項9に記載の方法。
【請求項11】
アルファマスクαを得て、前記未知の画素の色を決定するのに基づき前記少なくとも1つの画素分類画像の仮想オブジェクトと前記前景とを融合させるアルファマッティングプロセスを前記開始すること(904)は、前記1つまたは複数の未知の画素のそれぞれに対してアルファチャンネルを計算し、反転アルファマスクを使用して対応する仮想画素を加えることを含む、請求項1から10のいずれか一項に記載の方法。
【請求項12】
前記少なくとも1つの画素分類画像において画素に前記アルファマスクを施すことに基づき前記オクルージョンオブジェクトにオクルージョンされた前記仮想オブジェクトが収まっている拡張現実画像の最終構成を前記レンダリングすること(906)は、
前記デバイスが非シースルー表示デバイスである場合、反転アルファマスク(1-α)を使用して、前記少なくとも1つの画素分類画像の前記前景画素および前記仮想オブジェクトにアルファマスクαを施し、前記少なくとも1つの画素分類画像の前記背景画素に結果を加えることと、
前記デバイスがシースルーデバイスである場合、前記少なくとも1つの画素分類画像において、前記仮想オブジェクトをレンダリングし、前記反転アルファマスク(1-α)をオクルージョンマスクとして施すことと、のうちの1つである、請求項1から11のいずれか一項に記載の方法。
【請求項13】
前記デバイスのカメラが見ている学習対象の前記デバイスの追跡対象ポーズを使用することと、
複数の追跡対象ポーズの各フレームからの複数の色確率分布を色特性が同様であるクラスタに分類することと、
前記デバイスの後続ポーズに基づき、後続のオクルージョンハンドリング工程中に前記複数の色確率分布の中から1つの色確率分布を選択し、使用することと、に基づき、前記画像の前記フレーム、後続の画像フレーム、および前記デバイスの前記追跡対象ポーズを使用して、前記デバイスの前記追跡対象ポーズにおける範囲に対して色確率分布を学習すること(910)をさらに含む、請求項1から12のいずれか一項に記載の方法。
【請求項14】
アルファマスクを得て、前記未知の画素の色を決定するのに基づき、前記少なくとも1つの画素分類画像の複数の仮想オブジェクトと前記前景とを融合させるアルファマッティングプロセスを前記開始すること(904)は、前記1つまたは複数の未知の画素のそれぞれに対してアルファチャンネルを計算し、仮想オブジェクトの対応する仮想画素を加えることを含む、請求項1から13のいずれか一項に記載の方法。
【請求項15】
アルファマスクを得て、前記未知の画素の色を決定するのに基づき、前記少なくとも1つの画素分類画像の仮想オブジェクトと前記前景とを融合させるアルファマッティングプロセスを前記開始すること(904)が、
前記未知の画素と前記未知の画素のそれぞれの周りの領域Kを前記アルファマッティングプロセスを行うサーバに送信することであって、前記領域Kが前記画像における一場面に基づき決定される、送信することと、
前記未知の画素および前記領域Kの色を前記サーバから受信することと、
を含む、請求項1から14のいずれか一項に記載の方法。
【請求項16】
前記デバイスが拡張現実デバイス(400)である、請求項1から15のいずれか一項に記載の方法。
【請求項17】
前記デバイスがクラウドベースの中央処理装置(40)である、請求項1から16のいずれか一項に記載の方法。
【請求項18】
前記デバイスに見える前記画像が新しい画像に変わると、サーバから、前記新しい画像に対する学習した色分布または3次元再構成のうちの1つまたは複数を読み込むこと(1502)と、
前記少なくとも1つの画素分類画像、前記アルファマスク、および前記画像の前記最終構成を削除すること(1504)と、をさらに含む、
請求項1から16のいずれか一項に記載の方法。
【請求項19】
処理回路(410、810)と、
前記処理回路とつながっているメモリ(412、812)であって、前記処理回路によって実行されると、デバイスに、
一フレームの少なくとも1つの画素分類画像を生成すること(902)であって、前記少なくとも1つの画素分類画像には、オクルージョンオブジェクトが含まれ、前景画素として分類される画素を有する前景、背景画素として分類される画素を有する背景、および未知の画素を含む画素があり、
前記生成することが、(1)前記オクルージョンオブジェクトが収まっている画像の前記画素のうちの1つまたは複数のそれぞれに対して、前記画素が前景画素であることの確率を前景色確率分布から規定する初期前景画素確率画像を計算し、前記画素のうちの1つまたは複数のそれぞれに対して、前記画素のうちの1つまたは複数の前記それぞれが静的であるかまたは動的であるかの確率を規定する初期背景画素確率画像を背景確率分布に基づき計算することと、(2)前記オクルージョンオブジェクトの奥行き情報に基づき、前記オクルージョンオブジェクトの正規化奥行き画像を計算することと、(3)前記初期前景画素確率画像、前記初期背景画素確率画像、および前記正規化奥行き画像を使用して、画素分類画像を生成することと、を含む、一フレームの少なくとも1つの画素分類画像を生成すること(902)と、
アルファマスクを得て、前記未知の画素の色を決定することに基づき、前記少なくとも1つの画素分類画像の仮想オブジェクトと前記前景とを融合させるアルファマッティングプロセスを開始すること(904)と、
前記少なくとも1つの画素分類画像における画素に前記アルファマスクを施すのに基づき、前記オクルージョンオブジェクトにオクルージョンされた前記仮想オブジェクトが収まっている拡張現実画像の最終構成をレンダリングすること(906)と
を含む工程を行わせる命令が入っている、メモリ(412、812)と、で構成されているデバイス(400、40)。
【請求項20】
デバイス(400、40)の処理回路(410、810)によって実行されるプログラムコードが入っている非一時的記憶媒体を含むコンピュータプログラム製品であって、それによって、前記プログラムコードの実行が、前記デバイス(400、40)に、
一フレームの少なくとも1つの画素分類画像を生成すること(902)であって、前記少なくとも1つの画素分類画像には、オクルージョンオブジェクトが含まれ、前景画素として分類される画素を有する前景、背景画素として分類される画素を有する背景、および未知の画素を含む画素があり、
前記生成することが、(1)前記オクルージョンオブジェクトが収まっている画像の前記画素のうちの1つまたは複数のそれぞれに対して、前記画素が前景画素であることの確率を前景色確率分布から規定する初期前景画素確率画像を計算し、前記画素のうちの1つまたは複数のそれぞれに対して、前記画素のうちの1つまたは複数の画素の前記それぞれが静的であるかまたは動的であるかの確率を規定する初期背景画素確率画像を背景確率分布に基づき計算することと、(2)前記オクルージョンオブジェクトの奥行き情報に基づき、前記オクルージョンオブジェクトの正規化奥行き画像を計算することと、(3)前記初期前景画素確率画像、前記初期背景画素確率画像、および前記正規化奥行き画像を使用して、画素分類画像を生成することと、を含む、一フレームの少なくとも1つの画素分類画像を生成すること(902)と、
アルファマスクを得て、前記未知の画素の色を決定することに基づき、前記少なくとも1つの画素分類画像の仮想オブジェクトと前記前景とを融合させるアルファマッティングプロセスを開始すること(904)と、
前記少なくとも1つの画素分類画像における画素に前記アルファマスクを施すことに基づき、前記オクルージョンオブジェクトにオクルージョンされた前記仮想オブジェクトが収まっている拡張現実画像の最終構成をレンダリングすること(906)と、
を含む工程を行わせる、コンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、メモリおよびデバイスのトラッキングを使用して拡張現実におけるオクルージョンをハンドリングするための方法と装置に関するものである。
【背景技術】
【0002】
複合現実(MR:Mixed Reality)を含む拡張現実(AR:Augmented Reality)は、その普及が著しく進んでいる画期的な技術である。初期のAR/MRデバイスは非常に高価で、商業利用を想定したものではなかった(例えば、マイクロソフト社のホロレンズ)。しかし、新たなMRアプリケーション(例えば、Froggipedia、BBC Civilisations AR、Sketch AR、Mondly、Pokemon Go、Ink Hunter、WallaMe、Google TranslateなどのAndroidやiOS向けのARアプリケーション)を開発したり、スマートフォン向けの手頃なマウントヘッドディスプレイ(例えば、Holokit)を販売したり、あるいは、さらには実際に着用するヘッドマウントディスプレイ(例えば、nReal)を開発したりする新しい新興企業や大企業が急速に増えてきている。また、スマートフォンには、AR体験を強化するためのハードウェアの人工知能(AI:Artificial Intelligence)機能が組み込まれてきている。例えば、新しいiPhone Xには、より没入感のあるAR体験を可能にする目的で、AIアクセラレータが搭載されている。
【発明の概要】
【0003】
いくつかの実施形態により、デバイスによって行われる拡張現実におけるオクルージョンハンドリングのための方法を提供する。このデバイスでは、一フレームの少なくとも1つの画素分類画像を生成する工程を行うことができる。少なくとも1つの画素分類画像には、オクルージョンオブジェクトが含まれ、その画素が前景画素として分類される前景、その画素が背景画素として分類される背景、および未知の画素がある場合がある。少なくとも1つの画素分類画像を生成することには、(1)オクルージョンオブジェクトが収まっている画像の画素のうちの1つまたは複数のそれぞれに対する初期前景画素確率画像を前景色確率分布から計算し、前記画素のうちの1つまたは複数のそれぞれに対する初期背景画素確率画像を、前記画素のうちの1つまたは複数の前記それぞれが動的であるかまたは静的であるかの確率に基づき計算することと、(2)前記オクルージョンオブジェクトの奥行き情報に基づき、オクルージョンオブジェクトの正規化奥行き画像を計算することと、が含まれ得る。デバイスではさらに、アルファマスクを得て、未知の画素の色を決定することに基づき、少なくとも1つの画素分類画像の仮想オブジェクトと前景とを融合させるアルファマッティングプロセスを開始する工程を行うことができる。デバイスではさらに、少なくとも1つの画素分類画像における画素にアルファマスクを施すのに基づき、オクルージョンオブジェクトにオクルージョンされた仮想オブジェクトが収まっている拡張現実画像の最終構成をレンダリングする工程を行うことができる。
【0004】
デバイス、コンピュータ製品、およびコンピュータプログラムに対応する発明概念の実施形態も提供する。
【0005】
当業者には、以下の図面および発明を実施するための形態を考察すれば、実施形態によるその他のシステム、コンピュータプログラム製品、および方法が明らかであるか、明らかになるであろう。このようなさらなるシステム、コンピュータプログラム製品、および方法のすべてが本明細書の範囲に含まれ、付随する実施形態により保護される、ということとする。
【0006】
以下の考えられ得る問題の説明は、本開示の一部との現在の認識であり、これまで他者が分かっているものとして受け取るべきではない。拡張現実におけるオクルージョンをハンドリングする手法の中には、ロバストではないものがあり得る。手法によっては、劣悪な環境条件(例えば、低照度条件、不十分な色コントラストなど)や動的な場面では、ロバスト性を欠くことがあり得る。
【0007】
したがって、拡張現実におけるオクルージョンをハンドリングする工程の改善が求められる。
【0008】
本開示の1つまたは複数の実施形態としては、色情報および奥行き情報の履歴を含む、デバイスおよびそのデバイスのポーズからの色と奥行きの情報を使用して、拡張現実におけるオクルージョンをハンドリングするための方法を挙げることができる。1つまたは複数の実施形態では、ある場面における背景および静的オブジェクトの色特性および形状特性を学習することができる。1つまたは複数の実施形態において、学習対象の情報は、同じ場面におけるそれまでのセッションからも得ることができ、それにより、学習工程にさらに情報を加えることができる。学習した情報により、少なくとも正確さ、ロバスト性、およびコンピューティングリソースの面で、前景および/または背景の分類を向上させることができる。1つまたは複数の実施形態によって与えられ得る工程の利点には、正確さ、質、およびリアルタイムパフォーマンスの向上に向けたデバイスの追跡対象ポーズに従った特徴学習に対してそれまでのフレームの履歴を使用することが挙げられる。したがって、奥行き測定値および3次元再構成環境を考慮することにより、1つまたは複数の実施形態を、低照度および低コントラストの場面条件下でよりロバストにすることができる。
【0009】
本開示をさらに理解するのに含まれ、本出願に組み込まれ、その一部を成す添付図面には発明概念のいくつかの非限定的な実施形態を示す。
【図面の簡単な説明】
【0010】
図1】本開示のいくつかの実施形態による、拡張現実におけるオクルージョンをハンドリングするデバイスに通信可能に接続されたネットワークを示す。
図2】オクルージョンハンドリングを行わずに配置した仮想コンテンツを示す。
図3】本開示のいくつかの実施形態による、オクルージョンハンドリングを実施した同じ場面を示す。
図4】本開示のいくつかの実施形態による、デバイスを示すブロック図である。
図5A】本開示のいくつかの実施形態による、レンダリングされた仮想コンテンツの例を示す。
図5B】本開示のいくつかの実施形態による、仮想コンテンツの2次元奥行き画像の表示を示す。
図6A】本開示のいくつかの実施形態による、オクルージングオブジェクトの原画像の例を示す。
図6B】本開示のいくつかの実施形態による、オクルージングオブジェクトの画素分類trimapの例を示す。
図7A】本開示のいくつかの実施形態による、正規化前景画像を示す。
図7B】本開示のいくつかの実施形態による、正規化背景画像を示す。
図8】本開示のいくつかの実施形態による、中央処理装置を示すブロック図である。
図9】本開示のいくつかの実施形態による、デバイスによって行われ得る工程を示すフローチャートである。
図10】本開示のいくつかの実施形態による、デバイスによって行われ得る工程を示すフローチャートである。
図11】本開示のいくつかの実施形態による、デバイスによって行われ得る工程を示すフローチャートである。
図12】本開示のいくつかの実施形態による、デバイスによって行われ得る工程を示すフローチャートである。
図13】本開示のいくつかの実施形態による、デバイスによって行われ得る工程を示すフローチャートである。
図14】本開示のいくつかの実施形態による、デバイスによって行われ得る工程を示すフローチャートである。
図15】本開示のいくつかの実施形態による、デバイスによって行われ得る工程を示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、添付図面を参照しながら様々な実施形態についてより詳しく説明する。それ以外の実施形態では、多くの様々な形態をとることができ、本明細書に記載の実施形態に限られると解釈されるべきではなく、むしろ、これらの実施形態は、当業者に発明の対象の範囲を伝えるために例として提供されるものである。発明を実施するための形態全体を通して、同じ要素には同じ番号が付いている。
【0012】
通常、本明細書で使用するすべての用語は、異なる意味が明確に示されかつ/または使用されている文脈から暗に示される場合を除き、関連する技術分野におけるその通常の意味に従って解釈されるものとする。要素、装置、構成要素、手段、ステップなどに触れる際には必ず、はっきりと他のことを述べていない限り、要素、装置、構成要素、手段、ステップなどの少なくとも1つの例のことを言うものとして公然と解釈されるものとする。本明細書に開示のいかなる方法のステップも、あるステップが別のステップに続くかまたはそれに先行するとはっきり記述されている、かつ/または、あるステップがそれ以外のステップに続くかまたはそれに先行するはずであると暗に示される場合を除き、開示した正にその順序で行われる必要はない。本明細書に開示の実施形態のいずれのいかなる特徴も、適宜、他のいかなる実施形態にも当てはめることができる。同様に、実施形態のいずれのいかなる利点も、他のいかなる実施形態にも当てはめることができ、その逆もまた然りである。本明細書に記載の実施形態の他の目的、特徴、および利点は、以下の発明を実施するための形態から明らかになるであろう。
【0013】
図1は、拡張現実におけるオクルージョンをハンドリングするデバイス(例えば、デバイス400a、デバイス400b、中央処理装置40、またはサーバ30(データベース35に通信可能に接続され得る))に通信可能に接続されたネットワーク20を示す。本明細書で使用する際、拡張現実(AR)には複合現実(MR)が含まれるが、これに限られるわけではない。
【0014】
図1の実施形態では、2つのデバイス400a、400b、中央処理装置40、およびサーバ30を示しているが、それ以外の実施形態は、これに限られるわけではない。例えば、1つのデバイス400が、スタンドアロンデバイスとして働いてもよく、または、ネットワーク20および/または別のデバイス(例えば、中央処理装置40またはサーバ30)に通信可能に接続されてもよい。その代わりにまたはさらに、複数のデバイス400(例えば、デバイス400aおよび400b)が、スタンドアロンデバイスとして働いてもよく、または、ネットワーク20および/または別のデバイス(例えば、中央処理装置40またはサーバ30)などに通信可能に接続されてもよい、などがある。
【0015】
AR/MRでは、リアルタイム場面認識、仮想現実世界とのインタラクション、およびオクルージョンなど、多くの問題が解決されていない。このような類の問題を上手く解決しないと、AR/MR技術は、仮想コンテンツが現実の場面から切り離されたように感じられると思われるので、完全な没入体感を与えない可能性がある。特に敏感なのはオクルージョンの場合であり、この場合、仮想コンテンツからの画素は、仮想コンテンツの前にある実際のオブジェクトに選択的にオクルージョンされる必要がある。図3は、仮想コンテンツ204の前にある実際のオブジェクト(手)202に選択的にオクルージョンされている仮想コンテンツ204を示す。オクルージョンが正しく処理されないと、ユーザが現実世界に対して仮想オブジェクトがどこに配置されているかを理解することが非常に困難になり得る。目標がインタラクティブな仮想場面を提供することではない場合でも、仮想コンテンツが正しく配置されていないように感じることがあり得るため、AR/MR体感が正しくないことがある。図2は、仮想コンテンツ204が正しく配置されていない例であり、仮想コンテンツ204が手202の前に浮き上がっているように見える。
【0016】
拡張現実の際のオクルージョンをハンドリングすることは、難しい問題であり得る(例えば、2018年1月28日、「Why is Occlusion in Augmented Reality So Hard?」、hackernoon.com/why-is-occlusion-in-augmented-reality-so-hard-7bc8041607f9を参照のこと)。学界には、またFacebookやGoogleが挙げられる産業界には、この問題を解決しようとするいくつかのグループがある。例えば、Appleは、新しいバージョンのARKitをリリースし、その中でオクルージョンの問題に取り組もうとしている。しかし、例えば、取り組みが、リアルタイムで十分ロバストに行われないことがあり、かつ/またはオクルージョンオブジェクトが大きなオブジェクト(例えば、人間の全身)である可能性があるため、取り組みにより問題を適切に解決できない場合がある。オクルージョンが、デバイスディスプレイのフレームレートでリアルタイムに行われ、実際のコンテンツを与えられた仮想コンテンツを「マスク」する、ということが好ましい場合があり、この場合、両方のコンテンツが動的であってもよい。アルゴリズムでは、仮想コンテンツのどの部分が背景で、どの部分が前景かを理解し、それにより、仮想コンテンツに配置された前景の画素をオクルージョンするマスクを構築し、施す必要があり得る。AR体感を最適にするには、マスクが実際の背景/前景のエッジと完全に一致する必要があり得る。オクルージョンの場合、品質とリアルタイムの制約が重要になり得る。しかし、センサデータにはノイズが多く、仮想コンテンツと実際のコンテンツが動的で、様々な形状や色である可能性があるため、これは、かなり困難な問題と考えられ得る。
【0017】
この問題に対処するために、奥行きカメラを使用して、また最近では1つだけの赤、緑、青(RGB:Red、Green、Blue)カメラ(例えば、スマートフォン)を使用して、静止した大きなオブジェクトを対象に、いくつかの取り組みが試みられてきたようである。しかし、例えば、ユーザの手で操られている仮想玩具をオクルージョンするといった動的な環境に対するこの問題の解決は、未解決のままである。
【0018】
本明細書で使用される際、デバイスとは、拡張現実におけるオクルージョンハンドリングのいかなるデバイスも指すものである。例えば、デバイスとしては、通信デバイス、携帯電話、スマートフォン、ユーザ機器(UE:User Equipment)、医療器具、メディアプレーヤ、カメラ、または種類を問わず家電、例えば、テレビ、ラジオ、照明器具、タブレットコンピュータ、ラップトップコンピュータ、またはPCであるが、それらに限られるわけではないものを挙げることができるが、これらに限るわけではない。デバイスは、無線または有線接続を介して、音声および/またはデータを伝えることが可能な、ポータブル、ポケット収納型、ハンドヘルド、コンピュータ内蔵型、または車両搭載型のモバイルデバイスであってもよい。デバイスは、拡張現実デバイスまたはクラウドベースの中央処理装置であってもよいが、これらに限られるわけではない。
【0019】
本明細書で使用される際、クラウドベースの中央処理装置とは、通信ネットワークにおける他のネットワークノードや機器と直にまたは間接に通信して、拡張現実におけるオクルージョンハンドリングを可能にしかつ/またはもたらし、かつ/または通信ネットワークにおいて他の機能(例えば、管理)を果たすのが可能である、果たすように構成された、果たすように配置された、かつ/または果たすように使用できる機器のことである。クラウドベースの中央処理装置の例としては、サーバ、基地局(BS:Base Station)(例えば、無線基地局、Node B、エボルブドノードB(eNB:evolved Node B)、gNode B(例えば、ネットワークコンピューティングノード201などを含む)、アクセスポイント(AP:Access Point)(例えば、無線アクセスポイント)などが挙げられるが、これらに限られるわけではない。基地局は、基地局が与えるカバレッジの範囲(あるいは、言い換えれば、その送信電力レベル)に基づいて分類され得、フェムト基地局、ピコ基地局、マイクロ基地局、またはマクロ基地局とも呼ばれる場合がある。基地局は、中継ノードまたはリレーを制御するリレードナーノードであってもよい。クラウドベースの中央処理装置は、集中デジタルユニットおよび/またはリモート無線ヘッド(RRH: Remote Radio Head)と呼ばれることもあるリモートラジオユニット(RRU:Remote Radio Unit)などの分散型無線基地局の1つまたは複数の(またはすべての)部分も挙げることができる。このようなリモートラジオユニットは、アンテナ一体型無線機としてアンテナと一体化していてもよく、一体化していなくてもよい。分散型無線基地局の部品は、分散型アンテナシステム(DAS:Distributed Antenna System)におけるノードと呼ばれることもある。クラウドベースの中央処理装置のさらに別の例としては、MSR BSなどのマルチスタンダード無線(MSR:Multi-Standard Radio)機器、無線ネットワークコントローラ(RNC:Radio Network Controller)または基地局コントローラ(BSC: Base Station Controller)などのネットワークコントローラ、基地トランシーバ局(BTS:Base Transceiver Station)、送信ポイント、送信ノード、マルチセル/マルチキャスト協調エンティティ(MCE:Multi-Cell/Multicast Coordination Entities)、コアネットワークノード(例えば、MSC、MME)、O&Mノード、OSSノード、SONノード、測位ノード(例えば、E-SMLC)、および/またはMDTが挙げられる。別の例として、クラウドベースの中央処理装置は、仮想ネットワークノードであり得る。しかし、より一般的には、クラウドベースの中央処理デバイスは、拡張現実(複合現実を含む)におけるオクルージョンハンドリングを可能にし、かつ/またはもたらすことが可能である、もたらすように構成された、もたらすように配置された、かつ/またはもたらすように使用できる適切ないかなるデバイス(またはデバイス群)にも相当するものであり得る。
【0020】
図4は、いくつかの実施形態により構成されている構成要素で成るデバイス400を示すブロック図である。デバイス400は、少なくとも1つのプロセッサ410(プロセッサとも言う)、少なくとも1つのメモリ412(メモリとも言う)、およびデバイス(例えば、他のデバイス400b、中央処理装置40、サーバ30など)との通信をもたらすように構成された無線インターフェース410で構成されている。プロセッサ410としては、1つまたは複数のネットワークにわたって配置または分散され得る汎用プロセッサおよび/または専用プロセッサ(例えば、マイクロプロセッサおよび/またはデジタル信号プロセッサ)などの1つまたは複数のデータ処理回路を挙げることができる。コンピュータ可読媒体として以下に述べるメモリ412は、プロセッサ410によって実行されると、プロセッサ410に本明細書に開示の実施形態による工程を行わせるコンピュータ可読プログラムコードを格納する。他の実施形態によれば、プロセッサ410は、別個のメモリがなくても済むように、メモリを含むと規定され得る。デバイス400としては、プロセッサ410によって実行されると、プロセッサ410に本明細書に開示の実施形態による工程を行わせる、メモリ412内の機能モジュール414も挙げることができる。デバイス400としては、出力インターフェース、例えば、ディスプレイ440と、RGBセンサ430(例えば、RGBカメラ)および奥行きセンサ450などの1つまたは複数のセンサと、なども挙げることができる。
【0021】
以下に述べるが、手法の種類に応じて、いくつかの手法の場合のあり得る問題が分類され得る。
【0022】
モデルに基づく方法に関するあり得る問題点として、以下のようなものが考えられ得る。
【0023】
モデルに基づく方法は、オクルージョンを行うのに、場面における実際のオブジェクトのコンピュータ支援設計(CAD:Computer-Aided Design)モデルに頼る可能性がある。通常、モデルに基づく方法では、実際のオブジェクトのポーズがリアルタイムで追跡され、その仮想双子のポーズがカメラに対して更新される。それにより、レンダリングアプリケーション(例えば、Unity)が自動的にオクルージョンを処理することができる。この手法は、構造化された、分かっている場面(例えば、産業製造ARアプリケーション)では上手く行うことができるが、事前情報をかなり多く必要とする場合があるため、この手法を一般化することができない。さらに、オブジェクトを正確に追跡する必要があるが、これは常に可能であるとは限らず、計算面で無理なく使うことができない可能性がある。
【0024】
オブジェクトに基づく方法に関するあり得る問題として、以下を挙げることができる。
【0025】
オブジェクトに基づく方法では、オブジェクトトラッキング方法も必要となり得る。オブジェクトに基づく方法におけるトラッキングでは、3次元(3D: Three Dimensional)ポーズがなくても済むことがあり、2次元(2D:Two Dimensional)位置トラッキングを使用することができるため、簡単にすることができる。通常、オブジェクトに基づく方法では、ユーザが場面におけるオブジェクトを選択し、オブジェクトの輪郭が手作業で与えられ得る。それにより、この輪郭の位置と形状は、フレームごとに更新され得る。トラッキング工程は、モデルに基づく方法におけるものよりも簡単であり得るが、オブジェクトに基づく方法では、人間の入力を必要とする場合があり、3Dポーズ認識がなく、オクルージョンが、追跡されるオブジェクトにのみ施される。したがって、オブジェクトに基づく方法は、よくあるケースであり得る未知の場面には適さないことがあり得る。
【0026】
奥行きに基づく方法に関するあり得る問題として、以下を挙げることができる。
【0027】
奥行きに基づく方法というのは、より一般的で拡張性があり得る。通常、奥行きに基づく方法は、奥行き情報と色情報の両方に頼り、どの画素が仮想コンテンツの前にあるかを検出し、それにより、前景/背景のセグメント化を行い、実際の画素と仮想画素とを適切に融合させようとすることであり得る。通常、奥行きに基づく方法は、未知の環境において上手く行くと考えられ得るが、次の2つの主要な問題を含む可能性があり、(1)奥行きに基づく方法では、低照度条件または色コントラスト条件においてロバスト性を欠く可能性があり、(2)奥行きに基づく方法では、高品質の結果を得るのに、計算量の点で高価になる(例えば、GPU実装形態しかリアルタイムパフォーマンスを達成できない)可能性がある。
【0028】
本開示の様々な実施形態において、少なくとも1つの画素分類画像が、色画像、奥行き画像、学習した3D環境構造、および環境のダイナミクスに基づいて計算され得る。少なくとも1つの画素分類画像を使用して、拡張現実デバイスに表示される仮想オブジェクトのオクルージョンを行うことができる。本明細書で使用される際、画素分類画像とは、各色が群に相当する複数の色を包む少なくとも1つの画像のことである。例えば、3つの画素分類画像は、それぞれが3つの色のうちの1つを含んでもよく、各色がそれぞれ、背景画素群、前景画素群、未知の画素群に相当する(本明細書では画素分類trimapともする)。その代わりに、この例では、背景画素群、前景画素群、および未知の画素群に相当する3つの色が、画素分類画像1つのみに含まれ得る。本開示の様々な実施形態を、画素分類trimapを含むものとして説明しているが、この様々な実施形態は、そのように限られるものではなく、1つの(またはそれ以外の個数の)画素分類画像を含んでもよい。
【0029】
本開示の様々な実施形態において、RGBデータが可能なセンサ430(例えば、RGBカメラ)を含むデバイス(例えば、デバイス400)を提供することができる。デバイスは、奥行きデータを取り込むセンサ450(例えば、RGBデータを奥行きデータに変換することができる奥行きカメラまたはアルゴリズム)も含み得る。本開示のデバイスの様々な実施形態を、RGBデータを取り込むのと奥行きデータを取り込むのとで別々のセンサを備えるものとして説明しているが、様々な実施形態は、そのように限られるものではなく、RGBデータおよび奥行きデータを取り込むセンサを1つだけ含んでもよい。様々な実施形態のデバイスは、処理装置と、AR/MRレンダリング(本明細書では処理ともする)アプリケーションとをさらに含み得る。レンダリングアプリケーションは、例えば、部屋における具体的な位置、向きで仮想オブジェクトを表示することができる。
【0030】
本開示で使用する際、デバイスのセンサのポーズは、デバイスのポーズとしている。
【0031】
本開示の様々な実施形態において、デバイスのセンサ(例えば、デバイスのカメラ)の視野に入る仮想オブジェクト1つのみに、少なくとも以下の工程が適用され得る。デバイスによって行われる工程としては、デバイスのポーズを決定すること、仮想コンテンツの色フレームおよび奥行きフレームを決定することと、を挙げることができる。デバイスによって行われるさらなる工程としては、初期奥行きに基づく前景および/または背景セグメント化を推定することと、画素分類trimpを自動的に生成することと、を挙げることができる。デバイスによって行われるさらなる工程としては、アルファマッティングアルゴリズムを適用して、仮想コンテンツと前景とを融合させることを挙げることができる。デバイスによって行われるさらなる工程としては、最終構成をレンダリングすることを挙げることができる。
【0032】
ここで、これらの各工程について、さらに説明することにする。
【0033】
デバイスのポーズの決定は、例えば、デバイスのソフトウェア開発キット(SDK:Software Development Kit )および/またはオペレーティングシステム(OS:Operating System)アプリケーションプログラムインターフェース(API:Application Program Interface)から得られ得る。
【0034】
ここで、仮想コンテンツの色フレームおよび奥行きフレームの決定について説明することにする。例えば、仮想コンテンツの2次元(2D)色画像表示と2次元奥行き画像表示が得られ得る。これは、AR/MRアプリケーションから、例えばUnityから直に得られ得る。2D奥行き画像の場合、(x、y)値が画素の場所を表す一方、z値が対応する画素の奥行き値を表し得る。図5Aおよび図5Bには、仮想コンテンツの3次元(3D)色奥行きマップの表示(図5A)、また2D奥行き画像のグレースケール表示(図5B)を示す。図5Aを見てみると、レンダリングされた仮想コンテンツの例が示されている。図5Bを見てみると、アルゴリズムに入力される情報の例が示されており、図5Bの画素が、さらに処理され得るRGB/奥行き入力からの画素をマスクする、というアルゴリズムに入力される情報の例が示されている。
【0035】
ここで、新しい色フレーム情報と対応する奥行き情報とを得て、位置を揃えることについて説明することにする。新しいフレームは、RGBカメラ(センサ)と奥行きセンサの両方によって取得され得る。奥行きフレームは、奥行き画素がRGB画素と位置が揃うように変換され得る。これは、当業者には明らかであろうが、両方のカメラ(センサ)からの固有パラメータおよび外部パラメータを使用してなされ得る。データはまた、いくつかのカメラ、例えば、Intel Realsense D435iカメラの場合のように、SDKから直に位置合わせされ得る。
【0036】
次に、初期の奥行きに基づく前景および/または背景のセグメント化を推定することについて説明する。上述した仮想コンテンツの色および奥行きフレームを決定することから与えられる情報を使用して、奥行きが仮想コンテンツとカメラとの間の距離より小さい画素を前景として分類し、その他の画素を背景として分類してもよい。さらに、上述の仮想コンテンツの色フレームおよび奥行きフレームを決定する際に与えられた形状から外れる画素がある場合、その画素が仮想コンテンツよりも近いかどうかに関わらず、そのような画素を背景として分類するようにしてもよい。このようにすることで、余計な無駄な処理を省くことができる場合がある。
【0037】
上述した仮想コンテンツの色フレームおよび奥行きフレームを決定するために与えられた仮想コンテンツの形状を持つマスクをMとし、dを奥行き画像、pを元のRGBフレームからの画素、Dを仮想コンテンツとカメラとの距離とすると、数学的には前景(F: Foreground )と背景(B:Background )の分割画像は、以下の数式であり得る。
【0038】
セグメントFおよびBから、例えば、それぞれ、d(p)=Fまたはd(p)=Bのとき、FとBのセグメントに対する画素を含む、2つの異なる画像SおよびSを得ることができる。これらの2つの画像を用いて、色確率分布PとPを求めることができる。色確率を求める方法の1つは、SとSのヒストグラムを計算することである。
【0039】
図9は、本開示の様々な実施形態による、拡張現実におけるオクルージョンハンドリングのためのデバイスによって行うことができる工程のフローチャートを示す。図9を参照すると、工程および関連する方法は、一フレームの少なくとも1つの画素分類画像を生成すること(902)を含む。少なくとも1つの画素分類画像は、オクルージョンオブジェクト、前景画素として分類された画素を有する前景、背景画素として分類された画素を有する背景、および未知の画素を含む。生成すること(902)は、(1)前景色確率分布から、オクルージョンオブジェクトを含む画像の1つまたは複数の画素のそれぞれについて初期前景画素確率画像を計算し、1つまたは複数の画素のそれぞれが静的または動的である確率に基づいて、1つまたは複数の画素のそれぞれについて初期背景画素確率画像を計算し、(2)オクルージョンオブジェクトの奥行き情報に基づいて、オクルージョンオブジェクトの正規化奥行き画像を計算することを含む。工程は、未知の画素の色を決定することに基づいて、少なくとも1つの画素分類画像の仮想オブジェクトと前景とをブレンドするためのアルファマスクを得るために、アルファマット処理を開始すること(904)をさらに含む。工程は、少なくとも1つの画素分類画像の画素にアルファマスクを適用することに基づいて、オクルージングオブジェクトによってオクルージョンされた仮想オブジェクトを含む拡張現実画像の最終構成をレンダリングすること(906)をさらに含む。
【0040】
次に、画素分類trimapを自動的に生成することについて説明する。様々な実施形態において、trimapは、図6Bに示される例に示されるように、画像を3つのクラスタに分類し得る。図6Bを参照すると、生成されたtrimapは、白で示された前景F画素606、パターン化された線で示された背景B画素608、および灰色で示された未知のU画素610で示されている。未知の画素(U)610は、画素がBまたはF画素であるという確信が欠けている画素であり得る。一般に、オクルージョンの問題に対する適切なtrimapは、現実世界のオクルージョンオブジェクトの実エッジをカバーし得る。現実世界のオブジェクト602の原画像を図6Aに示す。そうでない場合、いくつかの画素が誤って分類され、仮想オブジェクトの誤ったオクルージョンを生じさせ、否定的なユーザ体感を生じさせる可能性がある。さらに、後述するように、アルファマットと呼ばれるそれぞれの未知の画素にわたる画素ごとの処理が行われ得、したがって、未知の画素の数が少ないほど、方法全体が高速化され得る。
【0041】
画素分類trimap(trimapとも呼ばれる)を生成する以下の例示的な実施形態は、trimapの両方の側面を改善または最適化し得る。
【0042】
第1の例示的な実施形態において、初期前景画素確率画像Iおよび初期背景画素確率画像Iを計算することが行われ得る。初期前景画素確率画像Iおよび初期背景画素確率画像Iは、初期奥行きセグメント化、それまでに学習した背景情報、再構成された3D環境および以下に述べる画素ダイナミクスに基づいて計算され得る。
【0043】
各画素が背景と前景の一部である確率が計算され得る。
【0044】
前景の場合、各画素が前景の一部である確率Pは、これらの確率をすべて集めた画像Iを得ることによって、直接利用され得る。I(p)=P(p)となる。
【0045】
前景色確率分布から画像の1つまたは複数の画素のそれぞれについて、初期前景画素確率画像を計算する際のデバイスによる対応する工程は、確率分布に従って1つまたは複数の画素のそれぞれが前景の一部となる確率を抽出することを含むことができる。例えば、I(p)=P(p)を計算し、ここで、Iを初期前景画素確率画像、Pを1つまたは複数の前景画素のそれぞれの色確率分布とする。
【0046】
実施形態によっては、背景の場合、少なくとも3つの異なる状況が存在し得る。まず、3D再構成された背景情報がある場合、3D再構成された背景情報は、画素がそのような背景の一部である確率を推定するために使用され得る。
【0047】
1つまたは複数の画素のそれぞれが静的または動的である確率に基づいて、1つまたは複数の画素のそれぞれに対する初期背景画素確率画像を計算する際のデバイスによる対応する工程は、3次元再構成背景を用いて、画像の1つまたは複数の画素のそれぞれが背景画素である初期確率を推定する。
【0048】
実施形態によっては、1つまたは複数の前景画素が動的オブジェクトに対応すると識別された場合、1つまたは複数の画素のそれぞれに対する初期背景画素確率画像は、それまでに学習した背景確率分布に基づいて計算される。
【0049】
実施形態によっては、初期背景画素確率は、学習工程からの3次元再構成背景出力から抽出される。
【0050】
背景が再構成されていない場合、このような確率を推定する少なくとも2つの他の考えられ得る選択肢があり得る。ある場合では、背景確率分布(Lとする)が学習されており、画素が十分な確実性で静的オブジェクトに対応すると見なされていれば、Lを使用して、このような画素が背景の一部であることの確率を引き出すことができる。デバイスによる対応する工程としては、デバイスのセンサからの色データまたは奥行きデータからの再構成アルゴリズムを適用することによって、3次元再構成背景を得ることが挙げられる。
【0051】
しかし、画素が静的オブジェクトまたは動的オブジェクトに対応することをアルゴリズムが十分に確実でなければ、Pが直に使用され得る。これは、以下のようにまとめることができる。
ここで、Vは、学習工程の出力としての3D再構成背景(ポイントクラウド/メッシュ)のことであり、Lは、考えられ得る学習した背景確率分布のことであり、Pdy(S)は、前景セグメント化画素が動的である確率であり、Tは、任意の規定の閾値である。
【0052】
画素のうちの1つまたは複数のそれぞれに対して初期背景画素確率画像を計算する際のデバイスによる対応する工程は、それまでに学習した背景確率分布Lが何もなければ、または前景セグメント化画素が動的である確率が規定の閾値Tを下回っていれば、色分布Pbを使用して計算される。
【0053】
デバイスによる対応する工程としては、画素のうちの1つまたは複数が動的オブジェクトに対応するとして見なされている場合、それまでに学習した背景確率分布に基づき、画素のうちの1つまたは複数のそれぞれに対して初期背景画素確率画像を計算することを挙げることができる。
【0054】
デバイスによる対応する工程としてはさらに、学習工程から出力された3次元再構成背景から初期背景画素確率を引き出すことを挙げることができる。
【0055】
色データからのモーションからの多視点立体または多視点構造などの再構成アルゴリズムまたは奥行きデータからの奥行きに基づくSLAMアルゴリズムを適用することによって、3D再構成背景が得られ得る。
【0056】
3次元再構成背景が得られている場合のデバイスによる対応する工程としては、デバイスのセンサからの色データまたは奥行きデータからの再構成アルゴリズムを適用することが挙げられる。Vが使用可能であれば、3Dポイントクラウド/メッシュが仮想場面(例えば、ユニティにおける)の一部として含まれ得る。2D奥行き画像が、仮想コンテンツの色フレームおよび奥行きフレームを決定する上に述べているこの3D表示から得られ得る。オクルージョンされるべき仮想オブジェクトの背後にある画素は、二値画像Vと成ることによって、背景として設定され得る。確率Pdyが途切れのないフレームにおける画素の位置の変化を追跡することによって推定されてもよい、または画素が属するのがどの類のオブジェクトなのかをオブジェクト検出方法またはi測定を経て意味上理解することによって推定されてもよい。ここで、Pdyを閾値として使用して、画素確率が背景または前景の一部であると規定する、ということに留意のこと。
【0057】
前景セグメント化画素が動的である確率を推定する際のデバイスによる対応する工程としては、画像の途切れのないフレームで背景画素のうちの1つまたは複数のそれぞれの位置の変化を追跡することと、背景画素のうちのそれぞれ1つまたは複数が属するある類のオブジェクトをオブジェクト検出工程を経て意味上理解することと、画像から測定値を得ることと、が挙げられる。
【0058】
画素のうちの1つまたは複数のそれぞれが静的であるかまたは動的であるかの確率に基づき、画素のうちの1つまたは複数のそれぞれに対して初期背景画素確率画像を計算する際にデバイスによる対応する工程としては、1つまたは複数の画素のそれぞれが、静的オブジェクトに対応するとして見なされる確率閾値を満たすかどうかを判断することを挙げることができる。この工程としてはさらに、学習した背景確率分布を使用して、1つまたは複数の画素のそれぞれが背景の一部であることの確率を推定することを挙げることができる。
【0059】
第2の例示的な実施形態において、奥行き情報に基づく正規化奥行き画像が計算され得る。オクルージョン要素(例えば、図6Aにおける手)の奥行き情報も使用されるが、それは、奥行き情報と色確率情報の両方の統合を可能にするように最初に正規化される。正規化奥行き画像は、以下とすることができる。
ここで、dは、画素pの正規化間隔であり、Dmaxは、センサによって測定された最大間隔であり、aは、チューニングされた任意の値である。aのこれより大きな値では、非常に近いが仮想オブジェクトの背後にある画素の値は、1に近い値d(p)になるが、画素のうちのそれ以外の画素の値は、非常に低い正規化奥行き値である可能性がある。これにより、起こり得る奥行き推定誤りを補うのに、仮想オブジェクトに奥行きが近い画素がより重要視される場合がある。
【0060】
オクルージョンオブジェクトの奥行き情報に基づきオクルージョンオブジェクトの正規化奥行き画像を計算する際にデバイスによる対応する工程としては、その対応する奥行き値が仮想オブジェクトまでの間隔Dよりも小さく、画素のうちのそれ以外の画素の値が、Dにより近いそれよりも高い値を1つまたは複数の画素に割り当てる指数関数によって与えられた0~1である、1つまたは複数の画素を1に設定することが挙げられる。
【0061】
第3の例示的な実施形態において、初期背景画素確率、初期前景画素確率、正規化奥行き画像、および画素ダイナミクスに基づく重み付き背景画素確率画像I および重み付き前景画素確率画像I が計算され得る。画像ごとに任意の重みを使用する前に、すべての画像がまとめられ得る。確実に最終画素値が飽和しないようにするためには、これらの重みの総和を1にすることができる。これらの重みは、その場面、デバイス、およびセンサの特性に従って決めてもよい。例えば、かなりの動的な場面では、Pdyはより静的な場面におけるよりも信用できない場合がある。同じことが、正規化奥行き情報にも当てはまる可能性がある。言い換えれば、どれくらい正規化奥行き情報を信用するかは、奥行きセンサの特性により決まることがあり得る。例えば、低ノイズ、高精度の奥行き測定の非常に優れた奥行きカメラでは、奥行き情報の重みであり、またそうでなければより低い値の重みであるwに、より高い値が割り当てられ得る。同様に、照度条件が、RGBセンサからの測定値が良いか良くないかに影響するので、照度条件に応じて、RGB情報Iの重みが、増やされるか減らされ得る。それ故、このようなロジックを把握する1つのやり方は、以下を通してとすることができる。
(p)=w ・I(p)+w ・d(p)+wdy ・Pdy(p)
(p)=w ・I(p)+w ・(1-d(p))+wdy ・(1-Pdy(p))
ここで、w +w +wdy =w +w +wdy =1
図7Aには出力画像I の例を示し、図7Bには出力画像I の例を示す。
【0062】
dyの値が画素値を計算するのに直に使用され、上に述べた第1の例示的な実施形態に見られるように閾値としては使用されないことに留意すること。
【0063】
少なくとも1つの画素分類画像を生成する(902)際にデバイスによる対応する工程としてはさらに、初期背景確率画像、初期前景画素確率画像、正規化奥行き画像、および1つまたは複数の画素の色と奥行きの可変性に基づき、重み付き背景画素確率画像および重み付き前景画素確率画像を計算することを挙げることができる。
【0064】
第4の例示的な実施形態において、trimapとして使用される最終正規化背景I 画素確率および最終正規化前景I 画素確率が計算され得る。画素分類trimapを生成する(902)際にデバイスによる対応する工程としてはさらに、画素のうちの1つまたは複数のそれぞれが画像における前景としてまたは背景として分類されることの確率を推定することと、画素のうちの1つまたは複数のそれぞれが規定の閾値よりも高いという推定に基づき、画像における画素のうちの1つまたは複数のそれぞれを前景として分類することと、前景として分類されない画像における画素のうちの1つまたは複数のそれぞれのそれ以外の画素に対し、画素のうちの1つまたは複数のそれぞれのそれ以外の画素を背景として分類することと、に基づき、正規化背景画素確率画像および正規化前景画素確率画像を計算することを挙げることができる。工程としてはさらに、前景として分類した画素によって形成された画像の前景域のエッジを計算して拡張することに基づき、未知の画素を確認することを挙げることができる。
【0065】
画素pが前景としてまたは背景として分類される確率が、原画像における各画素ごとに推定され得る。
【0066】
その値I (p)が任意の閾値Tよりも高い画素は、前景として分類されてもよく、この画素のうちのそれ以外の画素は、背景として分類されてもよい。
【0067】
この前景域のエッジが、計算され、膨張カーネルを使用して拡張され得る。このカーネルのサイズNxNは、この画素の分類がすでに改善されているすなわち最適化されていると、小さくなり得る(N~7)。拡張エッジは、最終trimapの未知のU画素であると考えられ得る。
【0068】
この工程の出力は、背景画像がI であり、前景画像がI であり、未知の画素がUであるtrimapである。図7Aには、前景画像I を示し、図7Bには、背景画像I を示す。
【0069】
実施形態によっては、パラメータw 、w 、wdy 、w 、w 、wdy は、その場面のそのときの特性、例えば、照度条件、奥行きセンサノイズ、コントラストなどに応じてランタイム中に動的に変わる可能性がある。
【0070】
画像において、画素のうちの1つまたは複数のそれぞれが前景または背景として分類されることの確率を推定するデバイスによる対応する工程は、重み付き前景画素確率画像および重み付き背景画素確率画像を使用して計算される。重み付き前景画素確率画像および重み付き背景画素確率画像を得るのに使用される重みは、画像の特性に基づき動的に変わる可能性がある。
【0071】
ここで、様々な実施形態により仮想コンテンツと前景とを融合させるのにアルファマッティングアルゴリズムを適用することを述べることにする。アルファマッティング演算は、結果における正しい最終品質にとって重要である場合がある。この演算がないと、オクルージョンは、現実的に見えない可能性があり、AR体感の没入感が十分ではない可能性がある。この演算の目標は、このような画素と仮想画素との融合ができる限り現実的に行われるように未知U画素の最終の色を確認することであり得る。各画素p’の最終の色は、以下と定められ得る。
p’=α・p+(1-α)・p
ここで、アルファαは、アルファマッティングアルゴリズムにより計算したpのアルファチャンネルに相当し、pは、対応する仮想画素である。アルファの値は、各未知の画素に対して計算され得る。
【0072】
アルファマスクαを得て、未知の画素の色を確認するのに基づき、少なくとも1つの画素分類画像の仮想オブジェクトと前景とを融合させるアルファマッティングプロセスを開始する(904)デバイスによる対応する工程としては、1つまたは複数の未知の画素のそれぞれに対するアルファチャンネルを計算し、反転アルファマスクを使用して、対応する仮想画素を加えることを挙げることができる。例えば、以下の通りである。
p’=α・p+(1-α)・p
ここで、p’は、未知の画素のうちの1つまたは複数のそれぞれの色であり、α・pは、未知の画素のうちの1つまたは複数のそれぞれに対してアルファマッティングプロセスにより計算したpのアルファチャンネルであり、pは、対応する仮想画素である。
【0073】
ある実施形態では、生成されたtrimapおよび元の色フレームが、当業者には分かるようなアルファマッティングアルゴリズムへの入力として使用され得る。この工程は、デバイスの中で進行し得る。デバイスによる対応する工程では、画素分類trimapおよび画像を、アルファマッティングプロセスへの入力として使用することができる。
【0074】
実施形態によっては、この工程は、満たすべき最終品質(リアルタイムパフォーマンスなど)よりも重要な他の目標のために飛ばされてもよい。例えば、ある実施形態では、デバイスに計算負荷またはエネルギー消費を減らす必要がある場合(例えば、デバイスのバッテリレベルが低い、過負荷CPUなど)、この工程は、リアルタイム要件を実現するのに、またはデバイスのバッテリ寿命を延ばすために無視されてもよい。この工程を適用するか否かを決めるのに、様々な閾値(例えば、バッテリレベル閾値、CPU使用量閾値など)が設定され得る。どのように上手くオクルージョンが行われているかを自動的に検出するやり方がない場合(例えば、実物の真の奥行き値へのアクセスが何もないため)、この工程を飛ばすことは、ユーザ判断の対象となり得る。
【0075】
ある実施形態では、この工程が適用されなければ、前景画素をIと規定される画素と見なすことができ、この画素のすべてのアルファ値が最大値に設定される。デバイスによる対応する工程では、前景画素をlと規定される画素と規定し、Iと規定された画素のアルファ値が最大値に設定される。
【0076】
ここで、最終構成をレンダリングすることについて述べることとする。ある実施形態では、ARデバイスが非シースルー表示デバイス(例えば、スマートフォンとしてのハンドヘルドデバイス)である場合、最終構成は、反転マスク(1-α)を使用して、前景画素および仮想コンテンツに、上に述べたように推定したアルファマスクαを施し、背景画素に両方の工程からの結果を加えることによって、なされる。
【0077】
別の実施形態では、ARデバイスがシースルーデバイス(例えば、ホロレンズ)である場合、仮想コンテンツがレンダリングされ、反転(1-α)アルファマッティングマスクがオクルージョンマスクとして施される。
【0078】
少なくとも1つの画素分類画像における画素にアルファマスクを施すことに基づき、オクルージョンオブジェクトにオクルージョンされた仮想オブジェクトが収まっている拡張現実画像の最終構成をレンダリングする(906)際のデバイスによる対応する工程は、
デバイスが非シースルー表示デバイスの場合、反転アルファマスク(1-α)を使用して、少なくとも1つの画素分類画像の前景画素および仮想オブジェクトにアルファマスクαを施し、少なくとも1つの画素分類画像の背景画素にその結果を加えることと、
デバイスがシースルーデバイスの場合、少なくとも1つの画素分類画像において、仮想オブジェクトをレンダリングし、反転アルファマスク(1-α)をオクルージョンマスクとして施すことと、で成る。
【0079】
ここで、また別の例示的な実施形態について述べることにする。
【0080】
ある実施形態では、デバイスの追跡対象ポーズに従ったフレーム情報が処理、保存される。処理すべきオクルージョンが何もないと判断された場合、後処理に場面全体が使用され、保存される。それに対して、trimapおよびアルファマットが推定されていれば、背景として最終的に分類された画素のみが保存される。これをアルゴリズムの次の繰り返しで使用して、上に述べた画素分類trimapを生成することができる。
【0081】
図9を見てみると、デバイスによる対応する工程としては、最終構成のレンダリングに向けてオクルージョンが何も処理されていない場合の画像を保存することと、少なくとも1つの画素分類画像が生成されかつ/またはアルファマスクが処理されていれば、背景として分類されている画像からの画素を保存することと、のうちの1つに基づき、さらなるオクルージョンハンドリング繰り返しに使用するのに向けて画像がデバイスによって撮られた際に対応するデバイスの画像およびデバイスのポーズからの情報を保存すること(908)を挙げることができる。
【0082】
別の実施形態では、色特性が同様である範囲を対象とする色分布がそれぞれの新しいフレームとデバイスのポーズを使用して学習される。デバイスのポーズは、カメラが見ている所を知り、それにより、この色分布を色特性が同様であるクラスタに分類するのに使用される。その後、デバイスのポーズに応じて、ある色分布または他の色分布が読み込まれ、オクルージョンハンドリングアルゴリズムの間に使用される。このように、アルゴリズムでは、その時間段階におけるデバイスの追跡対象ポーズに従って該当する分布を読み込む。
【0083】
図9を見てみると、デバイスによる対応する工程としては、デバイスの追跡対象ポーズを使用して、デバイスのカメラが見ている所を学習することと、複数の追跡対象ポーズの各フレームからの複数の色分布を色特性が同様であるクラスタに分類することと、デバイスの後続ポーズに基づき、後続のオクルージョンハンドリング工程中に、複数の色分布の中から1つの色分布を選択し、使用することと、に基づき、画像のフレーム、後続の画像フレーム、およびデバイスの追跡対象ポーズを使用して、デバイスの追跡対象ポーズにおけるある範囲を対象として色分布を学習すること(910)を挙げることができる。
【0084】
別の実施形態では、デバイスが、使用可能であれば、デバイスが位置する範囲から色分布を読み込むことができる(例えば、ハードメモリから、クラウドから、別の接続デバイスから)。学習がローカルに行われてもよいので、デバイスが異なる範囲に移ると、新しく学習した分布が保存される(例えば、ハードメモリ、クラウド、または別のデバイスに)。新しい範囲からの分布は、それ以降のデバイスポーズに応じて読み込まれ得る。
【0085】
図10には、本開示のいくつかの実施形態による、拡張現実におけるオクルージョンハンドリングに向けてデバイスによって行われ得るさらなる工程のフローチャートを示す。図10を見てみると、工程とその対応する方法としてはさらに、デバイスのカメラの視野に入る範囲を対象とする色分布を読み込むこと(1002)を挙げることができる。工程としてはさらに、読み込んだ色分布を学習すること(1004)を挙げることができる。工程としてはさらに、学習した色分布を保存すること(1006)と、その範囲を含むデバイスの後続ポーズに基づき、後続のオクルージョンハンドリング工程中に、学習した色分布を使用すること(1008)と、を挙げることができる。
【0086】
別の実施形態では、デバイスのメモリ能力が十分でなければ、色情報、奥行き情報、およびポーズ情報がクラウドなどの接続デバイスに断続的に送信され得、そこで学習工程が背景工程として行われ得る。ローカルの間、カメラが別の範囲(クラスタ化群)へ移るときに追跡対象ポーズに従って計算した分布が更新され得、その後、対応する分布がダウンロードされ得る(対応する分布があれば)。
【0087】
図11には、本開示のいくつかの実施形態による、拡張現実におけるオクルージョンハンドリングに向けてデバイスによって行われ得るさらなる工程のフローチャートを示す。図11を見てみると、工程とその対応する方法としてはさらに、別のデバイスが学習すべき画像に対応する色情報、奥行き情報、およびデバイスポーズ情報を別のデバイスに送信すること(1102)を挙げることができる。工程としてはさらに、デバイスのカメラがクラスタのうちの1つにおける別の範囲へ移るときにデバイスの追跡対象ポーズに従って色分布を更新すること(1104)と、クラスタに対応する色分布をダウンロードすること(1106)と、を挙げることができる。
【0088】
別の実施形態では、色情報および奥行き情報を含む2つのフレーム間のポーズ進展を使用して、各画素が、動くオブジェクトまたは静的オブジェクトの一部であるとして分類され得る。この推定は、静的オブジェクトだけ学習すれば済むように、学習工程に加えられ得る。これを行うことによって、動的オブジェクトの画素は学習されず、これは、動的オブジェクトが仮想オブジェクトの背後にある場合、またはカメラの視野に仮想オブジェクトが何もない場合に起こる可能性がある。
【0089】
図12では、本開示のいくつかの実施形態による拡張現実におけるオクルージョンハンドリングに向けてデバイスによって行われ得るさらなる工程のフローチャートを示す。図12を見てみると、工程とそれに対応する方法としてはさらに、それぞれが色情報および奥行き情報を含む2つのフレーム間のポーズ進展に基づき、動くオブジェクトまたは静的オブジェクトの一部として1つまたは複数の画素のそれぞれを分類すること(1202)を挙げることができる。この工程ではさらに、学習工程に動くオブジェクトまたは静的オブジェクトの一部として1つまたは複数の画素のそれぞれに対する分類を加えること(1204)を挙げることができる。
【0090】
別の実施形態において、通常、仮想コンテンツ(例えば、手)をオクルージョンする対象となるオブジェクトがモデル化、追跡され得、そのポーズおよびモデルを上で述べた確率分布に使用して画素分類trimapを生成することができる。
【0091】
図13には、本開示のいくつかの実施形態による拡張現実におけるオクルージョンハンドリングに向けてデバイスによって行われ得るさらなる工程のフローチャートを示す。図13を見てみると、工程とそれに対応する方法としてはさらに、オクルージョンオブジェクトをモデル化すること(1302)を挙げることができる。この工程ではさらに、オクルージョンオブジェクトに対してデバイスのポーズを追跡し(1304)、モデル化および追跡を使用して少なくとも1つの画素分類画像を生成すること(1306)を挙げることができる。
【0092】
別の実施形態において、フレームを使用して、高価な3D再構成アルゴリズムを計算面で適用することができ、これを後で使用して、上で述べたオクルージョン見積りを高めて画素分類trimapを生成することができる。
【0093】
図14には、本開示のいくつかの実施形態による拡張現実におけるオクルージョンハンドリングに向けてデバイスによって行われ得るさらなる工程のフローチャートを示す。図14を見てみると、工程とそれに対応する方法としてはさらに、1つまたは複数のフレームを使用して、少なくとも1つの画素分類画像を生成するのに再構成工程を適用すること(1402)を挙げることができる。
【0094】
ここで、複数の仮想オブジェクトの場合の例示的な実施形態について述べることとする。
【0095】
ある実施形態では、仮想オブジェクトが1つよりも多くあれば、そのとき見ることのできるオブジェクトのARアプリケーションにおいてレンダリングされた際の仮想ポーズが、アルゴリズムに入力として設定され得る。仮想コンテンツ1つだけの場合の仮想コンテンツの色フレームおよび奥行きフレームを確認する際に見られるように、仮想コンテンツの形状の二値画像(仮想形状をすべて含む唯一の二値画像)が送信され、その画像では、1つのオブジェクトに対応する画素のグレースケール値は、別の仮想オブジェクトに対応する画素とは異なる。
【0096】
フレームに複数の仮想オブジェクトが入っている場合のデバイスによる対応する工程は、少なくとも1つの画素分類画像を生成すること(902)が複数の仮想オブジェクトに及び、アルファマッティングプロセスを開始すること(904)が複数の仮想オブジェクトに及び、拡張現実画像の最終構成をレンダリングすること(906)が、複数の仮想オブジェクトに及ぶ場合に及び得る。
【0097】
実施形態によっては、仮想コンテンツ1つだけの場合で上で述べた初期の奥行きに基づく前景セグメント化および/または背景セグメント化の推定が変えられ得るので、セグメント化は、前景/背景だけではなく、仮想オブジェクトと同じ個数の前景セグメントにも及ぶ。
【0098】
したがって、複数の仮想オブジェクトが収まっている画素分類trimapには、各前景セグメントの画素が前景画素として分類される複数の仮想オブジェクトに対応する複数の前景セグメントがある前景、その画素が背景画素として分類される背景、および未知の画素が含まれ得る。
【0099】
別の実施形態において、仮想オブジェクトのそれぞれでは、このようなオブジェクトの前にある色が見積もられた画素が、これまでの実施形態において述べたように、その灰色が独特な任意の灰色であるとして設定され得る。
ここで、Fは、仮想オブジェクトiに割り当てられた任意グレースケール値である。
【0100】
デバイスによる対応する工程としては、複数の仮想オブジェクトのそれぞれに対して、複数の仮想オブジェクトのうちの1つの仮想オブジェクトに対応する前景セグメントの画素の灰色が、デバイスのセンサによって測定された最大間隔よりも短い奥行きである画素のそれぞれで仮想オブジェクトに割り当てられた任意グレースケール値に基づき計算されており、デバイスのセンサによって測定された最大間隔よりも長い奥行きである画素のそれぞれで背景として分類される。
【0101】
別の実施形態において、仮想オブジェクト1つのみに対して画素分類trimapを生成する際の上で述べた正規化間隔は、複数の見ることのできる仮想オブジェクトの場合にも当てはめることができる。
ここで、
【0102】
デバイスによる対応する工程としては、オクルージョンの奥行き情報に基づくオクルージョンオブジェクトの正規化奥行き画像が、その対応する奥行き値が仮想オブジェクトの間隔Dよりも小さく、画素のうちの残りの画素の値が、Dにより近いそれより高い値を1つまたは複数の画素に割り当てる指数関数によって与えられる0~1の値である、1つまたは複数の画素を1に設定することにより計算されることを挙げることができる。
【0103】
別の実施形態において、推定α値をどのように計算するかにおける変更を伴う仮想オブジェクト1つだけのケースに同じである場合の工程は、以下とすることができる。
ここで、p は、仮想オブジェクトiの仮想画素である。それ故、複数仮想オブジェクトの場合の第1の実施形態において生成された初期グレースケール画像を使用して、その仮想画素が画素pに相当し、またそれにより、このような画素のp の値が直に推論され得る。
【0104】
デバイスによる対応する工程としては、アルファマスクを得て、未知の画素の色を確認することに基づき、少なくとも1つの画素分類画像の複数の仮想オブジェクトと前景とを融合させるアルファマッティングプロセスを開始すること(904)には、1つまたは複数の未知の画素のそれぞれに対してアルファチャンネルを計算し、仮想オブジェクトの対応する仮想画素を加えることが含まれ得る、ことを挙げることができる。例えば、以下の通りである。
ここで、P は、仮想オブジェクトiの仮想画素である。
【0105】
様々な実施形態において、クラウドベースの実装形態において、工程が行われ得る。ある実施形態では、アルファマッティングアルゴリズムを適用して、仮想コンテンツと前景とを融合させることは、クラウドベースの実装形態において行われ得る。原画像とtrimap両方からの画素部分集合が、高速グラフィックスプロセッシングユニット(GPU:Graphics Processing Unit)ベースのアルファマッティングプロセスに向けて外部サーバに送信され得、このような画素の仕上がり色のみが応答で戻され得る。デバイスからクラウドに送信された画素は、未知の画素Uとこの画素の周りのサイズKの小さな近傍画素に対応する画素である可能性がある。近傍画素のサイズKは、場面の動態によって決まる可能性がある。例えば、その場面におけるカメラと動的オブジェクト両方の速さが、Kのサイズを決めるのに考慮され得る。Kは、K=F(Cpose、VDO 、VDO 、...、VDO )と規定することができる。
【0106】
デバイスによる対応する工程としては、未知の画素と未知の画素のそれぞれの周りの領域Kをアルファマッティングプロセスを行うサーバに送信することを含む、アルファマスクを得て、未知の画素の色を確認するのに基づき、少なくとも1つの画素分類画像の仮想オブジェクトと前景とを融合させるアルファマッティングプロセスを開始すること(904)を挙げることができる。領域Kは、画像における一場面に基づき確認され得る。さらなる工程としては、サーバから、未知の画素の色と領域Kを受信することを挙げることができる。
【0107】
別の実施形態において、新しいフレームを処理することがクラウドベースの実装形態において行われ得る。フレームを直にクラウドに送信し、クラウドがフレームを処理し、学習アルゴリズムまたは3D再構成アルゴリスム(またはその両方)を適用することができる。デバイスにおいて、後処理が行われない可能性もある。
【0108】
したがって、このデバイスは、クラウドベースの中央処理装置(例えば、中央処理装置40)とすることができる。
【0109】
図8は、いくつかの実施形態により構成されている図1のクラスドベースの中央処理装置であるデバイスに相当するものであってもよい、中央処理装置40のブロック図である。中央処理装置40は、少なくとも1つのプロセッサ810(プロセッサとも言われる)と、少なくとも1つのメモリ812(メモリとも言われる)と、デバイス(例えば、他のデバイス400a、400b、サーバ30など)と情報のやり取りができるようにするインターフェース820と、で構成され得る。プロセッサ810としては、1つまたは複数のネットワークにわたって配列され得るつまり分散され得る、汎用プロセッサおよび/または専用プロセッサ(例えば、マイクロプロセッサおよび/またはデジタル信号プロセッサ)などの1つまたは複数のデータ処理回路機構を挙げることができる。以下にコンピュータ可読媒体として述べるメモリ812は、プロセッサ810によって実行されると、プロセッサ810に、本明細書に開示の実施形態による工程を行わせるコンピュータ可読プログラムコードを格納する。他の実施形態によれば、プロセッサ810は、別個のメモリがなくても済むようにメモリを含むと規定され得る。中央処理装置40には、プロセッサ810によって実行されると、プロセッサ810に、本明細書に開示の実施形態による工程を行わせる機能モジュール814もメモリ812に備えることができる。
【0110】
別の実施形態において、デバイスは、新しい範囲かまたはある場面内に移ると、学習した分布および/または3D再構成メッシュをクラウドから読み込み、それまでに訪れた範囲からの情報を消す。
【0111】
図15は、本開示のいくつかの実施形態による、拡張現実におけるオクルージョンハンドリングに向けてデバイスによって行われるさらなる工程のフローチャートを示す。図15を見てみると、工程とその対応する方法としてはさらに、デバイスに見える画像が新しい画像に変わると、新しい画像に対して学習した色分布または3次元再構成のうちの1つまたは複数をサーバから読み込むこと(1502)を挙げることができる。工程としてはさらに、少なくとも1つの画素分類画像、アルファマスク、および画像の最終構成を削除すること(1504)を挙げることができる。
【0112】
図9~15に表す工程のそれぞれを互いのどのような組合せにおいても、組合せてもよくかつ/または省いてもよく、このような組合せのすべてが本開示の趣旨および範囲に入る、という可能性を受け入れている。
【0113】
いくつかの実施形態により、少なくとも1つのプロセッサ上で実行されると、その少なくとも1つのプロセッサに、ネットワークコンピューティングデバイスによって行われる方法を遂行させる命令を挙げられるコンピュータプログラムを提供することができる。
【0114】
いくつかの実施形態により、少なくとも1つのプロセッサ上で実行されると、その少なくとも1つのプロセッサに、ネットワークコンピューティングデバイスによって行われる方法を遂行させる命令を格納する非一時的コンピュータ可読媒体が挙げられるコンピュータプログラム製品を提供することができる。
【0115】
本明細書では、本開示の実施形態による方法、装置(システム)、およびコンピュータプログラム製品の流れ図および/またはブロック図を参照しながら、本開示の態様を説明してきた。流れ図および/またはブロック図の各ブロック、また流れ図および/またはブロック図のブロック組合せがコンピュータプログラム命令によって実施され得る、ということが分かるであろう。このようなコンピュータプロブラム命令を、コンピュータ、専用コンピュータなどのプログラマブルデータ処理装置のプロセッサに与えて、コンピュータなどのプログラマブル命令実行装置のプロセッサによるこの命令の実行が、流れ図および/または1つもしくは複数のブロック図に明示した機能/働きを果たす機構を生み出す、といったマシンを作り出すことができる。
【0116】
実行されると、コンピュータ、他のプログラマブルデータ処理装置、または他のデバイスを、特定の方式で働かせることができる、このコンピュータプログラム命令は、コンピュータ可読媒体に格納することもでき、コンピュータ可読媒体に格納されるとこの命令は、実行されると、コンピュータに、流れ図および/または1つもしくは複数のブロック図に明示した機能/働きを果たさせる命令が挙げられる製造品を成す。また、コンピュータプログラム命令を、コンピュータなどのプログラマブル命令実行装置または他のデバイスに読み込み、コンピュータなどのプログラマブル装置または他のデバイス上で一連の工程ステップを実行させ、コンピュータなどのプログラマブル装置上でのこの命令の実行が、流れ図および/または1つもしくは複数のブロック図に明示した機能/働きを果たすといった工程を提供する、コンピュータ実施工程をもたらす。
【0117】
本明細書で使用している用語が、単に特定の実施形態を表すに過ぎず、本発明を限定するものとするつもりはないということが分かるはずである。それとは違うように規定されていない限り、本明細書で使用しているすべての用語(技術用語や科学用語を含む)が、本開示が属する技術分野の当業者が普通に分かるのと同じ意味を持つ。また、一般的に使用される辞書で規定されているものなどの用語が本明細書の場合および関連技術におけるその意味と一致する意味を持つと解釈されるべきであり、理想化されたまたは過度に形式的な意味合いで本明細書にそのように規定されると解釈されるものではない、ということも分かるであろう。
【0118】
流れ図やブロック図は、本開示の様々な態様によるシステム、方法、およびコンピュータプログラム製品の考えられ得る実装形態のアーキテクチャ、機能性、および働きを示すものである。この点で、流れ図やブロック図の各ブロックは、具体的な論理機能を果たすよう求める1つまたは複数の実行可能命令が挙げられる、コードのモジュール、セグメント、または一部に相当するものであり得る。代替の実装形態によっては、ブロックに示した機能が、図に示した順番を外れて行われてもよいものがある、ということにも気付くであろう。例えば、連続して示している2つのブロックが、実際には、関わる機能性に応じて、ほぼ同時に実行されてもよいし、逆の順番で実行されてもよい。ブロック図および/または流れ図の各ブロック、またブロック図および/または流れ図のブロックの組合せが、具体的な機能や働き、または専用ハードウェア命令やコンピュータ命令の組合せを果たす、専用ハードウェアベースのシステムによって実施されてもよい、ということにも気付くであろう。
【0119】
本明細書で使用している用語は、単に特定の側面を表すのに過ぎず、本開示を限定するものとするつもりはない。本明細書で使用する際、文脈上、はっきりそうではないことが分からない限り、単数形「a」、「an」、および「the」は、複数形にも及ぶものであるとする。本明細書で使用する際の「comprises(備える)」および/または「comprising(備える)」という用語が、述べた特徴、整数、ステップ、工程、要素、および/または構成要素の存在を明示するが、1つまたは複数の他の特徴、整数、ステップ、工程、要素、構成要素、および/またはその群の存在または追加を除外するものではない、ということも分かるであろう。本明細書で使用する際、「and/or(および/または)」という言い回しは、関連する挙げた項目のうちの1つまたは複数のあらゆる組合せにも及ぶものである。図面の説明全体を通して、同じ参照番号のものは、同じ要素である。
【0120】
以下の実施形態におけるいかなる手段要素やステップ要素+機能要素にでも対応する構造、材料、働き、および同等物は、他の実施形態との組合せで機能を果たすいかなる本開示の構造、材料、または働きにも及ぶものであるとする。本開示の発明を実施するための形態は、理解を助けるために、また説明上、提示したが、すべてを網羅するものではなく、開示した形態の開示に限るものでないとする。当業者であれば、本開示の範囲および趣旨から外れることのない多くの修正形態や変形形態が見えてくるであろう。本明細書における本開示の態様は、本開示の原理および実用を一番よく説明するために、また当技術分野の当業者が、その可能性が受け入れられる特定の使用に合うような様々な修正形態で本開示を理解することができるように、決めて、記載されている。
【0121】
以下に、例示的な実施形態を提供する。参照番号/参照文字が示す特定の要素に実施形態例を限ることなく、例/図示として、参照番号/参照文字を括弧に入れている。
図1
図2
図3
図4
図5A
図5B
図6A
図6B
図7A
図7B
図8
図9
図10
図11
図12
図13
図14
図15