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

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

▶ グーグル インコーポレイテッドの特許一覧

特表2024-516425広いベースラインのパノラマの間の中間ビューの合成
<>
  • 特表-広いベースラインのパノラマの間の中間ビューの合成 図1A
  • 特表-広いベースラインのパノラマの間の中間ビューの合成 図1B
  • 特表-広いベースラインのパノラマの間の中間ビューの合成 図1C
  • 特表-広いベースラインのパノラマの間の中間ビューの合成 図2
  • 特表-広いベースラインのパノラマの間の中間ビューの合成 図3
  • 特表-広いベースラインのパノラマの間の中間ビューの合成 図4A
  • 特表-広いベースラインのパノラマの間の中間ビューの合成 図4B
  • 特表-広いベースラインのパノラマの間の中間ビューの合成 図5
  • 特表-広いベースラインのパノラマの間の中間ビューの合成 図6
  • 特表-広いベースラインのパノラマの間の中間ビューの合成 図7
  • 特表-広いベースラインのパノラマの間の中間ビューの合成 図8
  • 特表-広いベースラインのパノラマの間の中間ビューの合成 図9
  • 特表-広いベースラインのパノラマの間の中間ビューの合成 図10
  • 特表-広いベースラインのパノラマの間の中間ビューの合成 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-04-15
(54)【発明の名称】広いベースラインのパノラマの間の中間ビューの合成
(51)【国際特許分類】
   G06T 3/00 20240101AFI20240408BHJP
   G06T 3/073 20240101ALI20240408BHJP
   G06T 5/77 20240101ALI20240408BHJP
   G06T 7/00 20170101ALI20240408BHJP
   G06T 7/593 20170101ALI20240408BHJP
   G06T 19/00 20110101ALI20240408BHJP
   H04N 13/261 20180101ALI20240408BHJP
