(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-18
(45)【発行日】2024-11-26
(54)【発明の名称】拘束されない画像データに対してロバストな視点合成
(51)【国際特許分類】
G06T 7/00 20170101AFI20241119BHJP
G06T 17/10 20060101ALI20241119BHJP
G06T 15/08 20110101ALI20241119BHJP
【FI】
G06T7/00 350C
G06T17/10
G06T15/08
(21)【出願番号】P 2022581605
(86)(22)【出願日】2021-07-29
(86)【国際出願番号】 US2021043680
(87)【国際公開番号】W WO2022026692
(87)【国際公開日】2022-02-03
【審査請求日】2023-02-28
(32)【優先日】2020-07-31
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100108453
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】ダニエル・クリストファー・ダックワース
(72)【発明者】
【氏名】アレクセイ・ドソヴィツキー
(72)【発明者】
【氏名】リカルド・マルティン・ブルアラ
(72)【発明者】
【氏名】ジョナサン・ティルトン・バロン
(72)【発明者】
【氏名】ノハ・ラドワン
(72)【発明者】
【氏名】セイエド・モハメッド・メディ・サジャディ
【審査官】▲柳▼谷 侑
(56)【参考文献】
【文献】Stephen Lombardi et al.,Neural Volumes: Learning Dynamic Renderable Volumes from Images,[online],2019年01月18日,https://arxiv.org/pdf/1906.07751.pdf
【文献】Ben Mildenhall et al.,NeRF Representing Scenes as Neural Radiance Fields for View Synthesis,[online],2020年08月03日,https://arxiv.org/pdf/2003.08934.pdf
(58)【調査した分野】(Int.Cl.,DB名)
G06T 1/00 - 1/40
G06T 3/00 - 7/90
G06T 17/10
G06T 15/08
G06V 10/00 - 20/90
G06V 30/418
G06V 40/16
(57)【特許請求の範囲】
【請求項1】
シーンの合成画像を生成するためのコンピューティングシステムであって、
1つまたは複数のプロセッサと、
1つまたは複数のコンピュータ可読記憶媒体とを含み、前記1つまたは複数のコンピュータ可読記憶媒体は、
基部、前記シーン内の静的コンテンツをモデル化する静的コンテンツ部、および前記シーン内の一時的コンテンツをモデル化する一時的コンテンツ部を含む機械学習済み視点合成モデルと、
前記1つまたは複数のプロセッサによって実行されると、前記コンピューティングシステムに動作を実行させる命令とをまとめて記憶し、前記動作は、
3次元空間内の位置を取得することと、
静的不透明度および潜在表現を生成するために前記機械学習済み視点合成モデルの前記基部を用いて前記位置を記述するデータを処理することと、
静的な色を生成するために前記機械学習済み視点合成モデルの前記静的コンテンツ部を用いて前記潜在表現を処理することと、
一時的不透明度および一時的な色を生成するために前記機械学習済み視点合成モデルの前記一時的コンテンツ部を用いて前記潜在表現を処理することと、
前記静的不透明度、前記静的な色、前記一時的不透明度、および前記一時的な色から合成画像の合成ピクセルに対する合成ピクセル色を生成するためにボリュームレンダリングを実行することとを含む、コンピューティングシステム。
【請求項2】
3次元空間内の前記位置は、既存の訓練画像に関連する捕捉位置を含み、
前記動作は、
前記合成ピクセル色を、前記既存の訓練画像内に含む訓練ピクセルに対するグラウンドトゥルースピクセル色と比較する損失関数を評価することと、
前記損失関数に少なくとも部分的に基づいて前記機械学習済み視点合成モデルの1つまたは複数のパラメータに対する1つまたは複数のパラメータ値を修正することとをさらに含む、請求項1に記載のコンピューティングシステム。
【請求項3】
前記機械学習済み視点合成モデルの前記一時的コンテンツ部を用いて前記潜在表現を前記処理することは、不確実性値をさらに生成し、
前記損失関数は、損失の大きさと前記不確実性値との間に負相関をもたらすピクセル損失項を含む、請求項2に記載のコンピューティングシステム。
【請求項4】
前記動作は、
前記一時的不透明度および前記一時的な色を生成するために、前記潜在表現と並んで前記機械学習済み視点合成モデルの前記一時的コンテンツ部に不確実性埋め込みを入力することをさらに含む、請求項1から3のいずれか一項に記載のコンピューティングシステム。
【請求項5】
前記動作は、
前記静的な色を生成するために、前記潜在表現と並んで前記機械学習済み視点合成モデルの前記静的コンテンツ部に生成的埋め込みを入力することをさらに含む、請求項2、3または4に記載のコンピューティングシステム。
【請求項6】
前記生成的埋め込みは、前記既存の訓練画像と関連付けられ、
前記動作は、前記損失関数に少なくとも部分的に基づいて前記生成的埋め込みの1つまたは複数の値を修正することをさらに含む、請求項2または3を引用する請求項5に記載のコンピューティングシステム。
【請求項7】
前記動作は、
前記静的不透明度および前記潜在表現を生成するために、前記位置と並行して前記機械学習済み視点合成モデルの前記基部に1つまたは複数のカメラパラメータを入力することと、
前記損失関数に少なくとも部分的に基づいて前記カメラパラメータのうちの1つまたは複数を修正することとをさらに含む、請求項2または3に記載のコンピューティングシステム。
【請求項8】
前記合成画像内の各それぞれのピクセルに対する前記動作の各々を実行する、請求項1から7のいずれか一項に記載のコンピューティングシステム。
【請求項9】
前記位置は、ロケーションおよび方向付けを含む、請求項1から8のいずれか一項に記載のコンピューティングシステム。
【請求項10】
前記位置は、前記機械学習済み視点合成モデルがその上で訓練した訓練セット内に含まれない新しい位置を含む、請求項1、8または9に記載のコンピューティングシステム。
【請求項11】
前記機械学習済み視点合成モデルの前記基部、前記静的コンテンツ部、および前記一時的コンテンツ部の各々は、それぞれの多層パーセプトロンを含む、請求項1から10のいずれか一項に記載のコンピューティングシステム。
【請求項12】
ユーザ指定可能な特性を有する視点合成のためのコンピュータ実装方法であって、
3次元空間内の所望の位置およびユーザ指定の生成的埋め込みを、1つまたは複数のコンピューティングデバイスを含むコンピューティングシステムによって取得するステップであって、前記生成的埋め込みは、生成される合成画像の1つまたは複数の視覚特性を符号化する、ステップと、
不透明度および潜在表現を生成するために機械学習済み視点合成モデルの基部を用いて前記位置を記述するデータを、前記コンピューティングシステムによって処理するステップと、
色を生成するために前記機械学習済み視点合成モデルのコンテンツ部を用いて前記潜在表現および前記生成的埋め込みを、前記コンピューティングシステムによって処理するステップと、
前記不透明度および前記色から前記合成画像の合成ピクセルに対する合成ピクセル色を生成するために、ボリュームレンダリングを前記コンピューティングシステムによって実行するステップとを含み、前記合成画像は、前記生成的埋め込みによって符号化された前記1つまたは複数の視覚特性を示す、コンピュータ実装方法。
【請求項13】
前記基部によって生成された前記不透明度は、静的不透明度を含み、
前記色を生成するために前記機械学習済み視点合成モデルの前記コンテンツ部を用いて前記潜在表現および前記生成的埋め込みを、前記コンピューティングシステムによって処理するステップが、
静的な色を生成するために前記機械学習済み視点合成モデルの静的コンテンツ部を用いて前記潜在表現および前記生成的埋め込みを、前記コンピューティングシステムによって処理するステップと、
一時的不透明度および一時的な色を生成するために前記機械学習済み視点合成モデルの一時的コンテンツ部を用いて前記潜在表現を、前記コンピューティングシステムによって処理するステップとを含み、
前記不透明度および前記色から前記合成画像の前記合成ピクセルに対する前記合成ピクセル色を生成するために、ボリュームレンダリングを前記コンピューティングシステムによって実行するステップが、前記静的不透明度、前記静的な色、前記一時的不透明度、および前記一時的な色から前記合成画像の前記合成ピクセルに対する前記合成ピクセル色を生成するために、ボリュームレンダリングを前記コンピューティングシステムによって実行するステップを含む、請求項12に記載のコンピュータ実装方法。
【請求項14】
前記一時的不透明度および前記一時的な色を生成するために、前記潜在表現と並んで前記機械学習済み視点合成モデルの前記一時的コンテンツ部に、不確実性埋め込みを前記コンピューティングシステムによって入力するステップをさらに含む、請求項13に記載のコンピュータ実装方法。
【請求項15】
前記生成的埋め込みは、ユーザによって選択された2つ以上
の既存の画像と関連付けられたそれぞれの画像埋め込みを補間することによって生成された、補間された埋め込みを含む、請求項12から14のいずれか一項に記載のコンピュータ実装方法。
【請求項16】
1つまたは複数のプロセッサによって実行されると、コンピューティングシステムに動作を実行させる命令をまとめて記憶する1つまたは複数のコンピュータ可読記憶媒体であって、前記動作は、
3次元空間内の位置、および既存の訓練画像と関連付けられた訓練埋め込みを、前記コンピューティングシステムによって取得することであって、前記訓練埋め込みは、前記既存の訓練画像の1つまたは複数の視覚特性を符号化する、ことと、
不透明度および潜在表現を生成するために機械学習済み視点合成モデルの基部を用いて前記位置を記述するデータを、前記コンピューティングシステムによって処理することと、
色を生成するために前記機械学習済み視点合成モデルのコンテンツ部を用いて前記潜在表現および前記訓練埋め込みを、前記コンピューティングシステムによって処理することと、
前記不透明度および前記色から合成画像の合成ピクセルに対する合成ピクセル色を生成するために、ボリュームレンダリングを前記コンピューティングシステムによって実行することと、
前記合成ピクセル色を、前記既存の訓練画像内に含む訓練ピクセルに対するグラウンドトゥルースピクセル色と比較する損失関数を評価することと、
前記損失関数に少なくとも部分的に基づいて前記訓練埋め込みの1つまたは複数の値を修正することとを含む、1つまたは複数のコンピュータ可読記憶媒体。
【請求項17】
前記基部によって生成された前記不透明度は静的不透明度を含み、
前記色を生成するために前記機械学習済み視点合成モデルの前記コンテンツ部を用いて前記潜在表現および前記訓練埋め込みを、前記コンピューティングシステムによって処理することが、
静的な色を生成するために前記機械学習済み視点合成モデルの静的コンテンツ部を用いて前記潜在表現および前記訓練埋め込みを、前記コンピューティングシステムによって処理することと、
一時的不透明度および一時的な色を生成するために前記機械学習済み視点合成モデルの一時的コンテンツ部を用いて前記潜在表現を、前記コンピューティングシステムによって処理することとを含み、
前記不透明度および前記色から前記合成画像の前記合成ピクセルに対する前記合成ピクセル色を生成するために、ボリュームレンダリングを前記コンピューティングシステムによって実行することが、前記静的不透明度、前記静的な色、前記一時的不透明度、および前記一時的な色から前記合成画像の前記合成ピクセルに対する前記合成ピクセル色を生成するために、ボリュームレンダリングを前記コンピューティングシステムによって実行することを含む、請求項16に記載の1つまたは複数のコンピュータ可読記憶媒体。
【請求項18】
前記機械学習済み視点合成モデルの前記一時的コンテンツ部を用いて前記潜在表現を前記処理することは、不確実性値をさらに生成し、
前記損失関数は、損失の大きさと前記不確実性値との間に負相関をもたらすピクセル損失項を含む、請求項17に記載の1つまたは複数のコンピュータ可読記憶媒体。
【請求項19】
前記動作が、
前記不透明度および前記潜在表現を生成するために、前記位置と並んで前記機械学習済み視点合成モデルの前記基部に、前記既存の訓練画像を捕捉したカメラと関連付けられた1つまたは複数のカメラパラメータを入力することと、
前記損失関数に少なくとも部分的に基づいて前記カメラパラメータのうちの1つまたは複数を修正することとをさらに含む、請求項16から18のいずれか一項に記載の1つまたは複数のコンピュータ可読記憶媒体。
【請求項20】
1つまたは複数のプロセッサによって実行されると、コンピューティングシステムに動作を実行させる命令をまとめて記憶する1つまたは複数のコンピュータ可読記憶媒体であって、前記動作は、
3次元空間内の位置、および既存の訓練画像と関連付けられた1つまたは複数のカメラパラメータを、前記コンピューティングシステムによって取得することと、
不透明度および潜在表現を生成するために機械学習済み視点合成モデルの基部を用いて前記位置および前記1つまたは複数のカメラパラメータを記述するデータを、前記コンピューティングシステムによって処理することと、
色を生成するために前記機械学習済み視点合成モデルのコンテンツ部を用いて前記潜在表現を、前記コンピューティングシステムによって処理することと、
前記不透明度および前記色から合成画像の合成ピクセルに対する合成ピクセル色を生成するために、ボリュームレンダリングを前記コンピューティングシステムによって実行することと、
前記合成ピクセル色を、前記既存の訓練画像内に含む訓練ピクセルに対するグラウンドトゥルースピクセル色と比較する損失関数を評価することと、
前記損失関数に少なくとも部分的に基づいて前記カメラパラメータの1つまたは複数の値を修正することとを含む、1つまたは複数のコンピュータ可読記憶媒体。
【請求項21】
シーンの合成画像を生成するためのコンピューティングシステムであって、
1つまたは複数のプロセッサと、
1つまたは複数のコンピュータ可読記憶媒体とを含み、前記1つまたは複数のコンピュータ可読記憶媒体は、
基部および前記シーン内の静的コンテンツをモデル化する静的コンテンツ部を含む機械学習済み視点合成モデル
であって、前記基部および静的部分は前記シーン内の一時的コンテンツをモデル化する一時的コンテンツ部と一緒に訓練された、機械学習済み視点合成モデルと、
前記1つまたは複数のプロセッサによって実行されると、前記コンピューティングシステムに動作を実行させる命令とをまとめて記憶し、前記動作は、
3次元空間内の位置を取得することと、
静的不透明度および潜在表現を生成するために前記機械学習済み視点合成モデルの前記基部を用いて前記位置を記述するデータを処理することと、
静的な色を生成するために前記機械学習済み視点合成モデルの前記静的コンテンツ部を用いて前記潜在表現を処理することと、
一時的不透明度および一時的な色を生成するために前記機械学習済み視点合成モデルの前記一時的コンテンツ部を用いて前記潜在表現を処理することと、
前記静的不透明度、前記静的な色、前記一時的不透明度、および前記一時的な色から合成画像の合成ピクセルに対する合成ピクセル色を生成するためにボリュームレンダリングを実行することとを含む、コンピューティングシステム。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願
本出願は、2020年7月31日に出願された米国仮特許出願第63/059,322号の優先権および利益を主張する。米国仮特許出願第63/059,322号は、その全体が参照により本明細書に組み込まれる。
【0002】
本開示は、一般に、たとえばシーンの視点合成の実行を促進させるためにシーンをモデル化するためのシステムおよび方法に関する。より詳細には、本開示は、可変照明および一時的な遮蔽物など、制御されない画像におけるユビキタスな実世界現象に対して改善されたロバスト性を与える機械学習モデルに関する。
【背景技術】
【0003】
視点合成のタスクは、所与の視点から撮られたいくつかの写真から開始する特定の環境の新しい視点(たとえば、シーン、オブジェクト(object)、または被写体(subject))を生成することを狙いとする。一例として、特定のカメラ設定および方向付けによって特定のポイントから捕捉された1つの特定の被写体のいくつかの画像が与えられると、視点合成システムは、異なるポイントに設置され、所与のセッティングを有する仮想カメラから捕捉されたかのような合成画像を生成しようとする。
【0004】
視点合成に対するいくつかの手法が、制御された環境において捕捉された画像からボリュームシーン密度および輝度を効果的に学習するためにニューラル輝度場を活用しているが、これらの手法は、可変照明および一時的な遮蔽物など、制御されない画像内の多くのユビキタスな実世界現象をモデル化することはできない。
【先行技術文献】
【非特許文献】
【0005】
【文献】MildenhallらによるRepresenting Scenes as Neural Radiance Fields for View Synthesis(arXiv:2003.08934v1)
【発明の概要】
【課題を解決するための手段】
【0006】
本開示の実施形態の態様および利点は、以下の説明において部分的に記載されるか、または説明から知ることができるか、または実施形態の実施を通して知ることができる。
【0007】
本開示の例示的な一態様は、シーンの合成画像を生成するためのコンピューティングシステムを対象とする。コンピューティングシステムは、1つまたは複数のプロセッサと、1つまたは複数の非一時的コンピュータ可読媒体とを含み、1つまたは複数の非一時的コンピュータ可読媒体は、基部、シーン内の静的コンテンツをモデル化する静的コンテンツ部、およびシーン内の一時的コンテンツをモデル化する一時的コンテンツ部を含む機械学習済み視点合成モデルと、1つまたは複数のプロセッサによって実行されると、コンピューティングシステムに動作を実行させる命令とをまとめて記憶する。動作は、3次元空間内の位置を取得することと、静的不透明度および潜在表現を生成するために機械学習済み視点合成モデルの基部を用いて位置を記述するデータを処理することと、静的な色を生成するために機械学習済み視点合成モデルの静的コンテンツ部を用いて潜在表現を処理することと、一時的不透明度および一時的な色を生成するために機械学習済み視点合成モデルの一時的コンテンツ部を用いて潜在表現を処理することと、静的不透明度、静的な色、一時的不透明度、および一時的な色から合成画像の合成ピクセルに対する合成ピクセル色を生成するためにボリュームレンダリングを実行することとを含む。
【0008】
本開示の別の例示的態様は、ユーザ指定可能な特性を有する視点合成のためのコンピュータ実装方法を対象とする。方法は、3次元空間内の所望の位置およびユーザ指定の生成的埋め込みを、1つまたは複数のコンピューティングデバイスを含むコンピューティングシステムによって取得するステップを含み、生成的埋め込みは、生成される合成画像の1つまたは複数の視覚特性を符号化する。方法は、不透明度および潜在表現を生成するために機械学習済み視点合成モデルの基部を用いて位置を記述するデータをコンピューティングシステムによって処理するステップを含む。方法は、色を生成するために機械学習済み視点合成モデルのコンテンツ部を用いて潜在表現および生成的埋め込みをコンピューティングシステムによって処理するステップを含む。方法は、不透明度および色から合成画像の合成ピクセルに対する合成ピクセル色を生成するために、ボリュームレンダリングをコンピューティングシステムによって実行するステップを含み、合成画像は、生成的埋め込みによって符号化された1つまたは複数の視覚特性を示す。
【0009】
本開示の別の例示的態様は、命令をまとめて記憶する1つまたは複数の非一時的コンピュータ可読媒体を対象とし、命令は、1つまたは複数のプロセッサによって実行されると、コンピューティングシステムに動作を実行させる。動作は、3次元空間内の位置と、既存の訓練画像と関連付けられた1つまたは複数のカメラパラメータとを、コンピューティングシステムによって取得することを含む。動作は、不透明度および潜在表現を生成するために機械学習済み視点合成モデルの基部を用いて位置および1つまたは複数のカメラパラメータを記述するデータを、コンピューティングシステムによって処理することを含む。動作は、色を生成するために機械学習済み視点合成モデルのコンテンツ部を用いて潜在表現をコンピューティングシステムによって処理することを含む。動作は、不透明度および色から合成画像の合成ピクセルに対する合成ピクセル色を生成するためにボリュームレンダリングをコンピューティングシステムによって実行することを含む。動作は、合成ピクセル色を、既存の訓練画像内に含む訓練ピクセルに対するグラウンドトゥルースピクセル色と比較する損失関数を評価することを含む。動作は、損失関数に少なくとも部分的に基づいてカメラパラメータの1つまたは複数の値を修正することを含む。
【0010】
本開示の別の例示的態様は、シーンの合成画像を生成するためのコンピューティングシステムを対象とする。コンピューティングシステムは、1つまたは複数のプロセッサと、1つまたは複数の非一時的コンピュータ可読媒体とを含み、1つまたは複数の非一時的コンピュータ可読媒体は、基部およびシーン内の静的コンテンツをモデル化する静的コンテンツ部を含む機械学習済み視点合成モデルあって、基部および静的部分はシーン内の一時的コンテンツをモデル化する一時的コンテンツ部と一緒に訓練された、機械学習済み視点合成モデルと、1つまたは複数のプロセッサによって実行されると、コンピューティングシステムに動作を実行させる命令とをまとめて記憶する。動作は、3次元空間内の位置を取得することと、静的不透明度および潜在表現を生成するために機械学習済み視点合成モデルの基部を用いて位置を記述するデータを処理することと、静的な色を生成するために機械学習済み視点合成モデルの静的コンテンツ部を用いて潜在表現を処理することと、静的不透明度および静的な色から合成画像の合成ピクセルに対する合成ピクセル色を生成するためにボリュームレンダリングを実行することとを含む。
【0011】
本開示の他の態様は、様々なシステム、装置、非一時的コンピュータ可読媒体、ユーザインターフェース、および電子デバイスを対象とする。
【0012】
本開示の様々な実施形態のこれらおよび他の特徴、態様、および利点は、以下の説明および添付の特許請求の範囲を参照すると、よりよく理解されよう。本明細書に組み込まれ、本明細書の一部を構成する添付の図面は、本開示の例示的実施形態を示し、この説明とともに、関連する原理について説明するために役立つ。
【0013】
当業者を対象とする実施形態の詳細な説明が本明細書に記載され、本明細書は添付の図を参照する。
【図面の簡単な説明】
【0014】
【
図1】本開示の例示的実施形態による機械学習済み視点合成モデルを訓練し、次いで機械学習済み視点合成モデルを使用して視点合成を実行するための例示的プロセスのブロック図である。
【
図2】本開示の例示的実施形態による機械学習済み視点合成モデルを訓練するための例示的プロセスのブロック図である。
【
図3】本開示の例示的実施形態による機械学習済み視点合成モデルを使用するための例示的プロセスのブロック図である。
【
図4】本開示の例示的実施形態による例示的な機械学習済み視点合成モデルのブロック図である。
【
図5A】本開示の例示的実施形態による例示的コンピューティングシステムのブロック図である。
【
図5B】本開示の例示的実施形態による例示的コンピューティングデバイスのブロック図である。
【
図5C】本開示の例示的実施形態による例示的コンピューティングデバイスのブロック図である。
【発明を実施するための形態】
【0015】
複数の図にわたって繰り返される参照番号は、様々な実装形態において同じ特徴を識別するものである。
【0016】
概要
一般に、本開示は、複雑なシーン(たとえば、屋外のシーン)の新規視点を合成するためのシステムおよび方法を対象とする。いくつかの実装形態では、システムおよび方法は、たとえば、「野生の」写真などの画像の構造化されないおよび/または拘束されない収集から学習することができる機械学習済みモデルを含むかまたは使用することができる。特に、本開示の例示的実装形態は、1つまたは複数の多層パーセプトロン(MLP:multilayer perceptron)もしくは他のニューラルネットワークまたは他の機械学習済みモデルなどの機械学習済みモデルによって表されるボリュームシーン密度および輝度を学習することができる。
【0017】
より詳細には、MildenhallらによるNeRF: Representing Scenes as Neural Radiance Fields for View Synthesis(arXiv:2003.08934v1)、(以後「NeRF」)の中で記述される技法などのいくつかの技法が、制御された環境内で捕捉された画像で有効であるが、それらの技法は、可変照明および一時的な遮蔽物など、制御されない画像内の多くのユビキタスな実世界現象をモデル化することはできない。
【0018】
具体的には、NeRFは、3-D一貫性の仮定のもとに築かれており、同じシーンを撮った2つの写真は一致する必要があるということが仮定されている。しかしながら、制御されない環境(たとえば、「野生の」写真)では、同じシーンの2つの画像は、しばしば、照明特性もしくは他の視覚特性および/または一時的コンテンツ/項目の存在/不在(たとえば、ランドマークの2つの写真の各々が、ランドマークの前に位置する異なる一時的旅行者の組を有する場合がある)における不一致を含む不一致を有する。
【0019】
NeRFは、(学習された)関数によって記述されるシーンごとのモデルを学習する。この関数は、位置(x、y、z)および視線方向(シータ、ファイ)を取り入れて、RGB色および不透明度(シグマ)を作成する。レンダーを生成するために、カメラ内の各ピクセルを通る光線が追跡され、光線の長さに沿って蓄積された不透明度によって重みづけられた色が統合される。NeRFモデルは、予測されるRGB値とグラウンドトゥルース画像との間の平方誤差を最小化するように訓練される。したがって、NeRFを訓練するために、写真およびカメラパラメータが必要となる。写真は、各ピクセルはどの色でなければならないかを示し、カメラパラメータは、そのピクセルから発散する光線が3-D空間のどこに存在するかを示す。
【0020】
本開示は、NeRFモデルまたは同様のモデルを改善するいくつかの技法を提供する。これらの追加は、提案されているモデルが乱雑な実世界の写真に対してよりロバストになることを可能にする。
【0021】
特に、本開示の一態様によれば、訓練画像のセット上で機械学習済み視点合成モデルを訓練する間に、各訓練画像は、生成的埋め込みを割り当てられ得る。生成的埋め込みは、照明特性(たとえば、ホワイトバランス)、コンテンツ特性(たとえば、時刻、天気、季節)、スタイル特性(たとえば、写真編集ソフトウェア設定)など、画像の視覚特性を符号化する役割を果たすことができる。
【0022】
したがって、いくつかの実装形態では、各訓練画像に対して、小さい生成的埋め込み(たとえば、8~32フロートのベクトル)が割り当てられ得る(たとえば、画像IDによってインデックスをつけられる)。そのような生成的埋め込みの使用は、ホワイトバランスおよび文体の後処理など、個別の画像における変動をモデルが考慮することを可能にする。
【0023】
これらの生成的埋め込みは、モデルの一部として学習/更新され得る。たとえば、生成的埋め込みは、モデルパラメータとして扱われ、モデル訓練の間に(たとえば、損失関数の逆伝搬の間にまたはその結果として)更新され得る。そのようなプロセスを通して、同様の特性を有する画像に対する生成的埋め込みが、互いの近くに移動され得る。
【0024】
次に、視点合成の間に、所望の特性(たとえば、所望の照明特性、コンテンツ特性、スタイル特性など)を符号化する所望の生成的埋め込みが、ユーザによって指定され、モデルに供給され得る。応答して、モデルは、所望の生成的埋め込みによって符号化された所望の特性を有する合成画像を生成することができる。一例では、所望の生成的埋め込みが、ユーザによって選択された訓練画像のうちの2つ以上に対して学習された2つ以上の生成的埋め込みを補間することによって取得され得る(たとえば、なぜならば、それらは所望の特性を示す/表すからである)。
【0025】
したがって、モデルは、生成的埋め込みを使用して、下層のシーン内の実際の差異を反映しない画像特性における差異を把握することができる。たとえば、ランドマークの画像に対する後処理設定における差異は、実際には、ランドマーク自体における差異を反映しない。これは、訓練済みモデルが、訓練画像の間の不一致をより良く取り扱うことを可能にし、それは、モデルが、拘束されない訓練画像のセットに対してよりロバストになることをもたらす。
【0026】
別の例示的態様によれば、本開示のいくつかの実装形態は、不確実性をモデルのボリュームレンダリングパイプラインに直接組み込む。たとえば、静的不透明度および静的な色に加えて、モデルは、同じく、不確実性値「β」と、一時的不透明度と、一時的な色とを予測することができる。一時的データは、各光線に対する学習された重み乗算器(weight multiplier)を取得するために、静的データに対して実行されるように積分され得る。直観的に、これは、モデルが、他の写真と一致しない(たとえば、多くの場合、画像内の一時的で一貫性のない遮蔽物に相当する)画像の「困難な」部分を再構築することの優先順位を下げることを可能にする。
【0027】
したがって、本開示の例示的実装形態は、基部、シーン内の静的コンテンツをモデル化する静的コンテンツ部、およびシーン内の一時的コンテンツをモデル化する一時的コンテンツ部を含む新規のモデルアーキテクチャを有する。いくつかの実装形態では、モデルが訓練される損失関数は、予測される合成色とグラウンドトゥルース色との間の差異が、視点合成モデルによってモデル化された一時的コンテンツから生じる例に対する損失の低減された量をもたらすことができる。したがって、グラウンドトゥルース画像が、一時的コンテンツを示すか、または場合によっては高い不確実性に関連する場合、モデルは、グラウンドトゥルース画像から逸脱する能力を有する。これは、訓練済みモデルが、訓練画像の間の不一致をより良く取り扱うことを可能にし、それは、モデルが、拘束されない訓練画像のセットに対してよりロバストになることをもたらす。
【0028】
別の例示的態様によれば、本開示のいくつかの実装形態は、モデル自体の中の各訓練画像のカメラパラメータを直接微調整することができる。例示的なカメラパラメータは、方向付け、ロケーション、焦点距離、主点、スキュー、放射状歪み、接線歪み、および/または様々なカメラ固有性(camera intrinsics)を含む。これは、モデルが、カメラパラメータを(たとえば、いくつかのしきい値または許容値の中で)調整して、再構築されるシーンに完全に合致することを可能にし、そして3-Dレジストレーションにおいて一般的に使用される疎な画像特徴に依存しない。言い換えれば、各訓練画像に対するカメラパラメータが修正されることを可能にすることによって、訓練データセット内に存在する雑音の一部の量が、データセットから除去され得る。これは、訓練済みモデルが、訓練画像の間の不一致をより良く取り扱うことを可能にし、それは、モデルが、拘束されない訓練画像のセットに対してよりロバストになることをもたらす。
【0029】
本開示のシステムおよび方法は、いくつかの技術的効果および利益を提供する。一例として、本明細書で説明するシステムおよび方法は、モデルが、制御されない画像に対してよりロバストになることを可能にする。これは、制御されない訓練データセットに基づいてシーンの視点を合成するときに改善されたモデル性能をもたらす。したがって、本開示のシステムおよび方法は、視点合成システムの現実感、一貫性、およびユーザ可制御性を改善する。
【0030】
訓練データセット内の不一致を把握および/または訂正するための明確な機構を有するモデルを提供することによる、別の例示的な技術的効果および利益として、モデルは、より速く(たとえば、より少ない訓練回数でおよび/またはより少ない訓練画像を必要として)最適解に収束することができることになる。より速い収束は、低減されたプロセッサ使用量、メモリ使用量、および/または帯域幅使用量など、計算リソースの節約をもたらすことができる。
【0031】
したがって、本開示は、拘束されない画像に関連する問題を解決する、および/または追加のユーザ可制御性を提供するシステムおよび方法を提供する。米国仮特許出願第63/059,322号に含まれる例示的な実験データは、提案されている技法の有効性を、包括的な人工的実験および実世界の実験を介して実証している。例示的な実験は、高解像度キャプチャとインターネット写真の両方を使用して、本明細書で説明するシステムの例示的実装形態を複数のランドマークに適用し、写実的な再構築と前の作品を著しくしのぐ結果とをもたらす。
【0032】
本開示の例示的実装形態は、画像の単一のフレームに関して説明されるが、本開示のシステムおよび方法は、ビデオまたは他のマルチフレームデータセットに等しく適用され得る。たとえば、モデル化されたシーンの「上空飛行」を示すビデオが合成され得る。ビデオのフレームは、(たとえば、合成されたビデオのフレームのすべてに対する同じ所望の生成的埋め込みの一貫性のある使用を介して)一時的および文体的に一貫性があり得る。
【0033】
加えて、合成された画像のフレームは、モデルがその上で訓練される訓練画像と同じまたは異なる解像度であり得る。たとえば、モデルは、低解像度の画像の上で訓練され、次いで、高解像度の合成画像を生成するために使用され得る。
【0034】
本開示のシステムおよび方法によって使用および/または生成された色データ(たとえば、入力データの色、静的な色、一時的な色、合成色など)が、たとえばRGB空間(たとえば、RGB、RGBA)、CIE空間、HSVおよびHSL空間、CMYK空間、グレースケール、および/または他の色空間を含む任意の色空間内で表され得る。
【0035】
次に図を参照しながら、本開示の例示的実施形態について、さらに詳細に説明する。
例示的技法
【0036】
このセクションは、いくつかの実装形態ではNeRF-Wと呼ばれことがある、提案されている手法の例示的実装形態を説明する。説明するモデルは、「野生の」写真集から3-Dシーンを再構築するために適切に設計されており、Mildenhallらによって説明されるNeRFモデルを向上させる。
【0037】
その中核において、NeRFは、多視点一貫性に依存し、3-D空間内のすべてのポイントは、すべての(遮るもののない)視点において同じように見えなければならない。この条件は、視線方向に応じて緩和されるが、色の著しい変動は、NeRFが捕捉することができるものではない。特に、NeRFは、一般的に、視野角に伴うこれらの変動と関連付けることによって色の変動を取り扱う。そのため、単一の画像は正常に見えるが、異なる視野角からの複数の画像(たとえば、フライスルービデオ)の検証ビューまたはセットは一致しないことになる。
【0038】
写真が単一の人によって制御された設定において捕捉されるとき、NeRFの仮定が満足され、写実的な再構築は達成可能である。しかしながら、有名なランドマークのアマチュア写真など、拘束されない写真集は、NeRFが把握できない多くの課題を提示する。
【0039】
一例として、拘束されない画像は、同じシーンであるが異なる天気におけるシーンを示す場合がある。写真は、可変照明条件のもとで異なる時点に撮られる。屋外写真では、時刻および天気が、シーン内のすべてのオブジェクトの色に直接影響を及ぼす。さらに、空自体が、時間とともに変化する。
【0040】
別の例として、拘束されない画像は、同じシーンであるが異なる後処理によるシーンを示す場合があり、露出およびホワイトバランスの調整を含む写真の後処理はまったく拘束されず、さらに、シーン内のすべてのオブジェクトの色に影響を及ぼす。
【0041】
さらに別の例として、拘束されない画像は、同じシーンであるが異なる一時的オブジェクトを有するシーンを示す場合があり、写真は、単一の時点で捕捉されたものではないので、人、旗、および枝葉を含む一時的オブジェクトは、画像ごとに変動する。
【0042】
以下の説明において(および同じく上記の要約において)、本開示は、これらの現象に取り組むように直接的に設計されたいくつかの機能強化を提案する。
【0043】
図1は、本開示の例示的実施形態による、機械学習済み視点合成モデルを訓練し、次いで機械学習済み視点合成モデルを使用して視点合成を実行するための例示的プロセスのブロック図を示す。
【0044】
図1を参照すると、訓練データセット12は、シーンを示す既存の訓練画像を含むことができる。本明細書で説明するように、訓練画像は拘束されず、互いに様々な不一致を示す場合がある。14において示すように、コンピューティングシステムは、機械学習済み視点合成モデル16を生成するために、訓練データセット12上でモデル最適化または訓練プロセスを実行することができる(たとえば、
図2参照)。訓練の後、所望の合成画像の位置18が、モデル16に提供され得る。応答して、モデル16は、位置18からのシーンを示す合成画像20を生成することができる(たとえば、
図3参照)。
【0045】
図2は、本開示の例示的実施形態による機械学習済み視点合成モデルを訓練するための例示的プロセスのブロック図を示す。いくつかの実装形態では、
図2に示すプロセスは、各訓練画像の各ピクセルに対して実行され得る。
【0046】
図2を参照すると、既存の訓練画像の訓練位置22が、機械学習済み視点合成モデル24に提供され得る。位置22は、訓練画像を撮ったカメラのロケーションおよび方向付けを含むことができる。加えて、本開示の態様によれば、いくつかの実装形態では、訓練画像に対する1つまたは複数のカメラパラメータ25および/または訓練画像に対する訓練画像埋め込み26が、機械学習済み視点合成モデル24に提供され得る。例として、追加のカメラパラメータ25は、焦点距離、主点、スキュー、放射状歪み、接線歪み、および/または様々なカメライントリンシクスを含むことができる。訓練画像埋め込み26は、訓練画像に割り当てられた生成的埋め込みであり得る。
【0047】
特に、「野生の」画像によって提示される課題に対する中核は、画像ごとの色変動の概念であり、シーンの3-Dジオメトリはすべての画像の間で同一であることが仮定される一方で、照明および露出などのカメラ設定における変動に起因して、色の一貫性はほとんど期待されない。
【0048】
この問題を解決するために、いくつかの実装形態では、訓練セット内の各画像は、一意の埋め込み
【0049】
【0050】
26を割り当てられ得る。これらの埋め込み
【0051】
【0052】
は、モデルのパラメータと併せて訓練の間に最適化され得る。
【0053】
やはり
図2を参照すると、機械学習済み視点合成モデル24は、不透明度および色データ27を生成するために入力されたデータを処理することができる。たとえば、いくつかの実装形態では、機械学習済み視点合成モデル24は、不透明度および色データ27の単一のセットのみを生成することができるか、または他の実装形態では、シーンの静的コンテンツに対する不透明度および色データの静的セットと、シーンの一時的コンテンツに対する色および不透明度データ27の一時的セットの両方を生成することができる。
【0054】
一例として、微分不透明度σ(r)および色c(r、d)27は、3-Dロケーションr(t)および視線方向dを与えられた多層パーセプトロン(MLP)または他のモデル(たとえば、ニューラルネットワークまたは他の機械学習済みモデルのいくつかの他の形)によって予測され得る。このMLPまたは他のモデルは、視線方向dが微分不透明度σに影響を及ぼさないことを確実にするように明確に設計され得る。たとえば、モデルの基部は、色が、ロケーションと視野角/視線方向の両方から予測され得る間だけ、ロケーションから不透明度を予測することができる。再び、いくつかの実装形態では、このMLPの入力は、埋め込みe(g)で増加され得る。
(c、σ)=MLP(r(t)、d、e(g))
ここでe(g)は、レンダリングされる画像に対応する生成的埋め込みである。視線方向dと同様に、いくつかの例示的な実装形態は、生成的埋め込みe(g)が微分不透明度σに影響を及ぼさないことを確実にすることができる。MLPの入力を埋め込み
【0055】
【0056】
で増加させることによって、提案するモデルは、その3-Dジオメトリを修正することなく画像のアイデンティティに基づいてシーンの色および照明を直接変化させることができる。
【0057】
28において、ボリュームレンダリング技法が、不透明度および色データ27から合成ピクセル色を生成するために実行され得る。たとえば、不透明度および色データ27の単一のセットに対して、合成ピクセルの色が、カメラから発散する光線に沿って積分することによって取得され得る。
【0058】
【0059】
別の例示的な態様によれば、GLOは、可変照明および後処理を捕捉することができるが、3-Dジオメトリにおける変動をモデル化することはできない。したがって、本開示のいくつかの実装形態は、静的コンテンツをモデル化する静的部分と一時的コンテンツをモデル化する一時的部分の両方を含むダブルヘッドモデルを特色とする。3-D空間内の位置に対する単一のタプル(σ、c)を作成する実装形態とは違って、静的と一時的の両方のヘッドを有する提案するモデルは、1つはすべての画像に共通の「静的」オブジェクト(σ
s、c
s)に対する、別の1つは特定の画像に固有の「一時的」オブジェクト(σ
t、c
t)に対する、2つのヘッドを作成する。これらの量は、式1において提示されるボリュームレンダリング式の修正バージョンと組み合わされ得る。さらに、提案するモデルは、各ピクセルの損失関数を変調するために使用される不確実性推定βを出力する。
図4は、提案するモデルのアーキテクチャの図を提供する。
【0060】
具体的には、次に
図4を参照すると、本開示の例示的実施形態による例示的な機械学習済み視点合成モデルのブロック図が提供される。モデルは、基部34、静的部分36、および一時的部分38を含むことができる。
【0061】
3-Dポイントr(t)40、GLO埋め込みe
(g)48、および不確実性埋め込みe
(u)52が与えられると、
図4に示すモデルは、微分不透明度σ
s、σ
t44、54、色c
s、c
t45、56、および微分不確実性β58を作成する。位置埋め込み、視線方向、および非線形性は、明確にするために省略される。上記のように、追加のカメラパラメータ42が、同様に、随意に提供され得る。
【0062】
いくつかの実装形態では、例示的な提案するモデルの基部34は、3-Dポイントr(t)40に適用されるMLPを含む。他のモデルが同様に使用されてもよい。このMLPは、微分不透明度σs44および潜在表現z46を出力する。潜在表現z46は、2つの方法で採用される。第1は、NeRFのMLPと同様に色cs45を作成するための、z46および視線方向dに対する静的部分36(たとえば、それは4層MLPまたは他のモデルを含み得る)である。第2は、以下で説明する、一時的微分不透明度σt54、一時的な色ct56、および不確実性値β58、の3つの量を作成するための、画像ごとの埋め込みe(u)52で増加され得るz46に対する一時的部分38(たとえば、それは第2の4層MLPまたは他のモデルを含み得る)である。いくつかの実装形態では、l1正則化が、希薄さを促進するためにσtに適用され得る。
【0063】
図2および
図4を一緒に参照すると、静的と一時的の両方のデータ27から単一のピクセルに対する色を28において作成するために、ボリュームレンダリング式の以下の変形、
【0064】
【0065】
【0066】
が使用され得る。
【0067】
式1における色cは、σscs+σtctの線形結合で置換され、蓄積された不透明度σは、σs+σtの合計によって置換されることに留意されたい。
【0068】
図4に示す例などのいくつかの実装形態では、モデルは、不確実性推定β58を発することを許可される。訓練時間において、蓄積された不透明度式は、対応する予測される色C(r)に対する不確実性を取得するために使用され得る。
【0069】
【0070】
一例として、グラウンドトゥルース色yを有する単一のピクセルに対する損失は、したがって、下式によって与えられ得る。
【0071】
【0072】
直観的に、βのより大きい値は、モデルが、外れ値-人、草、または雲など、一般的に一時的なまたは移動するオブジェクト-の重みを下げることを可能にする。対数項は、βが際限なく増大することを防止し、正規分布の尤度から直接導かれ得る。いくつかの実装形態では、モデルが少数のピクセルに対して損失の大部分が集中することを防止するために、ハイパーパラメータβmin≧0が使用され得る。
【0073】
より一般的には、再び
図2を参照すると、損失関数30は、28において生成された合成ピクセル色と既存の訓練画像のグラウンドトゥルースピクセル色32との間の差異を評価することができる。たとえば、RGBまたは何らかの他のカラースキームで表現されるピクセル色の間の平方誤差が使用され得る。
【0074】
損失関数30は、機械学習済み視点合成モデル24を訓練するために逆伝搬され得る。加えて、いくつかの実装形態では、訓練画像埋め込み26、訓練位置22、および/またはカメラパラメータ25は、同様に、損失関数30に基づいて(たとえば、損失をモデル24を通しておよびそのそばを通りすぎて逆伝搬することを継続することによって)更新され得る。
【0075】
試験時間において、モデル24は、訓練セット内のすべての写真に対して共通の静的ジオメトリをレンダリングするために使用され得る。いくつかの実装形態では、画像は、σt、ct、およびβをすべて省略することによってレンダリングされ得る。
【0076】
一例として、
図3は、訓練後の機械学習済み視点合成モデルの例示的な使用を示す。具体的には、シーンの合成画像に対する所望の位置40(たとえば、ロケーションおよび方向付け)が提供される。随意に、所望のカメラパラメータ42および/または所望の生成的埋め込み44が、同様に提供され得る。
【0077】
機械学習済み視点合成モデル24は、入力を処理して、不透明度および色データ27(たとえば、不透明度および色データの単一のセット、または静的と一時的の両方の不透明度および色データ、または単に静的不透明度および色データ)を生成することができる。ボリュームレンダリング28は、合成画像のピクセルに対する合成ピクセル色を生成するために、不透明度および色データ(たとえば、静的データのみ)上で実行され得る。
【0078】
図3に示すプロセスは、合成画像の各ピクセルに対して実行され得る。
例示的なデバイスおよびシステム
【0079】
図5Aは、本開示の例示的実施形態による例示的コンピューティングシステム100のブロック図を示す。システム100は、ネットワーク180を介して通信可能に結合されている、ユーザコンピューティングデバイス102、サーバコンピューティングシステム130、およびトレーニング用コンピューティングシステム150を含む。
【0080】
ユーザコンピューティングデバイス102は、たとえば、パーソナルコンピューティングデバイス(たとえば、ラップトップまたはデスクトップ)、モバイルコンピューティングデバイス(たとえば、スマートフォンまたはタブレット)、ゲーミングコンソールもしくはコントローラ、ウェアラブルコンピューティングデバイス、埋込み型コンピューティングデバイス、または任意の他のタイプのコンピューティングデバイスなどの、任意のタイプのコンピューティングデバイスであってもよい。
【0081】
ユーザコンピューティングデバイス102は、1つまたは複数のプロセッサ112およびメモリ114を含む。1つまたは複数のプロセッサ112は、どの適切な処理デバイス(たとえば、プロセッサコア、マイクロプロセッサ、ASIC、FPGA、コントローラ、マイクロコントローラなど)であってもよく、1つのプロセッサまたは動作可能に接続されている複数のプロセッサであってよい。メモリ114は、RAM、ROM、EEPROM、EPROM、フラッシュメモリデバイス、磁気ディスクなど、およびそれらの組合せのような、1つまたは複数の非一時的コンピュータ可読記憶媒体を含み得る。メモリ114は、データ116と、ユーザコンピューティングデバイス102に動作を実施させるようにプロセッサ112によって実行される命令118とを記憶することができる。
【0082】
いくつかの実装形態では、ユーザコンピューティングシステム102は、1つまたは複数の機械学習済みモデル120を記憶するか、または含むことができる。たとえば、機械学習済みモデル120は、ニューラルネットワーク(たとえば、ディープニューラルネットワーク)または非線形モデルおよび/もしくは線形モデルを含む他のタイプの機械学習済みモデルなど、様々な機械学習済みモデルであってよく、またはそうでなければ、それらの機械学習済みモデルを含むことができる。ニューラルネットワークは、フィードフォワードニューラルネットワーク、回帰型ニューラルネットワーク(たとえば、長短期メモリ回帰型ニューラルネットワーク)、畳み込みニューラルネットワーク、または他の形のニューラルネットワークを含み得る。例示的な機械学習済みモデル120については、
図1~
図4を参照して論じる。
【0083】
いくつかの実装形態では、1つまたは複数の機械学習済みモデル120は、ネットワーク180を介してサーバコンピューティングシステム130から受信され、ユーザコンピューティングデバイスメモリ114に記憶され、次いで、1つまたは複数のプロセッサ112によって使われ、またはそうでなければ実装され得る。いくつかの実装形態では、ユーザコンピューティングデバイス102は、(たとえば、同じまたは異なるシーンの複数の例にわたってパラレル視点合成を実行するために)単一機械学習済みモデル120の複数の並列インスタンスを実装することができる。
【0084】
追加または代替として、1つまたは複数の機械学習済みモデル140は、クライアント-サーバ関係に従ってユーザコンピューティングデバイス102と通信するサーバコンピューティングシステム130に含まれ、またはそうでなければ、サーバコンピューティングシステム130によって記憶され、実装され得る。たとえば、機械学習済みモデル140は、ウェブサービス(たとえば、視点合成サービス)の一部分として、サーバコンピューティングシステム140によって実装され得る。したがって、1つまたは複数のモデル120が、ユーザコンピューティングデバイス102において記憶され、実装されてよく、かつ/または1つもしくは複数のモデル140が、サーバコンピューティングシステム130において記憶され、実装されてよい。
【0085】
ユーザコンピューティングデバイス102は、ユーザ入力を受信する1つまたは複数のユーザ入力構成要素122も含み得る。たとえば、ユーザ入力構成要素122は、ユーザ入力オブジェクト(たとえば、指またはスタイラス)のタッチに敏感な、タッチ感応構成要素(たとえば、タッチ感応表示画面またはタッチパッド)であってよい。タッチ感応構成要素は、仮想キーボードを実装するのに役立ち得る。他の例示的ユーザ入力構成要素は、マイクロフォン、従来のキーボード、またはユーザがユーザ入力を与えることができる他の手段を含む。
【0086】
サーバコンピューティングシステム130は、1つまたは複数のプロセッサ132およびメモリ134を含む。1つまたは複数のプロセッサ132は、どの適切な処理デバイス(たとえば、プロセッサコア、マイクロプロセッサ、ASIC、FPGA、コントローラ、マイクロコントローラなど)であってもよく、1つのプロセッサまたは動作可能に接続されている複数のプロセッサであってよい。メモリ134は、RAM、ROM、EEPROM、EPROM、フラッシュメモリデバイス、磁気ディスクなど、およびそれらの組合せのような、1つまたは複数の非一時的コンピュータ可読記憶媒体を含み得る。メモリ134は、データ136と、サーバコンピューティングシステム130に動作を実施させるようにプロセッサ132によって実行される命令138とを記憶することができる。
【0087】
いくつかの実装形態では、サーバコンピューティングシステム130は、1つまたは複数のサーバコンピューティングデバイスを含むか、またはそうでなければ、1つまたは複数のサーバコンピューティングデバイスによって実装される。サーバコンピューティングシステム130が複数のサーバコンピューティングデバイスを含む事例では、そのようなサーバコンピューティングデバイスは、順次コンピューティングアーキテクチャ、並列コンピューティングアーキテクチャ、またはそれらの何らかの組合せに従って動作することができる。
【0088】
上述したように、サーバコンピューティングシステム130は、1つまたは複数の機械学習済みモデル140を記憶するか、またはそうでなければ含むことができる。たとえば、モデル140は、様々な機械学習済みモデルであってよく、または、そうでなければそれらを含んでよい。例示的機械学習済みモデルは、ニューラルネットワークまたは他のマルチレイヤ非線形モデルを含む。例示的ニューラルネットワークは、フィードフォワードニューラルネットワーク、ディープニューラルネットワーク、回帰型ニューラルネットワーク、および畳み込みニューラルネットワークを含む。例示的モデル140については、
図1~
図4を参照して論じる。
【0089】
ユーザコンピューティングデバイス102および/またはサーバコンピューティングシステム130は、ネットワーク180を介して通信可能に結合されるトレーニング用コンピューティングシステム150との対話により、モデル120および/または140をトレーニングすることができる。トレーニング用コンピューティングシステム150は、サーバコンピューティングシステム130とは別個であってよく、またはサーバコンピューティングシステム130の一部分であってよい。
【0090】
トレーニング用コンピューティングシステム150は、1つまたは複数のプロセッサ152およびメモリ154を含む。1つまたは複数のプロセッサ152は、どの適切な処理デバイス(たとえば、プロセッサコア、マイクロプロセッサ、ASIC、FPGA、コントローラ、マイクロコントローラなど)であってもよく、1つのプロセッサまたは動作可能に接続されている複数のプロセッサであってよい。メモリ154は、RAM、ROM、EEPROM、EPROM、フラッシュメモリデバイス、磁気ディスクなど、およびそれらの組合せのような、1つまたは複数の非一時的コンピュータ可読記憶媒体を含み得る。メモリ154は、データ156と、トレーニング用コンピューティングシステム150に動作を実施させるようにプロセッサ152によって実行される命令158とを記憶することができる。いくつかの実装形態では、トレーニング用コンピューティングシステム150は、1つまたは複数のサーバコンピューティングデバイスを含むか、またはそうでなければ、サーバコンピューティングデバイスによって実装される。
【0091】
トレーニング用コンピューティングシステム150は、ユーザコンピューティングデバイス102および/またはサーバコンピューティングシステム130において記憶された機械学習済みモデル120および/または140を、たとえば、誤差逆伝播など、様々なトレーニングまたは学習技法を使ってトレーニングするモデル訓練器160を含み得る。たとえば、損失関数は、(たとえば、損失関数の勾配に基づいて)モデルの1つまたは複数のパラメータを更新するために、モデルを通して逆伝搬され得る。平均2乗誤差、尤度損失、交差エントロピー損失、ヒンジ損失、および/または様々な他の損失関数など、様々な損失関数が使用され得る。勾配降下技法は、いくつかのトレーニング反復に対してパラメータを反復的に更新するために使用され得る。
【0092】
いくつかの実装形態では、誤差逆伝播を実行することは、短縮された時通的逆伝播を実行することを含み得る。モデル訓練器160は、トレーニングされるモデルの汎化能力を向上するために、いくつかの汎化技法(たとえば、重み減衰、ドロップアウトなど)を実施することができる。
【0093】
特に、モデル訓練器160は、トレーニングデータのセット162に基づいて、機械学習済みモデル120および/または140をトレーニングすることができる。訓練データ162は、たとえば、「野生の」写真などの拘束されない画像データを含むことができる。
【0094】
いくつかの実装形態では、ユーザが承諾を与えた場合、トレーニング例は、ユーザコンピューティングデバイス102によって提供され得る。したがって、そのような実装形態では、ユーザコンピューティングデバイス102に提供されるモデル120は、ユーザコンピューティングデバイス102から受信されるユーザ固有データに対してトレーニングコンピューティングシステム150によってトレーニングされ得る。場合によっては、このプロセスは、モデルの個人化と呼ばれることがある。
【0095】
モデル訓練器160は、所望の機能性を提供するのに使用されるコンピュータ論理を含む。モデル訓練器160は、汎用プロセッサを制御するハードウェア、ファームウェア、および/またはソフトウェアで実装することができる。たとえば、いくつかの実装形態では、モデル訓練器160は、記憶デバイス上に記憶され、メモリにロードされ、1つまたは複数のプロセッサによって実行されるプログラムファイルを含む。他の実装形態では、モデル訓練器160は、RAMハードディスクまたは光学もしくは磁気媒体などの有形コンピュータ可読記憶媒体に記憶されるコンピュータ実行可能命令の1つまたは複数のセットを含む。
【0096】
ネットワーク180は、ローカルエリアネットワーク(たとえば、イントラネット)、ワイドエリアネットワーク(たとえば、インターネット)、またはそれらの何らかの組合せなど、どのタイプの通信ネットワークであってもよく、任意の数のワイヤードまたはワイヤレスリンクを含み得る。概して、ネットワーク180を介した通信は、非常に様々な通信プロトコル(たとえば、TCP/IP、HTTP、SMTP、FTP)、符号化もしくはフォーマット(たとえば、HTML、XML)、および/または保護方式(たとえば、VPN、セキュアHTTP、SSL)を使って、どのタイプのワイヤードおよび/またはワイヤレス接続を介しても搬送することができる。
【0097】
図5Aは、本開示を実装するために使用され得る1つの例示的コンピューティングシステムを示す。他のコンピューティングシステムが同様に使用されてもよい。たとえば、いくつかの実装形態では、ユーザコンピューティングデバイス102は、モデル訓練器160および訓練データセット162を含み得る。そのような実装形態では、モデル120は、ユーザコンピューティングデバイス102においてローカルにトレーニングされることと使われることの両方が可能である。そのような実装形態のいくつかでは、ユーザコンピューティングデバイス102は、ユーザ固有データに基づいて、モデル訓練器160を実装して、モデル120を個人化し得る。
【0098】
図5Bは、本開示の例示的実施形態に従って実行する例示的コンピューティングデバイス10のブロック図を示す。コンピューティングデバイス10は、ユーザコンピューティングデバイスまたはサーバコンピューティングデバイスであってよい。
【0099】
コンピューティングデバイス10は、いくつかのアプリケーション(たとえば、アプリケーション1~N)を含む。各アプリケーションは、それ自体の機械学習ライブラリおよび機械学習済みモデルを含む。たとえば、各アプリケーションは、機械学習済みモデルを含み得る。例示的アプリケーションは、テキストメッセージングアプリケーション、eメールアプリケーション、ディクテーションアプリケーション、仮想キーボードアプリケーション、ブラウザアプリケーションなどを含む。
【0100】
図5Bに示すように、各アプリケーションは、コンピューティングデバイスのいくつかの他の構成要素、たとえば、1つもしくは複数のセンサ、コンテキストマネージャ、デバイス状態構成要素、および/または追加構成要素などと通信することができる。いくつかの実装形態では、各アプリケーションは、API(たとえば、パブリックAPI)を使って、各デバイス構成要素と通信することができる。いくつかの実装形態では、各アプリケーションによって使用されるAPIは、そのアプリケーションに固有である。
【0101】
図5Cは、本開示の例示的実施形態に従って実行する例示的コンピューティングデバイス50のブロック図を示す。コンピューティングデバイス50は、ユーザコンピューティングデバイスまたはサーバコンピューティングデバイスであってよい。
【0102】
コンピューティングデバイス50は、いくつかのアプリケーション(たとえば、アプリケーション1~N)を含む。各アプリケーションは、中央インテリジェンスレイヤと通信する。例示的アプリケーションは、テキストメッセージングアプリケーション、eメールアプリケーション、ディクテーションアプリケーション、仮想キーボードアプリケーション、ブラウザアプリケーションなどを含む。いくつかの実装形態では、各アプリケーションは、API(たとえば、すべてのアプリケーションにわたる共通API)を使って、中央インテリジェンスレイヤ(およびその中に記憶されるモデル)と通信することができる。
【0103】
中央インテリジェンスレイヤは、いくつかの機械学習済みモデルを含む。たとえば、
図5Cに示すように、それぞれの機械学習済みモデル(たとえば、モデル)が、各アプリケーションに与えられ、中央インテリジェンスレイヤによって管理され得る。他の実装形態では、2つ以上のアプリケーションが、単一の機械学習済みモデルを共有することができる。たとえば、いくつかの実装形態では、中央インテリジェンスレイヤは、アプリケーションすべてに単一モデル(たとえば、単一モデル)を提供することができる。いくつかの実装形態では、中央インテリジェンスレイヤは、コンピューティングデバイス50のオペレーティングシステムに含まれるか、またはそうでなければ、オペレーティングシステムによって実装される。
【0104】
中央インテリジェンスレイヤは、中央デバイスデータレイヤと通信することができる。中央デバイスデータレイヤは、コンピューティングデバイス50向けのデータの集中型リポジトリであってよい。
図5Cに示すように、中央デバイスデータレイヤは、コンピューティングデバイスのいくつかの他の構成要素、たとえば、1つまたは複数のセンサ、コンテキストマネージャ、デバイス状態構成要素、および/または追加構成要素などと通信することができる。いくつかの実装形態では、中央デバイスデータレイヤは、API(たとえば、プライベートAPI)を使用して、各デバイス構成要素と通信することができる。
追加開示
【0105】
本明細書において論じた技術は、サーバ、データベース、ソフトウェアアプリケーション、および他のコンピュータベースのシステム、ならびに行われるアクションおよびそのようなシステムとの間で送られる情報を参照する。コンピュータベースのシステムに固有の柔軟性によって、構成要素の間のタスクおよび機能の多種多様な可能な構成、組合せ、および分割が可能になる。たとえば、本明細書で説明するプロセスは、単一のデバイスもしくは構成要素、または組合せにおいて働く複数のデバイスもしくは構成要素を使用して実装され得る。データベースおよびアプリケーションは、単一のシステム上で実装されるか、または複数のシステムにわたって分散され得る。分散構成要素は、順次または並行して動作することができる。
【0106】
本主題は、その様々な特定の例示的実施形態に関して詳細に説明されてきたが、各例は、本開示の限定ではなく、説明として与えられる。当業者は、上記を理解すると、そのような実施形態の改変、変形、および等価物を容易に作り出すことができる。したがって、本開示は、当業者には容易に明らかであろうように、本主題へのそのような修正、変形および/または追加を含めることを排除しない。たとえば、1つの実施形態の一部として示されるかまたは説明される特徴は、またさらなる実施形態をもたらすために、別の実施形態とともに使用され得る。したがって、本開示がそのような改変、変形、および等価物をカバーすることが意図されている。
【符号の説明】
【0107】
10 コンピューティングデバイス
12 訓練データセット
14 モデル最適化または訓練プロセス
16 機械学習済み視点合成モデル
18 合成画像
20 合成画像
22 訓練位置
24 機械学習済み視点合成モデル
25 カメラパラメータ
26 訓練画像埋め込み
27 不透明度および色データ
28 ボリュームレンダリング
30 損失関数
32 グラウンドトゥルースピクセル色
34 基部
36 静的部分
38 一時的部分
40 3-Dポイント
42 追加のカメラパラメータ
44 微分不透明度
46 色
48 GLO埋め込み
50 コンピューティングデバイス
52 不確実性埋め込み
54 微分不透明度
56 色
58 微分不確実性
100 コンピューティングシステム
102 ユーザコンピューティングデバイス
112 プロセッサ
114 メモリ
116 データ
118 命令
120 機械学習済みモデル
122 ユーザ入力構成要素
130 サーバコンピューティングシステム
132 プロセッサ
134 メモリ
136 データ
138 命令
140 機械学習済みモデル
150 トレーニング用コンピューティングシステム
152 プロセッサ
154 メモリ
156 データ
158 命令
160 モデル訓練器
162 トレーニングデータのセット
180 ネットワーク