(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-11-10
(54)【発明の名称】2次元画像に基づく3次元メッシュ発生器
(51)【国際特許分類】
G06T 17/20 20060101AFI20231102BHJP
G06T 7/00 20170101ALI20231102BHJP
【FI】
G06T17/20
G06T7/00 350C
G06T7/00 660Z
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023526010
(86)(22)【出願日】2020-10-29
(85)【翻訳文提出日】2023-06-09
(86)【国際出願番号】 IB2020060180
(87)【国際公開番号】W WO2022090775
(87)【国際公開日】2022-05-05
(81)【指定国・地域】
(71)【出願人】
【識別番号】521546728
【氏名又は名称】ヒンジ ヘルス, インコーポレイテッド
(74)【代理人】
【識別番号】100078282
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】ザンジュネープール, ソエイユ
(72)【発明者】
【氏名】ブラウン, コリン ジョゼフ
(72)【発明者】
【氏名】クルシェウスキ, ポール アンソニー
【テーマコード(参考)】
5B080
5L096
【Fターム(参考)】
5B080AA14
5B080BA00
5B080CA00
5L096AA02
5L096AA06
5L096FA66
5L096HA11
5L096KA04
(57)【要約】
装置が、提供される。本装置は、外部ソースから未加工データを受信するための通信インターフェースを含む。未加工データは、オブジェクトの表現を含む。さらに、本装置は、未加工データを記憶するためのメモリ記憶ユニットを含む。本装置はまた、未加工データから粗セグメント化マップおよび関節ヒートマップを発生させるための前処理エンジンも含む。粗セグメント化マップは、オブジェクトの輪郭を描くためのものであり、関節ヒートマップは、オブジェクト上の点を表すためのものである。本装置はさらに、未加工データ、粗セグメント化マップ、および関節ヒートマップを受信するためのニューラルネットワークエンジンも含む。ニューラルネットワークエンジンは、複数の2次元マップを発生させるためのものである。また、本装置は、複数の2次元マップに基づいて3次元メッシュを発生させるためのメッシュ生成器エンジンも含む。
【特許請求の範囲】
【請求項1】
装置であって、
外部ソースから未加工データを受信するための通信インターフェースであって、前記未加工データは、オブジェクトの表現を含む、通信インターフェースと、
前記未加工データを記憶するためのメモリ記憶ユニットと、
前記未加工データから粗セグメント化マップおよび関節ヒートマップを発生させるための前処理エンジンであって、前記粗セグメント化マップは、前記オブジェクトの輪郭を描くためのものであり、前記関節ヒートマップは、前記オブジェクト上の点を表すためのものである、前処理エンジンと、
前記未加工データ、前記粗セグメント化マップ、および前記関節ヒートマップを受信するためのニューラルネットワークエンジンであって、前記ニューラルネットワークエンジンは、複数の2次元マップを発生させるためのものである、ニューラルネットワークエンジンと、
前記複数の2次元マップに基づいて3次元メッシュを発生させるためのメッシュ生成器エンジンと
を備える、装置。
【請求項2】
前記未加工データは、2次元画像である、請求項1に記載の装置。
【請求項3】
前記2次元画像は、RGB画像である、請求項2に記載の装置。
【請求項4】
前記オブジェクトは、人である、請求項1-3のいずれか1項に記載の装置。
【請求項5】
前記前処理エンジンは、複数の関節ヒートマップを発生させるためのものであり、前記ニューラルネットワークエンジンは、前記複数の関節ヒートマップを使用し、前記複数の2次元マップを発生させるためのものであり、前記複数の関節ヒートマップは、前記関節ヒートマップを含む、請求項4に記載の装置。
【請求項6】
前記複数の関節ヒートマップは、左眼、右眼、左肩、右肩、左肘、右肘、左手首、右手首、左臀部、右臀部、左膝、右膝、左足首、右足首、左足指、および右足指のそれぞれに関して別個のヒートマップを含む、請求項5に記載の装置。
【請求項7】
前記ニューラルネットワークエンジンは、完全畳み込みネットワークを使用するためのものである、請求項1-6のいずれか1項に記載の装置。
【請求項8】
前記完全畳み込みネットワークは、半教師あり2段積層U-netを含む、請求項7に記載の装置。
【請求項9】
前記複数の2次元マップは、細セグメント化マップと、距離マップと、厚さマップと、正面赤色マップと、正面緑色マップと、正面青色マップと、背面赤色マップと、背面緑色マップと、背面青色マップと、請求項1-8のいずれか1項に記載の装置。
【請求項10】
前記複数の2次元マップはさらに、第1の正面法線マップと、第2の正面法線マップと、第1の背面法線マップと、第2の背面法線マップとを含み、前記ニューラルネットワークエンジンの訓練プロセスを改良する、請求項9に記載の装置。
【請求項11】
前記距離マップは、基準面と正面との間にある距離を含む、請求項9または10に記載の装置。
【請求項12】
前記基準面は、カメラ面と前記オブジェクトとの間にある、請求項11に記載の装置。
【請求項13】
前記ニューラルネットワークエンジンは、前記未加工データから照明および陰データを除去するためのものである、請求項9-12のいずれか1項に記載の装置。
【請求項14】
前記メッシュ生成器エンジンは、前記細セグメント化マップ内に前記3次元メッシュを発生させ、セグメント化から外れたピクセルを破棄する、請求項9-13のいずれか1項に記載の装置。
【請求項15】
方法であって、
通信インターフェースを介して外部ソースから未加工データを受信することであって、前記未加工データは、人の表現を含む、ことと、
前記未加工データをメモリ記憶ユニット内に記憶することと、
前処理エンジンを介して前記未加工データから粗セグメント化マップおよび関節ヒートマップを発生させることであって、前記粗セグメント化マップは、前記人の輪郭を描くためのものであり、前記関節ヒートマップは、前記人上の関節を表すためのものである、ことと、
前記未加工データ、前記粗セグメント化マップ、および前記関節ヒートマップにニューラルネットワークを適用し、複数の2次元マップを発生させることと、
前記複数の2次元マップに基づいて3次元メッシュを発生させることと
を含む、方法。
【請求項16】
前記未加工データを受信することは、2次元画像を受信することを含む、請求項15に記載の方法。
【請求項17】
前記2次元画像を受信することは、RGB画像を受信することを含む、請求項16に記載の方法。
【請求項18】
複数の関節ヒートマップを発生させることをさらに含み、前記複数の関節ヒートマップは、前記ニューラルネットワークによって前記複数の2次元マップを発生させるために使用され、前記複数の関節ヒートマップは、前記関節ヒートマップを含む、請求項15-17のいずれか1項に記載の方法。
【請求項19】
前記ニューラルネットワークを適用することは、完全畳み込みネットワークを適用することを含む、請求項15-18のいずれか1項に記載の方法。
【請求項20】
前記複数の2次元マップを発生させることは、距離マップを発生させることを含み、前記距離マップは、基準面と正面との間にある距離を含む、請求項15-19のいずれか1項に記載の方法。
【請求項21】
カメラ面と前記人との間に前記基準面を設定することをさらに含む、請求項20に記載の方法。
【請求項22】
前記ニューラルネットワークを用いて前記未加工データから照明および陰データを除去することをさらに含む、請求項15-21のいずれか1項に記載の方法。
【請求項23】
コードでエンコードされる非一過性コンピュータ可読媒体であって、前記コードは、プロセッサに、
通信インターフェースを介して外部ソースから未加工データを受信することであって、前記未加工データは、人の表現を含む、ことと、
メモリ記憶ユニット内に前記未加工データを記憶することと、
前処理エンジンを介して前記未加工データから粗セグメント化マップおよび関節ヒートマップを発生させることであって、前記粗セグメント化マップは、前記人の輪郭を描くためのものであり、前記関節ヒートマップは、前記人上の関節を表すためのものである、ことと、
前記未加工データ、前記粗セグメント化マップ、および前記関節ヒートマップにニューラルネットワークを適用し、複数の2次元マップを発生させることと、
前記複数の2次元マップに基づいて3次元メッシュを発生させることと
を行うように指示するためのものである、非一過性コンピュータ可読媒体。
【請求項24】
前記コードは、前記プロセッサに、2次元画像を前記未加工データとして受信するように指示するためのものである、請求項23に記載の非一過性コンピュータ可読媒体。
【請求項25】
前記2次元画像は、RGB画像である、請求項24に記載の非一過性コンピュータ可読媒体。
【請求項26】
前記コードは、前記プロセッサに、複数の関節ヒートマップを発生させるように指示するためのものであり、前記複数の関節ヒートマップは、前記ニューラルネットワークによって前記複数の2次元マップを発生させるために使用され、前記複数の関節ヒートマップは、前記関節ヒートマップを含む、請求項23-25のいずれか1項に記載の非一過性コンピュータ可読媒体。
【請求項27】
適用されるべき前記ニューラルネットワークは、完全畳み込みニューラルネットワークである、請求項23-26のいずれか1項に記載の非一過性コンピュータ可読媒体。
【請求項28】
前記コードは、前記プロセッサに、前記複数の2次元マップのうちの1つとして距離マップを発生させるように指示するためのものであり、前記距離マップは、基準面と正面との間にある距離を含む、請求項23-25のいずれか1項に記載の非一過性コンピュータ可読媒体。
【請求項29】
前記コードは、前記プロセッサに、前記ニューラルネットワークを用いて前記基準面を設定するように指示するためのものであり、前記基準面は、カメラ面と前記人との間に設定されるためのものである、請求項28に記載の非一過性コンピュータ可読媒体。
【請求項30】
前記コードは、前記プロセッサに、前記ニューラルネットワークを用いて前記未加工データから照明および陰データを除去するように指示するためのものである、請求項23-29のいずれか1項に記載の非一過性コンピュータ可読媒体。
【発明の詳細な説明】
【背景技術】
【0001】
コンピュータアニメーションは、映画、ビデオゲーム、エンターテインメント、生体力学、訓練映像、スポーツシミュレータ、および他の技術における、コンピュータ発生イメージ等、種々の用途内で使用され得る。人々または他のオブジェクトのアニメーションは、コンピュータアニメーションシステムによって操作され、3次元における種々の運動を行い得る、3次元メッシュの発生を伴い得る。運動は、ユーザまたは観衆によって、単一の角度から、または複数の角度から視認され得る。
【0002】
コンピュータアニメーションにおいてアニメーション化されるべきオブジェクトは、典型的には、本システム内で予めプログラムされる。例えば、アーティストまたはイラストレータが、アニメーション化されるべきオブジェクトの一般的外観を開発し得る。いくつかの実施例では、複数の外観が、異なる顔または身体タイプを有する人々等のオブジェクトに関して生成されてもよい。これらの付加的なアバタをデザインすることにおいて、プログラマまたはグラフィックデザイナが、典型的には、アバタ毎に個々にメッシュを発生させ得る。いくつかの実施例では、現実のオブジェクトの走査もまた、複数の角度から捉えられ、3次元メッシュを形成するようにともにスティッチングされ得る。
【発明の概要】
【課題を解決するための手段】
【0003】
コンピュータアニメーションは、人々等の種々のオブジェクトに運動を提供するために広範囲の異なる分野において使用される。コンピュータアニメーションの多くの実施例では、オブジェクトの3次元表現が、種々の特性とともに生成される。特性は、特に限定されず、オブジェクトおよびオブジェクトが有し得る、予期される運動および可動域に依存し得る。例えば、オブジェクトが自動車である場合、自動車は、開放するドアと、旋回し得る車輪と、所定の範囲の角度内で方向転換し得る、前輪とを伴う、セダン等の標準的形状を有することが予期され得る。
【0004】
オブジェクトが人である、他の実施例では、人は、異なる可動域を伴う種々の関節を有するであろう。用語「関節」が、人上の基準点の近似値を表すように、可動域を伴ってモデル化され得る、人における種々の基準点を指すことが、当業者によって、本説明の恩恵とともに理解されるはずである。例えば、関節は、眼等、生理学的関節ではなく、人上の基準点も指し得る。他の実施例では、関節は、手首または足首等、複数の生理学的骨関節に伴う基準点を指し得る。
【0005】
故に、アニメーション化されるべきオブジェクトは、概して、各関節における場所および可動域等の関連のある特性を伴う、予めプログラムされたメッシュによって表され得る。各関節における位置および利用可能な可動域は、オブジェクトに自然な移動の外観を提供するであろう。加えて、メッシュは、その上に追加され、オブジェクトのより明瞭な外観を提供する、質感および色等の付加的な特徴を有してもよい。例えば、人の3次元メッシュは、人の自然な移動を模倣するための生理学的関節を表す関節を伴って発生されてもよい。色が、皮膚の色および/または衣服に合致するようにメッシュに追加されてもよく、質感もまた、実際の人の外観を提供するように追加されてもよい。メッシュは、次いで、上記に説明されるもの等の種々の目的のためにアニメーション化され得る。
【0006】
単一の2次元画像に基づいて3次元メッシュを発生させる装置および方法が、提供される。本装置は、オブジェクトを表す画像を受信し、次いで、入力画像において可視ではないオブジェクトの背面を推論することを含め、完全な3次元メッシュを導出し得る。オブジェクトの背面の発生は、下記に詳細に説明されるであろう、種々の入力パラメータに基づいて背面を近似するように合成データを用いて訓練されている、ニューラルネットワークによって行われる。単一の2次元画像から3次元メッシュを発生させるための手段を提供することによって、生きているようなアバタが、デザイナまたはプログラマによってアバタを手動で発生させることなく、生成され得る。さらに、単一の2次元画像の使用はさらに、3次元メッシュ、色、および質感を補間するために複数の角度からの複数の走査を使用し得る、他の方法と比較して、本プロセスを促進する。
【0007】
本説明では、下記に議論されるモデルおよび技法は、概して、人に適用される。下記に説明される実施例が、動物および機械等の他のオブジェクトにも同様に適用され得ることが、当業者によって、本説明の恩恵とともに理解されるはずである。
【図面の簡単な説明】
【0008】
ここで、単に実施例として、付随の図面が、参照されるであろう。
【0009】
【
図1】
図1は、単一の2次元画像に基づいて3次元メッシュを発生させるための例示的装置の構成要素の略図である。
【0010】
【
図2】
図2は、
図1の装置において受信される画像を表す、未加工データのある実施例である。
【0011】
【0012】
【0013】
【0014】
【0015】
【0016】
【0017】
【0018】
【0019】
【0020】
【0021】
【0022】
【0023】
【0024】
【0025】
【0026】
【0027】
【0028】
【0029】
【0030】
【0031】
【
図6】
図6は、単一の画像上に重畳された、
図5A-5Qに示される関節ヒートマップの表現である。
【0032】
【0033】
【
図8A】
図8Aは、ニューラルネットワークエンジンによって発生されるような正面の2次元距離マップである
【0034】
【
図8B】
図8Bは、ニューラルネットワークエンジンによって発生されるような正面の2次元厚さマップである。
【0035】
【
図9A】
図9Aは、ニューラルネットワークエンジンによって発生されるような正面の赤色の強度のマップである。
【0036】
【
図9B】
図9Bは、ニューラルネットワークエンジンによって発生されるような正面の緑色の強度のマップである。
【0037】
【
図9C】
図9Cは、ニューラルネットワークエンジンによって発生されるような正面の青色の強度のマップである。
【0038】
【
図10A】
図10Aは、ニューラルネットワークエンジンによって発生されるような背面の赤色の強度のマップである。
【0039】
【
図10B】
図10Bは、ニューラルネットワークエンジンによって発生されるような背面の緑色の強度のマップである。
【0040】
【
図10C】
図10Cは、ニューラルネットワークエンジンによって発生されるような背面の青色の強度のマップである。
【0041】
【
図11A】
図11Aは、ニューラルネットワークエンジンによって発生されるような正面の第1の法線値のマップである。
【0042】
【
図11B】
図11Bは、ニューラルネットワークエンジンによって発生されるような正面の第2の法線値のマップである。
【0043】
【
図12A】
図12Aは、ニューラルネットワークエンジンによって発生されるような背面の第1の法線値のマップである。
【0044】
【
図12B】
図12Bは、ニューラルネットワークエンジンによって発生されるような背面の第2の法線値のマップである。
【0045】
【
図13A】
図13Aは、ともにスティッチングされた3次元メッシュの正面図である。
【0046】
【
図13B】
図13Bは、ともにスティッチングされた3次元メッシュの側面図である。
【0047】
【
図13C】
図13Cは、ともにスティッチングされた3次元メッシュの後面図である。
【0048】
【
図14】
図14は、距離および厚さ測定値を図示するためのシステムの略図である。
【0049】
【
図15A】
図15Aは、
図9A-9Cおよび10A-10Cの2次元マップに基づく、追加された色とともにスティッチングされた3次元メッシュの正面図である。
【0050】
【0051】
【0052】
【
図16】
図16は、単一の2次元画像に基づいて3次元メッシュを発生させるために本装置へのアクセスを提供するためのシステムの略図である。
【0053】
【
図17】
図17は、単一の2次元画像に基づいて3次元メッシュを発生させるための別の例示的装置の構成要素の略図である。
【0054】
【
図18】
図18は、単一の2次元画像に基づいて3次元メッシュを発生させる方法のある実施例のフローチャートである。
【発明を実施するための形態】
【0055】
詳細な説明
本明細書で使用されるように、絶対配向を示唆する用語(例えば、「上部」、「底部」、「上方」、「下方」、「左」、「右」、「低い」、「高い」等)のいずれの使用も、例証的利便性のためであり、特定の図に示される配向を指し得る。しかしながら、そのような用語は、種々の構成要素が、実践では、説明または示されるものと同一である、またはそれと異なる配向において利用されるであろうことが想定されるため、限定的な意味で解釈されるべきではない。
【0056】
図1を参照すると、単一の2次元画像に基づいて3次元メッシュを発生させるための装置の略図が、概して、50に示される。装置50は、装置50のユーザと相互作用するための、インジケータ等、種々の付加的なインターフェースおよび/または入力/出力デバイス等の付加的な構成要素を含んでもよい。相互作用は、装置50またはその中で装置50が動作するシステムの動作ステータスを視認すること、装置50のパラメータを更新すること、または装置50をリセットすることを含み得る。本実施例では、装置50は、標準的なRGB画像等の未加工データを受信し、未加工データを処理し、3次元メッシュを発生させるためのものである。本実施例では、装置50は、通信インターフェース55と、メモリ記憶ユニット60と、前処理エンジン65と、ニューラルネットワークエンジン70と、メッシュ生成器エンジン75とを含む。
【0057】
通信インターフェース55は、オブジェクトを表す未加工データを受信するために、外部ソースと通信するためのものである。本実施例では、通信インターフェース55は、WiFiネットワークまたはセルラーネットワーク等、多数の接続されたデバイスと共有される、パブリックネットワークであり得る、ネットワークを経由して、外部ソースと通信してもよい。他の実施例では、通信インターフェース55は、イントラネットまたは他のデバイスとの有線接続等のプライベートネットワークを介して、外部ソースからデータを受信してもよい。別の実施例として、通信インターフェース55は、Bluetooth(登録商標)接続、無線信号、または赤外線信号を介して別の近接デバイスに接続してもよい。特に、通信インターフェース55は、メモリ記憶ユニット60上に記憶されることになる、外部ソースからの未加工データを受信するためのものである。
【0058】
本実施例では、未加工データは、オブジェクトの2次元画像であってもよい。オブジェクトが表される様式および2次元画像の厳密なフォーマットは、特に限定されない。本実施例では、2次元画像は、RGBフォーマットにおいて受信される。RGBフォーマットが、色画像が3つの値によって表され、値がそれぞれ、赤色、緑色、または青色の強度を表す、付加的色モデルであることが、当業者によって、本説明の恩恵とともに理解されるはずである。故に、2次元画像は、3つの別個のマップによって表され得る。他の実施例では、2次元画像は、カメラによって捕捉および処理された、ラスタグラフィックファイルまたは圧縮された画像ファイル等の異なるフォーマットにおけるものであり得る。
【0059】
さらに、通信インターフェース55は、発生された3次元メッシュ等の結果を伝送するために使用され得る。例えば、通信インターフェース55は、装置50の一部である、または別個のデバイス上に存在し得る、アニメーションエンジン(図示せず)と通信してもよい。故に、装置50は、外部ソースから未加工データを受信し、付加的な処理および/またはレンダリングのために外部ソースに、または付加的な処理および/またはレンダリングのために付加的なデバイスにのいずれかに戻るように伝送されるような、関節と、表面色と、質感とを有する、3次元オブジェクトを発生させるように動作してもよい。故に、装置50は、写真の中の個人に似せた新しいアバタを生成することを所望し得る、コンピュータアニメータのためのサービスとして動作してもよい。
【0060】
メモリ記憶ユニット60は、通信インターフェース55を介して受信されるデータを記憶するためのものである。特に、メモリ記憶ユニット60は、3次元メッシュおよび表面データが発生されることになるオブジェクトを表す、2次元画像を含む未加工データを記憶してもよい。本実施例では、メモリ記憶ユニット60は、3次元アニメーションの目的のために異なるオブジェクトを2次元で表す、複数の2次元画像を記憶してもよい。特に、オブジェクトは、異なるサイズを有する人々の画像であってもよく、異なる関節を示す、異なる姿勢にある人々を含んでもよい。例えば、画像は、複数の略対称的な関節を明確に示す、A字形姿勢にある人のものであってもよい。他の実施例では、人は、標準的なT字形姿勢位置にあってもよい。さらなる実施例では、未加工データ内の人は、1つまたはそれを上回る関節が視界から遮られている、自然姿勢にあってもよい。本実施例はそれぞれ、人の2次元画像に関連するが、実施例がまた、動物または機械等の異なるタイプのオブジェクトを表す画像も含み得ることを、本説明の恩恵とともに理解されたい。
【0061】
メモリ記憶ユニット60はまた、装置50によって使用されることになる、付加的データを記憶するために使用されてもよい。例えば、メモリ記憶ユニット60は、テンプレートおよびモデルデータ等の種々の参照データソースを記憶してもよい。メモリ記憶ユニット60が、複数のデータベースを維持するために使用される、物理的なコンピュータ可読媒体であり得る、または中央サーバまたはクラウドサーバ等の1つまたはそれを上回る外部サーバを横断して分散され得る、複数の媒体を含み得ることを理解されたい。
【0062】
本実施例では、メモリ記憶ユニット60は、特に限定されず、任意の電子、磁気、光学、または他の物理的記憶デバイスであり得る、非一過性機械可読記憶媒体を含む。メモリ記憶ユニット60は、通信インターフェース55を介して外部ソースから受信されたデータ、テンプレートデータ、訓練データ、前処理エンジン65からの前処理されたデータ、ニューラルネットワークエンジン70からの結果、またはメッシュ生成器エンジン75からの結果等の情報を記憶するために使用されてもよい。加えて、メモリ記憶ユニット60は、装置50の一般的な動作に関する命令を記憶するために使用されてもよい。さらに、メモリ記憶ユニット60は、プロセッサによって実行可能である、オペレーティングシステムを記憶し、装置50に、種々のアプリケーションをサポートするための機能性等の一般的な機能性を提供し得る。メモリ記憶ユニット60は、加えて、前処理エンジン65およびニューラルネットワークエンジン70、またはメッシュ生成器エンジン75を動作させるための命令を記憶してもよい。さらに、メモリ記憶ユニット60はまた、他の構成要素、およびカメラおよびユーザインターフェース等、装置50とともに配設され得る、任意の周辺デバイスを動作させるための制御命令を記憶してもよい。
【0063】
メモリ記憶ユニット60は、訓練データまたは装置50の構成要素を動作させるための命令等のデータとともに、事前にロードされてもよい。他の実施例では、命令は、通信インターフェース55を介して、またはメモリフラッシュドライブ等、装置50に接続される可搬型メモリ記憶デバイスからの命令を直接転送することによって、ロードされてもよい。他の実施例では、メモリ記憶ユニット60は、外部ハードドライブ、またはコンテンツを提供するクラウドサービス等の外部ユニットであってもよい。
【0064】
前処理エンジン65は、メモリ記憶ユニット60からの未加工データを前処理し、粗セグメント化マップおよび2次元関節ヒートマップを発生させるためのものである。本実施例では、未加工データは、オブジェクトの色画像を含んでもよい。未加工データのフォーマットが、特に限定されないことは、当業者によって理解されるはずである。前処理エンジン65の動作を図示するために、未加工データは、(
図2においてグレースケールで示される)色画像を提供するようにレンダリングされてもよい。本具体的な実施例では、未加工データのオブジェクトは、A字形姿勢にある人の写真を表す。さらに、本具体的な実施例における未加工データは、赤色、緑色、および青色の強度に関する3つの重畳されたマップとして表され得る、RGB画像である。マップは、ピクセル毎に、色の強度を表すための、0~1の正規化された値等の値を含んでもよい。本実施例に続いて、
図2に示される色画像は、グレースケールのより暗い陰影ほど、個別の色のより低い強度量を表す、赤色マップ(
図3A)、緑色マップ(
図3B)、および青色マップ(
図3C)によって表され得る。未加工データがRGB画像フォーマットではない場合がある、他の実施例では、未加工データは、前処理エンジン65によって受信されることに先立って、RGBフォーマットに転換されてもよい。代替として、前処理エンジン65は、付加的なタイプの画像フォーマットを受信し、取り扱うように構成されてもよい。
【0065】
前処理エンジン65によって発生される粗セグメント化マップは、概して、オブジェクトの輪郭を提供するためのものである。本実施例では、粗セグメント化マップは、2次元マップである。
図4を参照すると、
図2に示される画像の粗セグメント化マップのある実施例が、示される。粗セグメント化マップは、ピクセル毎に、ピクセルがオブジェクトの一部であるかどうかを示すための2進値を含む。故に、粗セグメント化マップは、A字形姿勢にある、オリジナル画像内の人に類似する形状を示す。粗セグメント化マップが、ニューラルネットワークエンジン70等によってさらなる分析のための着目ピクセルを分離するために使用され得ることが、当業者によって、本説明の恩恵とともに理解されるはずである。
【0066】
粗セグメント化マップの発生は、特に限定されず、種々の画像処理エンジンまたはユーザ入力を伴い得る。本実施例では、wrnchAIエンジン等のコンピュータビジョンベースの人間姿勢およびセグメント化システムが、使用される。他の実施例では、OpenPose、Mask-R CNN、または他の深度センサ、立体カメラ、またはMicrosoft KinectまたはIntel RealSense等のLIDARベースの人セグメント化システム等の他のタイプのコンピュータビジョンベースの人間セグメント化システムも、使用され得る。加えて、セグメント化マップは、CVAT等の適切なソフトウェアを用いて手動で、またはAdobe Photoshop(登録商標)またはGIMPにおけるもの等のセグメント化補助ツールを用いた半自動方法において注釈を付けられ得る。
【0067】
前処理エンジン65によって発生される関節ヒートマップは、概して、オブジェクト上の点の場所の表現を提供するためのものである。本実施例では、関節ヒートマップは、2次元マップである。オブジェクト上の着目点は、オブジェクトがオブジェクトの部分間で相対運動を行う場所に対応し得る、関節である。オブジェクトとしての人の本実施例に続いて、関節は、腕が胴体に対して移動する、肩等の人上の関節を表し得る。関節ヒートマップは、ピクセル毎に、ピクセルが着目関節が位置する場所であるかどうかの尤度を示すための信頼度値を含む。故に、関節ヒートマップは、典型的には、前処理エンジン65が着目関節が位置すると決定している単一のホットスポットを示す。いくつかの実施例では、前処理エンジン65が、前処理されたデータを提供する外部システムの一部であり得ること、または前処理されたデータが、ユーザによる手動等、他の方法によって発生され得ることを理解されたい。
【0068】
オブジェクトが、1つを上回る関節ヒートマップを有し得ることが、当業者によって、本説明の恩恵とともに理解されるはずである。特に、別個の関節ヒートマップが、複数の予め定義された関節に関して発生されてもよい。人の具体的な実施例では、複数の関節が、人が相対運動を有し得る点を表すように予め定義されてもよい。さらに、関節毎に、関節についてのある可動域または特性が、近似され得ることも理解されたい。例えば、肩関節は、人間の肩を中心とした運動に近似するような所定の可動域と、自由度とを有し得、肘は、人の肩と肘との間の差異に類似する、より限定された自由度を有し得る。本実施例では、オブジェクトに関して識別されたより多くの所定の関節が、人のより正確かつ現実的な描写を可能にすることもまた、当業者によって、本説明の恩恵とともに理解されるはずである。
【0069】
本具体的な実施例では、前処理エンジン65は、人上の16個の関節を識別し、位置特定するように構成される。特に、前処理エンジン65は、左眼、右眼、左肩、右肩、左肘、右肘、左手首、右手首、左臀部、右臀部、左膝、右膝、左足首、右足首、左足指、および右足指を識別するためのものである。
図2に示される未加工データ画像に戻って参照すると、前処理エンジン65は、右肩(
図5A)、右肘(
図5B)、右手首(
図5C)、左肩(
図5D)、左肘(
図5E)、左手首(
図5F)、右臀部(
図5G)、右膝(
図5H)、右足首(
図5I)、左臀部(
図5J)、左膝(
図5K)、左足首(
図5L)、右眼(
図5M)、左眼(
図5N)、左足指(
図5P)、および右足指(
図5Q)のための関節ヒートマップを発生させる。
図5A-5Qを重畳することによって、オリジナルの
図2に示される人の関節が、
図6においても視認されることができる。関節ヒートマップがそれぞれ、ニューラルネットワークエンジン70によって使用されることになることと、
図6に示される表現が、ユーザによる視認および比較目的のためのものであることとを理解されたい。
【0070】
関節ヒートマップの発生は、特に限定されず、種々の画像処理エンジンを伴ってもよい。本実施例では、wrnchAIエンジン等のコンピュータビジョンベースの人間姿勢システムが、各関節を識別し、信頼度値を未加工データ内の関節の場所に割り当てるために使用される。他の実施例では、OpenPose、Google Blaze Pose、Mask-R CNN、または他の深度センサ、立体カメラ、またはMicrosoft KinectまたはIntel RealSense等のLIDARベースの人間姿勢システム等、他のタイプの人間姿勢システムも、使用され得る。さらなる実施例では、人間姿勢は、代替として、Keymakr等の適切なキーポイント注釈ツールにおいて手動で注釈を付けられてもよい。
【0071】
本実施例では、前処理エンジン65によって発生された粗セグメント化マップおよび関節ヒートマップが、ニューラルネットワークエンジン70による後続の使用のためにメモリ記憶ユニット60内に記憶される。他の実施例では、前処理エンジン65によって発生された粗セグメント化マップおよび関節ヒートマップは、後続の処理のためにニューラルネットワークエンジン70の中に直接フィードされてもよい。
【0072】
ニューラルネットワークエンジン70は、メモリ記憶ユニット60から未加工データを、および前処理エンジン65によって発生された粗セグメント化マップおよび関節ヒートマップを受信する。本実施例では、ニューラルネットワークエンジン70は、メモリ記憶ユニット60にアクセスし、入力を読み出し、複数の2次元マップを発生させてもよい。ニューラルネットワークエンジン70によって受信される入力の量は、特に限定されず、下記の実施例において説明されるものより多いまたは少ない入力を含み得る。ニューラルネットワークエンジン70によって発生される2次元マップは、特に限定されない。例えば、2次元マップは、他の特性のマップを含んでもよい。さらに、全ての2次元マップが、メッシュ生成器エンジン75によって使用され得るわけではないことと、いくつかの2次元マップが、ニューラルネットワークエンジン70を訓練することを改良するために、および予測の改良された正確度のために使用されることになることとが、当業者によって本説明の恩恵とともに理解されるはずである。
【0073】
2次元マップが発生される様式は、特に限定されない。本実施例では、ニューラルネットワークエンジン70は、完全畳み込みニューラルネットワークを複数の入力に適用し、複数の2次元マップを発生させるためのものである。特に、ニューラルネットワークエンジン70は、半教師あり2段積層U-netを伴うアーキテクチャを使用する。他の実施例では、ニューラルネットワークエンジン70は、単一のU-net、砂時計型、または積層砂時計型等の異なるアーキテクチャを有してもよい。
【0074】
本実施例では、ニューラルネットワークエンジン70は、合成データを使用して訓練されるためのものである。合成データソースは、特に限定されない。本実施例では、合成データは、Unityプラットフォームによって提供されるもの、RenderPeople製のリギングされた人間メッシュデータ、Adobe Mixamo製のアニメーション、およびHDRI Haven製の現実的なHDRI背景等を用いた合成データ発生器を使用して発生されてもよい。他の実施例では、合成データは、Maya、Unreal Engine、Blender、または他の3Dレンダリングプラットフォームにおいて、CAESARデータセットまたはTurboSquid等のオンラインソースからソーシングされた身体走査人間メッシュデータを用いてレンダリングされる、または既知の測定値を伴う画像を収集することによって手動で発生されてもよい。本実施例では、訓練データは、580個のリギングされたキャラクタと、220個のHDRI背景と、1,200個のアニメーションとを含む。キャラクタは、ランダムに選択され、ランダムに選択され、ランダムに回転されたHDRI背景の正面に設置される。ランダムなアニメーションが、キャラクタに適用され、スクリーンショットが、撮影される。本プロセスは、本ニューラルネットワークを訓練するための約50,000個の画像を発生させるために行われる。他の実施例では、より多いまたは少ない画像もまた、使用され得る。
【0075】
さらに、ニューラルネットワークエンジン70を訓練するために使用される訓練データは、前処理エンジン65の結果があまり正確ではない場合でも、結果をさらに改良するためにランダムノイズの追加等を伴う、ノイズが多いものであってもよい。特に、ノイズの強化および追加は、合成データに対するニューラルネットワークの過剰適合の尤度を低減させ、粗セグメント化および関節場所のより低い不正確度に対してロバストであるためのものである。ノイズの強化および追加は、特に限定されない。例えば、RGB画像は、ガウシアンぼかし、モーションブラー、加法ガウスノイズ、JPEG圧縮、コントラストおよび輝度の正規化、ごま塩ノイズの追加、およびスケーリングおよび平行移動を使用して修正されてもよい。訓練データのセグメント化もまた、スケーリングおよび平行移動と、収縮/膨張とを含み得る。加えて、訓練データの関節場所(すなわち、関節ヒートマップ)は、関節のxおよびy場所に対するスケーリングおよび平行移動およびガウスノイズ追加を受けてもよい。
【0076】
【0077】
本実施例では、ニューラルネットワークエンジン70は、
図7に示されるように、細セグメント化マップを発生させる。前処理エンジンによって発生される粗セグメント化マップと同様に、細セグメント化マップは、ピクセル毎に、ピクセルが人の表面の一部であるかどうかを示す、2進値を含む。故に、細セグメント化マップは、A字形姿勢にある、オリジナル画像(
図2)内の人に類似する形状を示す。
図4に示されるカースセグメント化マップおよび
図7に示される細セグメント化マップの慎重な精査に応じて、細セグメント化マップが、画像内の人の縁により正確に追従していることが、明白となるであろう。細セグメント化マップが、したがって、正面および背面を生成し、メッシュ生成器エンジン75によって正面を背面にスティッチングするために、着目ピクセルを分離するために使用され得ることが、当業者によって、本説明の恩恵とともに理解されるはずである。
【0078】
本実施例では、ニューラルネットワークエンジン70はまた、
図8Aに示されるような距離マップを発生させ、ニューラルネットワークエンジン70によって決定されるようなオブジェクトの正面までの距離を識別してもよい。距離は、オリジナル未加工データを捕捉するカメラが位置する平面からの関数として決定されてもよい。他の実施例では、距離は、基準面からの関数として決定されてもよい。カメラ面とオブジェクトとの間等、基準面をカメラ面以外の平面であるように設定することによって、カメラまでの距離の決定が、必要とされなくなり、したがって、カメラパラメータは、関連のない状態になる。ニューラルネットワークエンジン70はさらに、画像内の人の背面までの距離が、
図8Bに示される厚さマップ内の正面からのものであることを決定する。未加工データは、背面についてのいかなる情報も含有しないため、人の厚さが、合成データからの訓練、および状況から得られる手掛かりおよび共通パターンに基づく推論、人の正面および背面の幾何学形状と外観との間の関係および相関に基づいて決定されることが、当業者によって、本説明の恩恵とともに理解されるはずである。
【0079】
本実施例に続いて、ニューラルネットワークエンジン70はさらに、正面および背面のための色情報を発生させる。特に、ニューラルネットワークエンジンは、正面赤色マップ(
図9A)、正面緑色マップ(
図9B)、青色マップ(
図9C)、背面赤色マップ(
図10A)、背面緑色マップ(
図10B)、背面青色マップ(
図10C)を発生させる。上記に説明される他の色マップと同様に、ニューラルネットワークエンジン70によって発生された色マップもまた、0~1の値に正規化され得る。本実施例では、ニューラルネットワークエンジン70はまた、発生された2次元色マップがオリジナルの未加工データファイル内にあり得る、いかなる陰または付加的なソース照明も含まないように、光および陰データを除去するように、オリジナル色マップを処理してもよい。
【0080】
さらに、ニューラルネットワークエンジン70は、メッシュ生成器エンジン75によって使用される2次元マップの正確度のさらなる改良のために、付加的な随意のマップを発生させてもよい。加えて、付加的な2次元マップはまた、ニューラルネットワークエンジン70のさらなる訓練を補助してもよい。実施例として、ニューラルネットワークエンジン70は、本目的のために正面および背面の面法線を説明するための2次元マップを発生させてもよい。表面位置の制約および表面に対する法線ベクトルの正規化を用いると、第3の値が、上記に説明される制約を伴う他の2つの値から発生され得るため、2つのみの値が、面法線を説明するために使用されることが、当業者によって、本説明の恩恵とともに理解されるはずである。故に、ニューラルネットワークエンジン70は、第1の正面法線マップ(
図11A)、第2の正面法線マップ(
図11B)、第1の背面法線マップ(
図12A)、および第2の背面法線マップ(
図12B)を発生させ得る。
【0081】
メッシュ生成器エンジン75は、ニューラルネットワークエンジン70によって発生された複数の2次元マップに基づいて、3次元メッシュを発生させるためのものである。メッシュ生成器エンジン75が3次元メッシュを発生させた様式は、特に限定されず、ニューラルネットワークエンジン70の出力に依存する。
【0082】
本実施例では、メッシュ生成器エンジン75は、細セグメント化マップ(
図7)を使用し、オブジェクトの一部を形成し、セグメント化面積から外れた全てのピクセルを破棄または無視する、ピクセルまたは点を分離する。カメラに最も近接するメッシュの正面が、次いで、距離マップ(
図8A)を使用して形成され、メッシュの背面が、メッシュの正面と関連して厚さマップ(
図8B)を使用して形成される。メッシュ生成器エンジン75が、正面を背面に接続するために、セグメント化面積の境界を使用し、メッシュ内により多くの三角形を生成し得ることが、当業者によって、本説明の恩恵とともに理解されるはずである。それに応じて、距離マップおよび厚さマップから形成される3次元メッシュの輪郭が、正面図(
図13A)、側面図(
図13B)、および後面図(
図13C)から示される。
【0083】
図14を参照すると、3次元メッシュを発生させるために使用される測定値を図示するシステム200の略図が、示される。本実施例では、システム200は、カメラ面215上の位置に、オブジェクト205の画像を捕捉するためのカメラ210を含む。上記の実施例において説明されるように、ニューラルネットワークエンジン70を適用した後、距離マップは、基準プレイン220からピクセル(x,y)までの距離d
1を提供する。厚さマップは、次いで、3次元メッシュの背面上の対応する点までの距離d
2を提供する。
【0084】
メッシュ生成器エンジン75は、続いて、正面赤色マップ(
図9A)、正面緑色マップ(
図9B)、青色マップ(
図9C)、背面赤色マップ(
図10A)、背面緑色マップ(
図10B)、および背面青色マップ(
図10C)を使用し、メッシュに色を追加し、正面図(
図15A)、側面図(
図15B)、および後面図(
図15C)から(グレースケールにおいて)示される3次元メッシュを発生させる。
【0085】
図16を参照すると、コンピュータネットワークシステムの略図が、概して、100に示される。システム100が、純粋に例示的であることを理解されたく、種々のコンピュータネットワークシステムが想定されることが、当業者にとって明白となるであろう。システム100は、ネットワーク110によって接続される、3次元メッシュを発生するための装置50と、複数の外部ソース20-1および20-2(総称的に、これらの外部ソースは、本明細書では、「external source(外部ソース20)」と称され、集合的に、それらは、「external sources 20(外部ソース20)」と称される)と、複数のコンテンツ要求器25-1および25-2(総称的に、これらのコンテンツ要求器は、本明細書では、「content requesters 25(コンテンツ要求器25)」と称され、集合的に、それらは、「content requesters 25(コンテンツ要求器25)」と称される)とを含む。ネットワーク110は、特に限定されず、インターネット、イントラネットまたはローカルエリアネットワーク、携帯電話ネットワーク、またはこれらのタイプのネットワークのうちのいずれかの組み合わせ等、任意のタイプのネットワークを含むことができる。いくつかの実施形態では、ネットワーク110はまた、ピアツーピアネットワークも含み得る。
【0086】
本実施形態では、外部ソース20は、人の画像等の未加工データを提供するために、ネットワーク110を経由して、装置50と通信するために使用される、任意のタイプのコンピューティングデバイスであり得る。例えば、外部ソース20-1は、パーソナルコンピュータであってもよい。パーソナルコンピュータが、ラップトップコンピュータ、可搬型電子デバイス、ゲーム用デバイス、モバイルコンピューティングデバイス、可搬型コンピューティングデバイス、タブレット型コンピューティングデバイス、携帯電話、およびスマートフォン、または同等物で代用され得ることが、当業者によって、本説明の恩恵とともに理解されるはずである。いくつかの実施例では、外部ソース20-2は、画像を捕捉するためのカメラであってもよい。未加工データは、外部ソース20において受信または捕捉された、画像またはビデオから発生されてもよい。他の実施例では、外部ソース20が、その上で、未加工データがコンテンツから自動的に発生されるようにコンテンツが生成され得る、パーソナルコンピュータであり得ることを、理解されたい。コンテンツ要求器25はまた、3次元メッシュを受信し、続いて、アニメーション化するための、ネットワーク110を経由して装置50と通信するために使用される、任意のタイプのコンピューティングデバイスであってもよい。例えば、コンテンツ要求器25は、プログラム内でアニメーション化するための新しいアバタを検索する、コンピュータアニメータであってもよい。
【0087】
図17を参照すると、単一の2次元画像に基づいて3次元メッシュを発生させるための装置50aの別の略図が、概して、示される。添え字「a」が続くことを除いて、装置50aの同様の構成要素が、装置50内のその対応物を参照して、同様に描かれている。本実施例では、装置50aは、通信インターフェース55aと、メモリ記憶ユニット60aと、プロセッサ80aとを含む。本実施例では、プロセッサ80aは、前処理エンジン65aと、ニューラルネットワークエンジン70aと、メッシュ生成器エンジン75aとを含む。
【0088】
本実施例では、メモリ記憶ユニット60aはまた、装置50aによって使用される種々のデータを記憶するために、データベースを維持し得る。例えば、メモリ記憶ユニット60aは、未加工データ画像をRGB画像フォーマットにおいて記憶するための、データベース300aと、前処理エンジン65aによって発生されたデータを記憶するための、データベース310aと、ニューラルネットワークエンジン70aによって発生された2次元マップを記憶するための、データベース320aと、メッシュ生成器エンジン75aによって発生された3次元メッシュを記憶するための、データベース330aとを含んでもよい。加えて、メモリ記憶ユニットは、装置50aに一般的な機能性を提供するために、プロセッサ80aによって実行可能である、オペレーティングシステム340aを含んでもよい。さらに、メモリ記憶ユニット60aは、プロセッサ80aに、下記にさらに詳細に説明される方法を実施するための具体的ステップを行うように指示するためのコードでエンコードされてもよい。メモリ記憶ユニット60aはまた、ドライバレベルおよび他のハードウェアドライブにおいて、入力を受信する、または出力を提供するための、種々のユーザインターフェース等、装置50aの他の構成要素および周辺デバイスと通信するための動作を行うための命令を記憶してもよい。
【0089】
メモリ記憶ユニット60aはまた、ニューラルネットワークエンジン70aを訓練するための訓練データを記憶するための合成訓練データベース350aを含んでもよい。本実施例が、ローカルで、訓練データを記憶するが、他の実施例が、通信インターフェース55aを介して、ニューラルネットワークの訓練の間、アクセスされ得る、ファイルサーバまたはクラウド内等、外部に訓練データを記憶し得ることを理解されたい。
【0090】
図18を参照すると、単一の2次元画像に基づいて3次元メッシュを発生させる例示的方法のフローチャートが、概して、400に示される。方法400の解説を支援するために、方法400が、装置50によって実施され得ると仮定されたい。実際に、方法400は、装置50が構成され得る、1つの方法であり得る。さらに、方法400の以下の議論は、装置50およびその構成要素のさらなる理解につながり得る。加えて、方法400が、示されるような厳密なシーケンスで実施されなくてもよく、種々のブロックが、順にではなく、並行して、または全く異なるシーケンスで実施され得ることが強調される。
【0091】
ブロック410から開始し、装置50は、通信インターフェース55を介して外部ソースから未加工データを受信する。本実施例では、未加工データは、人の表現を含む。特に、未加工データは、人の2次元画像である。人が表される様式および2次元画像の厳密なフォーマットは、特に限定されない。本実施例では、2次元画像は、RGBフォーマットにおいて受信される。他の実施例では、2次元画像は、カメラによって捕捉および処理された、ラスタグラフィックファイルまたは圧縮された画像ファイル等の異なるフォーマットにおけるものであり得る。いったん装置50において受信されると、未加工データは、ブロック420においてメモリ記憶ユニット60内に記憶されることになる。
【0092】
ブロック430は、前処理エンジン65を用いて前処理されたデータを発生させることを伴う。本実施例では、前処理されたデータは、粗セグメント化マップと、関節ヒートマップとを含む。粗セグメント化マップは、概して、セグメント化から外れたピクセルが、分析目的のために無視され得るように、人の輪郭を提供するためのものである。関節ヒートマップは、概して、人上の点の場所の表現を提供するためのものである。本実施例では、人上の着目点は、人が、腕が胴体に対して移動し得る、肩等の身体の部分間の相対運動を行う場所に対応し得る、関節である。
【0093】
次いで、ブロック440は、ニューラルネットワークエンジン70が、未加工データ、粗セグメント化マップ、および関節ヒートマップにニューラルネットワークを適用し、上記に詳細に説明されるもの等の複数の2次元マップを発生させることを含む。ニューラルネットワークエンジン70によって発生された2次元マップは、次いで、ブロック450において、3次元メッシュを発生させるために使用されてもよい。
【0094】
本実施例では、ブロック450は、距離および厚さマップから、3次元の正面および背面メッシュの点を発生させる。各メッシュ内の各点のXおよびY座標は、マップの各ピクセルの座標によって定義され得る。正面メッシュの各点のZ座標は、距離マップの各ピクセルの値によって定義され得る。背面メッシュの各点のZ座標は、厚さマップ内の各対応するピクセルの値に追加された、距離マップの各ピクセルの値によって定義され得る。前述のメッシュ生成方法が、純粋に例示的であることを理解されたく、深度および厚さを説明するマップから3次元メッシュを生成する他の方法が、考えられ得ることが、当業者に明白となるであろう。
【0095】
種々の利点が、当業者に明白な状態にはならないであろう。特に、装置50または装置50aは、単一の単純なプロセスにおいてオブジェクトの2次元画像から3次元メッシュを生成するために使用され得る。3次元メッシュは、続いて、コンピュータアニメーションのために使用され得る。別の実施例として、装置50または装置50aによって発生された3次元メッシュはまた、より複雑化されたニューラルネットワークがより精緻化された表面特徴を取得するために、入力として使用され得る。
【0096】
上記に提供される、種々の実施例の特徴および側面が、本開示の範囲内にもある、さらなる実施例に組み合わせられ得ることを認識されたい。
【手続補正書】
【提出日】2023-06-09
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
装置であって、
外部ソースから未加工データを受信するための通信インターフェースであって、前記未加工データは、オブジェクトの表現を含む、通信インターフェースと、
前記未加工データを記憶するためのメモリ記憶ユニットと、
前記未加工データから粗セグメント化マップおよび関節ヒートマップを発生させるための前処理エンジンであって、前記粗セグメント化マップは、前記オブジェクトの輪郭を描くためのものであり、前記関節ヒートマップは、前記オブジェクト上の点を表すためのものである、前処理エンジンと、
前記未加工データ、前記粗セグメント化マップ、および前記関節ヒートマップを受信するためのニューラルネットワークエンジンであって、前記ニューラルネットワークエンジンは、複数の2次元マップを発生させるためのものである、ニューラルネットワークエンジンと、
前記複数の2次元マップに基づいて3次元メッシュを発生させるためのメッシュ生成器エンジンと
を備える、装置。
【請求項2】
前記未加工データは、2次元画像である、請求項1に記載の装置。
【請求項3】
前記オブジェクトは、人である、請求項
1に記載の装置。
【請求項4】
前記前処理エンジンは、複数の関節ヒートマップを発生させるためのものであり、前記ニューラルネットワークエンジンは、前記複数の関節ヒートマップを使用し、前記複数の2次元マップを発生させるためのものであり、前記複数の関節ヒートマップは、前記関節ヒートマップを含む、請求項
3に記載の装置。
【請求項5】
前記複数の関節ヒートマップは、左眼、右眼、左肩、右肩、左肘、右肘、左手首、右手首、左臀部、右臀部、左膝、右膝、左足首、右足首、左足指、および右足指のそれぞれに関して別個のヒートマップを含む、請求項
4に記載の装置。
【請求項6】
前記ニューラルネットワークエンジンは、完全畳み込みネットワークを使用するためのものであ
り、前記完全畳み込みネットワークは、半教師あり2段積層U-netを含む、請求項
1に記載の装置。
【請求項7】
前記複数の2次元マップは、細セグメント化マップと、距離マップと、厚さマップと、正面赤色マップと、正面緑色マップと、正面青色マップと、背面赤色マップと、背面緑色マップと、背面青色マップと
を含む、請求項
1に記載の装置。
【請求項8】
前記複数の2次元マップはさらに、第1の正面法線マップと、第2の正面法線マップと、第1の背面法線マップと、第2の背面法線マップとを含み、前記ニューラルネットワークエンジンの訓練プロセスを改良する、請求項
7に記載の装置。
【請求項9】
前記距離マップは、基準面と正面との間にある距離を含
み、前記基準面は、カメラ面と前記オブジェクトとの間にある、請求項
7または
8に記載の装置。
【請求項10】
前記ニューラルネットワークエンジンは、前記未加工データから照明および陰データを除去するためのものである、請求項
1に記載の装置。
【請求項11】
前記メッシュ生成器エンジンは
、細セグメント化マップ内に前記3次元メッシュを発生させ、セグメント化から外れたピクセルを破棄する、請求項
1に記載の装置。
【請求項12】
方法であって、
通信インターフェースを介して外部ソースから未加工データを受信することであって、前記未加工データは、人の表現を含む、ことと、
前記未加工データをメモリ記憶ユニット内に記憶することと、
前処理エンジンを介して前記未加工データから粗セグメント化マップおよび関節ヒートマップを発生させることであって、前記粗セグメント化マップは、前記人の輪郭を描くためのものであり、前記関節ヒートマップは、前記人上の関節を表すためのものである、ことと、
前記未加工データ、前記粗セグメント化マップ、および前記関節ヒートマップにニューラルネットワークを適用し、複数の2次元マップを発生させることと、
前記複数の2次元マップに基づいて3次元メッシュを発生させることと
を含む、方法。
【請求項13】
複数の関節ヒートマップを発生させることをさらに含み、前記複数の関節ヒートマップは、前記ニューラルネットワークによって前記複数の2次元マップを発生させるために使用され、前記複数の関節ヒートマップは、前記関節ヒートマップを含む、請求項
12に記載の方法。
【請求項14】
前記複数の2次元マップを発生させることは、距離マップを発生させることを含み、前記距離マップは、基準面と正面との間にある距離を含
み、前記方法は、カメラ面と前記人との間に前記基準面を設定することをさらに含む、請求項
12-
13のいずれか1項に記載の方法。
【請求項15】
前記ニューラルネットワークを用いて前記未加工データから照明および陰データを除去することをさらに含む、請求項
12に記載の方法。
【請求項16】
コードでエンコードされる非一過性コンピュータ可読媒体であって、前記コードは、プロセッサに、
通信インターフェースを介して外部ソースから未加工データを受信することであって、前記未加工データは、人の表現を含む、ことと、
メモリ記憶ユニット内に前記未加工データを記憶することと、
前処理エンジンを介して前記未加工データから粗セグメント化マップおよび関節ヒートマップを発生させることであって、前記粗セグメント化マップは、前記人の輪郭を描くためのものであり、前記関節ヒートマップは、前記人上の関節を表すためのものである、ことと、
前記未加工データ、前記粗セグメント化マップ、および前記関節ヒートマップにニューラルネットワークを適用し、複数の2次元マップを発生させることと、
前記複数の2次元マップに基づいて3次元メッシュを発生させることと
を行うように指示するためのものである、非一過性コンピュータ可読媒体。
【請求項17】
前記コードは、前記プロセッサに、複数の関節ヒートマップを発生させるように指示するためのものであり、前記複数の関節ヒートマップは、前記ニューラルネットワークによって前記複数の2次元マップを発生させるために使用され、前記複数の関節ヒートマップは、前記関節ヒートマップを含む、請求項
16に記載の非一過性コンピュータ可読媒体。
【請求項18】
前記コードは、前記プロセッサに、前記複数の2次元マップのうちの1つとして距離マップを発生させるように指示するためのものであり、前記距離マップは、基準面と正面との間にある距離を含む、請求項
16-
17のいずれか1項に記載の非一過性コンピュータ可読媒体。
【請求項19】
前記コードは、前記プロセッサに、前記ニューラルネットワークを用いて前記基準面を設定するように指示するためのものであり、前記基準面は、カメラ面と前記人との間に設定されるためのものである、請求項
18に記載の非一過性コンピュータ可読媒体。
【請求項20】
前記コードは、前記プロセッサに、前記ニューラルネットワークを用いて前記未加工データから照明および陰データを除去するように指示するためのものである、請求項
16に記載の非一過性コンピュータ可読媒体。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0001
【補正方法】変更
【補正の内容】
【0001】
コンピュータアニメーションは、映画、ビデオゲーム、エンターテインメント、生体力学、訓練映像、スポーツシミュレータ、および他の技術における、コンピュータ発生イメージ等、種々の用途で使用され得る。人々または他のオブジェクトのアニメーションは、コンピュータアニメーションシステムによって操作され、3次元における種々の運動を行い得る、3次元メッシュの発生を伴い得る。運動は、ユーザまたは観衆によって、単一の角度から、または複数の角度から視認され得る。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0007
【補正方法】変更
【補正の内容】
【0007】
本説明では、下記に議論されるモデルおよび技法は、概して、人に適用される。下記に説明される実施例が、動物および機械等の他のオブジェクトにも同様に適用され得ることが、当業者によって、本説明の恩恵とともに理解されるはずである。
本発明は、例えば、以下を提供する。
(項目1)
装置であって、
外部ソースから未加工データを受信するための通信インターフェースであって、上記未加工データは、オブジェクトの表現を含む、通信インターフェースと、
上記未加工データを記憶するためのメモリ記憶ユニットと、
上記未加工データから粗セグメント化マップおよび関節ヒートマップを発生させるための前処理エンジンであって、上記粗セグメント化マップは、上記オブジェクトの輪郭を描くためのものであり、上記関節ヒートマップは、上記オブジェクト上の点を表すためのものである、前処理エンジンと、
上記未加工データ、上記粗セグメント化マップ、および上記関節ヒートマップを受信するためのニューラルネットワークエンジンであって、上記ニューラルネットワークエンジンは、複数の2次元マップを発生させるためのものである、ニューラルネットワークエンジンと、
上記複数の2次元マップに基づいて3次元メッシュを発生させるためのメッシュ生成器エンジンと
を備える、装置。
(項目2)
上記未加工データは、2次元画像である、項目1に記載の装置。
(項目3)
上記2次元画像は、RGB画像である、項目2に記載の装置。
(項目4)
上記オブジェクトは、人である、項目1-3のいずれか1項に記載の装置。
(項目5)
上記前処理エンジンは、複数の関節ヒートマップを発生させるためのものであり、上記ニューラルネットワークエンジンは、上記複数の関節ヒートマップを使用し、上記複数の2次元マップを発生させるためのものであり、上記複数の関節ヒートマップは、上記関節ヒートマップを含む、項目4に記載の装置。
(項目6)
上記複数の関節ヒートマップは、左眼、右眼、左肩、右肩、左肘、右肘、左手首、右手首、左臀部、右臀部、左膝、右膝、左足首、右足首、左足指、および右足指のそれぞれに関して別個のヒートマップを含む、項目5に記載の装置。
(項目7)
上記ニューラルネットワークエンジンは、完全畳み込みネットワークを使用するためのものである、項目1-6のいずれか1項に記載の装置。
(項目8)
上記完全畳み込みネットワークは、半教師あり2段積層U-netを含む、項目7に記載の装置。
(項目9)
上記複数の2次元マップは、細セグメント化マップと、距離マップと、厚さマップと、正面赤色マップと、正面緑色マップと、正面青色マップと、背面赤色マップと、背面緑色マップと、背面青色マップとを含む、項目1-8のいずれか1項に記載の装置。
(項目10)
上記複数の2次元マップはさらに、第1の正面法線マップと、第2の正面法線マップと、第1の背面法線マップと、第2の背面法線マップとを含み、上記ニューラルネットワークエンジンの訓練プロセスを改良する、項目9に記載の装置。
(項目11)
上記距離マップは、基準面と正面との間にある距離を含む、項目9または10に記載の装置。
(項目12)
上記基準面は、カメラ面と上記オブジェクトとの間にある、項目11に記載の装置。
(項目13)
上記ニューラルネットワークエンジンは、上記未加工データから照明および陰データを除去するためのものである、項目9-12のいずれか1項に記載の装置。
(項目14)
上記メッシュ生成器エンジンは、上記細セグメント化マップ内に上記3次元メッシュを発生させ、セグメント化から外れたピクセルを破棄する、項目9-13のいずれか1項に記載の装置。
(項目15)
方法であって、
通信インターフェースを介して外部ソースから未加工データを受信することであって、上記未加工データは、人の表現を含む、ことと、
上記未加工データをメモリ記憶ユニット内に記憶することと、
前処理エンジンを介して上記未加工データから粗セグメント化マップおよび関節ヒートマップを発生させることであって、上記粗セグメント化マップは、上記人の輪郭を描くためのものであり、上記関節ヒートマップは、上記人上の関節を表すためのものである、ことと、
上記未加工データ、上記粗セグメント化マップ、および上記関節ヒートマップにニューラルネットワークを適用し、複数の2次元マップを発生させることと、
上記複数の2次元マップに基づいて3次元メッシュを発生させることと
を含む、方法。
(項目16)
上記未加工データを受信することは、2次元画像を受信することを含む、項目15に記載の方法。
(項目17)
上記2次元画像を受信することは、RGB画像を受信することを含む、項目16に記載の方法。
(項目18)
複数の関節ヒートマップを発生させることをさらに含み、上記複数の関節ヒートマップは、上記ニューラルネットワークによって上記複数の2次元マップを発生させるために使用され、上記複数の関節ヒートマップは、上記関節ヒートマップを含む、項目15-17のいずれか1項に記載の方法。
(項目19)
上記ニューラルネットワークを適用することは、完全畳み込みネットワークを適用することを含む、項目15-18のいずれか1項に記載の方法。
(項目20)
上記複数の2次元マップを発生させることは、距離マップを発生させることを含み、上記距離マップは、基準面と正面との間にある距離を含む、項目15-19のいずれか1項に記載の方法。
(項目21)
カメラ面と上記人との間に上記基準面を設定することをさらに含む、項目20に記載の方法。
(項目22)
上記ニューラルネットワークを用いて上記未加工データから照明および陰データを除去することをさらに含む、項目15-21のいずれか1項に記載の方法。
(項目23)
コードでエンコードされる非一過性コンピュータ可読媒体であって、上記コードは、プロセッサに、
通信インターフェースを介して外部ソースから未加工データを受信することであって、上記未加工データは、人の表現を含む、ことと、
メモリ記憶ユニット内に上記未加工データを記憶することと、
前処理エンジンを介して上記未加工データから粗セグメント化マップおよび関節ヒートマップを発生させることであって、上記粗セグメント化マップは、上記人の輪郭を描くためのものであり、上記関節ヒートマップは、上記人上の関節を表すためのものである、ことと、
上記未加工データ、上記粗セグメント化マップ、および上記関節ヒートマップにニューラルネットワークを適用し、複数の2次元マップを発生させることと、
上記複数の2次元マップに基づいて3次元メッシュを発生させることと
を行うように指示するためのものである、非一過性コンピュータ可読媒体。
(項目24)
上記コードは、上記プロセッサに、2次元画像を上記未加工データとして受信するように指示するためのものである、項目23に記載の非一過性コンピュータ可読媒体。
(項目25)
上記2次元画像は、RGB画像である、項目24に記載の非一過性コンピュータ可読媒体。
(項目26)
上記コードは、上記プロセッサに、複数の関節ヒートマップを発生させるように指示するためのものであり、上記複数の関節ヒートマップは、上記ニューラルネットワークによって上記複数の2次元マップを発生させるために使用され、上記複数の関節ヒートマップは、上記関節ヒートマップを含む、項目23-25のいずれか1項に記載の非一過性コンピュータ可読媒体。
(項目27)
適用されるべき上記ニューラルネットワークは、完全畳み込みニューラルネットワークである、項目23-26のいずれか1項に記載の非一過性コンピュータ可読媒体。
(項目28)
上記コードは、上記プロセッサに、上記複数の2次元マップのうちの1つとして距離マップを発生させるように指示するためのものであり、上記距離マップは、基準面と正面との間にある距離を含む、項目23-25のいずれか1項に記載の非一過性コンピュータ可読媒体。
(項目29)
上記コードは、上記プロセッサに、上記ニューラルネットワークを用いて上記基準面を設定するように指示するためのものであり、上記基準面は、カメラ面と上記人との間に設定されるためのものである、項目28に記載の非一過性コンピュータ可読媒体。
(項目30)
上記コードは、上記プロセッサに、上記ニューラルネットワークを用いて上記未加工データから照明および陰データを除去するように指示するためのものである、項目23-29のいずれか1項に記載の非一過性コンピュータ可読媒体。
【手続補正4】
【補正対象書類名】明細書
【補正対象項目名】0077
【補正方法】変更
【補正の内容】
【0077】
本実施例では、ニューラルネットワークエンジン70は、
図7に示されるように、細セグメント化マップを発生させる。前処理エンジンによって発生される粗セグメント化マップと同様に、細セグメント化マップは、ピクセル毎に、ピクセルが人の表面の一部であるかどうかを示す、2進値を含む。故に、細セグメント化マップは、A字形姿勢にある、オリジナル画像(
図2)内の人に類似する形状を示す。
図4に示される
粗セグメント化マップおよび
図7に示される細セグメント化マップの慎重な精査に応じて、細セグメント化マップが、画像内の人の縁により正確に追従していることが、明白となるであろう。細セグメント化マップが、したがって、正面および背面を生成し、メッシュ生成器エンジン75によって正面を背面にスティッチングするために、着目ピクセルを分離するために使用され得ることが、当業者によって、本説明の恩恵とともに理解されるはずである。
【手続補正5】
【補正対象書類名】明細書
【補正対象項目名】0083
【補正方法】変更
【補正の内容】
【0083】
図14を参照すると、3次元メッシュを発生させるために使用される測定値を図示するシステム200の略図が、示される。本実施例では、システム200は、カメラ面215上の位置に、オブジェクト205の画像を捕捉するためのカメラ210を含む。上記の実施例において説明されるように、ニューラルネットワークエンジン70を適用した後、距離マップは、基準
面220からピクセル(x,y)までの距離d
1を提供する。厚さマップは、次いで、3次元メッシュの背面上の対応する点までの距離d
2を提供する。
【国際調査報告】