【FI】
G06T3/00 780
G06T3/073
G06T5/77
G06T7/00 350C
G06T7/593
G06T19/00 A
H04N13/261
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023566836
(86)(22)【出願日】2021-04-30
(85)【翻訳文提出日】2023-12-05
(86)【国際出願番号】 CN2021091683
(87)【国際公開番号】W WO2022227068
(87)【国際公開日】2022-11-03
(81)【指定国・地域】
(71)【出願人】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】ジャン,インダ
(72)【発明者】
【氏名】ドゥ,ルオフェイ
(72)【発明者】
【氏名】リ,デイビッド
(72)【発明者】
【氏名】タン,ダンハン
【テーマコード(参考)】
5B050
5B057
5L096
【Fターム(参考)】
5B050AA00
5B050BA04
5B050DA01
5B050EA07
5B050FA02
5B057BA02
5B057CA01
5B057CA08
5B057CA12
5B057CA16
5B057CB01
5B057CB08
5B057CB12
5B057CB13
5B057CB16
5B057CC01
5B057CD14
5B057CE10
5B057DA16
5B057DB02
5B057DB03
5B057DB06
5B057DB09
5B057DC05
5B057DC40
5L096AA02
5L096AA06
5L096AA09
5L096CA04
5L096DA01
5L096DA02
5L096FA09
5L096GA02
5L096GA05
5L096GA06
5L096HA01
5L096HA11
5L096KA04
(57)【要約】
時間間隔をおいて取り込まれている第1のパノラマ画像と第2のパノラマ画像とに関連するステレオ深度を予測するステップと、第1のパノラマ画像と第1のパノラマ画像に対応するステレオ深度とに基づいて、第1のメッシュ表現を生成するステップと、第2のパノラマ画像と第2のパノラマ画像に対応するステレオ深度とに基づいて、第2のメッシュ表現を生成するステップと、第1のメッシュ表現を第2のメッシュ表現と融合させることに基づいて第3のパノラマ画像を合成するステップとを含む方法。
【特許請求の範囲】
【請求項1】
時間間隔をおいて取り込まれている第1のパノラマ画像と第2のパノラマ画像とに関連するステレオ深度を予測するステップと、
前記第1のパノラマ画像と前記第1のパノラマ画像に対応するステレオ深度とに基づいて、第1のメッシュ表現を生成するステップと、
前記第2のパノラマ画像と前記第2のパノラマ画像に対応するステレオ深度とに基づいて、第2のメッシュ表現を生成するステップと、
前記第1のメッシュ表現を前記第2のメッシュ表現と融合させることに基づいて第3のパノラマ画像を合成するステップと
を含む方法。
【請求項2】
前記第1のパノラマ画像および前記第2のパノラマ画像は、360度の、広いベースラインの正距円筒図法(ERP)のパノラマである、請求項1に記載の方法。
【請求項3】
前記ステレオ深度を予測する前記ステップは、前記第1のパノラマ画像および前記第2のパノラマ画像ならびに少なくとも1つの目標位置に基づき、球面掃引コストボリュームを使用して、前記第1のパノラマ画像および前記第2のパノラマ画像の各々の深度を推定する、請求項1に記載の方法。
【請求項4】
前記ステレオ深度を予測する前記ステップは、前記第1のパノラマ画像に関連した第1の特徴マップと、前記第2のパノラマ画像とに基づいて、低解像度深度を推定し、
前記ステレオ深度を予測する前記ステップは、前記第1の特徴マップと、前記第1のパノラマ画像に関連した第2の特徴マップとに基づいて、高解像度深度を推定する、
請求項1に記載の方法。
【請求項5】
前記第1のメッシュ表現を生成する前記ステップは、前記第1のパノラマ画像と、前記第1のパノラマ画像に対応する前記ステレオ深度に基づいて判定される不連続性とに基づき、
前記第2のメッシュ表現を生成する前記ステップは、前記第2のパノラマ画像と、前記第2のパノラマ画像に対応する前記ステレオ深度に基づいて判定される不連続性とに基づく、
請求項1に記載の方法。
【請求項6】
前記第1のメッシュ表現を生成する前記ステップは、第1の目標位置に基づいて前記第1のメッシュ表現を第1の360度のパノラマへとレンダリングするステップを含み、
前記第2のメッシュ表現を生成する前記ステップは、第2の目標位置に基づいて前記第2のメッシュ表現を第1の360度のパノラマへとレンダリングするステップを含み、
前記第1の目標位置および前記第2の目標位置は、前記第1のパノラマ画像の前記取込みと前記第2のパノラマ画像の前記取込みとの間の前記時間間隔に基づく、
請求項1に記載の方法。
【請求項7】
前記第3のパノラマ画像を合成する前記ステップは、前記第1のメッシュ表現を前記第2のメッシュ表現と融合させるステップと、
前記第1のメッシュ表現と前記第2のメッシュ表現との間の両義性を解消するステップと、
前記合成されている第3のパノラマ画像における穴をインペイントするステップと
を含む、請求項1に記載の方法。
【請求項8】
前記第3のパノラマ画像を合成する前記ステップは、前記第1のパノラマ画像に対応する前記ステレオ深度における負の領域に基づいて前記第1のメッシュ表現における穴を識別し、前記第2のパノラマ画像に対応する前記ステレオ深度における負の領域に基づいて前記第2のメッシュ表現における穴を識別するために、2値の視認性マスクを生成するステップを含む、請求項1に記載の方法。
【請求項9】
前記第3のパノラマ画像を合成する前記ステップは、訓練済みニューラルネットワークを使用するステップを含み、
前記訓練済みニューラルネットワークは、各畳み込み層において循環パディングを使用して、前記第3のパノラマ画像の左右の縁部を結合する、
請求項1に記載の方法。
【請求項10】
時間間隔をおいて取り込まれている第1のパノラマ画像と第2のパノラマ画像とに関連するステレオ深度を予測するように構成されている深度予測器と、
前記第1のパノラマ画像と前記第1のパノラマ画像に対応するステレオ深度とに基づいて、第1のメッシュ表現を生成するように構成されている第1の差分メッシュレンダラと、
前記第2のパノラマ画像と前記第2のパノラマ画像に対応するステレオ深度とに基づいて、第2のメッシュ表現を生成するように構成されている第2の差分メッシュレンダラと、
前記第1のメッシュ表現を前記第2のメッシュ表現と融合させることに基づいて第3のパノラマ画像を合成するように構成されている融合ネットワークと
を備えるシステム。
【請求項11】
前記第1のパノラマ画像および前記第2のパノラマ画像は、360度の、広いベースラインの正距円筒図法(ERP)のパノラマである、請求項10に記載のシステム。
【請求項12】
前記ステレオ深度を前記予測することは、前記第1のパノラマ画像および前記第2のパノラマ画像ならびに少なくとも1つの目標位置に基づき、球面掃引コストボリュームを使用して、前記第1のパノラマ画像および前記第2のパノラマ画像の各々の深度を推定する、請求項10に記載のシステム。
【請求項13】
前記ステレオ深度を前記予測することは、前記第1のパノラマ画像に関連した第1の特徴マップと、前記第2のパノラマ画像とに基づいて、低解像度深度を推定し、
前記ステレオ深度を前記予測することは、前記第1の特徴マップと、前記第1のパノラマ画像に関連した第2の特徴マップとに基づいて、高解像度深度を推定する、
請求項10に記載のシステム。
【請求項14】
前記第1のメッシュ表現を前記生成することは、前記第1のパノラマ画像と、前記第1のパノラマ画像に対応する前記ステレオ深度に基づいて判定される不連続性とに基づき、
前記第2のメッシュ表現を前記生成することは、前記第2のパノラマ画像と、前記第2のパノラマ画像に対応する前記ステレオ深度に基づいて判定される不連続性とに基づく、
請求項10に記載のシステム。
【請求項15】
前記第1のメッシュ表現を前記生成することは、第1の目標位置に基づいて前記第1のメッシュ表現を第1の360度のパノラマへとレンダリングすることを含み、
前記第2のメッシュ表現を前記生成することは、第2の目標位置に基づいて前記第2のメッシュ表現を第1の360度のパノラマへとレンダリングすることを含み、
前記第1の目標位置および前記第2の目標位置は、前記第1のパノラマ画像の前記取込みと前記第2のパノラマ画像の前記取込みとの間の前記時間間隔に基づく、
請求項10に記載のシステム。
【請求項16】
前記第3のパノラマ画像を前記合成することは、前記第1のメッシュ表現を前記第2のメッシュ表現と融合させることと、
前記第1のメッシュ表現と前記第2のメッシュ表現との間の両義性を解消することと、
前記合成されている第3のパノラマ画像における穴をインペイントすることと
を含む、請求項10に記載のシステム。
【請求項17】
前記第3のパノラマ画像を前記合成することは、前記第1のパノラマ画像に対応する前記ステレオ深度における負の領域に基づいて前記第1のメッシュ表現における穴を識別し、前記第2のパノラマ画像に対応する前記ステレオ深度における負の領域に基づいて前記第2のメッシュ表現における穴を識別するために、2値の視認性マスクを生成することを含む、請求項10に記載のシステム。
【請求項18】
前記第3のパノラマ画像を前記合成することは、訓練済みニューラルネットワークを使用することを含み、
前記訓練済みニューラルネットワークは、各畳み込み層において循環パディングを使用して、前記第3のパノラマ画像の左右の縁部を結合する、
請求項10に記載のシステム。
【請求項19】
命令を記憶している非一時的コンピュータ可読記憶媒体であって、前記命令は、少なくとも1つのプロセッサによって実行されると、コンピュータシステムに、
第1のパノラマ画像の取込みと第2のパノラマ画像の取込みとの間の時間間隔で取り込まれている、360度の、広いベースラインの正距円筒図法(ERP)のパノラマである、前記第1のパノラマ画像および前記第2のパノラマ画像に関連するステレオ深度を予測することと、
前記第1のパノラマ画像と前記第1のパノラマ画像に対応するステレオ深度とに基づいて、第1のメッシュ表現を生成することと、
前記第2のパノラマ画像と前記第2のパノラマ画像に対応するステレオ深度とに基づいて、第2のメッシュ表現を生成することと、
前記第1のメッシュ表現を前記第2のメッシュ表現と融合させることに基づいて第3のパノラマ画像を合成することと
を行わせるように構成されている、非一時的コンピュータ可読記憶媒体。
【請求項20】
前記第1のメッシュ表現を前記生成することは、第1の目標位置に基づいて前記第1のメッシュ表現を第1の360度のパノラマへとレンダリングすることを含み、
前記第2のメッシュ表現を前記生成することは、第2の目標位置に基づいて前記第2のメッシュ表現を第1の360度のパノラマへとレンダリングすることを含み、
前記第1の目標位置および前記第2の目標位置は、前記第1のパノラマ画像の前記取込みと前記第2のパノラマ画像の前記取込みとの間の前記時間間隔に基づく、
請求項19に記載の非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
分野
実施形態はパノラマ画像合成に関する。
【背景技術】
【0002】
背景
画像合成、パノラマ画像合成、ビュー合成、フレーム合成、および/または同類のものは、少なくとも1つの既存の画像および/またはフレームに基づいて画像を生成することを含み得る。たとえば、フレーム合成は、連続する2つの隣接フレームの間で1つまたは複数のフレームを合成することによって映像のフレームレートを増加させることを含み得る。
【発明の概要】
【0003】
概要
全般的な態様において、デバイス、システム、非一時的コンピュータ可読媒体(コンピュータシステム上で実行され得るコンピュータ実行可能プログラムコードを記憶している)、および/または方法は、処理を実行することができ、方法は、時間間隔をおいて取り込まれている第1のパノラマ画像と第2のパノラマ画像とに関連するステレオ深度を予測するステップと、第1のパノラマ画像と第1のパノラマ画像に対応するステレオ深度とに基づいて、第1のメッシュ表現を生成するステップと、第2のパノラマ画像と第2のパノラマ画像に対応するステレオ深度とに基づいて、第2のメッシュ表現を生成するステップと、第1のメッシュ表現を第2のメッシュ表現と融合させることに基づいて第3のパノラマ画像を合成するステップとを含む。
【0004】
実装形態は、以下の特徴のうち1つまたは複数を含み得る。たとえば、第1のパノラマ画像および第2のパノラマ画像は、360度の、広いベースラインの正距円筒図法(ERP)のパノラマであり得る。ステレオ深度を予測するステップは、第1のパノラマ画像および第2のパノラマ画像ならびに少なくとも1つの目標位置に基づき、球面掃引コストボリュームを使用して、第1のパノラマ画像および第2のパノラマ画像の各々の深度を推定することができる。ステレオ深度を予測するステップは、第1のパノラマ画像に関連した第1の特徴マップと、第2のパノラマ画像とに基づいて、低解像度深度を推定することができ、ステレオ深度を予測するステップは、第1の特徴マップと、第1のパノラマ画像に関連した第2の特徴マップとに基づいて、高解像度深度を推定することができる。第1のメッシュ表現を生成するステップは、第1のパノラマ画像と、第1のパノラマ画像に対応するステレオ深度に基づいて判定される不連続性とに基づき得、第2のメッシュ表現を生成するステップは、第2のパノラマ画像と、第2のパノラマ画像に対応するステレオ深度に基づいて判定される不連続性とに基づき得る。
【0005】
第1のメッシュ表現を生成するステップは、第1の目標位置に基づいて第1のメッシュ表現を第1の360度のパノラマへとレンダリングするステップを含み得、第2のメッシュ表現を生成するステップは、第2の目標位置に基づいて第2のメッシュ表現を第1の360度のパノラマへとレンダリングするステップを含み得、第1の目標位置および第2の目標位置は、第1のパノラマ画像の取込みと第2のパノラマ画像の取込みとの間の時間間隔に基づき得る。第3のパノラマ画像を合成するステップは、第1のメッシュ表現を第2のメッシュ表現と融合させるステップと、第1のメッシュ表現と第2のメッシュ表現との間の両義性を解消するステップと、合成されている第3のパノラマ画像の穴をインペイントするステップとを含み得る。第3のパノラマ画像を合成するステップは、第1のパノラマ画像に対応するステレオ深度における負の領域に基づいて第1のメッシュ表現における穴を識別し、また、第2のパノラマ画像に対応するステレオ深度における負の領域に基づいて第2のメッシュ表現における穴を識別するために、2値の視認性マスクを生成するステップを含むことができる。第3のパノラマ画像を合成するステップは、訓練済みニューラルネットワークを使用するステップを含み得、訓練済みニューラルネットワークは、各畳み込み層において循環パディングを使用して、第3のパノラマ画像の左右の縁部を結合することができる。
【0006】
例示の実施形態は、本明細書で以下に示される詳細な説明および添付図面から、より十分に理解されるはずであり、添付図面では、類似の要素は類似の参照数字によって表され、これらは、解説のためにのみ示されており、したがって例示の実施形態を限定するものではない。
【図面の簡単な説明】
【0007】
図1A】パノラマ画像の取込みシーケンスを示す図である。
図1B】取り込まれているパノラマ画像に基づく360度の映像の一部を示す図である。
図1C】例示の一実施形態による、パノラマ画像合成の流れのブロック図である。
図2】例示の一実施形態による、パノラマ画像合成の流れのブロック図である。
図3】例示の一実施形態による、深度を予測するための流れのブロック図である。
図4A】例示の一実施形態による、深度を予測するためのモデルを訓練するための流れのブロック図である。
図4B】例示の一実施形態による、パノラマ画像融合のためのモデルを訓練するための流れのブロック図である。
図5】例示の一実施形態による、パノラマ画像シーケンスを生成するための方法のブロック図である。
図6】例示の一実施形態による、パノラマ画像を合成するための方法のブロック図である。
図7】例示の一実施形態による、深度を予測するための方法のブロック図である。
図8】例示の一実施形態による、深度を予測するためのモデルを訓練するための方法のブロック図である。
図9】例示の一実施形態による、パノラマ画像融合のためのモデルを訓練するための方法のブロック図である。
図10】少なくとも1つの例示の実施形態によるコンピューティングシステムのブロック図である。
図11】少なくとも1つの例示の実施形態による、コンピュータデバイスおよびモバイルコンピュータデバイスの一例を示す図である。
【発明を実施するための形態】
【0008】
これらの図は、ある特定の例示の実施形態において利用される方法、構造、および/または材料の一般的な特性を示すとともに、以下に記述される説明を補足することを意図するものであることに留意されたい。しかしながら、これらの図面は原寸に比例せず、いかなる所与の実施形態の正確な構造特性または性能特性も正確には反映し得ないので、例示の実施形態によって包含される値または特性の範囲を規定したり限定したりするものと解釈されるべきではない。たとえば、要素、層、領域、および/または構造要素の相対的な厚さおよび位置は、明瞭さのために縮小または誇張されていることがある。様々な図面における類似の参照番号または同一の参照番号の使用は、類似または同一の要素または特徴の存在を指示するように意図されている。
【0009】
詳細な説明
360度の画像、画像シーケンス、映像、および/または同類のものを表示することができる360度カメラおよびディスプレイ(たとえば仮想現実ヘッドセット)の最近の進歩により、観光客、賃借人、写真家、および/または同類の人の、コンピューティングプラットフォーム上に360度の画像を取り込むかまたは探索することに対する興味が増進している。これらのプラットフォームによって、パノラマの間を内挿することにより、ユーザは、仮想的に、都市を通って歩くこと、間取り図および/または同類のもの(たとえば室内環境および室外環境)の試写を見ることが可能になり得る。
【0010】
しかしながら、既存の解決策には、あるビューから次のビュー(たとえば第1のパノラマ画像から第2のパノラマ画像)への視覚的連続性がなく、不正確なジオメトリによるワーピングによってゴースティングアーチファクトが生じる。視点画像、単一画像、および立体パノラマの対のビュー合成用の既存のシステムは、狭いベースラインを使用して合成する。
【0011】
加えて、パノラマ画像のシーケンスを取り込んでストリーミングするために、広いベースラインのパノラマが使用されることがある。広いベースラインの画像(広いベースラインのパノラマを含む)は、2つのビュー(たとえば第1のパノラマ画像から第2のパノラマ画像へ)の間に、比較的大量のカメラ動き(たとえば、距離、回転、移動、および/または同類のもの)および(カメラの)内部パラメータの変化を伴う画像である。たとえば、映画のフレームでは、カメラの動きや内部パラメータの変化は、映像の第1のフレームと第2のフレームとの間で比較的小さくなり得る。しかしながら、映像の、第1のフレームと第10のフレームとの間、第1のフレームと第100のフレームとの間、第1のフレームと第1000フレームとの間(たとえば広いベースライン)など、カメラの動きや内部パラメータの変化が比較的大きくなる可能性がある。
【0012】
既存のシステムは、大きな動きがある(たとえば広いベースラインの対のパノラマを使用する)全方向映像の合成は含まないので、広いベースラインのパノラマを処理するとき制限がある。したがって、既存のプラットフォームは、広いベースラインのパノラマのビュー合成を実行するようには構成されていない可能性がある。
【0013】
例示の実装形態は、広いベースラインのパノラマを合成することにより、パノラマ画像のシーケンスにおけるパノラマ画像の間の視覚的間隙を埋めて、映像を生成することができる。結果として生じる映像は、対話型かつシームレスのユーザ体験のために、360度の映像としてコンピューティングデバイス(たとえば拡張現実(AR)デバイス)にストリーミングされ得る。あるいは、例示の実装形態は、対話型かつシームレスの体験のために、広いベースラインのパノラマの間の360度の映像を合成して、結果として生じる360度の映像をコンシューマデバイス上に表示するように構成されているコンシューマデバイスに、広いベースラインのパノラマをストリーミングすることができる。限定されているボリュームの内部に、または直線的な投影における軌道に沿った、新規のビューを合成するだけの既存のシステムとは異なって、例示の実装形態は360度の映像を生成することができ、これによって、ユーザは、前進/後退すること、任意の場所で止まること、任意の視点から見回すことが可能になり得る(または可能になるように支援され得る)。これは、映画撮影法、テレビ会議、および仮想観光旅行、および/または同類のものなどの広範な用途(たとえば仮想現実の用途)を引き出す。したがって、広いベースラインのパノラマのビュー合成により、プラットフォームの機能性を改善することができ、ユーザは、仮想的に都市を通って歩くこと、間取り図および/または同類のもの(たとえば室内環境および室外環境)の試写を見ることが可能になり得る。広いベースラインのパノラマのビュー合成は、2つのパノラマの間の整列を可能にすることにより、全視野(たとえば360度の視野)を可能にすることができる。
【0014】
図1Aは、パノラマ画像の取込みシーケンスを示す。図1Aに示されるように、複数のパノラマ10-1、10-2、10-3、10-4、...、10-n(たとえば広いベースラインのパノラマまたは広いベースラインのパノラマ画像)は、画像シーケンスの画像として取り込まれ得る。パノラマ画像が取り込まれた後に、取込み間隔20-1、20-2、20-3、20-4、...、20-nが存在し得る。取込み間隔20-1、20-2、20-3、20-4、...、20-n(または取込み時間間隔)は、カメラ(たとえば360度カメラ)が画像を取り込んでいない時間によって、もたらされ得る。言い換えれば、カメラは、(映像のように)連続的にデータを取り込んでいないので、映像を取り込んでいない画像のシーケンスを取り込むことができる。したがって、取込み間隔20-1、20-2、20-3、20-4、および20-nとして示されている画像取込みの間に、遅延が生じる期間(たとえば時間および距離)がある。いくつかの実装形態では、取込み間隔20-1、20-2、20-3、20-4、...、20-nは、取込み間隔に相当する、少なくとも5mの距離間隙をもたらす可能性がある。取込み間隔20-1、20-2、20-3、20-4、...、20-nの図解の結果は図1Bに示され得る。
【0015】
図1Bは、取り込まれているパノラマ画像に基づく360度の映像の一部を示す。図1Bに示されるように、360度の映像の一部を生成するために、複数のパノラマ30-1、30-2、30-3、30-4、30-5、30-6、30-7、30-8、30-9(たとえば広いベースラインのパノラマまたは広いベースラインのパノラマ画像)が使用され得る。360度の映像の一部は、対応する位置(たとえば地理的な位置、空間、および/または同類のもの)の範囲内の3D位置(たとえばx、y、z)に基づき、たとえば全地球測位システム(GPS)、位置アンカ、および/または同類のものを使用して生成され得る。図1Bに示されるように、2つ以上のパノラマ30-1、30-2、30-3の間に間隙40-1、40-2(たとえば距離)がある。間隙40-1、40-2は、取込み間隔20-1、20-2、20-3、20-4、...、20-nに基づき得る。間隙40-1、40-2はパノラマ30-1、30-2、30-3よりも小さく示されているが、パノラマ30-1、30-2、30-3より小さくも大きくもなり得、同一のサイズにもなり得る。言い換えれば、間隙40-1、40-2は、パノラマ30-1、30-2、30-3に対して任意のサイズになり得る。間隙40-1、40-2は、水平な(たとえば水平方向の)シーケンスで示されているが、垂直な(たとえば垂直方向の)シーケンスおよび/または対角線(対角線方向)のシーケンスにもなり得る。間隙40-1、40-2は、360度の映像を見ているとき、ユーザ体験を損なう可能性がある。したがって、図1Cに関して概説されるように、例示の実装形態は、取込み間隔20-1、20-2、20-3、20-4、...、20-nによってもたらされ得る間隙40-1、40-2、50-1、50-2を短縮または解消するように使用される技術を含むことができる。
【0016】
図1Cは、例示の一実施形態による、パノラマ画像合成の流れのブロック図を示す。図1Cに示されるように、画像合成の流れ100は、n個のパノラマ105、深度予測110ブロック、差分レンダリング115ブロック、融合120ブロック、および合成パノラマ125を含む。
【0017】
n個のパノラマ105は、回転するカメラが取り込んだn個のパノラマ画像のシーケンスであり得る。n個のパノラマ105は、各々が、360度の回転(たとえばカメラの回転)を用いて取り込まれている、3次元(3D)ビューの部分的な(たとえば180度の)2次元(2D)投影であり得る。
【0018】
深度予測110ブロックは、n個のパノラマ105の各々に関連する深度を予測するように構成され得る。深度は、n個のパノラマ105のシーケンスにおける2つの隣接したパノラマに基づき得る。差分レンダリング115ブロックは、目標位置に対応する深度予測および視点に基づいてRGBパノラマおよび/またはRGBDパノラマを生成するように構成され得る。目標位置は、パノラマに関連する位置に基づく差分位置であり得る。目標位置は、取込み間隔20-1、20-2、20-3、20-4、...、20-nによってもたらされ得る間隙40-1、40-2、50-1、50-2のうち1つまたは複数に関連付けられ得る。
【0019】
融合120ブロックは、少なくとも2つの差分レンダリングされているパノラマに基づいて合成パノラマ125を生成するように構成され得る。合成パノラマ125は、n個のパノラマ105を含む画像のシーケンスの中へ、n個のパノラマ105のうち2つの間に挿入され得る。合成パノラマを生成するためのより詳細な説明が、図2に関連して記述される。
【0020】
図2は、例示の一実施形態による、パノラマ画像合成の流れのブロック図を示す。図2に示されるように、パノラマ画像を合成する流れ200は、パノラマ205、210、深度予測器215、220、深度予測225、230ブロック、差分メッシュレンダラ235、240、目標位置245、250ブロック、RGB255-1、260-1ブロック、視認性255-2、260-2ブロック、融合ネットワーク265、および合成パノラマ270を含む。
【0021】
パノラマ205、210は、回転するカメラによって取り込まれる画像であり得る。パノラマ205、210は魚眼レンズを使用して取り込まれ得る。したがって、パノラマ205、210は、360度の回転(たとえばカメラの回転)を用いて取り込まれる、3Dビューの部分的な(たとえば180度の)2D投影であり得る。パノラマ205、210は、全体的な整列情報および局所的な整列情報を含み得る。全体的な整列情報および局所的な整列情報は、2つ以上のパノラマを整列させるために使用される、位置(たとえば座標)、変位、姿勢の情報、ピッチ、ロール、ヨー(たとえばx軸、y軸、z軸に対する位置)の情報、および/または他の情報を含み得る。位置は、全地球測位システム(GPS)、(たとえば部屋の中の)位置アンカ、および/または同類のものであり得る。パノラマ205、210は、広いベースラインのパノラマであり得る。広いベースラインのパノラマでは、2つ以上の画像の収集特性が大幅に変化する可能性がある。例示の実装形態では、大幅な変化は収集カメラの位置に基づき得る。言い換えれば、カメラは、画像の間に間隙をもたらす速度で移動している。パノラマ205、210は、メッシュとして記憶(あるいは受信、入力、および/または同様なことが)され得る。
【0022】
深度予測器215、220は、パノラマ205、210の各画素に関連する深度を判定するように構成され得る。示されるように、深度予測器215、220は、パノラマ205とパノラマ210との両方を使用して深度を判定することができる。深度予測器215、220は、機械学習モデルを使用して各パノラマ205、210の深度を判定することができる。深度予測器215、220は、深度予測225、230を生成することができる。深度予測225、230は、単眼接続(1つまたは複数)を用いるステレオ深度推定であり得る。ステレオ深度推定は、整列した深度推定のために、2つ以上の360度の画像(たとえばパノラマ205、210)に提示される特徴の整合を可能にすることができる。単眼接続(1つまたは複数)は、第1の画像に閉じ込められている、第2の画像に閉じ込められていてもいなくてもよい領域の、深度予測を可能にすることができる。深度予測器215、220は、以下でより詳細に説明される。
【0023】
差分メッシュレンダラ235、240は、深度予測225、230および目標位置245、250に基づいて、RGB255-1、260-1および視認性255-2、260-2を生成するように構成され得る。各画像は、目標位置245、250に対応する視点からレンダリングされ得る。目標位置245、250は、パノラマ205、210に関連する位置に基づく差分位置であり得る。目標位置245、250は、画像取込み間隔(または取込み時間間隔)(たとえば取込み間隔20-1、20-2、20-3、20-4、...、20-n)によってもたらされ得る画像のシーケンスにおける1つまたは複数の間隙(たとえば間隙40-1、40-2、50-1、50-2)に関連付けられ得る。差分メッシュレンダラ235、240は、パノラマ205、210の各々について球面メッシュを生成するように構成され得る。ポイントクラウド表現ではなく、パノラマ205、210のメッシュ表現が使用され得、これは、ERP画像からポイントクラウドを生成することに関連する密度問題を回避することができるためである。たとえば、ERP画像から生成されるポイントクラウドは、大きな距離を移動するとき、疎密度の大きな変化を含有することがあり、インペイント(たとえば、任意のトポロジの穴を埋めて、追加分が元の画像の一部であるように見えるようにすること)が困難になる可能性がある。
【0024】
W×Hの解像度の出力画像については、差分メッシュレンダラ235、240は、2Hの高さのセグメントおよび2Wの幅のセグメントを有するUVパターンを辿る球面メッシュを生成するように構成され得る。次に、頂点は、深度予測225、230からのユークリッド深度dに基づいて、正確な半径にオフセットされ得る。メッシュを生成して、頂点をそれらの正確な深度にオフセットした後に、差分メッシュレンダラ235、240は、θ方向およびφ方向に沿って深度マップの勾配を計算して、勾配画像dθおよびdφをもたらすように構成され得る。これらの勾配画像は、各表面の法線の推定を表すことができる。深度画像における大きな勾配は、RGB画像の内部の建築物および他の構造物の縁部に対応する。これらの表面は、カメラの位置からのベクトルに対して垂直な法線ベクトルを有し得る。差分メッシュレンダラ235、240は、3D構造物において(dθ>k)|(dφ>k)となる不連続性を識別するために、両方の方向に沿って深度勾配の閾値を設定するように構成され得る。これらの領域については、差分メッシュレンダラ235、240は、内在する不連続性を正確に表すために、球面メッシュの内部の三角形を棄却するように構成され得る。
【0025】
メッシュが生成されて不連続性が計算されると、差分メッシュレンダラ235、240は、メッシュを、新規の視点から、RGB255-1、260-1(たとえば360度のRGBD画像)にレンダリングするように構成され得る。メッシュレンダリングは、元の画像における遮蔽による穴を含有することがある。これらの穴は、深度画像における負の値として表され得る。差分メッシュレンダラ235、240は、負の値から視認性255-2、260-2を抽出するように構成され得る。
【0026】
例示の実装形態では、差分メッシュレンダラ235、240は、メッシュレンダラ(たとえば内蔵メッシュレンダラ)を、360度の画像を出力するように適合させるように構成され得る。たとえば、ラスタライザは、頂点をワールド座標からカメラ座標へ、次いでスクリーン座標へと投影するように変更され得る。差分メッシュレンダラ235、240は、頂点のカメラ座標に投影行列を掛けるのではなく、直交座標から球面座標への変換を適用して、最終的な座標を、たとえば[-1;1]に正規化するように構成され得る。
【0027】
例示の実装形態では、差分メッシュレンダラ235、240は、通常のレンダリングパスと180度回転させるレンダリングパスとを実行して、パスを互いに合成するように構成され得、そのため、最終的なレンダリングにおいて、パノラマの左右の端部にまわり込む三角形は失われない。加えて、差分メッシュレンダラ235、240は、密なメッシュを使用して、最終的な画像における各三角形の長さを最小化するように構成され得る。レンダリングパスを2回実行し、密なメッシュを使用すると、パノラマ205、210の左右の端部にまわり込む三角形が切り落とされて直角座標の直線がERP画像の座標の直線へと不正確にマッピングされるのを、最小化する(または防止する)ことができる。レンダリングパスを2回実行するステップと、密なメッシュを使用するステップとは、あるキューブマップの6つの視点面をレンダリングして、そのキューブマップを正距円筒図法の画像に投影することによって、同時に実行され得る。
【0028】
融合ネットワーク265は、合成パノラマ270を生成するように構成され得る。融合ネットワーク265は、RGB260-1をRGB255-1と融合させるように構成され得る。RGB255-1、260-1は、合成ビュー(たとえばRGB255-1、260-1は目標位置245、250において合成される)における遮蔽による穴を含むことがある。したがって、融合ネットワーク265は、穴をインペイントするように構成され得る。
【0029】
融合ネットワーク265は、訓練済みモデル(たとえば訓練済みニューラルネットワーク)を使用して合成パノラマ270(たとえば1つの不変のパノラマ)を生成するように構成され得る。訓練済みニューラルネットワークは、7つのダウンサンプリング要素および7つのアップサンプリング要素を含み得る。例示の一実装形態では、融合ネットワーク265は、視認性255-2、260-2に基づいてRGB255-1、260-1の各々における穴(たとえば深度画像をレンダリングするメッシュにおける負の領域)を識別するために、2値の視認性マスクを生成するように構成され得る。融合ネットワーク265は、各畳み込み層において循環パディングを使用し、循環畳み込みニューラルネットワーク(CNN)をシミュレートして左右の端部を結合するように構成され得る。各特徴マップの先頭および末尾にはゼロパディングを使用することができる。
【0030】
前述の深度パイプラインは、特徴エンコーダとしての、5つのダウンサンプリングブロックおよび3つのアップサンプリングブロックを有するニューラルネットワーク(たとえばCNN)と、コストボリューム改良ネットワークとしての、3つのダウンサンプリングブロックおよび3つのアップサンプリングブロックを有する3Dニューラルネットワーク(たとえばCNN)と、深度デコーダとしての2つの畳み込みブロックとを使用することができる。深度パイプラインは、各畳み込み層の追加チャネルとしての、垂直方向の入力インデックスを使用することができる。これによって、畳み込み層は、正距円筒図法(ERP)に関連する歪みを学習することができる。深度パイプラインは、図3に関してより詳細に論じられる。
【0031】
図3は、例示の一実施形態による、深度を予測するための流れのブロック図を示す。図3に示されるように、(たとえば深度予測器215、220に関連する)深度予測の流れ300は、パノラマ305、310、2D畳み込み315、320、350、360ブロック、特徴マップ325、330、345ブロック、コストボリューム335ブロック、3D畳み込み340ブロック、および深度355、365ブロックを含む。
【0032】
パノラマ305、310は、回転するカメラによって取り込まれる画像であり得る。パノラマ305、310は魚眼レンズを使用して取り込まれ得る。したがって、パノラマ305、310は、360度の回転(たとえばカメラの回転)を用いて取り込まれる、3Dビューの部分的な(たとえば180度の)2D投影であり得る。パノラマ305、310は、全体的な整列情報および局所的な整列情報を含み得る。全体的な整列情報および局所的な整列情報は、2つ以上のパノラマを整列させるために使用される、位置(たとえば座標)、変位、姿勢の情報、ピッチ、ロール、ヨー(たとえばx軸、y軸、z軸に対する位置)の情報、および/または他の情報を含み得る。位置は、全地球測位システム(GPS)、(たとえば部屋の中の)位置アンカ、および/または同類のものであり得る。パノラマ305、310は、広いベースラインのパノラマであり得る。広いベースラインのパノラマでは、2つ以上の画像の収集特性が大幅に変化することがある。例示の実装形態では、大幅な変化は収集カメラの位置に基づき得る。言い換えれば、カメラは、画像の間に間隙をもたらす速度で移動している。パノラマ305、310は、メッシュとして記憶(あるいは受信、入力、および/または同様なことが)され得る。
【0033】
2D畳み込み315、320ブロックは、パノラマ305、310に関連する特徴を生成するように構成され得る。2D畳み込み315、320ブロックは、訓練済みニューラルネットワーク(たとえばCNN)であり得る。2D畳み込み315、320ブロックは、畳み込みモデルに関連する縮小経路(たとえばエンコーダ)であり得る(2D畳み込み350、360は拡大経路(たとえばデコーダ)である)。2D畳み込み315、320は、(たとえばVGG/ResNetのような)分類ネットワークであり得、畳み込みブロックに続いて最大プーリングによるダウンサンプリングが適用され、パノラマ305、310を複数の異なるレベルでの特徴表現へと符号化する。複数の異なるレベルでの特徴表現は特徴マップ325、330であり得る。
【0034】
コストボリューム335ブロックは、特徴マップ325、330に基づいて特徴の球面掃引コストボリュームを生成するように構成され得る。コストボリュームは、特徴マップ325、330における参照点とマッチング候補点とのすべての対の間の類似性の尺度になり得る。球面掃引は、特徴マップ325を特徴マップ330に整列させるように構成され得る。球面掃引は、特徴マップ325、330を球面領域に変換するステップを含み得る。特徴マップ325、330を変換するステップは、特徴マップ325、330を所定の球面上に投影するステップを含み得る。特徴の球面掃引コストボリュームを生成するステップは、特徴マップ325、330と関連する球面ボリュームを統合するステップを含み得、また、ステレオマッチング(たとえば位置pを中心とするパノラマ305からのパッチと位置p-dを中心とするパノラマ310からのパッチとのマッチング)のために、コストは、コスト関数(たとえば差分絶対値の和(SAD)、2乗差の和(SSD)、正規化されている相互相関(NCC)、ゼロ平均ベースのコスト(ZSAD、ZSSDおよびZNCCのような))に対する入力として、統合されている球面ボリュームを使用して、第1の画像微分(勾配)または第2の画像微分(ガウシアンのラプラシアン)および/または同類のものに基づいて計算される。
【0035】
3D畳み込み340ブロックは、コストボリュームを改良するように構成され得る。コストボリュームを改良するステップは、特徴情報を不一致次元や空間次元(1つまたは複数)に沿って集約するステップを含み得る。3D畳み込み340は、3Dニューラルネットワーク(たとえばCNN)であり得る。3Dニューラルネットワークは、コストボリューム改良ネットワークとして、3つのダウンサンプリングブロックおよび3つのアップサンプリングブロックを含み得る。コストボリュームを改良すると、特徴マップを生成することができる。特徴マップは特徴マップ345であり得る。
【0036】
特徴マップ345は、2D畳み込み350ブロックおよび2D畳み込み360ブロックに入力され得る。2D畳み込み350、360ブロックは、深度355、365ブロックを生成する(たとえば予測する)ための深度デコーダ(たとえば深度予測)として使用され得る。深度復号は、2つの畳み込みブロックを使用するステップを含み得る。特徴マップ345は、2D畳み込み360ブロックに入力され得る。特徴マップ325は、深度予測ネットワークにおける各畳み込み層の追加チャネルとしての、垂直方向の入力インデックスとして使用され得る。これによって、畳み込み層は、正距円筒図法(ERP)に関連する歪みを学習することができる。図3に関して説明されている深度予測は訓練され得る。たとえば、深度予測は深度予測器215、220に関連付けられ得る。深度予測に関連するニューラルネットワークの訓練は、図4Aに関連して説明される。
【0037】
図4Aは、例示の一実施形態による、深度を予測するためのモデルを訓練するための流れのブロック図を示す。図4Aに示されるように、深度を予測するためのモデルの訓練は、パノラマ205、210、深度予測器215、220、深度予測225、230ブロック、損失410ブロック、および訓練420ブロックを含む。
【0038】
深度予測器215は、訓練のために、入力として2つのパノラマ205、210(たとえばシーケンス内の広いベースラインの画像)を使用する。深度予測器215は2つの出力(たとえば深度355および深度365)を含み、第1の出力(たとえば深度355)は、コストボリューム(たとえばコストボリューム335)のみに基づく低解像度深度dpred_lowの予測を含み、第2の出力(たとえば深度365)は、特徴マップ(たとえば特徴マップ325)およびコストボリューム(たとえばコストボリューム335)からの高解像度深度dpred_hiの予測を含む。第1の出力は、勾配流れに関連付けられ得る。例示の一実装形態では、損失410ブロックに関連する深度の損失関数は次式となり得、
【0039】
【数1】
【0040】
ここで、
depthは深度損失であり、
gtは深度勾配の閾値であり、
λはスケーリング係数(たとえばλ=0.5)であり、
pred_hiは高解像度深度であり、
pred_lowは低解像度深度である。
【0041】
訓練420ブロックは、深度予測器215の訓練をもたらすように構成され得る。例示の一実装形態では、深度予測器215は、2D畳み込み315、320、350、360ブロックおよび3D畳み込み340ブロックを含み、各々が、畳み込みに関連するウェイトを有する。深度予測器215の訓練は、これらのウェイトを変更するステップを含み得る。ウェイトを変更すると、(たとえば同一の入力パノラマを用いる場合でも)2つの出力(たとえば深度355および深度365)に変化をもたらし得る。2つの出力(たとえば深度355および深度365)における変化は、深度損失(たとえば損失410)に影響を与える可能性がある。訓練は、損失410が最小化されるまで、かつ/または繰返しの間で損失410の大幅な変化がなくなるまで、繰り返され得る。
【0042】
図4Bは、例示の一実施形態による、パノラマ画像融合のためのモデルを訓練するための流れのブロック図を示す。図4Bに示されるように、パノラマ画像の融合のためのモデルの訓練は、パノラマ430-1、430-2、430-3、目標位置245、250ブロック、RGB255-1、260-1ブロック、視認性255-2、260-2ブロック、融合ネットワーク265、合成パノラマ270、損失440ブロック、および訓練450ブロックを含む。
【0043】
融合ネットワーク265の訓練は、3つのパノラマ(パノラマ430-1、430-2、430-3)のシーケンスを使用するステップを含む。中間のパノラマ(パノラマ430-2)の姿勢を使用して、最初のパノラマ(パノラマ430-1)および最後のパノラマ(パノラマ430-3)から、メッシュレンダリングが生成され得る。融合ネットワーク265は、メッシュレンダリングを受け取り、メッシュレンダリングを組み合わせて、中間のパノラマ(たとえばパノラマ270)を予測することができる。グラウンドトルースである中間のパノラマ(パノラマ430-2)は監督のために使用される。損失440は、融合ネットワーク265を訓練するために使用され得る。損失440は次式で決定され得、
【0044】
【数2】
【0045】
ここで、
fusionは融合損失(たとえば損失440)であり、
はグラウンドトルースのパノラマ(たとえばパノラマ430-2)であり、
predは予測されているパノラマ(パノラマ270)である。
【0046】
訓練ブロック450は、融合ネットワーク265の訓練をもたらすように構成され得る。融合ネットワーク265の訓練は、融合ネットワーク265の畳み込みのうち少なくとも1つに関連するウェイトを変更するステップを含み得る。例示の一実装形態では、融合ネットワーク265は、予測されているパノラマ(たとえばパノラマ270)とグラウンドトルースのパノラマ(たとえばパノラマ430-2)との間の差に基づいて訓練され得る。損失(たとえば損失440)は、予測されているパノラマとグラウンドトルースのパノラマとの間の差に基づいて生成され得る。訓練は、損失440が最小化されるまで、かつ/または繰返しの間で損失440の大幅な変化がなくなるまで、繰り返され得る。例示の一実装形態では、損失がより小さくなれば、融合ネットワーク265による中間パノラマの合成(たとえば予測)は、より優れたものになる。加えて、深度予測器215と融合ネットワーク265とが一緒に訓練される場合には、全損失はltotal=ldepth+lfusionとなり得る。
【0047】
図5は、例示の一実施形態による、パノラマ画像シーケンスを生成するための方法のブロック図を示す。図5に示されるように、ステップS505において、画像シーケンスにおける2つ以上のパノラマ画像の間に画像取込み間隔(または取込み時間間隔)が存在すると判定される。たとえば、画像シーケンスまたはパノラマ画像シーケンスは、回転するカメラによって取り込まれ得る。画像シーケンスにおける各パノラマ画像は、360度の回転(たとえばカメラの回転)を用いて取り込まれる、3Dビューの部分的な(たとえば180度の)2D投影であり得る。取込み間隔(または取込み時間間隔)は、カメラ(たとえば360度カメラ)が画像を取り込んでいない時間によって、もたらされ得る。言い換えれば、カメラは、(映像のように)連続的にデータを取り込んでいないので、映像を取り込んでいない画像のシーケンスを取り込むことができる。したがって、画像を取り込む間に遅延が生じる期間(たとえば時間および距離)がある。いくつかの実装形態では、取込み間隔は、画像の間に少なくとも5メートルの距離間隙をもたらす可能性がある。
【0048】
ステップS510において、2つ以上のパノラマ画像に基づいて合成画像が生成される。たとえば、画像取込み間隔(または取込み時間間隔)が存在する場合には、例示の実装形態は、2つのパノラマ画像の間の距離間隙を短縮する、かつ/または解消するために、画像のシーケンスに挿入する少なくとも1つのパノラマ画像を合成することができる。ステップS515において、2つ以上のパノラマ画像の間の画像シーケンスに合成画像が挿入される。たとえば、図1Bを参照して、間隙40-1、40-2、50-1、50-2のうち1つまたは複数を最小化する、かつ/または解消するために、合成画像が挿入され得る。
【0049】
図6は、例示の一実施形態による、パノラマ画像を合成するための方法のブロック図を示す。図6に示されるように、ステップS605において第1のパノラマ画像および第2のパノラマ画像が受け取られる。たとえば、パノラマ(パノラマ205、210)は回転するカメラによって取り込まれる画像であり得る。パノラマは魚眼レンズを使用して取り込まれ得る。したがって、パノラマは、360度の回転(たとえばカメラの回転)を用いて取り込まれる、3Dビューの部分的な(たとえば180度の)2D投影であり得る。パノラマは、全体的な整列情報および局所的な整列情報を含み得る。全体的な整列情報および局所的な整列情報は、2つ以上のパノラマを整列させるために使用される、位置(たとえば座標)、変位、姿勢の情報、ピッチ、ロール、ヨー(たとえばx軸、y軸、z軸に対する位置)の情報、および/または他の情報を含み得る。位置は、全地球測位システム(GPS)、(たとえば部屋の中の)位置アンカ、および/または同類のものであり得る。パノラマは広いベースラインのパノラマであり得る。広いベースラインのパノラマでは、2つ以上の画像の収集特性が大幅に変化することがある。例示の実装形態では、大幅な変化は収集カメラの位置に基づき得る。言い換えれば、カメラは、画像の間に間隙をもたらす速度で移動している。パノラマは、メッシュとして記憶(あるいは受信、入力、および/または同様なことが)され得る。
【0050】
ステップS610において、第1のパノラマ画像および第2のパノラマ画像に基づいて第1の深度予測が生成される。たとえば、第1の深度予測は、第1のパノラマにおける各画素に関連する深度を判定するステップを含み得る。第1の深度予測は、第1のパノラマと第2のパノラマとの両方に基づき得る。第1の深度予測は、機械学習モデルを使用してパノラマの深度(1つまたは複数)を判定することができる。深度予測は、単眼接続(1つまたは複数)を用いるステレオ深度推定であり得る。ステレオ深度推定は、整列した深度推定のために、2つ以上の360度の画像(たとえばパノラマ205、210)に提示される特徴の整合を可能にすることができる。単眼接続(1つまたは複数)は、第1のパノラマ画像に閉じ込められている、第2のパノラマ画像に閉じ込められていてもいなくてもよい領域の、深度予測を可能にすることができる。
【0051】
ステップS615において、第1の深度予測に基づいて第1の差分メッシュが生成される。たとえば、差分メッシュレンダラ(たとえば差分メッシュレンダラ235)は、RGB-D画像(たとえば、第1の深度予測(たとえば深度予測225)および目標位置(たとえば目標位置245)に基づいた、RGB255-1および視認性マップ(たとえば視認性255-2))を生成することができる。各画像は、目標位置に対応する視点からレンダリングされ得る。目標位置は、第1のパノラマおよび第2のパノラマに関連する位置に基づく差分位置であり得る。第1の差分メッシュは第1のパノラマに対応する球面メッシュであり得る。ポイントクラウド表現ではなく、第1のパノラマのメッシュ表現が使用され得、これは、ERP画像からポイントクラウドを生成することに関連する密度問題を回避することができるためである。たとえば、ERP画像から生成されるポイントクラウドは、大きな距離を移動するとき、疎密度の大きな変化を含有することがあり、インペイント(たとえば、任意のトポロジの穴を埋めて、追加分が元の画像の一部であるように見えるようにすること)が困難になる可能性がある。
【0052】
ステップS620において、第2のパノラマ画像および第1のパノラマ画像に基づいて第2の深度予測が生成される。たとえば、第2の深度予測は、第2のパノラマにおける各画素に関連する深度を判定するステップを含み得る。第2の深度予測は、第1のパノラマと第2のパノラマとの両方に基づき得る。第2の深度予測は、機械学習モデルを使用してパノラマ(1つまたは複数)の深度を判定することができる。深度予測は、単眼接続(1つまたは複数)を用いるステレオ深度推定であり得る。ステレオ深度推定は、整列した深度推定のために、2つ以上の360度の画像(たとえばパノラマ205、210)に提示される特徴の整合を可能にすることができる。単眼接続(1つまたは複数)は、第2のパノラマ画像に閉じ込められている、第1のパノラマ画像に閉じ込められていてもいなくてもよい領域の、深度予測を可能にすることができる。
【0053】
ステップS625において、第2の深度予測に基づいて第2の差分メッシュが生成される。たとえば、差分メッシュレンダラ(たとえば差分メッシュレンダラ235)は、RGB-D画像(たとえば、第2の深度予測(たとえば深度予測230)および目標位置(たとえば目標位置250)に基づいた、RGB260-1および視認性マップ(たとえば視認性260-2))を生成することができる。各画像は、目標位置に対応する視点からレンダリングされ得る。目標位置は、第1のパノラマおよび第2のパノラマに関連する位置に基づく差分位置であり得る。第1の差分メッシュは第2のパノラマに対応する球面メッシュであり得る。ポイントクラウド表現ではなく、第2のパノラマのメッシュ表現が使用され得、これは、ERP画像からポイントクラウドを生成することに関連する密度問題を回避することができるためである。たとえば、ERP画像から生成されるポイントクラウドは、大きな距離を移動するとき、疎密度の大きな変化を含有することがあり、インペイント(たとえば、任意のトポロジの穴を埋めて、追加分が元の画像の一部であるように見えるようにすること)が困難になる可能性がある。
【0054】
ステップS630において、第1の差分メッシュを第2の差分メッシュと融合させることによって合成パノラマ画像が生成される。たとえば、融合ネットワーク(たとえば融合ネットワーク265)は、第1の差分メッシュに関連するRGB-D画像(たとえばRGB255-1)を第2の差分メッシュに関連するRGB-D画像(RGB260-1)と融合させることができる。RGB-D画像(1つまたは複数)は、目標位置245、250におけるビューの合成での遮蔽による穴を含み得る。したがって、融合は、穴のインペインティングを含み得る。融合は、訓練済みモデル(たとえば訓練済みニューラルネットワーク)を使用して合成パノラマを生成することができる。訓練済みニューラルネットワークは、7つのダウンサンプリング要素および7つのアップサンプリング要素を含み得る。例示の一実装形態では、融合は、RGB-Dの各々において、視認性マップ(たとえば視認性255-2、260-2)を基に2値の視認性マスクを生成して、穴(たとえばメッシュレンダリング深度画像における負の領域)を識別するステップを含み得る。融合は、各畳み込み層において循環パディングを使用して、循環畳み込みニューラルネットワーク(CNN)をシミュレートして左右の端部を結合するステップを含み得る。各特徴マップの先頭および末尾にはゼロパディングを使用することができる。
【0055】
図7は、例示の一実施形態による、深度を予測するための方法のブロック図を示す。図7に示されるように、ステップS705において第1のパノラマ画像および第2のパノラマ画像が受け取られる。たとえば、パノラマ(パノラマ205、210)は回転するカメラによって取り込まれる画像であり得る。パノラマは魚眼レンズを使用して取り込まれ得る。したがって、パノラマは、360度の回転(たとえばカメラの回転)を用いて取り込まれる、3Dビューの部分的な(たとえば180度の)2D投影であり得る。パノラマは、全体的な整列情報および局所的な整列情報を含み得る。全体的な整列情報および局所的な整列情報は、2つ以上のパノラマを整列させるために使用される、位置(たとえば座標)、変位、姿勢の情報、ピッチ、ロール、ヨー(たとえばx軸、y軸、z軸に対する位置)の情報、および/または他の情報を含み得る。位置は、全地球測位システム(GPS)、(たとえば部屋の中の)位置アンカ、および/または同類のものであり得る。パノラマは広いベースラインのパノラマであり得る。広いベースラインのパノラマでは、2つ以上の画像の収集特性が大幅に変化することがある。例示の実装形態では、大幅な変化は収集カメラの位置に基づき得る。言い換えれば、カメラは、画像の間に間隙をもたらす速度で移動している。パノラマは、メッシュとして記憶(あるいは受信、入力、および/または同様なことが)され得る。
【0056】
ステップS710において、第1のパノラマ画像に基づいて第1のマップが生成される。たとえば、第1のパノラマに関連する特徴を生成するためにニューラルネットワークが使用され得る。例示の一実装形態では、2D畳み込みは、訓練済みニューラルネットワーク(たとえばCNN)であり得る。2D畳み込みは、畳み込みモデルに関連する縮小経路(たとえばエンコーダ)であり得る。2D畳み込みは、(たとえばVGG/ResNetのような)分類ネットワークであり得、畳み込みブロックに続いて最大プーリングによるダウンサンプリングが適用され、第1のパノラマを複数の異なるレベルでの特徴表現へと符号化する。複数の異なるレベルでの特徴表現は、第1の特徴マップであり得る。
【0057】
ステップS715において、第2のパノラマ画像に基づいて第2特徴のマップが生成される。たとえば、第2のパノラマに関連する特徴を生成するためにニューラルネットワークが使用され得る。例示の一実装形態では、2D畳み込みは、訓練済みニューラルネットワーク(たとえばCNN)であり得る。2D畳み込みは、畳み込みモデルに関連する縮小経路(たとえばエンコーダ)であり得る。2D畳み込みは、(たとえばVGG/ResNetのような)分類ネットワークであり得、畳み込みブロックに続いて最大プーリングによるダウンサンプリングが適用され、第2のパノラマを複数の異なるレベルでの特徴表現へと符号化する。複数の異なるレベルでの特徴表現は、第2の特徴マップであり得る。
【0058】
ステップS720において、第1の特徴マップおよび第2の特徴マップに基づいてコストボリュームが生成される。たとえば、第1の特徴マップおよび第2の特徴マップ(たとえば特徴マップ325、330)に基づいて、特徴の球面掃引コストボリュームが判定(または生成)され得る。コストボリュームは、特徴マップにおける参照点とマッチング候補点とのすべての対の間の類似性の尺度になり得る。球面掃引は、第1の特徴マップを第2の特徴マップと整列させるように構成され得る。球面掃引は、特徴マップを球面領域に変換するステップを含み得る。特徴マップを変換するステップは、特徴マップを所定の球面上に投影するステップを含み得る。特徴の球面掃引コストボリュームを生成するステップは、特徴マップと関連する球面ボリュームを統合するステップを含み得、また、ステレオマッチング(たとえば位置pを中心とする第1のパノラマからのパッチと位置p-dを中心とする第2のパノラマからのパッチとのマッチング)のために、コストは、コスト関数(たとえば差分絶対値の和(SAD)、2乗差の和(SSD)、正規化されている相互相関(NCC)、ゼロ平均ベースのコスト(ZSAD、ZSSDおよびZNCCのような))に対する入力として、統合されている球面ボリュームを使用して、第1の画像微分(勾配)または第2の画像微分(ガウシアンのラプラシアン)および/または同類のものに基づいて計算される。
【0059】
ステップS725において、コストボリュームに基づいて第3の特徴のマップが生成される。たとえば、第3の特徴マップは、コストボリュームを改良することによって生成され得る。コストボリュームを改良するステップは、特徴情報を不一致次元や空間次元(1つまたは複数)に沿って集約するステップを含み得る。コストボリュームを改良するステップは、3D畳み込みニューラルネットワーク(たとえばCNN)を使用するステップを含み得る。3Dニューラルネットワークは、コストボリューム改良ネットワークとして、3つのダウンサンプリングブロックおよび3つのアップサンプリングブロックを含み得る。コストボリュームを改良すると、第3の特徴マップを生成することができる。
【0060】
ステップS730において、第3の特徴マップに基づいて第1の深度が生成される。たとえば、2D畳み込みは、第1の深度を生成する(たとえば予測する)ための深度デコーダ(たとえば深度予測)として使用され得る。深度復号は、2つの畳み込みブロックを使用するステップを含み得る。深度予測は、訓練済み深度予測であり得る。
【0061】
ステップS735において、第1の特徴マップおよび第3の特徴マップに基づいて第2の深度が生成される。たとえば、2D畳み込みは、第1の深度を生成する(たとえば予測する)ための深度デコーダ(たとえば深度予測)として使用され得る。深度復号は、2つの畳み込みブロックを使用するステップを含み得る。第1の特徴マップは、2D畳み込みに入力され得る。第1の特徴マップは、深度予測ネットワークにおける各畳み込み層の追加チャネルとしての、垂直方向の入力インデックスとして使用され得る。これによって、畳み込み層は、正距円筒図法(ERP)に関連する歪みを学習することができる。
【0062】
図8は、例示の一実施形態による、深度を予測するためのモデルを訓練するための方法のブロック図を示す。図8に示されるように、ステップS805において第1のパノラマ画像および第2のパノラマ画像が受け取られる。たとえば、パノラマ(パノラマ205、210)は回転するカメラによって取り込まれる画像であり得る。パノラマは魚眼レンズを使用して取り込まれ得る。したがって、パノラマは、360度の回転(たとえばカメラの回転)を用いて取り込まれる、3Dビューの部分的な(たとえば180度の)2D投影であり得る。パノラマは、全体的な整列情報および局所的な整列情報を含み得る。全体的な整列情報および局所的な整列情報は、2つ以上のパノラマを整列させるために使用される、位置(たとえば座標)、変位、姿勢の情報、ピッチ、ロール、ヨー(たとえばx軸、y軸、z軸に対する位置)の情報、および/または他の情報を含み得る。位置は、全地球測位システム(GPS)、(たとえば部屋の中の)位置アンカ、および/または同類のものであり得る。パノラマは広いベースラインのパノラマであり得る。広いベースラインのパノラマでは、2つ以上の画像の収集特性が大幅に変化することがある。例示の実装形態では、大幅な変化は収集カメラの位置に基づき得る。言い換えれば、カメラは、画像の間に間隙をもたらす速度で移動している。パノラマは、メッシュとして記憶(あるいは受信、入力、および/または同様なことが)され得る。
【0063】
ステップS810において、第1のパノラマ画像および第2のパノラマ画像に基づいて第1の深度が生成される。ステップS815において、第1のパノラマ画像および第2のパノラマ画像に基づいて第2の深度が生成される。第1の深度および第2の深度を生成するステップは、たとえば図7のステップS730およびステップS735に関連して上記で説明されている。たとえば、深度予測は、訓練のための入力として2つのパノラマ(たとえばシーケンスにおける広いベースラインの画像)を使用することができる。深度予測は2つの出力(たとえば深度355および深度365)を含むことができ、第1の出力(たとえば深度355)は、コストボリューム(たとえばコストボリューム335)のみに基づく低解像度深度dpred_lowの予測を含み、第2の出力(たとえば深度365)は、特徴マップ(たとえば特徴マップ325)およびコストボリューム(たとえばコストボリューム335)からの、高解像度深度dpred_hiの予測を含む。第1の出力は、勾配流れに関連付けられ得る。
【0064】
ステップS820において、第1の深度および第2の深度に基づいて損失が計算される。たとえば、上記で論じられたように、損失を計算するために、低解像度深度dpred_lowおよび高解像度深度dpred_hiに基づく深度用の損失関数が使用され得る。
【0065】
ステップS825において、深度予測は損失に基づいて訓練される。たとえば、深度予測は、各々が畳み込みに関連するウェイトを有する少なくとも1つの2D畳み込みおよび少なくとも1つの3D畳み込みの使用を含み得る。深度予測の訓練は、これらのウェイトを変更するステップを含み得る。ウェイトを変更すると、(たとえば同一の入力パノラマを用いる場合でも)2つの出力(たとえば深度355および深度365)に変化をもたらし得る。2つの出力(たとえば深度355および深度365)における変化は、深度損失(たとえば損失410)に影響を与える可能性がある。訓練は、損失が最小化されるまで、かつ/または繰返しの間で損失の大幅な変化がなくなるまで、繰り返され得る。
【0066】
図9は、例示の一実施形態による、パノラマ画像融合のためのモデルを訓練するための方法のブロック図を示す。図9に示されるように、ステップS905においてパノラマ画像のシーケンスが受け取られる。たとえば、パノラマ(たとえばパノラマ430-1、430-2、430-3)は回転するカメラによって取り込まれる画像であり得る。パノラマは魚眼レンズを使用して取り込まれ得る。したがって、パノラマは、360度の回転(たとえばカメラの回転)を用いて取り込まれる、3Dビューの部分的な(たとえば180度の)2D投影であり得る。パノラマは、全体的な整列情報および局所的な整列情報を含み得る。全体的な整列情報および局所的な整列情報は、2つ以上のパノラマを整列させるために使用される、位置(たとえば座標)、変位、姿勢の情報、ピッチ、ロール、ヨー(たとえばx軸、y軸、z軸に対する位置)の情報、および/または他の情報を含み得る。位置は、全地球測位システム(GPS)、(たとえば部屋の中の)位置アンカ、および/または同類のものであり得る。パノラマは広いベースラインのパノラマであり得る。広いベースラインのパノラマでは、2つ以上の画像の収集特性が大幅に変化することがある。例示の実装形態では、大幅な変化は収集カメラの位置に基づき得る。言い換えれば、カメラは、画像の間に間隙をもたらす速度で移動している。パノラマは、メッシュとして記憶(あるいは受信、入力、および/または同様なことが)され得る。
【0067】
ステップS910において、パノラマ画像のシーケンスの第1のパノラマ画像に基づいて第1の差分メッシュが生成される。たとえば、差分メッシュレンダラ(たとえば差分メッシュレンダラ235)は、RGB-D画像(たとえば、第1のパノラマ画像および目標位置(たとえば目標位置245)に関連する深度予測に基づいた、RGB255-1および視認性マップ(たとえば視認性255-2))を生成することができる。各画像は、目標位置に対応する視点からレンダリングされ得る。目標位置は、第1のパノラマおよび第2のパノラマに関連する位置に基づく差分位置であり得る。第1の差分メッシュは第1のパノラマに対応する球面メッシュであり得る。ポイントクラウド表現ではなく、第1のパノラマのメッシュ表現が使用され得、これは、ERP画像からポイントクラウドを生成することに関連する密度問題を回避することができるためである。たとえば、ERP画像から生成されるポイントクラウドは、大きな距離を移動するとき、疎密度の大きな変化を含有することがあり、インペイント(たとえば、任意のトポロジの穴を埋めて、追加分が元の画像の一部であるように見えるようにすること)が困難になる可能性がある。
【0068】
ステップS915において、パノラマ画像のシーケンスの第2のパノラマ画像に基づいて第2の差分メッシュが生成される。たとえば、差分メッシュレンダラ(たとえば差分メッシュレンダラ240)は、RGB-D画像(たとえば、第2のパノラマ画像および目標位置(たとえば目標位置245)に関連する深度予測に基づいて、RGB260-1および視認性マップ(たとえば視認性260-2))を生成することができる。各画像は、目標位置に対応する視点からレンダリングされ得る。目標位置は、第1のパノラマおよび第2のパノラマに関連する位置に基づく差分位置であり得る。第1の差分メッシュは第1のパノラマに対応する球面メッシュであり得る。ポイントクラウド表現ではなく、第1のパノラマのメッシュ表現が使用され得、これは、ERP画像からポイントクラウドを生成することに関連する密度問題を回避することができるためである。たとえば、ERP画像から生成されるポイントクラウドは、大きな距離を移動するとき、疎密度の大きな変化を含有することがあり、インペイント(たとえば、任意のトポロジの穴を埋めて、追加分が元の画像の一部であるように見えるようにすること)が困難になる可能性がある。
【0069】
ステップS920において、第1の差分予測を第2の差分予測と融合させることによって合成パノラマ画像が生成される。たとえば、融合ネットワーク(たとえば融合ネットワーク265)は、第1の差分メッシュに関連するRGB-D画像(たとえばRGB255-1)を第2の差分メッシュに関連するRGB-D画像(RGB260-1)と融合させることができる。RGB-D(1つまたは複数)は、目標位置245、250におけるビューの合成での遮蔽による穴を含み得る。したがって、融合は、穴のインペインティングを含み得る。融合は、訓練済みモデル(たとえば訓練済みニューラルネットワーク)を使用して合成パノラマを生成することができる。訓練済みニューラルネットワークは、7つのダウンサンプリング要素および7つのアップサンプリング要素を含み得る。例示の一実装形態では、融合は、RGB-Dの各々において、視認性マップ(たとえば視認性255-2、260-2)を基に2値の視認性マスクを生成して、穴(たとえばメッシュレンダリング深度画像における負の領域)を識別するステップを含み得る。融合は、各畳み込み層において循環パディングを使用して、循環畳み込みニューラルネットワーク(CNN)をシミュレートして左右の端部を結合するステップを含み得る。各特徴マップの先頭および末尾にはゼロパディングを使用することができる。
【0070】
ステップS925において、合成パノラマ画像とパノラマ画像のシーケンスの第3のパノラマ画像とに基づいて損失が計算される。たとえば、第3のパノラマ画像(たとえばパノラマ430-2)は、第1のパノラマ画像(たとえばパノラマ430-1)と第2のパノラマ画像(たとえばパノラマ430-3)との間に順次に存在し得る。損失は、損失440に関して上記で説明されたように計算され得る。
【0071】
融合ネットワークの訓練は、3つのパノラマ(たとえばパノラマ430-1、430-2、430-3)のシーケンスを使用するステップを含み得る。中間のパノラマ(パノラマ430-2)の姿勢を使用して、最初のパノラマ(パノラマ430-1)および最後のパノラマ(パノラマ430-3)から、メッシュレンダリングが生成され得る。融合ネットワークは、メッシュレンダリングを受け取り、メッシュレンダリングを組み合わせて、中間のパノラマ(たとえばパノラマ270)を予測することができる。グラウンドトルースである中間のパノラマ(たとえばパノラマ430-2)は、監督のために使用され得る。損失は、融合ネットワークを訓練するために使用され得る。
【0072】
ステップS930において、パノラマ画像融合は損失に基づいて訓練される。たとえば、融合ネットワークの訓練は、融合ネットワークに関連する少なくとも1つの畳み込みに関連するウェイトを変更するステップを含み得る。例示の一実装形態では、融合ネットワークは、予測されているパノラマ(たとえばパノラマ270)とグラウンドトルースのパノラマ(たとえばパノラマ430-2)との間の差に基づいて訓練され得る。損失(たとえば損失440)は、予測されているパノラマとグラウンドトルースのパノラマとの間の差に基づいて生成され得る。訓練は、損失が最小化されるまで、かつ/または繰返しの間で損失の大幅な変化がなくなるまで、繰り返され得る。例示の一実装形態では、損失がより小さくなれば、融合ネットワークによる中間パノラマの合成(たとえば予測)は、より優れたものになる。
【0073】
図10は、少なくとも1つの例示の実施形態によるコンピューティングシステムのブロック図を示す。図10に示されるように、コンピューティングシステムは少なくとも1つのプロセッサ1005および少なくとも1つのメモリ1010を含む。少なくとも1つのメモリ1010は、少なくとも、深度予測225ブロック、差分メッシュレンダラ235、および融合ネットワークを含み得る。
【0074】
図10の例において、コンピューティングシステムは、少なくとも1つのコンピューティングデバイスでよく、またはこれを含んでもよく、本明細書で説明した技術を実行するように構成されている任意のコンピューティングデバイスを実質的に表すものと理解されたい。そのため、コンピューティングシステムは、本明細書で説明した技術またはその異なるバージョンもしくは将来のバージョンを実施するために利用され得る様々な構成要素を含むものと理解されてよい。例として、コンピューティングシステムは、少なくとも1つのプロセッサ1005、ならびに少なくとも1つのメモリ1010(たとえば非一時的コンピュータ可読記憶媒体)を含むものとして図示されている。
【0075】
少なくとも1つのプロセッサ1005は、少なくとも1つのメモリ1010に記憶されている命令を実行するように利用され得る。したがって、少なくとも1つのプロセッサ1005は、本明細書で説明した様々な特徴および機能、あるいは追加または代替の特徴および機能を実施することができる。少なくとも1つのプロセッサ1005および少なくとも1つのメモリ1010は、様々な他の目的のために利用され得る。たとえば、少なくとも1つのメモリ1010は、様々なタイプのメモリと、本明細書で説明したモジュールのうち任意のものを実施するように使用され得る関連するハードウェアおよびソフトウェアとの、一例を表し得る。
【0076】
少なくとも1つのメモリ1010は、コンピューティングシステムに関連するデータおよび/または情報を記憶するように構成され得る。少なくとも1つのメモリ1010は、共有リソースであり得る。たとえば、コンピューティングシステムは、より大きなシステム(たとえば、サーバ、パーソナルコンピュータ、モバイルデバイス、および/または同類のもの)の要素であり得る。したがって、少なくとも1つのメモリ1010は、より大きなシステムの内部の他の要素に関連するデータおよび/または情報(たとえば画像/映像の取扱い、ウェブ閲覧、または有線/無線の通信)を記憶するように構成され得る。
【0077】
図11は、本明細書で説明した技術とともに使用され得るコンピュータデバイス1100およびモバイルコンピュータデバイス1150の一例を示す。コンピューティングデバイス1100は、ラップトップ、デスクトップ、ワークステーション、個人用デジタル情報処理端末(personal digital assistants)、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなど、デジタルコンピュータの様々な形態を表すように意図されている。コンピューティングデバイス1150は、個人用デジタル情報処理端末、携帯電話、スマートフォン、および他の類似のコンピューティングデバイスなどのモバイルデバイスの様々な形態を表すように意図されている。本明細書で示されている構成要素、それらの接続および関係、ならびにそれらの機能は、例を意味するのみであり、本明細書で説明される、かつ/または特許請求される本発明の実装形態を制限する意味はない。
【0078】
コンピューティングデバイス1100は、プロセッサ1102と、メモリ1104と、記憶機器1106と、メモリ1104および高速拡張ポート1110に接続する高速インターフェース1108と、低速バス1114および記憶機器1106に接続する低速インターフェース1112とを含む。構成要素1102、1104、1106、1108、1110、および1112の各々が、様々なバスを使用して相互接続され、共通のマザーボードに実装され得、または必要に応じて他のやり方で実装され得る。プロセッサ1102は、コンピューティングデバイス1100の内部で実行するように、メモリ1104内に、または記憶機器1106上に記憶されている命令を含む命令を処理して、高速インターフェース1108に結合されているディスプレイ1116などの外部入出力デバイス上に、GUI用のグラフィカル情報を表示することができる。他の実装形態では、必要に応じて、複数のプロセッサおよび/または複数のバスが、複数のメモリおよびメモリのタイプとともに使用され得る。また、複数のコンピューティングデバイス1100が接続されてよく、各デバイスが、(たとえばサーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)必要な動作の一部をもたらす。
【0079】
メモリ1104は、コンピューティングデバイス1100の内部の情報を記憶する。一実装形態では、メモリ1104は1つまたは複数の揮発性メモリユニットである。別の実装形態では、メモリ1104は1つまたは複数の不揮発性メモリユニットである。メモリ1104は、磁気ディスクまたは光ディスクなど、コンピュータ可読媒体の別の形態でもよい。
【0080】
記憶機器1106は、コンピューティングデバイス1100用の大容量記憶装置を用意することができる。一実装形態では、記憶機器1106は、フロッピー(登録商標)ディスク装置などのコンピュータ可読媒体、ハードディスク装置、光学ディスク装置、またはテープ装置、フラッシュメモリもしくは他の類似の半導体メモリデバイス、またはストレージエリアネットワークもしくは他の構成における装置を含む装置の配列でよく、あるいはこれらを含有し得る。コンピュータプログラム製品は、情報媒体の中に実体的に具現化され得る。コンピュータプログラム製品には、実行されると、上記で説明されているものなどの1つまたは複数の方法を実行する命令も含有され得る。情報媒体は、メモリ1104、記憶機器1106、またはプロセッサ1102上のメモリなどのコンピュータ可読媒体もしくは機械可読媒体である。
【0081】
高速コントローラ1108は、コンピューティングデバイス1100の、大きな帯域幅を必要とする動作を管理し、低速コントローラ1112は、あまり大きい帯域幅は必要としない動作を管理する。そのような機能配分は例示でしかない。一実装形態では、高速コントローラ1108は、メモリ1104と、(たとえばグラフィックスプロセッサまたはアクセラレータを介した)ディスプレイ1116と、様々な拡張カード(図示せず)を受け入れる高速拡張ポート1110とに結合される。この実装形態において、低速コントローラ1112は、記憶機器1106および低速拡張ポート1114に結合される。低速拡張ポートは、様々な通信ポート(たとえばUSB、Bluetooth(登録商標)、イーサネット(登録商標)、無線イーサネット)を含み得、キーボード、ポインティングデバイス、スキャナなどの1つまたは複数の入出力デバイスに結合され得、またはたとえばネットワークアダプタを介してスイッチもしくはルータなどのネットワークデバイスに結合され得る。
【0082】
コンピューティングデバイス1100は、図に示されるように、複数の別々の形態で実施され得る。たとえば、コンピューティングデバイス1100は、標準的なサーバ1120として、またはしばしばそのようなサーバのグループとして、実施され得る。また、コンピューティングデバイス1100はラックサーバシステム1124の一部として実施され得る。加えて、コンピューティングデバイス1100はラップトップコンピュータ1122などのパーソナルコンピュータで実施され得る。代わりに、コンピューティングデバイス1100の構成要素は、デバイス1150などのモバイルデバイス(図示せず)の他の構成要素と組み合わされ得る。そのようなデバイスの各々が、コンピューティングデバイス1100、1150のうち1つまたは複数を含有し得、全体のシステムは、互いに通信する複数のコンピューティングデバイス1100、1150から構成され得る。
【0083】
コンピューティングデバイス1150は、他の構成要素のうち特に、プロセッサ1152、メモリ1164、ディスプレイ1154などの入出力デバイス、通信インターフェース1166、およびトランシーバ1168を含む。デバイス1150には、追加記憶装置をもたらすためのマイクロドライブまたは他のデバイスなどの記憶機器も備わっていてよい。構成要素1150、1152、1164、1154、1166、および1168の各々が、様々なバスを使用して相互接続され、構成要素のうちいくつかが、共通のマザーボードに実装され得、または必要に応じて他のやり方で実装され得る。
【0084】
プロセッサ1152は、コンピューティングデバイス1150の内部で、メモリ1164に記憶されている命令を含む命令を実行することができる。プロセッサは、複数の個別のアナログプロセッサやデジタルプロセッサを含むチップのチップセットとして実施され得る。プロセッサは、たとえば、ユーザインターフェースの制御、デバイス1150が実行するアプリケーションの制御、デバイス1150による無線通信の制御など、デバイス1150の他の構成要素を調整し得る。
【0085】
プロセッサ1152は、ディスプレイ1154に結合されているインターフェース1158とディスプレイインターフェース1156とを制御することによって、ユーザと通信し得る。ディスプレイ1154は、たとえば薄膜トランジスタ液晶ディスプレイ(TFT LCD)もしくは有機発光ダイオード(OLED)ディスプレイ、または他の適切なディスプレイ技術でよい。ディスプレイインターフェース1156は、ディスプレイ1154を駆動してユーザにグラフィック情報や他の情報を提示するための適切な回路を備え得る。制御インターフェース1158は、ユーザから指令を受け取り、プロセッサ1152に提示するようにその指令を変換し得る。加えて、デバイス1150の他のデバイスとの近傍通信を可能にするために、プロセッサ1152と通信する外部インターフェース1162が設けられ得る。外部インターフェース1162は、たとえば、いくつかの実装形態では有線通信をもたらし得、または他の実装形態では無線通信をもたらし得、複数のインターフェースが使用されることもある。
【0086】
メモリ1164は、コンピューティングデバイス1150の内部の情報を記憶する。メモリ1164は、1つまたは複数のコンピュータ可読媒体、1つまたは複数の揮発性メモリユニット、あるいは1つまたは複数の不揮発性メモリユニット、のうち1つまたは複数として実施され得る。増設メモリ1174も設けられてよく、たとえばシングルインラインメモリモジュール(SIMM)カードインターフェースを含み得る拡張インターフェース1172を介して、デバイス1150に接続され得る。そのような増設メモリ1174は、デバイス1150に追加の記憶空間をもたらし得、またはデバイス1150用のアプリケーションもしくは他の情報も記憶し得る。具体的には、増設メモリ1174は、上記で説明されている処理を実行するかまたは補足するための命令を含み得、安全情報も含み得る。したがって、増設メモリ1174は、たとえばデバイス1150用のセキュリティモジュールとして設けられてよく、デバイス1150の安全な使用を可能にする命令を用いてプログラムされ得る。加えて、SIMMカードによって、セキュアアプリケーションが、ハッキング不可能なやり方でSIMMカードに識別情報をセットするなど、付加情報とともに用意され得る。
【0087】
メモリは、たとえば以下で論じられるようなフラッシュメモリおよび/またはNVRAMメモリを含み得る。一実装形態では、コンピュータプログラム製品は、情報媒体の中に実体的に具現化される。コンピュータプログラム製品には、実行されると、上記で説明されているものなどの1つまたは複数の方法を実行する命令が含有され得る。情報媒体は、たとえばトランシーバ1168または外部インターフェース1162に収容され得る、メモリ1164、増設メモリ1174、またはプロセッサ1152上のメモリなどのコンピュータ可読媒体もしくは機械可読媒体である。
【0088】
デバイス1150は、必要な場合にはデジタル信号処理回路を含み得る通信インターフェース1166を介して無線で通信し得る。通信インターフェース1166は、とりわけ、GSM(登録商標)音声通話、SMS、EMS、もしくはMMSのメッセージング、CDMA、TDMA、PDC、WCDMA(登録商標)、CDMA2000、またはGPRSなど、様々なモードまたはプロトコルの下で通信をもたらし得る。そのような通信は、たとえば無線周波数トランシーバ1168を介して生じ得る。加えて、Bluetooth、Wi-Fi、または他のそのようなトランシーバ(図示せず)などを使用して短距離通信が生じ得る。加えて、全地球測位システム(GPS)受信モジュール1170は、デバイス1150上で作動するアプリケーションによって必要に応じて使用され得る、ナビゲーションに関連するおよび位置に関連する追加の無線データを、デバイス1150に供給し得る。
【0089】
デバイス1150は、ユーザから話した情報を受け取って、その情報を、使用可能なデジタル情報に変換し得る、音声コーデック1160を音声認識可能なように使用して、通信してもよい。音声コーデック1160は、同様に、たとえばデバイス1150のハンドセットの中のスピーカなどによって、ユーザ向けに可聴音を生成し得る。そのような音響には、音声通話からの音響、記録されている音響(たとえば音声メール、音楽ファイルなど)、が含まれ得、またデバイス1150上で動作するアプリケーションによって生成される音響も含まれ得る。
【0090】
コンピューティングデバイス1150は、図に示されるように、複数の別々の形態で実施され得る。たとえば、コンピューティングデバイス1150は携帯電話1180として実施され得る。コンピューティングデバイス1150は、スマートフォン1182、個人用デジタル情報処理端末、または他の類似のモバイルデバイスの一部として実施されてもよい。
【0091】
例示の実施形態は、様々な修正形態および代替形態の形式を含み得るが、それらの実施形態は例として図に示され、本明細書で詳細に説明される。しかしながら、例示の実施形態を、開示されている特定の形態に限定する意図はなく、むしろ、例示の実施形態は、特許請求の範囲に含まれるすべての修正形態、等価物、および代替形態を対象として含むことを理解されたい。図の説明を通して、類似の番号は類似の要素を指す。
【0092】
本明細書で説明したシステムおよび技術の様々な実装形態は、デジタル電子回路、集積回路、専用に設計されているASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはこれらの組合せで実現され得る。これら様々な実装形態は、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステムにおいて実行可能かつ/または機械言語に翻訳処理可能な、1つまたは複数のコンピュータプログラムの実装形態を含み得、プログラマブルプロセッサは、専用または汎用のものであり得、記憶システム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスに結合されてデータや命令をやり取りし得る。本明細書で説明したシステムや技術の様々な実装形態は、本明細書において、ソフトウェアの態様とハードウェアの態様とを組み合わせ得る、回路、モジュール、ブロック、またはシステムとして実現され得、かつ/または一般にこれらと称され得る。たとえば、モジュールは、プロセッサ(たとえばシリコン基板、GaAs基板上に形成されているプロセッサなど)またはいくつかの他のプログラム可能なデータ処理装置において実行する機能/行為/コンピュータプログラム命令を含み得る。
【0093】
上記の例示の実施形態のうちのいくつかは、流れ図として表される処理または方法として説明されている。流れ図では、動作は順次の処理として説明されるが、動作の多くは、並行して、共に、すなわち同時に実行され得る。加えて、動作の順序は再編成されてよい。処理は、その動作が完了したら終了してよいが、図に含まれていない追加のステップも有し得る。処理は、方法、機能、プロシージャ、サブルーチン、サブプログラムなどに相当し得る。
【0094】
上記で論じられている方法は、そのいくつかが流れ図によって示されており、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、またはそれらの任意の組合せによって実施され得る。必要なタスクを実行するプログラムコードまたはコードセグメントは、ソフトウェア、ファームウェア、ミドルウェアまたはマイクロコードで実施されると、記憶媒体などの機械可読媒体またはコンピュータ可読媒体に記憶され得る。プロセッサ(1つまたは複数)は必要なタスクを実行し得る。
【0095】
本明細書で開示されている特定の構造および機能の詳細は、例示の実施形態を説明するための単なる表現である。しかしながら、例示の実施形態は、多くの代替形態で具現化されるので、本明細書で説明されている実施形態のみに限定されるものと解釈されるべきではない。
【0096】
本明細書では、様々な要素を説明するために、「第1の」、「第2の」などの用語を使用することがあるが、これらの要素は、これらの用語によって制限されるべきではないことを理解されたい。これらの用語は、ある要素を別の要素と区別するためにのみ使用される。たとえば、例示の実施形態の範囲から逸脱することなく、第1の要素が第2の要素と称されてよく、同様に、第2の要素が第1の要素と称されてもよい。本明細書で使用される「および/または」という用語は、関連して列挙されている品目のうち1つまたは複数の、任意の組合せも、それらのすべての組合せも含む。
【0097】
ある要素が、別の要素に接続または結合されると称されるとき、他の要素に直接接続もしくは結合されてよく、または介在要素があってもよいことが理解されよう。対照的に、ある要素が、別の要素に直接接続または結合されると称されるとき、介在要素は存在しない。要素の間の関係を説明するために使用される他の語(たとえば「の間を」対「の間を直接」、「近接」対「隣接」など)は、同じように解釈されるべきである。
【0098】
本明細書で使用される用語法は、特定の実施形態を説明することのみを目的としており、例示の実施形態を限定する意図はない。本明細書で使用される、「ある(a)」、「ある(an)」、「その(the)」といった単数形は、文脈がそうでないことを明白に示さない限り、複数形も含むように意図されている。本明細書で使用される「備える(comprises)」、「備える(comprising)」、「含む(includes)」および/または「含む(including)」といった用語は、明示されている特徴、完全体、ステップ、動作、要素および/または構成要素の存在を指定するが、1つまたは複数の他の特徴、完全体、ステップ、動作、要素、構成要素および/またはそれらのグループの存在や追加を排除しないことがさらに理解されよう。
【0099】
いくつかの代替の実装形態では、示されている機能/行為は、図に示されているものと違う順序で生じ得ることにも留意されたい。たとえば、連続して示されている2つの図が、実際には、包含される機能性/行為に依拠して、同時に実行されてよく、時には逆順に実行されてもよい。
【0100】
本明細書で使用されるすべての用語(技術用語および科学用語を含む)は、別様に定義されなければ、例示の実施形態が属する技術の当業者によって一般的に理解されるものと同一の意味を有する。たとえば、一般に使用される辞書において定義されている用語は、関連技術の状況に矛盾しない意味を有するものと解釈されるべきであり、したがって、本明細書においてそのように明確に定義されない限り、理想化されるまたは過度に形式化される意味には解釈されないことがさらに理解されよう。
【0101】
上記の例示の実施形態および対応する詳細な説明の一部は、ソフトウェア、またはコンピュータメモリの内部のデータビット上の動作のアルゴリズムおよび記号表現に関して提示されている。これらの記述および表現は、当業者が、自分の著作物の実体を他の当業者に効果的に伝えるものである。本明細書で一般に使用されているアルゴリズムという用語は、所望の結果につながる、自己矛盾がないステップのシーケンスであると理解される。ステップは、物理量の物理的操作を必要とするものである。必須ではないが、これらの量は、通常は、記憶、転送、組合せ、比較、または操作が可能な、光信号、電気信号、または磁気信号の形をとる。これらの信号を、主に共通の使用法の理由で、時にはビット、値、要素、シンボル、特性、用語、番号などと称すると便利であることが判明している。
【0102】
上記の実例となる実施形態において、プログラムモジュールまたは機能プロセスとして実施され得る、行為に対する参照および(たとえば流れ図の形式の)動作の記号表現は、特定のタスクを実行するか、または特定の抽象データ型を実施する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含み、既存の構造要素における既存のハードウェアを使用して、記述され、かつ/または実施され得る。そのような既存のハードウェアは、1つまたは複数の中央処理装置(CPU)、デジタル信号プロセッサ(DSP)、特定用途向け集積回路、フィールドプログラマブルゲートアレイ(FPGA)コンピュータなどを含み得る。
【0103】
しかしながら、すべてのこれら用語および類似の用語は、適切な物理量に関連付けられるべきであり、これらの量に適用される都合のよいラベルでしかないことも念頭に置くべきである。特に別記しない限り、すなわち議論から明らかなように、処理、演算、計算、判定、表示などの用語は、コンピュータシステムのレジスタおよびメモリの内部の物理的、電子的な量として表されるデータを、コンピュータシステムのメモリもしくはレジスタ、または他のそのような情報の記憶装置、伝送デバイスもしくは表示デバイスの内部の、物理量として同様に表される他のデータへと処理したり変換したりする、コンピュータシステムまたは類似のコンピューティングデバイスのアクションおよび処理を指す。
【0104】
例示の実施形態のソフトウェアで実施される態様は、一般的には何らかの形態の非一時的プログラム記憶媒体上に符号化されるか、またはいくつかのタイプの伝送媒体を通じて実施されることにも留意されたい。プログラム記憶媒体は、磁気媒体(たとえばフロッピーディスクまたはハードドライブ)または光媒体(たとえばコンパクトディスク読出し専用メモリすなわちCD ROM)であってよく、読出し専用媒体またはランダムアクセス媒体であってよい。同様に、伝送媒体は、ツイストペア線、同軸ケーブル、光ファイバ、または当技術で既知の他の適切な伝送媒体でよい。例示の実施形態は、いかなる所与の実装形態のこれらの態様によっても制限されない。
【0105】
最後に、添付の特許請求の範囲は、本明細書で説明されている特徴の特定の組合せを提示するが、本開示の範囲は、以下で特許請求される特定の組合せに限定されることなく、その特定の組合せが、現時点で添付の特許請求の範囲の中に具体的に列挙されているかどうかということに関係なく、本明細書で開示されている特徴または実施形態のあらゆる組合せを包含するように広がることにも留意されたい。
図1A
図1B
図1C
図2
図3
図4A
図4B
図5
図6
図7
図8
図9
図10
図11
【手続補正書】
【提出日】2023-12-14
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
時間間隔をおいて取り込まれている第1のパノラマ画像と第2のパノラマ画像とに関連するステレオ深度を予測するステップと、
前記第1のパノラマ画像と前記第1のパノラマ画像に対応するステレオ深度とに基づいて、第1のメッシュ表現を生成するステップと、
前記第2のパノラマ画像と前記第2のパノラマ画像に対応するステレオ深度とに基づいて、第2のメッシュ表現を生成するステップと、
前記第1のメッシュ表現を前記第2のメッシュ表現と融合させることに基づいて第3のパノラマ画像を合成するステップと
を含む方法。
【請求項2】
前記第1のパノラマ画像および前記第2のパノラマ画像は、360度の、広いベースラインの正距円筒図法(ERP)のパノラマである、請求項1に記載の方法。
【請求項3】
前記ステレオ深度を予測する前記ステップは、前記第1のパノラマ画像および前記第2のパノラマ画像ならびに少なくとも1つの目標位置に基づき、球面掃引コストボリュームを使用して、前記第1のパノラマ画像および前記第2のパノラマ画像の各々の深度を推定する、請求項1に記載の方法。
【請求項4】
前記ステレオ深度を予測する前記ステップは、前記第1のパノラマ画像に関連した第1の特徴マップと、前記第2のパノラマ画像とに基づいて、低解像度深度を推定し、
前記ステレオ深度を予測する前記ステップは、前記第1の特徴マップと、前記第1のパノラマ画像に関連した第2の特徴マップとに基づいて、高解像度深度を推定する、
請求項1に記載の方法。
【請求項5】
前記第1のメッシュ表現を生成する前記ステップは、前記第1のパノラマ画像と、前記第1のパノラマ画像に対応する前記ステレオ深度に基づいて判定される不連続性とに基づき、
前記第2のメッシュ表現を生成する前記ステップは、前記第2のパノラマ画像と、前記第2のパノラマ画像に対応する前記ステレオ深度に基づいて判定される不連続性とに基づく、
請求項1に記載の方法。
【請求項6】
前記第1のメッシュ表現を生成する前記ステップは、第1の目標位置に基づいて前記第1のメッシュ表現を第1の360度のパノラマへとレンダリングするステップを含み、
前記第2のメッシュ表現を生成する前記ステップは、第2の目標位置に基づいて前記第2のメッシュ表現を第1の360度のパノラマへとレンダリングするステップを含み、
前記第1の目標位置および前記第2の目標位置は、前記第1のパノラマ画像の前記取込みと前記第2のパノラマ画像の前記取込みとの間の前記時間間隔に基づく、
請求項1に記載の方法。
【請求項7】
前記第3のパノラマ画像を合成する前記ステップは、前記第1のメッシュ表現を前記第2のメッシュ表現と融合させるステップと、
前記第1のメッシュ表現と前記第2のメッシュ表現との間の両義性を解消するステップと、
前記合成されている第3のパノラマ画像における穴をインペイントするステップと
を含む、請求項1に記載の方法。
【請求項8】
前記第3のパノラマ画像を合成する前記ステップは、前記第1のパノラマ画像に対応する前記ステレオ深度における負の領域に基づいて前記第1のメッシュ表現における穴を識別し、前記第2のパノラマ画像に対応する前記ステレオ深度における負の領域に基づいて前記第2のメッシュ表現における穴を識別するために、2値の視認性マスクを生成するステップを含む、請求項1に記載の方法。
【請求項9】
前記第3のパノラマ画像を合成する前記ステップは、訓練済みニューラルネットワークを使用するステップを含み、
前記訓練済みニューラルネットワークは、各畳み込み層において循環パディングを使用して、前記第3のパノラマ画像の左右の縁部を結合する、
請求項1に記載の方法。
【請求項10】
時間間隔をおいて取り込まれている第1のパノラマ画像と第2のパノラマ画像とに関連するステレオ深度を予測するように構成されている深度予測器と、
前記第1のパノラマ画像と前記第1のパノラマ画像に対応するステレオ深度とに基づいて、第1のメッシュ表現を生成するように構成されている第1の差分メッシュレンダラと、
前記第2のパノラマ画像と前記第2のパノラマ画像に対応するステレオ深度とに基づいて、第2のメッシュ表現を生成するように構成されている第2の差分メッシュレンダラと、
前記第1のメッシュ表現を前記第2のメッシュ表現と融合させることに基づいて第3のパノラマ画像を合成するように構成されている融合ネットワークと
を備えるシステム。
【請求項11】
前記第1のパノラマ画像および前記第2のパノラマ画像は、360度の、広いベースラインの正距円筒図法(ERP)のパノラマである、請求項10に記載のシステム。
【請求項12】
前記ステレオ深度を前記予測することは、前記第1のパノラマ画像および前記第2のパノラマ画像ならびに少なくとも1つの目標位置に基づき、球面掃引コストボリュームを使用して、前記第1のパノラマ画像および前記第2のパノラマ画像の各々の深度を推定する、請求項10に記載のシステム。
【請求項13】
前記ステレオ深度を前記予測することは、前記第1のパノラマ画像に関連した第1の特徴マップと、前記第2のパノラマ画像とに基づいて、低解像度深度を推定し、
前記ステレオ深度を前記予測することは、前記第1の特徴マップと、前記第1のパノラマ画像に関連した第2の特徴マップとに基づいて、高解像度深度を推定する、
請求項10に記載のシステム。
【請求項14】
前記第1のメッシュ表現を前記生成することは、前記第1のパノラマ画像と、前記第1のパノラマ画像に対応する前記ステレオ深度に基づいて判定される不連続性とに基づき、
前記第2のメッシュ表現を前記生成することは、前記第2のパノラマ画像と、前記第2のパノラマ画像に対応する前記ステレオ深度に基づいて判定される不連続性とに基づく、
請求項10に記載のシステム。
【請求項15】
前記第1のメッシュ表現を前記生成することは、第1の目標位置に基づいて前記第1のメッシュ表現を第1の360度のパノラマへとレンダリングすることを含み、
前記第2のメッシュ表現を前記生成することは、第2の目標位置に基づいて前記第2のメッシュ表現を第1の360度のパノラマへとレンダリングすることを含み、
前記第1の目標位置および前記第2の目標位置は、前記第1のパノラマ画像の前記取込みと前記第2のパノラマ画像の前記取込みとの間の前記時間間隔に基づく、
請求項10に記載のシステム。
【請求項16】
前記第3のパノラマ画像を前記合成することは、前記第1のメッシュ表現を前記第2のメッシュ表現と融合させることと、
前記第1のメッシュ表現と前記第2のメッシュ表現との間の両義性を解消することと、
前記合成されている第3のパノラマ画像における穴をインペイントすることと
を含む、請求項10に記載のシステム。
【請求項17】
前記第3のパノラマ画像を前記合成することは、前記第1のパノラマ画像に対応する前記ステレオ深度における負の領域に基づいて前記第1のメッシュ表現における穴を識別し、前記第2のパノラマ画像に対応する前記ステレオ深度における負の領域に基づいて前記第2のメッシュ表現における穴を識別するために、2値の視認性マスクを生成することを含む、請求項10に記載のシステム。
【請求項18】
前記第3のパノラマ画像を前記合成することは、訓練済みニューラルネットワークを使用することを含み、
前記訓練済みニューラルネットワークは、各畳み込み層において循環パディングを使用して、前記第3のパノラマ画像の左右の縁部を結合する、
請求項10に記載のシステム。
【請求項19】
命令を含むコンピュータプログラムであって、前記命令は、コンピュータシステムの少なくとも1つのプロセッサによって実行されると、前記コンピュータシステムに、
第1のパノラマ画像の取込みと第2のパノラマ画像の取込みとの間の時間間隔で取り込まれている、360度の、広いベースラインの正距円筒図法(ERP)のパノラマである、前記第1のパノラマ画像および前記第2のパノラマ画像に関連するステレオ深度を予測することと、
前記第1のパノラマ画像と前記第1のパノラマ画像に対応するステレオ深度とに基づいて、第1のメッシュ表現を生成することと、
前記第2のパノラマ画像と前記第2のパノラマ画像に対応するステレオ深度とに基づいて、第2のメッシュ表現を生成することと、
前記第1のメッシュ表現を前記第2のメッシュ表現と融合させることに基づいて第3のパノラマ画像を合成することと
を行わせるように構成されている、コンピュータプログラム
【請求項20】
前記第1のメッシュ表現を前記生成することは、第1の目標位置に基づいて前記第1のメッシュ表現を第1の360度のパノラマへとレンダリングすることを含み、
前記第2のメッシュ表現を前記生成することは、第2の目標位置に基づいて前記第2のメッシュ表現を第1の360度のパノラマへとレンダリングすることを含み、
前記第1の目標位置および前記第2の目標位置は、前記第1のパノラマ画像の前記取込みと前記第2のパノラマ画像の前記取込みとの間の前記時間間隔に基づく、
請求項19に記載のコンピュータプログラム
【国際調査報告】