JP7386888B2 - 画面上の話者のフューショット合成 - Google Patents

画面上の話者のフューショット合成 Download PDF

Info

Publication number
JP7386888B2
JP7386888B2 JP2021558681A JP2021558681A JP7386888B2 JP 7386888 B2 JP7386888 B2 JP 7386888B2 JP 2021558681 A JP2021558681 A JP 2021558681A JP 2021558681 A JP2021558681 A JP 2021558681A JP 7386888 B2 JP7386888 B2 JP 7386888B2
Authority
JP
Japan
Prior art keywords
texture
neural
user
image
generating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021558681A
Other languages
English (en)
Other versions
JP2023513980A (ja
Inventor
マーティン・ブルアラ,リカルド
メシャリー,ムスタファ
ゴールドマン,ダニエル
パーンデー,ロイット・クマール
ブアジズ,ソフィアン
リー,コー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of JP2023513980A publication Critical patent/JP2023513980A/ja
Application granted granted Critical
Publication of JP7386888B2 publication Critical patent/JP7386888B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/40Analysis of texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)
  • Image Analysis (AREA)

Description

関連出願への相互参照
本出願は、2020年10月8日に出願された、「画面上の話者のフューショット合成(FEW-SHOT SYNTHESIS OF TALKING HEADS」という名称を有する米国仮出願番号第63/198,287号の利益を主張しており、その開示は、その全文が参照により本明細書において援用される。
技術分野
本記載は一般に、提示のためのコンテンツを合成する際に使用される方法、デバイス、およびアルゴリズムに関する。
背景
ディープインバースレンダリング(deep inverse rendering)は一般に、空間的に変動する外観を有する潜在埋込空間における外観パラメータの最適化を含む。ディープインバースレンダリングは、対象の外観をモデリングするためのニューラルネットワークの使用を含み得る。このようなニューラルネットワークを用いて、潜在埋込空間が学習され得る。潜在空間は、低次元対象表現が得られる空間を表し得る。このような空間を埋め込むことは、低次元データがオリジナルのより高次元の画像空間にマッピングされる態様を表す。
概要
1つ以上のコンピュータのシステムは、動作において、システムにアクションを行わせるソフトウェア、ファームウェア、ハードウェア、または、それらの組み合わせがシステムにインストールされていることによって、特定の動作またはアクションを実行するように構成され得る。1つ以上のコンピュータプログラムは、データ処理装置によって実行されると、当該装置にアクションを実行させる命令を含むことによって、特定の動作またはアクションを実行するように構成され得る。
1つの一般的な局面では、動作を実行するよう、少なくとも1つの処理デバイスを有する画像処理システムを利用するためのシステムおよび方法が記載される。当該動作は、ユーザの複数の入力画像を受信することと、複数の入力画像から抽出された特徴の第1のセットと、複数の入力画像から抽出された特徴の第2のセットとに基づいて、3次元メッシュプロキシを生成することとを含む。3次元メッシュプロキシは、顔メッシュプロキシおよび平面プロキシを含んでもよい。上記方法はさらに、3次元メッシュプロキシおよび複数の入力画像に基づいて、ニューラルテクスチャを生成することを含んでもよい。随意に、上記方法は、3次元メッシュプロキシおよびニューラルテクスチャに少なくとも部分的に基づいて、ユーザの表現を生成することを含む。上記方法はさらに、3次元メッシュプロキシから、ニューラルテクスチャの少なくとも1つの部分をサンプリングすることを含んでもよい。上記方法は、サンプリングされた少なくとも1つの部分をニューラルレンダラ(neural renderer)に提供することに応答して、画像処理システムによって以前にキャプチャされなかった(見られていない)ユーザの合成画像をニューラルレンダラから受信することを含んでもよい。
これらおよび他の局面は、以下のうちの1つ以上を単独または組み合わせで含み得る。いくつかの局面によれば、本明細書において請求される方法、システム、およびコンピュータ読取可能媒体は、以下の特徴のうちの1つ以上(たとえばすべて)(またはそれらの任意の組み合わせ)を含んでもよい。
いくつかの実現例では、抽出された特徴の第1のセットは、ユーザの顔を表す特徴を含み、抽出された特徴の第2のセットは、ユーザの髪および胴体の部分を表す特徴を含む。いくつかの実現例では、ニューラルテクスチャは、複数の入力画像を使用して生成される学習済ニューラルテクスチャであり、複数の入力画像は、ユーザの4つ未満のキャプチャされた画像フレームを含む。
いくつかの実現例では、ニューラルテクスチャを生成することは、各入力画像について潜在表現を生成することと、各入力画像について生成された表現をベクトルに集約することと、テクスチャジェネレータネットワークにベクトルを提供することと、テクスチャジェネレータネットワークから、ユーザを表すニューラルテクスチャを受信することとを含む。いくつかの実現例では、ニューラルテクスチャを生成することは、入力画像に関連付けられる深度画像およびUVマップに基づいて、抽出された特徴の第1のセットおよび特徴の第2のセットを、ジオメトリを意識した特徴空間に投射することを含み、当該投射することは、複数の入力画像のマッチされた解像度を有する画像のセットを生成することを含む。ニューラルテクスチャを生成することはさらに、各入力画像についてテクスチャを生成するよう、画像のセットをUV空間にワーピングすることと、各テクスチャについて、対応する入力画像における可視性メトリックを示すテクスチャ空間における各点についてのスコアマップを生成することと、各入力画像についてアテンションウエイトを生成するよう、各スコアマップにソフトマックス演算を適用することと、アテンションウエイトに従って決定される加重平均に従ってテクスチャを集約することとを含んでもよい。
いくつかの実現例では、ユーザの生成された表現は、ニューラルテクスチャにおいて表される各表面点ごとの外観を表し、上記方法は、ユーザの外観に関する高周波のディテールを表すよう、表面点ごとに外観記述子を格納することをさらに含む。いくつかの実現例では、合成画像は、ビデオ会議のための修正された視点によりユーザを示すように生成され、修正された視点は、ビデオ会議を提供するシステムに関連付けられるカメラデバイスを見つめるユーザのビューをシミュレートする。
記載される技術の実現例は、ハードウェア、方法もしくはプロセス、または、コンピュータがアクセス可能な媒体上のコンピュータソフトウェアを含んでもよい。1つ以上の実現例のディテールが、添付の図面および以下の説明において記載される。当該説明および図面ならびに請求の範囲から、他の特徴が明らかになるであろう。
本開示の全体にわたって記載される実現例に従った、ディスプレイデバイス上に合成コンテンツを表示するための例示的な3Dコンテンツシステムを示すブロック図である。 本開示の全体にわたって記載される実現例に従った、ディスプレイ上でレンダリングするためのコンテンツを合成するための例示的なシステムのブロック図である。 本開示の全体にわたって記載される実現例に従った、顔メッシュプロキシと平面プロキシとを組み合わせることによって生成される強化メッシュプロキシの例を示す図である。 本開示の全体にわたって記載される実現例に従った、顔メッシュプロキシと平面プロキシとを組み合わせることによって生成される強化メッシュプロキシの例を示す図である。 本開示の全体にわたって記載される実現例に従った、ディスプレイ上でレンダリングするための合成コンテンツを生成するための例示的なアーキテクチャのブロック図である。 本開示の全体にわたって記載される実現例に従った、集約された潜在テクスチャ技術からニューラルテクスチャを生成するための例示的なアーキテクチャのブロック図である。 本開示の全体にわたって記載される実現例に従った、インバースレンダリング技術を使用してニューラルテクスチャを生成するための例示的なアーキテクチャのブロック図である。 本開示の全体にわたって記載される実現例に従った、3Dプロキシジオメトリモデルに基づいてニューラルテクスチャを使用して合成コンテンツを生成するプロセスの一例を図示するフローチャートである。 本明細書において記載される技術とともに使用され得るコンピュータデバイスおよびモバイルコンピュータデバイスの例を示す図である。
さまざまな図面における同様の参照符号は、同様の要素を示す。
詳細な説明
一般に、本文書は、画像コンテンツの新規な(たとえば、見られていない)ビューをモデリングすることに関係する例を記載する。たとえば、本文書は、相対的に少ない入力画像を使用して画面上の話者(talking heads)(たとえば、ユーザの頭および/または胴体)の新規なビューをモデリングすることに関する例を含む。画面上の話者は一般に、頭、首および/または胴体の1つ以上の部分を有するビューを含み得る。本明細書において使用されるように、新規な(たとえば、見られていない)ビューは、カメラでキャプチャされた画像コンテンツおよび/またはビデオコンテンツの1つ以上のフレームに基づいて解釈(たとえば、合成、補間、モデリングなど)された画像コンテンツおよび/またはビデオコンテンツを含んでもよい。カメラでキャプチャされた画像コンテンツおよび/またはビデオコンテンツの解釈は、たとえば、キャプチャされた画像コンテンツおよび/またはビデオコンテンツの見られていないバージョンおよびビュー(たとえば、ポーズ、表情、角度など)を作成するよう、本明細書において記載される技術と組み合わせて使用されてもよい。
ユーザの頭および/または体(たとえば胴体)のビューを生成するためのフューショットの新規なビュー合成を実行することは、ユーザの高品質の3次元(3D)のビューが利用可能でない場合、困難であり得る。本明細書において記載されるシステムおよび技術は、少ない画像を入力として使用して新規な胴体のビューの高品質の画像コンテンツ(たとえば、画像および/またはビデオ)を生成する方法を提供し得る。いくつかの実現例では、2次元(2D)または3Dディスプレイの画面上で3Dの頭および/または胴体の見られていないビューの正確なレンダリングを可能にするために、3D特徴をモデリングするよう、上記の少ない画像が、1つ以上の3Dプロキシ平面および1つ以上のニューラルテクスチャと組み合わせて使用され得る。いくつかの実現例では、ニューラルテクスチャは、集約された潜在テクスチャ技術(aggregated latent texture techniques)に基づく。いくつかの実現例では、ニューラルテクスチャは、インバースレンダリング技術(inverse rendering techniques)に基づく。本明細書において使用されるように、フューショット(few-shot)の用語は、少ない例から新しい概念を理解するよう機械学習が実行されるフューショット機械学習技術(few-shot machine learning techniques)の使用を表す。
いくつかの実現例では、本明細書において記載されるニューラルテクスチャは、ニューラルテクスチャによって表されるユーザのスピーチおよび/または表現のビデオシーケンスを合成する目的のために、見られていないビューを生成するために使用され得る。たとえば、ニューラルテクスチャは、1つ以上の画像(たとえば、フレーム、ビデオなど)に基づいてフォトリアリスティックな頭(および/または胴体)の画像を生成するよう、使用され得る。いくつかの実現例では、ニューラルテクスチャは、グラフィックスを学習済コンポーネントと組み合わせることによって画像を合成し得るディファードニューラルレンダリング技術(deferred neural rendering techniques)(たとえば、ディープニューラルネットワーク)を使用して生成され得る。
本明細書において使用されるように、ニューラルテクスチャは、画像キャプチャプロセスの部分として学習される1つ以上の学習済特徴マップを表す。たとえば、対象がキャプチャされると、特徴マップを生成するよう、対象の特徴を対象についての3Dプロキシジオメトリにマッピングすることによって、ニューラルテクスチャが生成され得る。いくつかの実現例では、対象についてのニューラルテクスチャは、対象のビューおよびキャプチャポーズに関連付けられる潜在コード(latent code)に基づいて生成され得る。いくつかの実現例では、ニューラルテクスチャは、3Dメッシュの上の1つ以上の2Dマップに格納される。そのようなニューラルテクスチャは、たとえば、シーンのキャプチャ中に学習される最適化された特徴マップのセットを含み得る。いくつかの実現例では、ニューラルテクスチャは、たとえば、ディファードニューラルレンダラによって解釈され得る、キャプチャされた対象の表面外観の高レベルの記述(high-level description)を符号化し得る。
いくつかの実現例では、たとえば、マルチウェイ2Dまたは3Dビデオ会議において使用される2Dまたは3Dディスプレイの画面上での表示のために正確かつ現実的であるように見える画像を合成するよう、本明細書において記載される技術が使用され得る。たとえば、胴体および顔の正確かつ現実的なビュー(たとえば、画像コンテンツ、ビデオコンテンツ)を生成し、表示するよう、本明細書において記載される技術およびモデルが使用され得る。これらのビューは、従来、3Dの態様で示すことが困難であり得る、見られていないビューを含む。従来のシステムは典型的に、胴体部分について新規なビューを合成しない。たとえば、髪、首および肩は、明確に規定された構造を欠き得、したがって、従来のシステムではプロキシジオメトリによって表されないことがある。本明細書において記載されるシステムおよび方法は、プロキシジオメトリの品質の低下に対して堅牢であるニューラルテクスチャを保証するよう、顔領域と顔領域の外側の領域とをモデリングする利点を提供する。特に、本明細書において記載されるシステムおよび方法は、顔領域の外側の頭領域のための粗い(coarse)ジオメトリックプロキシとして、単一の平面を有する顔メッシュを強化する。
いくつかの実現例では、本明細書において記載される技術は、映画、ビデオ、短い映画、ゲームコンテンツ、または、本明細書において記載されるフューショット再構築技術から利益を受け得るユーザの胴体もしくは顔を含む他のフォーマットにおけるエンターテインメント目的のために使用され得る。たとえば、本明細書において記載されるフューショット再構築技術は、画像および/またはビデオコンテンツにおいてレンダリングされるキャラクタを動かすための胴体、顔、および髪コンテンツを生成するために使用され得る。
いくつかの実現例では、本明細書において記載される技術は、本明細書において記載されるフューショット再構築技術を使用して、対象を認識し、対象を再作成し、および/または、そのような対象から合成画像を生成するよう、画像処理を実行し得るバーチャルアシスタントデバイスまたは他のインテリジェントエージェントによって使用され得る。
いくつかの実現例では、本明細書において記載される技術は、ユーザのフューショットの新規なビュー合成のためにディープインバースレンダリング方法を使用する。当該技術は、ソース画像におけるユーザの視覚的な同一性を保存し得る。当該技術は、たとえば、3Dメッシュプロキシおよび(たとえば学習済)ニューラルテクスチャを含むユーザの表現を利用し得る。たとえば、メッシュプロキシは、多角形(たとえば三角形)メッシュであってもよく、または、当該多角形メッシュを含んでもよい。特に、本明細書において記載される技術は、任意のポーズおよび表情を有するユーザの1つ以上のフレームを含む入力画像を受信する。受信された入力画像は、ユーザの各フレームについて潜在表現を計算するために使用され、各フレームは、特定のテクスチャ空間上でインバースレンダリングを使用してサンプリングされる。潜在表現は、従来の画像生成システムよりも改善されてより完全なテクスチャを生成するために、入力されたビューからの情報を融合するように学習するアテンションメカニズムを使用して、テクスチャ空間においてさらに集約されてもよい。本明細書において記載される技術は、次いで、顔メッシュアルゴリズムを使用して、ニューラルレンダラ(neural renderer)を使用して再処理され得るテクスチャをサンプリングすることによって、新規かつ見られていないビュー/画像フレームを生成し得る。本明細書において記載される技術は、正確なユーザの胴体の再構築を達成しつつ、ユーザを識別する視覚的特徴を保存するという利点を提供する。
従来のシステムは、入力を符号化し、当該入力を単一の潜在ベクトルに集約することによって、フューショットビュー合成を実行し得る。そのような潜在ベクトルは、対象の形状、同一性および外観を単一のベクトルに組み合わせる。表面点ごとの外観は典型的には、そのような潜在ベクトルに圧縮されるので、特定の視覚的同一性に固有の情報および高周波の画像ディテール(high frequency image details)を表し再構築する能力は、情報が過度に集約され、単一の潜在ベクトルから分離および解析できないので、可能でない場合がある。本明細書において記載されるシステムおよび方法は、対象(たとえば、頭、胴体、ユーザなど)の表現を、3Dメッシュプロキシおよび学習済ニューラルテクスチャに織り込む。さらに、当該システムおよび方法は、ニューラルテクスチャを使用して、各表面点ごとの対象外観を表す。ニューラルテクスチャを使用して表面点ごとに外観記述子を格納することは、高周波の画像ディテールと、増加した量の同一性に敏感な情報とを表す方法を提供する。
さらに、本明細書において記載されるシステムおよび方法は、顔メッシュアルゴリズムを利用して、ユーザの頭および/または胴体構造の残部を表すよう粗いジオメトリプロキシと組み合わせて、ユーザの顔についてのジオメトリック表現を規定する。いくつかの実現例では、粗いジオメトリプロキシは、髪、1つ以上の肩、首などを表す少なくとも1つの平面を含む。
図1は、本開示の全体にわたって記載される実現例に従った、立体ディスプレイデバイスにおいてコンテンツを表示するための例示的な3Dコンテンツシステム100を示すブロック図である。3Dコンテンツシステム100は、たとえば、3Dでビデオ会議通信(たとえば、テレプレゼンスセッション)を行うよう、複数のユーザによって使用され得る。一般に、図1のシステムは、ビデオ会議セッション内のユーザの顔部分および/または胴体部分を示す正確な画像をレンダリングするために、2Dまたは3Dビデオ会議中にユーザのビデオおよび/または画像をキャプチャするよう使用され得、かつ、ユーザの顔部分および/または胴体部分の形状および外観をモデリングするよう、本明細書において記載されるシステムおよび技術を使用し得る。
本明細書において記載される技術は、たとえば、ビデオ会議においてユーザを正確に表すが、実際のキャプチャされた画像フレームについての計算された潜在表現であり得るビデオ会議内でのポーズ、表情、およびユーザ画像部分を生成および表示し得るので、システム100はそのような技術の使用から恩恵を受け得る。計算された潜在表現は、たとえば、システム100を介して2Dおよび/または3Dの態様で別のユーザに対して表示され得るユーザの正確なテクスチャおよび画像を生成するよう、本明細書において記載される技術とともに使用され得る。
図1に示されるように、3Dコンテンツシステム100は、第1のユーザ102および第2のユーザ104によって使用されている。たとえば、ユーザ102および104は、3Dテレプレゼンスセッションに参加するために3Dコンテンツシステム100を使用している。そのような例では、3Dコンテンツシステム100は、ユーザ102および104の各々が、他のユーザの非常に現実的かつ視覚的に一致する表現を見ることを可能にし得、これにより、ユーザ同士が、互いに物理的に存在しているのと同様の態様でインタラクションすることを容易にする。
各ユーザ102,104は、対応する3Dシステムを有し得る。ここで、ユーザ102は3Dシステム106を有し、ユーザ104は3Dシステム108を有する。3Dシステム106,108は、3Dコンテンツに関する機能を提供し得、当該機能は、3D表示のための画像をキャプチャすることと、画像情報を処理および提示することと、音声情報を処理および提示することとを含むが、これらに限定されない。3Dシステム106および/または3Dシステム108は、1つのユニットとして統合される感知デバイスの集合を構成し得る。3Dシステム106および/または3Dシステム108は、図2~図6および図8を参照して記載されるいくつかまたはすべてのコンポーネントを含み得る。
3Dコンテンツシステム100は、1つ以上の2Dまたは3Dディスプレイを含み得る。ここで、3Dディスプレイ110は3Dシステム106のために設けられており、3Dディスプレイ112は3Dシステム108のために設けられている。3Dディスプレイ110,112は、複数のタイプの3Dディスプレイ技術のいずれかを使用して、それぞれのビューア(viewer)(ここでは、たとえば、ユーザ102またはユーザ104)のためにオートステレオスコピックビュー(autostereoscopic view)を提供し得る。いくつかの実現例では、3Dディスプレイ110,112は、スタンドアロンのユニット(たとえば、自己支持または壁掛け)であり得る。いくつかの実現例では、3Dディスプレイ110,112は、ウェアラブル技術(たとえば、コントローラ、ヘッドマウントディスプレイなど)を含み得るか、または、当該ウェアラブル技術へのアクセスを有し得る。いくつかの実現例では、ディスプレイ110,112は、2Dディスプレイであってもよい。
一般に、ディスプレイ110,112などのディスプレイは、ヘッドマウントディスプレイ(HMD: head-mounted display)デバイスを使用することなく、現実世界における物理的対象の3D光学特性に近似する画像を提供し得る。一般に、本明細書において記載されるディスプレイは、ディスプレイに関連付けられる多くの異なるビューイング領域に画像をリダイレクトするよう、フラットパネルディスプレイ、レンチキュラレンズ(たとえば、マイクロレンズアレイ)、および/または、視差バリアを含む。
いくつかの実現例では、ディスプレイ110,112は、高解像度で眼鏡のないレンチキュラ3Dディスプレイを含み得る。たとえば、ディスプレイ110,112は、ディスプレイのマイクロレンズに連結(たとえば、結合)されるグラススペーサを有する複数のレンズ(たとえば、マイクロレンズ)を含むマイクロレンズアレイ(図示せず)を含み得る。マイクロレンズは、選択されたビューイング位置から、ディスプレイのユーザの左目がピクセルの第1のセットを見ることができ、ユーザの右目がピクセルの第2のセットを見ることができるように設計され得る(たとえば、ピクセルの第2のセットは、ピクセルの第1のセットに対して相互排他的である)。
いくつかの例示的なディスプレイでは、そのようなディスプレイによって提供される画像コンテンツ(たとえば、ユーザ、対象など)の3Dビューを提供する単一の位置が存在し得る。ユーザは、適切な視差、最小の歪み、および現実的な3D画像を経験するよう、単一の位置に着座し得る。ユーザが異なる物理的位置に移動する(または頭の位置もしくは視線位置を変化させる)場合、画像コンテンツ(たとえば、ユーザ、ユーザによって着用される対象、および/または、他の対象)は、あまり現実的でなくなり、2Dとなり、および/または、歪んだように見え始め得る。本明細書において記載されるシステムおよび技術は、ユーザが動き回ることがあっても適切な視差、歪みの低いレート、および、現実的な3D画像をリアルタイムで経験することを確実にするために、ディスプレイから投射される画像コンテンツを再構築し得る。したがって、本明細書において記載されるシステムおよび技術は、ユーザが3Dディスプレイを見ている間に発生する如何なるユーザの動きに関わらず、ユーザへの表示のための3D画像コンテンツおよび対象を維持および提供する利点を提供する。
図1に示されるように、3Dコンテンツシステム100は、1つ以上のネットワークに接続され得る。ここで、ネットワーク114は、3Dシステム106および3Dシステム108に接続される。ネットワーク114は、2つの例を挙げると、公に利用可能なネットワーク(たとえば、インターネット)またはプライベートネットワークであり得る。ネットワーク114は、有線、無線、またはこれら2つの組み合わせであり得る。ネットワーク114は、1つ以上のサーバ(図示せず)を含むがこれらに限定されない1つ以上の他のデバイスまたはシステムを含み得るか、または、当該1つ以上の他のデバイスまたはシステムを使用し得る。
3Dシステム106,108は、3D情報のキャプチャ、処理、送信もしくは受信、および/または、3Dコンテンツの提示に関する複数のコンポーネントを含み得る。3Dシステム106,108は、3D提示に含まれるべき画像のための画像コンテンツをキャプチャするための1つ以上のカメラを含み得る。ここで、3Dシステム106は、カメラ116および118を含む。たとえば、カメラ116および/またはカメラ118は、それぞれのカメラ116および/または118の対物レンズまたはレンズが、ハウジング内の1つ以上の開口部を経由して画像コンテンツをキャプチャするように、3Dシステム106のハウジング内に本質的に配置され得る。いくつかの実現例では、カメラ116および/または118は、ハウジングとは別体であり得、たとえば、(たとえば、3Dシステム106への有線および/または無線接続を有する)スタンドアロンデバイスの形態である。カメラ116および118は、ユーザ(たとえば、ユーザ102)の十分に代表的なビューをキャプチャするように位置決めおよび/または方位決めされ得る。カメラ116および118は一般に、ユーザ102のための3Dディスプレイ110のビューを不明瞭にしないが、カメラ116および118の配置は、任意に選択され得る。たとえば、カメラ116,118の一方は、ユーザ102の顔の上方のどこかに位置決めされ得、他方は、顔の下方のどこかに位置決めされ得る。たとえば、カメラ116,118の一方は、ユーザ102の顔の右のどこかに位置決めされ得、他方は、顔の左のどこかに位置決めされ得る。3Dシステム108は、同様の態様で、たとえば、カメラ120および122を含み得る。付加的なカメラも可能である。たとえば、第3のカメラが、ディスプレイ110の近くまたは後ろに配置され得る。
いくつかの実現例では、3Dシステム106,108は、3D提示において使用される深度データをキャプチャするよう、1つ以上の深度センサを含み得る。そのような深度センサは、3Dディスプレイ上でシーンを正しく表すために、3Dシステム106および/または108によってキャプチャされるシーンを特徴付けるために使用される、3Dコンテンツシステム100における深度キャプチャコンポーネントの部分と考えられ得る。さらに、システムは、3D提示がビューアの現在の視点に対応する外観でレンダリングされ得るように、ビューアの頭の位置および方位をトラッキングし得る。ここで、3Dシステム106は、深度センサ124を含む。同様の態様で、3Dシステム108は、深度センサ126を含み得る。複数のタイプの深度感知または深度キャプチャのいずれかが、深度データを生成するために使用され得る。
いくつかの実現例では、補助ステレオ深度キャプチャ(assisted-stereo depth capture)が実行される。シーンは、たとえば光のドットを用いて照明され得、2つのそれぞれのカメラ間でステレオマッチングが行われ得る。この照明は、選択された波長または波長範囲の波を使用して行われ得る。たとえば、赤外線(IR)光が用いられ得る。いくつかの実現例では、深度センサは、たとえば、2Dデバイス上でビューを生成する際に利用されない場合がある。深度データは、深度センサ(たとえば、深度センサ124)とシーン内の対象との間の距離を反映するシーンに関する任意の情報を含み得るか、または、当該情報に基づき得る。深度データは、シーン内の対象に対応する画像内のコンテンツについて、対象までの距離(または深度)を反映する。たとえば、カメラと深度センサとの間の空間関係は、既知であり得、画像について深度データを生成するよう、カメラからの画像を深度センサからの信号と相関させるために使用され得る。
3Dコンテンツシステム100によってキャプチャされた画像は、処理され、その後、3D提示として表示され得る。図1の例に示されるように、顔104′と胴体と髪104″との3D画像は、3Dディスプレイ110上に提示される。したがって、ユーザ102は、ユーザ102から遠隔に位置し得るユーザ104の3D表現として、3D画像104′と胴体と髪104″とを知覚し得る。3D画像102′と胴体と髪102″とは、3Dディスプレイ112上に提示される。したがって、ユーザ104は、ユーザ102の3D表現として3D画像102′を知覚し得る。
3Dコンテンツシステム100は、参加者(たとえばユーザ102,104)が、互いのおよび/または他者との音声通信に参加することを可能にする。いくつかの実現例では、3Dシステム106は、スピーカおよびマイクロフォン(図示せず)を含む。たとえば、3Dシステム108は、同様にスピーカおよびマイクロフォンを含み得る。したがって、3Dコンテンツシステム100は、ユーザ102および104が、互いのおよび/または他者との3Dテレプレゼンスセッションに参加することを可能にし得る。一般に、本明細書において記載されるシステムおよび技術は、システム100のユーザ間で表示のための画像コンテンツおよび/またはビデオコンテンツを生成するよう、システム100とともに機能し得る。
テレプレゼンスシステム100に表示されるべき画像コンテンツを生成することは、任意の数のニューラルテクスチャ134と、メッシュプロキシジオメトリ136であり得る1つ以上のプロキシジオメトリとの使用を含み得る。ここで使用されるように、メッシュプロキシジオメトリは、特定のメッシュジオメトリにマッピングされた2つ以上のビュー依存テクスチャを表す。たとえば、メッシュプロキシジオメトリ136は、たとえば、平面プロキシジオメトリと組み合わされる顔プロキシジオメトリといった、複数の組み合わされたプロキシジオメトリを表し得る。動作において、システム100は、システム200にアクセスし、および/または、そうでなければ利用して、入力画像から特徴を抽出し、当該特徴および1つ以上のプロキシジオメトリを使用して1つ以上のニューラルテクスチャ134を生成し、ニューラルテクスチャ134およびメッシュプロキシジオメトリ136に基づいて1つ以上の新規なビューを合成し得る。
図2は、本開示の全体にわたって記載される実現例に従った、レンダリングのためにコンテンツを合成するための例示的なシステム200のブロック図である。システム200は、本明細書において記載される1つ以上の実現例として機能するか、もしくは、当該実現例に含まれ得、および/または、本明細書において記載される画像コンテンツの合成、処理、モデリング、もしくは提示の1つ以上の例の動作を実行するために使用され得る。全体のシステム200および/またはその個々のコンポーネントのうちの1つ以上は、本明細書において記載される1つ以上の例に従って実現され得る。
システム200は、1つ以上の3Dシステム202を含み得る。示される例では、3Dシステム202A,202B~202Nが示されており、指数Nは任意の数を示す。3Dシステム202は、2Dまたは3D提示のための視覚および音声情報のキャプチャを提供し、処理のために当該2Dまたは3D情報を転送し得る。そのような情報は、シーンの画像、シーンに関する深度データ、および、シーンからの音声を含み得る。たとえば、2D/3Dシステム202は、システム106および2D/3Dディスプレイ110(図1)として機能するか、または、それらに含まれ得る。
システム200は、カメラ204によって示されるように、複数のカメラを含み得る。画像をキャプチャするために、一般的なデジタルカメラにおいて使用されるタイプの画像センサといった任意のタイプの光感知技術が使用され得る。カメラ204は、同じタイプまたは異なるタイプであり得る。カメラ位置は、たとえば、システム106のような3Dシステム上の任意の位置に配置され得る。
システム202Aは、深度センサ206を含む。いくつかの実現例では、深度センサ206は、シーン上にIR信号を伝搬し、応答信号を検出することによって動作する。たとえば、深度センサ206は、ビーム128A-Bおよび/または130A-Bを生成および/または検出し得る。いくつかの実現例では、深度センサ206は、たとえば、深度感知を利用しない2Dビデオ会議アプリケーションにおける随意のコンポーネントである。システム202Aはさらに、少なくとも1つのマイクロフォン208およびスピーカ210を含む。いくつかの実現例では、マイクロフォン208およびスピーカ210は、システム106の部分であり得る。
システム202は、3D画像を提示し得る3Dディスプレイ212をさらに含む。いくつかの実現例では、3Dディスプレイ212は、スタンドアロンディスプレイであり得、いくつかの他の実現例では、3Dディスプレイ212であり得る。いくつかの実現例では、3Dディスプレイ212は、視差バリア技術を使用して動作する。たとえば、視差バリアは、画面とビューアとの間に配置される本質的に不透明な材料(たとえば、不透明なフィルム)の平行な垂直ストライプを含み得る。ビューアのそれぞれの目の間の視差により、画面の異なる部分(たとえば、異なるピクセル)が、それぞれの左右の目によって見られる。いくつかの実現例では、3Dディスプレイ212はレンチキュラレンズを使用して動作する。たとえば、交互のレンズの行が画面の前に配置され得、当該行は、それぞれ画面からの光をビューアの左目および右目に向けて照準を合わせる。
システム200は、データ処理、データモデリング、データコーディネーションおよび/またはデータ送信のあるタスクを実行し得るサーバ214を含み得る。サーバ214および/またはそのコンポーネントは、図8を参照して記載されるいくつかまたはすべてのコンポーネントを含み得る。
サーバ214は、1つ以上の態様で2Dおよび/または3D情報を生成することを担い得るテクスチャジェネレータ216を含む。これは、(たとえば、3Dシステム202Aから)画像コンテンツを受信すること、画像コンテンツを処理すること、および/または、(処理された)画像コンテンツを別の参加者(たとえば、3Dシステム202のうちの別のもの)に転送することを含み得る。
テクスチャジェネレータ216は、本開示の全体にわたって記載される実現例に従って、生成型潜在最適化フレームワーク(generative latent optimization framework)によって学習され得る。一般に、テクスチャジェネレータ216は、対象(たとえば、ユーザ、被写体、表情、特徴など)のさまざまな形状および外観を生成し得る生成型モデルを使用してニューラルテクスチャをパラメータ化するよう、2つ以上の3Dプロキシジオメトリを使用し得る。
動作において、テクスチャジェネレータ216は、特徴のマップ(たとえば、特徴マップ238)を生成することによって対象を表し得る。特徴マップ238は、各対象インスタンスiについて潜在コードをz∈Rとして表し得る。潜在空間の特徴マップ238は、8次元(8D)マップであり得る。特徴マップ238は、たとえば、システム200を使用して最適化されるランダム値を含み得る。
特徴マップ238は、ある数のニューラルテクスチャ134を生成するよう、1つ以上のニューラルネットワーク244に提供され得る。ニューラルテクスチャ134は、特徴マップ238において表される特定の対象についてのジオメトリおよび/またはテクスチャの何らかの部分を規定するメッシュの部分を表し得る。
テクスチャジェネレータ216は、K個のプロキシ{Pi,1,...,Pi,K}のセット(すなわち、UV座標を有する三角形メッシュ)を含む粗いジオメトリを使用し得る。たとえば、アーキテクチャ400は、ニューラルテクスチャ134を生成するために、2D画像を3Dプロキシモデル表面に投射し得る。UV座標は、2Dテクスチャの軸を示す。プロキシは、クラス内の対象の集合のいずれかまたは全部の実際のジオメトリのバージョンを表すように機能する。
動作において、システム200は、粗いプロキシ表面(たとえば、メッシュプロキシジオメトリ136)のセットを使用してジオメトリック構造を符号化し、かつ、ビュー依存ニューラルテクスチャ134を使用して形状、アルベド(albedo)、およびビュー依存効果を符号化するよう、プロキシジオメトリ原理を使用する。
図2に示されるように、テクスチャジェネレータ216は、テクスチャプロセッサ/アグリゲータ218と、テクスチャインペインタ(texture in-painter)220と、ニューラルテクスチャジェネレータ222と、画像ワープエンジン224と、特徴抽出器226とを含む。テクスチャプロセッサ/アグリゲータ218は、ニューラルネットワーク244のエンベッダネットワーク(embedder network)245のようなフューショットエンベッダネットワークを使用してニューラルテクスチャを生成するように構成される。エンベッダネットワークは、画像潜在表現(たとえば、画像潜在ベクトル230)に加えて、画像ごとのテクスチャ潜在ベクトル228を生成するように使用され得る。次いで、k個のショットのテクスチャ潜在性(または、k個のショットのテクスチャ潜在ベクトル)が、テクスチャプロセッサアグリゲータ218によって集約され得る。次いで、集約されたテクスチャ潜在性(または、集約されたテクスチャ潜在ベクトル)は、ターゲット被写体(たとえば、ユーザ画像)についてのニューラルテクスチャ134を得るよう、テクスチャジェネレータネットワーク(たとえば、ジェネレータネットワーク247)に提供され得る。テクスチャ潜在ベクトル228および画像潜在ベクトル230は、たとえば、テクスチャジェネレータ216が、集約された潜在性を含まない方法を使用してニューラルテクスチャを生成する場合、各要素がシステム200において随意であり得ることを示すよう、点線の形態で示されている。
いくつかの実現例では、システム200は、特定のコンテンツ(たとえば、対象、特徴、画像フレームなど)の潜在空間を構築し得、そのようなコンテンツの潜在空間を、たとえば、ニューラルネットワーク244にフィードし得、ニューラルネットワーク244は、次いで、各特定のコンテンツタイプについてテクスチャマップ240を生成し得る。いくつかの実現例では、システム200は、学習データから平面プロキシのインスタンスの数を低減し、フューショット再構築を実行する一方で、特定の対象の残部のプロキシを使用して、ニューラルネットワークのためのカテゴリレベルモデルを学習させ得る。たとえば、残部のプロキシは、ニューラルネットワーク244について髪カテゴリを学習させるために使用され得るヘアスタイル画像を表し得る。そのようなカテゴリは、特定のユーザ画像上の髪の新しいビューをシミュレートするよう使用され得る。
たとえば、いくつかの実現例では、テクスチャプロセッサ/アグリゲータ218は、集約されたテクスチャ潜在性を使用しなくてもよいが、その代わりに、ニューラルテクスチャを生成するようUVマップ232およびメッシュプロキシジオメトリ136を使用してインバースレンダリングを使用し得る。UVマップ232は、特定のメッシュプロキシに含まれる可視コンテンツを表し得る。可視コンテンツは、テクスチャ座標に従って1つ以上のUVマップ232を生成するよう使用され得る。UVマップ232は、たとえば、画像の特定のセットにおける特徴の(特徴マップ238への)抽出を調整するよう、特徴抽出器226に提供され得る。UVマップ232によって、システム200は、ニューラルネットワーク244が画像内に表される特定の画像および/または特徴に関する関連データを得ることを可能にすることを可能にし得る。
いくつかの実現例では、テクスチャプロセッサ/アグリゲータ218は、特定のユーザ特徴を考慮するユーザの表現(たとえば、テクスチャ潜在ベクトル228および/または画像潜在ベクトル230に格納される潜在表現)を生成し得る。たとえば、アグリゲータ218は、入力画像(たとえば、任意のポーズおよび表情の人の複数のフレーム)を取得し、各入力フレームについて潜在表現(たとえば、テクスチャ潜在ベクトル228)を計算し得る。画像は、テクスチャ空間上でインバースレンダリングを使用して生成されたユーザの表現(たとえば、テクスチャ潜在ベクトル228および/または画像潜在ベクトル230)を使用してサンプリングされ得る。潜在表現は、改善されてより完全なニューラルテクスチャ134を作り出すよう、入力ビューからの情報を融合するように学習するアテンションメカニズムを使用して、テクスチャ空間においてさらに集約され得る。新規なフレーム(たとえば、合成ビュー250)を生成するために、ニューラルテクスチャ134は、潜在表現(たとえば、ユーザの生成された表現)を使用してメッシュプロキシジオメトリ136からサンプリングされ、ニューラルレンダラ248を使用して再処理される。
システム200は、少なくとも1つのニューラルネットワーク244を含むか、または、当該ニューラルネットワーク244へのアクセスを有する。示されるように、ニューラルネットワーク244は、少なくともエンベッダネットワーク245およびジェネレータネットワーク247を含む。エンベッダネットワーク245は、1つ以上の畳み込み層およびダウンサンプリング層を含む。ジェネレータネットワーク247は、1つ以上の畳み込み層およびアップサンプリング層を含む。
テクスチャインペインタ220は、特定の欠けているコンテンツ部分を取り囲む画素の局所近傍に基づいて、特定のテクスチャから欠けている可能性があるコンテンツを生成し得る。いくつかの実現例では、テクスチャインペインタ220は、垂直軸の周りで対称であるテクスチャの大きな部分に基づいて機能し得、したがって、テクスチャの一方の半分からの欠けている部分は、テクスチャの他方の半分の対応する値から近似され得る。システム200は、集約されたニューラルテクスチャを、ニューラルテクスチャの水平反転バージョンと連結し得る。ニューラルテクスチャの連結バージョンは、最終的な対称的なニューラルテクスチャを生成するよう、テクスチャインペインタ220に提供され得る。
ニューラルテクスチャジェネレータ222は、ニューラルテクスチャ134を生成し得る。ニューラルテクスチャ134は、画像キャプチャプロセスの部分として学習された学習済特徴マップ238を表す。たとえば、対象がキャプチャされると、ニューラルテクスチャは、その対象について特徴マップ238および1つ以上の3Dプロキシジオメトリ136を使用して生成され得る。動作において、システム200は、特定の対象(またはシーン)についてのニューラルテクスチャ134を生成し、その対象についての1つ以上の3Dプロキシジオメトリ136の上にマップとして格納し得る。たとえば、ニューラルテクスチャは、識別されたカテゴリの各インスタンスに関連付けられる潜在コードと、ポーズに関連付けられるビューとに基づいて生成され得る。
可視性スコア236は、キャプチャされた対象の特定のピクセルまたは特徴の可視性を表し得る。各可視性スコア236は、画像のどの部分(たとえば、ピクセル、特徴など)が入力画像の特定のビューにおいて可視であるかを示すニューラルテクスチャの各々について単一のスカラー値を表し得る。たとえば、ユーザの顔の最も左側がユーザの入力画像において見えない場合、ユーザの顔の最も左側を表すピクセルについての可視性スコア236は、低く重みを付けられ得る一方、入力画像において良好に見られ得るおよび/またはキャプチャされる他のエリアは、高く重みを付けられ得る。
画像ワープエンジン224は、入力画像空間(たとえば、特徴空間)からの画像をテクスチャ空間にワーピングする。たとえば、特定の入力画像は、(テクスチャ空間において)ニューラルテクスチャを生成するようにUV空間にワーピングされる。
特徴抽出部226は、各画素について特徴を生成するよう画像を解析するU-netニューラルネットワークである。特徴抽出器220は、特徴マップ238およびテクスチャマップ240を生成するよう、そのような特徴を使用し得る。
サンプラ246は、任意の新規なビューのために特定のメッシュプロキシジオメトリからサンプリングする2Dサンプラを表し得る。サンプリングされたテクスチャは、次いで、ニューラルレンダラ248に提供される。
ニューラルレンダラ248は、たとえば、レンダリングするようニューラルネットワーク244を利用する対象(たとえば、ユーザ)および/またはシーンの中間表現を生成し得る。ニューラルテクスチャ134は、ニューラルレンダラ248とともに動作するニューラルネットワーク244のようなU-Netとともに、テクスチャマップ(たとえばテクスチャマップ240)上の特徴を一緒に学習するために使用され得る。ニューラルレンダラ248は、たとえば、対象固有の畳み込みネットワークにより、真の外観(たとえば、グラウンドトゥルース)と汎性再投射(diffuse reprojection)との間の差をモデリングすることによって、ビュー依存効果を組み込んでもよい。そのような効果は、シーンの知見に基づいて予測することが困難であり得、したがって、現実的な出力をレンダリングするためにGANベースの損失関数が使用され得る。
動作において、サーバ214は、入力画像242を取得または受信し得る。テクスチャジェネレータ216は、1つ以上のニューラルネットワーク244を使用して入力画像242を処理し得る。サーバ214は、合成ビュー250を生成するために、テクスチャジェネレータ216、サンプラ246、および、ニューラルレンダラ248を利用し得る。
システム200およびシステム200内のニューラルネットワーク244は、以下の式[1]に従って、再構築損失(LCNT: reconstruction losses)、同一性保存損失(LID: identity preservation loss)、および敵対的損失(LADV: adversarial losses)の混合を使用してエンドツーエンドで学習され得る。
Figure 0007386888000001
グラウンドトゥルース値ターゲット画像Iと予測
Figure 0007386888000002
との間の再構築エラーは、L1損失と知覚損失との混合を使用して、予め学習されたVGG16ネットワークと予め学習された顔アルゴリズムメッシュネットワークに基づいて、以下の式[2]に従って計算される。
Figure 0007386888000003
システム200は、被写体の微調整を実行し得る。たとえば、テスト時において、見られていないテスト被写体にフューショット再構築が適用され得る。いくつかの実現例では、フューショットの数は、固定される必要はなく、異なるテスト被写体間で変動し得る。ターゲット被写体のフューショットフレームのセットが与えられると、システム200は、ターゲット被写体をフィッティングするように、ニューラルネットワーク244またはシステム200内の他のネットワークのシンプルな微調整を実行し得る。微調整は、システム200のモジュールの任意のサブセットに適用され得る。たとえば、テクスチャジェネレータ216(Gtexとして表される)、ニューラルレンダラ248(Rとして表される)、およびディスクリミネータ(discriminator)D(図示せず)に微調整が適用され得る。さらに、システムは、特定のターゲット被写体の潜在表現を直接的に最適化することによってネットワーク重みを微調整し得る。たとえば、システム200は、予測されたニューラルテクスチャを自由変数として扱い、ニューラルレンダラ248と一緒にニューラルネットワークを最適化し、これにより、ターゲット被写体をより良好にフィッティングし得る。ニューラルテクスチャを可視化することは、微調整段階の間に付加される高周波のディテールを示し得るので、ニューラルテクスチャを最適化することは、潜在ベクトル表現を最適化することよりも解釈可能であるという利点を提供し得る。
ここで、上記の例示的なコンポーネントは、ネットワーク260(図1におけるネットワーク114と同様または同一であり得る)を介して3Dシステム202のうちの1つ以上と通信し得るサーバ214において実現されるものとして記載される。いくつかの実現例では、テクスチャジェネレータ216および/またはそのコンポーネントは、その代わりにまたはそれに加えて、3Dシステム202のいくつかまたはすべてにおいて実現され得る。たとえば、上述のモデリングおよび/または処理は、3D情報を1つ以上の受信システムに転送する前に、3D情報を送出するシステムによって実行され得る。別の例として、送出システムは、画像、モデリングデータ、深度データ、および/または、対応する情報を、上述の処理を実行し得る1つ以上の受信システムに転送し得、受信システムは上記の処理を実行し得る。これらのアプローチの組み合わせが使用され得る。
システム200は、カメラ(たとえば、カメラ204)、深度センサ(たとえば、深度センサ206)、および、メモリに格納される命令を実行するプロセッサを有する3Dコンテンツジェネレータ(たとえば、テクスチャジェネレータ216)を含むシステムの例である。そのような命令は、プロセッサに、(たとえば、深度処理コンポーネントによって)3D情報に含まれる深度データを使用して、3D情報に含まれるシーンの画像内の画像コンテンツを識別させ得る。プロセッサは、たとえば、合成ビュー250を適切に示すようテクスチャジェネレータ216に提供され得るニューラルテクスチャ134をサンプリングすることによって、修正された3D情報を生成し得る。
合成ビュー250は、本明細書に記載されるように、強化された顔メッシュに少なくとも部分的に基づいてディスプレイ(たとえば、ディスプレイ212)にアクセスするユーザに関連付けられる両眼についての適切な視差およびビューイング構成によって、特定の対象の3D立体画像(たとえば、ユーザ画像412,512,610)を表す。合成ビュー250の少なくとも部分は、たとえば、ユーザがディスプレイを見ながら頭の位置を動かすたびに、システム200を使用して、ニューラルネットワーク244からの出力に基づいて決定され得る。いくつかの実現例では、合成ビュー250は、ユーザの顔と、ユーザの顔を取り囲むとともにユーザの顔をキャプチャするビュー内のユーザの他の特徴とを表す。
いくつかの実現例では、システム202および214のプロセッサ(図示せず)は、グラフィックスプロセッシングユニット(GPU: graphics processing unit)を含み得る(または当該グラフィックスプロセッシングユニットと通信し得る)。動作において、プロセッサは、メモリ、ストレージ、および他のプロセッサ(たとえば、CPU)を含み得る(またはこれらへのアクセスを有し得る)。グラフィックスおよび画像生成を促進するために、プロセッサは、ディスプレイデバイス(たとえば、ディスプレイデバイス212)上に画像を表示するよう、GPUと通信し得る。CPUおよびGPUは、PCI、AGPまたはPCI-Expressといった高速バスを通じて接続され得る。GPUは、HDMI(登録商標)、DVI、またはディスプレイポートといった別の高速インターフェイスを通じてディスプレイに接続され得る。一般に、GPUは、画像コンテンツをピクセルの形態でレンダリングし得る。ディスプレイデバイス212は、GPUから画像コンテンツを受信し、画像コンテンツをディスプレイ画面上に表示し得る。
図3Aは、本開示の全体にわたって記載される実現例に従った、粗いジオメトリックプロキシとして、強化顔メッシュプロキシおよび平面プロキシを組み合わせることから生成される強化メッシュプロキシ300の例のブロック図である。強化メッシュプロキシ300は、ユーザに関連付けられる顔の特徴、髪の特徴および/または胴体の特徴を含むがこれらに限定されないユーザの画像および/またはビデオコンテンツを合成するために使用され得る。
強化メッシュプロキシ300は、2つ以上のプロキシジオメトリ表現を組み合わせることによって生成され得る。たとえば、強化メッシュプロキシ300は、3D強化顔メッシュプロキシ302を使用して決定されるユーザの顔の表現を、この例ではユーザの髪および/またはユーザ胴体の部分(たとえば、顔メッシュプロキシ302に含まれないユーザの頭/胴部分の残部)を表す平面プロキシ304と組み合わせることによって生成され得る。たとえば、顔メッシュアルゴリズムは、ユーザの頭および胴体の画像の正確な合成を生成するよう、単一の平面ジオメトリックプロキシと組み合わされ得る。顔メッシュプロキシ302および平面プロキシ304は、たとえば、図1に示されるように、メッシュプロキシジオメトリ136として表され得る。
顔メッシュプロキシ302は、入力画像内の可視コンテンツに対応するテクスチャ座標を表し得る。たとえば、可視コンテンツは、プロキシ302の顔部分を含み得るが、プロキシ302の顔部分を取り囲むバックグラウンドを含み得ない。可視コンテンツは、テクスチャ座標に従ってUVマップ(たとえばUVマップ232)を生成するために使用され得る。UVマップ232は、たとえば、画像の特定のセットにおける特徴の抽出を調整するために、特徴抽出器226に提供され得る。UVマップ232によって、システム200は、ニューラルネットワーク244が画像内に表される特定の画像および/または特徴に関する関連データを得ることを可能にすることを可能にし得る。
顔メッシュは、画像が与えられると、所定のトポロジーが顔を表す予め規定された頂点のセットの3D位置を表す一連の係数を出力する畳み込みニューラルネットワークを使用して生成され得る。3D位置は、入力画像の空間座標と整列するような位置であり、その一方、深度寸法は、任意であってよく、または、メトリック単位であってもよい。
平面プロキシ304は、(たとえば、平面に対して垂直なビューにおける)ユーザの顔と、周囲のエリア(たとえば、髪、胴体など)を含むように配置された平面として示されている。平面プロキシ304は、ユーザの頭をモデリングする平面ビルボード(planar billboard)を表す。そのようなコンテンツを表す他の対象および平面プロキシ形状は、3Dコンテンツを生成およびレンダリングするよう、本明細書において記載されるシステムおよび技術によって利用され得る。たとえば、他のプロキシは、ボックス、円筒、球、三角形などを含んでもよいが、これらに限定されない。
平面プロキシは、複雑なジオメトリの代替として使用され得るテクスチャマッピングされた対象(または対象の部分)を表し得る。ジオメトリックプロキシを操作およびレンダリングすることは、対応する詳細なジオメトリを操作およびレンダリングすることよりも計算的に集中的ではないので、平面プロキシ表現は、ビューを再構築するためのよりシンプルな形状を提供し得る。平面プロキシ表現は、そのようなビューを生成するよう使用され得る。平面プロキシの使用は、単にいくつかの例を挙げると、眼鏡、車、雲、木、および草のような非常に複雑な外観を有する対象を操作、再構築、および/またはレンダリングしようとする際に、低い計算コストの利点を提供し得る。同様に、強力なグラフィックスプロセッシングユニットの利用可能性により、リアルタイムゲームエンジンが提供され、これらのリアルタイムゲームエンジンは、より低いレベルのディテールのジオメトリを取って代わるようマップを生成するために、3Dプロキシジオメトリを使用して、距離によりスワップインおよびアウトされ得る複数のレベルのディテールを有するそのようなプロキシ(たとえば、ジオメトリック表現)を使用し得る。
動作において、システム200は、たとえば、抽出されたアルファマスクを使用して、頭部分についてバウンディングボックス(bounding box)(たとえば、粗い視覚的外殻(coarse visual hull))を計算することによって、平面プロキシ304を生成し得る。一般に、アルファマスクは、頭部分における任意の数のピクセルについて、オーバーレイされる際に、特定のピクセルの色が他のピクセルとどのようにマージされるべきかを表す。次いで、システム200は、ユーザの頭の画像内の対象領域を特定し得る。対象領域は、たとえば、頭の座標を用いて特定され得る。次いで、システム200は、対応する正射影から見た際に表面と確率的にマッチする平面を抽出し得る。
一般に、システム200は、ニューラルネットワーク(たとえば、ニューラルネットワーク244)に入力される学習データとして使用され得る任意の数の画像についての平面プロキシを生成し得る。ニューラルネットワークは、たとえば、カメラによってキャプチャされた特定の対象(たとえば、頭部分、顔部分など)を適切にどのように表示するかを決定し得る。いくつかの実現例では、システム200は、たとえば、特定の頭部分を含む画像のデータセットを集め、かつ、検出されたポーズを使用して、当該ポーズに基づく視点から頭部分をシミュレートすることによって、頭部分のビューを生成し得る。
強化メッシュプロキシ300は、顔とユーザの頭に関連付けられる他の頭特徴との正確な表現および再現性を保証するために使用され得る。たとえば、合成画像において顔エリアの外側の領域を含むために、強化メッシュプロキシ300は、合成画像の品質の低下に対して堅牢なニューラルテクスチャを生成するよう使用され得る。そのようなニューラルテクスチャは、新しい画像コンテンツを合成するために、3D変換を表すデータと、画像パースペクティブを表すデータと、学習されたレンダリング技術とを組み合わせることによって生成され得る。
図3Bは、本開示の全体にわたって記載される実現例に従った、強化メッシュプロキシを生成するために使用される例示的な入力を示す。たとえば、入力画像320が取得され得る。入力画像320は、たとえば、ターゲット被写体(たとえば、ユーザ)を表し得る。入力画像は、ある数のテクスチャマップを生成するために使用され得る。テクスチャマップは、ユーザの2D画像および3D画像を表し得る。テクスチャマップは、UV空間において、3Dモデルを生成するために2D画像表現を使用しており、「U」および「V」は2Dテクスチャ軸を表す。テクスチャマップは、システム200によって使用され得、たとえば、3Dで表面上に関数をマッピングし得る。関数ドメインは、1D、2D、または3Dであり得、数学的関数(たとえば、配列)として表され得る。テクスチャ空間は、対象空間(たとえば、x、yおよびz座標空間)にマッピングされ得るUV空間によって規定され得る。システム200はさらに、新しいテクスチャ座標を予測するよう、テクスチャマップを使用し得る。
たとえば、システム200は、顔メッシュプロキシ302を生成するために使用され得る顔メッシュテクスチャマップ322を生成し得る。同様に、システム200は、平面プロキシ304を生成するために使用され得る頭プロキシUテクスチャマップ324を生成し得る。システム200によって生成されるテクスチャマップは、ニューラルテクスチャを生成するために使用され得る。たとえば、システム200は、ユーザ320の顔を表すニューラルテクスチャ326を生成するよう、顔メッシュプロキシ302および顔メッシュテクスチャマップ322を使用し得る。同様に、システム200は、ユーザ320の頭の残部(たとえば、髪、胴体など)を表すニューラルテクスチャ328を生成するよう、平面プロキシ304および頭プロキシテクスチャマップ324を使用し得る。したがって、システム200は、顔メッシュテクスチャ326を頭プロキシテクスチャ328と組み合わせることによって、ユーザのための学習済ニューラルテクスチャを生成し得る。一般に、学習済ニューラルテクスチャでは、各表面点ごとの外観が表される。表面点ごとに外観記述子(appearance descriptor)を格納することは、高い周波のディテールおよび正確な同一性に敏感な情報を表すという利点を提供する。
図4は、本開示の全体にわたって記載される実現例に従った、レンダリングのための合成コンテンツを生成するための例示的なアーキテクチャ400のブロック図である。アーキテクチャ400は、ある数の入力画像402(たとえば、入力されたフューショット)を含み、当該入力画像402は、わずか3つの入力画像であり得る。アーキテクチャ400はさらに、ニューラルテクスチャ406を生成するようニューラルテクスチャジェネレータ404を含む。アーキテクチャ400はさらに、入力画像402に示されるユーザの合成ビュー412を生成するためにニューラルテクスチャジェネレータと組み合わせて使用され得る、2Dサンプリングモジュール408と、ニューラルレンダラ410とを含む。たとえば、ニューラルレンダラ410は、ニューラルネットワークを含むおよび/または使用するレンダラである。
動作において、ターゲット被写体(たとえば、ユーザ)のフューショット画像(たとえば、入力画像402)が与えられると、システム200は、入力画像402においてユーザの新規なビュー合成を実行し得る。たとえば、システム200は、ニューラルテクスチャジェネレータ404を使用して入力画像402を処理し、処理された画像を集約して、強化メッシュプロキシ300と、ターゲット被写体(たとえば、入力画像402のユーザ)についての学習済ニューラルテクスチャ406とを構築し得る。次いで、システム200は、プロキシジオメトリから学習済ニューラルテクスチャ406をサンプリングし、(たとえば、サンプリングモジュール408によって実行される)サンプリングされた点をニューラルレンダラネットワーク(たとえば、ニューラルレンダラ410)に入力し得、ニューラルレンダラネットワークは次いで、入力画像402においてユーザのターゲットビューを合成し得る。
システム200は、入力画像402においてターゲット被写体についてニューラルテクスチャ406を生成するようエンコーダデコーダアーキテクチャを含む第1のアーキテクチャ500を使用してアーキテクチャ400を実現し得る。代替的には、システム200は、入力画像402におけるターゲット被写体についてニューラルテクスチャ406を生成するためにインバースレンダリング技術を使用する第2のアーキテクチャ600を使用してアーキテクチャ400を実現し得る。
図5は、本開示の全体にわたって記載される実現例に従った、集約された潜在テクスチャ技術を使用してニューラルテクスチャを生成するための例示的なアーキテクチャ500のブロック図である。ニューラルテクスチャ(たとえば、ニューラルテクスチャ510)は、たとえば、ニューラルテクスチャジェネレータ222を使用してニューラルネットワーク244から学習され得る。システム200のテクスチャジェネレータ216は、たとえば、図5のコンポーネントによって生成されるサンプリングされたニューラルテクスチャを使用してアーキテクチャ400を実行するように調整され得る。テクスチャジェネレータ216は、画像内の疎な2Dランドマークをサンプリングする従来のシステムではなく、サンプリングされたニューラルテクスチャ(たとえば、ニューラルテクスチャ510)上で調整され得る画像合成ネットワークを表し得る。
サンプリングされたニューラルテクスチャを生成するために、システム200は、入力画像502(ここでは、画像{I、I...I}として示される)を取得し得る。入力画像502は、カメラデバイスによってキャプチャされたユーザのある数のビュー(たとえば、ポーズ)を含み得る。入力ビューは、エンベッダネットワーク245のようなエンベッダネットワークに提供され得る。エンベッダネットワーク245は、一般的にポーズ独立情報を格納する埋め込みベクトル506(ここでは{z,z...z}として示される)に、入力画像502(たとえば、顔、胴体、またはユーザの部分の任意の組み合わせ)をマッピングするネットワークを表し得る。いくつかの実現例では、システム200は、エンベッダネットワーク245に空間入力504を提供し得る。たとえば、空間入力504は、図3Aのプロキシジオメトリ(たとえば3D強化顔メッシュプロキシ302および平面プロキシ304)として表され得る。3D強化顔メッシュプロキシ302のプロキシジオメトリは、空間入力504を作り出すよう、平面プロキシ304と組み合わされる。
埋め込みベクトル506は、たとえば、アグリゲータ218を使用して集約され得る。集約ベクトル506の結果は、集約ベクトル508(ここではzとして示される)であり得る。集約ベクトル508は、テクスチャジェネレータネットワーク247に提供され得る。テクスチャジェネレータネットワーク247は、たとえば、ニューラルテクスチャ510を生成するよう、集約された埋め込みベクトルをマッピングし得るネットワークを表す。出力されたニューラルテクスチャ510は、新規な合成ビュー512を生成するために(システム200のコンポーネントを使用して)アーキテクチャ400とともに使用され得る。
動作において、ニューラルテクスチャ510は、画像ごとのテクスチャ潜在ベクトル
Figure 0007386888000004
を生成するように(フューショット)エンベッダネットワーク245(E)を構成することによって生成され得る。システム200は、i∈{1...k}についてkショットテクスチャ
Figure 0007386888000005
として画像潜在性を表し得る。次いで、kショットテクスチャ潜在性(ベクトル506として示される)は、以下の式[3]に示されるように、平均化方程式を使用して集約される。
Figure 0007386888000006
式中、集約されたテクスチャ潜在性(ベクトル508として示される)は次いで、(テクスチャ)ジェネレータネットワーク247(たとえば、Gtex)に提供され、(テクスチャ)ジェネレータネットワーク247は、ターゲット被写体についてニューラルテクスチャ510(たとえば、T)T=Gtextexを出力する。
図6は、本開示の全体にわたって記載される実現例に従った、インバースレンダリング技術を使用してニューラルテクスチャ(たとえば、ニューラルテクスチャ602)を生成するための例示的なアーキテクチャ600のブロック図である。インバースレンダリング技術は、任意の数のサブ処理モジュールを含み得る。以下の例では、少なくとも3つのサブ処理モジュールが使用される。第1のサブ処理モジュールは、特徴抽出器ネットワーク226を含み得る。第2のサブ処理モジュールは、画像ワープエンジン224を含み得る。第3のサブ処理モジュールは、テクスチャプロセッサ/アグリゲータ218を含み得る。
被写体(たとえば、ユーザ)のフューショットの画像が与えられると、システム200は、ユーザについて対応するニューラルテクスチャを構築するためにインバースレンダリング技術を実行し得る。本明細書において記載されるインバースレンダリング技術は、ユーザの画像(たとえば、ユーザの頭、首、髪、胴体など)に関してシーンの物理的属性(たとえば、反射率、ジオメトリ、照明など)の推定を実行することを含み得る。アーキテクチャ600の例示的な動作では、特徴抽出器ネットワークF(.;φ)226は、入力画像(たとえば、赤緑青(RGB: Red Green Blue)フレーム
Figure 0007386888000007
を受信し得、当該入力画像はここでは、対応する深度画像
Figure 0007386888000008
およびUVマップ
Figure 0007386888000009
により強化された画像603(すなわち、I,I...I)として示される。
特徴抽出器ネットワーク226は、k個のショット入力の各々を入力画像x1...kと同じ解像度のジオメトリを意識した(geometry-aware)特徴空間に投射し得る。
Figure 0007386888000010
次に、投射された画像は、入力画像ごとにニューラルテクスチャy∈R(たとえばテクスチャ134)を生成するよう、UV空間にワーピングされる。テクスチャプロセッサネットワークP(.;ω)は、各ニューラルテクスチャy(たとえば、テクスチャ134)を後処理し、さらに、エクストラスコアマップSを出力する。エクストラスコアマップSにおいて、以下の式[5]によって示されるように、テクスチャ空間における各点でのスコアは、対応する入力画像におけるその可視性(たとえば、可視性スコア236)を示す。
Figure 0007386888000011
たとえば、特徴抽出器226は、1つ以上の特徴マップ238を生成し得、当該1つ以上の特徴マップ238は、複数の特徴マップ238(図6に示される)として表される。特徴マップ238は、特徴空間における入力画像の特徴を表す。たとえば、各入力画像603について、特徴マップ238は、画像の抽出された特徴を使用して生成され得る。
各特徴マップ238は、たとえば、ある数のテクスチャマップ240を生成するよう、画像ワープエンジン224を使用してワーピングされ得る。たとえば、3つの入力画像がシステム200に提供される場合、特徴抽出器226は、各入力画像603につき1つずつ、3つの特徴マップを抽出し得る。画像ワープエンジン224は、図6に示されるように、3つの特徴マップ238の各々をテクスチャマップ240にワーピングし得、その結果、3つのテクスチャマップが得られる。
次に、テクスチャプロセッサ/アグリゲータ218を使用するニューラルテクスチャジェネレータ222は、点ごとのアテンションウエイトマップ608{A...A}を得るよう、k個の可視性スコア236(たとえば、マップ)にソフトマックス(soft-max)を適用し得る。k個のニューラルテクスチャは、以下の式[6]によって示されるように、テクスチャ空間において集約される、アテンションウエイトおよび可視性スコアを有する集約されたk個のニューラルテクスチャを表すよう、予測されたアテンションウエイトに基づき加重平均として集約される。
Figure 0007386888000012
集約されたテクスチャ
Figure 0007386888000013
は、入力ビューのいずれにおいても見えなかった欠けている部分を含み得る。テクスチャの欠けている部分は、それらの決定された局所近傍に基づいて、インペイントされ得る。代替的には、テクスチャの欠けている部分は、テクスチャの大部分が垂直軸周りで対称であり、一方の半分からの欠けている部分が他方の半分の対応する値から近似され得ると仮定することによって、インペイントされ得る。したがって、テクスチャインペインタ220は、集約されたニューラルテクスチャを、集約されたニューラルテクスチャの水平反転バージョン(たとえば、90度の回転)と連結し得る。テクスチャの連結されたバージョンは、最終的なニューラルテクスチャ602を出力し得るテクスチャインペインタネットワーク
Figure 0007386888000014
(たとえばテクスチャインペインタ220)に提供され得る。以下の式[7]は、テクスチャの連結されたバージョンを表す。
Figure 0007386888000015
式中、|はチャンネル方向(channel-wise)の連結を示し、hor_flipは垂直軸周りの水平反転(たとえば90度の回転)を示す。
ニューラルテクスチャ602は、ニューラルネットワーク上で学習される学習済特徴マップを表す。この例では、ニューラルテクスチャは、2Dまたは3Dメッシュプロキシ上にオーバーレイされる1つ以上のマップを含む。ニューラルテクスチャ602の部分604は、顔メッシュプロキシ(たとえば、302)を使用して生成されるテクスチャを表し、部分606は、髪および/または胴体部分をキャプチャするよう平面プロキシ(たとえば304)を使用して生成されるテクスチャを表す。部分604における3つの画像は、入力画像603の特徴点の第1のセットの3つのRGBカラー画像を有する9チャンネルテクスチャを表し得る。部分606における3つの画像は、入力画像603の特徴点の第2の異なるセットの3つのRGBカラー画像を有する9チャンネルテクスチャを表し得る。さらに、可視性スコア236(たとえば、マップ)は、ニューラルテクスチャ602によって表されるテクスチャについての情報のさらに別のチャンネルとして使用され得る。
予測されたニューラルテクスチャT(たとえば、ニューラルテクスチャ602)の生成が完了すると、システム200は、サンプラ246を使用して、図3Aに示される強化メッシュプロキシジオメトリ300のようなメッシュプロキシジオメトリからニューラルテクスチャ602をサンプリングし得る。ここで、強化メッシュプロキシジオメトリ300は、顔メッシュプロキシジオメトリ302および平面プロキシジオメトリ304の使用を含む。強化メッシュプロキシジオメトリ300は、任意の新規なビューのためにサンプリングされ得る。得られたサンプリングされたテクスチャは、以下の式[8]に示されるように、ビュー610を合成し得るニューラルレンダラ248(たとえば、ニューラルレンダラネットワークR(.;θ))に提供され得る。
Figure 0007386888000016
ニューラルレンダラネットワークR248は、ニューラルテクスチャ602の低次元のポイントごとの記述子を使用して、ユーザのターゲットジオメトリおよび外観を回復し得る。
図7は、本開示の全体にわたって記載される実現例に従った、3Dプロキシジオメトリモデルに基づいてニューラルテクスチャを使用して合成コンテンツを生成するためのプロセス700の一例を示すフローチャートである。要するに、プロセス800は、たとえば、ユーザの見られていない2D画像および3D画像のフューショットの新規なビューを生成するようメッシュアルゴリズムとともに3Dプロキシジオメトリを使用する例を提供し得る。
プロセス700は、少なくとも1つの処理デバイスと、命令を格納するメモリとを有する画像処理システムを利用し得、当該命令は、実行されると、処理デバイスに請求の範囲に記載される複数の動作およびコンピュータによって実現されるステップを実行させる。一般に、システム100,200、ならびに/または、アーキテクチャ400、500および/もしくは600は、プロセス700の記述および実行において使用され得る。システム100,200ならびにアーキテクチャ400、500および/または600の各々は、いくつかの実現例では、単一のシステムを表し得る。
一般に、プロセス700は、ターゲット被写体のフューショット画像を取得または抽出し、新規なビュー合成を実行するよう、本明細書において説明されるシステムおよびアルゴリズムを利用し得る。たとえば、プロセス700は、ターゲット被写体について学習済ニューラルテクスチャとともに3Dメッシュプロキシを構築するよう、フューショットの入力を処理および集約することを含み得る。新規なビューを合成するために、学習済テクスチャは、プロキシジオメトリからサンプリングされ得、ターゲットビューを合成するニューラルレンダラネットワークに渡され得る。いくつかの実現例では、ターゲット被写体についてニューラルテクスチャを生成するために、エンコーダデコーダアーキテクチャが使用され得る。いくつかの実現例では、ニューラルテクスチャを生成するためにインバースレンダリング技術が使用され得る。
ブロック702において、プロセス700は、ユーザを表す複数の入力画像(たとえば、入力ショット402)を受信することを含む。たとえば、サーバ216は、ユーザ104の画像を、リアルタイムで、または、以前のビデオ会議アクティビティおよび/もしくは他の画像キャプチャアクティビティから受信、取得および/またはキャプチャし得る。入力画像は、ユーザの顔、特徴、髪、首、または他の胴体部分などを含み得る。一般に、そのような入力画像は、プロセス700内で4つ未満の画像が使用されるフューショット画像であり得る。いくつかの実現例では、プロセス700のステップを実行するために、3つの入力画像が使用される。いくつかの実現例では、プロセス700のステップを実行するために、単一の画像が使用され得る。
ブロック704において、プロセス700は、複数の入力画像242から抽出された(たとえば、特徴マップ238に格納された)特徴の第1のセットに基づいて、3Dメッシュプロキシ(たとえば、強化メッシュプロキシ300)を生成することを含む。たとえば、テクスチャジェネレータ216は、ユーザの顔を表す特徴の第1のセットを使用して特徴マップ238を生成し得る。特徴の第1のセットは、顔メッシュプロキシ302のような顔メッシュの部分を含み得る。3Dメッシュプロキシ300はさらに、複数の入力画像242から抽出された(たとえば、特徴マップ238に格納された)特徴の第2のセットに基づいて生成され得る。特徴の第2のセットは、ユーザの髪および/または胴体の部分を表す特徴を含み得る。特徴の第2のセットは、平面プロキシ304のような平面プロキシから抽出され得る。
ブロック706において、プロセス700は、3Dメッシュプロキシおよび複数の入力画像に基づいてニューラルテクスチャ(たとえば、ニューラルテクスチャ406)を生成することを含む。たとえば、ジェネレータ404またはニューラルテクスチャジェネレータ222のようなニューラルテクスチャジェネレータは、ユーザの3Dメッシュプロキシ406を生成するために、平面プロキシ304(マップ324)と組み合わせて顔メッシュプロキシ302(マップ322に示される)を使用し得る。3Dメッシュプロキシ406は、顔メッシュテクスチャ326を表す部分326と、頭プロキシテクスチャ328(すなわち、平面プロキシ)を表す部分とを含み得る。
ブロック708において、プロセス700は、ユーザの表現を生成することを含む。ユーザの表現は、3Dメッシュプロキシおよびニューラルテクスチャに少なくとも部分的に基づき得る。たとえば、テクスチャプロセッサアグリゲータ218は、メッシュプロキシジオメトリを生成し、ニューラルテクスチャジェネレータ222は、ニューラルテクスチャを生成し得る。したがって、システム200は、ユーザの顔を表す特徴の第1のセットと、ユーザの髪および胴体部分を表す抽出された特徴の第2のセットとを生成し得、これらは両方ともメッシュプロキシおよび学習済ニューラルテクスチャに基づき得る。一般に、ユーザの表現は、ニューラルテクスチャ134において表される各表面点ごとの外観を表す。そのような外観は、ニューラルテクスチャのいくつかの位置では見え、他の位置では見えない場合がある。したがって、ニューラルテクスチャをサンプリングする際、またはそうでなければ、ニューラルテクスチャにアクセスする際に、可視性スコア236が使用され得る。いくつかの実現例では、システム200は、ユーザの外観に関する高周波なディテールを表すよう、または、皮膚に対する鏡のような強調のようなユーザの外観のビュー依存効果を表すよう、表面点ごとに外観記述子を格納し得る。
ブロック710において、プロセス700は、3Dメッシュプロキシ300からニューラルテクスチャの少なくとも1つの部分をサンプリングすることを含む。たとえば、サンプラ246は、ニューラルテクスチャの2Dサンプリングを実行し得る。すなわち、サンプラ246は、(組み合わされた3Dメッシュプロキシ300として表される)プロキシジオメトリからニューラルテクスチャ406をサンプリングし得る。いくつかの実現例では、予測されたニューラルテクスチャは、任意の新規なビューのためにメッシュプロキシからサンプリングされる。いくつかの実現例では、サンプラ246は、ニューラルテクスチャからサンプリングするよう、UVマップ232を使用し得る2Dサンプラを表す。いくつかの実現例では、ニューラルテクスチャ406は、ユーザの4つ未満のキャプチャされた画像フレームを含み得る、複数の入力画像402から生成およびサンプリングされる学習済ニューラルテクスチャである。
ブロック712において、プロセス700は、少なくとも1つのサンプリングされた部分をニューラルレンダラ248のようなニューラルレンダラに提供することを含む。これに応答して、システム200は、ニューラルレンダラ248から、画像処理システムによって以前に見られていないユーザの合成画像(たとえば、合成ビュー250、合成ビュー412など)を受信し得る。たとえば、合成画像は、画像処理システムによってまだ記録されていないビュー(たとえば、まだ記録されていない角度でおよび/もしくはユーザが頭を把持した状態でユーザを見ること、ならびに/または、まだ記録されていない方向で見ること)を含み得る。合成ビュー250は、たとえば、デバイス110または112上でのレンダリングのためにトリガされ得る。
いくつかの実現例では、合成画像は、ビデオ会議のための修正された視点(すなわち、リモートユーザの視線方向に対する)によりユーザを示すように生成される。したがって、修正された視点は、ビデオ会議上で互いを見ている2人のユーザが、直接的なアイコンタクトを保持しているかのように互いに見えることを可能にし得る。たとえば、ユーザの合成ビューは、入力画像におけるユーザの同様のポーズであり得るが、ビデオ会議を提供するシステムに関連付けられるカメラデバイスを見つめるユーザのビューをシミュレートするように視点が修正される。そのような修正は、システム200がビデオ会議システムにアクセスする2人のユーザ間のアイコンタクトの発生を提供し得るので、ビデオ会議システムの両方のユーザについて存在感を提供し得る。
いくつかの実現例では、ニューラルテクスチャを生成することは、図5において図示および説明されるように、集約された潜在性のユーザを含む。たとえば、テクスチャプロセッサ/アグリゲータ218は、各入力画像242,502(たとえば、画像フレーム)について潜在表現を生成し得る。各入力画像について生成された潜在表現(たとえば、k個のショットのテクスチャ潜在性)は、平均化技術を使用してベクトル508に集約され得る。ベクトル508は、たとえば、テクスチャジェネレータネットワーク247に提供され得る。ユーザを表すニューラルテクスチャ510は、テクスチャジェネレータネットワーク247から受信され得る。ニューラルテクスチャ510は、合成ビュー512を生成するよう使用され得る。
いくつかの実現例では、ニューラルテクスチャを生成することは、図6において図示および説明されるように、インバースレンダリングアルゴリズムを使用することを含む。たとえば、入力画像は、特徴抽出器ネットワーク226に提供され得、特徴抽出器ネットワーク226は、対応する深度画像およびUVマップ232により画像603を強化するように、少なくとも特徴の第1のセットおよび第2のセットを抽出し得る。次いで、システム200は、(深度センサ206によってキャプチャされた)深度画像および入力画像603に関連付けられるUVマップ232に基づいて、抽出された特徴の第1のセットおよび特徴の第2のセットを、ジオメトリを意識した特徴空間に投射し得る。投射することは、複数の入力画像603のマッチされた解像度を有する画像のセットを生成することを含み得る。たとえば、システム200は、各k個のショットの入力を入力画像603と同じ解像度のジオメトリを意識した特徴抽出器に投射し得る。たとえば、システム200は、k個のニューラルテクスチャ134によって示されるように、画像のセットをUV空間にワープして、各入力画像603についてテクスチャを生成し得る(図6)。
次に、テクスチャプロセッサおよびアグリゲータ218は、各テクスチャについて、対応する入力画像における可視性メトリックを示すテクスチャ空間内の各点についてのスコアマップ(たとえば、可視性スコア236)を生成し得る。いくつかの実現例では、可視性スコア236(たとえば、スコアマップ)は、各画像のニューラルテクスチャを処理することによって生成される。テクスチャ空間における各点での可視性スコア236は、対応する入力画像におけるその可視性を示す。
システム200は、各入力画像についてアテンションウエイトを生成するよう、各スコアマップ(たとえば、可視性スコア236)にソフトマックス演算を適用し得る。テクスチャは、次いで、アテンションウエイトに従って決定される加重平均に従って集約され得る。いくつかの実現例では、入力画像603のいずれにおいても見えない場合がある欠けている部分を生成するために、追加のステップがテクスチャインペインタ220によって実行され得る。テクスチャインペインタ220によって実行されるディテールは、図2を参照して上で記載されている。
図8は、上記の技術とともに用いられ得るコンピュータデバイス800およびモバイルコンピュータデバイス850の例を示す。コンピューティングデバイス800は、プロセッサ802、メモリ804、記憶装置806、メモリ804および高速拡張ポート810に接続している高速インターフェイス808、ならびに低速バス814および記憶装置806に接続している低速インターフェイス812を含み得る。コンポーネント802,804,806,808,810および812はさまざまなバスを用いて相互に接続されており、共通のマザーボード上にまたは他の態様で適宜搭載され得る。プロセッサ802は、コンピューティングデバイス800内で実行される命令を処理可能であり、この命令には、GUIのためのグラフィック情報を高速インターフェイス808に結合されているディスプレイ816などの外部入出力デバイス上に表示するためにメモリ804内または記憶装置806上に記憶されている命令が含まれる。いくつかの実施形態では、複数のプロセッサおよび/または複数のバスが、複数のメモリおよび複数種類のメモリとともに必要に応じて用いられ得る。さらに、複数のコンピューティングデバイス800が接続され得、各デバイスは(たとえばサーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)必要な動作の一部を提供する。
メモリ804は情報をコンピューティングデバイス800内に記憶する。一実施形態では、メモリ804は1つまたは複数の揮発性メモリユニットである。別の実施形態では、メモリ804は1つまたは複数の不揮発性メモリユニットである。また、メモリ804は、磁気ディスクまたは光ディスクといった別の形態のコンピュータ読取可能媒体であってもよい。
記憶装置806は、コンピューティングデバイス800に大容量記憶を提供し得る。一実施形態では、記憶装置806は、フロッピー(登録商標)ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリもしくは他の同様のソリッドステートメモリデバイス、またはストレージエリアネットワークもしくは他のコンフィギュレーションにおけるデバイスを含む多数のデバイスといった、コンピュータ読取可能媒体であり得、または当該コンピュータ読取可能媒体を含み得る。コンピュータプログラムプロダクトが情報媒体内に有形に具体化され得る。また、コンピュータプログラムプロダクトは、実行されると、本明細書において記載される方法のような、1つ以上の方法を実行する命令を含み得る。情報媒体は、メモリ804、記憶装置806、またはプロセッサ802上のメモリといった、コンピュータ読取可能媒体または機械読取可能媒体である。
高速コントローラ808はコンピューティングデバイス800のための帯域幅集約的な動作を管理するのに対して、低速コントローラ812はより低い帯域幅集約的な動作を管理する。そのような機能の割当ては例示に過ぎない。一実施形態では、高速コントローラ808はメモリ804に結合され、ディスプレイ816に(たとえばグラフィックスプロセッサまたはアクセラレータを介して)結合され、かつ、さまざまな拡張カード(図示せず)を受付け得る高速拡張ポート810に結合される。低速コントローラ812は、記憶装置806および低速拡張ポート814に結合され得る。さまざまな通信ポート(たとえばUSB、ブルートゥース(登録商標)、イーサネット(登録商標)、無線イーサネット)を含み得る低速拡張ポートは、キーボード、ポインティングデバイス、スキャナ、またはスイッチもしくはルータといったネットワーキングデバイスなどの1つ以上の入出力デバイスに、たとえばネットワークアダプタを介して結合され得る。
コンピューティングデバイス800は、図に示すように多数の異なる形態で実現され得る。たとえば、コンピューティングデバイス800は標準的なサーバ820として、またはそのようなサーバのグループ内で複数回実現され得る。また、コンピューティングデバイス800はラックサーバシステム824の一部として実現されてもよい。さらに、コンピューティングデバイス800はラップトップコンピュータ822などのパーソナルコンピュータにおいて実現され得る。あるいは、コンピューティングデバイス800からのコンポーネントは、デバイス850などのモバイルデバイス(図示せず)内の他のコンポーネントと組合されてもよい。そのようなデバイスの各々がコンピューティングデバイス800,850の1つ以上を含んでいてもよく、システム全体が、互いに通信する複数のコンピューティングデバイス800,850で構成されてもよい。
コンピューティングデバイス850は、数あるコンポーネントの中でも特に、プロセッサ852、メモリ864、ディスプレイ854などの入出力デバイス、通信インターフェイス866、およびトランシーバ868を含む。また、デバイス850には、マイクロドライブまたは他のデバイスなどの記憶装置が提供されて付加的なストレージが提供されてもよい。コンポーネント850,852,864,854,866,および868の各々はさまざまなバスを用いて相互に接続されており、当該コンポーネントのいくつかは共通のマザーボード上にまたは他の態様で適宜搭載され得る。
プロセッサ852は、メモリ864に記憶されている命令を含む、コンピューティングデバイス850内の命令を実行可能である。プロセッサは、別個の複数のアナログおよびデジタルプロセッサを含むチップのチップセットとして実現されてもよい。プロセッサは、たとえば、ユーザインターフェイス、デバイス850が実行するアプリケーション、およびデバイス850による無線通信の制御といった、デバイス850の他のコンポーネントの協調を提供し得る。
プロセッサ852は、ディスプレイ854に結合された制御インターフェイス858およびディスプレイインターフェイス856を介してユーザと通信し得る。ディスプレイ854は、たとえば、TFT LCD(薄膜トランジスタ液晶ディスプレイ)もしくはOLED(有機発光ダイオード)ディスプレイ、または他の適切なディスプレイ技術であり得る。ディスプレイインターフェイス856は、ディスプレイ854を駆動してグラフィックおよび他の情報をユーザに提示するための適切な回路を含み得る。制御インターフェイス858はユーザからコマンドを受信し、当該コマンドをプロセッサ852に提出するために変換し得る。さらに、外部インターフェイス862が、デバイス850と他のデバイスとの近接エリア通信を可能にするために、プロセッサ852と通信してもよい。外部インターフェイス862は、たとえば有線または無線通信を提供し得、いくつかの実施形態では、複数のインターフェイスが使用され得る。
メモリ864は情報をコンピューティングデバイス850内に記憶する。メモリ864は、1つもしくは複数のコンピュータ読取可能媒体、1つもしくは複数の揮発性メモリユニット、または1つもしくは複数の不揮発性メモリユニットの1つ以上として実現され得る。さらに、拡張メモリ884が提供され、たとえばSIMM(Single In Line Memory Module)カードインターフェイスを含み得る拡張インターフェイス882を介してデバイス850に接続されてもよい。このような拡張メモリ884はデバイス850に余分のストレージスペースを提供し得るか、またはデバイス850のためのアプリケーションもしくは他の情報をさらに記憶し得る。具体的には、拡張メモリ884は上述のプロセスを実行または補足するための命令を含み得、さらにセキュア情報を含み得る。ゆえに、たとえば、拡張メモリ884はデバイス850のためのセキュリティモジュールであり得、デバイス850のセキュアな使用を許可する命令でプログラムされ得る。さらに、ハッキング不可能なようにSIMMカード上に識別情報を置くといったように、セキュアなアプリケーションが付加的な情報とともにSIMMカードを介して提供されてもよい。
メモリは、以下に記載のように、たとえばフラッシュメモリおよび/またはNVRAMメモリを含み得る。一実施形態では、コンピュータプログラムプロダクトが情報媒体内に有形に具体化される。コンピュータプログラムプロダクトは、実行されると上述のような1つ以上の方法を実行する命令を含む。情報媒体は、メモリ864、拡張メモリ884、またはプロセッサ852上のメモリといった、コンピュータ読取可能媒体または機械読取可能媒体であり、これは、たとえばトランシーバ868または外部インターフェイス862上で受信され得る。
デバイス850は、必要に応じてデジタル信号処理回路を含み得る通信インターフェイス866を介して無線通信し得る。通信インターフェイス866は、とりわけ、GSM(登録商標)音声通話、SMS、EMS、またはMMSメッセージング、CDMA、TDMA、PDC、WCDMA(登録商標)、CDMA2000、またはGPRSといった、さまざまなモードまたはプロトコル下の通信を提供し得る。そのような通信は、たとえば無線周波数トランシーバ868を介して起こり得る。さらに、ブルートゥース、Wi-Fi、または他のそのようなトランシーバ(図示せず)を用いるなどして、短距離通信が起こり得る。さらに、GPS(全地球測位システム)レシーバモジュール880が付加的なナビゲーション関連および位置関連の無線データをデバイス850に提供し得、当該データはデバイス850上で実行されるアプリケーションによって適宜用いられ得る。
また、デバイス850は、ユーザから口頭情報を受信して当該情報を使用可能なデジタル情報に変換し得る音声コーデック860を用いて可聴的に通信し得る。音声コーデック860も同様に、たとえばデバイス850のハンドセット内で、スピーカを介すなどしてユーザに可聴音を生成し得る。そのような音は音声電話からの音を含み得、録音された音(たとえば音声メッセージ、音楽ファイル等)を含み得、さらに、デバイス850上で実行されるアプリケーションが生成する音を含み得る。
コンピューティングデバイス850は、図に示すように多数の異なる形態で実現され得る。たとえば、コンピューティングデバイス850はセルラー電話880として実現され得る。また、コンピューティングデバイス850は、スマートフォン882、携帯情報端末、または他の同様のモバイルデバイスの一部として実現され得る。
本明細書に記載のシステムおよび技術のさまざまな実現例は、デジタル電子回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組合せで実現され得る。これらのさまざまな実現例は、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および/または解釈可能な1つ以上のコンピュータプログラムにおける実現例を含んでいてもよく、当該プロセッサは専用であっても汎用であってもよく、ストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受信するように、かつこれらにデータおよび命令を送信するように結合されている。
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても公知)はプログラマブルプロセッサのための機械命令を含んでおり、高レベル手続きおよび/もしくはオブジェクト指向プログラミング言語で、ならびに/またはアセンブリ/マシン言語で実現され得る。本明細書において使用するように、「機械読取可能媒体」、「コンピュータ読取可能媒体」という用語は、機械命令および/またはデータをプログラマブルプロセッサに提供するために用いられる任意のコンピュータプログラムプロダクト、装置および/またはデバイス(たとえば磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指し、機械命令を機械読取可能信号として受信する機械読取可能媒体を含む。「機械読取可能信号」という用語は、機械命令および/またはデータをプログラマブルプロセッサに提供するために用いられる任意の信号を指す。
ユーザとの対話を提供するために、本明細書に記載のシステムおよび技術は、情報をユーザに表示するためのディスプレイデバイス(たとえばCRT(陰極線管)またはLCD(液晶ディスプレイ)モニタ)と、ユーザが入力をコンピュータに提供するキーボードおよびポインティングデバイス(たとえばマウスまたはトラックボール)とを有するコンピュータ上で実現され得る。他の種類のデバイスを用いてユーザとの対話を提供することもでき、たとえば、ユーザに提供されるフィードバックは任意の形態の感覚フィードバック(たとえば視覚フィードバック、聴覚フィードバック、または触覚フィードバック)であり得、ユーザからの入力は、音響、スピーチ、または触覚入力を含む任意の形態で受信され得る。
本明細書に記載のシステムおよび技術は、バックエンドコンポーネントを(たとえばデータサーバとして)含むコンピューティングシステムにおいて実現され得るか、または、ミドルウェアコンポーネントを(たとえばアプリケーションサーバとして)含むコンピューティングシステムにおいて実現され得るか、または、フロントエンドコンポーネント(たとえば、ユーザが上記のシステムおよび技術の実施形態と対話する際に使用可能なグラフィカルユーザインターフェイスもしくはウェブブラウザを有するクライアントコンピュータ)を含むコンピューティングシステムにおいて実現され得るか、または、そのようなバックエンド、ミドルウェア、もしくはフロントエンドコンポーネントの任意の組合せを含むコンピューティングシステムにおいて実現され得る。システムのコンポーネントは、任意の形態または媒体のデジタルデータ通信(たとえば通信ネットワーク)によって相互に接続され得る。通信ネットワークの例として、ローカルエリアネットワーク(「LAN」)、ワイドエリアネットワーク(「WAN」)、およびインターネットが挙げられる。
コンピューティングシステムはクライアントおよびサーバを含み得る。クライアントおよびサーバは一般に互いにリモートであり、典型的に通信ネットワークを介して対話する。クライアントとサーバの関係は、それぞれのコンピュータ上で実行され、互いにクライアント-サーバ関係を有するコンピュータプログラムによって生じる。
いくつかの実施形態では、図8に示されるコンピューティングデバイスは、バーチャルリアリティヘッドセット(VRヘッドセット/HMDデバイス890)とインターフェイス接続するセンサを含み得る。たとえば、図8に示されるコンピューティングデバイス850または他のコンピューティングデバイスに含まれる1つ以上のセンサは、VRヘッドセット890に入力を提供し得、または、一般に入力をVR空間に提供し得る。センサは、タッチ画面、加速度計、ジャイロスコープ、圧力センサ、バイオメトリックセンサ、温度センサ、湿度センサ、および、環境光センサを含み得るが、これらに限定されない。コンピューティングデバイス850は、VR空間への入力として使用され得る、VR空間におけるコンピューティングデバイスの絶対位置および/または検出された回転を決定するよう、これらのセンサを使用し得る。たとえば、コンピューティングデバイス850は、コントローラ、レーザポインタ、キーボード、兵器などのバーチャルオブジェクトとしてVR空間に組み込まれ得る。VR空間に組み込まれた場合のユーザによるコンピューティングデバイス/バーチャルオブジェクトの位置決めによって、ユーザは、VR空間においてある態様でバーチャルオブジェクトを見るようにコンピューティングデバイスを位置決めすることが可能になり得る。
いくつかの実施形態では、コンピューティングデバイス850に含まれるかまたはコンピューティングデバイス850に接続する1つ以上の入力デバイスが、VR空間への入力として使用され得る。入力デバイスは、タッチ画面、キーボード、1つ以上のボタン、トラックパッド、タッチパッド、ポインティングデバイス、マウス、トラックボール、ジョイスティック、カメラ、マイクロフォン、入力機能を有するイヤホンもしくはバッド、ゲーミングコントローラ、または、他の接続可能な入力デバイスを含み得るが、これらに限定されない。コンピューティングデバイスがVR空間に組み込まれる際にコンピューティングデバイス850に含まれる入力デバイスとインタラクションするユーザは、VR空間において特定のアクションを生じさせ得る。
いくつかの実施形態では、コンピューティングデバイス850に含まれる1つ以上の出力デバイスは、VR空間においてVRヘッドセット890のユーザに出力および/またはフィードバックを提供し得る。出力およびフィードバックは、視覚的、触覚的、または音声であり得る。出力および/またはフィードバックは、VR空間またはバーチャル環境のレンダリングと、振動と、1つ以上のライトもしくはストロボのオンおよびオフまたは点滅および/もしくはフラッシュと、アラームの発音と、チャイムが鳴ることと、楽曲の演奏と、音声ファイルの再生とを含み得るが、これらに限定されない。出力デバイスは、振動モータ、振動コイル、圧電デバイス、静電デバイス、発光ダイオード(LED)、ストロボ、およびスピーカを含み得るが、これらに限定されない。
いくつかの実施形態では、コンピューティングデバイス850は、VRシステムを作り出すためにVRヘッドセット890内に配置され得る。VRヘッドセット890は、スマートフォン882などのコンピューティングデバイス850をVRヘッドセット890内の適切な位置に配置することを可能にする1つ以上の位置決め要素を含み得る。そのような実施形態では、スマートフォン882のディスプレイは、VR空間またはバーチャル環境を表す立体画像をレンダリングし得る。
いくつかの実施形態では、コンピューティングデバイス850は、コンピュータが生成する3D環境において別の対象として現れてもよい。ユーザによるコンピューティングデバイス850とのインタラクション(たとえば、回転すること、振ること、タッチ画面に触れること、タッチ画面にわたって指をスワイプすること)は、VR空間内の対象とのインタラクションと解釈され得る。単なる一例として、コンピューティングデバイスはレーザポインタであり得る。そのような例では、コンピューティングデバイス850は、コンピュータが生成した3D環境においてバーチャルレーザポインタとして現れる。ユーザがコンピューティングデバイス850を操作すると、VR空間内のユーザは、レーザポインタの動きを見る。ユーザは、コンピューティングデバイス850またはVRヘッドセット890上のVR環境において、コンピューティングデバイス850とのインタラクションからのフィードバックを受信する。
いくつかの実施形態では、コンピューティングデバイス850は、タッチ画面を含み得る。たとえば、ユーザは、タッチ画面上で起こるものをVR空間内で起こるものにより模倣し得る特定の態様でタッチ画面とインタラクションし得る。たとえば、ユーザは、タッチ画面に表示されたコンテンツをズームするために、ピンチタイプの動きを使用し得る。タッチ画面上でのこのピンチタイプの動きによって、VR空間において提供される情報がズームされ得る。別の例では、コンピューティングデバイスは、コンピュータが生成した3D環境においてバーチャルブックとしてレンダリングされてもよい。VR空間では、ブックのページがVR空間に表示され得、タッチ画面にわたるユーザの指のスワイプは、バーチャルブックのページをめくること/反転させることと解釈され得る。各ページがめくられ/反転されると、ページの内容の変化を見ることに加えて、ユーザには、ブック内のページをめくる音などの音声フィードバックが与えられ得る。
いくつかの実施形態では、コンピューティングデバイス(たとえば、マウス、キーボード)に加えて、1つ以上の入力デバイスが、コンピュータが生成した3D環境においてレンダリングされ得る。レンダリングされた入力デバイス(たとえば、レンダリングされたマウス、レンダリングされたキーボード)は、VR空間における対象を制御するためにVR空間においてレンダリングされたものとして使用され得る。
コンピューティングデバイス800は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータといった、さまざまな形態のデジタルコンピュータを表わすことを意図している。コンピューティングデバイス850は、携帯情報端末、セルラー電話、スマートフォン、および他の同様のコンピューティングデバイスといった、さまざまな形態のモバイルデバイスを表わすことを意図している。ここに示すコンポーネント、それらの接続および関係、ならびにそれらの機能は例示であることが意図されているに過ぎず、開示される実施形態を限定することを意図していない。
また、図面に示す論理フローは、所望の結果を達成するために、示されている特定の順序、または起こる順序を必要としない。また、記載のフローとは他のステップが提供されてもよく、または当該フローからステップが除去されてもよく、記載のシステムに他のコンポーネントが追加されてもよく、または当該システムからコンポーネントが除去されてもよい。したがって、他の実施形態も以下の請求項の範囲内にある。

Claims (20)

  1. 動作を実行するよう、少なくとも1つの処理デバイスを有する画像処理システムを利用する、コンピュータによって実現される方法であって、
    前記動作は、
    ユーザの複数の入力画像を受信することと、
    前記複数の入力画像から抽出された特徴の第1のセットと、前記複数の入力画像から抽出された特徴の第2のセットとに基づいて、3次元メッシュプロキシを生成することとを含み、前記3次元メッシュプロキシは、顔メッシュプロキシおよび平面プロキシを含み、
    前記動作はさらに、
    前記3次元メッシュプロキシおよび前記複数の入力画像に基づいて、ニューラルテクスチャを生成することと、
    前記3次元メッシュプロキシおよび前記ニューラルテクスチャに少なくとも部分的に基づいて、前記ユーザの表現を生成することと、
    前記ユーザの前記表現を使用して、前記3次元メッシュプロキシから、前記ニューラルテクスチャの少なくとも1つの部分をサンプリングすることと、
    サンプリングされた前記少なくとも1つの部分をニューラルレンダラに提供することに応答して、前記画像処理システムによって以前に見られていない前記ユーザの合成画像を前記ニューラルレンダラから受信することとを含む、方法。
  2. 抽出された特徴の前記第1のセットは、前記ユーザの顔を表す特徴を含み、
    抽出された特徴の前記第2のセットは、前記ユーザの髪および胴体の部分を表す特徴を含む、請求項1に記載の方法。
  3. 前記ニューラルテクスチャは、前記複数の入力画像を使用して生成される学習済ニューラルテクスチャであり、前記複数の入力画像は、前記ユーザの4つ未満のキャプチャされた画像フレームを含む、請求項1または2に記載の方法。
  4. 前記ニューラルテクスチャを生成することは、
    各入力画像について潜在表現を生成することと、
    各入力画像について生成された前記表現をベクトルに集約することと、
    テクスチャジェネレータネットワークに前記ベクトルを提供することと、
    前記テクスチャジェネレータネットワークから、前記ユーザを表す前記ニューラルテクスチャを受信することとを含む、請求項1~3のいずれか1項に記載の方法。
  5. 前記ニューラルテクスチャを生成することは、
    前記入力画像に関連付けられる深度画像およびUVマップに基づいて、抽出された特徴の前記第1のセットおよび特徴の前記第2のセットを、ジオメトリを意識した特徴空間に投射することを含み、前記投射することは、前記複数の入力画像のマッチされた解像度を有する画像のセットを生成することを含み、
    前記ニューラルテクスチャを生成することは、
    各入力画像についてテクスチャを生成するよう、画像の前記セットをUV空間にワーピングすることと、
    各テクスチャについて、対応する入力画像における可視性メトリックを示すテクスチャ空間における各点についてのスコアマップを生成することと、
    各入力画像についてアテンションウエイトを生成するよう、各スコアマップにソフトマックス演算を適用することと、
    前記アテンションウエイトに従って決定される加重平均に従って前記テクスチャを集約することとを含む、請求項1~4のいずれか1項に記載の方法。
  6. 前記ユーザの生成された前記表現は、前記ニューラルテクスチャにおいて表される各表面点ごとの外観を表し、
    前記方法は、前記ユーザの外観に関する高周波のディテールを表すよう、表面点ごとに外観記述子を格納することをさらに含む、請求項1~5のいずれか1項に記載の方法。
  7. 前記合成画像は、ビデオ会議のための修正された視線方向により前記ユーザを示すように生成され、前記修正された視線方向は、前記ビデオ会議を提供するシステムに関連付けられるカメラデバイスを見つめるユーザのビューをシミュレートする、請求項1~6のいずれか1項に記載の方法。
  8. 画像処理システムであって、
    少なくとも1つの処理デバイスと、
    実行されると、前記システムに動作を実行させる命令を格納するメモリとを含み、
    前記動作は、
    ユーザの複数の入力画像を受信することと、
    前記複数の入力画像から抽出された特徴の第1のセットと、前記複数の入力画像から抽出された特徴の第2のセットとに基づいて、3次元メッシュプロキシを生成することとを含み、前記3次元メッシュプロキシは、顔メッシュプロキシおよび平面プロキシを含み、
    前記動作はさらに、
    前記3次元メッシュプロキシおよび前記複数の入力画像に基づいて、ニューラルテクスチャを生成することと、
    前記3次元メッシュプロキシおよび前記ニューラルテクスチャに少なくとも部分的に基づいて、前記ユーザの表現を生成することと、
    前記ユーザの前記表現を使用して、前記3次元メッシュプロキシから、前記ニューラルテクスチャの少なくとも1つの部分をサンプリングすることと、
    サンプリングされた前記少なくとも1つの部分をニューラルレンダラに提供することに応答して、前記画像処理システムによって以前に見られていない前記ユーザの合成画像を前記ニューラルレンダラから受信することとを含む、画像処理システム。
  9. 抽出された特徴の前記第1のセットは、前記ユーザの顔を表す特徴を含み、
    抽出された特徴の前記第2のセットは、前記ユーザの髪および胴体の部分を表す特徴を含む、請求項8に記載のシステム。
  10. 前記ニューラルテクスチャは、前記複数の入力画像を使用して生成される学習済ニューラルテクスチャであり、前記複数の入力画像は、前記ユーザの4つ未満のキャプチャされた画像フレームを含む、請求項8または9に記載のシステム。
  11. 前記ニューラルテクスチャを生成することは、
    各入力画像について潜在表現を生成することと、
    各入力画像について生成された前記表現をベクトルに集約することと、
    テクスチャジェネレータネットワークに前記ベクトルを提供することと、
    前記テクスチャジェネレータネットワークから、前記ユーザを表す前記ニューラルテクスチャを受信することとを含む、請求項8~10のいずれか1項に記載のシステム。
  12. 前記ニューラルテクスチャを生成することは、
    前記入力画像に関連付けられる深度画像およびUVマップに基づいて、抽出された特徴の前記第1のセットおよび特徴の前記第2のセットを、ジオメトリを意識した特徴空間に投射することを含み、前記投射することは、前記複数の入力画像のマッチされた解像度を有する画像のセットを生成することを含み、
    前記ニューラルテクスチャを生成することは、
    各入力画像についてテクスチャを生成するよう、画像の前記セットをUV空間にワーピングすることと、
    各テクスチャについて、対応する入力画像における可視性メトリックを示すテクスチャ空間における各点についてのスコアマップを生成することと、
    各入力画像についてアテンションウエイトを生成するよう、各スコアマップにソフトマックス演算を適用することと、
    前記アテンションウエイトに従って決定される加重平均に従って前記テクスチャを集約することとを含む、請求項8~11のいずれか1項に記載のシステム。
  13. 前記合成画像は、ビデオ会議のための修正された視線方向により前記ユーザを示すように生成され、前記修正された視線方向は、前記ビデオ会議を提供するシステムに関連付けられるカメラデバイスを見つめるユーザのビューをシミュレートする、請求項8~12のいずれか1項に記載のシステム。
  14. 命令を有するプログラムであって、前記命令は、プロセッサによって実行されると、コンピューティングデバイスに、
    ユーザの複数の入力画像を受信することと、
    前記複数の入力画像から抽出された特徴の第1のセットと、前記複数の入力画像から抽出された特徴の第2のセットとに基づいて、3次元メッシュプロキシを生成することとを行わせ、前記3次元メッシュプロキシは、顔メッシュプロキシおよび平面プロキシを含み、
    前記命令はさらに、
    前記3次元メッシュプロキシおよび前記複数の入力画像に基づいて、ニューラルテクスチャを生成することと、
    前記3次元メッシュプロキシおよび前記ニューラルテクスチャに少なくとも部分的に基づいて、前記ユーザの表現を生成することと、
    前記ユーザの前記表現を使用して、前記3次元メッシュプロキシから、前記ニューラルテクスチャの少なくとも1つの部分をサンプリングすることと、
    サンプリングされた前記少なくとも1つの部分をニューラルレンダラに提供することと、
    前記ユーザの合成画像を前記ニューラルレンダラから受信することとを行わせ、前記ユーザの前記合成画像は、前記ユーザの以前に見られていないビューを表す、プログラム
  15. 抽出された特徴の前記第1のセットは、前記ユーザの顔を表す特徴を含み、
    抽出された特徴の前記第2のセットは、前記ユーザの髪および胴体の部分を表す特徴を含む、請求項14に記載のプログラム
  16. 前記ニューラルテクスチャは、前記複数の入力画像を使用して生成される学習済ニューラルテクスチャであり、前記複数の入力画像は、前記ユーザの4つ未満のキャプチャされた画像フレームを含む、請求項14または15に記載のプログラム
  17. 前記ニューラルテクスチャを生成することは、
    各入力画像について潜在表現を生成することと、
    各入力画像について生成された前記表現をベクトルに集約することと、
    テクスチャジェネレータネットワークに前記ベクトルを提供することと、
    前記テクスチャジェネレータネットワークから、前記ユーザを表す前記ニューラルテクスチャを受信することとを含む、請求項14~16のいずれか1項に記載のプログラム
  18. 前記ニューラルテクスチャを生成することは、
    前記入力画像に関連付けられる深度画像およびUVマップに基づいて、抽出された特徴の前記第1のセットおよび特徴の前記第2のセットを、ジオメトリを意識した特徴空間に投射することを含み、前記投射することは、前記複数の入力画像のマッチされた解像度を有する画像のセットを生成することを含み、
    前記ニューラルテクスチャを生成することは、
    各入力画像についてテクスチャを生成するよう、画像の前記セットをUV空間にワーピングすることと、
    各テクスチャについて、対応する入力画像における可視性メトリックを示すテクスチャ空間における各点についてのスコアマップを生成することと、
    各入力画像についてアテンションウエイトを生成するよう、各スコアマップにソフトマックス演算を適用することと、
    前記アテンションウエイトに従って決定される加重平均に従って前記テクスチャを集約することとを含む、請求項14~17のいずれか1項に記載のプログラム
  19. 前記ユーザの生成された前記表現は、前記ニューラルテクスチャにおいて表される各表面点ごとの外観を表し、
    前記命令は、前記ユーザの外観に関する高周波のディテールを表すよう、表面点ごとに外観記述子を格納することをさらに含む、請求項14~18のいずれか1項に記載のプログラム
  20. 前記合成画像は、ビデオ会議のための修正された視線方向により前記ユーザを示すように生成され、前記修正された視線方向は、前記ビデオ会議を提供するシステムに関連付けられるカメラデバイスを見つめるユーザのビューをシミュレートする、請求項14~19のいずれか1項に記載のプログラム
JP2021558681A 2020-10-08 2020-10-28 画面上の話者のフューショット合成 Active JP7386888B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063198287P 2020-10-08 2020-10-08
US63/198,287 2020-10-08
PCT/US2020/070713 WO2022076020A1 (en) 2020-10-08 2020-10-28 Few-shot synthesis of talking heads

Publications (2)

Publication Number Publication Date
JP2023513980A JP2023513980A (ja) 2023-04-05
JP7386888B2 true JP7386888B2 (ja) 2023-11-27

Family

ID=73554536

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021558681A Active JP7386888B2 (ja) 2020-10-08 2020-10-28 画面上の話者のフューショット合成

Country Status (6)

Country Link
US (1) US20220130111A1 (ja)
EP (1) EP4007992A1 (ja)
JP (1) JP7386888B2 (ja)
KR (1) KR20220047719A (ja)
CN (1) CN114631127A (ja)
WO (1) WO2022076020A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11582519B1 (en) 2021-03-29 2023-02-14 Amazon Technologies, Inc. Person replacement utilizing deferred neural rendering
US11581020B1 (en) * 2021-03-30 2023-02-14 Amazon Technologies, Inc. Facial synchronization utilizing deferred neural rendering
US20230100305A1 (en) * 2021-09-27 2023-03-30 Baidu Usa Llc System and process for repainting of planar objects in video
US20230154090A1 (en) * 2021-11-15 2023-05-18 Disney Enterprises, Inc. Synthesizing sequences of images for movement-based performance
US12008716B2 (en) * 2021-11-19 2024-06-11 Electronic Arts Inc. Systems and methods for generating a simplified polygonal mesh
US20230326137A1 (en) * 2022-04-07 2023-10-12 Adobe Inc. Garment rendering techniques
US20240127529A1 (en) * 2022-10-13 2024-04-18 Sony Group Corporation Generation of reflectance maps for relightable 3d models
WO2024097701A1 (en) * 2022-10-31 2024-05-10 Drexel University System to defend against puppeteering attacks in ai-based low bandwidth video
WO2024107872A1 (en) * 2022-11-15 2024-05-23 Google Llc Real-time view synthesis

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019079895A1 (en) 2017-10-24 2019-05-02 Modiface Inc. SYSTEM AND METHOD FOR IMAGE PROCESSING THROUGH DEEP NEURAL NETWORKS
US20190147642A1 (en) 2017-11-15 2019-05-16 Google Llc Learning to reconstruct 3d shapes by rendering many 3d views
JP2019533324A (ja) 2016-09-09 2019-11-14 グーグル エルエルシー 3dテレプレゼンスシステム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9030486B2 (en) * 2008-08-22 2015-05-12 University Of Virginia Patent Foundation System and method for low bandwidth image transmission
KR101671185B1 (ko) * 2010-03-22 2016-11-01 삼성전자주식회사 렌더링을 위한 빛 및 질감 추출 장치 및 방법, 그리고, 빛 및 질감을 이용한 렌더링 장치
US9846960B2 (en) * 2012-05-31 2017-12-19 Microsoft Technology Licensing, Llc Automated camera array calibration
KR101979669B1 (ko) * 2012-07-13 2019-05-17 삼성전자주식회사 이미지 내 사용자의 시선 보정 방법, 기계로 읽을 수 있는 저장 매체 및 통신 단말
US9094576B1 (en) * 2013-03-12 2015-07-28 Amazon Technologies, Inc. Rendered audiovisual communication
US10484697B2 (en) * 2014-09-09 2019-11-19 Qualcomm Incorporated Simultaneous localization and mapping for video coding
US10205910B2 (en) * 2014-11-14 2019-02-12 Pcms Holdings, Inc. System and method for 3D telepresence
WO2017165538A1 (en) * 2016-03-22 2017-09-28 Uru, Inc. Apparatus, systems, and methods for integrating digital media content into other digital media content
US10430922B2 (en) * 2016-09-08 2019-10-01 Carnegie Mellon University Methods and software for generating a derived 3D object model from a single 2D image
US10460511B2 (en) * 2016-09-23 2019-10-29 Blue Vision Labs UK Limited Method and system for creating a virtual 3D model
WO2018102700A1 (en) * 2016-12-01 2018-06-07 Pinscreen, Inc. Photorealistic facial texture inference using deep neural networks
US10565747B2 (en) * 2017-09-06 2020-02-18 Nvidia Corporation Differentiable rendering pipeline for inverse graphics
US11295514B2 (en) * 2018-11-16 2022-04-05 Nvidia Corporation Inverse rendering of a scene from a single image
US11200689B1 (en) * 2019-06-21 2021-12-14 Amazon Technologies, Inc. Detailed 3D estimation from a single image
US11308669B1 (en) * 2019-09-27 2022-04-19 Apple Inc. Shader for graphical objects
US11354847B2 (en) * 2020-07-31 2022-06-07 Nvidia Corporation Three-dimensional object reconstruction from a video

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019533324A (ja) 2016-09-09 2019-11-14 グーグル エルエルシー 3dテレプレゼンスシステム
WO2019079895A1 (en) 2017-10-24 2019-05-02 Modiface Inc. SYSTEM AND METHOD FOR IMAGE PROCESSING THROUGH DEEP NEURAL NETWORKS
US20190147642A1 (en) 2017-11-15 2019-05-16 Google Llc Learning to reconstruct 3d shapes by rendering many 3d views

Also Published As

Publication number Publication date
KR20220047719A (ko) 2022-04-19
CN114631127A (zh) 2022-06-14
JP2023513980A (ja) 2023-04-05
WO2022076020A1 (en) 2022-04-14
US20220130111A1 (en) 2022-04-28
EP4007992A1 (en) 2022-06-08

Similar Documents

Publication Publication Date Title
JP7386888B2 (ja) 画面上の話者のフューショット合成
EP3959688B1 (en) Generative latent textured proxies for object category modeling
US10096157B2 (en) Generation of three-dimensional imagery from a two-dimensional image using a depth map
US11010958B2 (en) Method and system for generating an image of a subject in a scene
TWI813098B (zh) 用於新穎視圖合成之神經混合
US20220174257A1 (en) Videotelephony with parallax effect
WO2017124870A1 (zh) 一种处理多媒体信息的方法及装置
CN107562185B (zh) 一种基于头戴vr设备的光场显示系统及实现方法
Li et al. Immersive neural graphics primitives
JP2023551864A (ja) 自動立体テレプレゼンスシステムのための3次元(3d)顔特徴追跡
Thatte et al. Real-World Virtual Reality With Head-Motion Parallax
US20230396751A1 (en) Sender-side geometric fusion of depth data
US20220232201A1 (en) Image generation system and method
US20240153201A1 (en) Image Generation System with Controllable Scene Lighting
US20230260222A1 (en) Efficient dynamic occlusion based on stereo vision within an augmented or virtual reality application

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220817

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220817

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230904

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231017

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231114

R150 Certificate of patent or registration of utility model

Ref document number: 7386888

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150