(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-30
(45)【発行日】2024-10-08
(54)【発明の名称】顔画像の処理方法、装置及びコンピュータプログラム
(51)【国際特許分類】
G06T 1/00 20060101AFI20241001BHJP
G06T 7/00 20170101ALI20241001BHJP
G06V 10/82 20220101ALI20241001BHJP
【FI】
G06T1/00 340A
G06T7/00 350C
G06T7/00 660A
G06V10/82
(21)【出願番号】P 2023513667
(86)(22)【出願日】2021-10-08
(86)【国際出願番号】 CN2021122656
(87)【国際公開番号】W WO2022089166
(87)【国際公開日】2022-05-05
【審査請求日】2023-02-27
(31)【優先権主張番号】202011203504.5
(32)【優先日】2020-11-02
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】514187420
【氏名又は名称】テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】カオ,ユン
(72)【発明者】
【氏名】ニー,フイ
(72)【発明者】
【氏名】ジュ,フェイダ
(72)【発明者】
【氏名】ジー,シャオジョン
(72)【発明者】
【氏名】タイ,イン
(72)【発明者】
【氏名】グー,ヤンハオ
(72)【発明者】
【氏名】ワン,チェンジエ
【審査官】渡部 幸和
(56)【参考文献】
【文献】特開2005-063078(JP,A)
【文献】特表2020-515952(JP,A)
【文献】Look Globally, Age Locally: Face Aging With an Attention Mechanism,ICASSP 2020 - 2020 IEEE International Conference on Acoustics, Speech and Signal Processing,米国,IEEE,2020年04月09日,https://ieeexplore.ieee.org/document/9054553
(58)【調査した分野】(Int.Cl.,DB名)
G06T 1/00
G06T 7/00
G06V 10/82
(57)【特許請求の範囲】
【請求項1】
コンピュータ装置が実行する、顔画像を処理する方法であって、
第一顔画像を得るステップ;
年齢変更モデルを呼び出して前記第一顔画像の指定年齢下のテクスチャー差異マップを予測するステップであって、前記テクスチャー差異マップは前記第一顔画像における顔テクスチャーと前記指定年齢の顔テクスチャーとの間のテクスチャー差異を示すために用いられる、ステップ;及び
前記テクスチャー差異マップに基づいて前記第一顔画像に対して画像処理を行って第二顔画像を得るステップであって、前記第二顔画像は前記第一顔画像における顔の前記指定年齢下の顔画像である、ステップを含
み、
前記年齢変更モデルは条件生成ネットワーク層及びテクスチャー合成ネットワーク層を含み、
前記年齢変更モデルを呼び出して前記第一顔画像の指定年齢下のテクスチャー差異マップを予測するステップは、
前記条件生成ネットワーク層を呼び出して前記指定年齢に基づいて前記第一顔画像に対して予測を行って前記テクスチャー差異マップを出力するステップを含み、
前記テクスチャー差異マップに基づいて前記第一顔画像に対して画像処理を行って第二顔画像を得るステップは、
前記テクスチャー合成ネットワーク層を呼び出して前記テクスチャー差異マップと前記第一顔画像との重ね合わせを行って前記第二顔画像を得るステップを含み、
前記年齢変更モデルは変形ネットワーク層をさらに含み、
前記方法は、
前記変形ネットワーク層を呼び出して前記第二顔画像における顔に対して変形処理を行うステップをさらに含む、方法。
【請求項2】
請求項
1に記載の方法であって、
前記条件生成ネットワーク層はさらに、アテンションマップを出力するために用いられ、前記アテンションマップは前記第一顔画像における画素点に対応する前記テクスチャー差異の重み係数を示すために用いられ、
前記テクスチャー合成ネットワーク層を呼び出して前記テクスチャー差異マップと前記第一顔画像との重ね合わせを行って前記第二顔画像を得るステップは、
前記テクスチャー合成ネットワーク層を呼び出して前記アテンションマップに基づいて前記テクスチャー差異マップと前記第一顔画像との重ね合わせを行って前記第二顔画像を得るステップを含む、方法。
【請求項3】
請求項
1に記載の方法であって、
前記条件生成ネットワーク層はさらに、変形情報マップを出力するために用いられ、前記変形情報マップは前記第一顔画像における顔と前記指定年齢の顔との顔形状変化を予測するために用いられ、
前記変形ネットワーク層を呼び出して前記第二顔画像における顔に対して変形処理を行うステップは、
前記変形ネットワーク層を呼び出して前記変形情報マップに基づいて前記第二顔画像における顔に対して変形処理を行うステップを含む、方法。
【請求項4】
請求項
3に記載の方法であって、
前記変形情報マップは画素点の第一方向及び第二方向上の対応する変位情報を含み、前記第一方向及び前記第二方向は互いに垂直であり、
前記変形ネットワーク層を呼び出して前記変形情報マップに基づいて前記第二顔画像における顔に対して変形処理を行うステップは、
前記変形ネットワーク層を呼び出して前記第一方向及び前記第二方向上の前記変位情報に基づいて前記第二顔画像における前記画素点に対して双線形変位を行うステップを含む、方法。
【請求項5】
請求項1乃至
4のうちの何れか1つに記載の方法であって、
前記第二顔画像に対して画像語義分割を行って前記第二顔画像における髪領域を得るステップ;
前記髪領域における画素点のオリジナル色値に基づいて、マッピングにより、前記髪領域における画素点の前記指定年齢下の対応するターゲット色値を計算するステップ;及び
前記髪領域における画素点の前記オリジナル色値を前記ターゲット色値で置換するステップをさらに含む、方法。
【請求項6】
コンピュータ装置が実行する、年齢変更モデルを訓練する方法であって、
サンプル画像セットを得るステップであって、前記サンプル画像セットはサンプル画像及び前記サンプル画像のサンプル年齢ラベルを含む、ステップ;
指定年齢を決定するステップであって、前記指定年齢はランダム年齢又は前記サンプル年齢ラベルである、ステップ;
敵対的生成ネットワークにおける生成器を呼び出して前記指定年齢に基づいて前記サンプル画像
に対して予測を行って予測顔画像を得るステップ;
前記敵対的生成ネットワークにおける識別器を呼び出して前記予測顔画像の敵対損失を計算するステップであって、前記敵対損失は前記予測顔画像が真実顔画像であるかの損失を表すために用いられる、ステップ;
年齢予測モデルを呼び出して前記予測顔画像の予測年齢を予測し、前記予測年齢と前記指定年齢との間の年齢損失を計算するステップ;
前記敵対損失及び前記年齢損失に基づいて前記生成器を訓練するステップ;及び
訓練終了条件が満足されるときに、前記生成器を前記年齢変更モデルとして決定するステップを含
み、
前記生成器は条件生成ネットワーク層及びテクスチャー合成ネットワーク層を含み、
前記敵対的生成ネットワークにおける生成器を呼び出して前記指定年齢に基づいて前記サンプル画像に対して予測を行って予測顔画像を得るステップは、
前記条件生成ネットワーク層を呼び出して前記指定年齢に基づいて前記サンプル画像に対して予測を行ってテクスチャー差異マップを出力するステップであって、前記テクスチャー差異マップは前記サンプル画像における顔と前記指定年齢の顔とのテクスチャー差異を示すために用いられる、ステップ;及び
前記テクスチャー合成ネットワーク層を呼び出して前記テクスチャー差異マップと前記サンプル画像との重ね合わせを行って前記予測顔画像を得るステップを含み、
前記生成器は変形ネットワーク層をさらに含み、
前記方法は、
前記変形ネットワーク層を呼び出して前記予測顔画像における顔に対して変形処理を行うステップをさらに含む、方法。
【請求項7】
請求項
6に記載の方法であって、
前記サンプル画像セットを得るステップは、
前記年齢予測モデルを呼び出して前記サンプル画像に対して年齢予測を行って前記サンプル画像のサンプル年齢ラベルを得るステップ;及び
前記サンプル画像及び前記サンプル画像のサンプル年齢ラベルを前記サンプル画像セットとして決定するステップを含む、方法。
【請求項8】
請求項
7に記載の方法であって、
前記サンプル画像を顔検出モデルに入力し、前記サンプル画像における顔位置合わせ点を出力してもらうステップ;及び
前記顔位置合わせ点に基づいてアフィン変換により前記サンプル画像に対してマッティングを行ってアライメント後のサンプル画像を得るステップをさらに含む、方法。
【請求項9】
請求項
6に記載の方法であって、
前記条件生成ネットワーク層はさらに、アテンションマップを出力するために用いられ、前記アテンションマップは前記サンプル画像における画素点に対応する前記テクスチャー差異の重み係数を示すために用いられ、
前記テクスチャー合成ネットワーク層を呼び出して前記テクスチャー差異マップと前記サンプル画像との重ね合わせを行って前記予測顔画像を得るステップは、
前記テクスチャー合成ネットワーク層を呼び出して前記アテンションマップに基づいて前記テクスチャー差異マップと前記サンプル画像との重ね合わせを行って前記予測顔画像を得るステップを含む、方法。
【請求項10】
顔画像を処理する装置であって、
第一顔画像を表示するための取得モジュール;
年齢変更モデルを呼び出して前記第一顔画像の指定年齢下のテクスチャー差異マップを予測するための予測モジュールであって、前記テクスチャー差異マップは前記第一顔画像における顔テクスチャーと前記指定年齢の顔テクスチャーとの間のテクスチャー差異を示すために用いられる、予測モジュール;及び
前記テクスチャー差異マップに基づいて前記第一顔画像に対して画像処理を行って第二顔画像を得るための第一処理モジュールであって、前記第二顔画像は前記第一顔画像における顔の前記指定年齢下の顔画像である、第一処理モジュールを含
み、
前記年齢変更モデルは条件生成ネットワーク層及びテクスチャー合成ネットワーク層を含み、
前記年齢変更モデルを呼び出して前記第一顔画像の指定年齢下のテクスチャー差異マップを予測することは、
前記条件生成ネットワーク層を呼び出して前記指定年齢に基づいて前記第一顔画像に対して予測を行って前記テクスチャー差異マップを出力することを含み、
前記テクスチャー差異マップに基づいて前記第一顔画像に対して画像処理を行って第二顔画像を得ることは、
前記テクスチャー合成ネットワーク層を呼び出して前記テクスチャー差異マップと前記第一顔画像との重ね合わせを行って前記第二顔画像を得ることを含み、
前記年齢変更モデルは変形ネットワーク層をさらに含み、
前記装置は、
前記変形ネットワーク層を呼び出して前記第二顔画像における顔に対して変形処理を行うための第二処理モジュールをさらに含む、装置。
【請求項11】
年齢変更モデルを訓練する装置であって、
サンプル画像セットを得るための取得モジュールであって、前記サンプル画像セットはサンプル画像及び前記サンプル画像のサンプル年齢ラベルを含む、取得モジュール;
指定年齢を決定するための第一決定モジュールであって、前記指定年齢はランダム年齢又は前記サンプル年齢ラベルである、第一決定モジュール;
敵対的生成ネットワークにおける生成器を呼び出して前記指定年齢に基づいて前記サンプル画像
に対して予測を行って予測顔画像を得るための予測モジュール;
前記敵対的生成ネットワークにおける識別器を呼び出して前記予測顔画像の敵対損失を計算するための第一計算モジュールであって、前記敵対損失は前記予測顔画像が真実顔画像であるかの損失を表すために用いられる、第一計算モジュール;
年齢予測モデルを呼び出して前記予測顔画像の予測年齢を予測し、前記予測年齢と前記指定年齢との間の年齢損失を計算するための第二計算モジュール;
前記敵対損失及び前記年齢損失に基づいて前記生成器を訓練するための訓練モジュール;及び
訓練終了条件が満足されるときに、前記生成器を年齢変更モデルとして決定するための第二決定モジュールを含
み、
前記生成器は条件生成ネットワーク層及びテクスチャー合成ネットワーク層を含み、
前記敵対的生成ネットワークにおける生成器を呼び出して前記指定年齢に基づいて前記サンプル画像に対して予測を行って予測顔画像を得ることは、
前記条件生成ネットワーク層を呼び出して前記指定年齢に基づいて前記サンプル画像に対して予測を行ってテクスチャー差異マップを出力することであって、前記テクスチャー差異マップは前記サンプル画像における顔と前記指定年齢の顔とのテクスチャー差異を示すために用いられる、こと;及び
前記テクスチャー合成ネットワーク層を呼び出して前記テクスチャー差異マップと前記サンプル画像との重ね合わせを行って前記予測顔画像を得ることを含み、
前記生成器は変形ネットワーク層をさらに含み、
前記訓練モジュールはさらに、
前記変形ネットワーク層を呼び出して前記予測顔画像における顔に対して変形処理を行うために用いられる、装置。
【請求項12】
処理器と、前記処理
器に接続される記憶器と、を含むコンピュータ装置であって、
前記記憶器にはコンピュータプログラムが記憶されており、前記処理器は前記コンピュータプログラムを実行することで、請求項1乃至
5のうちの何れか1つに記載の方法
、又は、請求項
6乃至
9のうちの何れか1つに記載の方法
を実行させるように構成される、コンピュータ装置。
【請求項13】
コンピュータに、請求項1乃至
5のうちの何れか1つに記載の方法
、又は、請求項
6乃至
9のうちの何れか1つに記載の方法
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、2020年11月02日に中国専利局に出願した、出願番号が202011203504.5、発明の名称が「顔画像の処理方法、表示方法、装置及び機器」である中国特許出願に基づく優先権を主張するものであり、その全内容を参照によりここに援用する。
【0002】
本出願は、画像処理の技術分野に関し、特に、顔画像の処理方法、表示方法、装置及びコンピュータプログラムに関する。
【背景技術】
【0003】
機械学習技術が成熟し続けるにつれて、機械学習技術に基づくサービスの種類が益々多くなっている。例えば、コンピュータ装置が機械学習技術によって第一顔(人間の顔)画像を処理して二顔画像を取得可能である。そのうち、第一顔画像における顔に対応する第一年齢は第二顔画像における顔に対応する第二年齢とは異なるが、両者は同じアイデンティティ(ID)に対応する。
【0004】
コンピュータ装置は通常、入力される第一顔画像及びユーザの顔年齢変更操作に基づいて、機械学習モデルにより該第一顔画像を処理して第二顔画像を得る。そのうち、該顔年齢変更操作は、コンピュータ装置が第二顔画像における顔を若くするか、又は、老いるようにすることを指示するために用いられる。
【0005】
しかし、上述の方法で顔画像を処理するときに、単純に顔画像を若返らせたり顔画像を老化させたりすることしかできない。よって、年齢次元で顔画像を処理するときに柔軟性及び正確度は比較的低い。
【発明の概要】
【発明が解決しようとする課題】
【0006】
本出願は、年齢次元で顔画像を処理するときの柔軟性及び正確度を向上させることができる顔画像の処理方法、表示方法、装置及びコンピュータプログラムを提供することを課題とする。
【課題を解決するための手段】
【0007】
本出願の一側面によれば、顔画像の処理方法が提供され、前記方法は、
第一顔画像を取得し;
年齢変更モデルを呼び出して前記第一顔画像の指定(所定)年齢下のテクスチャー(紋理(texture))差異マップを予測し、前記テクスチャー差異マップは前記第一顔画像における顔テクスチャーと、前記指定年齢の顔テクスチャーとの間のテクスチャー差異(テクスチャーの差)を反映する(示す)ために用いられ;
前記テクスチャー差異マップに基づいて前記第一顔画像に対して画像処理を行って第二顔画像を取得し、前記第二顔画像は前記第一顔画像における顔の前記指定年齢下の顔画像であり;及び
前記第二顔画像を出力するステップを含む。
【0008】
本出願のもう1つの側面によれば、顔画像の表示方法が提供され、前記方法は、
第一顔画像及び年齢変更コントロールを表示し、前記年齢変更コントロールは指定年齢を入力するためのコントロールであり;
前記年齢変更コントロールに対してのトリガー操作に応じて、年齢変更モデルを呼び出して前記トリガー操作に対応する前記指定年齢に基づいて前記第一顔画像を処理して第二顔画像を取得し、前記第二顔画像は前記第一顔画像における顔の前記指定年齢下の顔画像であり;及び
前記第二顔画像を表示するステップを含む。
【0009】
本出願のもう1つの側面によれば、年齢変更モデルの訓練方法が提供され、前記方法は、
サンプル画像セットを取得し、前記サンプル画像セットはサンプル画像及び前記サンプル画像のサンプル年齢ラベルを含み;
指定年齢を決定し、前記指定年齢はランダム年齢又は前記サンプル年齢ラベルであり;
敵対的生成ネットワークにおける生成器を呼び出して前記指定年齢に基づいて前記サンプル画像対して予測を行って予測顔画像を取得し;
前記敵対的生成ネットワークにおける識別器を呼び出して前記予測顔画像の敵対損失を計算し、前記敵対損失は前記予測顔画像が真実顔画像(真の顔画像)であるかの損失を表すために用いられ;
年齢予測モデルを呼び出して前記予測顔画像の予測年齢を予測し、前記予測年齢と前記指定年齢との間の年齢損失を計算し;
前記敵対損失及び前記年齢損失に基づいて前記生成器を訓練し;及び
訓練終了条件が満足されるときに、前記生成器を年齢変更モデルとして決定するステップを含む。
【0010】
本出願のもう1つの側面によれば、顔画像の処理装置が提供され、前記装置は、
第一顔画像を得るための取得モジュール;
年齢変更モデルを呼び出して前記第一顔画像の指定年齢下のテクスチャー差異マップを予測するための予測モジュールであって、前記テクスチャー差異マップは前記第一顔画像における顔テクスチャーと、前記指定年齢の顔テクスチャーとの間のテクスチャー差異を反映するために用いられる、予測モジュール;
前記テクスチャー差異マップに基づいて前記第一顔画像に対して画像処理を行って第二顔画像を得るための第一処理モジュールであって、前記第二顔画像は前記第一顔画像における顔の前記指定年齢下の顔画像である、第一処理モジュールを含む。
【0011】
オプションとして、前記年齢変更モデルは条件生成ネットワーク層及びテクスチャー合成ネットワーク層を含み、
前記予測モジュールは、前記条件生成ネットワーク層を呼び出して前記指定年齢に基づいて前記第一顔画像に対して予測を行い、テクスチャー差異マップを出力するために用いられ、前記テクスチャー差異マップは前記第一顔画像における顔テクスチャーと、前記指定年齢の顔テクスチャーとの間のテクスチャー差異を反映するために用いられ、
前記第一処理モジュールは、于前記テクスチャー合成ネットワーク層を呼び出して前記テクスチャー差異マップと前記第一顔画像との重ね合わせを行い、前記第二顔画像を得るために用いられる。
【0012】
オプションとして、前記条件生成ネットワーク層はさらに、アテンションマップを出力するために用いられ、前記アテンションマップは前記第一顔画像における画素点に対応する前記テクスチャー差異の重み係数を反映するために用いられ、
前記第一処理モジュールは、前記テクスチャー合成ネットワーク層を呼び出して前記アテンションマップに基づいて前記テクスチャー差異マップと前記第一顔画像との重ね合わせを行い、前記第二顔画像を得るために用いられる。
【0013】
オプションとして、前記年齢変更モデルはさらに、変形ネットワーク層を含み、
前記装置はさらに、前記変形ネットワーク層を呼び出して前記第二顔画像における顔に対して変形処理を行うための第二処理モジュールを含む。
【0014】
オプションとして、前記条件生成ネットワーク層はさらに、変形情報マップを出力するために用いられ、前記変形情報マップは前記第一顔画像における顔と、前記指定年齢の顔との形状変化(顔形状変化)を予測するために用いられ、
前記第二処理モジュールは、前記変形ネットワーク層を呼び出して前記変形情報マップに基づいて前記第二顔画像における顔に対して変形処理を行うために用いられる。
【0015】
オプションとして、前記変形情報マップは画素点の第一方向及び第二方向上の対応する変位情報を含み、前記第一方向及び前記第二方向はは互いに垂直でありであり、
前記第二処理モジュールは、前記変形ネットワーク層を呼び出して前記第一方向及び前記第二方向上の前記変位情報に基づいて前記第二顔画像における前記画素点に対して双線形変位を行うために用いられる。
【0016】
オプションとして、前記装置はさらに、
前記第二顔画像に対して画像語義分割を行って前記第二顔画像における髪領域を得るための第三処理モジュール;
前記髪領域における画素点のオリジナル色値に基づいて、マッピングにより、前記髪領域における画素点の前記指定年齢下の対応するターゲット色値を計算するための計算モジュール;及び
前記髪領域における画素点の前記オリジナル色値を前記ターゲット色値で置換するための置換モジュールを含む。
【0017】
オプションとして、前記装置はさらに、
前記第一顔画像を顔検出モデルに入力して前記第一顔画像における顔位置合わせ点(registration point)を出力してもらうために用いられる第四処理モジュール;及び
前記顔位置合わせ点に基づいてアフィン変換により前記第一顔画像に対してマッティング(matting)を行ってアライメント後の第一顔画像を得るための第五処理モジュールを含む。
【0018】
オプションとして、前記装置はさらに、訓練モジュールを含み、前記年齢変更モデルは前記訓練モジュールを採用して訓練することで取得され、
前記訓練モジュールは、
サンプル画像セットを取得し、前記サンプル画像セットはサンプル画像及び前記サンプル画像のサンプル年齢ラベルを含み;
指定年齢を決定し、前記指定年齢はランダム年齢又は前記サンプル年齢ラベルであり;
敵対的生成ネットワークにおける生成器を呼び出して前記指定年齢に基づいて前記サンプル画像対して予測を行って予測顔画像を取得し;
前記敵対的生成ネットワークにおける識別器を呼び出して前記予測顔画像の敵対損失を計算し、前記敵対損失は前記予測顔画像が真実顔画像であるかの損失を表すために用いられ;
年齢予測モデルを呼び出して前記予測顔画像の予測年齢を予測し、前記予測年齢と前記指定年齢との間の年齢損失を計算し;
前記敵対損失及び前記年齢損失に基づいて前記生成器を訓練し;及び
訓練終了条件が満足されるときに、前記生成器を前記年齢変更モデルとして決定するために用いられる。
【0019】
オプションとして、前記訓練モジュールは、
前記年齢予測モデルを呼び出して前記サンプル画像に対して年齢予測を行って前記サンプル画像のサンプル年齢ラベルを取得し;及び
前記サンプル画像及び前記サンプル画像のサンプル年齢ラベルを前記サンプル画像セットとして決定するために用いられる。
【0020】
オプションとして、前記訓練モジュールは、
前記サンプル画像を顔検出モデルに入力して前記サンプル画像における顔位置合わせ点を出力してもらい;及び
前記顔位置合わせ点に基づいてアフィン変換により前記サンプル画像に対してマッティングを行ってアライメント後のサンプル画像を取得するために用いられる。
【0021】
オプションとして、前記生成器は条件生成ネットワーク層及びテクスチャー合成ネットワーク層を含み、
前記訓練モジュールは、
前記条件生成ネットワーク層を呼び出して前記指定年齢に基づいて前記サンプル画像対して予測を行い、前記テクスチャー差異マップを出力し、前記テクスチャー差異マップは前記サンプル画像における顔と、前記指定年齢の顔とのテクスチャー差異を反映するために用いられ;及び
前記テクスチャー合成ネットワーク層を呼び出して前記テクスチャー差異マップと前記サンプル画像との重ね合わせを行い、前記予測顔画像を得るために用いられる。
【0022】
オプションとして、前記条件生成ネットワーク層はさらに、アテンションマップを出力するために用いられ、前記アテンションマップは前記サンプル画像における画素点に対応する前記テクスチャー差異の重み係数を反映するために用いられ、
前記訓練モジュールは、前記テクスチャー合成ネットワーク層を呼び出して前記アテンションマップに基づいて前記テクスチャー差異マップと前記サンプル画像との重ね合わせを行い、前記予測顔画像を得るために用いられる。
【0023】
オプションとして、前記生成器はさらに、変形ネットワーク層を含み、
前記訓練モジュールは、前記変形ネットワーク層を呼び出して前記予測顔画像における顔に対して変形処理を行うために用いられる。
【0024】
オプションとして、前記条件生成ネットワーク層はさらに、変形情報マップを出力するために用いられ、前記変形情報マップは前記サンプル画像における顔と、前記指定年齢の顔との形状変化を予測するために用いられ、
前記訓練モジュールは、前記変形ネットワーク層を呼び出して前記変形情報マップに基づいて前記予測顔画像における顔に対して変形処理を行うために用いられる。
【0025】
オプションとして、前記変形情報マップは画素点の第一方向及び第二方向上の対応する変位情報を含み、前記第一方向及び前記第二方向は互いに垂直であり、
前記訓練モジュールは、前記変形ネットワーク層を呼び出して前記第一方向及び前記第二方向上の前記変位情報に基づいて前記予測顔画像における前記画素点に対して双線形変位を行うために用いられる。
【0026】
本出願のもう1つの側面によれば、顔画像の表示装置が提供され、前記装置は、
第一顔画像及び年齢変更コントロールを表示するための表示モジュールであって、前記年齢変更コントロールは指定年齢を入力するためのコントロールである、表示モジュール;及び
前記年齢変更コントロールに対してのトリガー操作に応じて、年齢変更モデルを呼び出して前記トリガー操作に対応する前記指定年齢に基づいて前記第一顔画像を処理して第二顔画像を取得するための処理モジュールであって、前記第二顔画像は前記第一顔画像における顔の前記指定年齢下の顔画像である、処理モジュールを含み、
表示モジュールは前記第二顔画像を表示するために用いられる。
【0027】
オプションとして、前記表示モジュールは前記第二顔画像及び前記指定年齢を表示するために用いられる。
【0028】
本出願のもう1つの側面によれば、年齢変更モデルの訓練装置が提供され、前記装置は、
サンプル画像セットを取得するための取得モジュールであって、前記サンプル画像セットはサンプル画像及び前記サンプル画像のサンプル年齢ラベルを含む、取得モジュール;
指定年齢を決定するための第一決定モジュールであって、前記指定年齢はランダム年齢又は前記サンプル年齢ラベルである、第一決定モジュール;
敵対的生成ネットワークにおける生成器を呼び出して前記指定年齢に基づいて前記サンプル画像対して予測を行って予測顔画像を得るための予測モジュール;
前記敵対的生成ネットワークにおける識別器を呼び出して前記予測顔画像の敵対損失を計算するための第一計算モジュールであって、前記敵対損失は前記予測顔画像が真実顔画像であるかの損失を表すために用いられる、第一計算モジュール;
年齢予測モデルを呼び出して前記予測顔画像の予測年齢を予測し、前記予測年齢と前記指定年齢との間の年齢損失を計算するために用いられる第二計算モジュール;
前記敵対損失及び前記年齢損失に基づいて前記生成器を訓練するための訓練モジュール;及び
訓練終了条件が満足されるときに、前記生成器を年齢変更モデルとして決定するための第二決定モジュールを含む。
【0029】
本出願のもう1つの側面によれば、コンピュータ装置が提供され、前記コンピュータ装置は処理器及び記憶器を含み、前記記憶器には少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットが記憶されており、前記少なくとも1つの命令、前記少なくとも1つのプログラム、前記コードセット又は命令セットは前記処理器によってロードされ実行されることで上述の側面に記載の顔画像の処理方法、顔画像の表示方法又は年齢変更モデルの訓練方法を実現する。
【0030】
本出願のもう1つの側面によれば、コンピュータ可読記憶媒体が提供され、前記コンピュータ可読記憶媒体には少なくとも1つのプログラムコードが記憶されており、前記プログラムコードは処理器によってロードされ実行されることで上述の側面に記載の顔画像の処理方法、顔画像の表示方法又は年齢変更モデルの訓練方法を実現する。
【0031】
本出願のもう1つの側面によれば、コンピュータプログラムプロダクト又はコンピュータプログラムが提供され、該コンピュータプログラムプロダクト又はコンピュータプログラムはコンピュータ命令を含み、該コンピュータ命令はコンピュータ可読記憶媒体に記載されている。コンピュータ装置の処理器はコンピュータ可読記憶媒体から該コンピュータ命令を読み取り、該処理器は該コンピュータ命令を実行することで、該コンピュータ装置に、上述の側面の各種の実現可能な形態において提供される顔画像の処理方法、顔画像の表示方法又は年齢変更モデルの訓練方法を実行させる。
【発明の効果】
【0032】
本出願の実施例により提供される技術案は、少なくとも、次のような有利な効果を奏する。
【0033】
年齢変更モデルにより第一顔画像を処理することで指定年齢に基づいて第二顔画像を生成して出力することができる。該第二顔画像は第一顔画像における顔の該指定年齢下の顔画像である。つまり、ユーザ自己定義の指定年齢又はシステム事前設定の指定年齢に基づいて顔画像を変えることができるため、年齢次元で顔画像を処理するときの柔軟性及び正確度を向上させることができ、また、すべての年齢層向けのクリアで自然かつスムーズな遷移動画を実現することもできる。
【図面の簡単な説明】
【0034】
【
図1】本出願の1つの例示的な実施例により提供される年齢変更モデルの構成を示す図である。
【
図2】本出願の実施例により提供される顔画像の処理方法のフローチャートである。
【
図3】本出願の実施例により提供される顔画像の処理方法のフローチャートである。
【
図4】本出願の実施例により提供される指定年齢に基づいて第一顔画像を処理する実現プロセスを示す図である。
【
図5】本出願の実施例により提供される第一顔画像を処理するプロセスを示す図である。
【
図6】本出願の実施例により提供される顔画像の表示方法のフローチャートである。
【
図7】本出願の実施例により提供される第一顔画像及び年齢変更コントロールを表示するユーザインターフェースを示す図である。
【
図8】本出願の実施例により提供される第一顔画像及び年齢変更コントロールを表示するユーザインターフェースを示す図である。
【
図9】本出願の実施例により提供される第二顔画像を示す図である。
【
図10】本出願の実施例により提供される第二顔画像を表示するためのユーザインターフェースを示す図である。
【
図11】本出願の実施例により提供される年齢変更モデルの訓練方法のフローチャートである。
【
図12】本出願の実施例により提供されるもう1つの年齢変更モデルの訓練方法のフローチャートである。
【
図13】本出願の実施例により提供されるサンプル画像に対して予測を行う実現プロセスを示す図である。
【
図14】本出願の実施例により提供される顔画像に対して前処理を行う実現プロセスを示す図である。
【
図15】本出願の実施例により提供される顔画像に対して年齢の変更を行う実現プロセスを示す図である。
【
図16】本出願の実施例により提供される顔画像の処理装置の構成を示す図である。
【
図17】本出願の実施例により提供される顔画像の処理装置の構成を示す図である。
【
図18】本出願の実施例により提供される顔画像の処理装置の構成を示す図である。
【
図19】本出願の実施例により提供される顔画像の処理装置の構成を示す図である。
【
図20】本出願の実施例により提供される顔画像の処理装置の構成を示す図である。
【
図21】本出願の実施例により提供される顔画像の表示装置の構成を示す図である。
【
図22】本出願の実施例により提供される年齢変更モデルの訓練装置の構成を示す図である。
【
図23】本出願の実施例により提供されるもう1つの年齢変更モデルの訓練装置の構成を示す図である。
【
図24】本出願の実施例により提供される端末の構成を示す図である。
【発明を実施するための形態】
【0035】
まず、本出願の実施例に係る用語(名詞)について紹介する。
【0036】
敵対的生成ネットワーク:敵対的生成ネットワーク(Generative Adversarial Networks、GAN)は通常、1つの生成器(Generator、G)及び1つの識別器(Discriminator、D)を含む。生成器と識別器とが互いに争うことで教師無し学習を実現する。そのうち、生成器は潜在空間(latent space)からサンプルを入力としてランダムにとり、その出力する結果は訓練セットにおける真実サンプル(真のサンプル又は実際のサンプルともいう)をできるだけ模倣する必要がある。識別器の入力は真実サンプル又は生成器の出力であり、その目的は生成器の出力を入力サンプルとし、それを、真実サンプルを含む全部の入力サンプルのうちから可能の限り識別することにある。一方、生成器は識別器をできるだけ騙す必要がある。生成器と識別器との間の敵対関係を構成することでパラメータを継続的に調整し、最終的に本物と見分けがつかないピクチャを生成し、モデルの訓練を完了する。
【0037】
画像語義分割(セマンティックセグメンテーション):画像語義分割はコンピュータビジョンの非常に重要な分野であり、入力画像を画素レベルで識別し、画像内の各画素点(ピクセル)のためにその属する対象カテゴリ(クラス)をラベル付けすることを指す。例えば、ニューラルネットワークにより、顔を含むピクチャの中の各要素(髪、顔、五官、メガネ、首、衣服、背景などを含む)を区別することである。
【0038】
色ルックアップテーブル:色ルックアップテーブル(Look Up Table、LUT)により、実際に取得する色に基づいてその対応するもう1つの色を見つけることができる。
【0039】
人工知能クラウドサービス:いわゆる人工知能クラウドサービスであり、一般的にAIaaS(AI as a Service)とも称される。これは現在、主流の人工知能プラットフォームのサービス方式である。具体的には、AIaaSプラットフォームは幾つかの一般的なAIサービスを分割し、クラウド上で独立した又はパッケージ化されたサービスを提供する。このようなサービスモデルはAIをテーマにした1つのモールを開くのと似ており、すべての開発者はアプリケーションプログラムインターフェース(Application Programming Interface、API)の方式でプラットフォームにより提供される1つ又は複数の人工知能サービス(例えば、指定年齢に基づく顔画像処理)にアクセスして使用でき、一部の上級開発者はさらに、プラットフォームにより提供されるAIフレームワーク及びAIインフラストラクチャを使用して独自のクラウド人工知能サービスをデプロイ(配置)及びメンテナンスすることもできる。
【0040】
図1は本出願の1つの例示的な実施例により提供される年齢変更モデル101の構成を示す図である。
図1に示すように、年齢変更モデル101は条件生成ネットワーク層1011、テクスチャー合成ネットワーク層1012及び変形ネットワーク層1013を含む。
【0041】
端末又はクライアントは条件生成ネットワーク層1011により、入力される第一顔画像104及び指定年齢に基づいて、テクスチャー差異マップ105、アテンションマップ106及び変形情報マップ107を出力できる。該端末又はクライアントは顔画像が指定年齢に基づいて変化する機能を提供するために用いられ、該年齢変更モデル101は該端末又はクライアントが呼び出すことができる。該年齢変更モデル101は端末に設けられても良く、サーバーに設けられても良く、又は、クラウドサービスとして実装されても良い。端末及びサーバーはコンピュータ装置と総称され得る。
【0042】
該テクスチャー差異マップ105は第一顔画像104における顔テクスチャーと、指定年齢の顔テクスチャーとのテクスチャー差異を反映するために用いられ、該アテンションマップ106は第一顔画像104における画素点に対応する該テクスチャー差異の重み係数を反映するために用いられ、該変形情報マップ107は第一顔画像104における画素点の第一方向及び第二方向上の対応する変位情報を含み、第一方向及び第二方向は互いに垂直である(例えば、水平及び垂直方向である)。その後、端末又はクライアントはテクスチャー合成ネットワーク層1012を呼び出してアテンションマップ106に基づいてテクスチャー差異マップ105と第一顔画像104との重ね合わせを行うことで第二顔画像を取得する。そして、変形ネットワーク層1013を呼び出して第一方向及び第二方向上の変位情報に基づいて第二顔画像における画素点に対して双線形変位を行って第二顔画像における顔に対して変形を行うことで、出力する第二顔画像108を得る。端末又はクライアントは異なる指定年齢に応じて、第一顔画像104に基づいて第一顔画像104の異なる指定年齢下の顔画像109を出力できる。
【0043】
オプションとして、端末又はクライアントは第一顔画像104を年齢変更モデル101に入力する前に、さらに第一顔画像104に対して前処理を行っても良い。該前処理は第一顔画像104を顔検出モデルに入力して第一顔画像における顔位置合わせ点を出力してもらうことを含む。そして、該顔位置合わせ点に基づいてアフィン変換により第一顔画像104に対してマッティングを行うことでアライメント後の第一顔画像を取得する。端末又はクライアントはさらに、出力する第二顔画像108に対して画像語義分割を行うことで、出力する第二顔画像における髪領域を取得する。そして、髪領域における画素点のオリジナル色値に基づいて、マッピングにより、髪領域における画素点の該指定年齢下の対応するターゲット色値を計算し、また、該髪領域における画素点のオリジナル色値をターゲット色値で置換することで、出力する第二顔画像108に基づいて髪色が動的に変えられる第二顔画像を取得する。条件生成ネットワーク層1011により第一顔画像104の特徴を抽出するときに、端末又はクライアントは指定年齢を、条件生成ネットワーク層1011における複数の特徴抽出層により抽出される特徴に融合できる。
【0044】
年齢変更モデル101及び識別器102は敵対的生成ネットワークを構成でき、このときに、該年齢変更モデル101は敵対的生成ネットワークにおける生成器と呼ばれても良い。該生成器を訓練するときに、コンピュータ装置はサンプル画像を取得し、また、指定年齢をランダムに生成し、又は、年齢予測モデル103により予測されるサンプル画像に対応する年齢を指定年齢とする。その後、生成器(年齢変更モデル101)を呼び出して該指定年齢に基づいてサンプル画像に対して予測を行うことで予測顔画像を取得し、該予測顔画像はサンプル画像内の顔の該指定年齢下の顔画像である。なお、指定年齢に基づいてサンプル画像に対応する予測顔画像を予測するプロセスについては上述の年齢変更モデル101により第二顔画像108を出力するプロセスを参照でき、ここではその詳しい説明を省略する。その後、コンピュータ装置は識別器102を呼び出して予測顔画像の敵対損失を計算し、該敵対損失は予測顔画像が真実顔画像であるかの損失を表すために用いられる。そして、年齢予測モデル103を呼び出して予測顔画像の予測年齢を予測し、予測年齢と指定年齢との間の年齢損失を計算する。それにより、該敵対損失及び年齢損失に基づいて生成器を訓練する。そして、訓練終了条件が満足される(例えば、生成器が安定して収束している)ときに、該生成器を年齢変更モデル101として決定する。そのうち、該コンピュータ装置は年齢変更モデル101、識別器102及び年齢予測モデル103を呼び出すことができる。上述のクライアントは該コンピュータ装置にインストールすることができ、該コンピュータ装置は訓練終了後の年齢予測モデル103を該クライアントに送信でき、又は、クライアントは該コンピュータ装置により年齢変更モデル101を呼び出すことができる。オプションとして、コンピュータ装置はサンプル画像を生成器に入力する前に、さらにサンプル画像に対して前処理を行っても良い。該前処理はサンプル画像を顔検出モデルに入力してサンプル画像における顔位置合わせ点を出力してもらうことを含む。そして、該顔位置合わせ点に基づいてアフィン変換によりサンプル画像に対してマッティングを行うことでアライメント後のサンプル画像を得る。サンプル画像に対しての該前処理は、年齢変更モデル101を用いて第一顔画像104を処理する前に第一顔画像104に対して行う前処理と同じであり、そのため、モデルの出力の正確度を向上させ、訓練の難易度を低減することができる。
【0045】
年齢変更モデルにより第一顔画像を処理することで指定年齢に基づいて第二顔画像を生成できる。該第二顔画像は第一顔画像における顔の該指定年齢下の顔画像である。つまち、ユーザ自己定義の指定年齢又はシステム事前設定の指定年齢に基づいて顔画像を変えることができるため、年齢次元で顔画像を処理するときの柔軟性及び正確度を向上させることができる。
【0046】
図2は本出願の実施例により提供される顔画像の処理方法のフローチャートである。該方法はコンピュータ装置又はコンピュータ装置上のクライアントに適用できる。
図2に示すように、該方法は以下のようなステップを含む。
【0047】
ステップ201:第一顔画像を得る。
【0048】
該第一顔画像は写真又はビデオにおけるビデオフレームに由来する。該第一顔画像は顔の情報を含む任意の画像であっても良い。オプションとして、該第一顔画像には顔の五官が含まれ、該第一顔画像の解像度は720P、1080P、4Kなどである。該第一顔画像はユーザがクライアントでアップロードする写真又はアップロードするビデオにおけるビデオフレームであり、又は、クライアントの所在するコンピュータ装置が撮影する写真又は撮像するビデオにおけるビデオフレームであり、又は、クライアントが他のコンピュータ装置により取得する写真又はビデオにおけるビデオフレームである。
【0049】
該クライアントは指定年齢に基づいて顔画像を処理する機能を提供するために用いられる。例示的に、該クライアントはショートビデオクライアント、ソングクライアント、生放送クライアント、ソーシャルクライアント、ゲームクライアント、アプレット及びウェブクライアントである。ユーザは該クライアントをインストールすることで該機能を使用し、又は、該クライアントに対応するウェブサイトにアクセスすることで該機能を使用する。
【0050】
クライアントは撮影することで第一顔画像を取得し、又は、フォトアルバムにおける写真又はビデオを読み取ることで第一顔画像を取得し、又は、他の装置により伝送される第一顔画像を受信する。オプションとして、クライアントは第一顔画像を得た後に第一顔画像を表示する。
【0051】
ステップ202:年齢変更モデルを呼び出して第一顔画像の指定年齢下のテクスチャー差異マップを予測する。
【0052】
該指定年齢はクライアントがユーザの指定年齢の入力操作に基づいて決定して良く、又は、クライアントが生成して良い。オプションとして、クライアントは、ユーザの、第一顔画像を表示するユーザインターフェースにおいて表示される年齢変更コントロールに対してのトリガー操作に基づいて該指定年齢を取得し、そして、年齢変更モデルを呼び出して指定年齢に基づいて該第一顔画像を処理する。
【0053】
該テクスチャー差異マップは第一顔画像における顔テクスチャーと、指定年齢の顔テクスチャーとのテクスチャー差異を反映するために用いられる。該テクスチャー差異は少なくとも、顔肌質特徴差異、髪色特徴差異及び髭特徴差異を含む。指定年齢がサンプル画像における顔に対応する年齢よりも小さいときに、該顔肌質特徴差異は顔の肌質をより滑らかかつ繊細にするために用いられ、該髪色特徴差異は髪色を黒くするために用いられ、該髭特徴差異は髭を消すために用いられる。指定年齢がサンプル画像における顔に対応する年齢よりも大きいときに、該顔肌質特徴差異は顔の皺を多くするために用いられ、該髪色特徴差異は髪色を白くするために用いられ、該髭特徴差異は髭を白くするために用いられる。例えば、該第一顔画像における顔に対応する年齢が21歳、指定年齢が50歳である場合、該テクスチャー差異マップは皺が増加することに対応するテクスチャー情報、髪色が白くなることに対応するテクスチャー情報、及び髭が白くなることに対応するテクスチャー情報を含む。
【0054】
ステップ203:テクスチャー差異マップに基づいて第一顔画像に対して画像処理を行って第二顔画像を得る。
【0055】
該第二顔画像は第一顔画像における顔の該指定年齢下の顔画像である。第一顔画像における顔に対応する年齢は該指定年齢同じであり又は異なる。例示的に、ユーザはクライアントで自分の21歳のときの写真を1枚アップロードし、また、年齢変更コントロールにより50歳を入力する。クライアントは年齢変更モデルを呼び出して該21歳のときの写真を処理することで、該21歳のときの写真の該ユーザ51の歳のときの対応する写真を取得する。
【0056】
オプションとして、該第二顔画像はクライアントが年齢変更モデルによりテクスチャー差異マップに基づいて第一顔画像に対して画像処理を行うことで取得するものである。クライアントはさらに、年齢変更モデルにより第一顔画像における顔と指定年齢の顔との形状変化を予測し、そして、該顔の形状変化に基づいて第一顔画像を処理することでより正確な第二顔画像を得る。例示的に、該年齢変更モデルは畳み込みニューラルネットワーク(Convolutional Neural Networks、CNN)に基づくものである。
【0057】
該年齢変更モデルはクライアントにデプロイされ、又は、該クライアントに接続されるコンピュータ装置にデプロイされる。該コンピュータ装置はサーバーであり、具体的には独立した物理サーバーであっても良く、複数の物理サーバーからなるサーバー群であっても良く、又は分散システムであっても良く、さらに、クラウドサービス、クラウドデータベース、クラウドコンピューティング、クラウド関数、クラウドストレージ、ネットワークサービス、クラウド通信、ミドルウェアサービス、ドメイン名サービス、セキュリティサービス、コンテンツ配信ネットワーク(Content Delivery Network、CDN)、ビッグデータ、人工知能プラットフォームなどの基本的なクラウドコンピューティングサービスを提供するクラウドサーバーであっても良い。該年齢変更モデルが該クライアントに接続されるコンピュータ装置にデプロイされるときに、クライアントはコンピュータ装置提供の、年齢変更モデルを呼び出すインターフェースにより、該年齢変更モデルを呼び出して指定年齢に基づいて該第一顔画像を処理する。あるいは、クライアントが第一顔画像及び指定年齢をコンピュータ装置に送信し、コンピュータ装置は年齢変更モデルを呼び出して指定年齢に基づいて第一顔画像を処理し、そして、取得した第二顔画像を該クライアントに送信する。
【0058】
ステップ204:第二顔画像を出力する。
【0059】
クライアントは第一顔画像を処理して第二顔画像を得た後に、該第二顔画像を出力でき、例えば、該第二顔画像を表示できる。オプションとして、クライアントは異なるユーザインターフェースにおいて第一顔画像及び第二顔画像を表示し、又は、同一のユーザインターフェースにおいて第一顔画像及び第二顔画像を表示する。例えば、クライアントは第一顔画像及び第二顔画像をユーザインターフェースの中の同一の表示領域に重ね合わせて表示し、該表示領域ではさらに、表示分割線が表示される。クライアントは該表示分割線の一方側に第一顔画像を表示し、他方側に第二顔画像を表示する。該表示分割線に対する移動操作に応じて、クライアントが該表示領域に表示する第一顔画像及び第二顔画像の表示面積は変化し得る。これにより、クライアントは第一顔画像と第二顔画像との間の差異を対比するためのユーザインターフェースの表示を実現できる。
【0060】
オプションとして、クライアントは第二顔画像を表示するときに指定年齢をさらに表示する。
【0061】
要約すれば、本出願の実施例により提供される方法では、年齢変更モデルにより第一顔画像を処理することで指定年齢に基づいて第二顔画像を生成及び表示である。該第二顔画像は第一顔画像における顔の該指定年齢下の顔画像である。つまり、ユーザ自己定義の指定年齢又はシステム事前設定の指定年齢に基づいて顔画像を変えることができるため、年齢次元で顔画像を処理するときの柔軟性及び正確度を向上させることができ、さらに、すべての年齢層向けのクリアで自然なスムーズな遷移動画を実現することができる。
【0062】
図3は本出願の実施例により提供されるもう1つの顔画像の処理方法のフローチャートである。該方法はコンピュータ装置又はコンピュータ装置上のクライアントに適用できる。
図3に示すように、該方法は以下のようなステップを含む。
【0063】
ステップ301:第一顔画像を得る。
【0064】
該第一顔画像は写真又はビデオにおけるビデオフレームに由来する。例えば、ユーザがクライアントでアップロードする写真又はアップロードするビデオの中のビデオフレームであり、又は、クライアントの所在するコンピュータ装置が撮影する写真又は撮像するビデオ内のビデオフレームであり、又は、クライアントが他のコンピュータ装置により取得する写真又はビデオにおけるビデオフレームである。該クライアントは顔画像を指定年齢に基づいて処理する機能を提供するために用いられる。
【0065】
ステップ302:年齢変更モデルを呼び出して指定年齢に基づいて第一顔画像に対して予測を行って第二顔画像を取得する。
【0066】
該第二顔画像は第一顔画像における顔の指定年齢下の顔画像である。クライアントは年齢変更モデルを呼び出して第一顔画像の指定年齢下のテクスチャー差異マップを予測し、そして、テクスチャー差異マップに基づいて第一顔画像に対して画像処理を行うことで第二顔画像を取得する。あるいは、クライアントは年齢変更モデルを呼び出して第一顔画像の指定年齢下のテクスチャー差異マップ、及び、第一顔画像における顔と指定年齢の顔との形状変化を予測し、そして、該テクスチャー差異マップ及び顔の形状変化に基づいて第一顔画像を処理することで該第二顔画像を得る。そのうち、該テクスチャー差異マップは第一顔画像における顔テクスチャーと、指定年齢の顔テクスチャーとのテクスチャー差異を反映するために用いられる。
【0067】
オプションとして、クライアントは第一顔画像を処理するときに、さらに、該第一顔画像に対して前処理を行うことができ、前処理は第一顔画像を顔検出モデルに入力して第一顔画像における顔位置合わせ点を出力してもらうことを含む。その後、顔位置合わせ点に基づいてアフィン変換により第一顔画像に対してマッティングを行ってアライメント後の第一顔画像を取得する。そのうち、該顔検出モデルは、該年齢変更モデルを訓練するときにサンプル画像に対して前処理を行うためのモデルと同じである。クライアントはwarpAffine関数(画像回転及び平行移動を実現するためのパブリック関数インターフェースである)を用いて、アフィン変換により第一顔画像に対してマッティングを行うことを実現する。そして、クライアント年齢変更モデルを呼び出して指定年齢に基づいてマッティング完了後の第一顔画像を処理することで、マッティング後の第一顔画像に対応する第二顔画像を取得する。その後、該第二顔画像に対して該アフィン変換の逆変換を行うことで、出力するための第二顔画像を取得する。
【0068】
該年齢変更モデルは効率的なネットワーク構造モジュール(例えば、MobileNet、CBAMモジュール)を統合し、かつモデル圧縮・プルーニング(枝刈り)技術及び最適化手法を採用して年齢変更モデルのパフォーマンスを最適化する。このようにして、年齢変更モデルが占有する記憶空間を減少させると同時に、年齢変更モデルが第一顔画像を処理する速度を向上させることができる。
【0069】
オプションとして、年齢変更モデルは条件生成ネットワーク層及びテクスチャー合成ネットワーク層を含む。該年齢変更モデルはさらに、変形ネットワーク層を含み得る。
図4に示すように、ステップ302の実現プロセスは以下のようなステップ3021乃至ステップ3023を含む。
【0070】
ステップ3021では、条件生成ネットワーク層を呼び出して指定年齢に基づいて第一顔画像に対して予測を行い、テクスチャー差異マップを出力する。
【0071】
該テクスチャー差異マップは第一顔画像における顔テクスチャーと、指定年齢の顔テクスチャーとのテクスチャー差異を反映するために用いられる。該テクスチャー差異は顔肌質特徴差異、髪色特徴差異及び髭特徴差異のうちの少なくとも1つを含む。条件生成ネットワーク層により第一顔画像の特徴を抽出して予測により該テクスチャー差異マップを得るプロセスでは、クライアントは指定年齢を、条件生成ネットワーク層における複数の特徴抽出層により抽出される特徴に融合できる。これにより、出力するテクスチャー差異の正確度を向上させることができる。
【0072】
ステップ3022では、テクスチャー合成ネットワーク層を呼び出してテクスチャー差異マップと第一顔画像との重ね合わせを行うことで第二顔画像を得る。
【0073】
オプションとして、条件生成ネットワーク層はさらに、アテンションマップを出力するために用いられ、アテンションマップは第一顔画像における画素点に対応するテクスチャー差異の重み係数を反映するために用いられる。クライアントはテクスチャー合成ネットワーク層を呼び出してアテンションマップに基づいてテクスチャー差異マップと第一顔画像との重ね合わせを行うことで第二顔画像を取得する。オプションとして、アテンションマップに基づいてテクスチャー差異マップとサンプル画像との重ね合わせを行うときに、テクスチャー差異マップにおける画素点、第一顔画像における画素点、第二顔画像における画素点、及びアテンションマップに基づいて決定される重み係数は、
【0074】
【数1】
を満足する。そのうち、I
RGBはテクスチャー差異マップにおける画素点であり、I
inは第一顔画像における画素点であり、I
outは第二顔画像における画素点であり、αはアテンションマップに基づいて決定される重み係数である。
【0075】
ステップ3023では、変形ネットワーク層を呼び出して第二顔画像における顔に対して変形処理を行う。
【0076】
オプションとして、条件生成ネットワーク層はさらに、変形情報マップを出力するために用いられ、該変形情報マップは第一顔画像における顔と指定年齢の顔との形状変化を予測するために用いられる。クライアントは変形ネットワーク層を呼び出して変形情報マップに基づいて第二顔画像における顔に対して変形処理を行うことができる。
【0077】
オプションとして、変形情報マップは画素点の第一方向及び第二方向上の対応する変位情報を含み。該第一方向及び第二方向は互いに垂直である。クライアントは変形ネットワーク層を呼び出して第一方向及び第二方向上の変位情報に基づいて第二顔画像における画素点に対して双線形変位を行うことで、第二顔画像に対しての変形処理を実現し得る。
【0078】
例示的に、第一顔画像はRGB画像であり、この場合、第一顔画像は3つのチャンネル(赤、緑及び青)を含む。条件生成ネットワーク層が第一顔画像に基づいて出力するテクスチャー差異マップも3つのチャンネル(赤、緑及び青)を含み、アテンションマップは1つのチャンネル(重み係数)を含み、変形情報マップは包括2つのチャンネル(第一方向変位情報及び第二方向変位情報)を含む。
【0079】
例示的に、
図5は本出願の実施例により提供される第一顔画像を処理するプロセスを示す図である。
図5に示すように、クライアントは年齢変更モデルにおける条件生成ネットワーク層を呼び出して指定年齢に基づいて第一顔画像501を処理することで、テクスチャー差異マップ502、変形情報マップ504及びアテンションマップを得ることができる。クライアントはテクスチャー合成ネットワーク層によりアテンションマップに基づいて第一顔画像501とテクスチャー差異マップ502との重ね合わせを行うことで、テクスチャーが変えられる第二顔画像503を取得できる。その後、変形ネットワーク層により、テクスチャーが変えられる第二顔画像503に対して変形情報マップ504に基づいて変形処理を行うことで、変形後の第二顔画像505を得ることができる。
【0080】
なお、クライアントは年齢変更モデルによって第一顔画像を処理することで、テクスチャーのみを変えて取得した第二顔画像を出力できる。あるいは、テクスチャーを変えること及び変形を行うことにより取得した第二顔画像を出力できる。
【0081】
ステップ303:第二顔画像における髪領域の色を処理する。
【0082】
該第二顔画像はテクスチャーを変えて取得した第二顔画像であり、又は、テクスチャーを変えること及び変形を行うことで取得した第二顔画像である。出力する第二顔画像における顔の髪色がよりリアルになるように確保するために、クライアントはさらに、第二顔画像における髪領域の色を処理できる。具体的には次のようなことが含まれる。
【0083】
第二顔画像に対して画像語義分割を行って第二顔画像における髪領域を得る。そのうち、クライアントは第二顔画像に対して画像語義分割を行うことで、該髪領域に対応する画像マスク(mask)を得ることができる。該画像マスクでは第二顔画像における髪領域の画素点の値が1であり、髪領域以外の領域の画素点の値が0である。該画像マスクと第二顔画像との乗算を行うことで該髪領域を取得できる。その後、クライアントは髪領域における画素点のオリジナル色値に基づいてマッピングにより髪領域における画素点の指定年齢下の対応するターゲット色値を計算し得る。そして、髪領域における画素点のオリジナル色値をターゲット色値で置換することで髪色置換後の第二顔画像を得ることができる。オプションとして、クライアントは条件が付く色ルックアップテーブル(Conditional LUT)により、オリジナル色値及び指定年齢に基づいてマッピングによりターゲット色値を計算することを実現する。該条件とは、異なる年齢について、オリジナル色値が異なるターゲット色値に対応することを指す。
【0084】
ステップ304:第二顔画像を出力する。
【0085】
クライアントは第二顔画像を出力する。例えば、クライアントは該第一顔画像及び年齢変更コントロールを表示するユーザインターフェースにおいて該第二顔画像を表示し、即ち、クライアントは同一のユーザインターフェースで該第一顔画像及び第二顔画像を表示する。あるいは、クライアントは異なるユーザインターフェースにおいて第一顔画像及び第二顔画像をそれぞれ表示する。オプションとして、クライアントは第二顔画像を表示するユーザインターフェースにおいて該第二顔画像に対応する指定年齢をさらに表示する。
【0086】
要約すると、本出願の実施例により提供される方法では、年齢変更モデルにより第一顔画像を処理することで指定年齢に基づいて第二顔画像を生成し表示できる。該第二顔画像は第一顔画像における顔の該指定年齢下の顔画像である。つまり、ユーザ自己定義の指定年齢又はシステム事前設定の指定年齢に基づいて顔画像を変えることができるため、年齢次元で顔画像を処理するときの柔軟性及び正確度を向上させることができる。
【0087】
また、第一顔画像に対してテクスチャー変化処理及び変形処理をそれぞれ行い、かつテクスチャー差異マップと、入力される原図との重ね合わせを行うことで、出力する顔画像の明晰度を維持できる。そして、テクスチャー変化処理及び変形処理後の顔画像に対して髪色処理をさらに行うことにより、最終出力の顔画像の髪色がよりリアルになるようにさせることで、顔画像の髪色が指定年齢とマッチするようにさせることができる。
【0088】
図6は本出願の実施例により提供される顔画像の表示方法のフローチャートである。該方法はコンピュータ装置又はコンピュータ装置上のクライアントに適用できる。
図6に示すように、該方法は次のようなステップを含む。
【0089】
ステップ601:第一顔画像及び年齢変更コントロールを表示する。
【0090】
該第一顔画像は写真又はビデオ中のビデオフレームに由来する。該第一顔画像は顔の情報を含む任意の画像であっても良い。例えば、ユーザがクライアントでアップロードする写真又はアップロードするビデオにおけるビデオフレームであり、又は、クライアントの所在するコンピュータ装置が撮影する写真又は撮像するビデオの中のビデオフレームであり、又は、クライアントが他のコンピュータ装置により取得する写真又はビデオにおけるビデオフレームである。該クライアントは顔画像を指定年齢に基づいて処理する機能を提供するために用いられる。
【0091】
該年齢変更コントロールは指定年齢を入力するためのコントロールである。例えば、該年齢変更コントロールは年齢入力枠を含み、該年齢コントロールは年齢選択枠を含み、又は、該年齢コントロールは年齢表示バー、及び、年齢表示バーに重ね合わせられる指定年齢の指示用の要素を含む。
【0092】
クライアントは同一のユーザインターフェースにおいて該第一顔画像及び年齢変更コントロールを表示する。該ユーザインターフェースは指定年齢に基づいて第一顔画像を処理する機能を提供するために用いられる。該ユーザインターフェースではさらに、画像アップロードコントロールが表示され、それは該第一顔画像をアップロードするために用いられる。
【0093】
例示的に、
図7は本出願の実施例により提供される第一顔画像及び年齢変更コントロールを表示するユーザインターフェースを示す図である。
図7に示すように、第一ユーザインターフェース701では、ユーザが画像アップロードボタン704にてアップロードした第一顔画像702が表示される。該第一ユーザインターフェース701はクライアントで顔画像を指定年齢に基づいて処理する機能を提供するためのユーザインターフェースである。該第一ユーザインターフェース701ではさらに、年齢入力枠703が表示される。年齢入力枠703に対する入力操作に応じて、クライアントは指定年齢を得ることができる。
【0094】
例示的に、
図8は本出願の実施例により提供される第一顔画像及び年齢変更コントロールを表示するもう1つのユーザインターフェースを示す図である。
図8に示すように、第二ユーザインターフェース801では、クライアントの所在するコンピュータ装置がリアルタイムで撮像したビデオ内のビデオフレーム802が表示され、該ビデオフレーム802は顔の画像を含む。該第二ユーザインターフェース801はクライアントにおいてリアルタイムで撮像したビデオを処理するためのユーザインターフェースである。クライアントが該第二ユーザインターフェース801における年齢変更機能のボタン803に対してのクリック操作を受けると、クライアントは年齢ドラッグバー804を表示し得る。そして。年齢ドラッグバー804上の、選択された指定年齢を指示するための要素に対するスライド操作に応じて、クライアントは指定年齢を取得し、かつ該要素の上に該指定年齢を表示できる。
【0095】
ステップ602:年齢変更コントロールに対するトリガー操作に応じて、トリガー操作に対応する指定年齢に基づいて第一顔画像を処理して第二顔画像を得る。
【0096】
該第二顔画像は第一顔画像における顔の指定年齢下の顔画像である。クライアントは年齢変更コントロールに対するトリガー操作を受けると、上述の実施例における方法を採用し、年齢変更モデルを呼び出して指定年齢に基づいて第一顔画像を処理することで第二顔画像を得ることができる。該年齢変更モデルは上述の実施例に言及された年齢変更モデルであっても良い。
【0097】
オプションとして、該年齢変更コントロールが年齢入力枠を含むときに、該年齢変更コントロールはさらに、決定(確認)コントロールを含む。クライアントは該決定コントロールに対してのタッチ操作を受けると、該入力枠に入力された指定年齢を取得し、かつ該トリガー操作を受けたと決定できる。該年齢コントロールが年齢選択枠を含むときに、該年齢変更コントロールは決定コントロールをも含む。クライアントは該決定コントロールに対するタッチ操作を受けると、該選択枠により選択された指定年齢を受信し、かつ該トリガー操作を受けたと決定できる。あるいは、該年齢コントロールが年齢表示バー、及び年齢表示バーに重ね合わせられる指定年齢の指示用の要素を含むときに、クライアントは該指定年齢の指示用の要素に対するタッチ操作(例えば、左又は右にスライドするようにドラッグする)を受けると、該要素により指示された指定年齢を受信し、かつ該トリガー操作を受けたと決定できる。
【0098】
例示的に、引き続き
図7を参照する。クライアントが年齢入力枠703に対する入力操作を受けるときに、クライアントは該入力操作にて入力された指定年齢を受信し、そして、年齢変更モデルを呼び出して指定年齢に基づいて第一顔画像を処理する。
【0099】
例示的に、引き続き
図8を参照する。クライアントが年齢ドラッグバー上の選択される指定年齢を指示するための要素に対してのスライド操作を受けると、クライアントは該要素により現在指示された指定年齢を受信し、そして、年齢変更モデルを呼び出して指定年齢に基づいて第一顔画像を処理する。
【0100】
ステップ603:第二顔画像を表示する。
【0101】
クライアントは該第一顔画像及び年齢変更コントロールを表示するユーザインターフェースにおいて該第二顔画像を表示し、即ち、クライアントは同一のユーザインターフェースで該第一顔画像及び第二顔画像を表示する。あるいは、クライアントは異なるユーザインターフェースにおいて第一顔画像及び第二顔画像をそれぞれ表示する。オプションとして、クライアントは第二顔画像を表示するユーザインターフェースにおいて該第二顔画像に対応する指定年齢をさらに表示し得る。
【0102】
例示的に、
図9は本出願の実施例により提供される第二顔画像の表示を示す図である。
図9に示すように、クライアントはユーザがアップロードする第一顔画像901に基づいて、年齢変更モデルを呼び出して所定の複数の指定年齢に従って第一顔画像901をそれぞれ処理し、第一顔画像901の複数の異なる指定年齢下の顔画像902を取得する。また、クライアントは表示される各顔画像の上に該顔画像における顔に対応する年齢903をさらに表示できる。
【0103】
例示的に、
図10は本出願の実施例により提供される第二顔画像を表示するユーザインターフェースを示す図である。
図10に示すように、第二ユーザインターフェース801では、クライアントの所在するコンピュータ装置がリアルタイムで撮像するビデオ内のビデオフレーム802が表示され、該ビデオフレーム802は顔の画像を含む。クライアントは年齢ドラッグバー804により取得される指定年齢に基づいて、年齢変更モデルを呼び出してビデオフレーム802を処理することでターゲットビデオフレーム805を取得し、そして、ビデオフレーム802とターゲットビデオフレーム805との重畳表示を行う。該ターゲットビデオフレーム805はビデオフレーム802の中の顔の画像を処理することで取得される顔の画像を含む。該第二ユーザインターフェース801では表示分割線806がさらに表示される。クライアントは該表示分割線806の左側にビデオフレーム802を表示し、もう1つの側にターゲットビデオフレーム805を表示する。該表示分割線806に対してのスライド操作に応じて、クライアントが表示するビデオフレーム802及びターゲットビデオフレーム805の表示面積は変化し得る。例えば、表示分割線806を左にスライドする場合、クライアントが表示するビデオフレーム802の面積は減少し、表示するターゲットビデオフレーム805の面積は増大する。また、表示分割線806を右にスライドする場合、クライアントが表示するビデオフレーム802の面積は増大し、表示するターゲットビデオフレーム805の面積は減少する。
【0104】
まとめると、本出願の実施例により提供される方法では、年齢変更コントロールに対するトリガー操作に応じて、年齢変更モデルにより指定年齢に基づいて第一顔画像を処理することで、第一顔画像における顔の該指定年齢下の第二顔画像を取得し表示できる。つまり、ユーザ自己定義の指定年齢又はシステム事前設定の指定年齢に基づいて顔画像を変えることができるため、年齢次元で顔画像を処理するときの柔軟性及び正確度を向上させることができる。
【0105】
図11は本出願の実施例により提供される年齢変更モデルの訓練方法のフローチャートである。該方法はコンピュータ装置又はコンピュータ装置上のクライアントに適用できる。
図11に示すように、該方法は次のようなステップを含む。
【0106】
ステップ1101:サンプル画像セットを得る。
【0107】
該サンプル画像セットはサンプル画像、及びサンプル画像のサンプル年齢ラベルを含む。オプションとして、該サンプル画像セットは異なる顔のサンプル画像を含む。該サンプル画像セットは顔画像処理サービスを提供する管理者により決定される。コンピュータ装置は該サンプル画像セットに基づいて年齢変更モデルを訓練し、該コンピュータ装置には該年齢変更モデルが配置され、又は、該コンピュータ装置は該年齢変更モデルを遠隔で呼び出すことができる。
【0108】
コンピュータ装置は年齢予測モデルによりサンプル画像の年齢を予測することで該サンプル年齢ラベルを得る。該年齢予測モデルはCNNに基づいており、異なる年齢及び異なるアイデンティティの顔画像のサンプル及び顔画像に対応する既知年齢により訓練されたものである。
【0109】
ステップ1102:指定年齢を決定し、該指定年齢はランダム年齢又はサンプル年齢ラベルである。
【0110】
該指定年齢がランダム年齢であるときに、該指定年齢はコンピュータ装置がランダムに生成するものであり、例えば、コンピュータ装置は10から80の間の1つの数字をランダムに生成し、それを指定年齢として決定する。オプションとして、コンピュータ装置はさらに、管理者が選択する年齢を取得して該指定年齢とすることができる。
【0111】
ステップ1103:敵対的生成ネットワークにおける生成器を呼び出して指定年齢に基づいてサンプル画像に対して予測を行って予測顔画像を取得する。
【0112】
該予測顔画像はサンプル画像中の顔の指定年齢下の顔画像である。該敵対的生成ネットワークにおける生成器は年齢変更モデルである。オプションとして、コンピュータ装置は生成器を呼び出してサンプル画像の指定年齢下のテクスチャー差異マップを予測し、そして、テクスチャー差異マップに基づいてサンプル画像に対して画像処理を行うことで予測顔画像を取得する。あるいは、コンピュータ装置は生成器を呼び出してサンプル画像の指定年齢下のテクスチャー差異マップ、及びサンプル画像中の顔と指定年齢の顔との形状変化を予測し、そして、該テクスチャー差異マップ及び顔の形状変化に基づいてサンプル画像を処理することで該予測顔画像を得る。そのうち、該テクスチャー差異マップはサンプル画像内の顔テクスチャーと指定年齢の顔とのテクスチャーのテクスチャー差異を反映するために用いられる。該生成器はCNNに基づくものである。
【0113】
ステップ1104:敵対的生成ネットワークにおける識別器を呼び出して予測顔画像の敵対損失を計算する。
【0114】
生成器及び識別器は敵対的生成ネットワークを構成する。該識別器は入力画像が生成器の生成する画像であるか、それとも真実画像であるかを判断するために用いられ、これによって、生成器との間の敵対関係を生成できる。コンピュータ装置は予測顔画像を識別器に入力し、識別器が予測する、該予測顔画像が真実画像であるかの判断を得ることで、該敵対損失を計算できる。該敵対損失は予測顔画像が真実顔画像であるかの損失を表すために用いられる。コンピュータ装置はさらに、サンプル画像を該識別器に入力し、そして、識別器が出力する、サンプル画像が真実画像であるかの判断に基づいて該識別器を訓練できる。該識別器はCNNに基づくものである。
【0115】
ステップ1105:年齢予測モデルを呼び出して予測顔画像の予測年齢を予測し、予測年齢と指定年齢との間の年齢損失を計算する。
【0116】
該年齢予測モデルはサンプル年齢ラベルを予測するための年齢予測モデルと同じであり又は異なる。コンピュータ装置は予測顔画像を年齢予測モデルに入力し、予測顔画像における顔に対して予測される予測年齢を出力してもらい、そして、該予測年齢及び指定年齢に基づいて年齢損失を計算する。該年齢損失は予測年齢と指定年齢との間の差を反映できる。
【0117】
ステップ1106:敵対損失及び年齢損失に基づいて生成器を訓練する。
【0118】
コンピュータ装置は敵対損失に基づいて勾配逆伝播法を採用して該生成器を訓練し、及び、年齢損失に基づいて勾配逆伝播法を採用して該生成器を訓練する。コンピュータ装置は敵対損失及び年齢損失に基づいて交替で該生成器を訓練し、又は、同時に該生成器を訓練する。そのうち、敵対損失は生成器が真実顔画像により近い画像を生成するようにさせることができ、年齢損失は生成器が生成する顔画像における顔が反映する年齢と、指定年齢との差がより小さくなるようにさせることができる。
【0119】
ステップ1107:訓練終了条件が満足されるときに、生成器を年齢変更モデルとして決定する。
【0120】
該訓練終了条件は、敵対損失及び年齢損失に基づいて逆伝播に従って調整することで取得される生成器のパラメータが、生成器が安定しておりかつ収束するようにさせることができるということを含む。あるいは、該訓練終了条件は、該生成器を訓練する管理者が決定するものであっても良い。上述の識別器及び年齢予測モデルは主に、コンピュータ装置が生成器を訓練するために用いられる。生成器の訓練を完了するときに、コンピュータ装置は該訓練済みの生成器を取得し、それを年齢変更モデルとして決定する。
【0121】
コンピュータ装置は年齢変更モデルの訓練を完了した後に、該年齢変更モデルをクライアントに内蔵させ、又は、該年齢変更モデルを呼び出すインターフェースを外部へ提供することで、指定年齢に基づいて顔画像を処理するサービスを外部へ提供できる。オプションとして、該コンピュータ装置はサーバーであり、具体的には独立した物理サーバーであっても良く、複数の物理サーバーからなるサーバー群であっても良く、又は分散システムであっても良く、さらに、クラウドサービス、クラウドデータベース、クラウドコンピューティング、クラウド関数、クラウドストレージ、ネットワークサービス、クラウド通信、ミドルウェアサービス、ドメイン名サービス、セキュリティサービス、CDN、ビッグデータ、人工知能プラットフォームなどの基本的なクラウドコンピューティングサービスを提供するクラウドサーバーであっても良い。年齢変更モデルを訓練するコンピュータ装置はクライアントをインストールするコンピュータ装置と同じであり又は異なる。
【0122】
要約すれば、本出願の実施例により提供される方法では、サンプル画像セット及び指定年齢により生成器を訓練することで年齢変更モデルを取得できる。該年齢変更モデルは敵対損失及び年齢損失に基づいて訓練されるので、ユーザ自己定義の指定年齢又はシステム事前設定の指定年齢に基づいて顔画像を変えることができ、年齢次元で顔画像を処理するときの柔軟性及び正確度を向上させることができる。
【0123】
図12は本出願の実施例により提供される年齢変更モデルを訓練するもう1つの方法のフローチャートである。該方法はコンピュータ装置又はコンピュータ装置上のクライアントに適用できる。
図12に示すように、該方法は以下のようなステップを含む。
【0124】
ステップ1201:サンプル画像セットを取得する。
【0125】
該サンプル画像セットはサンプル画像、及びサンプル画像のサンプル年齢ラベルを含む。オプションとして、該サンプル画像セットは異なる顔のサンプル画像を含む。該サンプル画像セットは顔画像処理サービスを提供する管理者が決定するものである。コンピュータ装置は該サンプル画像セットに基づいて年齢変更モデルを訓練し、該コンピュータ装置には該年齢変更モデルがデプロイされ、又は、該コンピュータ装置は該年齢変更モデルを遠隔で呼び出すことができる。
【0126】
コンピュータ装置は年齢予測モデルを呼び出してサンプル画像に対して年齢予測を行うことでサンプル画像のサンプル年齢ラベルを得る。そして、サンプル画像及びサンプル画像のサンプル年齢ラベルを該サンプル画像セットとして決定する。該年齢予測モデルはCNNに基づいており、異なる年齢及び異なるアイデンティティの顔画像のサンプル及び顔画像に対応する既知年齢によって訓練することで取得され得る。
【0127】
ステップ1202:サンプル画像セットに対して前処理を行う。
【0128】
コンピュータ装置は該サンプル画像を顔検出モデルに入力してサンプル画像中の顔位置合わせ点を出力してもらうようにする。その後、該顔位置合わせ点に基づいてアフィン変換によりサンプル画像に対してマッティングを行うことで、アライメント後のサンプル画像を取得する。そのうち、該顔検出モデルはサンプル画像に含まれる顔の特徴を決定することで、顔特徴を反映し得る顔位置合わせ点を得るために用いられる。該顔検出モデルは顔の五官特徴を含む訓練サンプルにより訓練することで取得される。該顔位置合わせ点は顔の五官を指示するためのサンプル画像における画素点を含む。コンピュータ装置はwarpAffine関数を用いて、アフィン変換によりサンプル画像に対してマッティングを行うことを実現し得る。
【0129】
ステップ1203:指定年齢を決定し、指定年齢はランダム年齢又はサンプル年齢ラベルである。
【0130】
該指定年齢がランダム年齢であるときに、該指定年齢はコンピュータ装置がランダムに生成するものであり、例えば、コンピュータ装置は10から80の間の1つの数字をランダムに生成し、それを指定年齢として決定する。オプションとして、コンピュータ装置はさらに、管理者が選択する年齢を該指定年齢として取得できる。
【0131】
ステップ1204:敵対的生成ネットワークにおける生成器を呼び出して指定年齢に基づいてサンプル画像に対して予測を行うことで予測顔画像を取得する。
【0132】
該敵対的生成ネットワークにおける生成器は年齢変更モデルである。コンピュータ装置は生成器を呼び出してサンプル画像中の顔テクスチャーと指定年齢の顔テクスチャーとのテクスチャー差異を予測し、そして、該顔テクスチャー差異に基づいてサンプル画像に対して画像処理を行うことで、予測顔画像を取得する。あるいは、コンピュータ装置は生成器を呼び出して、サンプル画像中の顔テクスチャーと指定年齢の顔テクスチャーとのテクスチャー差異、及び、サンプル画像中の顔と指定年齢の顔との形状変化を予測し、そして、該顔テクスチャー差異及び顔の形状変化に基づいてサンプル画像を処理することで、該予測顔画像を取得する。
【0133】
オプションとして、生成器は条件生成ネットワーク層及びテクスチャー合成ネットワーク層を含む。該生成器はさらに、変形ネットワーク層を含み得る。
図13に示すように、ステップ1204の実現プロセスは以下のようなステップ12041乃至ステップ12043を含む。
【0134】
ステップ12041では、条件生成ネットワーク層を呼び出して指定年齢に基づいてサンプル画像に対して予測を行い、テクスチャー差異マップを出力する。
【0135】
該テクスチャー差異マップはサンプル画像内の顔テクスチャーと指定年齢の顔テクスチャーとのテクスチャー差異を反映するために用いられる。該テクスチャー差異は顔肌質特徴差異、髪色特徴差異及び髭特徴差異のうちの少なくとも1つを含む。指定年齢がサンプル画像における顔に対応する年齢よりも小さいときに、該顔肌質特徴差異は顔の肌質をより滑らかかつ繊細にするために用いられ、該髪色特徴差異は髪色を黒くするために用いられ、該髭特徴差異は髭を消すために用いられる。指定年齢がサンプル画像中の顔に対応する年齢よりも大きいときに、該顔肌質特徴差異は顔の皺を多くするために用いられ、該髪色特徴差異は髪色を白くするために用いられ、該髭特徴差異は髭を白くするために用いられる。
【0136】
ステップ12042では、テクスチャー合成ネットワーク層を呼び出してテクスチャー差異マップとサンプル画像との重ね合わせを行い、予測顔画像を取得する。
【0137】
オプションとして、条件生成ネットワーク層はさらに、アテンションマップ(Attention Map)を出力するために用いられる。該アテンションマップはサンプル画像における画素点に対応するテクスチャー差異の重み係数を反映するために用いられる。該重み係数はサンプル画像における画素点に対応するテクスチャー差異の、他の画素点に対応するテクスチャー差異における重要度を反映するために用いられる。
【0138】
コンピュータ装置はテクスチャー合成ネットワーク層を呼び出してアテンションマップに基づいてテクスチャー差異マップとサンプル画像との重ね合わせを行うことで、予測顔画像を取得し得る。オプションとして、アテンションマップに基づいてテクスチャー差異マップとサンプル画像との重ね合わせを行うときに、テクスチャー差異マップにおける画素点、サンプル画像における画素点、予測顔画像における画素点、及びアテンションマップに基づいて決定される重み係数は、
【0139】
【数2】
を満足する。そのうち、I
RGBはテクスチャー差異マップにおける画素点であり、I
inは第一顔画像における画素点であり、I
outは第二顔画像における画素点であり、αはアテンションマップに基づいて決定される重み係数である。
【0140】
ステップ12043では、変形ネットワーク層を呼び出して予測顔画像における顔に対して変形処理を行う。
【0141】
オプションとして、条件生成ネットワーク層はさらに、変形情報マップを出力するために用いられ、該変形情報マップはサンプル画像中の顔と指定年齢の顔との形状変化を予測するために用いられる。コンピュータ装置は変形ネットワーク層を呼び出して変形情報マップに基づいて顔画像における顔に対して変形処理を行うことができる。
【0142】
オプションとして、変形情報マップはサンプル画像における画素点の第一方向及び第二方向上の対応する変位情報を含む。予測顔画像はサンプル画像に基づいて取得され、該変形情報マップは予測顔画像における画素点の第一方向及び第二方向上の対応する変位情報を反映することもできる。そのうち、第一方向及び第二方向は互いに垂直である。例えば、第一方向は予測サンプル画像における垂直方向であり、第二方向は予測サンプル画像における水平方向である。コンピュータ装置は変形ネットワーク層を呼び出して第一方向及び第二方向上の変位情報に基づいて予測顔画像における画素点に対して行双線形変位を行うことで、予測顔画像に対しての変形処理を実現し得る。
【0143】
例示的に、サンプル画像はRGB画像であり、この場合、サンプル画像は3つのチャンネル(赤、緑及び青)を含む。条件生成ネットワーク層がサンプル画像に基づいて出力するテクスチャー差異マップも3つのチャンネル(赤、緑及び青)を含み、アテンションマップは1つのチャンネル(重み係数)を含み、変形情報マップは2つのチャンネル(第一方向変位情報及び第二方向変位情報)を含む。
【0144】
ステップ1205:敵対的生成ネットワークにおける識別器を呼び出して予測顔画像の敵対損失を計算する。
【0145】
コンピュータ装置は予測顔画像を識別器に入力し、識別器が予測する、該予測顔画像が真実画像であるかについての判断を得ることで、該敵対損失を計算する。該敵対損失は予測顔画像が真実顔画像であるかの損失を表すために用いられる。コンピュータ装置はさらに、サンプル画像を該識別器入力し、識別器が出力する、サンプル画像が真実画像であるかについての判断に基づいて該識別器を訓練できる。
【0146】
ステップ1206:年齢予測モデルを呼び出して予測顔画像の予測年齢を予測し、予測年齢と指定年齢との間の年齢損失を計算する。
【0147】
該年齢予測モデルはサンプル年齢ラベルを予測するための年齢予測モデルと同じであり又は異なる。コンピュータ装置は予測顔画像を年齢予測モデルに入力して予測顔画像における顔に対して予測される予測年齢を出力してもらい、そして、該予測年齢及び指定年齢に基づいて年齢損失を計算する。該年齢損失は予測年齢と指定年齢との間の差を反映できる。
【0148】
ステップ1207:敵対損失及び年齢損失に基づいて生成器を訓練する。
【0149】
コンピュータ装置は敵対損失に基づいて勾配逆伝播法を用いて該生成器を訓練し、及び、年齢損失に基づいて勾配逆伝播法を用いて該生成器を訓練する。コンピュータ装置は敵対損失及び年齢損失に基づいて交替で該生成器を訓練し、又は、同時に該生成器を訓練する。そのうち、敵対損失は生成器が真実顔画像により近い画像を生成するようにさせることができ、年齢損失は生成器が生成する顔画像における顔が反映する年齢と、指定年齢との差がより小さくなるようにさせることができる。
【0150】
ステップ1208:訓練終了条件が満足されるときに、生成器を年齢変更モデルとして決定する。
【0151】
該訓練終了条件は、敵対損失及び年齢損失に基づいて逆伝播により調整することで取得される生成器のパラメータが、生成器が安定しておりかつ収束するようにさせることができるということを含む。あるいは、該訓練終了条件は該生成器を訓練する管理者が決定するものである。上述の識別器及び年齢予測モデルは主に、コンピュータ装置が生成器を訓練するために用いられる。生成器の訓練を完了すると、コンピュータ装置は該訓練済みの生成器を取得し、それを年齢変更モデルとして決定する。
【0152】
なお、コンピュータ装置は条件生成ネットワーク層及びテクスチャー合成ネットワーク層のみを訓練でき、即ち、出力される変形処理無しの予測顔画像に基づいて生成器を訓練できる。あるいは、コンピュータ装置は条件生成ネットワーク層、テクスチャー合成ネットワーク層及びテクスチャー合成ネットワーク層を訓練し、即ち、出力される変形処理後の予測顔画像に基づいて生成器を訓練することもできる。コンピュータ装置は年齢変更モデルの訓練を完了した後に、該年齢変更モデルをクライアントに内蔵させ、又は、該年齢変更モデルを呼び出すインターフェースを外部へ提供できる。これによって、指定年齢に基づいて顔画像を処理するサービスを外部へ提供できる。
【0153】
要約すると、本出願の実施例により提供される方法では、サンプル画像セット及び指定年齢により生成器を訓練することで年齢変更モデルを取得できる。該年齢変更モデルは敵対損失及び年齢損失に基づいて訓練されるので、ユーザ自己定義の指定年齢又はシステム事前設定の指定年齢に基づいて顔画像を変えることができ、年齢次元で顔画像を処理するときの柔軟性及び正確度を向上させることができる。
【0154】
また、敵対的生成ネットワークに基づいて年齢変更モデルを訓練することで、生成される第二顔画像がより自然になるようにさせることができる。年齢予測モデルに基づいて年齢変更モデルを訓練することで、生成される第二顔画像における顔が指定年齢の顔により近くなるようにさせることができる。また、サンプル画像に対して前処理を行うことで、年齢変更モデルを訓練する難易度を低減し、訓練効率を向上させることもできる。
【0155】
なお、本出願の実施例により提供される方法におけるステップの実行順序について適切に調整し足り、幾つかのステップを増減したりすることができ、また、当業者が本出願に開示されている技術的範囲内で容易に想到し得る方法はすべて本出願の保護範囲に属するので、ここでは網羅的な記載を省略する。
【0156】
1つの具体例として、
図14は本出願の実施例により提供される顔画像に対して前処理を行う実現プロセスを示す図である。
図14に示すように、クライアントはピクチャ又はビデオフレームに基づいて顔画像を取得し、顔検出モデルにより該顔画像における顔位置合わせ点を決定することで、顔画像における顔に対しての検出のための位置合わせを実現する。その後、warpAffine関数を用いて、顔位置合わせ点に基づいてアフィン変換により顔画像に対してマッティングを行うことで、アライメント後の顔画像を得る。その後、年齢予測モデルにより顔画像の年齢を予測することで、顔画像と予測年齢との組み合わせを取得する。該顔画像及び予測年齢はサンプル画像及びサンプル年齢ラベルとすることで年齢変更モデルを訓練できる。
【0157】
図15は本出願の実施例により提供される顔画像に対して年齢の変更を行う実現プロセスを示す図である。
図15に示すように、クライアントはピクチャ又はビデオフレームに基づいて顔画像を得る。前処理段階では、該顔画像に対して顔アライメントの前処理を行う。その後、指定年齢を取得し、年齢変更モデルによる処理段階では、クライアントは条件生成ネットワーク層を呼び出して指定年齢に基づいて顔画像を処理することで、テクスチャー差異マップ、アテンションマップ及び変形情報マップを取得する。それから、テクスチャー合成ネットワーク層によりテクスチャー差異マップと顔画像とに対してアテンションマップに基づいて重ね合わせを行い、そして、出力するテクスチャー変更後の顔画像に対して変形ネットワーク層により変形情報マップに基づいて変形処理を行う。髪色処理段階では、クライアントはテクスチャー変更及び変形処理後の顔画像に対して顔語義分割を行って髪領域を取得し、そして、動的髪色アルゴリズム(即ち、条件付き色ルックアップテーブル)により髪領域における画素点の色を置換することで最終の結果図を出力する。
【0158】
図16は本出願の実施例により提供される顔画像の処理装置の構成を示す図である。該装置はコンピュータ装置又はコンピュータ装置上のクライアントに適用できる。
図16に示すように、該装置160は次のようなものを含む。
【0159】
取得モジュール1601:第一顔画像を得るために用いられる。
【0160】
予測モジュール1602:年齢変更モデルを呼び出して第一顔画像の指定年齢下のテクスチャー差異マップを予測するために用いられ、テクスチャー差異マップは第一顔画像における顔テクスチャーと、指定年齢の顔テクスチャーとのテクスチャー差異を反映するために用いられる。
【0161】
第一処理モジュール1603:テクスチャー差異マップに基づいて第一顔画像に対して画像処理を行って第二顔画像を得るために用いられ、第二顔画像は第一顔画像における顔の指定年齢下の顔画像である。
【0162】
オプションとして、年齢変更モデルは条件生成ネットワーク層及びテクスチャー合成ネットワーク層を含む。予測モジュール1602は、条件生成ネットワーク層を呼び出して指定年齢に基づいて第一顔画像に対して予測を行い、テクスチャー差異マップを出力するために用いられる。テクスチャー差異マップは第一顔画像における顔テクスチャーと、指定年齢の顔テクスチャーとのテクスチャー差異を反映するために用いられる。
【0163】
第一処理モジュール1603は、テクスチャー合成ネットワーク層を呼び出してテクスチャー差異マップと第一顔画像との重ね合わせを行うことで第二顔画像を得るために用いられる。
【0164】
オプションとして、条件生成ネットワーク層はさらに、アテンションマップを出力するために用いられ、アテンションマップは第一顔画像における画素点に対応するテクスチャー差異の重み係数を反映するために用いられる。第一処理モジュール1603はテクスチャー合成ネットワーク層を呼び出してアテンションマップに基づいてテクスチャー差異マップと第一顔画像との重ね合わせを行うことで第二顔画像を得るために用いられる。
【0165】
オプションとして、年齢変更モデルはさらに、変形ネットワーク層を含む。
図17に示すように、装置160はさらに以下のようなものを含む。
【0166】
第二処理モジュール1604:変形ネットワーク層を呼び出して第二顔画像における顔に対して変形処理を行うために用いられる。
【0167】
オプションとして、条件生成ネットワーク層はさらに、変形情報マップを出力するために用いられ、変形情報マップは第一顔画像における顔と指定年齢の顔との形状変化を予測するために用いられる。第二処理モジュール1604は変形ネットワーク層を呼び出して変形情報マップに基づいて第二顔画像における顔に対して変形処理を行うために用いられる。
【0168】
オプションとして、変形情報マップは画素点の第一方向及び第二方向上の対応する変位情報を含み、第一方向及び第二方向は互いに垂直である。第二処理モジュール1604は変形ネットワーク層を呼び出して第一方向及び第二方向上の変位情報に基づいて第二顔画像における画素点に対して双線形変位を行うために用いられる。
【0169】
オプションとして、
図18に示すように、装置160はさらに次のようなものを含む。
【0170】
第三処理モジュール1605:第二顔画像に対して画像語義分割を行って第二顔画像における髪領域を得るために用いられる。
【0171】
計算モジュール1606:髪領域における画素点のオリジナル色値に基づいてマッピングにより髪領域における画素点の指定年齢下の対応するターゲット色値を計算するために用いられる。
【0172】
置換モジュール1607:髪領域における画素点のオリジナル色値をターゲット色値で置換するために用いられる。
【0173】
オプションとして、
図19に示すように、装置160はさらに次のようなものを含む。
【0174】
第四処理モジュール1608:第一顔画像を顔検出モデルに入力して第一顔画像における顔位置合わせ点を出力してもらうために用いられる。
【0175】
第五処理モジュール1609:顔位置合わせ点に基づいてアフィン変換により第一顔画像に対してマッティングを行ってアライメント後の第一顔画像を得るために用いられる。
【0176】
オプションとして、
図20に示すように、装置160はさらに、訓練モジュール1610を含み、年齢変更モデルは訓練モジュール1610の訓練により取得され、訓練モジュール1610は次のようなことを行うために用いられ、即ち、サンプル画像セットを取得し、サンプル画像セットはサンプル画像及びサンプル画像のサンプル年齢ラベルを含み、指定年齢を決定し、指定年齢はランダム年齢又はサンプル年齢ラベルであり、敵対的生成ネットワークにおける生成器を呼び出して指定年齢に基づいてサンプル画像に対して予測を行って予測顔画像を取得し、敵対的生成ネットワークにおける識別器を呼び出して予測顔画像の敵対損失を計算し、敵対損失は予測顔画像が真実顔画像であるかの損失を表すために用いられ、年齢予測モデルを呼び出して予測顔画像の予測年齢を予測し、予測年齢と指定年齢の間の年齢損失を計算し、敵対損失及び年齢損失に基づいて生成器を訓練し、そして、訓練終了条件が満足されるときに、生成器を年齢変更モデルとして決定することである。
【0177】
オプションとして、訓練モジュール1610は年齢予測モデルを呼び出してサンプル画像に対して年齢予測を行ってサンプル画像のサンプル年齢ラベルを取得し、そして、サンプル画像及びサンプル画像のサンプル年齢ラベルをサンプル画像セットとして決定するために用いられる。
【0178】
オプションとして、訓練モジュール1610はサンプル画像を顔検出モデル入力してサンプル画像中の顔位置合わせ点を出力してもらい、そして、顔位置合わせ点に基づいてアフィン変換によりサンプル画像に対してマッティングを行ってアライメント後のサンプル画像を得るために用いられる。
【0179】
オプションとして、生成器は条件生成ネットワーク層及びテクスチャー合成ネットワーク層を含む。訓練モジュール1610は条件生成ネットワーク層を呼び出して指定年齢に基づいてサンプル画像に対して予測を行ってテクスチャー差異マップを出力し、テクスチャー差異マップはサンプル画像中の顔テクスチャーと指定年齢の顔テクスチャーとのテクスチャー差異を反映するために用いられ、及びテクスチャー合成ネットワーク層を呼び出してテクスチャー差異マップとサンプル画像との重ね合わせを行い、予測顔画像を取得するために用いられる。
【0180】
オプションとして、条件生成ネットワーク層はさらに、アテンションマップを出力するために用いられ、アテンションマップはサンプル画像における画素点に対応するテクスチャー差異の重み係数を反映するために用いられる。訓練モジュール1610はテクスチャー合成ネットワーク層を呼び出してアテンションマップに基づいてテクスチャー差異マップとサンプル画像との重ね合わせを行って予測顔画像を取得するために用いられる。
【0181】
オプションとして、生成器はさらに、変形ネットワーク層を含む。訓練モジュール1610は変形ネットワーク層を呼び出して予測顔画像における顔に対して変形処理を行うために用いられる。
【0182】
オプションとして、条件生成ネットワーク層はさらに、変形情報マップを出力するために用いられ、変形情報マップはサンプル画像中の顔と指定年齢の顔との形状変化を予測するために用いられる。訓練モジュール1610は変形ネットワーク層を呼び出して変形情報マップに基づいて予測顔画像における顔に対して変形処理を行うために用いられる。
【0183】
オプションとして、変形情報マップは画素点の第一方向及び第二方向上の対応する変位情報を含み、第一方向及び第二方向は互いに垂直である。訓練モジュール1610は変形ネットワーク層を呼び出して第一方向及び第二方向上の変位情報に基づいて予測顔画像における画素点に対して双線形変位を行うために用いられる。
【0184】
図21は本出願の実施例により提供される顔画像の表示装置の構成を示す図である。該装置はコンピュータ装置又はコンピュータ装置上のクライアントに適用できる。
図21に示すように、該装置210は次のようなものを含む。
【0185】
表示モジュール2101:第一顔画像及び年齢変更コントロールを表示するために用いられ、年齢変更コントロールは指定年齢を入力するためのコントロールである。
【0186】
処理モジュール2102:年齢変更コントロールに対するトリガー操作に応じて、トリガー操作に対応する指定年齢に基づいて第一顔画像を処理して第二顔画像を得るために用いられ、第二顔画像は第一顔画像における顔の指定年齢下の顔画像である。
【0187】
処理モジュール2102は年齢変更コントロールに対するトリガー操作に応じて、年齢変更モデルを呼び出してトリガー操作に対応する指定年齢に基づいて第一顔画像を処理して第二顔画像を得るために用いられ、第二顔画像は第一顔画像における顔の指定年齢下の顔画像である。該年齢変更モデルは上述の実施例において言及された年齢変更モデルである。
【0188】
表示モジュール2101は第二顔画像を表示するために用いられる。
【0189】
オプションとして、表示モジュール2101は第二顔画像及び指定年齢を表示するために用いられる。
【0190】
図22は本出願の実施例により提供される年齢変更モデルの訓練装置の構成を示す図である。該装置はコンピュータ装置又はコンピュータ装置上のクライアントに適用できる。
図22に示すように、該装置220は以下のようなものを含む。
【0191】
取得モジュール2201:サンプル画像セットを得るために用いられ、サンプル画像セットはサンプル画像及びサンプル画像のサンプル年齢ラベルを含む。
【0192】
第一決定モジュール2202:指定年齢を決定するために用いられ、指定年齢はランダム年齢又はサンプル年齢ラベルである。
【0193】
予測モジュール2203:敵対的生成ネットワークにおける生成器を呼び出して指定年齢に基づいてサンプル画像に対して予測を行って予測顔画像を取得するために用いられる。
【0194】
第一計算モジュール2204:敵対的生成ネットワークにおける識別器を呼び出して予測顔画像の敵対損失を計算するために用いられ、敵対損失は予測顔画像が真実顔画像であるかの損失を表すために用いられる。
【0195】
第二計算モジュール2205:年齢予測モデルを呼び出して予測顔画像の予測年齢を予測し、予測年齢と指定年齢との間の年齢損失を計算するために用いられる。
【0196】
訓練モジュール2206:敵対損失及び年齢損失に基づいて生成器を訓練するために用いられる。
【0197】
第二決定モジュール2207:訓練終了条件が満足されるときに、生成器を年齢変更モデルとして決定するために用いられる。
【0198】
オプションとして、取得モジュール2201は年齢予測モデルを呼び出してサンプル画像に対して年齢予測を行い、サンプル画像のサンプル年齢ラベルを取得し、そして、サンプル画像及びサンプル画像のサンプル年齢ラベルをサンプル画像セットとして決定するために用いられる。
【0199】
オプションとして、
図23に示すように、装置220はさらに次のようなものを含む。
【0200】
第一処理モジュール2208:サンプル画像を顔検出モデルに入力してサンプル画像中の顔位置合わせ点を出力してもらうために用いられる。
【0201】
第二処理モジュール2209:顔位置合わせ点に基づいてアフィン変換によりサンプル画像に対してマッティングを行ってアライメント後のサンプル画像を得るために用いられる。
【0202】
オプションとして、生成器は条件生成ネットワーク層及びテクスチャー合成ネットワーク層を含む。予測モジュール2203は次のようなことを行うために用いられ、即ち、条件生成ネットワーク層を呼び出して指定年齢に基づいてサンプル画像に対して予測を行い、テクスチャー差異マップを出力し、テクスチャー差異マップはサンプル画像中の顔テクスチャーと指定年齢の顔テクスチャーとのテクスチャー差異を反映するために用いられ、また、テクスチャー合成ネットワーク層を呼び出してテクスチャー差異マップとサンプル画像との重ね合わせを行って予測顔画像を取得することである。
【0203】
オプションとして、条件生成ネットワーク層はさらに、アテンションマップを出力するために用いられ、アテンションマップはサンプル画像における画素点に対応するテクスチャー差異の重み係数を反映するために用いられる。予測モジュール2203はテクスチャー合成ネットワーク層を呼び出してアテンションマップに基づいてテクスチャー差異マップとサンプル画像との重ね合わせを行って予測顔画像を取得するために用いられる。
【0204】
オプションとして、生成器はさらに、変形ネットワーク層を含む。予測モジュール2203は変形ネットワーク層を呼び出して予測顔画像における顔に対して変形処理を行うために用いられる。
【0205】
オプションとして、条件生成ネットワーク層はさらに、変形情報マップを出力するために用いられ、変形情報マップはサンプル画像内の顔と指定年齢の顔との形状変化を予測するために用いられる。予測モジュール2203は変形ネットワーク層を呼び出して変形情報マップに基づいて予測顔画像における顔に対して変形処理を行うために用いられる。
【0206】
オプションとして、変形情報マップは画素点の第一方向及び第二方向上の対応する変位情報を含み、第一方向及び第二方向は互いに垂直である。予測モジュール2203は変形ネットワーク層を呼び出して第一方向及び第二方向上の変位情報に基づいて予測顔画像における画素点に対して双線形変位を行うために用いられる。
【0207】
なお、上述の実施例により提供される顔画像の処理装置について、上述の各機能モジュールの分割のみを例にして説明したが、実際の応用では、ニーズに応じて、上述の機能を異なる機能モジュールに割り当てて完了してもらうこともでき、即ち、機器の内部構成を異なる機能モジュールに分割して上述の全部又は一部の機能を完了させることもできる。また、上述の実施例により提供される顔画像の処理装置は顔画像の処理方法の実施例と同一の構想に属するので、その具体的な実現プロセスについては方法の実施例を参照できるため、ここではその詳しい説明を省略する。
【0208】
同様に、上述の実施例により提供される顔画像の表示装置について、上述の各機能モジュールの分割のみを例にして説明したが、実際の応用では、ニーズに応じて上述の機能を異なる機能モジュールに割り当てて完了してもらうこともでき、即ち、機器の内部構成を異なる機能モジュールに分割して上述の全部又は一部の機能を完了させることもできる。また、上述の実施例により提供される顔画像の表示装置は顔画像の表示方法の実施例と同一の構想に属するので、その具体的な実現プロセスについては方法の実施例を参照できるため、ここではその詳しい説明を省略する。
【0209】
また、同様に、上述の実施例により提供される年齢変更モデルの訓練装置について、上述の各機能モジュールの分割のみを例にして説明したが、実際の応用では、ニーズに応じて上述の機能を異なる機能モジュールに割り当てて完了してもらうこともでき、即ち、機器の内部構成を異なる機能モジュールに分割して上述の全部又は一部の機能を完了させることもできる。また、上述の実施例により提供される年齢変更モデルの訓練装置は年齢変更モデルの訓練方法の実施例と同一の構想に属するので、その具体的な実現プロセスについては方法の実施例を参照できるので、ここではその詳しい説明を省略する。
【0210】
本出願の実施例ではさらに、コンピュータ装置が提供され、該コンピュータ装置は処理器及び記憶器を含み、記憶器には少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットを含み、少なくとも1つの命令、少なくとも1つのプログラム、コードセット又は命令セットは処理器によりロードされ実行されることで上述の各方法の実施例により提供される顔画像の処理方法、顔画像の表示方法又は年齢変更モデルの訓練方法を実現し得る。
【0211】
オプションとして、該コンピュータ装置は端末である。例示的に、
図24は本出願の実施例により提供される端末の構成を示す図である。
【0212】
端末2400は通常、処理器2401及び記憶器2402を含む。
【0213】
処理器2401は1つの又は複数の処理コア、例えば、4コア処理器、8コア処理器などを含み得る。処理器2401はDSP(Digital Signal Processing)、FPGA(Field-Programmable Gate Array)、及びPLA(Programmable Logic Array)のうちの少なくとも1つのハードウェアを採用して実現されても良い。処理器2401はメインプロセッサ及びコプロセッサを含んでも良く、メインプロセッサはウェイクアップ状態にあるデータを処理するための処理器であり、CPU(Central Processing Unit)とも称され、コプロセッサはスタンバイ状態にあるデータを処理するための低パワー処理器である。幾つかの実施例において、処理器2401にはGPU(Graphics Processing Unit)がさらに統合されても良く、GPUは表示スクリーンに表示する必要のあるコンテンツをレンダリング及び描画するために用いられる。幾つかの実施例において、処理器2401はさらに、AI(Artificial Intelligence)処理器を含んでも良く、該AI処理器は機械学習に関する計算動作を処理するように構成される。
【0214】
記憶器2402は1つの又は複数のコンピュータ可読記憶媒体を含んでも良く、該コンピュータ可読記憶媒体は非一時的であり得る。記憶器2402はさらに、高速ランダムアクセスメモリ、及び不揮発性メモリ、例えば、1つの又は複数の磁気ディスク、フラッシュメモリなどを含んでも良い。幾つかの実施例において、記憶器2402における非一時的なコンピュータ可読記憶媒体は少なくとも1つの命令を記憶するために用いられ、該少なくとも1つの命令は処理器2401によって実行されることで上述の方法の実施例により提供される方法を実現できる。
【0215】
本出願の実施例ではさらに、コンピュータ可読記憶媒体が提供され、該コンピュータ可読記憶媒体には少なくとも1つのプログラムコードが記憶されており、該プログラムコードはコンピュータ装置の処理器によってロードされ実行されるときに、上述の各方法の実施例により提供される顔画像の処理方法、顔画像の表示方法又は年齢変更モデルの訓練方法を実現できる。
【0216】
本出願ではさらに、コンピュータプログラムプロダクト又はコンピュータプログラムが提供され、該コンピュータプログラムプロダクト又はコンピュータプログラムはコンピュータ命令(プログラム)を含み、該コンピュータ命令はコンピュータ可読記憶媒体に記憶されている。コンピュータ装置の処理器はコンピュータ可読記憶媒体から該コンピュータ命令を読み取り、該コンピュータ命令を実行することで、該コンピュータ装置に、上述の各方法実施例により提供される顔画像の処理方法、顔画像の表示方法又は年齢変更モデルの訓練方法を実行させることができる。
【0217】
以上、本出願の好ましい実施例を説明したが、本出願はこの実施例に限定されず、本出願の趣旨を離脱しない限り、本出願に対するあらゆる変更は本出願の技術的範囲に属する。