(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-07
(45)【発行日】2024-06-17
(54)【発明の名称】顔画像処理方法、顔画像処理モデルの訓練方法、装置、機器、及びコンピュータプログラム
(51)【国際特許分類】
G06T 3/04 20240101AFI20240610BHJP
G06T 1/00 20060101ALI20240610BHJP
G06T 7/00 20170101ALI20240610BHJP
【FI】
G06T3/04
G06T1/00 340A
G06T7/00
(21)【出願番号】P 2022565902
(86)(22)【出願日】2022-08-11
(86)【国際出願番号】 CN2022111744
(87)【国際公開番号】W WO2023020358
(87)【国際公開日】2023-02-23
【審査請求日】2022-10-27
(31)【優先権主張番号】202110963370.5
(32)【優先日】2021-08-20
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】517392436
【氏名又は名称】▲騰▼▲訊▼科技(深▲セン▼)有限公司
【氏名又は名称原語表記】TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
【住所又は居所原語表記】35/F,Tencent Building,Kejizhongyi Road,Midwest District of Hi-tech Park,Nanshan District, Shenzhen,Guangdong 518057,CHINA
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100150197
【氏名又は名称】松尾 直樹
(72)【発明者】
【氏名】▲賀▼ 珂珂
(72)【発明者】
【氏名】朱 俊▲偉▼
(72)【発明者】
【氏名】▲趙▼ ▲艷▼丹
(72)【発明者】
【氏名】▲陳▼ 旭
(72)【発明者】
【氏名】▲タイ▼ ▲穎▼
(72)【発明者】
【氏名】汪 ▲チェン▼杰
(72)【発明者】
【氏名】李 季▲リン▼
(72)【発明者】
【氏名】黄 ▲飛▼▲躍▼
【審査官】豊田 好一
(56)【参考文献】
【文献】国際公開第2020/173329(WO,A1)
【文献】特開2020-177605(JP,A)
【文献】特開2021-073619(JP,A)
【文献】特開2014-149677(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 3/04
G06T 1/00
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
コンピュータ機器が実行する、顔画像処理方法であって、
ソース顔の顔画像及びテンプレート顔の顔テンプレート画像を取得するステップと、
前記顔画像及び前記顔テンプレート画像に対して三次元顔モデリングを行い、前記顔画像の三次元顔画像特徴及び前記顔テンプレート画像の三次元顔テンプレート画像特徴を得るステップと、
前記三次元顔画像特徴と前記三次元顔テンプレート画像特徴を融合して、三次元融合特徴を得るステップと、
前記顔テンプレート画像に基づいて、前記顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得るステップと、
前記三次元融合特徴に基づいて、前記初期顔置換特徴を変換して、目標顔置換特徴を得るステップと、
前記目標顔置換特徴に基づいて、前記顔テンプレート画像内のテンプレート顔を前記ソース顔に置換して、置換された顔画像を得るステップと、を含む、顔画像処理方法。
【請求項2】
前記三次元顔画像特徴と前記三次元顔テンプレート画像特徴を融合して、三次元融合特徴を得るステップは、
前記三次元顔画像特徴から、前記顔画像のソース顔アイデンティティ特徴を抽出するステップと、
前記三次元顔テンプレート画像特徴から、前記顔テンプレート画像のテンプレート顔画像特徴を抽出するステップと、
前記ソース顔アイデンティティ特徴と前記テンプレート顔画像特徴を融合して、前記三次元融合特徴を得るステップと、を含む、
請求項1に記載の顔画像処理方法。
【請求項3】
前記顔テンプレート画像に基づいて、前記顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得るステップは、
前記顔テンプレート画像を符号化して、前記顔テンプレート画像の第1符号化特徴を得るステップと、
前記顔画像を符号化して、前記顔画像の第2符号化特徴を得るステップと、
前記第2符号化特徴に基づいて、前記第1符号化特徴を調整して、前記初期顔置換特徴を得るステップと、を含む、
請求項1に記載の顔画像処理方法。
【請求項4】
前記
三次元融合特徴に基づいて、前記初期顔置換特徴を変換して、目標顔置換特徴を得るステップは、
前記三次元融合特徴に対して第1論理演算を行い、演算された三次元顔画像特徴を得、前記初期顔置換特徴に対して第2論理演算を行い、演算された顔置換特徴を得るステップと、
前記初期顔置換特徴及び前記演算された顔置換特徴に対して、第3論理演算を行い、演算された顔置換特徴を得るステップと、
前記演算された顔置換特徴及び前記演算された三次元顔画像特徴に対して、第4論理演算を行い、前記目標顔置換特徴を得るステップと、を含む、
請求項1に記載の顔画像処理方法。
【請求項5】
前記三次元融合特徴は、少なくとも2つのサブ三次元融合特徴を含み、各前記サブ三次元融合特徴は、1つの特徴次元に対応し、
前記三次元融合特徴に対して第1論理演算を行い、演算された三次元顔画像特徴を得るステップは、
前記少なくとも2つのサブ三次元融合特徴の標準偏差を決定し、前記標準偏差を、前記演算された三次元顔画像特徴とするステップを含む、
請求項4に記載の顔画像処理方法。
【請求項6】
前記三次元顔画像特徴と前記三次元顔テンプレート画像特徴を融合して、三次元融合特徴を得るステップは、
顔画像処理モデルを利用して、前記三次元顔画像特徴と前記三次元顔テンプレート画像特徴を融合して、三次元融合特徴を得るステップを含み、
前記顔テンプレート画像に基づいて、前記顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得るステップは、
前記顔画像処理モデルを利用して、前記顔テンプレート画像に基づいて、前記顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得るステップを含み、
前記三次元融合特徴に基づいて、前記初期顔置換特徴を変換して、目標顔置換特徴を得るステップは、
前記顔画像処理モデルを利用して、前記三次元融合特徴に基づいて、前記初期顔置換特徴を変換して、目標顔置換特徴を得るステップを含む、
請求項1に記載の顔画像処理方法。
【請求項7】
前記目標顔置換特徴に基づいて、前記顔テンプレート画像内のテンプレート顔を前記ソース顔に置換して、置換された顔画像を得るステップは、
前記顔画像に対して特徴抽出を行い、顔画像の顔特徴を得るステップと、
前記目標顔置換特徴及び前記顔画像の顔特徴に基づいて、前記顔テンプレート画像内のテンプレート顔を前記ソース顔に置換して、置換された顔画像を得るステップと、を含む、
請求項1に記載の顔画像処理方法。
【請求項8】
コンピュータ機器が実行する、顔画像処理モデルの訓練方法であって、
訓練画像サンプルグループを取得するステップであって、前記訓練画像サンプルグループは、顔画像サンプル、顔テンプレート画像サンプル、及び顔参照画像サンプルを含む、ステップと、
顔画像処理モデルを利用して、前記顔テンプレート画像サンプル内のテンプレート顔を、前記顔画像サンプル内のソース顔に置換して、予測顔画像を得るステップと、
前記予測顔画像に対して三次元顔輪郭点検出を行い、前記予測顔画像の三次元顔輪郭点を得、前記顔参照画像サンプルに対して三次元顔輪郭点検出を行い、前記顔参照画像サンプルの三次元顔輪郭点を得るステップと、
前記予測顔画像の三次元顔輪郭点と前記顔参照画像サンプルの三次元顔輪郭点との差異を取得して、前記予測顔画像と前記顔参照画像サンプルとの間の顔輪郭損失を得るステップと、
前記顔輪郭損失に基づいて、前記顔画像処理モデルのモデルパラメータを更新するステップと、を含む、顔画像処理モデルの訓練方法。
【請求項9】
前記予測顔画像に対して三次元顔輪郭点検出を行い、前記予測顔画像の三次元顔輪郭点を得るステップは、
前記予測顔画像に対して三次元顔モデリングを行い、前記予測顔画像の三次元予測顔画像特徴を得るステップと、
前記三次元予測顔画像特徴に対して三次元キーポイント投影を行い、前記予測顔画像の三次元顔キーポイントを得るステップと、
前記三次元顔キーポイントから前記三次元顔輪郭点を選別するステップと、を含む、
請求項8に記載の顔画像処理モデルの訓練方法。
【請求項10】
前記三次元予測顔画像特徴に対して三次元キーポイント投影を行い、前記予測顔画像の三次元顔キーポイントを得るステップは、
前記三次元予測顔画像特徴から、前記予測顔画像の予測顔アイデンティティ特徴及び予測顔表情特徴を抽出するステップと、
所定の伝達パラメータを利用して、前記予測顔アイデンティティ特徴及び予測顔表情特徴に対して三次元キーポイント投影を行い、前記予測顔画像の三次元顔キーポイントを得るステップと、を含む、
請求項9に記載の顔画像処理モデルの訓練方法。
【請求項11】
前記予測顔画像の三次元顔輪郭点と前記顔参照画像サンプルの三次元顔輪郭点との差異を取得した後、前記顔画像処理モデルの訓練方法は、
前記顔参照画像サンプルと前記予測顔画像との間の三次元顔輪郭点以外の差異を取得して、前記顔参照画像サンプルと前記予測顔画像との間の第1損失を得るステップであって、前記第1損失は、顔輪郭損失以外の損失を含む、ステップと、
前記顔画像サンプルと前記予測顔画像との間の顔特徴損失を得るステップと、
前記第1損失と前記顔特徴損失を融合して、第2損失を得るステップと、を更に含む、
請求項8に記載の顔画像処理モデルの訓練方法。
【請求項12】
前記第1損失は、画素損失、特徴損失、及び判別損失を含み、
前記顔参照画像サンプルと前記予測顔画像との間の三次元顔輪郭点以外の差異を取得して、前記顔参照画像サンプルと前記予測顔画像との間の第1損失を得る前記ステップは、
前記顔参照画像サンプルと前記予測顔画像との間の画素差異を取得して、画素損失を得るステップと、
前記顔参照画像サンプルと前記予測顔画像との間の特徴差異を取得して、特徴損失を得るステップと、
前記顔参照画像サンプルと前記予測顔画像との間の判別差異を取得して、判別損失を得るステップと、を含む、
請求項11に記載の顔画像処理モデルの訓練方法。
【請求項13】
前記特徴損失は、三次元特徴損失及び二次元特徴損失を含み、
前記顔参照画像サンプルと前記予測顔画像との間の特徴差異を取得して、特徴損失を得るステップは、
前記顔参照画像サンプルと前記予測顔画像との間の二次元特徴差異を取得して、二次元特徴損失を得るステップと、
前記顔参照画像サンプルと前記予測顔画像との間の三次元特徴差異を取得して、三次元特徴損失を得るステップと、
前記二次元特徴損失と前記三次元特徴損失を融合して、前記特徴損失を得るステップと、を含む、
請求項12に記載の顔画像処理モデルの訓練方法。
【請求項14】
前記顔参照画像サンプルと前記予測顔画像との間の判別差異を取得して、判別損失を得るステップは、
前記顔参照画像サンプル及び前記予測顔画像に対してスケール変換をそれぞれ行い、スケール変換された顔参照画像サンプル及びスケール変換された予測顔画像を得るステップと、
前記スケール変換された顔参照画像サンプルを判別して、第1判別特徴を得、前記スケール変換された予測顔画像を判別して、第2判別特徴を得るステップと、
前記第1判別特徴及び前記第2判別特徴に基づいて、前記判別損失を決定するステップと、を含む、
請求項12に記載の顔画像処理モデルの訓練方法。
【請求項15】
前記顔輪郭損失に基づいて、前記顔画像処理モデルのモデルパラメータを更新するステップは、
前記顔画像処理モデルのモデルパラメータを取得するステップと、
前記顔輪郭損失と前記第2損失を融合して、第3損失を得るステップと、
前記第3損失を利用して、前記顔画像処理モデルのモデルパラメータを更新するステップと、を含む、
請求項11に記載の顔画像処理モデルの訓練方法。
【請求項16】
顔画像処理装置であって、
ソース顔の顔画像及びテンプレート顔の顔テンプレート画像を取得するように構成される第1取得ユニットと、
前記顔画像及び前記顔テンプレート画像に対して三次元顔モデリングを行い、前記顔画像の三次元顔画像特徴及び前記顔テンプレート画像の三次元顔テンプレート画像特徴を得るように構成される三次元顔モデリングユニットと、
前記三次元顔画像特徴と前記三次元顔テンプレート画像特徴を融合して、三次元融合特徴を得るように構成される融合ユニットと、
前記顔テンプレート画像に基づいて、前記顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得るように構成される特徴抽出ユニットと、
前記三次元融合特徴に基づいて、前記初期顔置換特徴に対して変換処理を行い、目標顔置換特徴を得るように構成される変換ユニットと、
前記目標顔置換特徴に基づいて、前記顔テンプレート画像内のテンプレート顔を前記ソース顔に置換して、置換された顔画像を得るように構成される第1置換ユニットと、を備える、顔画像処理装置。
【請求項17】
顔画像処理モデルの訓練装置であって、
訓練画像サンプルグループを取得するように構成される第2取得ユニットであって、前記訓練画像サンプルグループは、顔画像サンプル、顔テンプレート画像サンプル、及び顔参照画像サンプルを含む、第2取得ユニットと、
顔画像処理モデルを利用して、前記顔テンプレート画像サンプル内のテンプレート顔を、前記顔画像サンプル内のソース顔に置換して、予測顔画像を得るように構成される第1置換ユニットと、
前記予測顔画像に対して三次元顔輪郭点検出を行い、前記予測顔画像の三次元顔輪郭点を得、前記顔参照画像サンプルに対して三次元顔輪郭点検出を行い、前記顔参照画像サンプルの三次元顔輪郭点を得るように構成される三次元顔輪郭点検出ユニットと、
前記予測顔画像の三次元顔輪郭点と前記顔参照画像サンプルの三次元顔輪郭点との差異を取得して、前記予測顔画像と前記顔参照画像サンプルとの間の顔輪郭損失を得るように構成される計算ユニットと、
前記顔輪郭損失に基づいて、前記顔画像処理モデルのモデルパラメータを更新するように構成される調整ユニットと、を備える、顔画像処理モデルの訓練装置。
【請求項18】
プロセッサで実行可能な命令を記憶するメモリと、
前記メモリに記憶された実行可能な命令を実行するときに、請求項1ないし7のいずれか一項に記載の方法、又は請求項8ないし15のいずれか一項に記載の方法を実行するプロセッサと、を備える、コンピュータ機器。
【請求項19】
プロセッサによって実行されるときに、プロセッサに、請求項1ないし7のいずれか一項に記載の方法、又は請求項8ないし15のいずれか一項に記載の方法を実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願への相互参照)
本願は、2021年08月20日に中国特許局に提出された、出願番号が202110963370.5である中国特許出願の優先権を主張し、その内容の全てが引用により本願に組み込まれる。
【0002】
本願は、コンピュータ技術分野に関し、特に、顔画像処理方法、顔画像処理モデルの訓練方法、装置、機器、記憶媒体及びプログラム製品に関する。
【背景技術】
【0003】
技術の発展に伴い、映画の特殊効果やインターネットソーシャルなどのアプリケーションでは、顔画像における対象のスタイルを維持しながら、対象の顔を別の対象の顔に置き換える需要があり、このような需要に応えるために、顔画像を処理する必要がある。
【0004】
関連技術における顔画像処理方法は、顔のアイデンティティの維持のみを考慮しているため、顔画像処理の精度が低い。
【発明の概要】
【課題を解決するための手段】
【0005】
本願の実施例は、顔画像処理の精度を向上させる顔画像処理方法、顔画像処理モデルの訓練方法、装置、コンピュータ機器、コンピュータ可読記憶媒体及びコンピュータプログラム製品を提案する。
【0006】
本願の実施例は、顔画像処理方法を提供し、当該方法は、コンピュータ機器によって実行され、
ソース顔の顔画像及びテンプレート顔の顔テンプレート画像を取得するステップと、
前記顔画像及び前記顔テンプレート画像に対して三次元顔モデリングを行い、前記顔画像の三次元顔画像特徴及び前記顔テンプレート画像の三次元顔テンプレート画像特徴を得るステップと、
前記三次元顔画像特徴と前記三次元顔テンプレート画像特徴を融合して、三次元融合特徴を得るステップと、
前記顔テンプレート画像に基づいて、前記顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得るステップと、
前記三次元融合特徴に基づいて前記初期顔置換特徴を変換して、目標顔置換特徴を得るステップと、
前記目標顔置換特徴に基づいて、前記顔テンプレート画像内のテンプレート顔を前記ソース顔に置換して、置換された顔画像を得るステップと、を含む。
【0007】
本願の実施例は、顔画像処理装置を更に提供し、前記装置は、
ソース顔の顔画像及びテンプレート顔の顔テンプレート画像を取得するように構成される第1取得ユニットと、
前記顔画像及び前記顔テンプレート画像に対して三次元顔モデリングを行い、前記顔画像の三次元顔画像特徴及び前記顔テンプレート画像の三次元顔テンプレート画像特徴を得るように構成される三次元顔モデリングユニットと、
前記三次元顔画像特徴と前記三次元顔テンプレート画像特徴を融合して、三次元融合特徴を得るように構成される第1融合ユニットと、
前記顔テンプレート画像に基づいて、前記顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得るように構成される特徴抽出ユニットと、
前記三次元融合特徴に基づいて前記初期顔置換特徴を変換して、目標顔置換特徴を得るように構成される変換ユニットと、
前記目標顔置換特徴に基づいて、前記顔テンプレート画像内のテンプレート顔を前記ソース顔に置換して、置換された顔画像を得るように構成される第1置換ユニットと、を備える。
【0008】
本願の実施例は、顔画像処理モデルの訓練方法を更に提供し、前記方法は、
訓練画像サンプルグループを取得するステップであって、前記訓練画像サンプルグループは、顔画像サンプル、顔テンプレート画像サンプル、及び顔参照画像サンプルを含む、ステップと、
顔画像処理モデルを利用して、前記顔テンプレート画像サンプル内のテンプレート顔を、前記顔画像サンプル内のソース顔に置換して、予測顔画像を得るステップと、
前記予測顔画像に対して三次元顔輪郭点検出を行い、前記予測顔画像の三次元顔輪郭点を得、前記顔参照画像サンプルに対して三次元顔輪郭点検出を行い、前記顔参照画像サンプルの三次元顔輪郭点を得るステップと、
前記予測顔画像の三次元顔輪郭点と前記顔参照画像サンプルの三次元顔輪郭点との差異を取得して、前記予測顔画像と前記顔参照画像サンプルとの間の顔輪郭損失を得るステップと、
前記顔輪郭損失に基づいて、前記顔画像処理モデルのモデルパラメータを更新するステップと、を含む。
【0009】
本願の実施例は、顔画像処理モデルの訓練装置を更に提供し、前記装置は、
訓練画像サンプルグループを取得するように構成される第2取得ユニットであって、前記訓練画像サンプルグループは、顔画像サンプル、顔テンプレート画像サンプル、及び顔参照画像サンプルを含む、第2取得ユニットと、
顔画像処理モデルを利用して、前記顔テンプレート画像サンプル内のテンプレート顔を、前記顔画像サンプル内のソース顔に置換して、予測顔画像を得るように構成される第2置換ユニットと、
前記予測顔画像に対して三次元顔輪郭点検出を行い、前記予測顔画像の三次元顔輪郭点を得、前記顔参照画像サンプルに対して三次元顔輪郭点検出を行い、前記顔参照画像サンプルの三次元顔輪郭点を得るように構成される三次元顔輪郭点検出ユニットと、
前記予測顔画像の三次元顔輪郭点と前記顔参照画像サンプルの三次元顔輪郭点との差異を取得して、前記予測顔画像と前記顔参照画像サンプルとの間の顔輪郭損失を得るように構成される計算ユニットと、
前記顔輪郭損失に基づいて、前記顔画像処理モデルのモデルパラメータを更新するように構成される調整ユニットと、を備える。
【0010】
本願の実施例は、コンピュータプログラム製品又はコンピュータプログラムを提供し、当該コンピュータプログラム製品又はコンピュータプログラムは、コンピュータ命令を含み、当該コンピュータ命令は、コンピュータ可読記憶媒体に記憶され、コンピュータ機器のプロセッサは、コンピュータ可読記憶媒体から当該コンピュータ命令を読み取り、プロセッサは、当該コンピュータ命令を実行して、本願の実施例によって提供される上記方法を実施する。
【0011】
本願の実施例は、コンピュータ実行可能な命令が記憶されたコンピュータ可読記憶媒体を更に提供し、前記コンピュータ実行可能な命令がプロセッサによって実行されるときに、プロセッサに本願の実施例によって提供される上記方法を実行させる。
【0012】
本願の実施例は、コンピュータ機器を更に提供し、前記コンピュータ機器は、
プロセッサで実行可能な命令を記憶するメモリと、
前記メモリに記憶された実行可能な命令が実行されるときに、本願の実施例によって提供される上記方法を実行するプロセッサと、を備える。
【0013】
本願の実施例は、以下の有益な効果を有する。
【0014】
三次元顔モデリングにより、顔画像の三次元顔画像特徴及び顔テンプレート画像の三次元顔テンプレート画像特徴を得、抽出して得られた画像は三次元特徴であるため、顔画像における顔輪郭、即ち、顔の形状特徴を保持することができ、更に、顔の置換前後の顔輪郭が一致することを保証することができ、三次元顔画像特徴と三次元顔テンプレート画像特徴を融合して、三次元融合特徴を得、このように、顔置換後に得られた顔画像は、顔画像の特徴だけでなく、顔テンプレート画像の特徴も有し、顔テンプレート画像に基づいて、顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得、三次元融合特徴に基づいて初期顔置換特徴を変換して、目標顔置換特徴を得、三次元顔画像特徴と三次元顔テンプレート画像特徴を融合して得られた三次元融合特徴に基づいて初期顔置換特徴を変換しているため、変換して得られた目標顔置換特徴は、顔輪郭特徴だけでなく、顔のアイデンティティ特徴も有することができ、それによって、目標顔置換特徴に基づいて、顔テンプレート画像内のテンプレート顔を、ソース顔に置換して得られた顔画像に置換し、表示効果がより自然でリアルになり、それによって顔画像処理の精度を向上させることができる。
【図面の簡単な説明】
【0015】
【
図1】本願の実施例による方法のシーンの概略図である。
【
図2】本願の実施例による顔画像処理方法のフローチャートである。
【
図3】本願の実施例による顔画像処理方法のシーンの概略図である。
【
図4】本願の実施例による顔画像処理方法の別のシーンの概略図である。
【
図5】本願の実施例による顔画像処理モデルの訓練方法のフローチャートである。
【
図6】本願の実施例による顔画像処理モデルの訓練方法のシーンの概略図である。
【
図7】本願の実施例による顔画像処理方法の別のフローチャートである。
【
図8】本願の実施例による顔画像処理モデルの訓練方法の別のフローチャートである。
【
図9】本願の実施例による顔画像処理装置の概略構造図である。
【
図10】本願の実施例による顔画像処理モデルの訓練装置の概略構造図である。
【
図11】本願の実施例による端末の概略構造図である。
【発明を実施するための形態】
【0016】
以下では、本願の実施例における図面を参照して、本願の実施例の技術案を明確且つ完全に説明するが、記載される実施例は、本願の実施例の一部のみであり、全部の実施例ではない。本願の実施例に基づいて、当業者が創造的な労力を払わずに得られる他のすべての実施例は、本願の保護範囲に含まれる。
【0017】
下記において、「いくつかの実施例」という記載は、全ての可能な実施例のサブセットを記載しているが、理解可能なこととして、「いくつかの実施例」というのは、すべての可能な実施例と同じサブセット又は異なるサブセットであり得、矛盾しなければ互いに組み合わせられることができる。
【0018】
本願の実施例は、顔画像処理方法を提案し、当該顔画像処理方法は、顔画像処理装置によって実行され得、当該顔画像処理装置は、コンピュータ機器に集積され得る。ここで、当該コンピュータ機器は、端末、サーバなどのうちの少なくとも1つを含み得る。
【0019】
いくつかの実施例では、本願の実施例によって提案された顔画像処理方法をよりよく実施するために、対応して、本願の実施例で、顔画像処理モデルの訓練方法を更に提案し、それにより、顔画像処理モデルを利用して、本願の実施例によって提案された顔画像処理方法を実行することができる。本願の実施例によって提供される顔画像処理モデルの訓練方法は、顔画像処理モデルの訓練装置によって実行され得、当該顔画像処理モデルの訓練装置は、コンピュータ機器に集積され得る。ここで、当該コンピュータ機器は、端末、サーバなどのうちの少なくとも1つを含み得る。
【0020】
ここで、端末は、スマートフォン、タブレットコンピュータ、ノートブックコンピュータ、パーソナルコンピューター(PC:Personal Computer)、スマートホーム、ウェアラブル電子機器、仮想現実(VR:Virtual Reality)/拡張現実(AR:Augmented Reality)機器、車載用コンピュータなどであり得る。サーバは、複数の異種システム間の相互通信サーバ又はバックグラウンドサーバであり得、又は独立した物理サーバでもでもあり得、又は複数の物理サーバで構成されるサーバクラスタ又は分散システムでもあり得、また、クラウドサービス、クラウドデータベース、クラウドコンピューティング、クラウド関数、クラウドストレージ、ネットワークサービス、クラウド通信、ミドルウェアサービス、ドメインネームサービス、セキュリティサービス、ビッグデータ及び人工知能プラットフォームなどの基本的なクラウドコンピューティングサービスを提供するクラウドサーバでもあり得る。
【0021】
いくつかの実施例では、
図1に示すように、顔画像処理装置は、本願の実施例によって提案される顔画像処理方法を実施するために、端末又はサーバなどのコンピュータ機器に集積され得る。例えば、コンピュータ機器は、ソース顔の顔画像及びテンプレート顔の顔テンプレート画像を取得し、顔画像及び顔テンプレート画像に対して三次元顔モデリングを行い、顔画像の三次元顔画像特徴及び顔テンプレート画像の三次元顔テンプレート画像特徴を得、三次元顔画像特徴と三次元顔テンプレート画像特徴を融合して、三次元融合特徴を得、顔テンプレート画像に基づいて、顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得、三次元融合特徴に基づいて初期顔置換特徴を変換して、目標顔置換特徴を得、目標顔置換特徴に基づいて、顔テンプレート画像内のテンプレート顔をソース顔に置換して、置換された顔画像を得ることができる。
【0022】
顔画像処理モデルの訓練装置は、本願の実施例によって提案される顔画像処理モデルの訓練方法を実施するために、端末又はサーバなどのコンピュータ機器に集積され得る。例えば、コンピュータ機器は、訓練画像サンプルグループを取得し、訓練画像サンプルグループは、顔画像サンプル、顔テンプレート画像サンプル、及び顔参照画像サンプルを含み、顔画像処理モデルを利用して顔テンプレート画像サンプル内のテンプレート顔を、顔画像サンプル内のソース顔に置換して、予測顔画像を得、予測顔画像に対して三次元顔輪郭点検出を行い、予測顔画像の三次元顔輪郭点を得、顔参照画像サンプルに対して三次元顔輪郭点検出を行い、顔参照画像サンプルの三次元顔輪郭点を得、予測顔画像の三次元顔輪郭点と顔参照画像サンプルの三次元顔輪郭点との差異を取得して、予測顔画像と顔参照画像サンプルとの間の顔輪郭損失を得、顔輪郭損失に基づいて、顔画像処理モデルのモデルパラメータを更新し、即ち、顔画像処理モデルを調整して、訓練された顔画像処理モデルを得る。
【0023】
ここで、顔画像処理の過程は、顔テンプレート画像における対象の顔をソース画像における対象の顔に置換することとして見なすことができ、顔テンプレート画像における顔対象の顔交換と理解することができ、顔が人の顔であることを例とすると、いわゆる顔交換とは、顔テンプレート画像における顔の姿勢、表情、化粧、背景などの要素の少なくとも1つが変更されずに、顔テンプレート画像の顔のアイデンティティをソース画像における人物に換えることを指す。本願の実施例によって提案される顔画像処理方法は、通常、証明写真の制作、映画やテレビのポートレート制作、ゲームキャラクターのデザイン、アバター、プライバシー保護などのシーンに適用されることが可能である。
【0024】
ここで、顔画像処理モデルの訓練過程は、複数の訓練画像サンプルグループを顔画像処理モデルに入力することとして見なすことができ、それにより、顔画像処理モデルは、複数の訓練画像サンプルグループから継続的に学習し、継続的にパターンを纏めることができ、最終的に、顔テンプレート画像内のテンプレート顔を顔画像のソース顔に正確に置換することができる。
【0025】
ここで、説明すべきこととして、本願の実施例によって提供される画像処理方法及び顔画像処理モデルの訓練方法は、人工知能の分野におけるコンピュータビジョン技術に関し、即ち、本願の実施例において、人工知能のコンピュータビジョン技術を利用して、顔テンプレート画像内の対象を顔画像のソース対象に置換して、置換された顔画像を得ることができる。
【0026】
本願の実施例は、顔画像処理装置の観点から説明され、当該顔画像処理装置は、コンピュータ機器に集積され得、当該コンピュータ機器は、サーバ又は端末などの機器であり得る。
【0027】
いくつかの実施例では、本願の実施例によって提供される顔画像処理方法は、端末又はサーバによって単独で実現し、又は端末とサーバが協働して実現することができ、サーバで単独で実現することを例とすると、
図2に示すように、顔画像処理方法を提供し、当該方法は、以下のステップを含む。
【0028】
ステップ101において、サーバは、ソース顔の顔画像及びテンプレート顔の顔テンプレート画像を取得する。
【0029】
ここで、顔画像は、ソース対象を含み、いわゆるソース対象は、顔画像に含まれる対象であり得、顔画像として顔画像を例とすると、ソース対象は、当該顔画像に対応する人物であり得る。ソース顔は、顔対象の置換のための顔対象ソースであり、それに対応しているのはテンプレート顔であり、当該テンプレート顔に、置換する必要のある顔対象及び維持する必要のある顔背景など、他の要素が含まれる。
【0030】
例えば、
図3に示すように、
図3の001は、顔画像であり得、
図3の002は、顔テンプレート画像であり得、図中の003は、置換された顔画像であり得る。
図3から分かるように、置換された顔画像003では顔画像001の顔の特徴が維持され、同時に、顔テンプレート画像002の姿勢、表情、化粧、背景などの要素が維持される。
【0031】
ここで、顔画像及び顔テンプレート画像の方式は、例えば、顔画像及び顔テンプレート画像を直接取得すること、又は、顔画像及び顔テンプレート画像の数が多い場合やメモリが大きい場合に、顔画像及び顔テンプレート画像を間接的に取得することなど、様々な方式があり得、具体的に、次の通りであり得る。
【0032】
(1)顔画像及び顔テンプレート画像を直接取得する
【0033】
例えば、ユーザによってアップロードされたオリジナル顔画像及びオリジナル顔画像に対応する画像処理情報を直接受信することができ、画像処理情報に基づいて、オリジナル顔画像から、ソース顔の顔画像及びテンプレート顔の顔テンプレート画像を選別するか、又は、画像データベース又はネットワークから顔画像ペアを取得し、顔画像ペアから任意の1つの顔画像をソース顔の顔画像とし、顔画像ペアの他方の顔画像を顔テンプレート画像とする。
【0034】
(2)顔画像及び顔テンプレート画像を間接的に取得する
【0035】
例えば、端末によって送信された画像処理要求を受信することができ、当該画像処理要求に、オリジナル顔画像の格納アドレス及び画像処理情報が含まれ、格納アドレスに基づいて、メモリ、キャッシュ、又は第3者データベースからオリジナル顔画像を取得し、画像処理情報に基づいて、オリジナル顔画像から、ソース顔の顔画像及びテンプレート顔の顔テンプレート画像を選別する。
【0036】
いくつかの実施例では、オリジナル顔画像の取得に成功した後、提示情報を端末に送信して、オリジナル顔画像の取得に成功したことを端末に提示することもできる。
【0037】
いくつかの実施例では、オリジナル顔画像の取得に成功した後、オリジナル顔画像に対して前処理を行い、それにより、顔画像及び顔テンプレート画像を得ることもでき、前処理の方式は、例えば、オリジナル顔画像のサイズを所定のサイズに調整すること、又は、顔キーポイントキーポイントのマッピングで、オリジナル顔画像の顔対象を同様な位置に合わせることなど、様々な方式があり得る。
【0038】
ステップ102において、顔画像及び顔テンプレート画像に対して三次元顔モデリングを行い、顔画像の三次元顔画像特徴及び顔テンプレート画像の三次元顔テンプレート画像特徴を得る。
【0039】
ここで、三次元顔画像特徴は、三次元空間における顔画像特徴を示すための情報を含み得る。例えば、三次元顔画像特徴によって、顔画像におけるソース顔の五官の特徴、顔輪郭、テクスチャ、角度、照明などの情報を示すことができる。
【0040】
ここで、三次元顔テンプレート画像特徴は、三次元空間における顔テンプレート画像の特徴を示す特徴を含み得る。例えば、三次元顔テンプレート画像特徴は、顔テンプレート画像におけるテンプレート顔の表情特徴、テクスチャ特徴、角度特徴、及び照明特徴のうちの少なくとも1つを含み得る。
【0041】
いくつかの実施例では、三次元顔画像特徴は、複数の(即ち、少なくとも2つ)特徴を含み得、これらの特徴は、共同で三次元顔画像特徴を構成する。例えば、三次元顔画像特徴は、ソース顔アイデンティティ特徴、顔の輪郭特徴、ソース顔表情特徴、ソース顔テクスチャ特徴、ソース顔角度特徴、及びソース顔照明特徴などを含み得る。
【0042】
ここで、ソース顔アイデンティティ特徴は、三次元顔画像におけるソース顔アイデンティティを示すことができる特徴を含む。例えば、アイデンティティ特徴により、顔画像のソース顔と他の顔画像のソース顔を区別することができ、即ち、顔画像に目標対象の顔が含まれる場合、当該アイデンティティ特徴は、当該目標対象を識別することができ、アイデンティティ特徴により、顔画像のソース顔が誰であるかを知ることができる。
【0043】
ここで、ソース顔表情特徴は、顔画像におけるソース顔の表情を示すことができる特徴を含み、ソース顔テクスチャ特徴は、顔画像のテクスチャを示すことができる特徴を含み、ソース顔角度特徴は、顔画像におけるソース顔の角度を示すことができる特徴を含み、即ち、当該ソース顔の角度特徴は、顔画像におけるソース顔の向きを示すことができ、例えば、角度特徴により、ソース顔が左に向いているか又は右に向いているか、又は正面に向いているかを知ることができ、ソース顔照明特徴は、顔画像の明暗の度合いを示すことができる特徴を含む。
【0044】
いくつかの実施例では、三次元顔テンプレート画像特徴も、複数の特徴を含み得、これらの特徴は、共同で三次元顔テンプレート画像特徴を構成する。例えば、三次元顔テンプレート画像特徴も、テンプレート顔アイデンティティ特徴、テンプレート顔表情特徴、テンプレート顔テクスチャ特徴、テンプレート顔角度特徴、及びテンプレート顔照明特徴などを含み得る。
【0045】
いくつかの実施例では、三次元顔テンプレート画像特徴がテンプレート顔アイデンティティ特徴、テンプレート顔表情特徴、テンプレート顔テクスチャ特徴、テンプレート顔角度特徴、及びテンプレート顔照明特徴を含む場合、顔テンプレート画像内のテンプレート顔を顔画像のソース顔に置換するとき、テンプレート顔の表情、テクスチャ、角度、及び照明などの情報を保持したままで、テンプレート顔のアイデンティティをソース顔のアイデンティティに置換することができる。例えば、
図3に示すように、顔画像001内の人物が張三であり、顔テンプレート画像002内の人物が李四であると仮定すると、顔の置換は、李四を張三に置換するだけであるが、顔テンプレート画像002における李四の表情、テクスチャ、角度、及び照明などの情報は保持されたままである。
【0046】
いくつかの実施例では、三次元顔画像特徴及び三次元顔テンプレート画像特徴は、様々な表現形態を有し得る。例えば、三次元顔画像特徴及び三次元顔テンプレート画像特徴は、ベクトルであり得る。別の例では、三次元顔画像特徴及び三次元顔テンプレート画像特徴は、行列などであり得る。
【0047】
いくつかの実施例では、様々な方式を採用して、顔画像及び顔テンプレート画像に対して三次元顔モデリングを行い、顔画像の三次元顔画像特徴及び顔テンプレート画像の三次元顔テンプレート画像特徴を得ることができる。
【0048】
例えば、三次元顔モデリングモデルを利用して、顔画像及び顔テンプレート画像に対して三次元顔モデリングを実行し、それにより、顔画像の三次元顔画像特徴及び顔テンプレート画像の三次元顔テンプレート画像特徴を得ることができる。
【0049】
ここで、三次元顔モデリングモデルは、画像に対して三次元モデリングを行い、そこから画像の三次元特徴を取得することができる。
【0050】
例えば、三次元顔モデリングモデルは、畳み込みニューラルネットワーク(CNN:Convolutional Neural Networks)、深層残差ネットワーク(ResNet:Deep resアイデンティティual network)、三次元顔再構築モデル(3DMM)などのうちの少なくとも1つを含み得る。
【0051】
別の例では、三次元顔再構築モデルを採用して、顔画像及び顔テンプレート画像に対してそれぞれ回帰を行い、それにより、ソース顔及びテンプレート顔に対して顔モデリングを行い、三次元顔再構築モデルから顔画像の複数のソース顔特徴及びテンプレート顔画像の複数のテンプレート顔特徴を取得することができる。次に、複数のソース顔特徴を融合し、それにより、三次元顔画像特徴を得、及び複数のテンプレート顔特徴を融合し、それにより、三次元顔テンプレート画像特徴を得ることができる。
【0052】
ステップ103において、三次元顔画像特徴と三次元顔テンプレート画像特徴を融合して、三次元融合特徴を得る。
【0053】
実際の適用では、三次元顔画像特徴と三次元顔テンプレート画像特徴に対して融合処理を行い、三次元融合特徴を得ることにより、置換された顔画像は、顔画像の特徴だけではなく、顔テンプレート画像の特徴も有する。
【0054】
いくつかの実施例では、顔テンプレート画像内のテンプレート顔を顔画像のソース顔に置換するとき、テンプレート顔の表情、テクスチャ、角度、及び照明などの情報を保持したままで、テンプレート顔のアイデンティティをソース顔のアイデンティティに置換するために、以下の方式を採用して、ソース顔アイデンティティ特徴とテンプレート顔画像特徴を融合して、三次元融合特徴を得ることができ、具体的に、
三次元顔画像特徴から、顔画像のソース顔アイデンティティ特徴を抽出するステップと、
三次元顔テンプレート画像特徴から、顔テンプレート画像のテンプレート顔画像特徴を抽出するステップと、
ソース顔アイデンティティ特徴とテンプレート顔画像特徴を融合して、三次元融合特徴を得るステップと、を含む。
【0055】
ここで、ソース顔アイデンティティ特徴は、三次元顔画像におけるソース顔アイデンティティを表すことができる特徴を含み、テンプレート顔画像特徴は、テンプレート顔表情特徴、テンプレート顔テクスチャ特徴、テンプレート顔角度特徴、及びテンプレート顔照明特徴を含み得る。
【0056】
いくつかの実施例では、様々な方式を利用して、ソース顔アイデンティティ特徴とテンプレート顔画像特徴を融合して、三次元融合特徴を得ることができる。
【0057】
例えば、ソース顔アイデンティティ特徴とテンプレート顔画像特徴を結合することができ、別の例では、ソース顔アイデンティティ特徴とテンプレート顔画像特徴を加算することができ、別の例では、ソース顔アイデンティティ特徴とテンプレート顔画像特徴を加重加算することができるなどである。
【0058】
いくつかの実施例では、ソース顔アイデンティティ特徴とテンプレート顔画像特徴を加算し、それにより、三次元融合特徴を得ることができる。
【0059】
例えば、ソース顔アイデンティティ特徴、テンプレート顔表情特徴、テンプレート顔テクスチャ特徴、テンプレート顔角度特徴、及びテンプレート顔照明特徴を加算し、それにより、三次元融合特徴を得ることができる。ここで、加算過程は下記式で示すことができる。
【0060】
【0061】
ここで、記号
【数2】
は、ソース顔アイデンティティ特徴を表し、記号
【数3】
は、テンプレート顔表情特徴を表し、記号
【数4】
は、テンプレート顔テクスチャ特徴を表し、記号
【数5】
は、テンプレート顔角度特徴を表し、記号
【数6】
は、テンプレート顔照明特徴を表すことができる。
【0062】
ステップ104において、顔テンプレート画像に基づいて、顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得る。
【0063】
いくつかの実施例では、顔画像及び顔テンプレート画像に対して三次元顔モデリングを行うことは、三次元空間の観点から顔画像及び顔テンプレート画像を処理することを意味する。顔テンプレート画像に基づいて、顔画像に対して顔置換特徴抽出処理を行うことは、二次元空間の観点から顔テンプレート画像及び顔画像を処理することを意味する。
【0064】
二次元空間及び三次元空間それぞれの観点から、顔画像及び顔テンプレート画像のより多くの特徴を取得することができ、それにより、顔置換処理を行うときに、より多くの情報を基にしているため、顔画像処理方法の精度を向上させることができる。
【0065】
ここで、初期顔置換特徴は、顔画像と顔テンプレート画像との間のマッピング関係を形成する特徴を含み得る。
【0066】
いくつかの実施例では、様々な方式を利用して、顔テンプレート画像に基づいて、顔画像に対して顔置換特徴抽出処理を行い、初期顔置換特徴を得ることができる。
【0067】
例えば、畳み込みニューラルネットワーク(CNN:Convolutional Neural Networks)、敵対的生成ネットワーク(GAN:Generative Adversarial Networks)などの機械学習ネットワークを利用して、顔テンプレート画像に基づいて、顔画像に対して顔置換特徴抽出処理を行い、初期顔置換特徴を得ることができる。
【0068】
深層学習の方法として、GANは、通常のニューラルネットワークと異なり、GANは、2つの主なネットワークで構成され、1つは生成器又は生成ネットワーク(Generator Network)と呼ばれ、もう1つは、判別器又は判別ネットワーク(Discriminator Network)と呼ばれる。GANは、生成器と判別器が互いに敵対し、互いに競うことを趣旨としている。
【0069】
ここで、生成器は、ニューラルネットワークであり得、その役割は、コンテンツを生成することである。例えば、生成器は、1つの画像、1セグメントのテキスト、1セグメントのビデオなどを生成することができる。
【0070】
ここで、判別器も、ニューラルネットワークであり得、その役割は、判別器に入力されるコンテンツを判別することである。例えば、写真を例とすると、判別器は、判別器に入力される写真が、生成器によって生成された写真であるか、実際の写真であるかを判断することを目標としている。
【0071】
ここで、生成器は、デコーダとエンコーダを含み得る。エンコーダの役割は、実データの圧縮であり、高次元データを低次元データに圧縮する。デコーダの役割は、圧縮されたデータを元のデータに復元することである。
【0072】
別の例では、複数の畳み込みニューラルネットワークによって構成された機械学習ネットワークを利用して、顔テンプレート画像に基づいて、顔画像に対して顔置換特徴抽出処理を行い、初期顔置換特徴を得ることができる。
【0073】
例えば、顔画像及び顔置換画像を、複数の畳み込みニューラルネットワークによって構成される機械学習ネットワークに入力し、次に、当該機械学習ネットワークは、顔画像及び顔置換画像の解像度を継続的に低下させ、隠れ空間で両者を初期顔置換特徴に符号化することができる。
【0074】
ここで、隠れ空間は、機械学習ネットワーク構造によって形成される空間を含む。例えば、当該機械学習ネットワークは、入力層、出力層、及び入力層と出力層との間のいくつかの畳み込み層を含み、これらのいくつかの畳み込み層は、隠れ空間を構成することができる。
【0075】
いくつかの実施例では、顔テンプレート画像に基づいて、以下の方式を採用して、顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得ることができ、具体的に、
顔テンプレート画像を符号化して、顔テンプレート画像の第1符号化特徴を得るステップと、
顔画像を符号化して、顔画像の第2符号化特徴を得るステップと、
第2符号化特徴に基づいて、第1符号化特徴を調整して、初期顔置換特徴を得るステップと、を含む。
【0076】
ステップ105において、三次元融合特徴に基づいて初期顔置換特徴を変換して、目標顔置換特徴を得る。
【0077】
いくつかの実施例では、三次元融合特徴は、三次元空間における顔画像と顔テンプレート画像との関係を示すことができ、初期顔置換特徴は、二次元空間における顔画像と顔テンプレート画像との関係を示すことができる。顔置換の精度を向上させるために、三次元融合特徴に基づいて、初期顔置換特徴を変換して、目標顔置換特徴を得ることができ、例えば、三次元融合特徴及び初期顔置換特徴を同じ空間にマッピングして、目標顔置換特徴を得ることができる。
【0078】
いくつかの実施例では、三次元融合特徴に基づいて、様々な方式を使用して、初期顔置換特徴を変換して、目標顔置換特徴を得ることができる。
【0079】
例示的に、三次元融合特徴に基づいて、ノルムの方式を利用して、初期顔置換特徴を変換して、目標顔置換特徴を得ることができる。例えば、三次元融合特徴に基づいて、L1ノルム又はL2ノルムなどの方式を利用して、初期顔置換特徴を変換して、目標顔置換特徴を得ることができる。
【0080】
いくつかの実施例では、前記三次元融合特徴に基づいて、また、以下の方式で前記初期顔置換特徴を変換して、目標顔置換特徴を得ることができ、具体的に、
三次元融合特徴に対して第1論理演算を行い、演算された三次元顔画像特徴を得、及び初期顔置換特徴に対して第2論理演算を行い、演算された顔置換特徴を得るステップと、
初期顔置換特徴及び演算された顔置換特徴に対して、第3論理演算を行い、演算された顔置換特徴を得るステップと、
演算された顔置換特徴及び演算された三次元顔画像特徴に対して第4論理演算を行い、目標顔置換特徴を得るステップと、を含む。
【0081】
ここで、第1論理演算及び第2論理演算は、データの平均値を求めること、データの分散を求めること、データの標準偏差を求めること、又はデータの共分散を求めることなどを含み得る。
【0082】
ここで、第3論理演算及び第4論理演算は、加算、減算、乗算、除算などを利用してデータを処理する方式を含み得る。例えば、第3論理演算及び第4論理演算は、データの除算を含み得、別の例では、第3論理演算及び第4論理演算は、データの減算を含み得る。
【0083】
いくつかの実施例では、三次元融合特徴に基づいて、適応型インスタンス正則化(AdaIN:Adaptive Instance NormaLization)を利用して、初期顔置換特徴を変換して、目標顔置換特徴を得ることもできる。
【0084】
ここで、AdaINは、三次元融合特徴の平均値と分散を、初期顔置換特徴の平均値と分散に合わせる方法であり、それにより、画像の特徴変換を実現することができる。例えば、AdaINは、三次元融合特徴の平均値と分散を、初期顔置換特徴の平均値と分散に合わせて、それにより、特徴の置換を実現することができる。
【0085】
ここで、三次元融合特徴に基づいて、AdaINを利用して、初期顔置換特徴に対して変換処理を行い、次のように目標顔置換特徴を得ることができる。
【0086】
【0087】
ここで、xは、初期顔置換特徴を表し、yは、三次元融合特徴を表すことができる。σ()とμ()は、平均値と標準偏差をそれぞれ表すことができる。AdaIN(x,y)は、目標顔置換特徴を表すことができる。
【0088】
いくつかの実施例では、AdaINに基づいて、三次元融合特徴に対して論理演算(加算、減算、乗算、除算など)を行い、演算された三次元顔画像特徴を得、及び初期顔置換特徴に対して論理演算を行い、演算された顔置換特徴を得ることができる。例えば、AdaINに基づいて三次元融合特徴の平均値と標準偏差を求め、及び初期顔置換特徴の平均値と標準偏差を求めることができる。
【0089】
ここで、三次元融合特徴は、少なくとも2つのサブ三次元融合特徴(例えば、サブ三次元融合特徴は、三次元顔アイデンティティ特徴、三次元顔表情特徴、三次元顔テクスチャ特徴、三次元顔角度特徴、及び顔照明特徴であり得る)を含み、各前記サブ三次元融合特徴は、1つの特徴次元に対応し、これに対応して、以下の方式で、三次元融合特徴に対して第1論理演算を行い、演算された三次元顔画像特徴を得ることができ、具体的に、少なくとも2つのサブ三次元融合特徴の標準偏差を決定し、当該標準偏差を演算された三次元顔画像特徴とする。
【0090】
次に、AdaINに基づいて、初期顔置換特徴及び演算された顔置換特徴に対して論理演算処理を行い、演算された顔置換特徴を得ることができる。例えば、初期顔置換特徴と初期顔置換特徴の標準偏差を減算してから除算を行い、それにより、演算された顔置換特徴を得ることができる。
【0091】
次に、AdaINに基づいて、演算された顔置換特徴と統計された三次元顔画像特徴に対して論理演算処理を行い、目標顔置換特徴を得ることができる。例えば、演算された顔置換特徴と統計された三次元顔画像特徴の平均値を乗算してから加算を行い、それにより、目標顔置換特徴を得ることができる。
【0092】
ステップ106において、目標顔置換特徴に基づいて、顔テンプレート画像内のテンプレート顔をソース顔に置換して、置換された顔画像を得る。
【0093】
いくつかの実施例では、置換された顔画像内の顔とソース顔の類似度を向上させ、それにより、顔画像処理方法の精度を向上させるために、顔画像に対して特徴抽出を行い、顔画像の顔特徴を得、次に、目標顔置換特徴及び顔画像の顔特徴に基づいて、顔テンプレート画像内のテンプレート顔をソース顔に置換して、置換された顔画像を得る。
【0094】
ここで、顔画像に対して特徴抽出を行うことは、いくつかの数値で顔情報を表すことを含み得、これらのデータは、顔画像の顔特徴を指す。
【0095】
いくつかの実施例では、本願の実施例における顔特徴は、ソース顔の幾何学的特徴、又はソース顔の表現特徴であり得、ここで、幾何学的特徴は、目、鼻、及び口などの顔特徴との間の距離、面積、角度などの幾何学的特徴であり得、ソース顔の表現特徴は、顔画像のグレースケール情報を利用して、いくつかのアルゴリズムによって抽出されたグローバル又はローカル特徴である。
【0096】
いくつかの実施例では、様々な方式を使用して、顔画像に対して特徴抽出を行い、顔画像の顔特徴を得る。
【0097】
例えば、顔特徴がソース顔の幾何学的特徴である場合、顔画像に対して点の位置生成を行い、顔画像における顔部位特徴点の位置情報を得、次に、顔部位特徴点の位置情報の間の空間差異をそれぞれ計算し、当該空間差異を顔特徴とすることができる。
【0098】
別の例では、顔特徴がソース顔の表現特徴である場合、畳み込みカーネルを利用して、顔画像に対して畳み込み抽出を行い、顔画像の畳み込み結果を得、次に、顔画像の畳み込み結果に対して回帰処理を行い、顔特徴を得ることができる。
【0099】
別の例では、顔特徴を抽出することができる機械学習ネットワークを利用して、顔画像に対して特徴抽出を行うこともできる。例えば、CNN、ディープニューラルネットワーク(DNN:Deep NeuraL Networks)などを利用して、顔画像に対して特徴抽出を行い、顔画像の顔特徴を得ることができる。
【0100】
いくつかの実施例では、訓練して得られた顔画像処理モデルを利用して、目標顔置換特徴及び顔画像の顔特徴に基づいて、顔テンプレート画像内のテンプレート顔をソース顔に置換して、置換された顔画像を得ることができる。例えば、GANを利用して、目標顔置換特徴及び顔画像の顔特徴に基づいて、顔テンプレート画像内のテンプレート顔をソース顔に置換して、置換された顔画像を得ることができる。
【0101】
いくつかの実施例では、訓練して取得された画像処理モデルのモデル構造は、三次元顔モデリングネットワーク、顔特徴抽出ネットワーク、及び敵対的生成ネットワークを含み得る。ここで、敵対的生成ネットワークは、生成器及び判別器を含み得る。ここで、生成器は、エンコーダ及びデコーダを含み得る。
【0102】
ここで、三次元顔モデリングネットワークは、ResNetネットワークであり得、三次元顔モデリングネットワークは、顔画像及び顔テンプレート画像に対して三次元顔モデリングを行い、顔画像の三次元顔画像特徴及び顔テンプレート画像の三次元顔テンプレート画像特徴を得るように構成され得る。また、三次元顔モデリングネットワークはさらに、三次元顔画像特徴と三次元顔テンプレート画像特徴を融合して、三次元融合特徴を得るように構成され得る。
【0103】
ここで、顔特徴抽出ネットワークは、CNNネットワークであり得、顔特徴抽出ネットワークは、顔画像に対して特徴抽出を行い、顔特徴を得るように構成され得る。
【0104】
ここで、エンコーダは、顔テンプレート画像に基づいて、顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得ることができる。
【0105】
ここで、デコーダは、目標顔置換特徴及び顔画像の顔特徴に基づいて、顔テンプレート画像内のテンプレート顔をソース顔に置換して、置換された顔画像を得ることができる。例えば、デコーダを利用して、目標顔置換特徴及び顔画像の顔特徴を復号化して、復号化された顔置換特徴及び復号化された顔特徴を得ることができる。次に、復号化された顔置換特徴と復号化された顔特徴を融合して、融合された顔特徴を得る。次に、融合された顔特徴を所定の確率分布空間にマッピングして、融合された顔特徴の確率分布を得ることができる。そして、融合された顔特徴の確率分布に基づいて、置換された顔画像を生成する。
【0106】
ここで、所定の確率分布空間は、デコーダ内の1つの数学的空間である。当該所定の確率分布空間は、顔画像処理モデルを訓練する過程で形成される空間であり、特徴に基づいて、訓練目的に合致するコンテンツを生成することができる。
【0107】
本願の実施例では、三次元顔輪郭点を利用して、顔画像処理モデルを訓練し、それにより、訓練された顔画像処理モデルによって取得された置換された顔画像は、顔画像におけるソース顔の顔輪郭を維持し、それにより、顔画像処理の効果がよりリアルになり、顔画像処理の精度を向上させることができる。
【0108】
例えば、
図4に示すように、
図4の011は、顔画像であり得、
図4の012は、顔テンプレート画像であり得、
図4の013は、関連技術を利用して取得された置換された顔画像であり得、
図4の014は、訓練された顔画像処理モデルを利用して得られた置換された顔画像であり得、
図4の013と014を比較すると、014の顔が011の顔により似ていることがはっきりと分かる。
【0109】
本願の実施例は、顔画像処理方法を提案し、当該顔画像処理方法は、ソース顔の顔画像及びテンプレート顔の顔テンプレート画像を取得するステップと、顔画像及び顔テンプレート画像に対して三次元顔モデリングを行い、顔画像の三次元顔画像特徴及び顔テンプレート画像の三次元顔テンプレート画像特徴を得るステップと、三次元顔画像特徴と三次元顔テンプレート画像特徴を融合して、三次元融合特徴を得るステップと、顔テンプレート画像に基づいて、前記顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得るステップと、三次元融合特徴に基づいて初期顔置換特徴を変換して、目標顔置換特徴を得るステップと、目標顔置換特徴及び顔画像の顔特徴に基づいて、顔テンプレート画像内のテンプレート顔をソース顔に置換して、置換された顔画像を得るステップと、を含む。本願の実施例は、二次元空間及び三次元空間の観点に基づいて、三次元融合特徴及び二次元の顔特徴を組み合わせることにより、顔画像及び顔テンプレート画像のより多くの特徴を取得することができ、それにより、顔置換処理を実行するとき、より多くの情報を基にしているため、顔画像処理方法の精度を向上させることができる。
【0110】
本願の実施例は、それに対応して、顔画像処理モデルの訓練方法も提案する。次に、本願の実施例を、顔画像処理モデルの訓練装置の観点から説明し、当該顔画像処理モデルの訓練装置は、コンピュータ機器に集積され得、当該コンピュータ機器は、サーバ、又は端末などの機器であってもよい。
【0111】
いくつかの実施例では、本願の実施例によって提供される顔画像処理モデルの訓練方法は、端末又はサーバによって単独で実現、又は端末とサーバが協働して実現することができ、サーバで単独で実現することを例とすると、
図5に示すように、顔画像処理モデルの訓練方法を提供し、当該方法は、以下のステップを含む。
【0112】
ステップ201において、サーバは、訓練画像サンプルグループを取得し、訓練画像サンプルグループは、顔画像サンプル、顔テンプレート画像サンプル、及び顔参照画像サンプルを含む。
【0113】
ここで、訓練画像サンプルグループは、所定の顔画像処理モデルの訓練に使用されるデータを含む。
【0114】
いくつかの実施例では、訓練画像サンプルグループは、顔画像サンプル、顔テンプレート画像サンプル、及び顔参照画像サンプルを含む。
【0115】
ここで、顔画像サンプルは、顔画像に対応し得る。顔テンプレート画像サンプルは、顔テンプレート画像に対応し得る。ここで、顔画像サンプルに、ソース顔も含まれ、顔テンプレート画像サンプルに、テンプレート顔が含まれる。例えば、
図6に示すように、
図6の015は、顔画像サンプルであり得、016は、顔テンプレート画像サンプルであり得る。
【0116】
顔参照画像サンプルは、顔画像及び顔テンプレート画像サンプルを利用して合成された参照画像を含む。当該顔参照画像サンプルは、顔画像におけるソース顔の情報だけでなく、顔テンプレート画像サンプルにおけるテンプレート顔のテクスチャ、角度、照明、及び表情などの画像情報も有する。当該顔参照画像サンプルは、置換された顔画像に相当し得、顔参照画像サンプルが人工的に合成されている点で相違している。また、顔参照画像サンプルは、開発者の訓練目的に相当し、それは、画像処理モデルを訓練する過程で、画像処理モデルの参照の役割を果たすことであり、それにより、訓練された画像処理モデルは、要求を満たすコンテンツを生成することができる。
【0117】
いくつかの実施例では、訓練画像サンプルグループは、様々な方式で取得することができる。例えば、訓練画像サンプルグループは、オープンソースのWebサイトから直接取得することができる。別の例では、顔画像サンプル及び顔テンプレート画像サンプルを収集し、顔画像サンプル及び顔テンプレート画像サンプルを利用して、顔参照画像サンプルを合成し、それにより、訓練画像サンプルグループを取得することができる。
【0118】
ステップ202において、顔画像処理モデルを利用して、顔テンプレート画像サンプル内のテンプレート顔を、顔画像サンプル内のソース顔に置換して、予測顔画像を得る。
【0119】
ここで、予測顔画像は、顔テンプレート画像サンプル内のテンプレート顔を、顔画像サンプル内のソース顔に置換して得られた画像を含み得る。例えば、
図6に示すように、
図6の017は、予測顔画像であり得る。
【0120】
ここで、顔画像処理モデルは、訓練予定の顔画像処理モデルを含む。
【0121】
ここで、所定の顔画像処理モデルの構造は、ステップ106における訓練された顔画像処理モデルと同じであるが、当該訓練予定の顔画像処理モデルによって生成される予測顔画像はまだ訓練目的に合致しない。
【0122】
いくつかの実施例では、顔画像処理モデルを利用して、顔テンプレート画像サンプル内のテンプレート顔を、顔画像サンプル内のソース顔に置換して、予測顔画像を得るステップは、
顔画像処理モデルを利用して、顔画像サンプル及び顔テンプレート画像サンプルに対して三次元顔モデリングを行い、顔画像サンプルの三次元顔画像サンプル特徴及び顔テンプレート画像サンプルの三次元顔テンプレート画像サンプル特徴を得るステップと、
顔画像処理モデルを利用して、三次元顔画像サンプル特徴と三次元顔テンプレート画像サンプル特徴を融合して、融合された三次元顔画像サンプル特徴を得るステップと、
顔画像処理モデルを利用して、顔テンプレート画像サンプルに基づいて、顔画像サンプルに対して顔置換特徴抽出を行い、初期顔置換サンプル特徴を得るステップと、
顔画像処理モデルを利用して、融合された三次元顔画像サンプル特徴に基づいて、初期顔置換サンプル特徴を変換して、目標顔置換サンプル特徴を得るステップと、
顔画像処理モデルを利用して、目標顔置換サンプル特徴及び顔画像サンプルの顔特徴に基づいて、顔テンプレート画像サンプル内のテンプレート顔を、顔画像サンプルのソース顔に置換して、予測顔画像を得るステップと、を含む。
【0123】
例えば、
図6に示すように、顔テンプレート画像サンプル及び顔画像サンプルに対して三次元顔モデリングを行い、顔画像サンプルの三次元顔画像サンプル特徴及び顔テンプレート画像サンプルの三次元顔テンプレート画像サンプル特徴を得ることができる。次に、顔画像処理モデルは、三次元顔画像サンプル特徴と三次元顔テンプレート画像サンプル特徴を融合して、融合された三次元顔画像サンプル特徴を得ることができる。また、顔画像処理モデルは、顔テンプレート画像サンプルに基づいて、顔画像サンプルに対して顔置換特徴抽出を行い、初期顔置換サンプル特徴を得る。次に、所定の顔画像処理モデルは、AdaINを使用して、融合された三次元顔画像サンプル特徴を、初期顔置換サンプル特徴に注入することができる。ここで、
図6の三次元特徴は、融合された三次元顔画像サンプル特徴を含み得る。
【0124】
ステップ203において、予測顔画像に対して三次元顔輪郭点検出を行い、予測顔画像の三次元顔輪郭点を得、顔参照画像サンプルに対して三次元顔輪郭点検出を行い、顔参照画像サンプルの三次元顔輪郭点を得る。
【0125】
ここで、三次元顔輪郭点は、三次元空間における画像の顔輪郭を表す情報点を含む。例えば、予測顔画像の三次元顔輪郭点により、予測顔画像における予測顔の輪郭情報を知ることができる。別の例では、顔参照画像サンプルの三次元顔輪郭点により、顔参照画像サンプルにおける顔の輪郭情報を知ることができる。
【0126】
いくつかの実施例では、顔画像処理の精度を向上させるために、本願の実施例では、三次元顔輪郭点を利用して顔画像処理モデルを訓練することができる。したがって、予測顔画像に対して三次元顔輪郭点検出を行い、予測顔画像の三次元顔輪郭点を得、顔参照画像サンプルに対して三次元顔輪郭点検出を行い、顔参照画像サンプルの三次元顔輪郭点を得ることができる。
【0127】
例えば、予測顔画像を三次元空間に投影し、三次元空間で予測顔画像の三次元顔輪郭点を探し出すことができる。
【0128】
別の例では、予測顔画像に対して三次元顔モデリングを行い、予測顔画像の三次元予測顔画像特徴を得、三次元予測顔画像特徴に対して三次元キーポイント投影を行い、予測顔画像の三次元顔キーポイントを得、三次元顔キーポイントに基づいて、三次元顔キーポイントから三次元顔輪郭点を選別することができる。
【0129】
ここで、三次元予測顔画像特徴は、三次元空間で予測顔画像特徴を示すことができる。例えば、三次元予測顔画像特徴は、予測顔画像における予測顔の五官の特徴、顔輪郭、テクスチャ、角度、及び照明などの情報を示すことができる。
【0130】
ここで、三次元予測顔画像特徴は、複数の特徴を含み得、これらの特徴は、共同で三次元予測顔画像特徴を構成する。例えば、三次元予測顔画像特徴は、予測顔アイデンティティ特徴、予測顔表情特徴、予測顔テクスチャ特徴、予測顔角度特徴、及び予測顔照明特徴などを含み得る。
【0131】
ここで、三次元顔キーポイントは、予測顔の情報を有する複数のキーポイントを含み、例えば、予測顔特徴を示すためのすべてのキーポイントを含む。
【0132】
いくつかの実施例では、
図6の018に示すように、予測顔画像に対して三次元顔モデリングを行い、予測顔画像の三次元予測顔画像特徴を得、次に、三次元予測顔画像特徴に対して三次元キーポイント投影を行い、予測顔画像の三次元顔キーポイントを得ることができる。次に、
図6の019に示すように、三次元顔キーポイントに基づいて、三次元顔キーポイントから三次元顔輪郭点を選別することができる。
【0133】
いくつかの実施例では、投影関数を利用して三次元予測顔画像特徴に対して三次元キーポイント投影を行い、予測顔画像の三次元顔キーポイントを得ることができる。例えば、下記式に基づいて、三次元予測顔画像特徴に対して三次元キーポイント投影を行い、予測顔画像の三次元顔キーポイントを得ることができる。
【0134】
result_3d_points=reconstruction_without_tex(result_3d_feature)
ここで、result_3d_pointsは、三次元顔キーポイントであり得、result_3d_featureは、三次元予測顔画像特徴であり得、reconstruction_without_tex()は、投影関数であり得る。
【0135】
ここで、投影関数は、様々なタイプの関数であり得る。例えば、投影関数は、オープンジーエル(OpenGL:Open Graphics Library)におけるglOrtho()、glFrustum()、又はgluPerspective()などであり得る。
【0136】
いくつかの実施例では、予測顔アイデンティティ特徴及び予測顔表情特徴に基づいて、予測顔画像の三次元顔キーポイントを得ることができる。例えば、三次元予測顔画像特徴に対して三次元キーポイント投影を行い、予測顔画像の三次元顔キーポイントを得るステップは、
三次元予測顔画像特徴から、予測顔画像の予測顔アイデンティティ特徴及び予測顔表情特徴を抽出するステップと、
所定の伝達パラメータを利用して、予測顔アイデンティティ特徴及び予測顔表情特徴に対して三次元キーポイント投影を行い、予測顔画像の三次元顔キーポイントを得るステップと、を含む。
【0137】
ここで、所定の伝達パラメータは、事前に設定された、情報伝達を実現することができるパラメータであり得る。
【0138】
いくつかの実施例では、下記式に従って、予測顔アイデンティティ特徴及び予測顔表情特徴に対して三次元キーポイント投影を行い、予測顔画像の三次元顔キーポイントを得ることができる。
【0139】
result_3d_points=idBase*id_coeff+exBase*ex_coeff+meanshape
【0140】
ここで、id_coeffは、予測顔アイデンティティ特徴であり得、ex_coeffは、予測顔表情特徴であり得、idBase、exBase及びmeanshapeは、所定の伝達パラメータであり得る。
【0141】
いくつかの実施例では、三次元顔キーポイントを得た後、三次元顔キーポイントに基づいて、三次元顔キーポイントから三次元顔輪郭点を選別することができる。
【0142】
例えば、三次元顔キーポイントの位置情報を取得し、次に、三次元顔キーポイントの位置情報に基づいて、三次元顔キーポイントから三次元顔輪郭点を選別することができる。例えば、位置情報が縁にある三次元顔キーポイントを三次元顔輪郭点として決定することができる。
【0143】
別の例では、三次元顔キーポイントの出力順序に基づいて、三次元顔輪郭点を選別することができる。いくつかの実施例では、三次元顔キーポイントの出力順序は、事前の設定に基づいて定められたものである。例えば、三次元顔キーポイントは68個あり、そのうち、最初の17個が三次元顔輪郭点であり得、そのため、出力順序が最初の17個の三次元顔キーポイントを三次元顔輪郭点として決定することができる。
【0144】
ステップ204において、予測顔画像の三次元顔輪郭点と顔参照画像サンプルの三次元顔輪郭点との差異を取得して、予測顔画像と前記顔参照画像サンプルとの間の顔輪郭損失を得る。
【0145】
いくつかの実施例では、三次元顔輪郭点を得た後、予測顔画像の三次元顔輪郭点と顔参照画像サンプルの三次元顔輪郭点との間の差異を計算して、予測顔画像と前記顔参照画像サンプルとの間の顔輪郭損失を得ることができる。
【0146】
例えば、予測顔画像の三次元顔輪郭点と顔参照画像サンプルの三次元顔輪郭点との間の差を求め、それにより、顔輪郭損失を得ることができ、別の例では、予測顔画像の三次元顔輪郭点と顔参照画像サンプルの三次元顔輪郭点との間のコサイン類似度を求め、それにより、顔輪郭損失を得ることができる。
【0147】
例えば、予測顔画像の三次元顔輪郭点と顔参照画像サンプルの三次元顔輪郭点との間の差を求める場合、下記式に従って行うことができる。
【0148】
3d_point_loss=abs(gt_3d_OutlookPoint-result_3d_OutlookPoint)
【0149】
ここで、gt_3d_OutlookPointは、顔参照画像サンプルの三次元顔輪郭点であり得、result_3d_OutlookPointは、予測顔画像の三次元顔輪郭点であり得、3d_point_lossは、顔輪郭損失であり得、abs()は、絶対値記号であり得る。
【0150】
いくつかの実施例では、訓練された顔画像処理モデルの性能を向上させ、訓練された顔画像処理モデルが要求を満たす画像を生成することができるために、他の複数の次元で損失を計算することができ、顔輪郭損失及び他の次元における損失を利用して、所定の顔画像処理モデルを調整することができ、即ち、顔輪郭損失と他の次元における損失を組み合わせて、顔画像処理モデルのモデルパラメータを更新する。
【0151】
例えば、
図6に示すように、顔画像サンプルと予測顔画像との間の顔特徴損失を計算し、それにより、顔輪郭損失だけではなく、他の損失も利用して所定の顔画像処理モデルを調整することができる。
【0152】
例えば、顔参照画像サンプルと予測顔画像との間の三次元顔輪郭点以外の差異を計算して、顔参照画像サンプルと予測顔画像との第1損失を得、第1損失は、顔輪郭損失以外の損失を含み、
顔画像サンプルと予測顔画像との間の顔特徴損失を計算し、第1損失と顔特徴損失を融合して、第2損失を得ることにより、第2損失に基づいて、顔画像処理モデルのモデルパラメータを更新することができる。
【0153】
ここで、顔輪郭損失以外の損失に、他の次元における損失が含まれ得る。例えば、他の次元における損失は、画素損失、特徴損失、及び判別損失のうちの少なくとも1つを含み得る。
【0154】
ここで、画素損失は、画素レベルにおける顔参照画像サンプル及び予測顔画像の損失を含み得、特徴損失は、特徴レベルにおける顔参照画像サンプル及び予測顔画像の損失を含み得る。例えば、特徴損失は、顔参照画像サンプルの顔と予測顔画像の予測顔との間の差異を指し得る。
【0155】
いくつかの実施例では、顔画像処理モデルは、判別器を有し、判別器の役割は、生成器によって生成された画像が実画像であるかどうかを識別することである。したがって、判別損失は、判別器が顔参照画像サンプル及び予測顔画像を判別した後に生成される情報を含み得る。
【0156】
いくつかの実施例では、第1損失が画素損失、特徴損失、及び判別損失を含む場合、顔参照画像サンプルと予測顔画像との間の三次元顔輪郭点以外の差異を計算して、顔参照画像サンプルと予測顔画像の第1損失を得るステップは、
顔参照画像サンプルと予測顔画像との間の画素差異を計算して、画素損失を得るステップと、
顔参照画像サンプルと予測顔画像との間の特徴差異を計算して、特徴損失を得るステップと、
顔参照画像サンプルと予測顔画像との間の判別差異を計算して、判別損失を得るステップと、を含む。
【0157】
いくつかの実施例では、顔参照画像サンプルと予測顔画像との間の画素差異を計算する場合、顔参照画像及び予測顔画像の画素情報を抽出し、次に、画素情報の間の差異を計算し、それにより、画素損失を得ることができる。
【0158】
例えば、カラーチャネルにおける顔参照画像サンプルの値、及びカラーチャネルにおける予測顔画像の値を抽出し、両者を減算して絶対値を取得し、それにより、画素損失を得ることができる。例えば、下記式で示すことができる。
【0159】
Resconstructionloss=abs(result-gt_img)
【0160】
ここで、resultは、予測顔画像の画素情報であり得、gt_imgは、顔参照画像サンプルの画素情報であり得、Resconstructionlossは、画素損失であり得る。
【0161】
いくつかの実施例では、顔画像処理モデルでは、三次元空間での画像の特徴抽出及び二次元空間での特徴抽出を行うことができるため、特徴損失は、二次元特徴損失及び三次元特徴損失を含み得、これに対応して、顔参照画像サンプルと予測顔画像との間の特徴差異を計算して、特徴損失を得るステップは、
顔参照画像サンプルと予測顔画像との間の二次元特徴差異を計算して、二次元特徴損失を得るステップと、
顔参照画像サンプルと予測顔画像との間の三次元特徴差異を計算して、三次元特徴損失を得るステップと、
二次元特徴損失と三次元特徴損失を融合して、特徴損失を得るステップと、を含む。
【0162】
ここで、二次元特徴差異は、二次元空間における顔参照画像サンプルと予測顔画像の特徴の差異を含み得る。例えば、二次元特徴差異は、顔参照画像サンプルの画像特徴と予測顔画像の画像特徴との差異を含み得る。
【0163】
ここで、三次元特徴差異は、三次元空間における顔参照画像サンプルと予測顔画像の特徴の差異を含み得る。例えば、三次元特徴差異は、顔参照画像サンプルの三次元顔参照画像サンプル特徴と予測顔画像の三次元予測顔画像特徴との差異を含み得る。
【0164】
いくつかの実施例では、顔参照画像サンプルと予測顔画像との間の二次元特徴差異を計算する場合、顔参照画像サンプル及び予測顔画像に対して特徴抽出をそれぞれ行い、顔参照画像サンプルの画像特徴及び予測顔画像の画像特徴を得、次に、顔参照画像サンプルの画像特徴と予測顔画像の画像特徴との間の差異を計算することができる。
【0165】
例えば、Alexnetネットワークを利用して顔参照画像サンプル及び予測顔画像に対して特徴抽出を行い、顔参照画像サンプルの画像特徴及び予測顔画像の画像特徴を取得することができる。
【0166】
ここで、Alexnetネットワークは、5つの畳み込み層及び3つの完全接続層によって構成されている。ここで、5つの畳み込み層は、画像に対して特徴抽出を行うように構成され得、各層の間に情報伝達関係がある。例えば、最初の畳み込み層が画像に対して特徴抽出を行った後、抽出して得られた情報を2番目の畳み込み層に伝達する。次に、2番目の畳み込み層は、引き続き、最初の畳み込み層によって抽出された特徴に対して特徴抽出を行い、抽出された特徴を3番目の畳み込み層に伝達する。このように、最後の5番目の畳み込み層は、抽出された特徴を完全接続層に伝達する。
【0167】
いくつかの実施例では、様々な方式を利用して、顔参照画像サンプルの画像特徴と予測顔画像の画像特徴との間の差異を計算することができる。
【0168】
例えば、LPIPS(Learned Perceptual Image Patch Similarity)を利用して、顔参照画像サンプルの画像特徴と予測顔画像の画像特徴との間の差異を計算することができる。別の例では、差を求める方式を利用して二次元特徴損失を計算することができる。別の例では、コサイン類似度の方式を利用して二次元特徴損失を計算することなどができる。
【0169】
いくつかの実施例では、Alexnetネットワークを使用して画像に対して特徴抽出を行う場合、各畳み込み層における顔参照画像サンプルの画像特徴と予測顔画像の画像特徴との間の差異を計算することができる。
【0170】
例えば、Alexnetネットワークを利用して顔参照画像サンプルに対して特徴抽出を行い、gt_img_feal1、gt_img_feal2、gt_img_feal3、及びgt_img_feal4を得る。ここで、gt_img_feal1、gt_img_feal2、gt_img_feal3、及びgt_img_feal4は、Alexnetネットワークのうちの4つの畳み込み層によって出力された顔参照画像サンプルの特徴をそれぞれ指し得る。
【0171】
同様に、Alexnetネットワークを利用して予測顔画像に対して特徴抽出を行い、result_feal1、result_feal2、result_feal3、及びresult_feal4を得ることができる。ここで、result_feal1、result_feal2、result_feal3、及びresult_feal4は、Alexnetネットワークのうちの4つの畳み込み層によって出力された予測顔画像の特徴をそれぞれ指し得る。
【0172】
次に、下記式に従って二次元特徴損失を計算することができる。
【0173】
Two_loss=abs(result_feal1-gt_img_feal1)+abs(result_feal2-gt_img_feal2)+abs(result_feal3-gt_img_feal3)+abs(result_feal4-gt_img_feal4)
【0174】
ここで、Two_lossは、二次元特徴損失であり得る。
【0175】
いくつかの実施例では、顔参照画像サンプル及び予測顔画像に対して顔モデリングを行い、顔参照画像サンプルの三次元顔参照画像サンプル特徴及び予測顔画像の三次元予測顔画像特徴を得、次に、三次元顔参照画像サンプル特徴と三次元予測顔画像特徴との間の差異を計算することができる。
【0176】
いくつかの実施例では、様々な方式を利用して、三次元顔参照画像サンプル特徴と三次元予測顔画像特徴との間の差異を計算することもできる。例えば、LPIPS(Learned Perceptual Image Patch Similarity)を利用して三次元特徴損失を計算することができる。別の例では、差を求める方式を利用して三次元特徴損失を計算することができる。別の例では、コサイン類似度の方式を利用して三次元特徴損失を計算することなどができる。
【0177】
いくつかの実施例では、下記式に従って三次元特徴損失を計算することができる。
【0178】
【0179】
ここで、
【数9】
は、三次元特徴損失を表し、
【数10】
は、三次元顔参照画像サンプル特徴を表し、
【数11】
は、三次元予測顔画像特徴を表すことができる。
【0180】
いくつかの実施例では、二次元特徴損失及び三次元特徴損失を得た後、二次元特徴損失と三次元特徴損失を融合して、特徴損失を得ることができる。例えば、二次元特徴損失と三次元特徴損失を加算して、特徴損失を得ることができる。別の例では、二次元特徴損失と三次元特徴損失を加重加算して、特徴損失を得ることができる。
【0181】
いくつかの実施例では、顔参照画像サンプルと予測顔画像との間の判別差異を計算する場合、顔参照画像サンプル及び予測顔画像に対してスケール変換を行い、判別器を利用してスケール変換された画像を判別し、それにより、判別損失の豊富性を向上させることができる。例えば、顔参照画像サンプル及び予測顔画像に対してスケール変換処理をそれぞれ行い、少なくとも1つのスケール変換された顔参照画像サンプル、及び少なくとも1つのスケール変換された予測顔画像を得る。
【0182】
少なくとも1つのスケール変換された顔参照画像サンプル、及び少なくとも1つのスケール変換された予測顔画像に対して判別処理をそれぞれ行い、スケール変換された顔参照画像サンプルの第1判別特徴及びスケール変換された予測顔画像の第2判別特徴を得る。
【0183】
第1判別特徴及び第2判別特徴に基づいて、前記判別損失を計算する。
【0184】
ここで、スケール変換は、画像のサイズを変更することを指し得る。例えば、画像のサイズは、縦256×横256であり、スケール変換により、画像のサイズを、縦128×横128に変更することができる。
【0185】
例えば、顔参照画像サンプルの元のサイズはaであり、スケール変換処理により、サイズが1/2aである顔参照画像サンプル、及びサイズが1/4aである顔参照画像サンプルを得ることができる。
【0186】
同様に、予測顔画像の元のサイズがbであると仮定すると、スケール変換処理により、サイズが1/2bである予測顔画像、及びサイズが1/4bである予測顔画像を得ることができる。
【0187】
次に、少なくとも1つのスケール変換された顔参照画像サンプル、及び少なくとも1つのスケール変換された予測顔画像に対して判別をそれぞれ行い、スケール変換された顔参照画像サンプルの第1判別特徴及びスケール変換された予測顔画像の第2判別特徴を得ることができる。
【0188】
例えば、元のサイズがaである顔参照画像サンプル、サイズが1/2aである顔参照画像サンプル、及びサイズが1/4aである顔参照画像サンプルを判別器に入力して、判別結果を得ることができる。
【0189】
例えば、元のサイズがaである顔参照画像サンプル、サイズが1/2aである顔参照画像サンプル、及びサイズが1/4aである顔参照画像サンプルを判別器に入力した後、得られた判別結果はそれぞれ、D(gt_img)、D(gt_img_1/2)、及びD(gt_img_1/4)である。ここで、記号D()は、判別器の判別結果を表すことができる。gt_imgは、元のサイズがaである顔参照画像サンプルを指し得、gt_img_1/2は、サイズが1/2aである顔参照画像サンプルを指し得、gt_img_1/4は、サイズが1/4aである顔参照画像サンプルを指し得る。
【0190】
いくつかの実施例では、判別結果は通常、特徴によって表される。例えば、D()は通常、0~1の間の1つの値であり、ここで、判別結果が1である場合は、画像が判別に合格したことを意味し、判別結果が0である場合、画像が判別に合格していないことを意味する。
【0191】
例えば、第1判別特徴は、D(gt_img)、D(gt_img_1/2)、及びD(gt_img_1/4)を含み得る。
【0192】
別の例では、元のサイズがbである予測顔画像、サイズが1/2bである予測顔画像、及びサイズが1/4bである予測顔画像を判別器に入力して、判別結果を得ることができる。
【0193】
例えば、元のサイズがbである予測顔画像、サイズが1/2bである予測顔画像、及びサイズが1/4bである予測顔画像を判別器に入力して、得られた判別結果はそれぞれ、D(result)、D(result_1/2)、及びD(result_1/4)である。ここで、resultは、元のサイズがbである予測顔画像を指し得、result_1/2は、サイズが1/2bである予測顔画像を指し得、result_1/4は、サイズが1/4bである予測顔画像を指し得る。
【0194】
ここで、第2判別特徴は、判別器の判別結果を含み得る。例えば、第2判別特徴は、D(result)、D(result_1/2)、及びD(result_1/4)を含み得る。
【0195】
いくつかの実施例では、差を求める方式を利用して判別損失を計算することができる。別の例では、コサイン類似度の方式を利用して判別損失を計算することなどができる。
【0196】
いくつかの実施例では、下記式に従って判別損失を計算することができる。
【0197】
D_loss=1/3*(-logD(gt_img)-logD(result)-logD(gt_img_1/2)-logD(result_1/2)-logD(gt_img_1/4)-logD(result_1/4))
【0198】
ここで、D_lossは、判別損失であり得る。
【0199】
いくつかの実施例では、予測顔画像における予測顔のアイデンティティ特徴と顔画像サンプルにおけるソース顔のアイデンティティ特徴を可能な限り類似させるために、顔画像サンプルと予測顔画像との間の顔特徴損失を計算することもできる。
【0200】
例えば、予測顔画像及び顔画像サンプルに対して顔特徴抽出を行い、予測顔画像の顔特徴及び顔画像サンプルの顔特徴を得ることができる。次に、予測顔画像の顔特徴と顔画像サンプルの顔特徴との間の顔特徴損失を計算する。
【0201】
いくつかの実施例では、差を求める方式を利用して二次元特徴損失を計算することができる。別の例では、コサイン類似度の方式を利用して二次元特徴損失を計算することなどができる。
【0202】
いくつかの実施例では、下記式に従って二次元特徴損失を計算することができる。
【0203】
【0204】
ここで、
【数13】
は、二次元特徴損失であり得、
【数14】
は、予測顔画像の顔特徴であり得、
【数15】
は、顔画像サンプルの顔特徴であり得る。
【数16】
は、コサイン類似度の計算方式であり得、ここで、
【数17】
の表現式は、次の通りである。
【0205】
【0206】
ここで、AとBは、ベクトルであり得、Aiは、ベクトルAの成分であり得、Biは、ベクトルBの成分であり得る。iは、i番目の成分を指し得、nは、ベクトル内の成分の総数を指し得る。
【0207】
いくつかの実施例では、第1損失及び顔特徴損失を得た後、第1損失と顔特徴損失を融合して、第2損失を得ることができる。例えば、第1損失と顔特徴損失を加算して、第2損失を得ることができる。別の例では、第1損失と顔特徴を加重加算して、第2損失を得ることができる。
【0208】
ステップ205において、顔輪郭損失に基づいて、前記顔画像処理モデルのモデルパラメータを更新する。
【0209】
いくつかの実施例では、顔輪郭損失に基づいて、前記顔画像処理モデルのモデルパラメータを更新することができ、即ち、顔画像処理モデルを調整して、訓練された画像処理モデルを得る。
【0210】
例えば、
図6に示すように、顔輪郭損失を得た後、顔輪郭損失を利用して、予測顔画像の三次元顔輪郭点が、顔参照画像サンプルの三次元顔輪郭点と一致するように拘束することができる。
【0211】
例えば、顔輪郭損失に基づいて、所定の顔画像処理モデルのモデルパラメータを調整して、調整された顔画像処理モデルを得ることができる。次に、訓練画像サンプルグループを利用して、調整された顔画像処理モデルを訓練し、以上の繰り返し動作により、顔輪郭損失情報をある程度より小さくし、又は要求を満たす場合、訓練が目的を達成したことを意味する。この場合、性能も要求を満たす訓練された画像処理モデルを得ることもできる。
【0212】
いくつかの実施例では、また、顔輪郭損失と第2損失を融合して、第3損失を得、次に、第3損失を利用して画像処理モデルを調整することができ、即ち、第3損失を利用して顔画像処理モデルのモデルパラメータを更新して、訓練された顔画像処理モデルを得る。例えば、顔画像処理モデルのモデルパラメータを取得し、
顔輪郭損失と第2損失を融合して、第3損失を得、
第3損失を利用してモデルパラメータを調整して、訓練された顔画像処理モデルを得る。
【0213】
例えば、顔輪郭と第2損失を加算して、第3損失を得ることができる。次に、第3損失を利用して所定の顔画像処理モデルのモデルパラメータを調整して、訓練された顔画像処理モデルを得る。
【0214】
いくつかの実施例では、所定の顔画像処理モデルの訓練課程では、顔置換の実現方法を学習することに加えて、例えば、
図6に示すように、予測出画像の三次元特徴を予測するために三次元特徴も学習する。
【0215】
本願の実施例では、訓練画像サンプルグループを取得し、訓練画像サンプルグループは、顔画像サンプル、顔テンプレート画像サンプル、及び顔参照画像サンプルを含み、顔画像処理モデルを利用して顔テンプレート画像サンプル内のテンプレート顔を、顔画像サンプル内のソース顔に置換して、予測顔画像を得、予測顔画像に対して三次元顔輪郭点検出を行い、予測顔画像の三次元顔輪郭点を得、顔参照画像サンプルに対して三次元顔輪郭点検出を行い、顔参照画像サンプルの三次元顔輪郭点を得、予測顔画像の三次元顔輪郭点と顔参照画像サンプルの三次元顔輪郭点との間の差異を計算して、予測顔画像と前記顔参照画像サンプルとの間の顔輪郭損失を得、顔輪郭損失に基づいて、顔画像処理モデルを調整して、訓練された顔画像処理モデルを得ることができる。三次元顔輪郭点を利用して顔画像処理モデルを訓練することにより、訓練された顔画像処理モデルを利用して顔テンプレート画像内のテンプレート顔をソース顔に置換するときに得られた置換後の顔画像に、ソース顔の顔輪郭を維持させ、それによって顔画像処理方法の精度を向上させることができる。
【0216】
また、本願の実施例では、複数の異なる次元で損失情報を計算し、複数の次元での損失を利用して、所定の顔画像処理モデルを調整し、それにより、所定の顔画像処理モデルは、複数の次元での損失を利用して、異なる次元でパラメータを調整することができ、訓練された顔画像処理モデルにより良い性能を有させる。
【0217】
上記の実施例で説明した方法に基づいて、以下では例をあげて詳細に説明する。
【0218】
本願の実施例では、顔画像処理モデルの訓練をコンピュータ機器に集積することを例として、本願の実施例の方法を説明する。
【0219】
いくつかの実施例では、
図7に示すように、顔画像処理モデルの訓練方法は、以下のステップを含む。
【0220】
ステップ301において、コンピュータ機器は、訓練画像サンプルグループを取得し、訓練画像サンプルグループは、顔画像サンプル、顔テンプレート画像サンプル、及び顔参照画像サンプルを含む。
【0221】
例えば、顔画像サンプルは、sourceとして表され、顔テンプレート画像サンプルは、targetとして表され、顔参照画像サンプルは、gt_imgとして表され得る。
【0222】
ステップ302において、コンピュータ機器は、所定の顔画像処理モデルを利用して顔テンプレート画像サンプル内のテンプレート顔を、顔画像サンプル内のソース顔に置換して、予測顔画像を得る。
【0223】
例えば、コンピュータ機器は、source及びtargetを所定の顔画像処理モデル内のエンコーダに入力することができる。エンコーダは、source及びtargetの解像度を継続的に低下させ、いずれも隠れ空間で初期顔置換特徴として符号化することができる。
【0224】
また、コンピュータ機器は、顔特徴抽出ネットワークを利用して、sourceに対して特徴抽出を行い、sourceの顔特徴source_id_featureを得ることができる。
【0225】
また、コンピュータ機器は、source及びtargetに対して三次元顔モデリングを行い、顔画像サンプルの三次元顔画像サンプル特徴及び顔テンプレート画像サンプルの三次元顔テンプレート画像サンプル特徴を得ることができる。
【0226】
次に、コンピュータ機器は、所定の顔画像処理モデルを利用して融合された三次元顔画像サンプル特徴に基づいて初期顔置換サンプル特徴を変換して、目標顔置換サンプル特徴を得ることができる。
【0227】
次に、コンピュータ機器は、所定の顔画像処理モデルを利用して目標顔置換サンプル特徴及び顔画像サンプルの顔特徴に基づいて、顔テンプレート画像サンプル内のテンプレート顔を、顔画像サンプルのソース顔に置換して、予測顔画像を得ることができる。
【0228】
ここで、予測顔画像は、resultとして表すことができる。
【0229】
ステップ303において、コンピュータ機器は、予測顔画像に対して三次元顔輪郭点検出を行い、予測顔画像の三次元顔輪郭点を得、顔参照画像サンプルに対して三次元顔輪郭点検出を行い、顔参照画像サンプルの三次元顔輪郭点を得る。
【0230】
例えば、コンピュータ機器は、resultの三次元予測顔画像特徴(result_3d_featureとして表され得る)を計算することができる。
【0231】
次に、コンピュータ機器は、三次元予測顔画像特徴に対して三次元キーポイント投影を行い、予測顔画像の三次元顔キーポイントを得ることができる。例えば、下記式に示す通りである。
【0232】
result_3d_points=reconstruction_without_tex(result_3d_feature)
【0233】
次に、コンピュータ機器は、三次元顔キーポイントに基づいて、三次元顔キーポイントから三次元顔輪郭点を選別することができる。
【0234】
同様に、コンピュータ機器は、gt_imgの三次元顔テンプレート画像サンプル特徴(gt_3d_featureとして表され得る)を計算することができる。
【0235】
次に、コンピュータ機器は、三次元顔テンプレート画像サンプル特徴に対して、三次元キーポイント投影を行い、顔参照画像サンプルの三次元顔キーポイントを得ることができる。例えば、下記式に示す通りである。
【0236】
gt_3d_points=reconstruction_without_tex(gt_3d_feature)
【0237】
ここで、gt_3d_pointsは、顔参照画像サンプルの三次元顔キーポイントであり得る。
【0238】
ステップ304において、コンピュータ機器は、予測顔画像の三次元顔輪郭点と顔参照画像サンプルの三次元顔輪郭点との間の差異を計算して、予測顔画像と前記顔参照画像サンプルとの間の顔輪郭損失を得る。
【0239】
例えば、下記式に従って、顔輪郭損失を計算することができる。
【0240】
3d_point_loss=abs(gt_3d_OutlookPoint-result_3d_OutlookPoint)
【0241】
いくつかの実施例では、また、他の損失を計算し、顔輪郭損失及び他の損失を利用して、共同で所定の顔画像処理モデルを調整して、訓練された顔画像処理モデルを得ることができる。
【0242】
例えば、顔特徴損失、画素損失、特徴損失、判別損失、及び顔輪郭損失を加算することができる。次に、加算して得られた損失を利用して、所定の顔画像処理モデルを調整して、訓練された顔画像処理モデルを得る。
【0243】
ステップ305において、コンピュータ機器は、顔輪郭損失に基づいて、顔画像処理モデルのモデルパラメータを調整して、訓練された顔画像処理モデルを得る。
【0244】
本願の実施例では、コンピュータ機器は、訓練画像サンプルグループを取得することができ、訓練画像サンプルグループは、顔画像サンプル、顔テンプレート画像サンプル、及び顔参照画像サンプルを含み、コンピュータ機器は、所定の顔画像処理モデルを利用して顔テンプレート画像サンプル内のテンプレート顔を、顔画像サンプル内のソース顔に置換して、予測顔画像を得ることができ、コンピュータ機器は、予測顔画像に対して三次元顔輪郭点検出を行い、予測顔画像の三次元顔輪郭点を得、顔参照画像サンプルに対して三次元顔輪郭点検出を行い、顔参照画像サンプルの三次元顔輪郭点を得ることができ、コンピュータ機器は、予測顔画像の三次元顔輪郭点と顔参照画像サンプルの三次元顔輪郭点との間の差異を計算して、予測顔画像と前記顔参照画像サンプルとの間の顔輪郭損失を得ることができ、コンピュータ機器は、顔輪郭損失情報に基づいて、所定の顔画像処理モデルを調整して、訓練された顔画像処理モデルを得ることができる。三次元顔輪郭点を利用して顔画像処理モデルを訓練することにより、訓練された顔画像処理モデルを利用して顔テンプレート画像内のテンプレート顔をソース顔に置換するときに得られた置換後の顔画像に、ソース顔の顔輪郭を維持させ、それによって顔画像処理方法の精度を向上させることができる。
【0245】
本願の実施例では、顔画像処理モデルの訓練がコンピュータ機器に集積される場合を例として、本願の実施例の方法を説明する。
【0246】
いくつかの実施例では、
図8に示すように、顔画像処理方法は、以下のステップを含む。
【0247】
ステップ401において、コンピュータ機器は、ソース顔の顔画像及びテンプレート顔の顔テンプレート画像を取得する。
【0248】
ステップ402において、コンピュータ機器は、顔画像及び顔テンプレート画像に対して三次元顔モデリングを行い、顔画像の三次元顔画像特徴及び顔テンプレート画像の三次元顔テンプレート画像特徴を得る。
【0249】
ステップ403において、コンピュータ機器は、三次元顔画像特徴と三次元顔テンプレート画像特徴を融合して、三次元融合特徴を得る。
【0250】
ステップ404において、コンピュータ機器は、顔テンプレート画像に基づいて、顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得る。
【0251】
ステップ405において、コンピュータ機器は、三次元融合特徴に基づいて初期顔置換特徴を変換して、目標顔置換特徴を得る。
【0252】
ステップ406において、コンピュータ機器は、訓練された顔画像処理モデルを利用して、目標顔置換特徴及び顔画像の顔特徴に基づいて、顔テンプレート画像内のテンプレート顔をソース顔に置換して、置換された顔画像を得る。
【0253】
本願の実施例では、コンピュータ機器は、ソース顔の顔画像及びテンプレート顔の顔テンプレート画像を取得し、コンピュータ機器は、顔画像及び顔テンプレート画像に対して三次元顔モデリングを行い、顔画像の三次元顔画像特徴及び顔テンプレート画像の三次元顔テンプレート画像特徴を得、コンピュータ機器は、三次元顔画像特徴と三次元顔テンプレート画像特徴を融合して、三次元融合特徴を得、コンピュータ機器は、顔テンプレート画像に基づいて、前記顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得、コンピュータ機器は、三次元融合特徴に基づいて初期顔置換特徴を変換して、目標顔置換特徴を得、コンピュータ機器は、訓練された顔画像処理モデルを利用して、目標顔置換特徴及び顔画像の顔特徴に基づいて、顔テンプレート画像内のテンプレート顔をソース顔に置換して、置換された顔画像を得る。本願の実施例では、二次元空間及び三次元空間の観点に基づいて、顔画像及び顔テンプレート画像のより多くの特徴を取得することにより、顔置換処理を実行するとき、より多くの情報を基にしているため、顔画像処理方法の精度を向上させることができる。
【0254】
本願の実施例によって提供された顔画像処理方法をよりよく実施するために、本願の実施例は、顔画像処理装置を更に提供し、当該顔画像処理装置は、コンピュータ機器に集積され得る。ここで、用語の意味は、上記の顔画像処理方法におけるものと同じであり、具体的な実現は、方法の実施例に関する記載を参照することができる。
【0255】
いくつかの実施例では、顔画像処理装置を提供し、当該顔画像処理装置は、コンピュータ機器に集積され得、
図9に示すように、当該顔画像処理装置は、第1取得ユニット501、三次元顔モデリングユニット502、第1融合ユニット503、特徴抽出ユニット504、変換ユニット505、及び第1置換ユニット506を備え、具体的に、
前記第1取得ユニット501は、ソース顔の顔画像及びテンプレート顔の顔テンプレート画像を取得するように構成され、
前記三次元顔モデリングユニット502は、前記顔画像及び前記顔テンプレート画像に対して三次元顔モデリングを行い、前記顔画像の三次元顔画像特徴及び前記顔テンプレート画像の三次元顔テンプレート画像特徴を得るように構成され、
前記第1融合ユニット503は、前記三次元顔画像特徴と前記三次元顔テンプレート画像特徴を融合して、三次元融合特徴を得るように構成され、
前記特徴抽出ユニット504は、前記顔テンプレート画像に基づいて、前記顔画像に対して顔置換特徴抽出を行い、初期顔置換特徴を得るように構成され、
前記変換ユニット505は、前記三次元融合特徴に基づいて前記初期顔置換特徴を変換して、目標顔置換特徴を得るように構成され、
前記第1置換ユニット506は、前記目標顔置換特徴に基づいて、前記顔テンプレート画像内のテンプレート顔を前記ソース顔に置換して、置換された顔画像を得るように構成される。
【0256】
いくつかの実施例では、前記第1融合ユニット503は、
前記三次元顔画像特徴から、前記顔画像に対応するソース顔アイデンティティ特徴を抽出するように構成される第1抽出サブユニットと、
前記三次元顔テンプレート画像特徴から、前記顔テンプレート画像に対応するテンプレート顔画像特徴を抽出するように構成される第2抽出サブユニットと、
前記ソース顔アイデンティティ特徴と前記テンプレート顔画像特徴を融合して、前記三次元融合特徴を得るように構成される第1融合サブユニットと、を備える。
【0257】
いくつかの実施例では、前記特徴抽出ユニット504は、
前記顔テンプレート画像に対して符号化処理を行い、前記顔テンプレート画像の第1符号化特徴を得るように構成される第1符号化サブユニットと、
前記顔画像に対して符号化処理を行い、前記顔画像の第2符号化特徴を得るように構成される第2符号化サブユニットと、
前記第2符号化特徴に基づいて、前記第1符号化特徴を調整して、前記初期顔置換特徴を得るように構成される第1調整サブユニットと、を備える。
【0258】
いくつかの実施例では、前記変換ユニット505は、
前記三次元融合特徴に対して第1論理演算を行い、演算された三次元顔画像特徴を得、前記初期顔置換特徴に対して第2論理演算を行い、演算された顔置換特徴を得るように構成される第1統計サブユニットと、
前記初期顔置換特徴及び前記演算された顔置換特徴に対して第3論理演算を行い、演算された顔置換特徴を得るように構成される第2統計サブユニットと、
前記演算された顔置換特徴及び前記演算された三次元顔画像特徴に対して論理演算を行い、前記目標顔置換特徴を得るように構成される論理演算処理サブユニットと、を備える。
【0259】
上記の各ユニットは、独立したエンティティとして実現しても良く、任意に組み合わせて、同じ又は複数のエンティティとして実現しても良く、上記の各ユニットの具体的な実施については、前述の方法の実施例を参照することができ、ここでは繰り返して説明しない。
【0260】
上記の顔画像処理装置により、顔画像の置換の精度を向上させることができる。
【0261】
また、いくつかの実施例では、顔画像処理モデルの訓練装置を更に提供し、当該顔画像処理モデルの訓練装置は、コンピュータ機器に集積され得る。ここで、用語の意味は、上記の顔画像処理モデルの訓練方法におけるものと同じであり、具体的な実現は、方法の実施例における説明を参照することができる。
【0262】
いくつかの実施例では、顔画像処理モデルの訓練装置を提供し、当該顔画像処理モデルの訓練装置は、コンピュータ機器に集積され得、
図10に示すように、当該顔画像処理モデルの訓練装置は、第2取得ユニット601、第2置換ユニット602、三次元顔輪郭点検出ユニット603、計算ユニット604、及び調整ユニット605を備え、ここで、
前記第2取得ユニット601は、訓練画像サンプルグループを取得するように構成され、前記訓練画像サンプルグループは、顔画像サンプル、顔テンプレート画像サンプル、及び顔参照画像サンプルを含み、
前記第2置換ユニット602は、顔画像処理モデルを利用して前記顔テンプレート画像サンプル内のテンプレート顔を、前記顔画像サンプル内のソース顔に置換して、予測顔画像を得るように構成され、
前記三次元顔輪郭点検出ユニット603は、前記予測顔画像に対して三次元顔輪郭点検出を行い、前記予測顔画像の三次元顔輪郭点を得、前記顔参照画像サンプルに対して三次元顔輪郭点検出を行い、前記顔参照画像サンプルの三次元顔輪郭点を得るように構成され、
前記計算ユニット604は、前記予測顔画像の三次元顔輪郭点と前記顔参照画像サンプルの三次元顔輪郭点との差異を取得して、前記予測顔画像と前記顔参照画像サンプルとの間の顔輪郭損失を得るように構成され、
前記調整ユニット605は、前記顔輪郭損失に基づいて前記顔画像処理モデルを調整して、訓練された顔画像処理モデルを得るように構成される。
【0263】
いくつかの実施例では、前記三次元顔輪郭点検出ユニット603は、
前記予測顔画像に対して三次元顔モデリングを行い、前記予測顔画像の三次元予測顔画像特徴を得るように構成される三次元顔モデリングサブユニットと、
前記三次元予測顔画像特徴に対して三次元キーポイント投影を行い、前記予測顔画像の三次元顔キーポイントを得るように構成される三次元キーポイント投影サブユニットと、
前記三次元顔キーポイントに基づいて、前記三次元顔キーポイントから前記三次元顔輪郭点を選別するように構成される選別サブユニットと、を備える。
【0264】
いくつかの実施例では、前記三次元キーポイント投影サブユニットは、
前記三次元予測顔画像特徴から、前記予測顔画像の予測顔アイデンティティ特徴及び予測顔表情特徴を抽出するように構成される抽出モジュールと、
所定の伝達パラメータを利用して、前記予測顔アイデンティティ特徴及び予測顔表情特徴に対して三次元キーポイント投影を行い、前記予測顔画像の三次元顔キーポイントを得るように構成される三次元キーポイント投影モジュールと、を備える。
【0265】
いくつかの実施例では、前記顔画像処理モデルの訓練装置はさらに、
前記顔参照画像サンプルと前記予測顔画像との間の三次元顔輪郭点以外の差異を計算して、前記顔参照画像サンプルと前記予測顔画像の第1損失を得るように構成される第1計算ユニットであって、第1損失は、顔輪郭損失以外の損失を含む、第1計算ユニットと、
前記顔画像サンプルと前記予測顔画像との間の顔特徴損失を計算するように構成される第2計算ユニットと、
前記第1損失情報及び前記顔特徴損失情報に対して融合処理を行い、第2損失を得るように構成される第2融合ユニットと、を備える。
【0266】
いくつかの実施例では、前記第1計算ユニットは、
前記顔参照画像サンプルと前記予測顔画像との間の画素差異を計算して、画素損失を得るように構成される第1計算サブユニットと、
前記顔参照画像サンプルと前記予測顔画像との間の特徴差異を計算して、特徴損失を得るように構成される第2計算サブユニットと、
前記顔参照画像サンプルと前記予測顔画像との間の判別差異を計算して、判別損失を得るように構成される第3計算サブユニットと、を備える。
【0267】
いくつかの実施例では、前記第2計算サブユニットは、
前記顔参照画像サンプルと前記予測顔画像との間の二次元特徴差異を計算して、二次元特徴損失を得るように構成される第1計算モジュールと、
前記顔参照画像サンプルと前記予測顔画像との間の三次元特徴差異を計算して、三次元特徴損失を得るように構成される第2計算モジュールと、
前記二次元特徴損失と前記三次元特徴損失を融合して、前記特徴損失を得るように構成される第1融合モジュールと、を備える。
【0268】
いくつかの実施例では、前記第3計算サブユニットは、
前記顔参照画像サンプル及び前記予測顔画像に対してスケール変換処理をそれぞれ行い、少なくとも1つのスケール変換された顔参照画像サンプル、及び少なくとも1つのスケール変換された予測顔画像を得るように構成されるスケール変換モジュールと、
前記少なくとも1つのスケール変換された顔参照画像サンプル、及び前記少なくとも1つのスケール変換された予測顔画像に対して判別をそれぞれ行い、前記スケール変換された顔参照画像サンプルの第1判別特徴及び前記スケール変換された予測顔画像の第2判別特徴を得るように構成される判別モジュールと、
前記第1判別特徴及び前記第2判別特徴に基づいて、前記判別損失を計算するように構成される第3計算モジュールと、を備える。
【0269】
いくつかの実施例では、前記調整ユニット605は、
前記訓練された顔画像処理モデルのモデルパラメータを取得するように構成される取得サブユニットと、
前記顔輪郭損失と前記第2損失に対して融合処理を行い、第3損失を得るように構成される第2融合サブユニットと、
前記第3損失を利用して前記モデルパラメータを調整して、前記訓練された顔画像処理モデルを得るように構成されるパラメータ調整ユニットと、を備える。
【0270】
本願の実施例は、コンピュータ機器を更に提供し、当該コンピュータ機器は、端末又はサーバを含み得、例えば、当該端末は、携帯電話、タブレットコンピュータなどであり得、別の例では、コンピュータ機器は、サーバなどであり得る。
図11に示すように、
図11は、本願の実施例に関与する端末の概略構造図である。
【0271】
当該コンピュータ機器は、1つ又は複数の処理コアのプロセッサ701、1つ又は複数のコンピュータ可読記憶媒体のメモリ702、電源703、及び入力ユニット704などの構成要素を含み得る。当業者は、
図11に示されるコンピュータ機器の構造がコンピュータ機器に対する限定を構成するものではなく、図示よりも多い又は少ない構成要素を含み得ること、又は特定の構成要素を組み合わせること、又は異なる構成要素配置を配置し得ることを理解することができる。ここで、
【0272】
プロセッサ701は、当該コンピュータ機器の制御センターであり、様々なインターフェース及び回線を使用してコンピュータ機器全体の各部分を接続し、メモリ702に記憶されたソフトウェアプログラム及び/又はモジュールを実行又は実行し、メモリ702に記憶されたソフトウェアプログラムを呼び出すことによって、コンピュータ機器の様々な機能が実行され、及びデータが処理され、それにより、コンピュータ機器の全体的な監視が実行される。いくつかの実施例では、プロセッサ701は、1つ又は複数の処理コアを含み得、好ましくは、プロセッサ701はアプリケーションプロセッサとモデムプロセッサを集積することができ、ここで、アプリケーションプロセッサは、主にオペレーティングシステム、ユーザページ、アプリケーションプログラムなどを処理し、モデムプロセッサは、主にワイヤレス通信を処理する上記のモデムプロセッサは、プロセッサ701に集積されなくてもよいことが理解され得る。
【0273】
メモリ702は、ソフトウェアプログラム及びモジュールを記憶することができ、プロセッサ701は、メモリ702に記憶されたソフトウェアプログラム及びモジュールを実行し、それにより、様々な機能アプリケーション及びデータ処理を実行する。メモリ702は、主にストレージプログラム領域とストレージデータ領域とを含み得、ここで、ストレージプログラム領域は、オペレーティングシステム、少なくとも1つの機能(音声再生機能、画像再生機能など)に必要なアプリケーションプログラムなどを記憶することができ、ストレージデータ領域は、コンピュータ機器の用途に応じて作成されるデータなどを記憶することができる。また、メモリ702は、高速ランダムアクセスメモリを含み得、また少なくとも1つの磁気ディスク記憶デバイス、フラッシュメモリデバイス、又は他の揮発性固体記憶デバイスなどの不揮発性メモリも含み得る。これに対応して、メモリ702はまた、メモリ702へのプロセッサ701のアクセスを提供するメモリコントローラも含み得る。
【0274】
コンピュータ機器はまた、各構成要素に電力を供給するための電源703を含み、例えば、電源703は、電力管理システムを介してプロセッサ701に論理的に接続され、それにより、充電、放電、及び電力消費を管理する機能は、電力管理システムによって実現される。電源703はまた、1つ又は複数のDC又はAC電源、再充電システム、停電検出回路、電力変換器又はインバータ、電力状態インジケータ、及び任意の他の構成要素を含み得る。
【0275】
当該コンピュータ機器はまた、入力ユニット704を含み得、当該入力ユニット704は、入力数字又は文字情報を受信し、ユーザ設定及び機能制御に関連するキーボード、マウス、ジョイスティック、光学又はトラックボール信号入力を生成するように構成され得る。
【0276】
図示されていないが、コンピュータ機器はまた、表示ユニットなどを含み得、ここでは繰り返して説明しない。具体的に、本実施例では、コンピュータ機器内のプロセッサ701は、以下の命令に従って、1つ又は複数のアプリケーションプログラムのプロセスに対応する実行可能ファイルをメモリ702にロードし、メモリ702に記憶されたアプリケーションプログラムは、プロセッサ701によって実行され、それによって、本願の実施例によって提供される上記の顔画像処理方法又は顔画像処理モデルの訓練方法を実現する。
【0277】
当該記憶媒体に記憶されたコンピュータプログラムは、本願の実施例によって提供される顔画像処理方法のいずれかにおけるステップを実行することができるので、本願の実施例によって提供される顔画像処理方法のいずれかによって実現できる有益な効果を実現することができ、詳細については、前述の実施例を参照することができ、ここでは繰り返して説明しない。
【0278】
以上、本願の実施例によって提供される顔画像処理方法及び顔画像処理モデルに対して詳しく説明しており、本明細書で具体例を利用して本願の原理及び実施形態を記載しており、上記の実施例の説明は、本願の方法と思想を理解させるためのものであり、同時に、当業者が、本願の思想により、具体的な実施形態及び適用範囲に応じて変更することが可能であり、上記に記載されたように、本明細書の内容は、本願に対する限定として解釈されるべきではない。
【符号の説明】
【0279】
501 第1取得ユニット
502 三次元顔モデリングユニット
503 第1融合ユニット
504 特徴抽出ユニット
505 変換ユニット
506 第1置換ユニット
601 第2取得ユニット
602 第2置換ユニット
603 三次元顔輪郭点検出ユニット
604 計算ユニット
605 調整ユニット
701 プロセッサ
702 メモリ
703 電源
704 入力ユニット