IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 北京市商▲湯▼科技▲開▼▲發▼有限公司の特許一覧

特許7523530顔再構築方法、装置、コンピュータデバイス、及び記憶媒体
<>
  • 特許-顔再構築方法、装置、コンピュータデバイス、及び記憶媒体 図1
  • 特許-顔再構築方法、装置、コンピュータデバイス、及び記憶媒体 図2
  • 特許-顔再構築方法、装置、コンピュータデバイス、及び記憶媒体 図3
  • 特許-顔再構築方法、装置、コンピュータデバイス、及び記憶媒体 図4
  • 特許-顔再構築方法、装置、コンピュータデバイス、及び記憶媒体 図5
  • 特許-顔再構築方法、装置、コンピュータデバイス、及び記憶媒体 図6
  • 特許-顔再構築方法、装置、コンピュータデバイス、及び記憶媒体 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-18
(45)【発行日】2024-07-26
(54)【発明の名称】顔再構築方法、装置、コンピュータデバイス、及び記憶媒体
(51)【国際特許分類】
   G06T 17/00 20060101AFI20240719BHJP
   G06T 7/00 20170101ALI20240719BHJP
   G06T 13/40 20110101ALI20240719BHJP
【FI】
G06T17/00
G06T7/00 660A
G06T13/40
【請求項の数】 12
(21)【出願番号】P 2022520004
(86)(22)【出願日】2021-06-25
(65)【公表番号】
(43)【公表日】2023-02-28
(86)【国際出願番号】 CN2021102431
(87)【国際公開番号】W WO2022110791
(87)【国際公開日】2022-06-02
【審査請求日】2022-03-30
(31)【優先権主張番号】202011337901.1
(32)【優先日】2020-11-25
(33)【優先権主張国・地域又は機関】CN
【前置審査】
(73)【特許権者】
【識別番号】520291939
【氏名又は名称】北京市商▲湯▼科技▲開▼▲發▼有限公司
【氏名又は名称原語表記】BEIJING SENSETIME TECHNOLOGY DEVELOPMENT CO.,LTD.
【住所又は居所原語表記】Room 1101-1117,11th Floor No.58 Northwest 4th Ring Road, Haidian District Beijing 100080 China
(74)【代理人】
【識別番号】110002468
【氏名又は名称】弁理士法人後藤特許事務所
(72)【発明者】
【氏名】徐 勝偉
(72)【発明者】
【氏名】王 権
(72)【発明者】
【氏名】銭 晨
【審査官】淀川 滉也
(56)【参考文献】
【文献】中国特許出願公開第111695471(CN,A)
【文献】中国特許出願公開第111714885(CN,A)
【文献】中国特許出願公開第110111417(CN,A)
【文献】特開2014-211719(JP,A)
【文献】米国特許出願公開第2014/0204089(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 17/00
G06T 7/00
G06T 13/40
(57)【特許請求の範囲】
【請求項1】
目標画像に基づいて第1実顔モデルを生成するステップと、
予め生成された複数の第2実顔モデルを利用して前記第1実顔モデルのフィッティング処理を行うことで、複数の第2実顔モデルのそれぞれに対応するフィッティング係数を取得するステップと、
前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データ及び目標スキン変形係数を生成するステップと、
前記目標骨格データ及び前記目標スキン変形係数に基づいて、前記第1実顔モデルに対応する目標仮想顔モデルを生成するステップと、を含む、
ことを特徴とする顔再構築方法。
【請求項2】
前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標スキン変形係数を生成するステップは、
前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び複数の前記仮想顔モデルのそれぞれに含まれるスキン変形係数に基づいて、前記目標スキン変形係数を生成することを含む、
ことを特徴とする請求項1に記載の顔再構築方法。
【請求項3】
前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び複数の前記仮想顔モデルのそれぞれに含まれるスキン変形係数に基づいて、前記目標スキン変形係数を生成することは、
前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数を正規化処理することと、
正規化処理済みのフィッティング係数、及び複数の前記仮想顔モデルのそれぞれに含まれるスキン変形係数に基づいて前記目標スキン変形係数を取得することと、を含む、
ことを特徴とする請求項2に記載の顔再構築方法。
【請求項4】
前記目標骨格データ及び前記目標スキン変形係数に基づいて、前記第1実顔モデルに対応する目標仮想顔モデルを生成するステップは、
前記目標骨格データ、及び標準仮想顔モデルにおける標準骨格データと標準スキンデータとの関連関係に基づいて前記標準スキンデータの位置変換処理を行うことで、中間スキンデータを生成することと、
前記目標スキン変形係数に基づいて前記中間スキンデータの変形処理を行うことで、目標スキンデータを取得することと、
前記目標骨格データ及び前記目標スキンデータに基づいて前記目標仮想顔モデルを確立することと、を含む、
ことを特徴とする請求項1乃至3の何れか一項に記載の顔再構築方法。
【請求項5】
前記目標骨格データは、目標骨格位置データ、目標骨格スケールデータ、及び目標骨格回転データのうちの少なくとも1つを含み、
複数の前記仮想顔モデルのそれぞれに対応する骨格データは、仮想顔の複数の顔骨格のそれぞれに対応する骨格回転データ、骨格位置データ、及び骨格スケールデータのうちの少なくとも1つを含む、
ことを特徴とする請求項1乃至4の何れか一項に記載の顔再構築方法。
【請求項6】
前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データを生成するステップは、
前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の前記仮想顔モデルのそれぞれに対応する骨格位置データを補間処理することで、前記目標骨格位置データを取得すること、
前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の前記仮想顔モデルのそれぞれに対応する骨格スケールデータを補間処理することで、前記目標骨格スケールデータを取得すること、及び
複数の前記仮想顔モデルのそれぞれに対応する骨格回転データを四元数に変換し、複数の前記仮想顔モデルのそれぞれに対応する四元数を正規化処理することで、正規化四元数を取得し、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の前記仮想顔モデルのそれぞれに対応する前記正規化四元数を補間処理することで、前記目標骨格回転データを取得すること、のうちの少なくとも1つを含む、
ことを特徴とする請求項5に記載の顔再構築方法。
【請求項7】
目標画像に基づいて第1実顔モデルを生成するステップは、
初期顔を含む目標画像を取得することと、
前記目標画像に含まれる前記初期顔に対して3次元の顔再構築を行うことで、前記第1実顔モデルを取得することと、を含む、
ことを特徴とする請求項1乃至の何れか一項に記載の顔再構築方法。
【請求項8】
参照顔を含む複数枚の参照画像を取得し、
前記複数枚の参照画像のそれぞれについて、前記参照画像に含まれる参照顔に対して3次元の顔再構築を行い、前記参照画像に対応する前記第2実顔モデルを取得する、ことにより、
前記複数の第2実顔モデルを予め生成する、
ことを特徴とする請求項1乃至の何れか一項に記載の顔再構築方法。
【請求項9】
前記複数の第2実顔モデルのそれぞれについて、
前記第2実顔モデルに対応し且つ予め設定されたスタイルを有する中間仮想顔モデルを生成し、
標準仮想顔モデルに対する複数組の予め設定されたスキン変形係数に基づいて、前記第2実顔モデルに対応する仮想顔モデルの前記標準仮想顔モデルに対するスキン変形係数を生成し、
前記スキン変形係数を利用して前記中間仮想顔モデルにおける中間スキンデータを調整し、
調整済みの中間スキンデータ、及び前記中間仮想顔モデルの中間骨格データに基づいて、前記第2実顔モデルの仮想顔モデルを生成する、ことにより、
前記第2実顔モデルに対応し且つ予め設定されたスタイルを有する仮想顔モデルを取得することをさらに含む、
ことを特徴とする請求項1乃至の何れか一項に記載の顔再構築方法。
【請求項10】
目標画像に基づいて第1実顔モデルを生成するように構成される第1生成モジュールと、
予め生成された複数の第2実顔モデルを利用して前記第1実顔モデルのフィッティング処理を行うことで、複数の第2実顔モデルのそれぞれに対応するフィッティング係数を取得するように構成される処理モジュールと、
前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データ及び目標スキン変形係数を生成するように構成される第2生成モジュールと、
前記目標骨格データ及び前記目標スキン変形係数に基づいて、前記第1実顔モデルに対応する目標仮想顔モデルを生成するように構成される第3生成モジュールと、を含む、
ことを特徴とする顔再構築装置。
【請求項11】
プロセッサ及びメモリを含むコンピュータデバイスであって、
前記メモリには、前記プロセッサで実行できる機械読み取り可能な命令が格納されており、前記プロセッサは、前記メモリに格納された機械読み取り可能な命令を実行するように構成され、前記機械読み取り可能な命令が前記プロセッサで実行されるとき、前記プロセッサは、請求項1乃至の何れか一項に記載の顔再構築方法を実施する、コンピュータデバイス。
【請求項12】
コンピュータ・プログラムが格納されたコンピュータ読み取り可能な記憶媒体であって、
前記コンピュータ・プログラムがコンピュータデバイスで実行されるとき、前記コンピュータデバイスは、請求項1乃至の何れか一項に記載の顔再構築方法を実施する、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理の技術分野に関し、具体的には、顔再構築方法、装置、コンピュータデバイス、及び記憶媒体に関する。
【背景技術】
【0002】
通常、実顔や自分の好みに基づいて仮想的な顔3次元モデルを確立して顔の再構築を実現できるということは、ゲーム、アニメ、仮想ソーシャル等の分野で広く適用されている。例えば、ゲームでは、ゲームプログラムが提供する顔再構築システムは、プレイヤーから提供された画像に含まれる実顔に基づいて仮想的な顔3次元モデルを生成し、プレイヤーは、生成された仮想的な顔3次元モデルを利用し、より没入感を持ってゲームに参加することができる。
【0003】
現在、人物画像における実顔に基づいて顔の再構築を行う場合には、一般的に、顔画像に基づいて顔輪郭特徴を抽出し、抽出した顔輪郭特徴を予め生成された仮想3次元モデルとマッチング・融合することで、実顔に対応する仮想的な顔3次元モデルを生成する。しかしながら、顔輪郭特徴と予め生成された仮想3次元モデルとのマッチング度が低いことから、生成された仮想的な顔3次元モデルと実顔画像との類似度が低い。
【発明の概要】
【0004】
本発明の実施例では、少なくとも顔再構築方法、装置、コンピュータデバイス、及び記憶媒体が提案されている。
【0005】
本発明の実施例の第1態様により、目標画像に基づいて第1実顔モデルを生成するステップと、予め生成された複数の第2実顔モデルを利用して前記第1実顔モデルのフィッティング処理を行うことで、複数の第2実顔モデルのそれぞれに対応するフィッティング係数を取得するステップと、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データ及び目標スキン変形係数を生成するステップと、前記目標骨格データ及び前記目標スキン変形係数に基づいて、前記第1実顔モデルに対応する目標仮想顔モデルを生成するステップと、を含む、顔再構築方法が提案されている。
【0006】
この実施形態では、フィッティング係数を媒介として複数の第2実顔モデルと第1実顔モデルとの関連関係が確立され、この関連関係は、第2実顔モデルに基づいて確立された仮想顔モデルと第1実顔モデルに基づいて確立された目標仮想顔モデルとの関連を特徴付けることができる。また、目標スキン変形係数は、目標画像における顔スキンの変形の特徴を特徴付けることができ、例えば骨格が同じである場合、スキンによって特徴付けられる太り具合の差が存在する。フィッティング係数及び目標スキン変形係数に基づいて確立された目標仮想顔モデルは、予め設定されたスタイルと第1実顔モデルに対応する初期顔の特徴とを併せ持つのみならず、初期顔の太り具合の特徴を体現することもでき、さらに、生成された目標仮想顔モデルと第1実顔モデルに対応する初期顔との類似度が一層高くなる。
【0007】
選択的な一実施形態では、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標スキン変形係数を生成するステップは、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び複数の前記仮想顔モデルのそれぞれに含まれるスキン変形係数に基づいて、前記目標スキン変形係数を生成することを含む。
【0008】
この実施形態では、標準仮想顔モデルの標準スキンデータを基準とし、仮想顔モデルのスキン変形係数を決定した後、仮想顔モデルと目標仮想顔モデルとの関連関係を特徴付けるフィッティング係数に基づいて、目標仮想顔の目標スキン変形係数を決定することができる。このため、目標スキン変形係数に基づいて目標仮想顔のスキンデータをより正確に決定することができ、さらに、生成された目標仮想顔モデルと第1実顔モデルに対応する初期顔との類似度が一層高くなる。
【0009】
選択的な一実施形態では、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び複数の前記仮想顔モデルのそれぞれに含まれるスキン変形係数に基づいて、前記目標スキン変形係数を生成することは、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数を正規化処理することと、正規化処理済みのフィッティング係数、及び前記仮想顔モデルのそれぞれに含まれるスキン変形係数に基づいて前記目標スキン変形係数を取得することと、を含む。
【0010】
この実施形態では、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数を正規化処理することにより、正規化処理済みのフィッティング係数、及び前記仮想顔モデルのそれぞれに含まれるスキン変形係数に基づいて目標スキン変形係数を取得する際に、データの表現が一層簡単になり、処理プロセスが簡素化し、これからのフィッティング結果による顔再構築の処理速度が向上する。
【0011】
選択的な一実施形態では、前記目標骨格データ及び前記目標スキン変形係数に基づいて、前記第1実顔モデルに対応する目標仮想顔モデルを生成するステップは、前記目標骨格データ、及び標準仮想顔モデルにおける標準骨格データと標準スキンデータとの関連関係に基づいて前記標準スキンデータの位置変換処理を行うことで、中間スキンデータを生成するステップと、前記目標スキン変形係数に基づいて前記中間スキンデータの変形処理を行うことで、目標スキンデータを取得するステップと、前記目標骨格データ及び前記目標スキンデータに基づいて前記目標仮想顔モデルを確立するステップと、を含む。
【0012】
この実施形態では、中間スキンデータを生成した後、目標スキン変形係数に基づいて中間スキンデータの変形処理を行い、それによって取得した目標スキンデータは、第1実顔モデルの外貌特徴を特徴付けるのみならず、第1実顔の太り具合を表すこともでき、生成された目標仮想顔モデルは、外貌の差のみならず、太り具合の差もあり、さらに、異なる目標仮想顔が生成された場合、第1実顔モデルに対応する初期顔との類似度が一層高くなる。
【0013】
選択的な一実施形態では、前記目標骨格データは、目標骨格位置データ、目標骨格スケールデータ、及び目標骨格回転データのうちの少なくとも1つを含み、複数の前記仮想顔モデルのそれぞれに対応する骨格データは、仮想顔における複数の顔骨格のそれぞれに対応する骨格回転データ、骨格位置データ、及び骨格スケールデータのうちの少なくとも1つを含む。
【0014】
この実施形態では、骨格データによれば、複数の顔骨格のそれぞれに対応する骨格データをより精確に特徴付けることができ、目標骨格データによれば、目標仮想顔モデルをより精確に確立することができる。
【0015】
選択的な一実施形態では、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データを生成するステップは、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の前記仮想顔モデルのそれぞれに対応する骨格位置データを補間処理することで、前記目標骨格位置データを取得することを含む。
【0016】
選択的な一実施形態では、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データを生成するステップは、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の前記仮想顔モデルのそれぞれに対応する骨格スケールデータを補間処理することで、前記目標骨格スケールデータを取得することを含む。
【0017】
選択的な一実施形態では、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データを生成するステップは、複数の前記仮想顔モデルのそれぞれに対応する骨格回転データを四元数に変換し、複数の前記仮想顔モデルのそれぞれに対応する四元数を正規化処理することで、正規化四元数を取得することと、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の前記仮想顔モデルのそれぞれに対応する前記正規化四元数を補間処理することで、前記目標骨格回転データを取得することと、を含む。
【0018】
選択的な一実施形態では、目標画像に基づいて第1実顔モデルを生成するステップは、初期顔を含む目標画像を取得することと、前記目標画像に含まれる前記初期顔に対して3次元の顔再構築を行うことで、前記第1実顔モデルを取得することと、を含む。
【0019】
この実施形態では、初期顔に対して3次元の顔再構築を行うことで取得した第1実顔モデルによれば、目標画像における初期顔の顔特徴をより正確かつ全面的に特徴付けることができる。
【0020】
選択的な一実施形態では、参照顔を含む複数枚の参照画像を取得し、前記複数枚の参照画像のそれぞれについて、前記参照画像に含まれる前記参照顔に対して3次元の顔再構築を行い、前記参照画像に対応する前記第2実顔モデルを取得する、ことにより、複数の前記第2実顔モデルを予め生成する。
【0021】
この実施形態では、複数枚の参照画像を利用して、できるだけ広範な顔の外形特徴をカバーすることができるため、複数枚の参照画像のそれぞれに基づいて3次元の顔再構築を行うことで取得した第2実顔モデルは同様に、できるだけ広範な顔の外形特徴をカバーすることができる。
【0022】
選択的な一実施形態では、前記複数の第2実顔モデルのそれぞれについて、前記第2実顔モデルに対応し且つ予め設定されたスタイルを有する中間仮想顔モデルを生成し、標準仮想顔モデルに対する複数組の予め設定されたスキン変形係数に基づいて、前記第2実顔モデルに対応する仮想顔モデルの前記標準仮想顔モデルに対するスキン変形係数を生成し、前記スキン変形係数を利用して前記中間仮想顔モデルにおける中間スキンデータを調整し、調整済みの中間スキンデータ、及び前記中間仮想顔モデルの中間骨格データに基づいて前記第2実顔モデルのそれぞれの仮想顔モデルを生成する、ことにより、前記第2実顔モデルに対応し且つ予め設定されたスタイルを有する仮想顔モデルを取得することをさらに含む。
【0023】
この実施形態では、スキン変形係数を利用して第2実顔モデルに対応する中間仮想顔モデルの中間スキンデータを調整することにより、生成された仮想顔モデルは、予め設定されたスタイル及び第2実顔モデルの外貌特徴を有するのみならず、第2実顔モデルに対応する参照顔の太り具合を特徴付けることもでき、さらに、仮想顔モデルとそれに対応する参照顔との類似度が一層高くなる。
【0024】
選択的な一実施形態では、予め生成された複数の第2実顔モデルを利用して前記第1実顔モデルのフィッティング処理を行うことで、複数の第2実顔モデルのそれぞれに対応するフィッティング係数を取得するステップは、前記複数の第2実顔モデル及び前記第1実顔モデルに対して最小二乗処理を行うことで、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数を取得することを含む。
【0025】
この実施形態では、フィッティング係数によれば、複数の第2実顔モデルを利用して第1実顔モデルのフィッティングを行う際のフィッティング状況を正確に特徴付けることができる。
【0026】
本発明の実施例の第2態様により、目標画像に基づいて第1実顔モデルを生成するように構成される第1生成モジュールと、予め生成された複数の第2実顔モデルを利用して前記第1実顔モデルのフィッティング処理を行うことで、複数の第2実顔モデルのそれぞれに対応するフィッティング係数を取得するように構成される処理モジュールと、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データ及び目標スキン変形係数を生成するように構成される第2生成モジュールと、前記目標骨格データ及び前記目標スキン変形係数に基づいて、前記第1実顔モデルに対応する目標仮想顔モデルを生成するように構成される第3生成モジュールと、を含む、顔再構築装置が提案されている。
【0027】
選択的な一実施形態では、前記第2生成モジュールは、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標スキン変形係数を生成する際に、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び複数の前記仮想顔モデルのそれぞれに含まれるスキン変形係数に基づいて、前記目標スキン変形係数を生成することに用いられる。
【0028】
選択的な一実施形態では、前記第2生成モジュールは、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び複数の前記仮想顔モデルのそれぞれに含まれるスキン変形係数に基づいて、前記目標スキン変形係数を生成する際に、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数を正規化処理することと、正規化処理済みのフィッティング係数、及び前記仮想顔モデルのそれぞれに含まれるスキン変形係数に基づいて前記目標スキン変形係数を取得することと、に用いられる。
【0029】
選択的な一実施形態では、前記第3生成モジュールは、前記目標骨格データ及び前記目標スキン変形係数に基づいて前記第1実顔モデルに対応する目標仮想顔モデルを生成する際に、前記目標骨格データ、及び標準仮想顔モデルにおける標準骨格データと標準スキンデータとの関連関係に基づいて前記標準スキンデータの位置変換処理を行うことで、中間スキンデータを生成することと、前記目標スキン変形係数に基づいて前記中間スキンデータの変形処理を行うことで、目標スキンデータを取得することと、前記目標骨格データ及び前記目標スキンデータに基づいて前記目標仮想顔モデルを確立することと、に用いられる。
【0030】
選択的な一実施形態では、前記目標骨格データは、目標骨格位置データ、目標骨格スケールデータ、及び目標骨格回転データのうちの少なくとも1つを含み、複数の前記仮想顔モデルのそれぞれに対応する骨格データは、仮想顔の複数の顔骨格のそれぞれに対応する骨格回転データ、骨格位置データ、及び骨格スケールデータのうちの少なくとも1つを含む。
【0031】
選択的な一実施形態では、前記第2生成モジュールは、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データを生成する際に、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の前記仮想顔モデルのそれぞれに対応する骨格位置データを補間処理することで、前記目標骨格位置データを取得することに用いられる。
【0032】
選択的な一実施形態では、第2生成モジュールは、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データを生成する際に、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の前記仮想顔モデルのそれぞれに対応する骨格スケールデータを補間処理することで、前記目標骨格スケールデータを取得することに用いられる。
【0033】
選択的な一実施形態では、前記第2生成モジュールは、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データを生成する際に、複数の前記仮想顔モデルのそれぞれに対応する骨格回転データを四元数に変換し、複数の前記仮想顔モデルのそれぞれに対応する四元数を正規化処理することで、正規化四元数を取得することと、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の前記仮想顔モデルのそれぞれに対応する前記正規化四元数を補間処理することで、前記目標骨格回転データを取得することと、に用いられる。
【0034】
選択的な一実施形態では、前記第1生成モジュールは、目標画像に基づいて第1実顔モデルを生成する際に、初期顔を含む目標画像を取得することと、前記目標画像に含まれる前記初期顔に対して3次元の顔再構築を行うことで、前記第1実顔モデルを取得することと、に用いられる。
【0035】
選択的な一実施形態では、前記処理モジュールは、参照顔を含む複数枚の参照画像を取得し、前記複数枚の参照画像のそれぞれについて、前記参照画像に含まれる参照顔に対して3次元の顔再構築を行い、前記参照画像に対応する前記第2実顔モデルを取得する、ことにより、前記複数の第2実顔モデルを予め生成する。
【0036】
選択的な一実施形態では、前記複数の第2実顔モデルのそれぞれについて、前記第2実顔モデルに対応し且つ予め設定されたスタイルを有する中間仮想顔モデルを生成し、標準仮想顔モデルに対する複数組の予め設定されたスキン変形係数に基づいて、前記第2実顔モデルに対応する仮想顔モデルの前記標準仮想顔モデルに対するスキン変形係数を生成し、前記スキン変形係数を利用して前記中間仮想顔モデルにおける中間スキンデータを調整し、調整済みの中間スキンデータ、及び前記中間仮想顔モデルの中間骨格データに基づいて前記第2実顔モデルの仮想顔モデルを生成する、ことにより、前記第2実顔モデルに対応し且つ予め設定されたスタイルを有する仮想顔モデルを取得するように構成される取得モジュールをさらに含む。
【0037】
選択的な一実施形態では、前記処理モジュールは、予め生成された複数の第2実顔モデルを利用して前記第1実顔モデルのフィッティング処理を行うことで、複数の第2実顔モデルのそれぞれに対応するフィッティング係数を取得する際に、前記複数の第2実顔モデル及び前記第1実顔モデルに対して最小二乗処理を行うことで、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数を取得することに用いられる。
【0038】
本発明の第3態様により、選択的な一実施形態として、プロセッサ及びメモリを含むコンピュータデバイスであって、前記メモリには、前記プロセッサで実行できる機械読み取り可能な命令が格納されており、前記プロセッサは、前記メモリに格納された機械読み取り可能な命令を実行するように構成され、前記機械読み取り可能な命令が前記プロセッサで実行される際に、上記した第1態様または第1態様における任意1つの実施可能な形態に記載のステップが実施される、コンピュータデバイスが提案されている。
【0039】
本発明の第4態様により、選択的な一実施形態として、コンピュータ・プログラムが格納されたコンピュータ読み取り可能な記憶媒体であって、当該コンピュータ・プログラムが実行される際に、上記した第1態様または第1態様における任意1つの実施可能な形態に記載のステップが実施される、コンピュータ読み取り可能な記憶媒体が提案されている。
【0040】
上記した顔再構築装置、コンピュータデバイス、およびコンピュータ読み取り可能な記憶媒体の効果に関する記述は、上記した顔再構築方法に関する記述を参照でき、ここで重複に説明しないものとする。本発明の上記した目的、特徴、及びメリットをより明確かつ理解され易いものにするために、以下では、好適な実施例を挙げて、添付図面に合わせて詳細に説明する。
【図面の簡単な説明】
【0041】
本発明の実施例に係る技術案をより明晰に説明するために、以下では、実施例に用いられる図面を簡単に説明する。これらの図面は本発明に符合する実施例を示し、明細書に合わせて本発明に係る技術案を説明するためのものである。以下の図面は、本発明の幾つかの実施例のみを図示するので、範囲への限定として見なされるべきではなく、当分野の通常の技術者にとっては、創造的な労働をせずにこれらの図面から他の相関図面を得ることもできるとは、理解されるべきであろう。
図1】本発明の一実施例で提案される顔再構築方法を示すフローチャートである。
図2】本発明の別の一実施例で提案される顔再構築方法を示すフローチャートである。
図3】本発明の実施例で提案される目標スキン変形係数を取得するための具体的な方法を示すフローチャートである。
図4】本発明の実施例で提案される目標骨格データ及び目標スキン変形係数に基づいて第1実顔モデルに対応する目標仮想顔モデルを生成するための具体的な方法を示すフローチャートである。
図5】本発明の実施例で提案される顔再構築方法に係る複数の顔及び顔モデルの例示を示す図である。
図6】本発明の実施例で提案される顔再構築装置を示す概略図である。
図7】本発明の実施例で提案されるコンピュータデバイスを示す概略図である。
【発明を実施するための形態】
【0042】
本発明の実施例の目的、技術案、及びメリットをより明晰にするために、以下では、本発明の実施例に係る技術案について本発明の実施例に係る図面を参照しながら明晰かつ完全に説明する。明らかには、本明細書に記述される実施例は、本発明の実施例の全部ではなく、その一部に過ぎない。通常、ここで記述や図示される本発明の実施例に係る構成要素は、様々な異なる構成で配置や設計されることができる。したがって、本発明の実施例に関する以下の詳細な記述は、保護が請求する本発明の範囲を限定することを主旨とするものではなく、本発明に選定された実施例のみを示すものである。本発明の実施例に基づき、当分野の技術者が創造的な労働をせずに得られた全ての他の実施例は、本発明の保護範囲内に含まれるものとする。
【0043】
顔再構築方法によれば、実顔や自分の好みに基づいて仮想的な顔3次元モデルを確立できることがわかった。人物画像における実顔に基づいて顔の再構築を行う際に、人物画像における実顔に対して特徴抽出を行って顔輪郭特徴を取得してから、顔輪郭特徴を予め生成された仮想3次元モデルにおける特徴とマッチングし、マッチング結果に基づいて顔輪郭特徴を仮想3次元モデルと融合することで、人物画像における実顔に対応する仮想的な顔3次元モデルを取得することは、一般的なことである。顔輪郭特徴を予め生成された仮想3次元モデルにおける特徴とマッチングする際に、マッチングの精度が低いことから、仮想3次元モデルと顔輪郭特徴とのマッチングの誤差が大きく、マッチング結果に基づいて顔輪郭特徴と顔の仮想3次元モデルとを融合して得られた仮想的な顔3次元モデルと、人物画像における顔との類似度が低いという問題が生じやすい。
【0044】
上記した技術案の欠点に対して、本発明の実施例では、予め設定されたスタイルのみならず、第1実顔モデルに対応する初期顔の特徴も有する目標仮想顔モデルを生成可能な顔再構築方法が提案されており、当該目標仮想顔モデルは、初期顔の太り具合の特徴を体現でき、且つ第1実顔モデルに対応する初期顔との類似度が高い。
【0045】
本実施例の理解を容易にするために、先ず、本発明の実施例に開示された顔再構築方法について詳しく説明する。本発明の実施例で提案される顔再構築方法の実行主体は一般的には所定の計算能力を持つコンピュータデバイスであり、当該コンピュータデバイスは、例えば端末デバイスやサーバ又は他の処理デバイスを備え、端末デバイスとしては、ユーザ機器(User Equipment、UE)、モバイル機器、ユーザ端末、端末、セルラー電話)、コードレス電話、パーソナルデジタルアシスタント(Personal Digital Assistant、PDA)、手持ち機器、計算機器、車載機器、ウェアラブル機器等が挙げられる。幾つかの実施可能な形態では、当該顔再構築方法は、プロセッサによってメモリに格納されたコンピュータ読み取り可能な命令を呼び出すという方式で実現することができる。
【0046】
以下では、本発明の実施例で提案される顔再構築方法について説明する。
【0047】
図1は、本発明の一実施例で提案される顔再構築方法を示すフローチャートである。図1に示すように、前記方法は、ステップS101~S104を含む。
【0048】
S101:目標画像に基づいて第1実顔モデルを生成する。
【0049】
S102:予め生成された複数の第2実顔モデルを利用して第1実顔モデルのフィッティング処理を行うことで、複数の第2実顔モデルのそれぞれに対応するフィッティング係数を取得する。
【0050】
S103:複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データ及び目標スキン変形係数を生成する。目標スキン変形係数は、生成すべき目標顔モデルにおけるスキンデータの予め生成された標準仮想顔モデルにおける標準スキンデータに対する変形を示す。
【0051】
S104:目標骨格データ及び目標スキン変形係数に基づいて、第1実顔モデルに対応する目標仮想顔モデルを生成する。
【0052】
本発明の実施例では、顔再構築方法が提案されており、具体的には、フィッティング係数を媒介として複数の第2実顔モデルと第1実顔モデルとの関連関係が確立され、この関連関係は、第2実顔モデルに基づいて確立された仮想顔モデルと第1実顔モデルに基づいて確立された目標仮想顔モデルとの関連を特徴付けることができる。なお、目標スキン変形係数は、目標画像における顔スキンの変形の特徴、例えば骨格が同じである場合に存在する太り具合の差を特徴付けることができ、そして、フィッティング係数及び仮想顔モデルに基づく目標仮想顔モデルが生成され、該目標仮想顔モデルは、予め設定されたスタイルと第1実顔モデルに対応する初期顔の特徴とを併せ持つのみならず、初期顔の太り具合の特徴も体現でき、さらに、生成された目標仮想顔モデルと第1実顔モデルに対応する初期顔との類似度が高くなる。
【0053】
以下では、上記したステップS101~S104について詳しく説明する。
【0054】
上記したステップS101について、目標画像は、例えば顔を含む画像、例えば、カメラ等の撮像装置を用いてある対象を撮像する際に取得される顔を含む画像である。このとき、例えば、画像に含まれる何れかの顔を初期顔として決定し、初期顔を顔再構築対象とすることができる。
【0055】
本発明の実施例で提案される顔再構築方法が異なるシーンに用いられる場合、目標画像の取得方法も異なる。
【0056】
例えば、当該顔再構築方法がゲームに用いられる場合、ゲームデバイスにインストールされている画像取得装置によってゲームプレイヤーの顔を含む画像を取得したり、ゲームデバイスのアルバムからゲームプレイヤーの顔を含む画像を選択したりすることができ、そして、取得したゲームプレイヤーの顔を含む画像を目標画像として決定する。
【0057】
また例えば、顔再構築方法が携帯電話等の端末デバイスに用いられる場合、端末デバイスのカメラによってユーザの顔を含む画像を収集したり、端末デバイスのアルバムからユーザの顔を含む画像を選択したり、端末デバイスにインストールされている他のアプリプログラムからユーザの顔を含む画像を受信したりすることができる。
【0058】
さらに例えば、顔再構築方法がライブ配信のシーンに用いられる場合、ライブ配信装置から取得したビデオストリームに含まれる複数フレームのビデオフレーム画像から、顔を含むビデオフレーム画像を取得することができ、そして、顔を含むビデオフレーム画像を目標画像として決定する。ここで、目標画像は例えば複数フレームであってよい。複数フレームの目標画像は例えばビデオストリームをサンプリングして得られたものであってよい。
【0059】
目標画像に基づいて第1実顔モデルを生成する際に、例えば、初期顔を含む目標画像を取得し、目標画像に含まれる初期顔に対して3次元の顔再構築を行って第1実顔モデルを取得するという方法を利用する。
【0060】
ここでは、目標画像に含まれる初期顔に対して3次元の顔再構築を行う際に、例えば、変形可能な3次元顔モデル(3 Dimensions Morphable Models,3DMM)を利用して、初期顔に対応する第1実顔モデルを取得する。第1実顔モデルは、例えば、目標画像における初期顔の複数のキーポイントのうちの各キーポイントの、予め設定されたカメラ座標系における位置情報を含む。
【0061】
上記したステップS102について、第2実顔モデルは、参照顔を含む参照画像に基づいて生成されたものである。ここで、異なる参照画像における参照顔は、異なるものであってよい。例示的には、性別、年齢、肌色、太り具合等のうちの少なくとも1つが異なる複数の人物を選択し、複数の人物のそれぞれについてその顔画像を取得し、取得した顔画像を参照画像とする。このように、複数枚の参照画像に基づいて取得した複数の第2実顔モデルは、できるだけ広範な顔の外形特徴をカバーすることができる。
【0062】
参照顔は、例えば、N個の異なるオブジェクトに対応する顔を含む(Nは1より大きい整数)。例示的には、N個の異なるオブジェクトをそれぞれ撮影することでN個の異なるオブジェクトのそれぞれに対応するN枚の写真を取得し、1枚の写真毎に1つの参照顔が対応されている。このとき、このN枚の写真をN枚の参照画像とし、あるいは、予め撮影された異なる顔を含む複数枚の画像からN枚の参照画像を特定してもよい。
【0063】
例示的には、複数の第2実顔モデルを生成する方法は、参照顔を含む複数枚の参照画像を取得することと、複数枚の参照画像のそれぞれについて、当該参照画像に含まれる参照顔に対して3次元の顔再構築を行うことで、当該参照画像に対応する第2実顔モデルを取得することと、を含む。
【0064】
参照顔に対して3次元の顔再構築を行う方法は、上記した初期顔に対して3次元の顔再構築を行う方法と類似するので、ここで重複に説明しないものとする。取得した第2実顔モデルは、参照画像における参照顔の複数のキーポイントのうちの各キーポイントの、予め設定されたカメラ座標系における位置情報を含む。このとき、当該第2実顔モデルの座標系と第1実顔モデルの座標系は、同一の座標系であってもよい。
【0065】
予め生成された複数の第2実顔モデルを利用して第1実顔モデルのフィッティング処理を行うことで、複数の第2実顔モデルのそれぞれに対応する複数のフィッティング係数を取得することは、例えば、複数の第2実顔モデル及び第1実顔モデルに対して最小二乗処理を行うことで、複数の第2実顔モデルのそれぞれに対応するフィッティング係数を取得するという方式で実現することができる。
【0066】
例示的には、第1実顔モデルに対応するモデルデータをDa、第2実顔モデルに対応するモデルデータをDbi(i∈[1,N])として表すことができ、ここで、DbiはN個の第2実顔モデルのうちi番目の第2実顔モデルを示す。
【0067】
aを利用してDb1~DbNのそれぞれに対して最小二乗処理を行うことで、N個のフィッティング値を取得することができ、このフィッティング値をαi(i∈[1,N])として表す。ここで、αiはi番目の第2実顔モデルに対応するフィッティング値を示す。N個のフィッティング値を用いてフィッティング係数Alphaを決定することができ、例えば係数行列として表すことができ、即ち、Alpha=[α1,α2,…,αN]である。
【0068】
ここでは、複数の第2実顔モデルを利用して第1実顔モデルのフィッティングを行うプロセスにおいて、複数のフィッティング係数により複数の第2実顔モデルを重み付け加算して得られたデータは、第1実顔モデルのデータにできるだけ近づくことが可能である。
【0069】
このフィッティング係数は、複数の第2実顔モデルを利用して第1実顔モデルを表現する際の各第2実顔モデルの表現係数として見なされてもよい。換言すると、表現係数における、複数の第2実顔モデルのそれぞれに対応する複数のフィッティング値を利用して、第2実顔モデルを第1実顔モデルに変換やフィッティングすることができる。
【0070】
上記したステップS103について、予め設定されたスタイルは、例えば、カートゥーンスタイル、古代スタイル、又は抽象スタイル等であってもよく、実際の必要に応じて具体的に設定することができる。例示的には、予め設定されたスタイルがカートゥーンスタイルである場合、予め設定されたスタイルを有する仮想顔モデルは、例えば、あるカートゥーンスタイルを有する仮想顔モデルである。
【0071】
仮想顔モデルは、骨格データと、スキンデータ及び/又はスキン変形係数と、を含む。スキン変形係数は、仮想顔モデルにおけるスキンデータの予め生成された標準仮想顔モデルにおける標準スキンデータに対する変形を示す。
【0072】
図2に示すように、本発明の実施例では、前記複数の第2実顔モデルのそれぞれについて、当該第2実顔モデルに対応し且つ予め設定されたスタイルを有する仮想顔モデルを生成するための具体的な方法が提案されており、該方法は、次のステップを含む。
【0073】
S201:当該第2実顔モデルに対応し且つ予め設定されたスタイルを有する中間仮想顔モデルを生成する。
【0074】
ここでは、当該第2実顔モデルに対応し且つ予め設定されたスタイルを有する中間仮想顔モデルを生成するための方法は、例えば、次の(a1)と(a2)のうちの少なくとも1つを含む。
【0075】
(a1)参照画像に基づいて参照顔の特徴を有し且つ予め設定されたスタイルを有する仮想顔画像を作成し、仮想顔画像における仮想顔に対して3次元モデリングを行うことで、仮想顔画像における仮想顔の骨格データ及びスキンデータを取得してもよい。
【0076】
ここで、骨格データは、仮想顔に対して予め設定された複数の骨格の予め設定された座標系における骨格回転データ、骨格スケール(拡大縮小)データ、及び骨格位置データを含む。ここで、複数の骨格は、例えば複数の階層に分けられることができ、例えば、ルート(root)骨格、五官骨格、及び五官細部骨格を含む。五官骨格は、眉骨、鼻骨、頬骨、顎骨、口骨等を含んでもよい。五官細部骨格は、例えば異なる五官骨格をさらに詳細に分けることができる。異なるスタイルを有する仮想画像のニーズに応じて具体的に設定することができ、ここでは限定されない。
【0077】
スキンデータは、仮想顔の表面の複数の位置ポイントの予め設定されたモデル座標系における位置情報、及び各位置ポイントと複数の骨格のうちの少なくとも一つの骨格との関連関係情報を含む。ここで、当該モデル座標系は、仮想顔モデルに対して設定された3次元座標系である。
【0078】
仮想顔画像における仮想顔に対して3次元モデリングを行って得られた仮想モデルを、第2実顔モデルに対応する中間仮想顔モデルとする。
【0079】
(a2)予め設定されたスタイルを有する標準仮想顔モデルを予め生成する。この標準仮想顔モデルは同様に、標準骨格データ、標準スキンデータ、及び標準骨格データと標準スキンデータとの関連関係を含む。複数枚の参照画像のそれぞれに対応する参照顔の顔特徴に基づいて標準的仮想顔モデルにおける標準骨格データを調整することにより、調整済みの標準的仮想顔モデルは、予め設定されたスタイルを有するとともに参照画像における参照顔の特徴も含む。その次に、標準骨格データと標準スキンデータとの関連関係に基づいて標準スキンデータを調整するとともに、標準スキンデータに参照顔の特徴情報を追加することもでき、そして、調整済みの標準骨格データと調整済みの標準スキンデータに基づいて、第2実顔モデルに対応する中間仮想顔モデルを生成する。
【0080】
ここでは、中間仮想顔モデルの具体的なデータの表現は、上記した(a1)での記述を参照でき、ここで重複に説明しないものとする。
【0081】
S202:標準仮想顔モデルに対する複数組の予め設定されたスキン変形係数に基づいて、当該第2実顔モデルに対応する仮想顔モデルの標準仮想顔モデルに対するスキン変形係数を生成する。
【0082】
ここでは、標準仮想顔モデルに対して生成された複数組のスキン変形係数は、標準仮想顔モデルの骨格が不変である場合に、標準仮想顔モデルの標準スキンデータ中の、標準仮想顔モデルを特徴付けるための例えば頬骨等の具体的な位置に対応する少なくとも一部の位置ポイントのみを調整する調整係数である。
【0083】
各組のスキン変形係数は、標準スキンデータ中の少なくとも一部の位置ポイントのモデル座標系における位置を調整した結果を特徴付けるものであり、標準仮想顔モデルにおける調整された位置ポイントに対応する部位を太くまたは細くするという効果をもたらすことができる。
【0084】
複数組の予め設定されたスキンデータによって参照顔に対応するスキン変形係数を組み合わせる際に、例えば、フィッティング済みの結果が参照顔の顔形状に似ているように、複数組の予め設定されたスキンデータのフィッティングを行うことができる。
【0085】
S203:スキン変形係数を利用して中間仮想顔モデルにおける中間スキンデータを調整し、調整済みの中間スキンデータ、及び中間仮想顔モデルの中間骨格データに基づいて、当該第2実顔モデルに対応する仮想顔モデルを生成する。
【0086】
例えば、1つの実施可能な形態では、R組の予め設定されたスキン変形係数Blendshapeを取得することができる。ここで、各組の予め設定されたスキン変形係数には、スキンデータ中の複数の位置ポイントのそれぞれに対応する変形係数値が含まれている。例示的には、スキンデータ中の位置ポイントがW個であり、1つの位置ポイント毎に1つの変形係数値が対応されている場合、R組の予め設定されたスキン変形係数のうちの各組のスキン変形係数の次元がWである。
【0087】
ここで、Blendshapei(i∈[1,N])でi番目組の予め設定されたスキン変形係数を表す。R組の予め設定されたスキン変形係数によれば、標準仮想顔モデルの太り具合を修正して、太り具合の特徴が調整されたR個の標準仮想顔モデルを取得することができる。
【0088】
仮想顔モデルを生成する際に、R組の予め設定されたスキン変形係数Blendshapeの組み合わせによって仮想顔モデルのスキン変形係数を取得することができる。ここで、例えば、異なる予め設定されたスキン変形係数ために対応する重み値を追加し、この重み値によりR組の予め設定されたスキン変形係数を重み付け加算することで、ある仮想顔モデルのスキン変形係数を取得することができる。
【0089】
例示的には、N個の第2実顔モデルが予め生成され、R組の予め設定されたスキン変形係数が取得された場合、i番目の実顔のスキン変形係数Blendshapeiの次元がR×Wである。N個の第2実顔モデルのそれぞれに対応するスキン変形係数は、次元N×R×Wの行列を構成でき、この行列には、N個の第2実顔モデルのそれぞれに対応する仮想顔モデルのスキン変形係数が含まれている。
【0090】
また、スキン変形係数を利用して中間仮想顔モデルのスキンデータを調整する際に、生成される仮想顔モデルと参照顔との類似度が一層高くなるように、中間仮想顔モデルの骨格データを微調整して、生成される仮想顔モデルの顔細部特徴を最適化してもよい。
【0091】
N個の第2実顔モデルのそれぞれに対応する仮想顔モデルを取得した後、N個の仮想顔モデル及び対応するフィッティング係数を利用して目標仮想顔モデルのフィッティングを行い、目標骨格データ及び目標スキン変形データを生成することができる。
【0092】
具体的には、目標仮想顔モデルは、目標骨格データ、及び目標スキンデータを含む。さらに、目標スキンデータは、目標骨格データ、及び目標仮想顔モデルの目標スキン変形データに基づいて決定されるものである。
【0093】
本発明の実施例では、複数の第2実顔モデルに対応するフィッティング係数、及び複数の仮想顔モデルのそれぞれに対応する骨格データに基づいて、目標骨格データを取得する際に、例えば、複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の仮想顔モデルのそれぞれに対応する骨格データを補間処理することで、目標骨格データを取得することを含む。
【0094】
仮想顔モデルに対応する骨格データは、仮想顔における複数の顔骨格のそれぞれに対応する骨格回転データ、骨格位置データ、及び骨格スケールデータのうちの少なくとも1つを含む。取得した目標骨格データは、目標骨格位置データ、目標骨格スケールデータ、及び目標骨格回転データのうちの少なくとも1つを含む。
【0095】
例示的には、複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の仮想顔モデルのそれぞれに対応する骨格データを補間処理することで、目標骨格データを取得する際に、例えば次の(b1)~(b3)のうちの少なくとも1つを用いることができる。
【0096】
(b1)複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の仮想顔モデルのそれぞれに対応する骨格位置データを補間処理することで、目標骨格位置データを取得する。
【0097】
(b2)複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の仮想顔モデルのそれぞれに対応する骨格スケールデータを補間処理することで、目標骨格スケールデータを取得する。
【0098】
(b3)複数の仮想顔モデルのそれぞれに対応する骨格回転データを四元数に変換し、取得した四元数を正規化処理することで正規化四元数を取得し、そして、複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の仮想顔モデルのそれぞれに対応する正規化四元数を補間処理することで、目標骨格回転データを取得する。
【0099】
具体的な実施プロセスにおいて、上記した方法(b1)及び方法(b2)について、骨格位置データ及び骨格スケールデータを取得する際に、複数の第2実顔モデルに基づいて、各階層骨格及び各階層骨格に対応する局所座標系を決定することをさらに含む。顔モデルの骨格階層化を行う際に、例えば、生物学的骨格階層化方法に従って骨格階層を決定してもよいし、顔再構築の要求に応じて骨格階層を決定してもよく、具体的な階層化方法は、実際の状況に応じて決定することができ、ここで重複に説明しないものとする。
【0100】
各骨格階層を決定した後、各骨格階層に基づいて各骨格階層に対応する骨格座標系を確立することができる。例示的には、各階層骨格をBoneiとして表すことができる。
【0101】
この場合、骨格位置データは、仮想顔モデルにおける各階層骨格Boneiのそれに対応する骨格座標系における3次元座標値を含み、骨格スケールデータは、仮想顔モデルにおける各階層骨格Boneiのそれに対応する骨格座標系における骨格スケール程度を示す百分比を含み、例えば80%、90%又は100%であってよい。
【0102】
1つの実施可能な形態では、i番目の仮想顔モデルに対応する骨格位置データをPosi、i番目の仮想顔モデルに対応する骨格スケールデータをScalingiとして表す。この場合、骨格位置データPosiは、複数の階層の骨格のそれぞれに対応する骨格位置データを含み、骨格スケールデータScalingiは、複数の階層の骨格のそれぞれに対応する骨格スケールデータを含む。
【0103】
この場合に対応するフィッティング係数は、αiである。M個の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいてM個の仮想顔モデルのそれぞれに対応する骨格位置データPosiを補間処理することで、目標骨格位置データを取得する。
【0104】
例示的には、例えばフィッティング係数を各仮想顔モデルに対応する重みとして、M個の仮想顔モデルのそれぞれに対応する骨格位置データPosiを重み付け加算処理することで、補間処理プロセスを実現することができる。この場合、目標骨格位置データPosnewは、以下の数式(1)を満たす。
【数1】
【0105】
同様に、M個の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいてM個の仮想顔モデルのそれぞれに対応する骨格スケールデータを補間処理することで、目標骨格スケールデータを取得する。ここで、i番目の仮想顔モデルに対応する骨格スケールデータをScalingiとして表し、M個の第2実顔モデルのそれぞれに対応するフィッティング係数を、仮想顔モデルに対応する重みとして、M個の仮想顔モデルのそれぞれに対応する骨格スケールデータを重み付け加算処理することで、M個の仮想顔モデルの補間処理を実現することができる。この場合、Scalingnewは、以下の数式(2)を満たす。
【数2】
【0106】
上記した方法(b3)について、骨格回転データは、仮想顔モデルにおける各骨格のそれに対応する骨格座標系における、骨格回転座標変換程度を示すためのベクトル値を含み、例えば、回転軸と回転角とを含む。1つの実施可能な形態では、i番目の仮想顔モデルに対応する骨格回転データをTransiとして表す。骨格回転データに含まれる回転角にはジンバルロック(Gimbal Lock)問題があるため、骨格回転データを四元数に変換し、四元数を直接に重み付け加算処理する際のオーバーフィッティング(overfitting)現象の発生を防止するために、四元数を正規化することで正規化四元数データを取得することとなり、そのデータがTrans′iとして表される。
【0107】
M個の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいてM個の仮想顔モデルのそれぞれに対応する正規化四元数Trans′iを補間処理する際に、M個の第2実顔モデルのそれぞれに対応するフィッティング係数を重みとして、M個の仮想顔モデルのそれぞれに対応する正規化四元数を重み付け加算することもできる。この場合、目標骨格回転データTransnewは、以下の数式(3)を満たす。
【数3】
【0108】
また、目標骨格位置データPosnew、目標骨格スケールデータScalingnew、及び目標骨格回転データTransnewを取得するために、その他の補間法を用いてもよく、具体的には実際のニーズに応じて決定できるが、本発明では限定されない。
【0109】
上記した(b1)、(b2)、及び(b3)で取得した目標骨格位置データPosnew、目標骨格スケールデータScalingnew、及び目標骨格回転データTransnewによれば、Bonenewとして表す目標骨格データを決定することができる。例示的には、この目標骨格データをベクトル形態で(Posnew,Scalingnew,Transnew)として表すことができる。
【0110】
複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルが決定された場合、目標スキン変形係数を生成するときに、例えば、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び複数の前記仮想顔モデルのそれぞれに含まれるスキン変形係数に基づいて前記目標スキン変形係数を生成するという方法を用いることができる。ここで、仮想顔モデルのスキン変形係数は、仮想顔モデルのスキンデータの予め生成された標準仮想顔モデルの標準スキンデータに対する変形を表す。
【0111】
図3に示すように、本発明の実施例ではさらに、目標スキン変形係数を取得するための具体的な方法が提案されており、該方法は、次のステップを含む。
【0112】
S301:複数の第2実顔モデルのそれぞれに対応するフィッティング係数を正規化処理する。
【0113】
複数の第2実顔モデルのそれぞれに対応するフィッティング係数を正規化処理する際に、例えば正規化関数(Softmax)を用いて確率値を求めて、複数の第2実顔モデルのそれぞれに対応するフィッティング係数の複数のフィッティング係数における割合を特徴付けることができ、正規化済みのフィッティング係数をAlphaNormとして設定する。
【0114】
例示的には、第2実顔モデルがN個ある場合、正規化処理して得られたフィッティング係数AlphaNormの次元がNである。
【0115】
S302:正規化済みのフィッティング係数に基づいて複数の仮想顔モデルのそれぞれに含まれるスキン変形係数を補間処理することで、目標スキン変形係数を取得する。
【0116】
ここでは、複数の第2実顔モデルのそれぞれに対応するフィッティング係数を利用して、仮想顔モデルに含まれるスキン変形係数に対してそれぞれフィッティングを行い、得られたフィッティング結果は、複数の第2実顔モデルの仮想顔モデルに対する影響力を特徴付けて、目標スキン変形係数が生成されることができる。目標スキン変形係数により、例えば、得られた目標仮想顔モデルが目標画像における顔の太り具合の特徴と一致するように、顔の太り具合を調整することができる。
【0117】
例示的には、正規化済みの前記フィッティング係数に基づいて複数の前記仮想顔モデルのそれぞれに対応する前記スキン変形係数を重み付け加算することで、複数の仮想顔モデルのそれぞれに対応するスキン変形係数を補間処理して、前記目標スキン変形係数を取得することができる。
【0118】
正規化処理によって得られたフィッティング係数AlphaNormは、次元Nの第1ベクトルを表すことができ、R個の仮想顔モデルのそれぞれに対応するスキン変形係数は、次元N×Rの第2ベクトルを形成することができる。このとき、複数の前記仮想顔モデルのそれぞれに対応する前記スキン変形係数を重み付け加算し、例えば第1ベクトルと第2ベクトルを直接乗算して目標スキン変形係数を取得することができる。
【0119】
例示的には、例えば以下の式によって、Blendshape′として表される目標スキン変形係数を取得することができ、そして、Blendshape′は、以下の数式(4)を満たす。
Blendshape′=Blendshape×AlphaNorm (4)
【0120】
上記したS104について、図4に示すように、本発明の実施例ではさらに、目標骨格データ及び目標スキン変形係数に基づいて第1実顔モデルに対応する目標仮想顔モデルを生成するための具体的な方法が提案されており、該方法は、次のステップを含む。
【0121】
S401:目標骨格データ、及び標準仮想顔モデルにおける標準骨格データと標準スキンデータとの関連関係に基づいてスキンデータの位置変換処理を行うことで、中間スキンデータを生成する。
【0122】
ここでは、標準仮想顔モデルにおける標準骨格データと標準スキンデータとの関連関係は、例えば、各階層の骨格に対応する標準骨格データと標準スキンデータとの関連関係である。この関連関係に基づき、仮想顔モデルにおける骨格にスキンをバインドすることができる。
【0123】
生成される目標スキンデータ中の階層骨格に対応する位置が対応する目標骨格データ中の位置と一致するように、目標骨格データ、及び標準仮想顔モデルにおける標準骨格データと標準スキンデータとの関連関係を利用して、複数の階層の骨格に対応する位置のスキンデータに対して位置変換処理を行ってもよく、このとき、例えば、位置変換処理済みのスキンデータを、生成される中間スキンデータとすることができる。
【0124】
S402:目標スキン変形係数に基づいて中間スキンデータの変形処理を行うことで、目標スキンデータを取得する。
【0125】
S403:目標骨格データ及び目標スキンデータに基づいて目標仮想顔モデルを確立する。
【0126】
ここでは、目標骨格データを利用して目標仮想顔モデルを確立するための各階層骨格を決定することができ、目標スキンデータを利用してモデルが骨格にバインドされるスキンを決定することができ、さらに、目標仮想顔モデルを確立することができる。
【0127】
目標仮想顔モデルを決定する方法は、目標骨格データ及び目標スキンデータに基づいて目標仮想顔モデルを直接確立する方法と、各階層骨格に対応する目標骨格データを利用して、第1実顔モデルにおける対応する各階層骨格のデータを置き換えてから、目標スキンデータを利用して目標仮想顔モデルを確立する方法とのうちの少なくとも1つを含む。目標仮想顔モデルを確立するための具体的な方法は、実際の状況に応じて決定することができ、ここで重複に説明しないものとする。
【0128】
本発明の実施例ではさらに、本発明の実施例で提案される顔再構築方法を利用して目標画像PicAにおける初期顔Aに対応する目標仮想顔モデルModAimを取得する具体的なプロセスに関する説明が提供されている。
【0129】
目標仮想顔モデルModAimの確立は、次のステップ(c1)~(c6)を含む。
【0130】
(c1)素材を用意する。具体的には、標準仮想顔モデルの素材を用意することと、仮想ピクチャの素材を用意することと、を含む。
【0131】
標準仮想顔モデルの素材を用意する際に、予め設定されたスタイルとしてカートゥーンスタイルを選択することを例にとって説明すると、先ずカートゥーンスタイルを有する標準仮想顔モデルModBaseを設定する。
【0132】
9組の予め設定されたスキン変形係数を生成する。ここで、9組のスキン変形係数のそれぞれを利用して、標準仮想顔モデルの標準スキンデータに対して異なる部位及び/又は異なる程度の変更を行うことをすれば、標準仮想顔の太り具合を調整することができ、ほとんどの顔型特徴をカバーすることができる。
【0133】
仮想ピクチャの素材を用意する際に、24枚の仮想ピクチャPic1~Pic24を収集する。収集した24枚の仮想ピクチャは、仮想顔B1~B24に対応する男女の数が平衡しており、できるだけ広範な五官特徴分布を含んでいる。
【0134】
(c2)顔モデルを再構築する。具体的には、目標画像PicAにおける初期顔Aを利用して第1実顔モデルModfstを生成することと、仮想ピクチャ中の仮想顔B1~B24を利用して第2実顔モデルModsnd-1~Modsnd-24を生成することと、を含む。
【0135】
初期顔Aを利用して第1実顔モデルModfstを生成する際に、先ず目標画像における顔の向きを正しくして切り取って、その次に予めトレーニングされたRGB再構築ニューラルネットワークを利用して、初期顔Aに対応する第1実顔モデルModfstを生成する。同様に、予めトレーニングされたRGB再構築ニューラルネットワークを利用して、仮想顔B1~B24のそれぞれに対応する第2実顔モデルModsnd-1~Modsnd-24を確立することができる。
【0136】
第2実顔モデルModsnd-1~Modsnd-24を確立した後、予め設定されたスタイルを利用して、手動調整で、第2実顔モデルModsnd-1~Modsnd-24のそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルModfic-1~Modfic-24を確立することをさらに含む。
【0137】
また、予め設定された9組のスキン変形係数に基づいて24個の仮想顔モデルのスキン変形係数を生成することをさらに含む。
【0138】
(c3)フィッティング処理を行う。具体的には、複数の第2実顔モデルを利用して第1実顔モデルのフィッティング処理を行うことで、複数の第2実顔モデルのそれぞれに対応するフィッティング係数alpha=[alphasnd-1,alphasnd-2,・・・,alphasnd-24]を取得することを含む。
【0139】
複数の第2実顔モデルを利用して第1実顔モデルのフィッティングを行う際に、最小二乗法を選択してフィッティングを行うことで、24次元係数alphaを取得する。
【0140】
(c4)目標スキン変形係数を決定する。具体的には、目標スキン変形係数を決定する際に、次の(c4-1)、(c4-2)、及び(c4-3)を含む。
【0141】
(c4-1)予め設定されたスタイルを有する仮想顔モデルModfic-1~Modfic-24のそれぞれに対応するスキン変形係数blendshapefic-1~blendshapefic-24を読み取る。
【0142】
(c4-2)複数の第2実顔モデルのそれぞれに対応するフィッティング係数alphaを正規化処理する。
【0143】
(c4-3)複数の第2実顔モデルのそれぞれに対応するフィッティング係数alphaを利用して、複数の仮想顔モデルのそれぞれに含まれるスキン変形係数blendshapefic-1~blendshapefic-24を補間処理することで、目標スキン変形係数blendshapeAimを生成する。
【0144】
(c5)目標骨格データを決定する。具体的には、目標骨格データを決定する際に、次の(c5-1)及び(c5-2)を含む。
【0145】
(c5-1)骨格データを読み取る。ここで、骨格データは、各階層骨格Boneiにおける予め設定されたスタイルを有する仮想顔モデルModfic-1~Modfic-24のそれぞれに対応する骨格位置データPosi、骨格スケールデータScalingi、及び骨格回転データTransiを含む。
【0146】
(c5-2)フィッティング係数alphaを利用して予め設定されたスタイルを有する仮想顔モデルModfic-1~Modfic-24のそれぞれに対応する骨格データを補間処理することで、目標骨格データBonenewを生成する。この目標骨格データは、目標骨格位置データPosnew、目標骨格スケールデータScalingnew、及び目標骨格回転データTransnewを含む。
【0147】
(c6)目標仮想顔モデルを生成する。
【0148】
目標骨格データ及び目標スキン変形係数に基づき、目標骨格データを標準仮想顔モデルModBaseに代入するとともに、目標スキン変形係数blendshapeAimを利用してスキンを骨格にフィットさせて、第1実顔モデルに対応する目標仮想顔モデルを生成する。
【0149】
図5に示すように、本発明の実施例で提案される上記した具体的な例示に含まれる複数のプロセスにおいて使用される具体的なデータの例示である。具体的には、図5のaは、目標画像を示し、51は、初期顔Aを示し、図5のbは、カートゥーンスタイルを有する標準仮想顔モデルを示す概略図であり、図5のcは、目標スキン変形係数を用いて標準スキンデータ中の各位置ポイントを調整して得られた目標スキンデータ中の各位置ポイントの相対位置関係を示す概略図であり、図5のdは、初期顔Aに対応して生成された目標仮想顔モデルを示す概略図である。
【0150】
ここでは、上記したステップ(c1)~(c6)は、顔再構築の実行方法の具体的な一例示に過ぎず、本発明の実施例で提案される顔再構築方法を制限するものではない点に留意すべきである。
【0151】
当分野の技術者にとっては、具体的な実施形態で記載された上記した方法において、各ステップの記載順序は、実施プロセスを制限するような厳密な実行順序を意味するものではなく、各ステップの具体的な実行順序は、その機能及び可能的な固有ロジックによって決定されるとは、理解されるべきであろう。
【0152】
本発明の実施例ではさらに、上記と同じ発明の構想に基づく、顔再構築方法に対応する顔再構築装置が提案されている。本発明の実施例における装置に係る問題解決原理は、本発明の実施例における上記した顔再構築方法と類似するので、装置の実施は方法の実施を参照でき、重複点についてこれ以上説明しないものとする。
【0153】
図6に示すように、本発明の実施例では顔再構築装置が提案されており、前記装置は、第1生成モジュール61、処理モジュール62、第2生成モジュール63、及び第3生成モジュール64を含む。
【0154】
第1生成モジュール61:目標画像に基づいて第1実顔モデルを生成するように構成される。
【0155】
処理モジュール62:予め生成された複数の第2実顔モデルを利用して前記第1実顔モデルのフィッティング処理を行うことで、複数の第2実顔モデルのそれぞれに対応するフィッティング係数を取得するように構成される。
【0156】
第2生成モジュール63:前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データ及び目標スキン変形係数を生成するように構成される。
【0157】
第3生成モジュール64:前記目標骨格データ及び前記目標スキン変形係数に基づいて、前記第1実顔モデルに対応する目標仮想顔モデルを生成するように構成される。
【0158】
選択的な一実施形態では、前記仮想顔モデルには、前記仮想顔モデルのスキンデータの予め生成された標準仮想顔モデルの標準スキンデータに対する変形を示すスキン変形係数が含まれている。
【0159】
前記第2生成モジュール63は、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標スキン変形係数を生成する際に、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び複数の前記仮想顔モデルのそれぞれに含まれるスキン変形係数に基づいて、前記目標スキン変形係数を生成することに用いられる。
【0160】
選択的な一実施形態では、前記第2生成モジュール63は、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び複数の前記仮想顔モデルのそれぞれに含まれるスキン変形係数に基づいて、前記目標スキン変形係数を生成する際に、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数を正規化処理することと、正規化処理済みのフィッティング係数、及び前記仮想顔モデルのそれぞれに含まれるスキン変形係数に基づいて前記目標スキン変形係数を取得することと、に用いられる。
【0161】
選択的な一実施形態では、前記第3生成モジュール64は、前記目標骨格データ及び前記目標スキン変形係数に基づいて、前記第1実顔モデルに対応する目標仮想顔モデルを生成する際に、前記目標骨格データ、及び標準仮想顔モデルにおける標準骨格データと標準スキンデータとの関連関係に基づいて前記標準スキンデータの位置変換処理を行うことで、中間スキンデータを生成することと、前記目標スキン変形係数に基づいて前記中間スキンデータの変形処理を行うことで、目標スキンデータを取得することと、前記目標骨格データ及び前記目標スキンデータに基づいて前記目標仮想顔モデルを生成することと、に用いられる。
【0162】
選択的な一実施形態では、前記目標骨格データは、目標骨格位置データ、目標骨格スケールデータ、及び目標骨格回転データのうちの少なくとも1つを含む。
【0163】
前記仮想顔モデルに対応する骨格データは、仮想顔における複数の顔骨格のそれぞれに対応する骨格回転データ、骨格位置データ、及び骨格スケールデータのうちの少なくとも1つを含む。
【0164】
選択的な一実施形態では、前記第2生成モジュール63は、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データを生成する際に、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の前記仮想顔モデルのそれぞれに対応する骨格位置データを補間処理することで、前記目標骨格位置データを取得することに用いられる。
【0165】
選択的な一実施形態では、前記第2生成モジュール63は、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データを生成する際に、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の前記仮想顔モデルのそれぞれに対応する骨格スケールデータを補間処理することで、前記目標骨格スケールデータを取得することに用いられる。
【0166】
選択的な一実施形態では、前記第2生成モジュール63は、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データを生成する際に、複数の前記仮想顔モデルのそれぞれに対応する骨格回転データを四元数に変換し、複数の前記仮想顔モデルのそれぞれに対応する四元数を正規化処理することで、正規化四元数を取得することと、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数に基づいて複数の前記仮想顔モデルのそれぞれに対応する前記正規化四元数を補間処理することで、前記目標骨格回転データを取得することと、に用いられる。
【0167】
選択的な一実施形態では、前記第1生成モジュール61は、目標画像に基づいて第1実顔モデルを生成する際に、初期顔を含む目標画像を取得することと、前記目標画像に含まれる前記初期顔に対して3次元の顔再構築を行うことで、前記第1実顔モデルを取得することと、に用いられる。
【0168】
選択的な一実施形態では、前記処理モジュール62は、参照顔を含む複数枚の参照画像を取得し、前記複数枚の参照画像のそれぞれについて、前記参照画像に含まれる参照顔に対して3次元の顔再構築を行い、前記参照画像に対応する第2実顔モデルを取得する、ことにより、前記複数の第2実顔モデルを予め生成する。
【0169】
選択的な一実施形態では、当該顔再構築装置は、前記複数の第2実顔モデルのそれぞれについて、前記第2実顔モデルに対応し且つ予め設定されたスタイルを有する中間仮想顔モデルを生成し、標準仮想顔モデルに対する複数組の予め設定されたスキン変形係数に基づいて、前記第2実顔モデルに対応する仮想顔モデルの前記標準仮想顔モデルに対するスキン変形係数を生成し、前記スキン変形係数を利用して前記中間仮想顔モデルにおける中間スキンデータを調整し、調整済みの中間スキンデータ、及び前記中間仮想顔モデルの中間骨格データに基づいて前記第2実顔モデルの仮想顔モデルを生成する、ことにより、前記第2実顔モデルに対応し且つ予め設定されたスタイルを有する仮想顔モデルを取得するように構成される取得モジュール65をさらに含む。
【0170】
選択的な一実施形態では、前記処理モジュール62は、予め生成された複数の第2実顔モデルを利用して前記第1実顔モデルのフィッティング処理を行うことで、複数の第2実顔モデルのそれぞれに対応するフィッティング係数を取得する際に、前記複数の第2実顔モデル及び前記第1実顔モデルに対して最小二乗処理を行うことで、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数を取得することに用いられる。
【0171】
装置に係る各モジュールの処理プロセス及び各モジュール間の相互作用プロセスに関する記述は、上記した方法実施例における関連記述を参照でき、ここでは詳しく説明しないものとする。
【0172】
図7に示すように、本発明の実施例ではさらに、プロセッサ71及びメモリ72を含むコンピュータデバイスが提案されている。
【0173】
メモリ72には、プロセッサ71で実行できる機械読み取り可能な命令が格納されており、プロセッサ71は、メモリ72に格納された機械読み取り可能な命令を実行するように構成され、前記機械読み取り可能な命令がプロセッサ71で実行される際に、プロセッサ71は、目標画像に基づいて第1実顔モデルを生成するステップと、予め生成された複数の第2実顔モデルを利用して前記第1実顔モデルのフィッティング処理を行うことで、複数の第2実顔モデルのそれぞれに対応するフィッティング係数を取得するステップと、前記複数の第2実顔モデルのそれぞれに対応するフィッティング係数、及び前記複数の第2実顔モデルのそれぞれに対応し且つ予め設定されたスタイルを有する仮想顔モデルに基づいて、目標骨格データ及び目標スキン変形係数を生成するステップと、前記目標骨格データ及び前記目標スキン変形係数に基づいて、前記第1実顔モデルに対応する目標仮想顔モデルを生成するステップと、を実行することとなる。
【0174】
上記したメモリ72は、内部メモリ721及び外部メモリ722を含む。ここでの内部メモリ721は、内蔵メモリとも呼ばれ、プロセッサ71における演算データ、及びハードディスク等の外部メモリ722との交換データを一時的に格納するように構成され、プロセッサ71は、内部メモリ721を介して外部メモリ722とのデータ交換を行うように構成される。
【0175】
上記した命令の具体的な実行プロセスは、本発明の実施例で説明した顔再構築方法を参照でき、ここで重複に説明しないものとする。
【0176】
本発明の実施例ではさらに、コンピュータ・プログラムが格納されたコンピュータ読み取り可能な記憶媒体であって、当該コンピュータ・プログラムがプロセッサで実行される際に、上記した方法実施例で説明した顔再構築方法が実施されることとなる、コンピュータ読み取り可能な記憶媒体が提案されている。また、当該記憶媒体は、揮発性もしくは不揮発性のコンピュータ読み取り可能な記憶媒体であってもよい。
【0177】
本発明の実施例ではさらに、プログラムコードを含むコンピュータ・プログラム製品が提案されており、前記プログラムコードに含まれる命令によって上記した方法実施例で説明した顔再構築方法を実施することができる。具体的には上記した方法実施例を参照でき、ここで重複に説明しないものとする。
【0178】
また、上記したコンピュータ・プログラム製品は具体的に、ハードウェア、ソフトウェア又はそれらの組み合わせで実現することができる。選択的な一実施例では、前記コンピュータ・プログラム製品は、コンピュータ記憶媒体として具現化しているが、選択的な別の一実施例では、コンピュータ・プログラム製品は、例えばソフトウェア開発キット(Software Development Kit、SDK)等のソフトウェア製品として具現化している。
【0179】
記述の便利及び簡潔のため、上記したシステム及び装置の具体的な作業プロセスは、上記した方法実施例における対応プロセスを参照できるとは、当分野の技術者には明白であろう。ここでは、重複に説明しないものとする。本発明で提案される幾つかの実施例では、披露されたシステム、装置、及び方法が他の形態で実現され得ることは、理解されるべきであろう。上記した装置実施例は、単なる例示的なものに過ぎず、例えば、上記したユニットの区画は、単なる論理的な機能の区画に過ぎず、実際の実施時、他の区画方法が存在してもよく、また例えば、複数のユニットまたは構成要素が別のシステムに組み合わせられたり集成されたりすることができ、一部の特徴が無視されたり実行されなかったりすることもできる。また、表示または討論される相互結合または直接結合または通信接続は、幾つかのインターフェース、装置またはユニットを介した間接結合または通信接続であってもよく、電気的、機械的または他の形態であってもよい。
【0180】
分離部品として説明する前記ユニットは、物理的に分離したものであってもなくてもよく、ユニットとして表される部品は、物理ユニットであってもなくてもよく、即ち、同一の箇所に位置しても、複数のネットワークユニットに配置されてもよい。本実施例に係る技術案の目的を実現するために、実際の必要に応じて上記したユニットから一部または全部を選択することができる。
【0181】
また、本発明の各実施例における各機能ユニットについては、全てのユニットが1つの処理ユニットに集成されてもよいし、各ユニットが単独で物理的に存在してもよいし、2つ以上のユニットが1つのユニットに集成されてもよい。
【0182】
上記した機能は、ソフトウェア機能ユニットの形態で実現され、かつ独立した製品として販売されるかまたは使用される場合、プロセッサで実行できる不揮発性のコンピュータ読み取り可能な記憶媒体に格納され得る。このような理解を基に、本発明に係る技術案は本質的に、換言すれば従来技術に貢献する部分又は当該技術案の一部がソフトウェア製品の形態で体現でき、当該コンピュータソフトウェア製品は、記憶媒体に格納され、1台のコンピュータデバイス(パーソナルコンピュータ、サーバ、またはネットワークデバイス等であってもよい)に本発明の各実施例で説明した方法におけるステップの全部又は一部を実行させるための若干の命令を含む。上記した記憶媒体としては、Uディスク、モバイルハードディスク、読み取り専用メモリ(Read-Only Memory、ROM)、ランダムアクセスメモリ(Random Access Memory、RAM)、磁気ディスク又は光ディスク等の、プログラムコードを記憶可能な各種媒体が挙げられる。
【0183】
最後に説明したいこととして、上記した実施例は、単なる本発明の具体的な実施形態に過ぎず、本発明に係る技術案を説明するためのものであり、それを制限するものでなく、本発明の保護範囲は、上記した実施例に制限されるものではない。上記した実施例を参照して本発明について詳しく説明したが、当分野の通常の技術者にとっては、本技術分野に熟知する任意の技術者であれば、本発明に披露された技術範囲内で、上記した実施例に記載された技術案を補正したり、その変更に容易に想到したり、その一部の技術特徴について同等な置換を行ったりすることができ、これらの修正、変更または置換は、関連する技術案の本質が本発明の実施例に係る技術案の精神及び範囲から逸脱したことを招来するものでないため、本発明の保護範囲内に含まれるとは、理解されるべきであろう。したがって、本発明の保護範囲は、特許請求の範囲の保護範囲を基準とするものとする。
【0184】
本特許出願は、2020年11月25日に提出された、出願番号が202011337901.1、発明の名称が「顔再構築方法、装置、コンピュータデバイス、及び記憶媒体」である中国特許出願の優先権を主張しており、当該中国特許出願が援用により本明細書に組み込まれるものとする。
図1
図2
図3
図4
図5
図6
図7