(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-02
(45)【発行日】2023-11-13
(54)【発明の名称】生成的非線形人間形状モデル
(51)【国際特許分類】
G06T 7/50 20170101AFI20231106BHJP
G06T 7/00 20170101ALI20231106BHJP
G06T 17/00 20060101ALI20231106BHJP
【FI】
G06T7/50
G06T7/00 660Z
G06T7/00 350C
G06T17/00
(21)【出願番号】P 2022566221
(86)(22)【出願日】2020-04-30
(86)【国際出願番号】 US2020030712
(87)【国際公開番号】W WO2021221657
(87)【国際公開日】2021-11-04
【審査請求日】2022-12-26
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100108453
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】クリスティアン・スミンチセシュ
(72)【発明者】
【氏名】ホンイ・シュ
(72)【発明者】
【氏名】エドゥアルト・ガブリエル・バザヴァン
(72)【発明者】
【氏名】アンドレイ・ザンフィル
(72)【発明者】
【氏名】ウィリアム・ティー・フリーマン
(72)【発明者】
【氏名】ラーフル・スクタンカール
【審査官】真木 健彦
(56)【参考文献】
【文献】特開2018-124666(JP,A)
【文献】国際公開第2018/139203(WO,A1)
【文献】国際公開第2019/160100(WO,A1)
【文献】Aliaksandr Siarohin,First Order Motion Model for Image Animation,33nd Conference on Neural Information Processing Systems (NeurIPS 2019),カナダ,arXiv,2020年02月29日,arXiv:2003.00196v1 (29 Feb 2020),P.1-20
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/50
G06T 7/00
G06T 13/00
G06T 15/00
G06T 17/00
G06T 19/00
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
機械学習済み3次元人間形状モデルをエンドツーエンドのパイプラインにおいて共同でトレーニングするコンピュータ実装方法であって、1つまたは複数のトレーニング反復について、
1つまたは複数のコンピューティングデバイスを含むコンピューティングシステムによって、トレーニングボディの1つまたは複数のグランドトゥルース登録の形状スキャンを取得するステップであり、前記トレーニングボディの前記1つまたは複数のグランドトゥルース登録の形状スキャンが、任意のポーズを有する少なくともグランドトゥルース登録の全身スキャンと、グランドトゥルース登録の顔詳細スキャンとを含む、取得するステップと、
前記コンピューティングシステムによって、形状エンコーダモデルを使用して、前記トレーニングボディに関連する静止形状埋込みを取得するために、静止しているポーズとともに推定登録全身スキャンを符号化するステップと、
前記トレーニングボディについての識別ベースの静止形状データを取得するために、前記コンピューティングシステムによって、形状デコーダモデルを使用して、前記静止形状埋込みを復号するステップと、
前記トレーニングボディに関連する顔表情埋込みを取得するために、前記コンピューティングシステムによって、顔エンコーダモデルを使用して、前記グランドトゥルース登録の顔詳細スキャンから導出されたデータを符号化するステップと、
前記トレーニングボディについての顔表情データを取得するために、前記コンピューティングシステムによって、顔デコーダモデルを使用して、前記顔表情埋込みを復号するステップと、
前記コンピューティングシステムによって、前記識別ベースの静止形状データ、前記顔表情データ、および前記任意のポーズに対応するポーズパラメータのセットに少なくとも部分的に基づいて、前記トレーニングボディのトレーニングポーズメッシュを生成するステップと、
前記トレーニングボディについて生成された前記トレーニングポーズメッシュを、前記任意のポーズを有する前記グランドトゥルース登録の全身スキャンおよび前記グランドトゥルース登録の顔詳細スキャンと比較する再構成損失関数を評価するステップと、
前記形状エンコーダモデルと、前記形状デコーダモデルと、前記顔エンコーダモデルと、前記顔デコーダモデルとを、前記再構成損失
関数に少なくとも部分的に基づいて、共同でトレーニングするステップと、
少なくとも前記形状デコーダモデルと、前記顔デコーダモデルとを含む前記機械学習済み3次元人間形状モデルを提供するステップと
を含む、コンピュータ実装方法。
【請求項2】
前記コンピューティングシステムによって、前記トレーニングボディの前記トレーニングポーズメッシュを生成するステップが、前記コンピューティングシステムによって、ポーズ空間変形モデルを使用して、前記トレーニングボディについてのポーズによる形状調整を生成するためにポーズパラメータの前記セットを処理するステップを含み、
前記ポーズ空間変形モデルが、前記再構成損失
関数に少なくとも部分的に基づいて、前記形状エンコーダモデル、前記形状デコーダモデル、前記顔エンコーダモデル、および前記顔デコーダモデルとともに共同でトレーニングされる、
請求項1に記載のコンピュータ実装方法。
【請求項3】
前記コンピューティングシステムによって、前記トレーニングボディの前記トレーニングポーズメッシュを生成するステップが、
前記トレーニングボディの骨格表現の複数の関節について複数の予測関節中心を生成するために、前記コンピューティングシステムによって、関節中心予測モデルを使用して、前記識別ベースの静止形状データを処理するステップと、
前記トレーニングボディの前記トレーニングポーズメッシュを生成するために、前記コンピューティングシステムによって、ブレンドスキニングモデルを使用して、前記顔表情データ、前記ポーズによる形状調整、前記識別ベースの静止形状データ、および前記1つまたは複数の予測関節中心を処理するステップと
を含み、
前記関節中心予測モデルおよび前記ブレンドスキニングモデルが、前記再構成損失
関数に少なくとも部分的に基づいて、前記形状エンコーダモデル、前記形状デコーダモデル、前記顔エンコーダモデル、前記顔デコーダモデル、および前記ポーズ空間変形モデルとともに共同でトレーニングされる、
請求項2に記載のコンピュータ実装方法。
【請求項4】
前記ブレンドスキニングモデルが、前記複数の関節に対してそれぞれ複数の学習済みの重みを有する線形ブレンドスキニングモデルを含む、請求項3に記載のコンピュータ実装方法。
【請求項5】
前記トレーニングボディの前記1つまたは複数のグランドトゥルース登録の形状スキャンが、グランドトゥルース登録の手の詳細スキャンさらに含み、前記再構成損失関数が、前記トレーニングポーズメッシュと前記グランドトゥルース登録の手の詳細スキャンとの間の差を評価する、請求項1から4のいずれか一項に記載のコンピュータ実装方法。
【請求項6】
前記共同でトレーニングするステップが、(1)ポーズパラメータの前記セットを推定することと、(2)ポーズパラメータの前記セットを固定して、前記形状エンコーダモデル、前記形状デコーダモデル、前記顔エンコーダモデル、および前記顔デコーダモデルのパラメータを更新することとを交互に行うステップを含む、請求項1から5のいずれか一項に記載のコンピュータ実装方法。
【請求項7】
前記再構成損失関数が、前記トレーニングボディの前記1つまたは複数のグランドトゥルース登録の形状スキャンの中の1対1対応およびフィルタリングで、頂点ごとのユークリッド距離誤差を評価する、請求項1から6のいずれか一項に記載のコンピュータ実装方法。
【請求項8】
エンドツーエンドのパイプラインにおいて共同でトレーニングされた少なくとも顔および体の形状コンポーネントを有する機械学習済み3次元人間形状モデルを特徴として備えるコンピューティングシステムであって、
1つまたは複数のプロセッサと、
機械学習済み3次元人間形状モデルをまとめて記憶する1つまたは複数の非一時的コンピュータ可読媒体であって、前記機械学習済み3次元人間形状モデルが、
人体についての顔表情データを生成するために、前記人体に関連する顔表情埋込みを処理するようにトレーニングされた機械学習済み顔表情デコーダモデルと、
前記人体についてのポーズによる形状調整を生成するために、ポーズパラメータのセットを処理するようにトレーニングされた機械学習済みポーズ空間変形モデルと、
前記人体についての識別ベースの静止形状データを生成するために、前記人体に関連する静止形状埋込みを処理するようにトレーニングされた機械学習済み形状デコーダモデルと
を含む、1つまたは複数の非一時的コンピュータ可読媒体と
を備え、
前記機械学習済み3次元人間形状モデルが、前記顔表情データ、前記ポーズによる形状調整、および前記識別ベースの静止形状データに少なくとも部分的に基づいて、前記人体のポーズメッシュを生成するようにトレーニングされており、
前記機械学習済み顔表情デコーダモデル、前記機械学習済みポーズ空間変形モデル、および前記機械学習済み形状デコーダモデルのすべてが、トレーニングボディについて前記機械学習済み3次元人間形状モデルによって生成されたトレーニングポーズメッシュを、前記トレーニングボディの1つまたは複数のグランドトゥルース登録の形状スキャンと比較する再構成損失関数に少なくとも部分的に基づいて、エンドツーエンドで共同でトレーニングされている、コンピューティングシステム。
【請求項9】
前記機械学習済み3次元人間形状モデルが、
前記人体の骨格表現の複数の関節について複数の予測関節中心を生成するために、前記識別ベースの静止形状データを処理するようにトレーニングされた機械学習済み関節中心予測モデルと、
前記人体の前記ポーズメッシュを生成するために、前記顔表情データ、前記ポーズによる形状調整、前記識別ベースの静止形状データ、および前記1つまたは複数の予測関節中心を処理するようにトレーニングされた機械学習済みブレンドスキニングモデルと
をさらに含み、
前記機械学習済み関節中心予測モデルおよび前記機械学習済みブレンドスキニングモデルが、前記再構成損失関数に少なくとも部分的に基づいて、前記機械学習済み顔表情デコーダモデル、前記機械学習済みポーズ空間変形モデル、および前記機械学習済み形状デコーダモデルとともに、エンドツーエンドで共同でトレーニングされている、請求項8に記載のコンピューティングシステム。
【請求項10】
前記機械学習済みブレンドスキニングモデルが、前記複数の関節に対してそれぞれ複数の学習済みの重みを有する線形ブレンドスキニングモデルを含む、請求項9に記載のコンピューティングシステム。
【請求項11】
前記トレーニングボディの前記1つまたは複数のグランドトゥルース登録の形状スキャンが、グランドトゥルース登録の全身スキャンと、前記グランドトゥルース登録の全身スキャンとは別個であるグランドトゥルース登録の顔詳細スキャンとを含む、請求項8から10のいずれか一項に記載のコンピューティングシステム。
【請求項12】
前記トレーニングボディの前記1つまたは複数のグランドトゥルース登録の形状スキャンが、前記グランドトゥルース登録の全身スキャンおよび前記グランドトゥルース登録の顔詳細スキャンとは別個であるグランドトゥルース登録の手の詳細スキャンをさらに含む、請求項11に記載のコンピューティングシステム。
【請求項13】
前記機械学習済み顔表情デコーダモデルが、トレーニング頭部メッシュを受け取り、前記顔表情埋込みを生成するために前記トレーニング頭部メッシュを符号化し、前記人体についての前記顔表情データを生成するために前記顔表情埋込みを処理するようにトレーニングされた、顔表情変分オートエンコーダの一部分としてトレーニングされた、請求項8から12のいずれか一項に記載のコンピューティングシステム。
【請求項14】
前記機械学習済み形状デコーダモデルが、トレーニングボディ静止形状メッシュを受け取り、前記静止形状埋込みを生成するために前記トレーニングボディ静止形状メッシュを符号化し、前記人体についての前記識別ベースの静止形状データを生成するために前記静止形状埋込みを処理するようにトレーニングされた、形状変分オートエンコーダの一部分としてトレーニングされた、請求項8から13のいずれか一項に記載のコンピューティングシステム。
【請求項15】
ポーズパラメータの前記セットが、それぞれ頭部、体、左手、および右手の関節に対する4つの特徴ベクトルを含み、前記機械学習済みポーズ空間変形モデルが、前記4つの特徴ベクトルを一緒に受け取り、出力の単一のセットを出力するように構成された修正線形ユニットレイヤを含む、請求項8から14のいずれか一項に記載のコンピューティングシステム。
【請求項16】
前記機械学習済み3次元人間形状モデルが、複数のトレーニング例の各々について、(1)ポーズパラメータの前記セットを推定することと、(2)ポーズパラメータの前記セットを固定して、前記機械学習済み3次元人間形状モデルの他のパラメータを更新することとを交互に行うことによってトレーニングされた、請求項8から15のいずれか一項に記載のコンピューティングシステム。
【請求項17】
前記再構成損失関数が、前記トレーニングボディの前記1つまたは複数のグランドトゥルース登録の形状スキャンの中の1対1対応およびフィルタリングで、頂点ごとのユークリッド距離誤差を評価する、請求項8から16のいずれか一項に記載のコンピューティングシステム。
【請求項18】
前記1つまたは複数の非一時的コンピュータ可読媒体が、前記1つまたは複数のプロセッサによって実行されると、前記コンピューティングシステムに動作を実行させる命令をさらに記憶し、前記動作が、
新しい人体に関連する新しい顔表情埋込み、ポーズパラメータの新しいセット、および新しい静止形状埋込みを取得することと、
前記新しい顔表情埋込み、ポーズパラメータの前記新しいセット、および前記新しい静止形状埋込みに少なくとも部分的に基づいて、前記新しい人体の新しいポーズメッシュを生成することと
を含む、請求項8から17のいずれか一項に記載のコンピューティングシステム。
【請求項19】
前記新しい顔表情埋込み、ポーズパラメータの前記新しいセット、および前記新しい静止形状埋込みを取得することが、
前記新しい人体を示す単眼画像から、前記新しい顔表情埋込み、ポーズパラメータの前記新しいセット、および前記新しい静止形状埋込みを生成すること
を含む、請求項18に記載のコンピューティングシステム。
【請求項20】
機械学習済み3次元人間形状モデルをまとめて記憶する1つまたは複数の非一時的コンピュータ可読媒体であって、前記機械学習済み3次元人間形状モデルが、
人体についての顔表情データを生成するために、前記人体に関連する顔表情埋込みを処理するようにトレーニングされた機械学習済み顔表情デコーダモデルと、
前記人体についての識別ベースの形状データを生成するために、前記人体に関連する形状埋込みを処理するようにトレーニングされた機械学習済み形状デコーダモデルと
を含み、
前記機械学習済み3次元人間形状モデルが、前記顔表情データ、ポーズパラメータのセット、前記識別ベースの形状データに少なくとも部分的に基づいて、前記人体のポーズメッシュを生成するようにトレーニングされ、
前記機械学習済み顔表情デコーダモデルおよび前記機械学習済み形状デコーダモデルが、トレーニングボディについての前記機械学習済み3次元人間形状モデルによって生成されたトレーニングポーズメッシュを、前記トレーニングボディの1つまたは複数のグランドトゥルース登録の形状スキャンと比較する再構成損失関数に少なくとも部分的に基づいて、エンドツーエンドで共同でトレーニングされている、1つまたは複数の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、一般に、3次元(3D)人間形状モデリングパイプラインに関する。より詳細には、本開示は、エンドツーエンドで一緒にトレーニングされた少なくとも顔および体の形状コンポーネントを有する、機械学習済み3次元人間形状モデルを含むまたは使用するシステムおよび方法に関する。
【背景技術】
【0002】
人間の動き、行為、および表現は、様々な技術分野に中心的な実用上の重要性があり、継続的に関心の的になっている。例として、画像および映像における創造的キャプチャ、没入型写真、ならびに物理的3D空間推論はすべて、人体の向上したモデリングから恩恵を受けるのに役立つ技術分野である。したがって、ポーズ、形状、顔の表情、および/または手の操作のレベルで全身の詳細を正確に表すことができるモデルが、3Dでのみ十分に理解され得る微細なインタラクションをキャプチャし、深く分析するために不可欠である。
【0003】
画像および映像中の人間のスティックフィギュアの場所を突き止めること、およびいくつかの条件下では、等価な3D骨格および基本形状までのリフティングにはかなりの進歩があったが、3D物理空間を土台としている、意味的に重要な表面のレベルで人体の正確なモデルを再構築する全般的な探求は、依然として著しい革新を行っている分野である。
【0004】
少なくとも中期的にはモデル構成進歩の可能性は、直感物理的および意味論的人間モデリングと、大規模なキャプチャデータセットとの間の発生時にあると思われる。顔、手、および体についての多くの興味深い、強力なモデルが、時間とともに構成されたが、すべてではないとしても、大部分は、完全な人体という状況ではなく、分離して構築されてきた。したがって、必然的にそれらは、深層学習との関連で最近出現した、大規模なデータ分析およびモデル構成プロセスを利用していない。
【0005】
例として、Adam、Frank、またはSMPL-Xのような、いくつかの最近の全身モデルは、顔、体、および手について旧来のコンポーネントを組み合わせるが、通常、すでに学習されたコンポーネントの上に適切なスケーリングを用いて整合性のある、関節パラメタリゼーション(joint parameterization)を構成することに焦点を当てる。これにより、すべてのデータにおける構造を同時に十分に活用し、コンポーネントの代替表現または異なる損失で実験し、最終的な影響を評価し、革新することが困難になる。
【発明の概要】
【課題を解決するための手段】
【0006】
本開示の実施形態の態様および利点が、以下の説明において部分的に記載され、または説明から学ぶことができ、または実施形態の実践を通して学ぶことができる。
【0007】
本開示の1つの例示的な態様は、エンドツーエンドで一緒にトレーニングされた少なくとも顔および体の形状コンポーネントを有する、機械学習済み3次元人間形状モデルを特徴とするコンピューティングシステムを対象とする。このコンピューティングシステムは、1つまたは複数のプロセッサと、機械学習済み3次元人間形状モデルをまとめて記憶する1つまたは複数の非一時的コンピュータ可読媒体とを含む。機械学習済み3次元人間形状モデルは、人体についての顔表情データを生成するために、人体に関連する顔表情埋込みを処理するようにトレーニングされた機械学習済み顔表情デコーダモデル(machine-learned facial expression decoder model)を含む。機械学習済み3次元人間形状モデルは、人体についてのポーズによる形状調整を生成するために、ポーズパラメータのセットを処理するようにトレーニングされた機械学習済みポーズ空間変形(pose space deformation)モデルを含む。機械学習済み3次元人間形状モデルは、人体についての識別ベースの静止形状データを生成するために、人体に関連する静止形状(rest shape)埋込みを処理するようにトレーニングされた機械学習済み形状デコーダモデルを含む。機械学習済み3次元人間形状モデルは、顔表情データ、ポーズによる形状調整、および識別ベースの静止形状データに少なくとも部分的に基づいて、人体のポーズメッシュ(posed mesh)を生成するようにトレーニングされる。機械学習済み顔表情デコーダモデル、機械学習済みポーズ空間変形モデル、および機械学習済み形状デコーダモデルのすべてが、トレーニングボディについて機械学習済み3次元人間形状モデルによって生成されたトレーニングポーズメッシュを、トレーニングボディの1つまたは複数のグランドトゥルース登録の形状スキャンと比較する、再構成損失関数(reconstructive loss function)に少なくとも部分的に基づいて、エンドツーエンドで一緒にトレーニングされている。
【0008】
本開示の別の例示的な態様は、機械学習済み3次元人間形状モデルをエンドツーエンドで一緒にトレーニングするためのコンピュータ実装方法を対象とする。この方法は、1つまたは複数のコンピューティングデバイスを含むコンピューティングシステムによって、トレーニングボディの1つまたは複数のグランドトゥルース登録の形状スキャンを取得するステップを含み、トレーニングボディの1つまたは複数のグランドトゥルース登録の形状スキャンは、任意のポーズを有する少なくともグランドトゥルース登録の全身スキャンと、グランドトゥルース登録の顔詳細スキャンとを含む。この方法は、コンピューティングシステムによって、形状エンコーダモデルを使用して、トレーニングボディに関連する静止形状埋込みを取得するために、静止しているポーズとともに推定登録全身スキャンを符号化するステップを含む。この方法は、トレーニングボディについての識別ベースの静止形状データを取得するために、コンピューティングシステムによって、形状デコーダモデルを使用して、静止形状埋込みを復号するステップを含む。この方法は、トレーニングボディに関連する顔表情埋込みを取得するために、コンピューティングシステムによって、顔のエンコーダモデルを使用して、グランドトゥルース登録の顔詳細スキャンから導出されたデータを符号化するステップを含む。この方法は、トレーニングボディについての顔表情データを取得するために、コンピューティングシステムによって、顔デコーダモデルを使用して、顔表情埋込みを復号するステップを含む。この方法は、コンピューティングシステムによって、識別ベースの静止形状データ、顔表情データ、および任意のポーズに対応するポーズパラメータのセットに少なくとも部分的に基づいて、トレーニングボディについてのトレーニングポーズメッシュを生成するステップを含む。この方法は、トレーニングボディについて生成されたトレーニングポーズメッシュを、任意のポーズを有するグランドトゥルース登録の全身スキャンおよびグランドトゥルース登録の顔詳細スキャンと比較する再構成損失関数を評価するステップを含む。この方法は、形状エンコーダモデルと、形状デコーダモデルと、顔エンコーダモデルと、顔デコーダモデルとを、再構成損失に少なくとも部分的に基づいて、一緒にトレーニングするステップを含む。
【0009】
本開示の別の例示的な態様は、人体についての顔表情データを生成するために、人体に関連する顔表情埋込みを処理するようにトレーニングされた機械学習済み顔表情デコーダモデルと、人体についての識別ベースの形状データを生成するために、人体に関連する形状埋込みを処理するようにトレーニングされた機械学習済み形状デコーダモデルとを含む、機械学習済み3次元人間形状モデルをまとめて記憶する、1つまたは複数の非一時的コンピュータ可読媒体を対象とする。機械学習済み3次元人間形状モデルは、顔表情データ、ポーズパラメータのセット、および識別ベースの形状データに少なくとも部分的に基づいて、人体のポーズメッシュを生成するようにトレーニングされる。機械学習済み顔表情デコーダモデルおよび機械学習済み形状デコーダモデルは、トレーニングボディについての機械学習済み3次元人間形状モデルによって生成されたトレーニングポーズメッシュを、トレーニングボディの1つまたは複数のグランドトゥルース登録の形状スキャンと比較する再構成損失関数に少なくとも部分的に基づいて、エンドツーエンドで一緒にトレーニングされている。
【0010】
本開示の他の態様は、様々なシステム、装置、非一時的コンピュータ可読媒体、ユーザインターフェース、および電子デバイスを対象とする。
【0011】
本開示の様々な実施形態のこれらおよび他の特徴、態様、および利点は、以下の説明および添付の特許請求の範囲を参照すると、より良く理解されよう。本明細書に組み込まれるとともにその一部をなす添付の図面は、本開示の例示的な実施形態を示しており、説明とともに、関連原理を説明するのに役立つ。
【0012】
当業者を対象とする実施形態の詳細な説明が本明細書に記載され、本明細書は添付の図を参照する。
【図面の簡単な説明】
【0013】
【
図1】本開示の例示的な実施形態による、例示的な人間形状モデルの例示的な評価を示す図である。
【
図2】本開示の例示的実施形態による、例示的な機械学習済み人間形状モデルのブロック図である。
【
図3】本開示の例示的実施形態による、頭部および手のスキャンのクローズアップを示す図である。
【
図4】本開示の例示的な実施形態による、例示的な人間形状モデルの例示的な評価を示す図である。
【
図5】本開示の例示的な実施形態による、例示的なポーズ空間変形モデルのブロック図である。
【
図6】本開示の例示的な実施形態による、例示的な人間形状モデルの例示的な評価を示す図である。
【
図7】本開示の例示的な実施形態による、符号化技法の例示的な分析を示す図である。
【
図8】本開示の例示的な実施形態による、例示的な人間形状モデルの例示的な評価を示す図である。
【
図9】本開示の例示的な実施形態による、例示的な人間形状モデルの例示的な評価を示す図である。
【
図10】本開示の例示的な実施形態による、単眼画像からの人間のポーズおよび形状再構成を示す図である。
【
図11A】本開示の例示的な実施形態による、例示的なコンピューティングシステムのブロック図である。
【
図11B】本開示の例示的な実施形態による、例示的なコンピューティングデバイスのブロック図である。
【
図11C】本開示の例示的な実施形態による、例示的なコンピューティングデバイスのブロック図である。
【発明を実施するための形態】
【0014】
複数の図にわたって繰り返される参照番号は、様々な実装形態において同じ特徴を識別することが意図されている。
【0015】
1.序論
一般に、本開示は、十分にトレーニング可能なモジュール式の深層学習フレームワーク内の、統計学的、多関節3D人間形状モデリングパイプラインを対象とする。詳細には、本開示の態様は、トレーニングデータのセット上でエンドツーエンドで一緒にトレーニングされる少なくとも顔および体の形状コンポーネントを有する機械学習済み3D人間形状モデルを対象とする。モデルコンポーネント(たとえば、顔のコンポーネントと体のコンポーネントの両方を含む)のジョイントトレーニングが、生成された顔形状と体形状との間の向上した整合性の合成を可能にする。
【0016】
より詳細には、いくつかの実装形態において、トレーニングデータのセットは、様々なポーズでキャプチャされた人間の高解像度の完全3Dボディスキャンを、任意選択で頭部および顔の表情および/または手の関節の追加のクローズアップとともに、含むことができる。1つの例示的なトレーニングデータセットは、34,000を超える多様な人間の構成を含むことができる。いくつかの実装形態では、これらのスキャンの各々が、1つまたは複数の初期の、アーティストが設計した、性別による区別のないリグ入り(rigged)クワッドメッシュに登録されて、人体の登録された形状スキャンを得ることができる。
【0017】
本明細書で説明するいくつかの例示的な機械学習済み3D人間形状モデルは、いくつかのサブモデルまたは他のモジュール式コンポーネントを含むことができる。例として、人間形状モデルは、人体についての顔表情データを生成するために人体に関連する顔表情埋込みを処理するようにトレーニングされた機械学習済み顔表情デコーダモデル、人体についてのポーズによる形状調整を生成するためにポーズパラメータのセットを処理するようにトレーニングされた機械学習済みポーズ空間変形モデル、および/または人体についての識別ベースの静止形状データを生成するために人体に関連する静止形状埋込みを処理するようにトレーニングされた機械学習済み形状デコーダモデルを含むことができる。たとえば、いくつかの実装形態では、デコーダモデルは、入力形状メッシュ(たとえば、顔のメッシュまたは体の静止形状メッシュ)を受け取り、それぞれの埋込み(たとえば、顔表情埋込みまたは静止形状埋込み)を生成するようにトレーニングされたそれぞれのオートエンコーダ(たとえば、変分オートエンコーダ)の一部分としてトレーニングされ得る。
【0018】
機械学習済み3D人間形状モデルに含まれ得る追加の例示的なモデルは、人体の骨格表現の複数の関節について複数の予測される関節中心を生成するために識別ベースの静止形状データを処理するようにトレーニングされた機械学習済み関節中心予測モデル、ならびに/または人体のポーズメッシュを生成するために、顔表情データ、ポーズによる形状調整、識別ベースの静止形状データ、および1つもしくは複数の予測される関節中心を処理するようにトレーニングされた機械学習済みブレンドスキニングモデルを含むことができる。
【0019】
本開示の一態様によれば、上記で説明した、またはさもなければ機械学習済み3D人間形状モデルに含まれる、モデルの一部または全部が、共有される損失関数上でエンドツーエンドで一緒にトレーニングされ得る。したがって、いくつかの実装形態では、変分オートエンコーダ、ポーズ空間変形補正、骨格関節中心予測器、および/またはブレンドスキニング関数に基づく非線形形状空間を含むすべてのモデルパラメータが、単一の整合性のある学習ループにおいてトレーニングされ得る。
【0020】
3D動的スキャンデータ(たとえば、34,000を超える多様な人間の構成)に関してモデルのすべてを同時にトレーニングすると、相関関係をキャプチャするモデルの能力全体が向上し、様々なコンポーネント(たとえば、モデル化された顔、体、および/または手)の整合性が確保され得る。言い方を変えれば、顔、体、および/または手のスキャンを含むことができるトレーニングデータに顔、体、および/または手のコンポーネントのジョイントトレーニングを使用することにより、得られるモデルは、顔表情分析、ならびに体(詳細な手を含む)形状およびポーズ推定をより自然にかつ矛盾なくサポートすることができる。
【0021】
本開示は、本明細書で説明するように構築され、トレーニングされ、かつ、2つの異なる解像度、すなわち10,168個の頂点からなる中解像度GHUM、および2,852個の頂点の低解像度GHUML(ite)を有する、2つの例示的な十分にトレーニング可能な、性別による区別のない一般的な人間モデルを提供する。例示的な実験データもまた、これらの2つの例示的な人間モデルに提供され、誤差が減少して向上した品質および整合性を示す。例として、
図1は、GHS3DからのデータについてのGHUMおよびGHUMLの例示的な評価を、左側の両モデルのヒートマップとともに提供する。レンダリングは、対象(後列)の異なる体のポーズの登録、ならびに中列および前列にそれぞれGHUMLフィットおよびGHUMフィットを示す。両方のモデルが、優れた品質推定を示し、GHUMでは誤差がより小さい。
【0022】
したがって、本開示の態様は、体の形状、ならびに顔の表情および/または手の動きを作動させることができる全身の、統計学的な人間の形状およびポーズモデルを構成するためのエンドツーエンドの学習パイプラインを対象とする。コンピューティングシステムが深層学習を実施できるようにし、解剖学的に関節角度制約がある最小限の人間の骨格パラメタリゼーションの状況において、非線形形状空間、ポーズ空間変形補正、骨格関節中心推定器、および/またはブレンドスキニング関数を含む、すべてのモデルコンポーネントの同時トレーニングが可能になる、エンドツーエンドのパイプラインおよび統一損失関数が提供される。このモデルは、体の部分コンポーネント間の最大限の詳細および設計整合性を確保するために、高解像度の全身スキャン、ならびに動いている顔および/または手のクローズアップを用いてトレーニングされ得る。
【0023】
加えて、一般的な人間の形状の新しく収集された3Dデータセット、GHS3Dが記述され、30,000を超える写真のように現実的な動的人体スキャンで構成される。例示的な実施形態はまた、Caesarからの4,000を超える全身スキャンを使用する。中程度の解像度のモデル、GHUMと、特別に設計された(ダウンサンプリングされていない)低解像度のモデル、GHUMLの両方が提供され、それらの相対的なパフォーマンスが、異なる線形および非線形モデル(体の形状および顔の表情ではPCAまたは変分オートエンコーダ)の下で、登録および拘束付き3D表面フィッティングについて評価される。画像からの形状およびポーズの復元も、図示されている。
【0024】
本明細書で説明するシステムおよび方法は、いくつかの技術的効果および利益を提供する。1つの例示的な技術的効果として、本開示のシステムおよび方法は、体、顔、および/または手の特徴間の整合性が改善した人間の形状を含む、人間の形状のより現実的な2次元または3次元レンダリングまたはモデルを提供することができる。具体的には、モデルコンポーネントは、互いに整合するように学習し、また領域間共通の(cross-domain)パターンまたは関係を学習することができる。したがって、本開示のシステムおよび方法は、コンピューティングシステムが向上した人間モデリング機能を実施できるようにすることができる。
【0025】
別の例示的な技術的効果は、複数のモデルコンポーネントを一緒にトレーニングすることによって、人間の形状モデルを生成するために必要なトレーニング時間の総量を減らすことができる。より詳細には、以前の手法は、顔および体のコンポーネントを別々にトレーニングし、次いでそれらを事後に結合しようとし、2つの異なるトレーニングプロセスと、さらに組合せを容易にするための追加の作業となり、その組合せはそれでもなお整合性がない場合がある。提案する手法は、1つのエンドツーエンドプロセスですべてのモデルコンポーネントを一緒にトレーニングし、それによってトレーニングおよび得られるモデルをより整合性のあるものにする。
【0026】
次に図を参照しながら、本開示の例示的な実施形態についてさらに詳細に説明する。
【0027】
2.例示的な実装形態の概要
構造化されていないポイントクラウド
【数1】
として表される、ただしポイントPの数が変化する、人体スキャンのトレーニングセットを仮定すると、体の形状の変動性および関節により必然的に変形することを表す、統計学的な人体モデル
【数2】
が学習されることを可能にする技法が提供される。体のモデルXは、たとえば、アーティストが提供する(リグ入り)テンプレートメッシュによって指定されるように、V個の頂点をもつ整合したトポロジーを有することができ、αは、形状と関節の両方の結果として体の変形を制御する変数のセットとすることができる。
図2に示すように、スキャンデータYからデータ駆動型人間モデルを学習するために、体のテンプレートはまず、
【数3】
としてマークされる、同じトポロジーの新しい、登録済みグランドトゥルースメッシュを取得するために、ポイントクラウドに登録され得る。
【0028】
登録されたグランドトゥルースメッシュX*は次いで、モデルパラメータαが関節と形状調整の両方の結果として入力を厳密にマッチさせる出力を生成するように調整されるエンドツーエンドのトレーニングネットワークにフィードされ得る。反復最近傍点(ICP: iterative closest point)ロス(登録に使用されるものと同じ)による、またはプロキシメッシュX*に合わせた、ポイントクラウドへの直接モデルパラメータ調整を含む、様々な技法を使用することができる。同じモデルトポロジーのターゲット入力メッシュX*として有して、プロセスを大幅により速くし、トレーニング損失をより良いふるまいにする。
【0029】
したがって、
図2は、例示的なエンドツーエンドの統計学的3D多関節人間形状モデル構成の概要を示す。トレーニング入力は、静止している(または「A」)ポーズと、様々な関節および軟組織の変形を表す任意のポーズの両方を含む、高解像度の3Dボディスキャンのセットを含むことができる。加えて、異なるジェスチャーおよびオブジェクトグラブ(object grab)をキャプチャするために、詳細な顔の表情の頭部クローズアップスキャンおよび/または手のクローズアップスキャンが収集され得る。これらのスキャンは、Yに概略的に示されている。
【0030】
ボディランドマークが、複数の仮想視点(たとえばこれは、データを収集するために使用されたカメラの当初のセットとは異なっていてもよい)からデータ(たとえば、多視点ステレオ三角測量技法を使用して取得される)の写真のように現実的な3D再構成をレンダリングし、生成された画像においてそれらのランドマークを検出し、それらの対応する3d再構成を取得するために画像中のランドマーク検出を三角測量することによって、自動的に識別され得る。アーティストが設計した全身多関節メッシュが、先のできる限り等角の表面の下で、(たとえば、メッシュファセット距離にポイントスキャンとして実装される)疎なランドマーク対応と密な反復最近傍点(IPC)残余部を組み合わせる損失を使用して、ポイントクラウドに次第に登録され得る。登録されたグランドトゥルース形状スキャンは、X*に概略的に示されている。
【0031】
図2に示す例示的な人間形状モデルは、体φ
bにはディープ変分オートエンコーダ(VAE)および顔の表情φ
fにはオフセットVAEとして実装される非線形形状空間を有し得る。例示的な人間形状モデルはまた、J個の関節を有する骨格Kによって変調される、トレーニング可能なポーズ空間変形関数Dと、中心予測器Cと、ブレンドスキニング関数Mとを含む。
【0032】
いくつかの実装形態では、トレーニング中に、同じ対象のすべての高解像度スキャン(全身と顔および手のクローズアップの両方)が、フィルタFによって適切にマスキングされた残余部とともに、使用され得る(
図3参照)。モデル構成について、N個のキャプチャされた対象が、B個の全身スキャン、F個のクローズアップの手のスキャン、およびH個のクローズアップの頭部スキャンとともに使用され得る。いくつかの実装形態では、学習中に、トレーニングアルゴリズムは、各スキャンθにおけるポーズ推定に関して損失関数を最小化することと、他のモデルパラメータ(φ,γ,ψ,ω)に関して損失関数を最適化することとを交互に行うことができる。
【0033】
動作中、ポーズおよび形状推定のために、モデルは、φ=(φf,φb)によって与えられるエンコーダデコーダを用いて、体形および顔の表情β=(βf,βb)についての運動学的ポーズθおよびVAE潜在空間を含むパラメータα=(θ,β)によって制御され得る。
【0034】
2.1例示的な人間モデル表現
本開示の例示的な実装形態は、人間モデルを、J個の関節を有する骨格K、および関節の動きを明示的に符号化するように線形ブレンディングスキニング(LBS)で変形された皮膚によって指定される、多関節メッシュとして表すことができる。骨格の関節の動きに加えて、顔の表情を導出するために、非線形モデルが使用され得る。J個の関節を有するモデルXを、M(α=(θ,β),φ,γ,ω)として、詳細には、
【数4】
として、公式化することができ、ここで、
【数5】
は、「A」ポーズにおける識別ベースの静止形状であり(
図2参照)、βは体形変動性(PCAまたはVAEを含む異なる低次元表現が使用され得る)を符号化する低次元の静止形状埋込みベクトルであり、同様に、
【数6】
は、低次元の顔表情埋込みβ
fで制御される、ニュートラルの頭部ポーズでの顔の表情であり、
【数7】
は、体形によって決まる骨格関節中心であり、
【数8】
は、各関節についてオイラー角の(最高)3回転DOFと、ルートにおける3並進変数(translational variable)とからなる骨格ポーズパラメータのベクトルであり、
【数9】
は、頂点ごとのスキニングウェイト(たとえば、いくつかの実装形態では、多くともいくつかの関節(たとえば、I=4)によって影響を受ける場合がある)であり、最後にポーズによる補正ブレンドシェイプ
【数10】
が、スキニングアーチファクトを修復するために静止形状に追加される。
【0035】
本明細書ではGHUMおよびGHUMLと呼ぶ、提案する人間モデルの2つの例示的な実装形態は、それぞれ、アーティストが定義するリグ入りテンプレートメッシュ(V
ghum=10,168、V
ghuml=2852、J=63)を使用して生成される。GHUMとGHUMLの両方について、
図2に示すパイプラインは、すべてのパラメータ(θ,φ,γ,ψ,ω)を推定したが、メッシュトポロジーおよび関節階層(joint hierarchy)Kは、固定的であると考えられる。生体力学的な関節角度限界もまた最適化中に活用され得るように、階層は、解剖学的に(したがって最小限に)パラメータ化される。頂点x
i∈Xは、
【数11】
と書くことができ、ここでT
j(θ,c)は、ルートからjまでキネマティックチェーンをトラバースすることによって統合される、関節jのワールド変換行列である。静止からポーズメッシュへの変換は、静止ポーズでのワールド変換行列の逆数
【数12】
を掛けることによって構成され得る。
【0036】
3.例示的なエンドツーエンドの統計モデル学習
この節では、スキニングウェイトωを最適化する例示的なエンドツーエンドのニューラルネットワークベースのパイプラインの説明を行い、静止形状埋込み
【数13】
、顔表情埋込み
【数14】
、識別形状による関節中心c(β)、およびポーズによるブレンドシェイプ
【数15】
を、複数の対象の、複数のポーズの登録済み表面メッシュX
*から全身およびクローズアップの顔および手のスキャン(
図2参照)まで学習する。ICP登録の結果として、いくつかの例示的な再構成損失を、以下のような1対1の対応の下で、頂点ごとのユークリッド距離誤差を使用して公式化することができ、
【数16】
ここでFは、異なるタイプのデータ(たとえば、クローズアップとは対照的に全身スキャン)を構成するフィルタである。いくつかの実装形態では、X(α)を構成するために、ポーズθは、統計学的形状パラメータと一緒に共推定(co-estimate)され得る。一例として、BFGSレイヤに基づいて、現在の形状パラメータの下でのポーズパラメータθを推定することと、θを固定して他のモデルパラメータを更新することとを交互に行うことを含む、ブロック座標降下法が実施され得る。一例として、スキニングが、アーティストが提供するデフォルトから、すべての他のパラメータを0に、初期設定され得る。各サブモジュールが、大域的損失(4)に基づいてパラメータαを更新することができる。
【0037】
3.1例示的な変分体形オートエンコーダ
いくつかの例示的な実装形態では、複数の対象の形状スキャンは、静止またはニュートラルの「A」ポーズにおいて、Caesarデータセット(4,329対象)ならびにGHS3Dのキャプチャされたスキャンにモデルを登録することによって取得され得る。一例として、
図3は、頭部および顔のスキャンのクローズアップを示す。いくつかの例示的な実装形態は、ボディスキャンならびにクローズアップの手および頭部スキャンを融合することによって、ニュートラルのAポーズで全身形状を推定する。単一のボディスキャンからの体形推定と比較して、これらの例示的な実装形態は、追加の頭部および手の形状の詳細を利用することができる。
【0038】
複数の対象について推定される静止形状
【数17】
を仮定すると、コンパクトな潜在空間が、体形変化に構築され得る。一例として、単にPCAサブスペースを構築するのではなく、体形は、より低次元の潜在サブスペースとともにディープ非線形変分オートエンコーダを使用して表すことができる。いくつかの実装形態では、メッシュの関節が推定されるので、オートエンコーダへの入力スキャン
【数18】
はすべて、剛体変換およびポーズの関節から大きな乱れなしに「A」ポーズでよく位置合わせされる。
【0039】
いくつかの例示的な実装形態では、エンコーダおよびデコーダは、パラメトリックReLU活性化関数を使用することができる。それらはいくつかのパラメータに対して、恒等変換(identity transformation)または標準的なReLUのいずれかをモデル化することができるからである。標準的な実行として、変分エンコーダは、平均および分散(μ,Σ)を出力することができ、これらは、サンプリングされたコードβ
bを取得するために、再パラメータ化トリックにより潜在空間に変換することができる。いくつかの実装形態では、単純な分布、N(0,I)を使用することができ、潜在空間を正則化するために損失関数にカルバックライブラーダイバージェンスを融合させることができる。したがって、1つの例示的な公式は、次の通りである。
【数19】
ここで、エンコーダS
Eは、平均体形からの分散を潜在ベクトルβ
bにキャプチャし、デコーダS
Dは、入力ターゲット静止形状にマッチするようにβ
bから静止形状を作り上げる。詳細には、いくつかの例示的な実装形態は、エンコーダおよびデコーダの最初および最後のレイヤをそれぞれ、PCAサブスペース
【数20】
に初期設定し、ここでLは、潜在空間の次元である。すべての他の全結合レイヤが、PReLUユニットを含む、恒等関数(identity)に初期設定され得る。いくつかの実装形態では、対数分散成分(log-variance entry)の部分行列は、0に初期設定することができ、バイアスは、十分に大きい負の値に設定することができる。このようにして、ネットワークは、線形モデルから効果的に初期設定されると同時に、追加パラメータを、たとえばPCAと比較して最小限に保つ。
【0040】
3.2例示的な変分顔表情オートエンコーダ
変分体形オートエンコーダは、顔の形状の分散を含む、様々な体形を表すことができる。(単なる人体計測の頭部および顔の静止変形とは対照的に)複雑な顔の表情をさらにサポートするために、任意選択で追加の顔のモデリングを導入することができる。たとえば、モデルは、GHS3Dの数千の顔の表情の動きシーケンススキャンから構築することができる。3-DOFの関節顎、2つの2-DOFのまぶた、および2つの2-DOFの眼球に加えて、スキニングウェイトおよびポーズ空間変形を含む、頭部の関節接合部(articulated joint)のパラメータは、パイプラインの残りとともに更新することができる。
【0041】
関節ではない表情による顔の動きについては、非線形埋込みβ
fが、変分体形オートエンコーダと同じネットワーク構造内に構築され得る。VAEへの入力は、すべての関節接合部の動き(首、頭部、眼、および顎を含む)を除去することによって、ニュートラルの頭部ポーズでの顔の表情
【数21】
(V
f=GHUMでは1,932およびGHUMLでは585)とすることができる。いくつかの実装形態では、登録された頭部メッシュをニュートラルにアンポーズする(un-pose)ために、登録にマッチするニュートラルの頭部形状(表情なし)の関節接合部の動きθは、できる限りフィットされ得る(4)。ポーズ付き頭部と登録との間の変位フィールドは、顔の表情に対して明らかにされ、比較前に、関節接合部θの影響は、緩和(アンポーズ)され得る。
【0042】
3.3例示的なスキニングモデル
非線形形状および顔の表情モデルを適用した後、最適なスキニング関数が、複数の対象および複数のポーズのメッシュデータから統計学的に推定され得る。具体的には、(4)の場合と同じデータ用語が使用され得るが、ここで最適化変数は、関節中心推定器のパラメータ
【数22】
、体形Dへのポーズによる補正(θ,γ)、および/またはスキニングウェイトωとすることができる。
【0043】
骨格関節中心の1つの可能な選択は、それらを、関節によって最大限に影響を受ける2つのメッシュコンポーネント(セグメンテーション)を結合する境界頂点のリング上の平均的位置に配置することである。境界頂点、
【数23】
の平均は、異なる人体比率に中心を適合させるために、骨格がメッシュ表面の凸包内にあることを課す。しかしながら、より良好なスキニングには、推定
【数24】
は、保たれ得るが、線形リグレッサ
【数25】
が、体形から関節中心補正を学習するためにトップに構築され得る。
【数26】
【0044】
いくつかの実装形態では、すべてのメッシュ頂点にわたってプールすることによって大域的に関節中心を学習する代わりに、関節によってスキニングされたそれらの頂点から単に局所的に推定を行うことができる。これは、かなり少ないトレーニング可能なパラメータとなり、3N×3Jから3N×3Iに減少し、実際にはたとえばI=4となる。スパース性もまた、L
1正則化、また骨方向をテンプレートに合わせることにより助長され得る。特異点を回避し、関節中心が表面の外側に動くことを防ぐために、中心補正の大きさ
【数27】
は、正則化することができる。
【0045】
いくつかの実装形態では、複雑な軟組織の変形に起因するスキニングアーチファクトを修復するために、データ駆動型のポーズによる補正器(PSD: pose-dependent corrector)
【数28】
が学習され、静止形状に適用され得る。非線形写像
【数29】
を推定することができる。しかしながら、メッシュ頂点のポーズ空間補正は、直観的に隣接する関節から行われるべきである。したがって、いくつかの例示的な実装形態は、それからポーズ空間変形を線形回帰できる、入力よりもはるかにコンパクトな特徴ベクトル(たとえば、32ユニット)を引き出すために、全結合ReLU活性化層を使用することができる。
【0046】
一例として、
図5は、PSDの利点を示す、ここでは非受動的関節点、たとえば右股関節部(hip)および大腿部、ならびに胸部および腋窩の周りの、例示的なポーズ空間変形アーキテクチャスケッチおよび図を示す。説明を簡単にするために、ここではθは、
【数30】
の代わりに、入力特徴として使用される。
【0047】
さらに、いくつかの事例では
【数31】
は、スパースであり、関節が、それのスキンメッシュパッチ(skinned mesh patch)に局所的変形補正のみを生成することができる。SMPLの密な線形リグレッサと比較すると、提案するネットワークは、トレーニング可能パラメータがかなり少ない、同様の品質の変形を生成する。システムは、PSD補正による過学習(over-fitting)によるターゲットのマッチを避けて、ポーズ空間変形の大きさを、小さくなるように正則化することができる。これは、以下のように単純なL
2ペナルティによって実装され得る。
【数32】
【0048】
高周波ローカルPSDは、多くの場合望ましくなく、過学習に起因する可能性が高い。したがって、以下を用いた、なめらかなポーズ空間変形が推奨され得る。
【数33】
ここで、N(i)は頂点iに隣接する頂点であり、l
i,jは余接ベースのラプラシアン重み(cotangent-based Laplacian weight)である。
【0049】
PSD正則化器および数を減らしたトレーニング可能な重みを用いても、依然として過学習が発生し得る。ポーズ空間変形が特にいくつかの領域(体および手)のみに対して構築されたSMPLまたはMANOとは異なり、PSDモデルは、本開示のいくつかの実装形態において、高解像度の体、手、および頭部のデータクローズアップに基づいて一緒にトレーニングされた、人間モデル全体に対して構成される。結果として、体のデータは、手および頭部の動きに限られた変化を有するが、頭部および手のデータには、体の残部についての動きがない。したがって、すべての関節が損失への影響なしに動くことができる大きい関節空間がある。これは望ましくない。過学習を防ぐために、入力ポーズ特徴ベクトルは、頭部、体、左手、および右手の関節をとらえる、4つの特徴ベクトルに、フィルタリングまたはマスクキングされ得る。各特徴ベクトルは、同じReLUレイヤに取り込むことができ、出力は、次のリグレッサの前に合計され得る。したがって、1つの例示的な損失は、次の通りである。
【数34】
これは、マスキングされた領域の外のPSDを小規模であるように実施し、したがって大域的影響が限られるように、ネットワークによって生成される補正にバイアスをかける。しかしながら、頭部、手、および体の残部の間のエリアに対応する共有表面領域の変形は、すべての関連するデータから学習される。
【0050】
いくつかの実装形態では、パイプラインの終わりにスキニングウェイトを推定するために、線形ブレンディングスキニングレイヤを使用することができ、所与のポーズθおよび顔の表情付きのポーズ補正された静止形状
【数35】
は、トレーニング可能なスキニングウェイトパラメータωによって制御されたポーズメッシュ(2)を出力する。各スキニングされた頂点が、任意選択で、テンプレートのいくつかの数(たとえば、I=4)の関節によって最大限に影響を受ける可能性がある。システムはその場合、ωを正則化して、初期のアーティストがペイントした値
【数36】
に近づけ、空間的になめらかにし、かつ/または頂点ごとのスキニングウェイトが非線形になり、以下のように正規化されるようにする。
【数37】
【0051】
最終のスキンメッシュXはまた、以下のように加算によってなめらかになるように弱く正則化され得る。
【数38】
【0052】
ポーズ推定器。体形推定および現在のスキニングパラメータを仮定すると、ポーズθは、トレーニングセットによって再最適化され得る。探索空間を制限し、整合性を強化し、不自然な局所的最小値を回避するために、人体計測の骨格で利用可能な解剖学的関節角度制限を活用することができる。問題は、箱型制約(box constraint)があるL-BFGSソルバー、およびTensorFlowの自動微分によって評価される勾配を使用して効率的に解決され得る。
【0053】
4.例示的な実験
この節では、本明細書で説明するシステムおよび方法の例示的な実装形態で行われる例示的な実験を説明する。
【0054】
データセット。多様な体および顔形状(4,329対象)を含んでいるCaesarに加えて、本明細書で説明する例示的な実験は、55の体のポーズ、60の手のポーズ、および40の顔の表情の動きシーケンスとともに32の対象(女性16および男性16)をキャプチャするために、60Hzで動作する複数の3dmdシステムも使用した。対象は、BMIが17.5~39の範囲、身長152cm~192cm、年齢22~47である。すべての複数のポーズデータに対して、一般的にトレーニングセットにないポーズを含むフリースタイルの動きシーケンスに基づいて、評価に3対象、およびテストに4対象を使用する。各顔キャプチャシーケンスは、ニュートラルの顔から開始して、指定された顔の表情になり、各シーケンスが約2s続く。
【0055】
データからの登録サンプルが、
図6に示されている。具体的には、
図6は、Caesar(左上)ならびにGHS3Dからのデータのサンプル登録を示す。顔の詳細、および関節の結果としての他の体の部分の軟組織の変形をキャプチャする登録の質に注目されたい。
【0056】
登録。表1は、ICPおよび(拡張された)Chamfer距離を使用したポイントクラウドへの登録を報告する。ICP誤差は、最も近い登録されたメッシュファセットまでの点と平面との距離として測定されるが、Chamferは、点から点で双方向に推定される。
【0057】
Table 1(表1):GHUMおよびGHUMLでのCaesarおよびGHS3D(顔、手、および体の残部の詳細を含む)上の登録誤差。
【表1】
【0058】
提案する登録技法は、誤差が小さく、局所的なポイントクラウドの詳細を保存する(
図6)。
【0059】
モデル評価。フル解像度と低解像度の両方の人間モデル(GHUMおよびGHUML)が、エンドツーエンドのパイプラインを使用して構築された。両方のモデルが、骨格関節の同じセットを共有するが、10,168個のメッシュ頂点に対して2,852個のメッシュ頂点(顔の表情について1,932個の頂点に対して585個の頂点がある)を有する。両方のモデルについて、例示的な実験は、テストデータ上で登録X
*までのメッシュXの頂点に基づく平均ユークリッド距離を評価した。数字はTable 2(表2)に報告され、視覚化は、
図4、
図1、および
図9に示されている(Sup. Matで手の評価を検索されたい)。両方のモデルの出力を、それらの対応するトポロジーの下で登録されたメッシュと比較する。両方のモデルは、多様な体形(たとえば、VAEとしてモデル化される)を厳密に表し、自然な顔の表情(たとえば、顔のVAEとして表現される)を生成し、様々な体形およびポーズに対して顕著なスキニングアーチファクトなしになめらかかつ自然にポーズをとることができる。
【0060】
Table 2(表2):登録するための、頂点に基づく平均ユークリッド誤差(mm)。
【表2】
【0061】
GHUM対GHUML。低解像度モデルは、体形の大域的特徴を保存し、体および顔の動きを正確にスキニングする。GHUMと比較して、GHUMLは、唇の変形、腕および指における筋肉の隆起、脂肪組織に起因するしわについてのいくらかの詳細を失うことが観測され得る。パフォーマンスに関しては、GHUMLは、フィードフォワード評価モードで、GHUMよりも2.5倍高速である。
【0062】
図4は、Caesarでの評価を示す。
図4の左側は、GHUMおよびGHUMLについての登録までの頂点ごとのユークリッド距離誤差を示す。
図4の右側は、上から下に、登録、GHUM、およびGHUMLを示す。VAEベースのモデルは、体形を極めてよく表すことができる。GHUMLと比較して、さらなる筋肉またはウエスト軟組織の詳細が、GHUMによって保存される。
【0063】
図9は、GHUMおよびGHUMLの手の再構成を強調して、
図1のように評価およびレンダリングを示す。
図1の場合と同様の結論が成り立つ。手のひらの屈曲領域の周りのさらなる変形の詳細がGHUMLよりもGHUMによって保存されていることに注目されたい。
【0064】
VAE評価。体形について、提案するVAEは、16-dimと61-dimの両方の潜在表現をサポートし、前者は1.72倍高い再構成誤差を有する(Table 2(表2)の報告および数字は、64-dim表現に基づいている)。いくつかの例では、20-dimの埋込みが、顔の表情VAEに使用されることがある。
【0065】
図7は、VAEとPCAの両方について、潜在次元の関数として顔の表情の再構成誤差を示す。20次元のVAEは、96線形PCA基底を使用するものと同様の再構成誤差を有し、パフォーマンスが2.9倍遅くなる。具体的には、
図7は、低次元体制における非線形性の利点を説明する、VAEおよびPCAモデルの分析を示す。
【0066】
GHUM対SMPL。
図8では、GHUMおよびSMPLが、視覚的品質について比較される。詳細には、
図8は、2つのポーズの各々について、左から右に、登録、GHUM、およびSMPLを示す。この動きシーケンスには骨盤アーチファクトがより少ないことに注目されたいが、GHUMは、比較可能な視覚的品質のポージングを生成する。
【0067】
GHUMは、SMPLからの異なるメッシュおよび骨格トポロジーを有し、SMPLには、手および顔の関節がない。比較するために、GHS3Dからのキャプチャされた動きシーケンス(我々のトレーニングデータセットにはない、すべてのポーズ)が採用され、キャプチャされたシーケンスは、SMPLおよびGHUMメッシュそれぞれとともに登録される。誤差が評価されるとき、1対1の点から平面のユークリッド距離が(たとえば、登録中の表面スライディングに過敏になるのを防ぐために)使用され、誤差は、SMPLとの公正な比較のために体領域についてのみ評価される。GHUMからの平均再構成誤差は、4.4mmであるが、SMPLは、5.37mmの誤差を有し、GHUMの視覚的スキニング品質は、SMPLと同等であると観測される。
【0068】
単眼画像からの3Dポーズおよび形状再構成。この節では、GHUMを用いた画像推論について説明する。この場合、(両手、および顔を除く体の残部についての)モデルの運動事前知識(kinematic prior)が、Human3.6M、CMU、およびGHS3Dからのデータでトレーニングされている。画像予測器が、ポーズおよび形状に使用されなかった。代わりに、初期設定は、6つの異なる運動構成で行われ、αパラメータは、解剖学的関節角度制限の下で最適化された。損失として、骨格関節再投影誤差および意味論的身体部分アライメント(semantic body-part alignment)が使用された。結果は、
図10に示されている。具体的には、
図10は、意味論的身体部分アライメント損失下で非線形ポーズおよび形状最適化に依存することによるGHUMでの単眼3D人間ポーズおよび形状再構成を示している。
【0069】
5.例示的なデバイスおよびシステム
図11Aは、本開示の例示的実施形態による例示的コンピューティングシステム100のブロック図を示す。システム100は、ネットワーク180を介して通信可能に結合されている、ユーザコンピューティングデバイス102、サーバコンピューティングシステム130、およびトレーニング用コンピューティングシステム150を含む。
【0070】
ユーザコンピューティングデバイス102は、たとえば、パーソナルコンピューティングデバイス(たとえば、ラップトップまたはデスクトップ)、モバイルコンピューティングデバイス(たとえば、スマートフォンまたはタブレット)、ゲーミングコンソールもしくはコントローラ、ウェアラブルコンピューティングデバイス、埋込み型コンピューティングデバイス、あるいは任意の他のタイプのコンピューティングデバイスなどの、任意のタイプのコンピューティングデバイスであってもよい。
【0071】
ユーザコンピューティングデバイス102は、1つまたは複数のプロセッサ112と、メモリ114とを含む。1つまたは複数のプロセッサ112は、任意の適切な処理デバイス(たとえば、プロセッサコア、マイクロプロセッサ、ASIC、FPGA、コントローラ、マイクロコントローラなど)であってもよく、1つのプロセッサまたは動作可能に接続されている複数のプロセッサであってよい。メモリ114は、RAM、ROM、EEPROM、EPROM、フラッシュメモリデバイス、磁気ディスクなど、およびそれらの組合せのような、1つまたは複数の非一時的コンピュータ可読記憶媒体を含み得る。メモリ114は、データ116と、ユーザコンピューティングデバイス102に動作を実施させるようにプロセッサ112によって実行される命令118とを記憶することができる。
【0072】
いくつかの実装形態では、ユーザコンピューティングシステム102は、1つまたは複数の機械学習済みモデル120を記憶するか、または含むことができる。たとえば、機械学習済みモデル120は、ニューラルネットワーク(たとえば、ディープニューラルネットワーク)または非線形モデルおよび/もしくは線形モデルを含む他のタイプの機械学習済みモデルなど、様々な機械学習済みモデルであってよく、またはそうでなければ、それらの機械学習済みモデルを含むことができる。ニューラルネットワークは、フィードフォワードニューラルネットワーク、回帰型ニューラルネットワーク(たとえば、長短期メモリ回帰型ニューラルネットワーク)、畳み込みニューラルネットワーク、または他の形のニューラルネットワークを含み得る。例示的機械学習済みモデル120については、
図2を参照して論じる。
【0073】
いくつかの実装形態では、1つまたは複数の機械学習済みモデル120は、ネットワーク180を介してサーバコンピューティングシステム130から受信され、ユーザコンピューティングデバイスメモリ114に記憶され、次いで、1つまたは複数のプロセッサ112によって使われ、またはそうでなければ実装され得る。いくつかの実装形態では、ユーザコンピューティングデバイス102は、単一機械学習済みモデル120の複数の並列インスタンスを実装することができる。
【0074】
追加または代替として、1つまたは複数の機械学習済みモデル140は、クライアント-サーバ関係に従ってユーザコンピューティングデバイス102と通信するサーバコンピューティングシステム130に含まれ、またはそうでなければ、サーバコンピューティングシステム130によって記憶され、実装され得る。たとえば、機械学習済みモデル140は、ウェブサービス(たとえば、体形モデリングおよび/またはレンダリングサービス)の一部分として、サーバコンピューティングシステム130によって実装され得る。したがって、1つまたは複数のモデル120が、ユーザコンピューティングデバイス102において記憶され、実装されてよく、かつ/または1つもしくは複数のモデル140が、サーバコンピューティングシステム130において記憶され、実装されてよい。
【0075】
ユーザコンピューティングデバイス102は、ユーザ入力を受信する1つまたは複数のユーザ入力構成要素122も含み得る。たとえば、ユーザ入力構成要素122は、ユーザ入力オブジェクト(たとえば、指またはスタイラス)のタッチに敏感な、タッチ感応構成要素(たとえば、タッチ感応表示画面またはタッチパッド)であってよい。タッチ感応構成要素は、仮想キーボードを実装するのに役立ち得る。他の例示的ユーザ入力構成要素は、マイクロフォン、従来のキーボード、またはユーザがユーザ入力を与えることができる他の手段を含む。
【0076】
サーバコンピューティングシステム130は、1つまたは複数のプロセッサ132と、メモリ134とを含む。1つまたは複数のプロセッサ132は、任意の適切な処理デバイス(たとえば、プロセッサコア、マイクロプロセッサ、ASIC、FPGA、コントローラ、マイクロコントローラなど)であってもよく、1つのプロセッサまたは動作可能に接続されている複数のプロセッサであってよい。メモリ134は、RAM、ROM、EEPROM、EPROM、フラッシュメモリデバイス、磁気ディスクなど、およびそれらの組合せのような、1つまたは複数の非一時的コンピュータ可読記憶媒体を含み得る。メモリ134は、データ136と、サーバコンピューティングシステム130に動作を実施させるようにプロセッサ132によって実行される命令138とを記憶することができる。
【0077】
いくつかの実装形態では、サーバコンピューティングシステム130は、1つまたは複数のサーバコンピューティングデバイスを含むか、またはそうでなければ、1つまたは複数のサーバコンピューティングデバイスによって実装される。サーバコンピューティングシステム130が複数のサーバコンピューティングデバイスを含む事例では、そのようなサーバコンピューティングデバイスは、順次コンピューティングアーキテクチャ、並列コンピューティングアーキテクチャ、またはそれらの何らかの組合せに従って動作することができる。
【0078】
上述したように、サーバコンピューティングシステム130は、1つまたは複数の機械学習済みモデル140を記憶するか、またはそうでなければ含むことができる。たとえば、モデル140は、様々な機械学習済みモデルであってよく、または、そうでなければそれらを含んでよい。例示的な機械学習済みモデルは、ニューラルネットワークまたは他のマルチレイヤ非線形モデルを含む。例示的なニューラルネットワークは、フィードフォワードニューラルネットワーク、ディープニューラルネットワーク、回帰型ニューラルネットワーク、および畳み込みニューラルネットワークを含む。例示的なモデル140については、
図2を参照して説明する。
【0079】
ユーザコンピューティングデバイス102および/またはサーバコンピューティングシステム130は、ネットワーク180を介して通信可能に結合されるトレーニング用コンピューティングシステム150との対話により、モデル120および/または140をトレーニングすることができる。トレーニング用コンピューティングシステム150は、サーバコンピューティングシステム130とは別個であってよく、またはサーバコンピューティングシステム130の一部分であってよい。
【0080】
トレーニング用コンピューティングシステム150は、1つまたは複数のプロセッサ152と、メモリ154とを含む。1つまたは複数のプロセッサ152は、任意の適切な処理デバイス(たとえば、プロセッサコア、マイクロプロセッサ、ASIC、FPGA、コントローラ、マイクロコントローラなど)であってもよく、1つのプロセッサまたは動作可能に接続されている複数のプロセッサであってよい。メモリ154は、RAM、ROM、EEPROM、EPROM、フラッシュメモリデバイス、磁気ディスクなど、およびそれらの組合せのような、1つまたは複数の非一時的コンピュータ可読記憶媒体を含み得る。メモリ154は、データ156と、トレーニング用コンピューティングシステム150に動作を実施させるようにプロセッサ152によって実行される命令158とを記憶することができる。いくつかの実装形態では、トレーニング用コンピューティングシステム150は、1つまたは複数のサーバコンピューティングデバイスを含むか、またはそうでなければ、サーバコンピューティングデバイスによって実装される。
【0081】
トレーニング用コンピューティングシステム150は、ユーザコンピューティングデバイス102および/またはサーバコンピューティングシステム130において記憶された機械学習済みモデル120および/または140を、たとえば、誤差逆伝播など、様々なトレーニングまたは学習技法を使ってトレーニングするモデル訓練器160を含み得る。たとえば、損失関数は、(たとえば、損失関数の勾配に基づいて)モデルの1つまたは複数のパラメータを更新するために、モデルを通して逆伝搬され得る。平均2乗誤差、尤度損失、交差エントロピー損失、ヒンジ損失、および/または様々な他の損失関数など、様々な損失関数が使用され得る。勾配降下技法は、いくつかのトレーニング反復に対してパラメータを反復的に更新するために使用され得る。
【0082】
いくつかの実装形態では、誤差逆伝播を実行することは、打ち切り型通時的逆伝播を実行することを含み得る。モデル訓練器160は、トレーニングされるモデルの汎化能力を向上するために、いくつかの汎化技法(たとえば、重み減衰、ドロップアウトなど)を実施することができる。
【0083】
特に、モデル訓練器160は、トレーニングデータのセット162に基づいて、機械学習済みモデル120および/または140をトレーニングすることができる。トレーニングデータ162は、たとえば、全身、手、および/もしくは顔のスキャンならびに/またはそのようなスキャンのグランドトゥルース登録を含むことができる。
【0084】
いくつかの実装形態では、ユーザが承諾を与えた場合、トレーニング例は、ユーザコンピューティングデバイス102によって提供され得る。したがって、そのような実装形態では、ユーザコンピューティングデバイス102に提供されるモデル120は、ユーザコンピューティングデバイス102から受信されるユーザ固有データに対してトレーニング用コンピューティングシステム150によってトレーニングされ得る。場合によっては、このプロセスは、モデルの個人化と呼ばれることがある。
【0085】
モデル訓練器160は、所望の機能性を提供するために使用されるコンピュータ論理を含む。モデル訓練器160は、汎用プロセッサを制御するハードウェア、ファームウェア、および/またはソフトウェアに実装することができる。たとえば、いくつかの実装形態では、モデル訓練器160は、記憶デバイス上に記憶され、メモリにロードされ、1つまたは複数のプロセッサによって実行されるプログラムファイルを含む。他の実装形態では、モデル訓練器160は、RAMハードディスクまたは光学もしくは磁気媒体などの有形コンピュータ可読記憶媒体に記憶されるコンピュータ実行可能命令の1つまたは複数のセットを含む。
【0086】
ネットワーク180は、ローカルエリアネットワーク(たとえば、イントラネット)、ワイドエリアネットワーク(たとえば、インターネット)、またはそれらの何らかの組合せなどの、任意のタイプの通信ネットワークであってもよく、任意の数のワイヤードまたはワイヤレスリンクを含むことができる。一般に、ネットワーク180を介した通信は、多種多様な通信プロトコル(たとえば、TCP/IP、HTTP、SMTP、FTP)、符号化もしくはフォーマット(たとえば、HTML、XML)、および/または保護方式(たとえば、VPN、セキュアHTTP、SSL)を使用して、任意のタイプのワイヤードおよび/またはワイヤレス接続を介して搬送され得る。
【0087】
図11Aは、本開示を実装するために使用され得る1つの例示的コンピューティングシステムを示す。他のコンピューティングシステムが同様に使用されてもよい。たとえば、いくつかの実装形態では、ユーザコンピューティングデバイス102は、モデル訓練器160およびトレーニングデータセット162を含み得る。そのような実装形態では、モデル120は、ユーザコンピューティングデバイス102においてローカルにトレーニングされることと使われることの両方が可能である。そのような実装形態のいくつかでは、ユーザコンピューティングデバイス102は、ユーザ固有データに基づいて、モデル訓練器160を実装して、モデル120を個人化し得る。
【0088】
図11Bは、本開示の例示的な実施形態に従って実行する例示的なコンピューティングデバイス10のブロック図を示す。コンピューティングデバイス10は、ユーザコンピューティングデバイスまたはサーバコンピューティングデバイスであってよい。
【0089】
コンピューティングデバイス10は、いくつかのアプリケーション(たとえば、アプリケーション1~N)を含む。各アプリケーションは、それ自体の機械学習ライブラリおよび機械学習済みモデルを含む。たとえば、各アプリケーションは、機械学習済みモデルを含み得る。例示的アプリケーションは、テキストメッセージングアプリケーション、eメールアプリケーション、ディクテーションアプリケーション、仮想キーボードアプリケーション、ブラウザアプリケーションなどを含む。
【0090】
図11Bに示すように、各アプリケーションは、コンピューティングデバイスのいくつかの他の構成要素、たとえば、1つもしくは複数のセンサー、コンテキストマネージャ、デバイス状態構成要素、および/または追加構成要素などと通信することができる。いくつかの実装形態では、各アプリケーションは、API(たとえば、パブリックAPI)を使って、各デバイス構成要素と通信することができる。いくつかの実装形態では、各アプリケーションによって使用されるAPIは、そのアプリケーションに固有である。
【0091】
図11Cは、本開示の例示的な実施形態に従って実行する例示的なコンピューティングデバイス50のブロック図を示す。コンピューティングデバイス50は、ユーザコンピューティングデバイスまたはサーバコンピューティングデバイスであってよい。
【0092】
コンピューティングデバイス50は、いくつかのアプリケーション(たとえば、アプリケーション1~N)を含む。各アプリケーションは、中央インテリジェンスレイヤと通信する。例示的なアプリケーションは、テキストメッセージングアプリケーション、eメールアプリケーション、ディクテーションアプリケーション、仮想キーボードアプリケーション、ブラウザアプリケーションなどを含む。いくつかの実装形態では、各アプリケーションは、API(たとえば、すべてのアプリケーションにわたる共通API)を使って、中央インテリジェンスレイヤ(およびその中に記憶されるモデル)と通信することができる。
【0093】
中央インテリジェンスレイヤは、いくつかの機械学習済みモデルを含む。たとえば、
図11Cに示すように、それぞれの機械学習済みモデル(たとえば、モデル)が、各アプリケーションに与えられ、中央インテリジェンスレイヤによって管理され得る。他の実装形態では、2つ以上のアプリケーションが、単一の機械学習済みモデルを共有することができる。たとえば、いくつかの実装形態では、中央インテリジェンスレイヤは、アプリケーションすべてに単一モデル(たとえば、単一モデル)を提供することができる。いくつかの実装形態では、中央インテリジェンスレイヤは、コンピューティングデバイス50のオペレーティングシステム内に含まれるか、またはそうでなければ、オペレーティングシステムによって実装される。
【0094】
中央インテリジェンスレイヤは、中央デバイスデータレイヤと通信することができる。中央デバイスデータレイヤは、コンピューティングデバイス50向けのデータの集中型リポジトリであってよい。
図11Cに示すように、中央デバイスデータレイヤは、コンピューティングデバイスのいくつかの他の構成要素、たとえば、1つまたは複数のセンサー、コンテキストマネージャ、デバイス状態構成要素、および/または追加構成要素などと通信することができる。いくつかの実装形態では、中央デバイスデータレイヤは、API(たとえば、プライベートAPI)を使用して、各デバイス構成要素と通信することができる。
【0095】
6.追加の開示
本明細書で説明した技術は、サーバ、データベース、ソフトウェアアプリケーション、および他のコンピュータベースのシステム、ならびに行われるアクションおよびそのようなシステムとの間で送られる情報を参照する。コンピュータベースのシステムの固有の柔軟性は、構成要素の間でのタスクおよび機能の多種多様な可能な構成、組合せ、および分割を可能にする。たとえば、本明細書で説明されるプロセスは、単一のデバイスもしくは構成要素または組合せて働く複数のデバイスもしくは構成要素を使用して実装され得る。データベースおよびアプリケーションは、単一のシステム上で実装されるか、または複数のシステムに分散されてよい。分散構成要素は、順次、または並行して動作することができる。
【0096】
本主題を、その様々な特定の例示的な実施形態に関して詳細に説明したが、各例は、本開示の限定ではなく、説明として与えられる。当業者は、上記を理解すると、そのような実施形態の代替、変形、および等価物を容易に作り出すことができる。したがって、本開示は、当業者には容易に明らかになるように、本主題へのそのような修正、変形および/または追加を含めることを排除しない。たとえば、1つの実施形態の一部として示され、または説明される特徴は、またさらなる実施形態をもたらすために、別の実施形態とともに使用され得る。したがって、本開示がそのような代替、変形、および等価物を包含することが意図されている。
【符号の説明】
【0097】
50 コンピューティングデバイス
100 コンピューティングシステム
102 ユーザコンピューティングデバイス
112 プロセッサ
114 メモリ
116 データ
118 命令
120 機械学習済みモデル
122 ユーザ入力構成要素
130 サーバコンピューティングシステム
132 プロセッサ
134 メモリ
136 データw
138 命令
140 機械学習済みモデル
150 トレーニング用コンピューティングシステム
152 プロセッサ
154 メモリ
156 データ
158 命令
160 モデル訓練器
162 トレーニングデータ
180 ネットワーク