JP7329612B2 - オブジェクトカテゴリモデリングのための生成潜在テクスチャプロキシ - Google Patents

オブジェクトカテゴリモデリングのための生成潜在テクスチャプロキシ Download PDF

Info

Publication number
JP7329612B2
JP7329612B2 JP2021553141A JP2021553141A JP7329612B2 JP 7329612 B2 JP7329612 B2 JP 7329612B2 JP 2021553141 A JP2021553141 A JP 2021553141A JP 2021553141 A JP2021553141 A JP 2021553141A JP 7329612 B2 JP7329612 B2 JP 7329612B2
Authority
JP
Japan
Prior art keywords
neural
textures
generating
image
proxy
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
JP2021553141A
Other languages
English (en)
Other versions
JP2022542207A (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 JP2022542207A publication Critical patent/JP2022542207A/ja
Application granted granted Critical
Publication of JP7329612B2 publication Critical patent/JP7329612B2/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
    • 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
    • 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
    • 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
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T15/205Image-based rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/506Illumination models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • 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/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • G06V10/95Hardware or software architectures specially adapted for image or video understanding structured as a network, e.g. client-server architectures
    • 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
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2012Colour editing, changing, or manipulating; Use of colour codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2021Shape modification

Landscapes

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

Description

関連出願の相互参照
本出願は、2020年6月30日に出願された、「GENERATIVE LATENT TEXTURED PROXIES FOR OBJECT CATEGORY MODELING(オブジェクトカテゴリモデリングのための生成潜在テクスチャプロキシ)」と題された米国仮特許出願第62/705,500号の利益を主張し、その全体が本明細書において参照によって援用される。
技術分野
本明細書は一般に、ディスプレイに提示するためにコンテンツを生成する際に用いられる方法、デバイス、およびアルゴリズムに関する。
背景
生成モデルは、訓練データと一致するデータを生成するために用いられるマシン学習モデルの一種である。生成モデルは、データセットに含まれる訓練データに類似したデータを生成するために、データセットのモデルを学習可能である。たとえば、生成モデルは、データセットの特徴XおよびラベルYの確率分布p(X,Y)を求めるように訓練されてもよい。生成モデルを実行するようにプログラムされたコンピュータシステムに、ラベルYが設けられてもよい。これに応じて、コンピュータシステムは、ラベルYに一致する特徴または特徴Xのセットを生成してもよい。
概要
1つ以上のコンピュータのシステムは、動作中にシステムにアクションを行わせるシステムにインストールされるソフトウェア、ファームウェア、ハードウェア、またはこれらの組合わせを有することによって、特定の動作またはアクションを行うように構成可能である。1つ以上のコンピュータプログラムは、データ処理装置によって実行されると装置にアクションを行わせる命令を含むことによって、特定の動作またはアクションを行うように構成可能である。
ある一般的な態様では、少なくとも1つの処理デバイスを用いて、画像コンテンツ内のオブジェクトと関連付けられたポーズを受信することと、オブジェクトの複数の3次元(3D)プロキシジオメトリを生成することと、複数の3Dプロキシジオメトリに基づいて、オブジェクトを表す複数の異なる形状および外観を規定するオブジェクトの複数のニューラルテクスチャを生成することと、積層形態で提供される複数のニューラルテクスチャを、ニューラルレンダラーに提供することと、複数のニューラルテクスチャに基づいて、カラー画像と、オブジェクトの少なくとも一部の不透明度を表すアルファマスクとを、ニューラルレンダラーから受信することと、ポーズ、カラー画像、およびアルファマスクに基づいて、合成画像を生成することを少なくとも含む動作を行うためのシステムおよび方法について説明される。
これらおよび他の態様は、以下のうちの1つ以上を単独で、または組合わせて含み得る。たとえば、方法は、オブジェクトと関連付けられたポーズに少なくとも部分的に基づいて、対象視点に対して潜在テクスチャをレンダリングすることをさらに含んでもよく、複数の3Dプロキシジオメトリの各々は、オブジェクトの少なくとも一部の粗い幾何学的近似値と、粗い幾何学的近似値にマッピングされたオブジェクトの潜在テクスチャとを含む。いくつかの実現例では、複数のニューラルテクスチャは、画像コンテンツにおいて取込まれたオブジェクトの隠れた部分を再構成するように構成され、隠れた部分は、ニューラルレンダラーが、オブジェクトの透明層と、オブジェクトの透明層の背後の面とを生成することを可能にするニューラルテクスチャの積層形態に基づいて再構成される。
いくつかの実現例では、複数の3Dプロキシジオメトリの各々は、画像コンテンツ内のオブジェクトと関連付けられた表面光フィールドを符号化し、表面光フィールドは、オブジェクトと関連付けられた正反射を含む。いくつかの実現例では、複数のニューラルテクスチャは、少なくとも部分的にポーズに基づき、ニューラルテクスチャは、オブジェクトのカテゴリを識別することと、オブジェクトの識別されたカテゴリに基づいて、特徴マップを生成することと、特徴マップをニューラルネットワークに提供することと、識別されたカテゴリの各インスタンスと関連付けられた潜在コードと、ポーズと関連付けられたビューとに基づいて、ニューラルテクスチャを生成することとによって生成される。いくつかの実現例では、オブジェクトの少なくとも一部は透明材料である。いくつかの実現例では、オブジェクトの少なくとも一部は反射材料である。
いくつかの実現例では、画像コンテンツは、少なくともユーザを含むテレプレゼンス画像データを含み、オブジェクトは、眼鏡を含む。いくつかの実現例では、ニューラルレンダラーは、生成モデルを用いて、識別されたカテゴリ内の見えないオブジェクトインスタンスを再構成し、再構成は、オブジェクトの4つ未満の取込まれたビューに基づく。いくつかの実現例では、合成画像は、生成潜在最適化(Generative Latent Optimization:GLO)フレームワークおよび知覚再構成の損失を用いて生成される。
説明される技術の実現例は、コンピュータアクセス可能媒体上のハードウェア、方法もしくはプロセス、またはコンピュータソフトウェアを含み得る。1つ以上の実現例の詳細について、添付の図面および以下の説明に記載する。他の特徴は、説明および図面から、ならびに請求項から明らかとなろう。
本開示を通して説明する実現例に係る、表示デバイスにコンテンツを表示するための3Dコンテンツシステムの例を示すブロック図である。 本開示を通して説明する実現例に係る、表示デバイスにおけるレンダリングについてコンテンツをモデリングするためのシステムの例を示すブロック図である。 本開示を通して説明する実現例に係る、良好に境界をつけられた幾何学的変化を有するオブジェクトのカテゴリのための平面プロキシの例を示す図である。 本開示を通して説明する実現例に係る、生成潜在最適化フレームワークによって訓練されるネットワークアーキテクチャの例を示すブロック図である。 本開示を通して説明する実現例に係る、画像コンテンツのシミュレーションの例を示す図である。 本開示を通して説明する実現例に係る、画像コンテンツの取込みの例を示す図である。 本開示を通して説明する実現例に係る、画像コンテンツの抽出の例を示す図である。 本開示を通して説明する実現例に係る、本明細書で説明するモデルがフィットする場所に基づく画像の例を示す図である。 本開示を通して説明する実現例に係る、本明細書で説明するモデルを用いたバーチャル試着アプリケーションの例を示す図である。 本開示を通して説明する実現例に係る、本明細書で説明するモデルを用いたバーチャル試着アプリケーションの例を示す図である。 本開示を通して説明する実現例に係る、本明細書で説明するモデルを用いたバーチャル試着アプリケーションの例を示す図である。 本開示を通して説明する実現例に係る、3Dプロキシジオメトリモデルに基づく合成画像を生成するためのプロセスの一例を示すフローチャート図である。 本明細書で説明する技術と使用可能なコンピュータデバイスおよびモバイルコンピュータデバイスの例を示す図である。
さまざまな図面における同様の参照符号は、同様の要素を示す。
詳細な説明
3Dオブジェクトの正確なモデリングおよび表現は、オブジェクトが透明な表面、反射面、および/または薄い構造などの特徴を示す場合は困難なことがある。本明細書で説明するシステムおよび技術は、3Dプロキシジオメトリ(たとえば、テクスチャプロキシ)を用いて、そのような特徴を有する3Dオブジェクトをモデリングして、2Dスクリーンまたはオートステレオスコピックディスプレイ(たとえば、3Dディスプレイ)上の3Dオブジェクトの正確なレンダリングを可能にする方法を提供し得る。いくつかの実現例では、3Dプロキシジオメトリは、画像コンテンツ内のオブジェクトを構成する形状の幾何学的補間に基づく。
この文献は一般に、3Dオブジェクトを描く正確な画像をレンダリングするために、オブジェクトのカテゴリの形状および外観をモデリングすることに関する例について説明する。いくつかの実現例では、本明細書で説明するモデルは、たとえば、多方向テレビ会議で用いられる3Dディスプレイのスクリーンに、カメラが取込んだオブジェクトを、リアルな3D状でシミュレートするために用いることが可能である。いくつかの実現例では、オブジェクトは、3D生成されたシーン内で仮想または拡張コンテンツを提供するために合成によって生成されたオブジェクトでもよい。いくつかの実現例では、オブジェクトは、2Dまたは3Dシーンのためにランダムネスおよび/または臨場感を生成するように、合成によって修正されてもよい。たとえば、本明細書で説明するモデルは、複雑な形状および外観で構成されるオブジェクトを生成および表示するために使用可能であり、これらのうちの一部は、3D状で描くことが従来困難な場合もあった、透明特性、反射特性、複雑なジオメトリ、および/または他の構造特性を含み得る。
一例として、透明材料および/または反射材料は3D状で再構成およびレンダリングが難しいため、従来の表示システムは、3Dでの表示用に取込まれた、ユーザが身につけている複雑なオブジェクト(たとえば、眼鏡、宝石、反射する服装など)を正確にレンダリングできない場合がある。本明細書で説明するシステムおよび技術は、3Dディスプレイでリアルなオブジェクト描写を提供する正確な3D表現でオブジェクトを描くために、オブジェクト(たとえば、眼鏡、宝石、反射する服装、および/またはユーザに関係のないオブジェクトなど)の特定の物理的、ライティング、およびシェーディング態様の1つ以上のモデルを生成可能である。動作中、本明細書で説明するシステムは、オブジェクトが3Dディスプレイでのレンダリングのために取込まれると、リアルタイムにそのようなモデリングを行い得る。いくつかの実現例では、本明細書で説明するシステムは、ユーザが3Dディスプレイの使用中にオブジェクトと共におよび/またはその近くで移動する(すなわち、オブジェクトを身につけている、またはこれと対話している)間に、そのようなモデリングおよびレンダリングを行い得る。いくつかの実現例では、本明細書で説明するシステムは、自動車の部品、塗面、透明のオブジェクト、液体を保持するオブジェクトなどを含むがこれらに限定されない他のカテゴリのオブジェクトに対して、そのようなモデリングを行い得る。そのようなオブジェクトは、本明細書で説明するモデリングおよび技術を用いて、3Dでリアルに見えるようにレンダリング可能である。
いくつかの実現例では、本明細書で説明するシステムおよび技術は、3Dプロキシジオメトリを生成するための近似形状を用いた、オブジェクトのカテゴリの一般的な形状および外観を表現するようにモデルを生成する。本明細書で用いるように、3Dプロキシジオメトリ(テクスチャプロキシ)は、オブジェクトのセットの粗いジオメトリ近似値と、それぞれのオブジェクトジオメトリにマッピングされたオブジェクトのうちの1つ以上の潜在テクスチャとの両方を表す。粗いジオメトリおよびマッピングされた潜在テクスチャは、オブジェクトのカテゴリにおける1つ以上のオブジェクトの画像を生成するために用いられてもよい。たとえば、本明細書で説明するシステムおよび技術は、潜在テクスチャを対象視点にレンダリングし、ニューラルレンダリングネットワーク(たとえば、微分ディファード(differential deferred)レンダリングニューラルネットワーク)にアクセスして対象画像をディスプレイに生成することによって、3Dテレプレゼンス表示のためのオブジェクトを生成可能である。そのような潜在テクスチャを学習するために、本明細書で説明するシステムは、ニューラルテクスチャの低次元潜在空間と、共有ディファードニューラルレンダリングネットワークとを学習可能である。潜在空間は、オブジェクトの種別のすべてのインスタンスを包含し、オブジェクトのインスタンスの補間を可能にし、かつ、わずかな視点からオブジェクトのインスタンスの再構成を実現する。
プロキシのテクスチャを生成するために、本明細書で説明するシステムおよび技術は、種別レベル外観および幾何学的補間を用いて、共同潜在空間を学習する。たとえば、オブジェクトがイヤリングの場合、材料の反射性(たとえば、ゴールド、シルバー、プラスチック、樹脂など)、イヤリング形状などを含む特定のデータセットを選択してもよい。プロキシは、対応するニューラルテクスチャで独立してラスター化され、ニューラルネットワーク(たとえば、U-Net)を用いて合成されて、写真のようにリアルな画像およびアルファチャネル(たとえば、地図、マスクなど)を出力として生成してもよい。3Dプロキシジオメトリを用いて、わずかな視点のセット(たとえば、4枚未満の入力画像)から複雑なオブジェクトを再構成してもよい。
いくつかの実現例では、本明細書で説明するシステムおよび技術は、ディスプレイにアクセスするユーザの動きを検出することに応じて、3Dディスプレイ上にレンダリングするためにカメラによって取込まれる画像コンテンツをどのように表示するかについて評価してもよい。たとえば、ユーザ(またはユーザの頭もしくは目)が左または右に動く場合、本明細書で説明するシステムおよび技術は、そのような動きを検出して、画像取込み内の特定のオブジェクトをモデリングして、3Dディスプレイのユーザのためにオブジェクトの3D深度、正確な視差、および3Dの知覚を提供する態様でオブジェクト(たとえば、画像コンテンツ、ユーザなど)をどのように表示するかを判断可能である。これに加えて、本明細書で説明するシステムおよび技術は、たとえば、他の3Dディスプレイ上のオブジェクトを眺めている他のユーザのために、オブジェクトの同じ3Dの深度、視差、および知覚を提供するために使用可能である。
図1は、本開示を通して説明する実現例に係る、立体表示デバイスにおいてコンテンツを表示するための3Dコンテンツシステム100の例を示すブロック図である。3Dコンテンツシステム100は、たとえば、3D(たとえば、テレプレゼンスセッション)でテレビ会議通信を行うために、複数のユーザによって使用可能である。一般に、図1のシステムは、テレビ会議セッション内の3Dオブジェクト(たとえば、眼鏡、宝石など)を描写する正確な画像をレンダリングするために、本明細書で説明するシステムおよび技術を用いて、テレビ会議中にユーザのビデオおよび/または画像を取込み、かつ、3Dオブジェクトの形状および外観のモデリングを行うことができる。システム100は、本明細書で説明するモデルの使用から恩恵を受けてもよい。なぜなら、そのようなモデルによって、たとえばビデオ会議内における、複雑な形状および外観で構成されるオブジェクトを生成および表示可能であり、これらのうちの一部は、従来は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、図4、および図9を参照して説明するコンポーネントの一部またはすべてを含み得る。
3Dコンテンツシステム100は、1つ以上の2Dまたは3Dディスプレイを含み得る。ここで、3Dディスプレイ110は3Dシステム106のために設けられ、3Dディスプレイ112は3Dシステム108のために設けられる。3Dディスプレイ110、112は、それぞれの視聴者(ここでは、たとえばユーザ102またはユーザ104)のためにオートステレオスコピックビューを提供する複数種類の3Dディスプレイ技術のうちのいずれかを用い得る。いくつかの実現例では、3Dディスプレイ110、112は、スダントアロンユニット(たとえば、自立しているまたは壁に掛けられている)でもよい。いくつかの実現例では、3Dディスプレイ110、112は、ウェアラブル技術(たとえば、コントローラ、ヘッドマウントディスプレイなど)へのアクセスを含み得る、または有し得る。いくつかの実現例では、ディスプレイ110、112は、図7A~図7Cに示すような2Dディスプレイでもよい。
一般に、ディスプレイ110、112などの3Dディスプレイは、ヘッドマウントディスプレイ(HMD)デバイスを用いることなく、実世界における物理的なオブジェクトの3D光学特性を近似するイメージを提供し得る。一般に、本明細書で説明するディスプレイは、ディスプレイと関連付けられた多数の異なる視聴領域に画像を向け直すために、フラットパネルディスプレイ、レンチキュラーレンズ(たとえば、マイクロレンズアレイ)、および/または視差バリアを含む。
いくつかの実現例では、ディスプレイ110、112は、高解像度で眼鏡不要のレンチキュラー3次元ディスプレイを含み得る。たとえば、ディスプレイ110、112は、ディスプレイのマイクロレンズに結合(たとえば、接着)されたガラススペーサを有する複数のレンズ(たとえば、マイクロレンズ)を含むマイクロレンズアレイ(図示せず)を含み得る。マイクロレンズは、選択された視聴位置から、ディスプレイのユーザの左目が画素の第1のセットを眺めることができる一方でユーザの右目が画素の第2のセットを眺めることができるように、設計されてもよい(たとえば、画素の第2のセットは、画素の第1のセットに対して互いに排他的である)。
3Dディスプレイのいくつかの例では、そのようなディスプレイによって提供される画像コンテンツ(たとえば、ユーザ、オブジェクトなど)の3Dビューを提供する1つの場所があり得る。ユーザは、視差が適切で、歪みがほとんどなく、かつリアルな3D画像を体験するための1つの場所に着席可能である。ユーザが異なる物理的な場所に移動すると(または、頭の位置または目の凝視位置を変更すると)、画像コンテンツ(たとえば、ユーザ、ユーザが装着しているオブジェクト、および/または他のオブジェクト)が、よりリアルでなく、2Dで、および/または歪んで現れ始め得る場合がある。本明細書で説明するシステムおよび技術は、ユーザが動き回ることができるが、依然として、適切な視差を有し、歪みが低レートで、かつリアルな3D画像をリアルタイムに体験できることを確実にするために、ディスプレイから投影される画像コンテンツを再構成してもよい。そのため、本明細書で説明するシステムおよび技術には、ユーザが3Dディスプレイを視聴している間に発生するユーザの動きにかかわらず、3D画像コンテンツおよびオブジェクトを維持し、かつ、ユーザに提供して表示するという利点がある。
図1に示すように、3Dコンテンツシステム100は、1つ以上のネットワークに接続可能である。ここで、ネットワーク114は3Dシステム106に、および3Dシステム108に接続されている。ネットワーク114は、公開されているネットワーク(たとえば、インターネット)またはプライベートネットワークでもよいが、これら2つは例にすぎない。ネットワーク114は有線、または無線、またはこれら2つの組合わせでもよい。ネットワーク114は、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を含み得る。複数の種類の深度検知または深度取込みのいずれかを、深度データを生成するために使用可能である。いくつかの実現例では、支援型ステレオ深度取込みが行われる。たとえば、シーンはドット照明を用いて照射可能であり、ステレオマッチングを2つのそれぞれのカメラの間で行うことが可能である。この照射は、選択された波長または波長幅の波を用いて行うことが可能である。たとえば、赤外(IR)線を使用可能である。いくつかの実現例では、たとえば、深度センサは、2Dデバイス上でビューを生成するときに用いられなくてもよい。深度データは、シーン内の深度センサ(たとえば、深度センサ124)とオブジェクトとの間の距離を反映したシーンに関する情報を含み得る、またはこれに基づき得る。深度データは、シーン内のオブジェクトに対応する画像内のコンテンツについて、オブジェクトの距離(または深度)を反映する。たとえば、カメラ(複数可)と深度センサとの間の空間的な関係が知られており、カメラ(複数可)からの画像を深度センサからの信号と関係づけて、画像のための深度データを生成可能である。
3Dコンテンツシステム100によって取込まれた画像は処理され、その後、3Dの提示として表示可能である。図1の例に示すように、オブジェクト(眼鏡104’’)を有する3D画像104’が、3Dディスプレイ110に提示される。これによって、ユーザ102は、ユーザ102から離れている場合もあるユーザ104の3D表現として、3D画像104’および眼鏡104’’を認識可能である。3D画像102’が、3Dディスプレイ112に提示される。これによって、ユーザ104は、ユーザ102の3D表現として3D画像102’を認識可能である。
3Dコンテンツシステム100は、参加者(たとえば、ユーザ102、104)を、互いの、および/または他のユーザとのオーディオ通信に参加させることができる。いくつかの実現例では、3Dシステム106は、スピーカおよびマイク(図示せず)を備える。たとえば、3Dシステム108は同様に、スピーカおよびマイクを備え得る。そのため、3Dコンテンツシステム100は、ユーザ102および104を、互いのおよび/または他のユーザとの3Dテレプレゼンスセッションに参加させることができる。
図2は、本開示を通して説明する実現例に係る、3D表示デバイスにおけるレンダリングについてコンテンツをモデリングするためのシステム200の例を示すブロック図である。システム200は、本明細書で説明する1つ以上の実現例として機能し得る、もしくはこれらに含まれ得る、および/または、本明細書で説明する3D処理、モデリング、または提示のうちの1つ以上の例の動作(複数可)を行うために使用可能である。全体的なシステム200および/またはその個々のコンポーネントのうちの1つ以上は、本明細書で説明する1つ以上の例に従って実現可能である。
システム200は、1つ以上の3Dシステム202を備える。図示された例では、3Dシステム202A、202B~202Nが示されており、ここで、インデックスNは任意の数を表す。3Dシステム202は、3Dの提示のための視覚および聴覚情報の取込み、ならびに処理のための3D情報の転送を提供し得る。そのような3D情報は、シーンの画像、シーンに関する深度データ、およびシーンからの音声を含み得る。たとえば、3Dシステム202は、3Dシステム106および3Dディスプレイ110(図1)として機能し得る、またはこれらに含まれ得る。
システム200は、カメラ204として示されるような複数のカメラを含み得る。共通のデジタルカメラで用いられる種類の画像センサなどの任意の種類の光検知技術を、画像を取込むために使用可能である。カメラ204は、同じ種類でも異なる種類でもよい。カメラの場所は、たとえば3Dシステム106などの3Dシステム上の任意の場所内でもよい。
システム202Aは、深度センサ206を備える。いくつかの実現例では、深度センサ206は、IR信号をシーンに伝搬させ、応答信号を検出することによって動作する。たとえば、深度センサ206は、ビーム128A~Bおよび/もしくは130A~Bを生成ならびに/または検出可能である。
システム202Aはまた、少なくとも1つのマイク208とスピーカ210とを備える。たとえば、これらは、ユーザが装着するヘッドマウントディスプレイに一体化可能である。いくつかの実現例では、マイク208およびスピーカ210は、3Dシステム106の一部でもよく、ヘッドマウントディスプレイの一部でなくてもよい。
システム202はさらに、立体的な態様で3D画像を提示可能な3Dディスプレイ212を備える。いくつかの実現例では、3Dディスプレイ212はスタンドアローンディスプレイでもよく、いくつかの他の実現例では、3Dディスプレイ212は、3Dの提示を体験するためにユーザが装着するように構成されたヘッドマウントディスプレイユニットに含まれてもよい。いくつかの実現例では、3Dディスプレイ212は、視差バリア技術を用いて動作する。たとえば、視差バリアは、スクリーンと視聴者との間に配設される実質的に不透明の材料(たとえば、不透明膜)の平行な垂直ストライプを含み得る。視聴者のそれぞれの目の間の視差によって、スクリーンの異なる部分(たとえば、異なる画素)が、左目および右目によってそれぞれ眺められる。いくつかの実現例では、3Dディスプレイ212は、レンチキュラーレンズを用いて動作する。たとえば、交互の列のレンズをスクリーンの前方に配設可能であり、これらの列はそれぞれ、スクリーンから視聴者の左目および右目に光を向ける。
システム200は、データの処理、データのモデリング、データの調整、および/またはデータの送信という特定のタスクを行い得る。サーバ214および/またはそのコンポーネントは、図9を参照して説明するコンポーネントの一部または全てを含み得る。
サーバ214は、1つ以上の態様で3D情報のレンダリングを担い得る3Dコンテンツジェネレータ216を含む。これは、(たとえば、3Dシステム202Aからの)3Dコンテンツの受信、3Dコンテンツの処理、および/または(処理された)3Dコンテンツの他の参加者への(たとえば、3Dシステム202のうちの他方への)転送を含み得る。
3Dコンテンツジェネレータ216によって行われる機能のいくつかの態様は、シェーダ218によって行われるために実現可能である。シェーダ218は、画像の特定の部分についてシェーディングを施すこと、および、シェーディングが与えられた、または与えられる予定の画像に関連する他のサービスを行うことを担い得る。たとえば、シェーダ218は、他の態様では3Dシステム(複数可)202によって生成され得る複数のアーティファクトを打消すまたは隠すために利用可能である。
シェーディングとは、画像内のオブジェクトの色、表面、および/または多角形を含むがこれに限定さない、画像コンテンツの外観を規定する1つ以上のパラメータを指す。いくつかの実現例では、画像コンテンツの1つ以上の部分が視聴者に見える態様を変えるために、シェーディングをこれらの画像コンテンツ部分(複数可)に適用可能である、または、これらの部分について調節可能である。たとえば、シェーディングは、画像コンテンツ部分(複数可)を、たとえばより暗く、より明るく、透明にするために施す/調節することが可能である。
3Dコンテンツジェネレータ216は、深度処理コンポーネント220を含み得る。いくつかの実現例では、深度処理コンポーネント220は、画像コンテンツと関連付けられた1つ以上の深度値に基づいて、および1つ以上の受信入力(たとえば、コンテンツモデル入力)に基づいて、当該コンテンツに対してシェーディング(たとえば、より暗く、より明るく、透明に)を施すことが可能である。
3Dコンテンツジェネレータ216は、角度処理コンポーネント222を含み得る。いくつかの実現例では、角度処理コンポーネント222は、画像コンテンツを取込むカメラに対するコンテンツの向き(たとえば、角度)に基づいて、画像コンテンツにシェーディングを施すことが可能である。たとえば、所定閾値角度より大きな角度でカメラ角度から離れるように向かい合うコンテンツに対して、シェーディングを施すことが可能である。これによって、角度処理コンポーネント222は、表面がカメラから離れると、明るさが低減し次第に暗くなるようにできるが、これはほんの一例である。
3Dコンテンツジェネレータ216は、レンダラーモジュール224を含む。レンダラーモジュール224は、コンテンツを1つ以上の3Dシステム(複数可)202にレンダリングしてもよい。たとえば、レンダラーモジュール224は、たとえばシステム202に表示され得る出力/合成画像をレンダリングしてもよい。
図2に示すように、サーバ214はまた、1つ以上の態様で3D情報のモデリングを担当し得る3Dコンテンツモデラー230を含む。これは、(たとえば、3Dシステム202Aからの)3Dコンテンツの受信、3Dコンテンツの処理、および/または(処理された)3Dコンテンツの他の参加者への(たとえば、3Dシステム202の他方への)転送を含み得る。3Dコンテンツモデラー230は、以下でより詳細に説明するように、アーキテクチャ400を用いてオブジェクトをモデリングしてもよい。
ポーズ232は、取込まれたコンテンツ(たとえば、オブジェクト、シーンなど)と関連付けられたポーズを表してもよい。いくつかの実現例では、ポーズ232は、システム100および/または200と関連付けられた追跡システム(図示せず)によって、検出および/または他の態様では判定可能である。そのような追跡システムは、ユーザのすべてまたは一部の位置を追跡するために、センサ、カメラ、検出器、および/またはマーカーを含んでもよい。いくつかの実現例では、追跡システムは、室内のユーザの位置を追跡してもよい。いくつかの実現例では、追跡システムは、ユーザの目の位置を追跡してもよい。いくつかの実現例では、追跡システムは、ユーザの頭の位置を追跡してもよい。
いくつかの実現例では、追跡システムは、適切な深度および視差を有する画像を表示するために、たとえば、表示デバイス212に対するユーザの位置(またはユーザの目もしくは頭の位置)を追跡し得る。いくつかの実現例では、ユーザと関連付けられた頭の位置は、たとえばマイクロレンズ(図示せず)を介して、表示デバイス212のユーザに画像を同時に投影するための方向として検出および使用されてもよい。
カテゴリ234は、特定のオブジェクト236についての分類を表してもよい。たとえば、カテゴリ234は眼鏡でもよく、オブジェクトは、青い眼鏡、透明の眼鏡、丸い眼鏡などでもよい。任意のカテゴリおよびオブジェクトは、本明細書で説明するモデルによって表現されてもよい。カテゴリ234は、オブジェクト236上の生成モデルを訓練する基準として用いられてもよい。いくつかの実現例では、カテゴリ234は、同じカテゴリの複数のオブジェクトについてのグラウンドトゥルースポーズ、色空間画像、およびマスクのセットへのアクセスを許可する異なる視点の下で、合成的に3Dオブジェクトカテゴリのレンダリングを行うために使用可能なデータセットを表してもよい。
3次元(3D)プロキシジオメトリ238は、オブジェクトのセットの(粗い)幾何学近似値と、それぞれのオブジェクトジオメトリにマッピングされたオブジェクトのうちの1つ以上の潜在テクスチャ239との両方を表す。粗いジオメトリとマッピングされた潜在テクスチャ239とは、オブジェクトのカテゴリ内の1つ以上のオブジェクトの画像を生成するために使用されてもよい。たとえば、本明細書で説明するシステムおよび技術によって、潜在テクスチャ239を対象視点にレンダリングし、ニューラルレンダリングネットワーク(たとえば、微分ディファードレンダリングニューラルネットワーク)にアクセスして対象画像をディスプレイに生成することによって、3Dテレプレゼンス表示のためにオブジェクトを生成可能である。そのような潜在テクスチャ239を学習するために、本明細書で説明するシステムは、ニューラルテクスチャの低次元潜在空間および共有ディファードニューラルレンダリングネットワークを学習可能である。潜在空間は、オブジェクトの種別のすべてのインスタンスを包含し、オブジェクトのインスタンスの補間を可能にして、わずかな視点からのオブジェクトのインスタンスの再構成を実現し得る。
ニューラルテクスチャ244は、画像取込みプロセスの一部として訓練される、学習された特徴マップ240を現す。たとえば、オブジェクトが取込まれると、このオブジェクトのための特徴マップ240および3Dプロキシジオメトリ238を用いて、ニューラルテクスチャ244が生成されてもよい。動作中、システム200は、特定のオブジェクト(シーン)のための3Dプロキシジオメトリ238の上のマップとして、当該オブジェクトのためのニューラルテクスチャ244を生成し、格納してもよい。たとえば、識別されたカテゴリの各々のインスタンスと関連付けられた潜在コードと、ポーズと関連付けられたビューとに基づいて、ニューラルテクスチャが生成されてもよい。
幾何学的近似値246は、オブジェクトジオメトリのために形状ベースのプロキシを表してもよい。幾何学的近似値246は、メッシュベースの、形状ベースの(たとえば、三角形、長斜方形、正方形など)、自由形式バージョンのオブジェクトでもよい。
ニューラルレンダラー250は、たとえば、ニューラルネットワークを用いてレンダリングを行うオブジェクトおよび/またはシーンの中間表現を生成してもよい。ニューラルテクスチャ244は、ニューラルレンダラー250と共に動作するニューラルネットワーク242など、5層U-Netと共に、テクスチャマップ(たとえば、特徴マップ240)上の特徴を共同で学習するために用いられてもよい。ニューラルレンダラー250は、たとえば、オブジェクト特有の重畳ネットワークを用いて真の外観(たとえば、グラウンドトゥルース)と拡散再投影との間の差をモデリングすることによって、ビューに依存する効果を組込むことが可能である。そのような効果は、シーンの知識に基づいて予測することが困難な場合があるため、リアルな出力をレンダリングするためにGANベースの損失機能を用いてもよい。
RGBカラーチャネル252(たとえば、カラー画像)は、3つの出力チャネルを表す。たとえば、3つの出力チャネルは、すなわち、カラー画像を表す赤色チャネル、緑色チャネル、および青色チャネル(たとえば、RGB)を含んでもよい。いくつかの実現例では、色チャネル252は、特定の画像のためにレンダリングされる色を示すYUVマップでもよい。いくつかの実現例では、カラーチャネル252はCIEマップでもよい。いくつかの実現例では、カラーチャネル252はITPマップでもよい。
アルファ(α)254は、オブジェクト内の任意の数の画素について、特定の画素色が重ねられると他の画素と合成される態様を表す出力チャネル(たとえば、マスク)を表す。いくつかの実現例では、アルファ254は、オブジェクトの透明レベル(たとえば、半透明、不透明など)を規定するマスクを表す。
上述の例示的なコンポーネントは、ここでは、ネットワーク260(図1のネットワーク114に類似または同一でもよい)によって3Dシステム202のうちの1つまたは複数と通信可能なサーバ214内で実現されると説明される。いくつかの実現例では、3Dコンテンツジェネレータ216および/またはそのコンポーネントは、3Dシステム202の一部またはすべてにおいて、代わりにまたはさらに実現可能である。たとえば、上述のモデリングおよび/または処理は、3D情報を1つ以上の受信システムに転送する前に3D情報を発信するシステムによって行うことが可能である。他の例として、発信システムによって、画像、モデリングデータ、深度データおよび/または対応する情報を、上述の処理を行うことが可能な1つ以上の受信システムに転送可能である。これらのアプローチの組合わせを用いることができる。
このように、システム200は、カメラ(たとえば、カメラ204)、深度センサ(たとえば、深度センサ206)、およびメモリに格納された命令を実行するプロセッサを有する3Dコンテンツジェネレータ(たとえば、3Dコンテンツジェネレータ216)を含むシステムの例である。そのような命令は、プロセッサに、3D情報に含まれる深度データを(たとえば、深度処理コンポーネント220によって)用いて、3D情報に含まれるシーンの画像内の画像コンテンツを識別させることが可能である。画像コンテンツは、基準を満たす深度値と関連付けられていると識別可能である。プロセッサは、たとえば正確に合成画像256を描写するために3Dコンテンツジェネレータ216に提供され得る3Dコンテンツモデラー230によって生成されるモデルを適用することによって、修正された3D情報を生成可能である。
合成画像256は、ユーザの頭の追跡された位置に少なくとも部分的に基づいて、ディスプレイ(たとえば、ディスプレイ212)にアクセスしているユーザと関連付けられた両方の目のための正しい視差および視聴構成を有する特定のオブジェクト236の3D立体画像を表す。合成画像256の少なくとも一部は、たとえば、ユーザがディスプレイを眺めつつ頭の位置を動かす度に、システム200を用いて、3Dコンテンツモデラー230からの出力に基づいて求められてもよい。いくつかの実現例では、合成画像256は、オブジェクト236および他のオブジェクト、ユーザ、またはオブジェクト236を取込んでいるビュー内の画像コンテンツを表す。
いくつかの実現例では、システム202および214のプロセッサ(図示せず)は、グラフィックス・プロセッシング・ユニット(GPU)を含んでもよい(または、これと通信してもよい)。動作中、プロセッサは、メモリ、ストレージ、および他のプロセッサ(たとえば、CPU)を含み得る、(またはこれらにアクセスし得る)。グラフィックスおよび画像生成を容易にするために、プロセッサは、GPUと通信して、画像を表示デバイス(たとえば、表示デバイス212)に表示し得る。CPUおよびGPUは、PCI、AGPまたはPCI-Expressなどの高速バスを通して接続されてもよい。GPUは、HDMI(登録商標)、DVI、またはディスプレイポートなどの他の高速インターフェイスを通して、ディスプレイに接続されてもよい。一般に、GPUは、画素形状で画素コンテンツをレンダリングしてもよい。表示デバイス212は、GPUから画像コンテンツを受信し、画像コンテンツをディスプレイスクリーンに表示してもよい。
図3は、本開示を通して説明する実現例に係る、良好に境界を付けられた幾何学的変化を有するオブジェクトのカテゴリについての平面プロキシの例を示す図である。たとえば、平面プロキシ302が眼鏡300の左側として示されている。平面プロキシ302は、眼鏡300の左側をモデリングした平面ビルボードを表す。同様に、平面プロキシ304が眼鏡の中央部分(たとえば、前側部分)を表すように示され、平面プロキシ306が、眼鏡300の右側を表す。眼鏡300は、オブジェクトの例を表す。他のオブジェクトおよびそのようなオブジェクトを表す平面プロキシ形状は、3Dコンテンツの生成およびレンダリングのために、本明細書で説明するシステムおよび技術によって用いられてもよい。たとえば、他のプロキシは、箱、円柱、球体、三角形などを含み得るが、これらに限定されない。
平面プロキシは、複雑なジオメトリの代替として用いられてもよい、テクスチャマッピングされたオブジェクト(またはオブジェクトの一部)を表し得る。ジオメトリプロキシの操作およびレンダリングは、対応する詳細なジオメトリの操作およびレンダリングと比べてコンピュータ集約型ではないため、平面プロキシの表現は、ビューを再構成するためにより単純な形状を提供してもよい。平面プロキシの表現は、そのようなビューを生成するために用いられてもよい。平面プロキシを用いることによって、たとえば、眼鏡、車、雲、木、および草などのきわめて複雑な外観を有するオブジェクトの操作、再構成、および/またはレンダリングを行おうとする場合に計算コストが低くなるという利点をもたらし得る。同様に、高性能なグラフィックス・プロセッシング・ユニットを使用すると、リアルタイムゲームエンジンは、より低い詳細度でジオメトリに置き換わるようにマップを生成する3Dプロキシジオメトリを用いて、距離と共にスワップインおよびスワップアウト可能な複数の詳細度を有するそのようなプロキシ(たとえば、幾何学的表現)を用いることが可能である。
動作中、システム200は、抽出されたアルファマスクを用いて、オブジェクトごとにバウンディングボックス(たとえば、粗い視覚ハル)を計算することによって、平面プロキシ302~304を生成してもよい。一般に、アルファマスクは、オブジェクトにおける任意の数の画素について、特定の画素色が重ねられると他の画素と合成される態様を表す。システム200はその後、眼鏡の画像内の対象領域を特定し得る。対象領域は、頭の座標を用いて特定されてもよい。システム200はその後、対応する正射影から眺めたときの面に確率的に一致する平面を抽出してもよい。この例では、プロキシ302~304を生成するために用いられる平面は、眼鏡の3つの側を描写する右側のビュー、中央のビュー、および左側のビューである。
一般に、システム200は、ニューラルネットワークに入力される訓練データとして用いることが可能な任意の数の画像について、平面プロキシを生成してもよい。ニューラルネットワークは、たとえばカメラが取込んだ特定のオブジェクト(たとえば、眼鏡)を正確に表示する態様を判断してもよい。それゆえ、ニューラルネットワークに入力される訓練データとして用いられる各眼鏡は、固有のプロキシジオメトリと関連付けられてもよい。いくつかの実現例では、訓練時間に、システム200は画像内のオブジェクトのポーズを検出してもよい。いくつかの実現例では、システム200は、画像のデータセットをオブジェクトと組合わせ、検出されたポーズを用いてポーズに基づく視点からオブジェクトをシミュレートすることによって、特定のオブジェクトのビューを生成してもよい。
いくつかの実現例では、システム200は、眼鏡の潜在空間を構築し、眼鏡の潜在空間をたとえばNN242に送り、その後、NN242は眼鏡のためにテクスチャマップを生成してもよい。いくつかの実現例では、システム200は、訓練データの中から平面プロキシのインスタンスの数を減らして、残りの平面プロキシを用いてニューラルネットワークのためのカテゴリレベルモデルを訓練しつつ、少ないショットの再構成を実行してもよい。たとえば、眼鏡画像を表す残りの平面プロキシを用いて、ニューラルネットワーク242のために眼鏡カテゴリ(たとえば、カテゴリ234)を訓練可能である。
オブジェクトの任意の数のカテゴリを、NN242と用いるために訓練可能である。たとえば、システム200は、車、本物の植物、および/または、薄い、反射する、透明の、および/または他の態様では3Dでモデリングおよびレンダリングを正確に行うことが困難な他のカテゴリのオブジェクトを用いて、潜在的な3Dプロキシジオメトリを訓練可能である。たとえば、システム200は、多数の車オブジェクトのサンプリングに基づいて、自由形状3Dプロキシジオメトリおよび/または幾何学メッシュを用いて、車をモデリングしてもよい。
他の例では、x線フィルム、カメラのネガ、または2Dもしくは3Dビデオで表示するために裏から照らし出すことが可能な他のフィルムなどの薄いオブジェクトを取込むことが可能である。本明細書で説明するシステムおよび技術は、フィルム(たとえば、x線など)を2Dまたは3Dビデオを眺めているユーザに正確に伝達できるように、フィルム内の画像コンテンツを正確に描写および/または修正するために平面プロキシを採用してもよい。
図4は、本開示を通して説明する実現例に係る、生成潜在最適化フレームワークによって訓練されるネットワークアーキテクチャ400の例を示すブロック図である。一般に、アーキテクチャ400は、オブジェクトのさまざまな形状および外観を生成可能な生成モデルを用いて、ニューラルテクスチャをパラメーター化するために3DプロキシジオメトリPを用いるシステム200を使用する例である。モデリングされるオブジェクトの例として眼鏡を用いる例が示されている。しかしながら、3D画像コンテンツのモデリングおよび生成を行うために、アーキテクチャ400において任意のオブジェクトまたはオブジェクトカテゴリが代用され使用されてもよい。
図4に示すように、オブジェクトの集合が、z∈Rとしてオブジェクトインスタンスiごとに潜在コードを表すマップ(z)402として生成される。潜在空間のマップ(z)402は、8次元(8D)マップでもよい。マップ402は、アーキテクチャ400を用いて最適化される乱数値を含み得る。
アーキテクチャ400の(たとえば、システム200を用いた)動作中、マップ(z)402は、ニューラルテクスチャ406、ニューラルテクスチャ408、およびニューラルテクスチャ410として本例で示される複数のニューラルテクスチャ244を生成するために、多層パーセプトロン(MLP)ニューラルネットワーク404(たとえば、NN242)に提供される。ニューラルテクスチャ406~410は、マップ(z)402内に示される特定のオブジェクトについてジオメトリおよび/またはテクスチャのある部分を画定する、メッシュの部分を表してもよい。
MLP NN404(たとえば、NN242)は、8Dマップ内に表す要素をより高い次元の空間(たとえば、512次元)に上げてもよい。アーキテクチャ400は、取込まれた画像(たとえば、取込まれた画像から生成されたプロキシのポーズ)と関連付けられたポーズ412を用いて、ニューラルテクスチャ406~408、サンプル414、416、および418、ならびに対応する深度420、422、424に加えて、対応する標準的な視点426、428、および430を生成する。
特定の種別のオブジェクトの集合を想定して、システム200は、インスタンスiごとの潜在コードを、z∈Rと定義する。本明細書で説明する、アーキテクチャ400によって用いられるモデルが、K個のプロキシ{P,1・・・,Pi,K}のセットを含む粗いジオメトリ(すなわち、U-V座標を有する三角形メッシュ)を生成および使用し得る。たとえば、アーキテクチャ400は、ニューラルテクスチャ406~408を生成するために、2D画像を3Dプロキシモデル面に投射してもよい。U-V座標は、2Dテクスチャの軸を示す。これらのプロキシは、種別内のオブジェクトの集合のいずれかまたはすべての実際のジオメトリのバージョンを表すように機能する。アーキテクチャ400は、オブジェクトのインスタンスごと、および表現される3Dプロキシジオメトリごとに、ニューラルテクスチャTi,j=Gen(w)を計算(たとえば、生成)可能であり、ここで、w=MLP(z)は、MLP NN404を用いた潜在コードzの非線形再パラメーター化である。
画像ジェネレータA、BおよびC(たとえば、Gen(.))は、たとえば、ニューラルテクスチャ406~410を用いて特徴マップを生成するために、入力として潜在コード(たとえば、マップ(z)402)を受信するデコーダを表してもよい。出力ビューをレンダリングするために、アーキテクチャ400は、深度、標準およびUV座標を含む各プロキシから、ディファードシェーディングバッファをラスター化してもよい。アーキテクチャ400はその後、たとえば、プロキシごとにシェーディングバッファU-V座標(図示せず)を用いて、対応するニューラルテクスチャ(複数可)406、408、および410をサンプリングしてもよい。サンプリングの結果が、414、416、および418で示される。
アーキテクチャ400は、ニューラルレンダラー250(たとえば、U-Net)への入力として、シェーディングバッファのコンテンツを用いてもよい。ニューラルレンダラー250は、4つの出力チャネルを生成してもよい。たとえば、ニューラルレンダラー250は、3つの出力チャネル(すなわち、赤色チャネル、緑色チャネル、および青色チャネル)を表す色空間/カラーチャネル252を生成してもよい。いくつかの実現例では、カラーチャネル252は、画像においてレンダリングされる色を示すカラー画像(たとえば、マッピング)でもよい。第4の出力チャネルは、2つの画素が互いに重ねられると各画素がオブジェクト内に示される他の画素と合成されるべき態様を特定する特定のオブジェクトのためのマスクを表すアルファチャネル254でもよい。一例では、アルファチャネル(たとえば、マスク)は、眼鏡の不透明度を表してもよい。すなわち、アルファマスクは、オブジェクトの特定のジオメトリまたは面の半透明度を表してもよい。
いくつかの実現例では、複数のニューラルテクスチャは、画像コンテンツ内に取込まれたオブジェクトの隠れた部分を再構成するように構成される。たとえば、眼鏡406のビューにおいて、眼鏡のフロントビューが眼鏡のつるを隠すため、このつるの一部は隠れていてもよい。隠れた部分(たとえば、つる)は、ニューラルレンダラーが、オブジェクトの透明層とオブジェクトの透明層の背後の面とを生成することを可能にするニューラルテクスチャ(たとえば、互いの)積層形態に基づいて再構成されてもよい。
いくつかの実現例では、低アルファ値を有する画素内の色が、NN404(たとえば、NN242)をぼやかし得る、画像の抽出されたマットにおいて特に目立ちやすいため、アルファチャネル254(マスク)によって明度が事前に逓倍されもよい。カラーチャネル252およびアルファチャネル254は合成されて、合成画像256を生成しレンダリングしてもよい。
いくつかの実現例では、L1損失を、カラーチャネル252とアルファチャネル254との両方のために、アーキテクチャ400によって算出可能である。いくつかの実現例では、L1損失を、アーキテクチャ400によって算出してもよい。いくつかの実現例では、VGG損失を、生成された合成画像256における任意の知覚損失を補償するために、合成画像256について算出してもよい。
動作中、アーキテクチャ400は、粗いプロキシ面(たとえば、3Dプロキシジオメトリ238)のセットに加えて、ビューに依存するニューラルテクスチャ244を用いた形状、アルベド、およびビューに依存する効果を用いてジオメトリ構造を符号化するために、プロキシジオメトリ原則を用いる。ニューラルテクスチャ244は、さまざまな形状および外観を生成可能な生成モデルを用いてパラメーター化される。
たとえば、アーキテクチャ400は、システム200によって生成される3Dプロキシジオメトリ238のためにニューラルテクスチャ244を生成してもよい。3Dプロキシジオメトリ238は一般に、オブジェクトと関連付けられたジオメトリおよび/またはテクスチャを表すメッシュの部分を含む。特定の3Dプロキシジオメトリのポーズ412を用いて、アーキテクチャ400は、特定の視点からオブジェクトのバージョンをレンダリングしてもよい。たとえば、標準426、428および430は、オブジェクトを表す平面として生成される。深度マップ420、422および424も、オブジェクトの画素ごとに生成されてもよい。くわえて、サンプルプロキシ414、416および418は、3Dプロキシジオメトリ内のマップ(たとえば、特徴マップ240)として用いて、サンプリングおよびレンダリングを行うジオメトリの特定の部分を検索するために、生成されてもよい。
要素410~430を生成すると、アーキテクチャ400は、画像を積層して9つのチャネルを生成してもよく、次に、後にディファードシェーディングバッファに連結可能なオブジェクトの多数のビューを生成してもよい。ディファードシェーディングバッファの出力は、色空間画像252およびアルファマスクを生成するニューラルレンダラー250に提供されてもよい。
いくつかの実現例では、アーキテクチャ400は、L1およびVGG知覚再構成損失を用いて端末相互間でNN404を訓練するために、生成潜在最適化(GLO)フレームワークを用いる。いくつかの実現例では、L1損失は、事前に逓倍された色空間チャネル値、事前に逓倍されたアルファチャネル、および中間色の灰色の背景の上の合成に対して再構成される。いくつかの実現例では、知覚損失は、たとえば、画像のセット上で事前に訓練されたVGGの第2の層および第5の層を用いて、合成画像256に適用されてもよい。いくつかの実現例では、種別ごとの潜在コード(たとえば、マップ(z)402)はランダムに初期化され、1e-5の学習レートで最適化される。ニューラルテクスチャ244(たとえば、406、408、および410)は、9つのチャネルのニューラルテクスチャを含んでもよい。いくつかの実現例では、マップ(z)402は、8次元で表現されてもよく、(w)は512次元で表現されてもよい。画像結果(たとえば、合成画像256)が、たとえば眼鏡の512×512解像度で生成されてもよい。他のオブジェクトについて、他の解像度を用いることが可能である。
図5A~図5Cは、本開示を通して説明する実現例に係る、画像コンテンツのシミュレーション、取込み、および抽出の例を示す。図5Aは、画像(たとえば、ユーザが装着している眼鏡506の画像504)が取込まれる装置502の例を示す。装置502は眼鏡オブジェクトを取込むために示されているが、他のオブジェクトカテゴリを取込むために、かつ、そのような取込まれたコンテンツを用いてニューラルネットワークを訓練し、オブジェクトカテゴリについてモデルを生成するために、他の装置を構築および使用可能である。装置502は、カメラを表し、かつ、カメラのジオメトリに加えて測光モデルパラメータを計算するために、白い背景とCalibuキャリブレーション構成とを用いて、ユーザをシミュレートするマネキンの頭を表す。
図5Bは、装置502を用いた画像取込みを表す。ここで、複数のポーズ412およびオブジェクト(たとえば、眼鏡506)を表すために、4枚の画像508、510、512および514が取込まれる。示されるオブジェクトが眼鏡ではなく車の場合、車の複数の画像がこのステップのために取込まれてもよい。
図5Cは、可能なバージョンの眼鏡を表す4枚の画像516、518、520および522を表す。たとえば、アーキテクチャ400は、前景アルファマットおよび色の値を求めるために、画像508~514を用いてもよい。いくつかの実現例では、眼鏡のソフトシャドウ(たとえば、シャドウ524)がマットアルゴリズムに残ってもよい。この例では、潜在変換MLP404は、4層の256個の特徴を有し、レンダリングU-Net(たとえば、ニューラルレンダラー250)は、各々2つの重畳(合計で20個の重畳)を有する5つのダウンサンプリングおよびアップサンプリングブロックを含む。
図6は、本開示を通して説明する実現例に係る、本明細書で説明するモデルがフィットする場所に基づく、画像の例を示す。一般に、システム200は、オブジェクトのさまざまな取込まれた入力画像を受信し得る。この例では、入力画像は眼鏡(たとえば、眼鏡602、眼鏡604、および眼鏡606)の3枚の画像を含む。補間されたバージョンの眼鏡は、潜在コード(z)608の例、潜在コード(z)608の非線形潜在再パラメーター化を表す画像(w)610、グラウンドトゥルース画像612、画像のニューラルテクスチャ614の例、および組合わされたバージョンの画像を表す合成画像616によって示される。
図6は、本開示を通して説明する実現例に係る、グラウンドトゥルース画像コンテンツと比較した、本明細書で説明するシステムによって行われるビュー補間の例を示す。GLOモデルについて一般に上述しているが、変分オートエンコーダ(VAE)モデルまたはゲームセオリー(GT)モデルを含むがこれらに限定されない他のビュー補間モデルが用いられてもよい。
入力の特定の角度が提供されるが、眼鏡の他の角度がわずかなショット再構成を用いて補間されてもよい。たとえば、眼鏡の左側角度ビューが入力として設けられてもよいが、システム200は、入力ビューを微調整し、かつ、ニューラルテクスチャを用いて他の視点を再構成することによって、右側角度からビューを再構成してもよい。眼鏡のブリッジで取込まれた、ビューに依存する効果も、入力画像に取込まれないない場合であっても再構成されてもよい。
システム200は、オブジェクトの潜在空間における補間を可能にする生成モデルを用いて、3Dモーフィング可能なモデルに類似した形状および外観の変形可能なモデルを効果的に構築し得る。たとえば、システム200は、眼鏡オブジェクト604のプロキシジオメトリが一定に保たれる一方で潜在コード(z)608が線形補間されて画像(w)610を生成するような補間を生成してもよい。差は、モデルがフィットしている場所によって決まり得る。テクスチャは一致しないものの、眼鏡オブジェクト604の形状は、画像(w)610でリアルに示され、すべてのネットワークパラメータが微調整されると全体的な再構成が改善される。
システム200はテクスチャのパラメーター化された空間を用いるため、このシステムは、入力ビューを再生する右側潜在コード(z)を見つけることによって、特定のインスタンスを再構成可能である。これはたとえば、どちらか一方のエンコーダによって、または再構成損失に対する勾配降下の使用による最適化によって、行うことが可能である。そうではなく、いくつかの実現例では、システム200は、変換された潜在空間(w)の最適化、ニューラルテクスチャ空間の最適化、またはすべてのネットワークパラメータの最適化(すなわち、ニューラルネットワーク全体の微調整)を含むがこれに限定されない、ニューラルネットワークの中間パラメータの最適化を行うことが可能である。
それゆえ、対応するポーズ{p1・・・p}およびプロキシジオメトリ{Pi,1・・・Pi,K}を有するビュー{I1・・・I}のセットを考慮して、システム200は新しい潜在コード(z)を規定してもよく、以下の最適化として再構成プロセスを設定してもよい。
Figure 0007329612000001
ここで、Net()は、潜在コード(z)、ポーズ(p)、および最適化される中間ネットワークパラメータ(θ)によってパラメーター化される図4の終端間ネットワークアーキテクチャである。いくつかの実現例では、プロキシ入力を積層することによって、眼鏡のつるはフロントプロキシによって遮られるが、そのようなビューは、システム200およびアーキテクチャ400を用いて正確に再生可能である。
図7A~図7Cは、本開示を通して説明する実現例に係る、本明細書で説明するモデルを用いたバーチャル試着アプリケーションの例を示す。システム200およびアーキテクチャ400によって用いられる生成モデルによって、オブジェクトの仮想的な試着を体験可能である。示された例では、ユーザ700は、特定の眼鏡を装着しているユーザ700のビデオ/画像取込み中に移動可能な状態で、異なる眼鏡702、704および706をそれぞれ試着している。
眼鏡の学習された潜在空間(システム200および/またはアーキテクチャ400によって行われる)によって、ユーザは、入力された潜在コードを修正することによって、眼鏡の外観および形状を修正できる。ビデオ画像スナップショット708、710および712の例は、システム200が、ユーザが眼鏡を装着してない近距離でユーザ700のビデオを処理する結果を示す。ユーザ700の頭のポーズが、たとえば、テレプレゼンスデバイス106の追跡システムによって追跡される。テクスチャプロキシを、(たとえば、図5Aに示すような)参照装置のヘッドフレームに配設可能である。システム200は次に、ニューラルプロキシのレンダリングを行って、カラー画像および眼鏡の層を表すアルファマスクの生成が可能であり、その後、そのような層をフレーム上に合成してもよい。
つまり、本明細書で説明するシステムおよび技術は、オブジェクトの形状および外観を共同でモデリングするためのコンパクトな表現を提供する。システムは、粗いプロキシジオメトリおよび生成潜在テクスチャを用いる。システムは、オブジェクトの集合を共同でモデリングすることによって、3枚という少ない入力画像を用いて高品質の見えないインスタンスを再構成するために、見えるインスタンス間で潜在補間を行ってもよいと示す。システムは、公知の3Dプロキシジオメトリおよびポーズを想定してもよい。
図8は、本開示を通して説明する実現例に係る、3Dプロキシジオメトリモデルに基づいて合成画像を生成するためのプロセス800の一例を示すフローチャートである。つまり、プロセス800は、生成モデルを有する3Dプロキシジオメトリを用いて3Dオブジェクト画像の正確な表現を生成する例を提供してもよい。プロセス800は、少なくとも1つの処理デバイスと、実行されると処理デバイスに、請求項に記載する複数の動作およびコンピュータ実現可能なステップを行わせる命令を格納したメモリとを用いてもよい。一般に、システム100、200、および/またはアーキテクチャ400は、プロセス800の説明で用いられてもよい。システム100、200、およびアーキテクチャ400の各々は、いくつかの実現例では、1つのシステムを表してもよい。
ブロック802において、プロセス800は、画像コンテンツ内のオブジェクトと関連付けられたポーズを受信することを含む。いくつかの実現例では、このポーズは、オブジェクトおよび/またはポーズの画像コンテンツからの検出に基づいて、検索および/または受信されてもよい。たとえば、プロセス800は、オブジェクトと関連付けられた1つ以上の視覚キューを検出してもよい。視覚キューは、特定のオブジェクト検出をトリガし得る。たとえば、視覚キューは、システム200が格納されたカテゴリ234および/またはオブジェクト236との一致を判断する、カメラによって取込まれた透明特性、反射特性、複雑なジオメトリ、および/または他の構造的な特性を含み得るが、これらに限定されない。いくつかの実現例では、ポーズはたとえば、カメラによって取込まれている個人によって眼鏡が装着されると、評価されてもよい。ポーズは、ユーザの顔がどこにあるかについての知識を提供可能であり、そのため、眼鏡の検出は、顔のある場所と相互に関連している。いくつかの実現例では、プロセス800は、タスクが再レンダリングされたバリエーションのオブジェクトを有するシーンに既にあるオブジェクトを取替えることである推論時間に、オブジェクトを検出してもよい。
たとえば、オブジェクトは眼鏡104’’でもよい(図1)。眼鏡104’’は、たとえば、ユーザ104がユーザ102とテレビ会議している場合、システム108と関連付けられたカメラによって取込まれてもよい。ここでは、眼鏡104’’の従来の取込みは反射面および/または透明な面に基づいて正確に現れない場合もあるため、カメラは眼鏡104’’を検出してもよく、システム200を用いて眼鏡104’’のリアルなビューを生成してもよい。すなわち、画像および/またはビデオに取込まれたオブジェクトは透明材料および/または反射材料で構成されるオブジェクト材料の少なくとも一部を含んでもよいため、プロセス800は、システム200および/またはアーキテクチャ400を用いて、オブジェクト(眼鏡104’’)の任意の表現を修正して、たとえば、確実にオブジェクトを正確にレンダリングしてユーザ102に表示してもよい。
この例では、画像コンテンツは、少なくともユーザ(たとえば、画像104’内のユーザ)を含むテレプレゼンス画像データ(たとえば、110に示すような)を含んでもよく、オブジェクトは、眼鏡104’’を含む。しかしながら、他の例は、たとえば、反射面、透明な面、および/またはビデオにおいて再レンダリングが困難な面を有する他のオブジェクトを有する画像コンテンツを含み得る。いくつかの実現例では、オブジェクトは、反射特性を有する車の一部を含む。車の一部は、たとえば、3Dディスプレイ内で車の一部のビューを再レンダリングする場合に、反射してもよく、正確に現れなくてもよい。いくつかの実現例では、オブジェクトは、画像に取込まれた任意のオブジェクトの一部を含む。したがって、プロセス800は、生成モデル、カテゴリレベルオブジェクトモデリング技術、および/または本明細書で説明する他の技術を用いて、エラーを修正し、コンテンツの一部をレンダリングしてもよい。
ブロック804において、プロセス800は、オブジェクトの複数の3次元(3D)プロキシジオメトリ238を生成することを含む。たとえば、3Dコンテンツモデラー230は、標準プロキシジオメトリ(426、428および430)、深度マップ(たとえば、420、422、424)、ならびにサンプルバージョンのプロキシ(たとえば、414、416および418)を表し得る眼鏡104’’の3Dプロキシジオメトリ414~430を生成してもよい。サンプルプロキシ414、416および418は、眼鏡104’’の特定の特徴のジオメトリおよびテクスチャサンプリングのアトラス(たとえば、特徴マップ240)を表してもよい。いくつかの実現例では、複数の3Dプロキシジオメトリの各々は、オブジェクト(たとえば、眼鏡104’’)の少なくとも一部の粗い幾何学的近似値と、平面302、304および306と表してもよい粗い幾何学的近似値(たとえば、幾何学的近似値246)にマッピングされたオブジェクト(たとえば、眼鏡104’’)の潜在テクスチャ239とを含む。
いくつかの実現例では、複数の3Dテクスチャプロキシは、画像コンテンツ内のオブジェクトと関連付けられた表面光フィールドを符号化する。表面光フィールドはたとえば、オブジェクトと関連付けられた正反射、または特定のプロキシ面から離れた他のジオメトリ反射を含んでもよい(たとえば、レンズ反射、屈折など)。
ブロック806において、プロセス800は、複数の3Dプロキシジオメトリ238に基づいて、オブジェクト(たとえば、眼鏡104’’)の複数のニューラルテクスチャ244を生成することを含む。ここで、ニューラルテクスチャ244は、オブジェクトを表す複数の異なる形状および外観を規定する。ニューラルテクスチャ244は、画像取込みプロセスの一部として訓練された、学習された特徴マップ240の少なくとも一部を表す。たとえば、眼鏡オブジェクト104’’がカメラによって取込まれると、ニューラルテクスチャ244が、このオブジェクトのための特徴マップ240および3Dプロキシジオメトリを用いて生成されてもよい。動作中、システム200は、特定のオブジェクト(シーン)のための3Dプロキシジオメトリ238の上のマップとして、このオブジェクトのためのニューラルテクスチャ244の生成および格納を行ってもよい。
ブロック808において、プロセス800は、積層形態で提供される複数のニューラルテクスチャ244を、ニューラルレンダラー250に提供することを含む。たとえば、システム200は、ニューラルレンダラー250(たとえば、U-Net)への入力として、シェーディングバッファ(図示せず)のコンテンツを用いてもよい。
動作中、ニューラルレンダラー250は、複数のニューラルテクスチャの入力を用いて、たとえば、ニューラルネットワークを用いてレンダリングを行うオブジェクトおよび/またはシーンの中間表現を生成してもよい。ニューラルテクスチャ244は、ニューラルレンダラー250と動作しているニューラルネットワーク242など、5層U-Netと共にテクスチャマップ(たとえば、特徴マップ240)について特徴を共同で学習するために用いられてもよい。ニューラルレンダラー250は、たとえば、真の外観(たとえば、グラウンドトゥルース)と、オブジェクト固有の重畳ネットワークを有する拡散再投影との間の差をモデリングすることによって、ビューに依存する効果を組込んでもよい。そのような効果は、シーンの知識に基づいて予測することが難しい場合があり、そのため、GANベースの損失機能が、リアルな出力のレンダリングに用いられてもよい。
いくつかの実現例では、オブジェクト(たとえば、眼鏡104’’)は、ポーズ(たとえば、ポーズ412)と関連付けられる。たとえば、ポーズは、オリジナルのシーンの取込み角度でもよく、システム200およびプロセス800が生成しようとしている合成画像についての出力の所望角度でもよい。そのような例では、複数のニューラルテクスチャは、少なくとも部分的にポーズに基づく。いくつかの実現例では、ニューラルテクスチャは、オブジェクト(たとえば、眼鏡)のカテゴリを識別し、オブジェクトの識別されたカテゴリに基づいて特徴マップを生成することによって生成される(たとえば、ニューラルテクスチャ244は、積層画像414~430に変えられる)。特徴マップは、ニューラルネットワーク242(これは、ニューラルレンダラー/U-ネット250の一部でもよい)に提供されてもよい。ニューラルテクスチャ244は、ポーズ412と関連付けられたビューに基づく特徴マップ240を用いて生成されてもよい。いくつかの実現例では、ニューラルテクスチャは、識別されたカテゴリの各インスタンスと関連付けられた潜在コードと、ポーズと関連付けられたビューとに基づいて生成されてもよい。
いくつかの実現例では、ニューラルレンダラーは、生成モデルを用いて、識別されたカテゴリ内の見えないオブジェクトインスタンスを再構成し、再構成は、オブジェクト(たとえば、眼鏡104’’)の4つ未満の取込まれたビュー(たとえば、ニューラルテクスチャ406、408および410によって示される3つのビュー)に基づいてもよい。
ブロック810において、プロセス800は、複数のニューラルテクスチャに基づいて、カラー画像252と、オブジェクト(眼鏡104’’)の少なくとも一部の不透明度を表すアルファマスク254とを、ニューラルレンダラーから受信することを含む。たとえば、ニューラルレンダラー250は、4つの出力チャネルを生成してもよい。すなわち、ニューラルレンダラー250は、3つの出力チャネル(つまり、赤色チャネル、緑色チャネル、および青色チャネル)を表す色空間カラーチャネル252を生成してもよい。いくつかの実現例では、カラー画像252は、特定の画像についてどの色のレンダリングを行うかを示す色空間マップを表してもよい。第4の出力チャネルはアルファマスク254でもよく、アルファマスク254は、2つの画素が互いに重ねられると各画素をオブジェクトに示される他の画素とどのように合成すべきかを特定する特定のオブジェクトについてのチャネルを表す。一例では、アルファマスク254は、眼鏡の不透明度を表してもよい。一般に、アルファマスク254は、オブジェクトの特定のジオメトリまたは面の半透明度を表してもよい。一般に、プロセス800は、ポーズおよび視点を用いてニューラルテクスチャを最終的な画像座標にラスター化してもよく、たとえば、ニューラルレンダラーを用いて、これらのテクスチャ252/254を合成画像256の最終的な画像座標空間に処理してもよい。
ブロック812において、プロセス800は、カラー画像252およびアルファマスク256に基づいて、合成画像256を生成することを含む。たとえば、プロセス800は、潜在テクスチャ239を(たとえば、システム108のカメラによって取込まれた)対象視点にレンダリングしてもよい。対象視点は、オブジェクト(眼鏡104’’)と関連付けられたポーズ412に少なくとも部分的に基づいてもよい。いくつかの実現例では、3Dテクスチャプロキシジオメトリは、オブジェクトの少なくとも一部の粗い幾何学的近似値と、粗い幾何学的近似値にマッピングされたオブジェクトの潜在テクスチャとを含む。プロセス800の例では眼鏡について説明されているが、そうではなく、任意の数のオブジェクトが代用され、プロセス800の技術を用いてレンダリングされてもよい。
図9は、説明された技術と用い得るコンピュータデバイス900およびモバイルコンピュータデバイス950の例を示す。コンピューティングデバイス900は、プロセッサ902、メモリ904、記憶装置906、メモリ904および高速拡張ポート910に接続している高速インターフェイス908、ならびに、低速バス914および記憶装置906に接続している低速インターフェイス912を含み得る。コンポーネント902、904、906、908、910および912は、さまざまなバスを用いて相互接続され、共通のマザーボードに、または適宜他の態様で搭載可能である。プロセッサ902は、コンピュータデバイス900内で実行するための命令を処理可能であり、これらの命令は、高速インターフェイス908に結合されたディスプレイ916などの、外部入出力デバイス上のGUIのためのグラフィック情報を表示するために、メモリ904または記憶装置906に格納された命令を含む。いくつかの実施形態では、複数のメモリおよび複数の種類のメモリと共に、複数のプロセッサおよび/または複数のバスを適宜用いることができる。これに加えて、複数のコンピューティングデバイス900は、必要な動作(たとえば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステム)の一部を提供する各デバイスと接続可能である。
メモリ904は、コンピューティングデバイス900内に情報を格納する。ある実施形態では、メモリ904は、1つ以上の揮発性メモリである。他の実施形態では、メモリ904は、1つ以上の不揮発性メモリユニットである。メモリ904はまた、磁気または光学ディスクなどの他の形式コンピュータ読取可能媒体でもよい。
記憶装置906は、コンピューティングデバイス900のために大容量記憶を提供可能である。ある実現例では、記憶装置906はコンピュータ読取可能媒体でもよい、またはコンピュータ読取可能媒体を含んでもよい。記憶装置906は、フロッピー(登録商標)ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリもしくは他の同様のソリッドステートメモリデバイス、または、ストレージエリアネットワークもしくは他の構成におけるデバイスを含むデバイスのアレイであってもよい。コンピュータプログラム製品を、情報担体において有形に具現化してもよい。また、コンピュータプログラム製品は、実行されると上述のような1つ以上の方法を実行する命令を含み得る。情報担体は、メモリ904、記憶装置906、またはプロセッサ902上のメモリなどのコンピュータ読取可能媒体またはマシン読取可能媒体である。
高速コントローラ908は、コンピューティングデバイス900のための帯域幅集中型の動作を管理する一方で、低速コントローラ912は、より低帯域幅集中型の動作を管理する。このような機能の割当ては例示に過ぎない。ある実現例では、高速コントローラ908は、メモリ904、ディスプレイ916に(たとえば、グラフィックスプロセッサまたはアクセラレータを介して)結合されるとともに、さまざまな拡張カード(図示せず)を受付け得る高速拡張ポート910に結合される。低速コントローラ912は、記憶装置906および低速拡張ポート914に結合され得る。さまざまな通信ポート(たとえば、USB、ブルートゥース(登録商標)、イーサネット(登録商標)、無線イーサネット)を含み得る低速拡張ポートは、キーボード、ポインティングデバイス、スキャナなどの1つ以上の入出力デバイスに、または、スイッチもしくはルータなどのネットワーキングデバイスに、たとえばネットワークアダプタを介して結合されてもよい。
コンピューティングデバイス900は、図に示すように多くの異なる形態で実現されてもよい。たとえば、標準サーバ920として、またはそのようなサーバのグループで複数回実現されてもよい。また、ラックサーバシステム924の一部として実現されてもよい。さらに、ラップトップコンピュータ922などのパーソナルコンピュータにおいて実現されてもよい。または、コンピューティングデバイス900からのコンポーネントは、デバイス950など、モバイルデバイス(図示せず)における他のコンポーネントと組合わされてもよい。そのようなデバイスの各々は、コンピューティングデバイス900、950のうちの1つ以上を含んでもよく、システム全体は、互いに通信する複数のコンピューティングデバイス900、950で形成されてもよい。
コンピューティングデバイス950は、いくつかあるコンポーネントの中で特に、プロセッサ952と、メモリ964と、ディスプレイ954などの入出力デバイスと、通信インターフェイス966と、トランシーバ968とを含む。デバイス950には、さらに他のストレージを提供するために、マイクロドライブまたは他のデバイスなどの記憶装置が設けられてもよい。コンポーネント950、952、964、954、966および968の各々は、さまざまなバスを用いて相互接続されており、共通のマザーボード上にまたは他の態様で適宜搭載されてもよい。
プロセッサ952は、メモリ964に格納された命令を含む、コンピューティングデバイス950内の命令を実行可能である。プロセッサは、別々の複数のアナログおよびデジタルプロセッサを含むチップのチップセットとして実現されてもよい。プロセッサはたとえば、ユーザインターフェイスの制御、デバイス950によって実行されるアプリケーション、およびデバイス950による無線通信など、デバイス950の他のコンポーネントの協調を提供してもよい。
プロセッサ952は、ディスプレイ954に結合された制御インターフェイス958および表示インターフェイス956を介して、ユーザと通信してもよい。ディスプレイ954はたとえば、TFT LCD(薄膜トランジスタ液晶表示装置)またはOLED(有機発光ダイオード)ディスプレイ、または他の任意の表示技術でもよい。表示インターフェイス956は、ディスプレイ954を駆動してグラフィカルなおよび他の情報をユーザに提示するための任意の回路構成を含み得る。制御インターフェイス958は、ユーザからのコマンドを受信し、プロセッサ952に送信するために変換してもよい。くわえて、外部インターフェイス962は、デバイス950の他のデバイスとの近接領域通信を可能にするように、プロセッサ952と通信してもよい。外部インターフェイス962は、たとえば、有線通信または無線通信を提供してもよく、他の実施形態では、複数のインターフェイスが用いられてもよい。
メモリ964は、コンピューティングデバイス950内の情報を格納する。メモリ964は、1つ以上のコンピュータ読取可能媒体、1つ以上の揮発性メモリユニット、または1つ以上の不揮発性メモリユニットのうちの1つ以上として実現され得る。拡張メモリ984もデバイス950に提供され、たとえばSIMM(シングル・インライン・メモリ・モジュール)カードインターフェイスを含み得る拡張インターフェイス972を介して接続されてもよい。そのような拡張メモリ984は、デバイス950のための追加の記憶空間を提供してもよい、または、デバイス950のためのアプリケーションまたは他の情報も格納してもよい。具体的には、拡張メモリ984は上述のプロセスを実行または補足するための命令を含んでもよく、セキュアな情報も含んでもよい。このため、拡張メモリ984はたとえば、デバイス950のためのセキュリティモジュールであってもよく、デバイス950のセキュアな使用を可能にする命令を用いてプログラムされてもよい。くわえて、識別情報をハッキング不可能な態様でSIMMカード上に載せるなどして、セキュアなアプリケーションが追加情報とともにSIMMカードを介して提供されてもよい。
メモリは、以下に説明するように、たとえばフラッシュメモリおよび/またはNVRAMメモリを含んでもよい。ある実施形態では、コンピュータプログラム製品が情報担体において有形に具体化される。コンピュータプログラム製品は、実行されると上述のような1つ以上の方法を行う命令を含む。情報担体は、たとえばトランシーバ968または外部インターフェイス962を介して受信され得る、メモリ964、拡張メモリ984、またはプロセッサ952上のメモリといった、コンピュータまたはマシン読取可能媒体である。
デバイス950は、必要に応じてデジタル信号処理回路を含み得る通信インターフェイス966を介して無線通信してもよい。通信インターフェイス966は、とりわけ、GSM(登録商標)音声通話、SMS、EMSまたはMMSメッセージング、CDMA、TDMA、PDC、WCDMA(登録商標)、CDMA2000、またはGPRSといった、さまざまなモードまたはプロトコル下で通信を提供してもよい。そのような通信は、たとえば無線周波数トランシーバ968を介して発生してもよい。くわえて、ブルートゥース、Wi-Fi、または他のそのようなトランシーバ(図示せず)を使用するなどして、短距離通信が発生してもよい。くわえて、GPS(全地球測位システム)レシーバモジュール980が、ナビゲーションおよび位置に関連する追加の無線データをデバイス950に提供してもよく、当該データは、デバイス950上で実行されるアプリケーションによって適宜使用されてもよい。
デバイス950はまた、ユーザから口頭情報を受信してそれを使用可能なデジタル情報に変換し得る音声コーデック960を用いて、可聴的に通信してもよい。音声コーデック960も同様に、たとえばデバイス950のハンドセットにおいて、スピーカなどを介してユーザのために可聴音を生成してもよい。そのような音は、音声電話からの音を含んでもよい、録音された音(たとえば、音声メッセージ、音楽ファイルなど)を含んでもよい、または、デバイス950上で動作するアプリケーションによって生成された音を含んでもよい。
コンピューティングデバイス950は、図に示すように多くの異なる形態で実現されてもよい。たとえば、携帯電話980として実現されてもよい。また、スマートフォン982、携帯情報端末、または他の同様のモバイルデバイスの一部として実現されてもよい。
ここで説明するシステムおよび技術のさまざまな実現例は、デジタル電子回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはこれらの組合せで実現され得る。これらのさまざまな実現例は、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および/または解釈可能である1つ以上のコンピュータプログラムにおける実現例を含んでもよく、当該プロセッサは専用であっても汎用であってもよく、ストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスとの間でデータおよび命令を送受信するように結合されてもよい。
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られる)はプログラマブルプロセッサのためのマシン命令を含んでおり、高レベルの手続き型および/またはオブジェクト指向型プログラミング言語で、および/またはアセンブリ/マシン言語で実現され得る。本明細書で使用される「マシン読取可能媒体」、「コンピュータ読取可能媒体」という用語は、マシン命令および/またはデータをプログラマブルプロセッサに提供するために使用される任意のコンピュータプログラム製品、装置、および/またはデバイス(たとえば、磁気ディスク、光学ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指しており、マシン命令をマシン読取可能信号として受信するマシン読取可能媒体を含む。「マシン読取可能信号」という用語は、マシン命令および/またはデータをプログラマブルプロセッサに提供するために使用される任意の信号を指す。
ユーザとの対話を提供するために、ここで説明するシステムおよび技術は、情報をユーザに表示するための表示デバイス(たとえば、CRT(ブラウン管)またはLCD(液晶ディスプレイ)モニタ)と、ユーザがコンピュータに入力を提供するために使用し得るキーボードおよびポインティングデバイス(たとえば、マウスまたはトラックボール)とを有するコンピュータ上で実現され得る。他の種類のデバイスも、同様にユーザとの対話を提供するために使用され得る。たとえば、ユーザに提供されるフィードバックは、任意の形態の知覚フィードバック(たとえば視覚フィードバック、聴覚フィードバック、または触覚フィードバック)であってもよく、ユーザからの入力は、音響入力、音声入力、または触覚入力を含む任意の形態で受信されてもよい。
ここで説明するシステムおよび技術は、バックエンドコンポーネント(たとえば、データサーバ)を含む、もしくは、ミドルウェアコンポーネント(たとえば、アプリケーションサーバ)を含む、もしくは、フロントエンドコンポーネント(たとえば、ここで説明するシステムおよび技術の実施形態とユーザが対話できるようにするグラフィカルユーザインターフェイスまたはウェブブラウザを有するクライアントコンピュータ)を含む、もしくは、そのようなバックエンドコンポーネント、ミドルウェアコンポーネント、またはフロントエンドコンポーネントの任意の組合せを含む、コンピューティングシステムで実現され得る。システムのコンポーネントは、デジタルデータ通信の任意の形態または媒体(たとえば、通信ネットワーク)によって相互接続され得る。通信ネットワークの例は、ローカルエリアネットワーク(「LAN」)、ワイドエリアネットワーク(「WAN」)、およびインターネットを含む。
コンピューティングシステムは、クライアントとサーバとを含み得る。クライアントとサーバとは一般に互いから離れており、典型的には通信ネットワークを介して対話する。クライアントとサーバとの関係は、コンピュータプログラムがそれぞれのコンピュータ上で実行され、かつ、互いにクライアント-サーバ関係を有することによって生じる。
いくつかの実施形態では、図9に示すコンピューティングデバイスは、仮想現実ヘッドセット(VRヘッドセット/HMDデバイス990)とインターフェイス接続するセンサを含み得る。たとえば、図9に示すコンピューティングデバイス950または他のコンピューティングデバイスに含まれる1つ以上のセンサが、VRヘッドセット990に入力を提供可能である、または概して、VR空間に入力を提供可能である。センサは、タッチスクリーン、加速度計、ジャイロスコープ、圧力センサ、バイオメトリックセンサ、温度センサ、湿度センサ、および周囲光センサを含み得るものの、これらに限定されない。コンピューティングデバイス950はこれらのセンサを用いて、VR空間におけるコンピューティングデバイスの絶対位置および/または検出された回転を判断することができ、それは次にVR空間への入力として使用され得る。たとえば、コンピューティングデバイス950は、コントローラ、レーザポインタ、キーボード、武器などといった仮想オブジェクトとして、VR空間に組込まれてもよい。VR空間に組込まれた際のユーザによるコンピューティングデバイス/仮想オブジェクトの位置決めによって、ユーザは、VR空間において仮想オブジェクトを特定の態様で見るようにコンピューティングデバイスを位置決めすることができる。
いくつかの実施形態では、コンピューティングデバイス950に含まれるか、またはそれに接続される1つ以上の入力デバイスが、VR空間への入力として使用され得る。入力デバイスは、タッチスクリーン、キーボード、1つ以上のボタン、トラックパッド、タッチパッド、ポインティングデバイス、マウス、トラックボール、ジョイスティック、カメラ、マイク、入力機能性を有するイヤホンまたはイヤバッド、ゲーミングコントローラ、または他の接続可能な入力デバイスを含み得るものの、これらに限定されない。コンピューティングデバイスがVR空間に組込まれる際にコンピューティングデバイス950に含まれる入力デバイスと対話するユーザは、特定のアクションがVR空間で生じるようにすることができる。
いくつかの実施形態では、コンピューティングデバイス950に含まれる1つ以上の出力デバイスは、VR空間においてVRヘッドセット990のユーザに出力および/またはフィードバックを提供することができる。出力およびフィードバックは、視覚的、触覚的、または音声的であり得る。出力および/またはフィードバックは、振動、1つ以上のライトもしくはストロボを明滅および/または点滅させること、警報を鳴らすこと、チャイムを鳴らすこと、曲をかけること、ならびに音声ファイルを再生することを含み得るものの、これらに限定されない。出力デバイスは、振動モータ、振動コイル、圧電装置、静電装置、発光ダイオード(LED)、ストロボ、およびスピーカを含み得るものの、これらに限定されない。
いくつかの実施形態では、コンピューティングデバイス950は、VRシステムを生成するためにVRヘッドセット990内に設けられてもよい。VRヘッドセット990は、VRヘッドセット990内の任意の位置にあるスマートフォン982など、コンピューティングデバイス950を設けることを可能にする1つ以上の位置決め要素を含み得る。そのような実施形態では、スマートフォン982の表示は、VR空間または仮想環境を表す立体画像のレンダリングが可能である。
いくつかの実施形態では、コンピューティングデバイス950は、コンピュータにより生成される3D環境において別のオブジェクトとして現れてもよい。ユーザによるコンピューティングデバイス950との対話(たとえば、タッチスクリーンを回転させること、振動させること、タッチスクリーンに触れること、タッチスクリーンを横切って指でスワイプすること)は、VR空間におけるオブジェクトとの対話として解釈され得る。単に一例として、コンピューティングデバイスはレーザポインタでもよい。そのような例では、コンピューティングデバイス950は、コンピュータにより生成される3D環境において仮想レーザポインタとして現れる。ユーザがコンピューティングデバイス950を操作すると、VR空間におけるユーザはレーザポインタの動きを見る。ユーザは、コンピューティングデバイス950またはVRヘッドセット990上のVR環境においてコンピューティングデバイス950との対話からのフィードバックを受信する。
いくつかの実施形態では、コンピューティングデバイス950はタッチスクリーンを含んでもよい。たとえば、ユーザは、タッチスクリーン上で起こることをVR空間において起こることで模倣することができる特定の態様で、タッチスクリーンと対話することができる。たとえば、ユーザは、タッチスクリーン上に表示されるコンテンツをズームするためにピンチする動きを使用してもよい。タッチスクリーン上でのこのピンチする動きにより、VR空間において提供される情報のズームが可能である。別の例では、コンピューティングデバイスは、コンピュータにより生成される3D環境において仮想の本としてレンダリングされてもよい。VR空間では、本のページはVR空間で表示可能であり、タッチスクリーンを横切るユーザの指のスワイプは仮想の本のページをめくるおよび/またはフリップすることとして解釈され得る。各ページがめくられるおよび/またはフリップされると、ページコンテンツの変化が見えることに加えて、ユーザには、本のページをめくる音といった音声フィードバックが提供されてもよい。
いくつかの実施形態では、コンピューティングデバイスに加えて、1つ以上の入力デバイス(たとえばマウス、キーボード)が、コンピュータにより生成される3D環境においてレンダリング可能である。レンダリングされた入力デバイス(たとえばレンダリングされたマウス、レンダリングされたキーボード)は、VR空間においてオブジェクトを制御するためにVR空間においてレンダリングされるように使用可能である。
コンピューティングデバイス900は、ラップトップ、デスクトップ、ワークステーション、携帯情報端末、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータを含むもののこれらに限定されない、さまざまな形態のデジタルコンピュータを表わすように意図されている。コンピューティングデバイス950は、携帯情報端末、携帯電話、スマートフォン、および他の同様のコンピューティングデバイスといった、さまざまな形態のモバイルデバイスを表わすと意図されている。ここに示すコンポーネント、これらの接続および関係、ならびにこれらの機能は単なる例示として意図されており、開示された実施形態を限定するように意図されてはいない。
さらに、図面に示されるロジックフローは、望ましい結果を得るために、図示される特定の順番または順序を必要としない。さらに、他のステップを設けてもよく、または、上述のフローからステップを削除してもよく、説明したシステムに対して他のコンポーネントを追加または削除してもよい。したがって、他の実施形態は以下の請求項の範囲内である。

Claims (22)

  1. 少なくとも1つの処理デバイスを用いて動作を行う、コンピュータによって実現される方法であって、前記動作は、
    画像コンテンツ内のオブジェクトと関連付けられたポーズを受信することと、
    前記オブジェクトの複数の3次元(3D)プロキシジオメトリを生成することとを含み、前記複数の3Dプロキシジオメトリは、前記オブジェクトの形状に基づき、さらに、
    前記複数の3Dプロキシジオメトリに基づいて、前記オブジェクトの複数のニューラルテクスチャを生成することを含み、前記複数のニューラルテクスチャは、前記オブジェクトを表す複数の異なる形状および外観を規定し、さらに、
    積層形態で提供される前記複数のニューラルテクスチャを、ニューラルレンダラーに提供することと、
    前記複数のニューラルテクスチャに基づいて、カラー画像と、前記オブジェクトの少なくとも一部の不透明度を表すアルファマスクとを、前記ニューラルレンダラーから受信することと、
    記カラー画像、および前記アルファマスクに基づいて、合成画像を生成することとを含み、
    前記複数のニューラルテクスチャは、前記画像コンテンツにおいて取込まれた前記オブジェクトの隠れた部分を再構成するように構成される、方法。
  2. 前記オブジェクトと関連付けられた前記ポーズに少なくとも部分的に基づいて、対象視点に対して潜在テクスチャをレンダリングすることをさらに含み、前記複数の3Dプロキシジオメトリの各々は、前記オブジェクトの少なくとも一部の粗い幾何学的近似値と、前記粗い幾何学的近似値にマッピングされた前記オブジェクトの前記潜在テクスチャとを含む、請求項1に記載の方法。
  3. 記隠れた部分は、前記ニューラルレンダラーが、前記オブジェクトの透明層と、前記オブジェクトの前記透明層の背後の面とを生成することを可能にする前記ニューラルテクスチャの前記積層形態に基づいて再構成される、請求項1または請求項2に記載の方法。
  4. 前記複数の3Dプロキシジオメトリの各々は、前記画像コンテンツ内の前記オブジェクトと関連付けられた表面光フィールドを符号化し、前記表面光フィールドは、前記オブジェクトと関連付けられた正反射を含む、請求項1~請求項3のいずれか1項に記載の方法。
  5. 少なくとも1つの処理デバイスを用いて動作を行う、コンピュータによって実現される方法であって、前記動作は、
    画像コンテンツ内のオブジェクトと関連付けられたポーズを受信することと、
    前記オブジェクトの複数の3次元(3D)プロキシジオメトリを生成することとを含み、前記複数の3Dプロキシジオメトリは、前記オブジェクトの形状に基づき、さらに、
    前記複数の3Dプロキシジオメトリに基づいて、前記オブジェクトの複数のニューラルテクスチャを生成することを含み、前記複数のニューラルテクスチャは、前記オブジェクトを表す複数の異なる形状および外観を規定し、さらに、
    積層形態で提供される前記複数のニューラルテクスチャを、ニューラルレンダラーに提供することと、
    前記複数のニューラルテクスチャに基づいて、カラー画像と、前記オブジェクトの少なくとも一部の不透明度を表すアルファマスクとを、前記ニューラルレンダラーから受信することと、
    前記カラー画像、および前記アルファマスクに基づいて、合成画像を生成することとを含み、
    前記複数のニューラルテクスチャは、少なくとも部分的に前記ポーズに基づき、前記ニューラルテクスチャは、
    前記オブジェクトのカテゴリを識別することと、
    前記オブジェクトの識別された前記カテゴリに基づいて、特徴マップを生成することと、
    前記特徴マップをニューラルネットワークに提供することと、
    識別された前記カテゴリの各インスタンスと関連付けられた潜在コードと、
    前記ポーズと関連付けられたビューとに基づいて、前記ニューラルテクスチャを生成することとによって生成される方法。
  6. 前記オブジェクトの少なくとも一部は透明材料である、請求項1~請求項5のいずれか1項に記載の方法。
  7. 前記オブジェクトの少なくとも一部は反射材料である、請求項1~請求項5のいずれか1項に記載の方法。
  8. 前記画像コンテンツは、少なくともユーザを含むテレプレゼンス画像データを含み、
    前記オブジェクトは眼鏡を含む、請求項1~請求項7のいずれか1項に記載の方法。
  9. システムであって、
    少なくとも1つの処理デバイスと、
    実行されると前記システムに動作を行わせる命令を格納したメモリとを備え、前記動作は、
    画像コンテンツ内のオブジェクトと関連付けられたポーズを受信することと、
    前記オブジェクトの複数の3次元(3D)プロキシジオメトリを生成することとを含み、前記複数の3Dプロキシジオメトリは、前記オブジェクトの形状に基づき、さらに、
    前記複数の3Dプロキシジオメトリに基づいて、前記オブジェクトの複数のニューラルテクスチャを生成することを含み、前記複数のニューラルテクスチャは、前記オブジェクトを表す複数の異なる形状および外観を規定し、さらに、
    積層形態で提供される前記複数のニューラルテクスチャを、ニューラルレンダラーに提供することと、
    前記複数のニューラルテクスチャに基づいて、カラー画像と、
    前記オブジェクトの少なくとも一部の不透明度を表すアルファマスクとを、前記ニューラルレンダラーから受信することと、
    前記カラー画像と前記アルファマスクとに基づいて、合成画像を生成することとを含み、
    前記複数のニューラルテクスチャは、前記画像コンテンツにおいて取込まれた前記オブジェクトの隠れた部分を再構成するように構成される、システム。
  10. 前記オブジェクトと関連付けられた前記ポーズに少なくとも部分的に基づいて、対象視点に対して潜在テクスチャをレンダリングすることをさらに含み、前記複数の3Dプロキシジオメトリの各々は、前記オブジェクトの少なくとも一部の粗い幾何学的近似値と、
    前記粗い幾何学的近似値にマッピングされた前記オブジェクトの前記潜在テクスチャとを含む、請求項9に記載のシステム。
  11. 前記複数の3Dプロキシジオメトリの各々は、前記画像コンテンツ内の前記オブジェクトと関連付けられた表面光フィールドを符号化し、前記表面光フィールドは、前記オブジェクトと関連付けられた正反射を含む、請求項9または請求項10に記載のシステム。
  12. システムであって、
    少なくとも1つの処理デバイスと、
    実行されると前記システムに動作を行わせる命令を格納したメモリとを備え、前記動作は、
    画像コンテンツ内のオブジェクトと関連付けられたポーズを受信することと、
    前記オブジェクトの複数の3次元(3D)プロキシジオメトリを生成することとを含み、前記複数の3Dプロキシジオメトリは、前記オブジェクトの形状に基づき、さらに、
    前記複数の3Dプロキシジオメトリに基づいて、前記オブジェクトの複数のニューラルテクスチャを生成することを含み、前記複数のニューラルテクスチャは、前記オブジェクトを表す複数の異なる形状および外観を規定し、さらに、
    積層形態で提供される前記複数のニューラルテクスチャを、ニューラルレンダラーに提供することと、
    前記複数のニューラルテクスチャに基づいて、カラー画像と、
    前記オブジェクトの少なくとも一部の不透明度を表すアルファマスクとを、前記ニューラルレンダラーから受信することと、
    前記カラー画像と前記アルファマスクとに基づいて、合成画像を生成することとを含み、
    前記複数のニューラルテクスチャは、少なくとも部分的に前記ポーズに基づき、前記ニューラルテクスチャは、
    前記オブジェクトのカテゴリを識別することと、
    前記オブジェクトの識別された前記カテゴリに基づいて、特徴マップを生成することと、
    前記特徴マップをニューラルネットワークに提供することと、
    識別された前記カテゴリの各インスタンスと関連付けられた潜在コードと、
    前記ポーズと関連付けられたビューとに基づいて、前記ニューラルテクスチャを生成することとによって生成されるシステム。
  13. 前記ニューラルレンダラーは、生成モデルを使用して、識別された前記カテゴリ内の見えないオブジェクトインスタンスを再構成し、前記再構成は、前記オブジェクトの4つ未満の取込まれたビューに基づく、請求項12に記載のシステム。
  14. 前記複数の3Dプロキシジオメトリは、前記画像コンテンツ内の前記オブジェクトを構成する形状の幾何学的補間に基づく、請求項9~請求項13のいずれか1項に記載のシステム。
  15. 命令を含むプログラムであって、前記命令は、プロセッサによって実行されると、
    コンピューティングデバイスに、
    画像コンテンツ内のオブジェクトと関連付けられたポーズを受信することと、
    前記オブジェクトの複数の3次元(3D)プロキシジオメトリを生成することとを行わせ、前記複数の3Dプロキシジオメトリは、前記オブジェクトの形状に基づき、さらに、
    前記複数の3Dプロキシジオメトリに基づいて、前記オブジェクトの複数のニューラルテクスチャを生成することを行わせ、前記複数のニューラルテクスチャは、前記オブジェクトを表す複数の異なる形状および外観を規定し、さらに、
    積層形態で提供される前記複数のニューラルテクスチャを、ニューラルレンダラーに提供することと、
    前記複数のニューラルテクスチャに基づいて、カラー画像と、前記オブジェクトの少なくとも一部の不透明度を表すアルファマスクとを、前記ニューラルレンダラーから受信することと、
    前記カラー画像と前記アルファマスクとに基づいて、合成画像を生成することとを行わせ
    前記複数のニューラルテクスチャは、前記画像コンテンツにおいて取込まれた前記オブジェクトの隠れた部分を再構成するように構成される、プログラム。
  16. 前記オブジェクトと関連付けられた前記ポーズに少なくとも部分的に基づいて、対象視点に対して潜在テクスチャをレンダリングすることをさらに含み、前記複数の3Dプロキシジオメトリの各々は、前記オブジェクトの少なくとも一部の粗い幾何学的近似値と、前記粗い幾何学的近似値にマッピングされた前記オブジェクトの前記潜在テクスチャとを含む、請求項15に記載のプログラム。
  17. 記隠れた部分は、前記ニューラルレンダラーが、前記オブジェクトの透明層と、前記オブジェクトの前記透明層の背後の面とを生成することを可能にする前記ニューラルテクスチャの前記積層形態に基づいて再構成される、請求項15または請求項16に記載のプログラム。
  18. 命令を含むプログラムであって、前記命令は、プロセッサによって実行されると、
    コンピューティングデバイスに、
    画像コンテンツ内のオブジェクトと関連付けられたポーズを受信することと、
    前記オブジェクトの複数の3次元(3D)プロキシジオメトリを生成することとを行わせ、前記複数の3Dプロキシジオメトリは、前記オブジェクトの形状に基づき、さらに、
    前記複数の3Dプロキシジオメトリに基づいて、前記オブジェクトの複数のニューラルテクスチャを生成することを行わせ、前記複数のニューラルテクスチャは、前記オブジェクトを表す複数の異なる形状および外観を規定し、さらに、
    積層形態で提供される前記複数のニューラルテクスチャを、ニューラルレンダラーに提供することと、
    前記複数のニューラルテクスチャに基づいて、カラー画像と、前記オブジェクトの少なくとも一部の不透明度を表すアルファマスクとを、前記ニューラルレンダラーから受信することと、
    前記カラー画像と前記アルファマスクとに基づいて、合成画像を生成することとを行わせ、
    前記複数のニューラルテクスチャは、少なくとも部分的に前記ポーズに基づき、前記ニューラルテクスチャは、
    前記オブジェクトのカテゴリを識別することと、
    前記オブジェクトの識別された前記カテゴリに基づいて、特徴マップを生成することと、
    前記特徴マップをニューラルネットワークに提供することと、
    識別された前記カテゴリの各インスタンスと関連付けられた潜在コードと、
    前記ポーズと関連付けられたビューとに基づいて、前記ニューラルテクスチャを生成することとによって生成されるプログラム。
  19. 前記オブジェクトの少なくとも一部は透明材料である、請求項15~請求項18のいずれか1項に記載のプログラム。
  20. 前記オブジェクトの少なくとも一部は反射材料である、請求項15~請求項18のいずれか1項に記載のプログラム。
  21. 前記画像コンテンツは、少なくともユーザを含むテレプレゼンス画像データを含み、
    前記オブジェクトは眼鏡を含む、請求項15~請求項20のいずれか1項に記載のプログラム。
  22. 前記合成画像は、生成潜在最適化(GLO)フレームワークおよび知覚再構成損失を用いて生成される、請求項15~請求項21のいずれか1項に記載のプログラム。
JP2021553141A 2020-06-30 2020-08-04 オブジェクトカテゴリモデリングのための生成潜在テクスチャプロキシ Active JP7329612B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202062705500P 2020-06-30 2020-06-30
US62/705,500 2020-06-30
PCT/US2020/070359 WO2022005523A1 (en) 2020-06-30 2020-08-04 Generative latent textured proxies for object category modeling

Publications (2)

Publication Number Publication Date
JP2022542207A JP2022542207A (ja) 2022-09-30
JP7329612B2 true JP7329612B2 (ja) 2023-08-18

Family

ID=72240544

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021553141A Active JP7329612B2 (ja) 2020-06-30 2020-08-04 オブジェクトカテゴリモデリングのための生成潜在テクスチャプロキシ

Country Status (6)

Country Link
US (1) US11710287B2 (ja)
EP (1) EP3959688B1 (ja)
JP (1) JP7329612B2 (ja)
KR (1) KR20220004008A (ja)
CN (1) CN114175097A (ja)
WO (1) WO2022005523A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11887241B2 (en) * 2020-12-23 2024-01-30 Adobe Inc. Learning 2D texture mapping in volumetric neural rendering
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
US11663775B2 (en) * 2021-04-19 2023-05-30 Adobe, Inc. Generating physically-based material maps
US11503270B1 (en) * 2021-08-10 2022-11-15 Varjo Technologies Oy Imaging systems and methods for facilitating local lighting
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
US20230344975A1 (en) * 2022-04-22 2023-10-26 Faurecia Irystec Inc. System and method for controlling perceptual three-dimensional elements for display
CN114842121B (zh) * 2022-06-30 2022-09-09 北京百度网讯科技有限公司 贴图生成模型训练和贴图生成方法、装置、设备及介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190213772A1 (en) 2018-01-08 2019-07-11 Oculus Vr, Llc Systems and methods for rendering avatars with deep appearance models

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10529137B1 (en) * 2016-11-29 2020-01-07 MAX-PLANCK-Gesellschaft zur Förderung der Wissenschaften e.V. Machine learning systems and methods for augmenting images
US11062502B2 (en) * 2019-04-09 2021-07-13 Facebook Technologies, Llc Three-dimensional modeling volume for rendering images
US11010951B1 (en) * 2020-01-09 2021-05-18 Facebook Technologies, Llc Explicit eye model for avatar
US11393158B2 (en) * 2020-04-02 2022-07-19 Adobe Inc. Utilizing voxel feature transformations for deep novel view synthesis

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190213772A1 (en) 2018-01-08 2019-07-11 Oculus Vr, Llc Systems and methods for rendering avatars with deep appearance models

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Ricardo Martin-Brualla, et al.,GeLaTO: Generative Latent Textured Objects,European Conference on Computer Vision,インターネット<URL:https://arxiv.org/abs/2008.04852>,2020年08月11日
Stephen Lombardi, et al.,Neural Volumes: Learning Dynamic Renderable Volumes from Images,ACM Transactions on Graphics,2019年07月,Vol. 38, No. 4,65:1 - 65.14

Also Published As

Publication number Publication date
US11710287B2 (en) 2023-07-25
KR20220004008A (ko) 2022-01-11
EP3959688B1 (en) 2023-07-19
US20220051485A1 (en) 2022-02-17
WO2022005523A1 (en) 2022-01-06
EP3959688A1 (en) 2022-03-02
JP2022542207A (ja) 2022-09-30
CN114175097A (zh) 2022-03-11

Similar Documents

Publication Publication Date Title
JP7329612B2 (ja) オブジェクトカテゴリモデリングのための生成潜在テクスチャプロキシ
JP7386888B2 (ja) 画面上の話者のフューショット合成
US10096157B2 (en) Generation of three-dimensional imagery from a two-dimensional image using a depth map
TWI813098B (zh) 用於新穎視圖合成之神經混合
CN111051959B (zh) 使用来自先前视角的渲染内容和非渲染内容生成新帧
JP6553184B2 (ja) デジタルビデオのレンダリング
Li et al. Immersive neural graphics primitives
US20230368432A1 (en) Synthesized Camera Arrays for Rendering Novel Viewpoints
JP2023551864A (ja) 自動立体テレプレゼンスシステムのための3次元(3d)顔特徴追跡
US20230396750A1 (en) Dynamic resolution of depth conflicts in telepresence
JP7426413B2 (ja) ブレンドモード3次元ディスプレイシステムおよび方法
US20240153201A1 (en) Image Generation System with Controllable Scene Lighting
Thatte et al. Real-World Virtual Reality With Head-Motion Parallax
Ali et al. 3D VIEW: Designing of a Deception from Distorted View-dependent Images and Explaining interaction with virtual World.

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210910

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210910

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221101

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20230130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230328

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: 20230711

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230807

R150 Certificate of patent or registration of utility model

Ref document number: 7329612

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150