(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-02-27
(54)【発明の名称】画像処理方法、装置、機器、及びコンピュータプログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20240219BHJP
G06V 10/82 20220101ALI20240219BHJP
G06N 3/0475 20230101ALI20240219BHJP
【FI】
G06T7/00 350C
G06V10/82
G06N3/0475
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023576240
(86)(22)【出願日】2021-07-26
(85)【翻訳文提出日】2023-08-29
(86)【国際出願番号】 CN2021108489
(87)【国際公開番号】W WO2022252372
(87)【国際公開日】2022-12-08
(31)【優先権主張番号】202110620382.8
(32)【優先日】2021-06-03
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】523329390
【氏名又は名称】▲騰▼▲訊▼云▲計▼算(北京)有限▲責▼任公司
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100150197
【氏名又は名称】松尾 直樹
(72)【発明者】
【氏名】朱 ▲飛▼▲達▼
(72)【発明者】
【氏名】▲タイ▼ ▲穎▼
(72)【発明者】
【氏名】汪 ▲チェン▼杰
(72)【発明者】
【氏名】李 季▲懍▼
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096DA01
5L096HA02
5L096HA11
5L096JA11
5L096KA04
(57)【要約】
本願は、画像処理方法、装置、機器、及びコンピュータ可読記憶媒体を提供する。該方法は、第1生成ネットワークを呼び出してそれぞれ第1サンプル画、及び第2サンプル画像に対して生成処理を行って、第1予測画像、及び第2予測画像を得るステップと、第1サンプル画像と第1予測画像との間のアバター差異、及び第2サンプル画像における、第2予測画像との間の指定属性差異に基づいて、画像処理モデルを訓練するステップであって、該画像処理モデルは、入力画像におけるアバターを前記ターゲットアバターに置換し、かつ入力画像におけるアバターの第1種類の属性を保持することに用いられる、ステップと、を含み、それにより、置換後のアバターの真実性を比較的高くし、画像処理の正確性、及び置換効果を向上させる。
【特許請求の範囲】
【請求項1】
画像処理方法であって、
画像処理モデルにおける第1生成ネットワークを呼び出し、第1サンプルセットにおける第1サンプル画像x
iを処理して、第1予測画像[数1]を得るステップであって、前記第1予測画像[数1]は、第1予測アバターを含み、前記第1サンプルセット中には、N個の第1サンプル画像が含まれ、それぞれの前記第1サンプル画像は、いずれも同一のターゲット人物に対応するターゲットアバターを含み、Nは、正の整数であり、iは、正の整数で、且つi≦Nである、ステップと、
前記第1生成ネットワークを呼び出し、第2サンプルセットにおける第2サンプル画像y
kを処理して、第2予測画像[数2]を得るステップであって、前記第2予測画像[数2]は、第2予測アバターを含み、前記第2サンプルセット中には、M個の第2サンプル画像が含まれ、それぞれの第2サンプル画像は、サンプルアバターを含み、Mは、正の整数であり、kは、正の整数で、且つk≦Mである、ステップと、
前記第1サンプル画像x
iにおける前記ターゲットアバターと前記第1予測アバターとの間の差異、及び前記第2サンプル画像y
kにおける前記サンプルアバターの第1種類の属性と前記第2予測アバターの前記第1種類の属性との間の差異に基づき、前記画像処理モデルを訓練するステップであって、前記画像処理モデルは、入力画像におけるアバターを前記ターゲットアバターに置換し、かつ前記入力画像におけるアバターの前記第1種類の属性を保持することに用いられる、ステップと、を含む、画像処理方法。
【数1】
【数2】
【請求項2】
前記第1サンプル画像x
iにおける前記ターゲットアバターと前記第1予測アバターとの間の差異、前記第2サンプル画像y
kにおける前記サンプルアバターの第1種類の属性と前記第2予測アバターの前記第1種類の属性との間の差異に基づき、前記画像処理モデルを訓練する前記ステップは、
第1損失関数の関数値を決定するステップであって、前記第1損失関数は、前記第1サンプル画像x
iにおける前記ターゲットアバターと前記第1予測アバターとの間の差異を指示することに用いられる、ステップと、
第2損失関数の関数値を決定するステップであって、前記第2損失関数は、前記第2サンプル画像y
kにおける前記サンプルアバターの第1種類の属性と前記第2予測アバターの前記第1種類の属性との間の差異を指示することに用いられる、ステップと、
前記第1損失関数の関数値、及び前記第2損失関数の関数値に基づいて、前記画像処理モデルのターゲット損失関数の関数値を決定するステップと、
前記ターゲット損失関数の関数値に従って、前記画像処理モデルを訓練するステップと、を含む、請求項1に記載の方法。
【請求項3】
第1損失関数の関数値を決定する前記ステップは、
第1判別機器を呼び出して、前記第1サンプル画像x
i、及び前記第1予測アバターをそれぞれ判別するステップと、
前記第1サンプル画像x
iの第1判別結果、及び前記第1予測アバターの第2判別結果に基づいて、前記第1損失関数の第1分岐関数の関数値を決定するステップであって、前記第1判別結果は、前記第1サンプル画像x
iが実画像であるかどうかを指示することに用いられ、前記第2判別結果は、前記第1予測アバターが実画像であるかどうかを指示することに用いられる、ステップと、
前記第1損失関数の第2分岐関数の関数値を決定するステップであって、前記第1損失関数の第2分岐関数は、前記第1サンプル画像x
iにおける前記ターゲットアバターの第1知覚的特徴と、前記第1予測アバターの第2知覚的特徴との間の差異を指示することに用いられる、ステップと、
前記第1損失関数の第1分岐関数の関数値と前記第1損失関数の第2分岐関数の関数値との和を、前記第1損失関数の関数値として決定するステップと、を含む、請求項2に記載の方法。
【請求項4】
第2損失関数の関数値を決定する前記ステップは、
第1判別機器を呼び出して前記第2予測アバターを判別するステップと、
前記第2予測アバターの第3判別結果に基づいて、前記第2損失関数の第1分岐関数の関数値を決定するステップであって、前記第3判別結果は、前記第2予測アバターが実画像であるかどうかを指示するために用いられる、ステップと、
前記第2サンプル画像y
kにおける前記サンプルアバターの前記第1種類の属性と、前記第2予測アバターの前記第1種類の属性とに対して属性比較を行い、属性比較結果を得るステップと、
前記属性比較結果に基づいて前記第2損失関数の第2分岐関数の関数値を決定するステップと、
前記第2損失関数の第1分岐関数の関数値と前記第2損失関数の第2分岐関数の関数値との和を、前記第2損失関数の関数値として決定するステップと、を含む、請求項2に記載の方法。
【請求項5】
前記第1損失関数、及び前記第2損失関数に従って前記画像処理モデルのターゲット損失関数を構築する前に、前記方法は、
第2生成ネットワークを呼び出し、前記第2サンプル画像y
kを処理して、第3予測画像[数3]を得るステップであって、前記第3予測画像[数3]は、第3予測アバターを含み、前記第2生成ネットワークと前記第1生成ネットワークは、同じ特徴抽出ユニットを有する、ステップと、
第3損失関数の関数値を決定するステップであって、前記第3損失関数は、前記第2サンプル画像y
kにおける前記サンプルアバターと前記第3予測アバターとの間の差異を指示することに用いられる、ステップと、をさらに含み、
前記第1損失関数の関数値、及び前記第2損失関数の関数値に基づいて、前記画像処理モデルのターゲット損失関数の関数値を決定する前記ステップは、
前記第1損失関数の関数値、前記第2損失関数の関数値、及び前記第3損失関数の関数値に基づいて、前記ターゲット損失関数の関数値を決定するステップを含む、請求項2に記載の方法。
【数3】
【請求項6】
第3損失関数の関数値を決定する前記ステップは、
第2判別機器を呼び出して、前記第2サンプル画像y
k、及び前記第3予測アバターをそれぞれ判別するステップと、
前記第2サンプル画像y
kの第4判別結果、及び前記第3予測アバターの第5判別結果に基づいて、前記第3損失関数の第1分岐関数の関数値を決定するステップであって、前記第4判別結果は、前記第2サンプル画像y
kが実画像であるかどうかを指示することに用いられ、前記第5判別結果は、前記第3予測アバターが実画像であるかどうかを指示することに用いられる、ステップと、
前記第3損失関数の第2分岐関数の関数値を決定するステップであって、前記第3損失関数の第2分岐関数は、前記第2サンプル画像y
kにおける前記サンプルアバターの第3知覚的特徴と前記第3予測アバターの第4知覚的特徴との間の差異を指示することに用いられる、ステップと、
前記第3損失関数の第1分岐関数の関数値と前記第3損失関数の第2分岐関数の関数値との和を、前記第3損失関数の関数値として決定するステップと、を含む、請求項5に記載の方法。
【請求項7】
前記第1生成ネットワークは、エンコーダと、第1デコーダとを含み、
画像処理モデルにおける第1生成ネットワークを呼び出し、第1サンプルセットにおける第1サンプル画像x
iを処理して、第1予測画像[数1]を得る前記ステップは、
前記エンコーダを呼び出して前記第1サンプル画像x
iをエンコードして、第1特徴ベクトルを得るステップと、
前記第1デコーダを呼び出して前記第1特徴ベクトルをデコードして、第1生成画像、及び前記第1領域分割情報を得るステップであって、前記第1領域分割情報は、前記第1生成画像におけるアバター領域を指示することに用いられる、ステップと、
前記第1領域分割情報に基づき、前記第1生成画像から前記第1予測画像[数1]を抽出するステップと、を含む、請求項1に記載の方法。
【請求項8】
前記第1生成ネットワークは、エンコーダと、第1デコーダとを含み、
前記第1生成ネットワークを呼び出し、第2サンプルセットにおける第2サンプル画像y
kを処理して、第2予測画像[数2]を得る前記ステップは、
前記エンコーダを呼び出して前記第2サンプル画像y
kをエンコードして、第2特徴ベクトルを得るステップと、
前記第1デコーダを呼び出して前記第2特徴ベクトルをデコードして、第2生成画像、及び前記第2領域分割情報を得るステップであって、前記第2領域分割情報は、前記第2生成画像におけるアバター領域を指示することに用いられる、ステップと、
前記第2領域分割情報に基づき、前記第2生成画像から前記第2予測画像[数2]を抽出するステップと、を含む、請求項1に記載の方法。
【請求項9】
前記エンコーダは、P個の特徴抽出ネットワークと、1つの特徴集約層とを含み、Pは、正の整数であり、それぞれの特徴抽出ネットワークは、1つのダウンサンプリング層を含み、P個の前記ダウンサンプリング層のスケールパラメータは異なり、
P個の前記ダウンサンプリング層は、前記エンコーダに入力された画像のP個のスケールパラメータ下での特徴情報を抽出することに用いられ、
前記特徴集約層は、P個の前記スケールパラメータ下での前記特徴情報に対して集約処理を行って、前記エンコーダに入力された画像と対応する特徴ベクトルを得ることに用いられる、請求項7、又は、8に記載の方法。
【請求項10】
前記第1デコーダは、1つの第1特徴変換ネットワークと、Q個の第1画像再構成ネットワークと、1つの第1畳み込みネットワークとを含み、Qは、正の整数であり、それぞれの前記第1画像再構成ネットワークは、1つの第1残差ネットワークと、1つの第1アップサンプリング層とを含み、
前記第1特徴変換ネットワークは、前記第1デコーダに入力された特徴ベクトルを特徴マップに変換することに用いられ、
Q個の前記第1画像再構成ネットワークは、前記特徴マップに対して第1特徴復元処理を行って、融合特徴画像を得ることに用いられ、
前記第1畳み込みネットワークは、前記融合特徴画像に対して畳み込み処理を行い、かつ前記第1デコーダに入力された特徴ベクトルに対応する生成画像を出力することに用いられる、請求項7、又は、8に記載の方法。
【請求項11】
前記第2生成ネットワークは、エンコーダと、第2デコーダと、身元識別ネットワークとを含み、
第2生成ネットワークを呼び出し、前記第2サンプル画像y
kを処理して、第3予測画像[数3]を得る前記ステップは、
前記エンコーダを呼び出して前記第2サンプル画像y
kをエンコードして、第2特徴ベクトルを得るステップと、
前記身元識別ネットワークを呼び出して前記第2サンプル画像y
kを識別して、前記第2サンプル画像y
kの識別情報を得るステップと、
前記第2デコーダを呼び出し、前記第2サンプル画像y
kの前記識別情報に従って前記第2特徴ベクトルをデコードして、第3生成画像、及び前記第3領域分割情報を得るステップであって、前記第3領域分割情報は、前記第3生成画像におけるアバター領域を指示することに用いられる、ステップと、
前記第3領域分割情報に基づき、前記第3生成画像から前記第3予測画像[数3]を抽出するステップと、を含む、請求項5に記載の方法。
【請求項12】
前記第2デコーダは、1つの第2特徴変換ネットワークと、Q個の第2画像再構成ネットワークと、1つの第2畳み込みネットワークと、を含み、Qは、正の整数であり、それぞれの前記第2画像再構成ネットワークは、1つの第2残差ネットワークと、1つの第2アップサンプリング層と、1つの自己適応モジュールとを含み、
前記自己適応モジュールは、前記第2デコーダのデコード過程において、前記第2サンプル画像y
kの識別情報に基づいて、前記識別情報と対応する第3特徴ベクトルを取得することに用いられ、前記第3特徴ベクトルは、前記第2デコーダが前記第2デコーダに入力された特徴ベクトルをデコードするように指示するために用いられる、請求項11に記載の方法。
【請求項13】
前記画像処理モデルの訓練を完了した後に、前記方法は、
テストビデオを取得するステップであって、前記テストビデオは、Rフレームのテスト画像を含み、各フレームのテスト画像は、1つの校正アバターを含み、Rは、正の整数である、ステップと、
訓練完了後の前記画像処理モデルの第1生成ネットワークを呼び出してそれぞれRフレームの前記テスト画像を処理して、Rフレームの前記テスト画像とそれぞれ対応する予測画像を得るステップであって、Rフレームの前記予測画像は、前記ターゲット人物の前記ターゲットアバターを含み、且つRフレームの前記予測画像におけるアバターの前記第1種類の属性は、対応する前記テスト画像における前記校正アバターの前記第1種類の属性と一致している、ステップと、
前記テストビデオにおける、前記校正アバターを削除したRフレームの前記テスト画像に対して画像補完を行う、ステップと、
Rフレームの前記予測画像をそれぞれ画像補完後のテストビデオにおける相応な前記テスト画像と融合して、ターゲットビデオを得るステップと、をさらに含む、請求項1に記載の方法。
【請求項14】
前記第1種類の属性は、非身元識別属性を指す、請求項1~13のいずれか一項に記載の方法。
【請求項15】
画像処理装置であって、前記画像処理装置は、
画像処理モデルにおける第1生成ネットワークを呼び出し、第1サンプルセットにおける第1サンプル画像x
iを処理して、第1予測画像[数1]を得ることに用いられる第1予測画像取得モジュールであって、前記第1予測画像[数1]は、第1予測アバターを含み、前記第1サンプルセット中には、N個の第1サンプル画像が含まれ、それぞれの前記第1サンプル画像は、いずれも同一のターゲット人物に対応するターゲットアバターを含み、Nは、正の整数であり、iは、正の整数で、且つi≦Nである、第1予測画像取得モジュールと、
前記第1生成ネットワークを呼び出し、第2サンプルセットにおける第2サンプル画像y
kを処理して、第2予測画像[数2]を得ることに用いられる第2予測画像取得モジュールであって、前記第2予測画像[数2]は、第2予測アバターを含み、前記第2サンプルセット中には、M個の第2サンプル画像が含まれ、それぞれの第2サンプル画像は、サンプルアバターを含み、Mは、正の整数であり、kは、正の整数で、且つk≦Mである、第2予測画像取得モジュールと、
前記第1サンプル画像x
iにおける前記ターゲットアバターと前記第1予測アバターとの間の差異、前記第2サンプル画像y
kにおける前記サンプルアバターの第1種類の属性と前記第2予測アバターの前記第1種類の属性との間の差異に基づき、前記画像処理モデルを訓練することに用いられるモデル訓練モジュールであって、前記画像処理モデルは、入力画像におけるアバターを前記ターゲットアバターに置換し、かつ前記入力画像におけるアバターの前記第1種類の属性を保持することに用いられる、モデル訓練モジュールと、を含む、画像処理装置。
【請求項16】
画像処理機器であって、記憶装置と、プロセッサとを含み、
前記記憶装置には、コンピュータプログラムが記憶されており、
前記プロセッサは、前記コンピュータプログラムをロードし、かつ実行することで、請求項1~14のいずれか一項に記載の画像処理方法を実現することに用いられる、画像処理機器。
【請求項17】
コンピュータ可読記憶媒体であって、前記コンピュータ可読記憶媒体には、コンピュータプログラムが記憶されており、前記コンピュータプログラムは、プロセッサによりロードされ、かつ請求項1~14のいずれか一項に記載の画像処理方法を実行することに適する、コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、コンピュータの技術分野に関し、具体的に画像処理方法、装置、機器、及びコンピュータ可読記憶媒体に関する。
【0002】
本願は、2021年6月3日に提出され、出願番号が第2021106203828号であり、発明の名称が「画像処理方法、装置、機器、及びコンピュータ可読記憶媒体」である中国特許出願の優先権を主張し、その全部の内容は、引用により本願に組み込まれている。
【背景技術】
【0003】
コンピュータ技術の継続的な発展に伴って、画像処理技術が幅広く発展している。ここで、画像処理技術を利用してアバター変換を実現することは、1つの比較的新しい試み、及び応用であり、ここで、アバター変換とは、画像における元のアバターをターゲットアバターに置換する過程を指す。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本願の実施例は、画像処理方法、装置、機器、及びコンピュータ可読記憶媒体を提供することにより、画像処理モデルを訓練することができ、且つ訓練により得られた画像処理モデルの処理正確性が比較的高く、置換により取得されたアバターのリアリティが比較的高く、該画像処理モデルの使用シーンが広い。
【課題を解決するための手段】
【0005】
一態様では、本願の実施例は、画像処理方法を提供し、
画像処理モデルにおける第1生成ネットワークを呼び出し、第1サンプルセットにおける第1サンプル画像xiを処理して、第1予測画像[数1]を得るステップであって、前記第1予測画像[数1]は、第1予測アバターを含み、前記第1サンプルセット中には、N個の第1サンプル画像が含まれ、それぞれの前記第1サンプル画像は、いずれも同一のターゲット人物に対応するターゲットアバターを含み、Nは、正の整数であり、iは、正の整数で、且つi≦Nである、ステップと、
前記第1生成ネットワークを呼び出し、第2サンプルセットにおける第2サンプル画像ykを処理して、第2予測画像[数2]を得るステップであって、前記第2予測画像[数2]は、第2予測アバターを含み、前記第2サンプルセット中には、M個の第2サンプル画像が含まれ、それぞれの第2サンプル画像は、サンプルアバターを含み、Mは、正の整数であり、kは、正の整数で、且つk≦Mである、ステップと、
前記第1サンプル画像xiにおける前記ターゲットアバターと前記第1予測アバターとの間の差異、前記第2サンプル画像ykにおける前記サンプルアバターの第1種類の属性と前記第2予測アバターの前記第1種類の属性との間の差異に基づき、前記画像処理モデルを訓練するステップであって、前記画像処理モデルは、入力画像におけるアバターを前記ターゲットアバターに置換し、かつ前記入力画像におけるアバターの前記第1種類の属性を保持することに用いられる、ステップと、を含む。
【0006】
【0007】
一態様では、本願の実施例は、画像処理装置を提供し、前記画像処理装置は、
画像処理モデルにおける第1生成ネットワークを呼び出し、第1サンプルセットにおける第1サンプル画像xiを処理して、第1予測画像[数1]を得ることに用いられる第1予測画像取得モジュールであって、前記第1予測画像[数1]は、第1予測アバターを含み、前記第1サンプルセット中には、N個の第1サンプル画像が含まれ、それぞれの前記第1サンプル画像は、いずれも同一のターゲット人物に対応するターゲットアバターを含み、Nは、正の整数であり、iは、正の整数で、且つi≦Nである、第1予測画像取得モジュールと、
前記第1生成ネットワークを呼び出し、第2サンプルセットにおける第2サンプル画像ykを処理して、第2予測画像[数2]を得ることに用いられる第2予測画像取得モジュールであって、前記第2予測画像[数2]は、第2予測アバターを含み、前記第2サンプルセット中には、M個の第2サンプル画像が含まれ、それぞれの第2サンプル画像は、サンプルアバターを含み、Mは、正の整数であり、kは、正の整数で、且つk≦Mである、第2予測画像取得モジュールと、
前記第1サンプル画像xiにおける前記ターゲットアバターと前記第1予測アバターとの間の差異、前記第2サンプル画像ykにおける前記サンプルアバターの第1種類の属性と前記第2予測アバターの前記第1種類の属性との間の差異に基づき、前記画像処理モデルを訓練することに用いられるモデル訓練モジュールであって、前記画像処理モデルは、入力画像におけるアバターを前記ターゲットアバターに置換し、かつ前記入力画像におけるアバターの前記第1種類の属性を保持することに用いられる、モデル訓練モジュールと、を含む。
【0008】
一態様では、本願は、画像処理機器を提供し、記憶装置と、プロセッサと、を含み、
前記記憶装置には、コンピュータプログラムが記憶されており、
前記プロセッサは、前記コンピュータプログラムをロードし、かつ実行することで、前記画像処理方法を実現することに用いられる。
【0009】
一態様では、本願は、コンピュータ可読記憶媒体を提供し、前記コンピュータ可読記憶媒体には、コンピュータプログラムが記憶されており、前記コンピュータプログラムは、プロセッサによりロードされ、かつ前記画像処理方法を実行することに適する。
【0010】
一態様では、本願は、コンピュータプログラム製品、又は、コンピュータプログラムを提供し、該コンピュータプログラム製品、又は、コンピュータプログラムは、コンピュータ命令を含み、該コンピュータ命令は、コンピュータ可読記憶媒体に記憶されている。コンピュータ機器のプロセッサは、コンピュータ可読記憶媒体から該コンピュータ命令を読み取り、プロセッサは、該コンピュータ命令を実行することで、該コンピュータ機器に前記各種の選択可能な実現方式において提供された画像処理方法を実行させる。
【発明の効果】
【0011】
本願の実施例により提供される技術的解決手段は、以下の有益な効果を含むことができる。
【0012】
第1サンプル画像と第1生成ネットワークでそれを処理して得た第1予測画像との間のアバター差異、及び第2サンプル画像と第1生成ネットワークでそれを処理して得た第2予測画像との間の第1種類の属性の差異に基づいて、画像処理モデルを訓練することで、訓練完了後の画像処理モデルは、入力画像におけるアバターをターゲットアバターに置換し、かつ入力画像におけるアバターの第1種類の属性を保持するという能力を学習し、それにより、置換後のアバターの真実性を比較的高め、画像処理の正確性、及び置換効果を向上させる。
【0013】
理解すべき点は、以上の一般的な記述、及び以下の細部に対する記述は、例示的、かつ解釈的なものに過ぎず、本願を制限することができない。
【0014】
本願の実施例における技術的解決手段をより明確に説明するために、以下、実施例の記述において使用される必要がある図面を簡単に紹介する。明らかなように、以下の記述における図面は、本願のいくつかの実施例に過ぎず、当業者にとっては、創造的な労働を必要としない前提で、さらにそれらの図面に従ってその他の図面を取得することができる。
【図面の簡単な説明】
【0015】
【
図1】本願の1つの例示的な実施例により提供される画像処理シーンの図を示している。
【
図2】本願の1つの例示的な実施例により提供される画像処理方法のフローチャートを示している。
【
図3】本願の1つの例示的な実施例により提供される他の画像処理方法のフローチャートを示している。
【
図4】本願の1つの例示的な実施例により提供される訓練サンプルセットの生成フローチャートを示している。
【
図5】本願の1つの例示的な実施例により提供されるエンコーダの構造模式図を示している。
【
図6】本願の1つの例示的な実施例により提供される第1デコーダの構造模式図を示している。
【
図7】本願の1つの例示的な実施例により提供される第2デコーダの構造模式図を示している。
【
図8】本願の1つの例示的な実施例により提供される第1損失関数の決定過程の模式図を示している。
【
図9】本願の1つの例示的な実施例により提供される第1損失関数の決定過程の模式図を示している。
【
図10】本願の1つの例示的な実施例により提供される第1損失関数の決定過程の模式図を示している。
【
図11】本願の1つの例示的な実施例により提供されるテストビデオ処理のフローチャートを示している。
【
図12】本願の1つの例示的な実施例により提供される第1生成ネットワークによるテスト画像の生成処理のフローチャートを示している。
【
図13】本願の1つの例示的な実施例により提供されるテストビデオ処理のフローチャートを示している。
【
図14】本願の1つの例示的な実施例により提供される画像処理装置の構造模式図を示している。
【
図15】本願の1つの例示的な実施例により提供される画像処理機器の構造模式図を示している。
【発明を実施するための形態】
【0016】
ここでは、例示的な実施例を詳細に説明することになり、その例は、図面において示される。以下の記述が図面に関するときには、特に断りのない限り、異なる図面における同じ数字は、同じ、又は、類似する要素を示す。以下の例示的な実施例において記述される実施形態は、本願と一致するすべての実施形態を代表しない。逆に、それらは、添付された特許請求の範囲において詳細に記述された、本願のいくつかの態様と一致する方法の例に過ぎない。
【0017】
以下、本願の実施例における図面を組み合わせて、本願の実施例における技術的解決手段を明確で、完全に記述することになる。
【0018】
本願の実施例は、人工知能(Artificial Intelligence、AI)、及び機械学習(Machine Learning、ML)等の技術に関する。
【0019】
また、本願の実施例は、さらにアバター変換、及び生成ネットワーク(Generator)に関し、ここで、アバター変換とは、第1人物画像における全部、又は、一部のアバター特徴を第2人物画像中に置換する過程を指し、本願の実施例では、第2人物画像を画像処理モデルに入力することにより、画像処理モデルから出力された予測人物画像を得る。該予測人物画像は、第1人物画像のアバターを有するだけでなく、第2人物画像の第1種類の属性を保持している。選択可能に、予測人物画像が第1人物画像のアバターを有することとは、予測人物画像が、例えば五官、髪、皮膚、眼鏡等の容貌特徴のような第1人物画像アバターを有するだけでなく、姿勢、表情、照明等の属性特徴のような第2人物画像の第1種類の属性を有する。
【0020】
生成ネットワークは、敵対的生成ネットワーク(Generative Adversarial Network、GANと略称)の構成部分であり、GANは、教師なし学習の1つの方法であり、1つの生成ネットワーク(Generator)と、1つの判別ネットワーク(Discriminator)で構成される。判別ネットワークの入力は、真実のサンプル画像(すなわち実画像であり、該実画像とは、非モデル生成画像を指す)、又は、生成ネットワークから出力された予測画像(すなわち偽画像であり、該偽画像とは、モデルに基づいて生成された画像を指す)である。判別ネットワークの目的は、生成ネットワークから出力された予測画像、及び真実のサンプル画像の真実性をできるだけ判別し、すなわちどれが実画像であるかどれが予測画像であるかを区別することができることである。一方、生成ネットワークは、生成された予測画像が判別ネットワークにできるだけ識別されないようにし、すなわち予測画像をできるだけ現実にそっくりなものにする。2つのネットワークは、互いに敵対し、パラメータを調整し続け(すなわち、互いに最適化する)、それにより最終的に生成ネットワークにより生成された予測画像が判別ネットワークに偽であると判断されにくくなるか、又は、判別ネットワークの識別正確性が閾値に達する。
【0021】
AI技術におけるコンピュータ視覚技術、及び機械学習技術に基づいて、本願の実施例は、画像処理方法を提供し、敵対的生成ネットワークに基づいて画像処理モデルを訓練することで、訓練後の画像処理モデルが任意のアバターをターゲットアバターに変換することを可能にし、かつ置換後のアバターが任意のアバターの第1種類の属性を保持する(すなわちアバター変換を実現する)ことを可能にする。
【0022】
図1は、本願の1つの例示的な実施例により提供される画像処理シーンの図を示している。
図1に示すように、画像処理シーンにおいて、端末機器101とサーバ102とが含まれる。ここで、端末機器101は、ユーザーが使用する機器であり、さらに、該端末機器は、さらに画像収集機能、又は、インタフェース表示機能を有する機器であってもよく、端末機器101は、スマートフォン(たとえばAndroid携帯電話、iOS携帯電話等)、タブレットコンピュータ、ポータブルパーソナルコンピュータ、モバイルインターネット機器(Mobile Internet Devices、MID)等の機器を含んでもよいがそれらに制限されない。端末機器には、表示装置が配置されており、表示装置は、さらにディスプレイ、ディスプレイスクリーン、タッチスクリーン等であってもよく、タッチスクリーンは、さらにタッチ制御スクリーン、タッチ制御パネル等であってもよく、本願の実施例では、限定されない。
【0023】
サーバ102とは、取得されたサンプルに従って、画像処理モデルを訓練することができるバックグラウンド機器を指し、訓練後の画像処理モデルを得た後に、サーバ102は、端末機器101に訓練後の画像処理モデルを返してもよく、サーバにおいて訓練後の画像処理モデルを配備してもよい。サーバ102は、独立した物理サーバであってもよく、複数の物理サーバから構成されたサーバクラスター、又は、分散システムであってもよく、さらにクラウドサービス、クラウドデータベース、クラウドコンピューティング、クラウド関数、クラウド記憶、ネットワークサービス、クラウド通信、ミドルウェアサービス、ドメイン名サービス、セキュリティサービス、CDN(Content Delivery Network、コンテンツデリバリネットワーク)、ビッグデータ、及び人工知能プラットフォーム等の基本的なクラウドコンピューティングサービスを提供するクラウドサーバであってもよい。また、さらに複数のサーバを組み合わせて1つのブロックチェーンネットワークを形成してもよく、それぞれのサーバは、ブロックチェーンネットワークにおける1つのノードであり、画像処理モデルの訓練、記憶、又は、デリバリを共同で行う。端末機器101とサーバ102との間は、有線通信、又は、無線通信方式によって直接、又は、間接的な接続を行うことができ、本願は、ここについて制限しない。
【0024】
説明する必要がある点として、
図1に示されたモデル処理シーンにおける端末機器とサーバの数量は、一例に過ぎず、たとえば、端末機器とサーバの数量は、複数であってもよく、本願は、端末機器、及びサーバの数量を限定しない。
【0025】
図1に示された画像処理シーンにおいて、画像処理プロセスは、主に以下のステップを含む。
【0026】
(1)サーバは、画像処理モデルの訓練サンプルセットを取得し、該訓練サンプルセットは、端末機器から取得されるものであってもよく、データベースから取得されるものであってもよい。訓練サンプルセットは、第1サンプルセットと、第2サンプルセットとを含む。第1サンプルセットは、N個の第1サンプル画像を含み、それぞれの第1サンプル画像は、いずれも同一のターゲット人物のターゲットアバターを含み、第2サンプルセットは、M個の第2サンプル画像を含み、それぞれの第2サンプル画像は、1つのサンプルアバターを含み、M、Nは、いずれも正の整数であり、画像処理モデルは、第1生成ネットワークを含む。
【0027】
ここで、第2サンプル画像に含まれたサンプルアバターとは、ターゲット人物以外のその他の人物のアバターを指す。一例として、第1サンプルセットは、N個の第1サンプル画像を含み、それぞれの第1サンプル画像は、いずれもユーザーAのアバターを含み、第2サンプルセットは、M個の第2サンプル画像を含み、それぞれの第2サンプル画像は、いずれも1つのユーザーA以外のその他の人物のサンプルアバターを含む。選択可能に、M個の第2サンプル画像におけるサンプルアバターは異なる人物と対応する。訓練済みの画像処理モデルにおける第1生成ネットワークは、ユーザーAに対応する予測画像を生成することができ、該予測画像において、ユーザーAのアバターを有し、同時に元の入力画像におけるアバターの第1種類の属性を保持する。
【0028】
(2)サーバは、第1サンプルセットから第1サンプル画像xiを選び取り、第1生成ネットワークを呼び出して第1サンプル画像xi(該画像が実画像である)を処理して、第1予測画像[数1](該画像が偽画像である)を得る。iは、正の整数で、且つi≦Nであり、ここで、第1生成ネットワークを呼び出して第1サンプル画像xiを処理することとは、第1生成ネットワークにおけるエンコーダにより第1サンプル画像xiにおけるアバターの第1特徴ベクトルを抽出し、かつ第1生成ネットワークにおけるデコーダにより、第1特徴ベクトルをデコードして、第1予測画像[数1]を得ることを指す。
【0029】
(3)サーバは、第2サンプルセットから第2サンプル画像ykを選び取り、第1生成ネットワークを呼び出して第2サンプル画像yk(該画像が実画像である)に対して生成処理を行って、第2予測画像[数2](該画像が偽画像である)を得る。kは、正の整数で、且つk≦Mであり、ここで、第1生成ネットワークを呼び出して第2サンプル画像ykに対して生成処理を行うこととは、第1生成ネットワークにおけるエンコーダにより第2サンプル画像ykにおける第2特徴ベクトルを抽出し、かつ第1生成ネットワークにおけるデコーダにより、第2特徴ベクトルをデコードして、第2予測画像[数2]を得ることを指す。
【0030】
(4)サーバは、第1サンプル画像xiにおけるターゲットアバターと第1予測画像[数1]におけるアバター(すなわち第1予測アバター)との間の差異、及び第2サンプル画像ykにおけるサンプルアバターの第1種類の属性と第2予測画像[数2]におけるアバター(第2予測アバター)の第1種類の属性との間の差異に基づき、画像処理モデルを訓練する。
【0031】
1つの実施例では、サーバは、構築された損失関数により各画像間の差異を計算することができる。たとえば、サーバは、第1損失関数により第1サンプル画像xiにおけるターゲットアバターと第1予測アバターとの間の差異を決定し、第2損失関数により第2サンプル画像ykにおけるサンプルアバターの第1種類の属性と第2予測画像[数2]における第1種類の属性との間の差異を決定し、かつ第1損失関数の関数値、及び第2損失関数の関数値に基づいてターゲット損失関数の関数値を決定し、ターゲット損失関数の関数値に基づいて画像処理モデルのパラメータを更新することで、画像処理モデルを訓練する。
【0032】
(5)画像処理モデルが訓練完了条件に達するまで、上記ステップ(2)~ステップ(4)を反復して実行する。該訓練完了条件は、ターゲット損失関数の損失値が反復回数に伴って減少しなくなるか、又は、反復回数が回数閾値に達するか、又は、ターゲット損失関数の損失値が損失閾値未満である等である。ここで、訓練完了後の画像処理モデルは、入力画像におけるアバターをターゲットアバターに置換し、かつ入力アバターにおける画像の第1種類の属性を保持することができる。
【0033】
上記記述に基づいて、以下、図面と併せて本願の実施例により提案された画像処理方法を詳細に紹介する。
【0034】
画像処理モデルの一回の反復過程を例として、
図2は、本願の1つの例示的な実施例により提供される画像処理方法のフローチャートを示している。該画像処理方法は、
図1に示されたサーバ102により実行することができ、
図2に示すように、画像処理方法は、以下のステップを含むがそれらに制限されない。
【0035】
S201:画像処理モデルにおける第1生成ネットワークを呼び出し、第1サンプルセットにおける第1サンプル画像xiを処理して、第1予測画像[数1]を得る。該第1予測画像[数1]は、第1予測アバターを含み、該第1サンプルセット中には、N個の第1サンプル画像が含まれ、それぞれの第1サンプル画像は、いずれも同一のターゲット人物に対応するターゲットアバターを含み、Nは、正の整数であり、iは、正の整数で、且つi≦Nである。
【0036】
概略的には、第1サンプルセットにおけるN個の画像は、いずれもユーザーAのアバターを含み、N個の第1サンプル画像は、ユーザーAの異なるシーンにおける画像であってもよく、たとえば、第1サンプルセットにおける異なる画像におけるユーザーAは、頭を上げる、頭を下げる、のような異なる姿勢、笑い、泣き等のような異なる表情を有することができる。
【0037】
S202:第1生成ネットワークを呼び出して、第2サンプルセットにおける第2サンプル画像ykを処理して、第2予測画像[数2]を得る。該第2予測画像[数2]は、第2予測アバターを含み、該第2サンプルセット中には、M個の第2サンプル画像が含まれ、それぞれの第2サンプル画像は、サンプルアバターを含み、Mは、正の整数であり、kは、正の整数で、且つk≦Mである。
【0038】
ここで、第2サンプルセットにおけるM個の画像は、ユーザーAと異なるユーザーのアバターを含む。概略的には、該第2サンプルセットにおけるアバターは、ユーザーAを除くいずれか1人、又は、複数のユーザーのアバターを含む画像であってもよく、訓練過程の過剰適合を回避するために、第2サンプルセット中には、複数の異なるユーザーのアバターと対応する画像を含むことができる。選択可能に、該第2サンプルセットにおけるアバターは、ユーザーAを除くいずれか1人、又は、複数のユーザーの異なるシーンにおける画像を含むことができる。
【0039】
S203:第1サンプル画像xiにおけるターゲットアバターと第1予測アバターとの間の差異、該第2サンプル画像ykにおけるサンプルアバターの第1種類の属性と第2予測アバターの第1種類の属性との間の差異に基づき、画像処理モデルを訓練する。
【0040】
サーバは、更新後の画像処理モデルが訓練完了条件に達するかどうかを判断する。更新後の画像処理モデルが訓練完了条件に達していなければ、画像処理モデルが訓練完了条件に達するまで、上記S201~S203の過程を反復し、更新後の画像処理モデルが訓練完了条件に達していれば、画像処理モデルの訓練を終了する。該画像処理モデルは、入力画像におけるアバターをターゲットアバターに置換し、かつ入力画像におけるアバターの第1種類の属性を保持することに用いられる。
【0041】
ここで、入力画像におけるアバターをターゲットアバターに置換することは、入力画像における第2種類の属性をターゲットアバターにおける第2種類の属性に置換することを指してもよい。該第2種類の属性は、第1種類の属性以外の他の属性であり、つまり、置換後の画像は、ターゲットアバターの第2種類の属性を保持するだけでなく、入力画像におけるアバターの第1種類の属性を保持する。
【0042】
訓練完了後の画像処理モデルにより、1vNのアバター変換ニーズを満たすことができる。該第1生成ネットワークは、ターゲット人物のターゲットアバターをその他の任意の人物の異なるシーンにおける人物画像中に置換することを実現することができ、すなわち第1生成ネットワークは、入力画像(その他の任意の人物のアバターを含む画像)を処理して、入力画像の第1種類の属性、及びターゲット人物のターゲットアバターの第2種類の属性を有する画像を取得することができる。
【0043】
本願の実施例では、第1サンプルセットにおけるN個の画像と対応するターゲットユーザーは、アバターの第2種類の属性を提供するユーザーである。画像処理モデルの訓練が完了した後に、訓練済みの画像処理モデルにおける第1生成ネットワークにより入力画像を処理した後に、取得された予測画像におけるアバターは、ターゲットユーザーのアバターの第2種類の属性を有するだけでなく、入力画像の第1種類の属性を有し、概略的には、第1サンプルセットにおけるN個の画像と対応するユーザーは、ユーザーAであり、画像処理モデルにおける第1生成ネットワークにより任意の画像を処理するときに、いずれもユーザーAのアバターの第2種類の属性を含むアバターを取得することができる。
【0044】
本願の実施例に示された手段では、任意の人物のアバターをターゲット人物のアバターに置換することができ、それにより1vNのアバター置換応用を実現し、アバター変換の応用シーンを拡張する。
【0045】
選択可能に、第1種類の属性は、非身元識別属性であり、第2種類の属性とは、身元識別属性を指す。概略的には、身元識別属性は、五官、皮膚、髪、眼鏡等の容貌特徴を含むことができ、非身元識別属性は、表情、姿勢、照明等の特徴属性を含むことができる。
図3は、本願の1つの例示的な実施例により提供される他の画像処理方法のフローチャートを示している。該画像処理方法は、
図1に示されたサーバ102により実行することができ、
図3に示すように、該画像処理方法は、以下のステップを含むがそれらに制限されない。
【0046】
S301:画像処理モデルの訓練サンプルセットを取得する。
【0047】
1つの可能な実現方式では、モデル訓練の安定性、及び正確性を向上させるために、訓練サンプルセットにおける画像は、前処理後の画像である。該前処理は、アバター校正、アバター領域分割等の処理過程のうちの少なくとも1種を含み、概略的には、
図4は、本願の1つの例示的な実施例により提供される訓練サンプルセットの生成フローチャートを示している。
図4に示すように、画像処理モデルの訓練サンプルセットを取得するプロセスは、主にステップS3011-ステップS3013を含む。
【0048】
S3011:データ収集段階。
【0049】
サーバは、第1オリジナルサンプルセット、及び第2オリジナルサンプルセットを取得する。該第1オリジナルサンプルセットにおける各枚の画像中には、いずれもターゲット人物のターゲットアバターを含み、第2オリジナルサンプルセットにおける各枚の画像中には、ターゲット人物以外のその他の人物のサンプルアバターを含む。選択可能に、サーバは、ビデオに対して画像フレーム抽出を行う方式により対応するアバターを含む画像を取得することができる。第1オリジナルサンプルセットを取得する過程を例とすると、サーバは、ターゲット人物と対応するビデオからターゲットアバターを含む画像を取得することができる。ターゲット人物と対応するビデオは、端末機器がアップロードしたビデオであってもよく、該ビデオは、一定の継続時間長さを有し、サーバは、画像フレーム抽出方式により該ビデオからターゲット人物のターゲットアバターを含む画像をX枚抽出し、第1オリジナルサンプルセットを得ることができ、同様な方式に基づいて、さらに第2オリジナルサンプルセットを取得することができる。又は、選択可能に、データベース中には、各ユーザーとそれぞれ対応する画像が予め記憶されており、同様に、サーバがデータベースから第1オリジナルサンプルセット、及び第2オリジナルサンプルセットを取得することは、サーバがターゲット人物と対応する身元情報に基づいてターゲット人物のターゲットアバターを含む画像をX枚取得して第1オリジナルサンプルセットを組成し、ターゲット人物以外の他の身元情報に基づいてその他の人物のサンプルアバターを含む画像を少なくとも2枚取得して、第2オリジナルサンプルセットを組成することができることを含む。ここで、第2オリジナルサンプルセットにおける異なる画像と対応する人物は、同じである、又は、異なるようにしてもよい。
【0050】
選択可能に、上記2種のオリジナルサンプルセット取得方式は、組み合わせて使用することができる。概略的には、サーバは、ビデオに対して画像フレーム抽出を行う方式により第1オリジナルサンプルセットを取得し、データベースから第2オリジナルサンプルセットを取得してもよく、又は、サーバは、ビデオに対して画像フレーム抽出を行う方式により第2オリジナルサンプルセットを取得し、データベースから第1オリジナルサンプルセットを取得してもよく、又は、サーバは、ビデオに対して画像フレーム抽出を行う方式により第1オリジナルサンプルセット/第2オリジナルサンプルセットにおける一部の画像を取得し、データベースから第1オリジナルサンプルセット/第2オリジナルサンプルセットにおける他の部分の画像を取得してもよい。
【0051】
S3012:アバター校正段階。サーバは、顔検出アルゴリズム(たとえば、AdaBoostフレームワーク、変形可能パーツモデル(Deformable Part Model、DMP)モデル、Cascade CNN等)により、収集されたオリジナルサンプルセット(第1オリジナルサンプルセット、及び第2オリジナルサンプルセットを含む)における画像に対してアバター領域検出を行い、かつアバター領域を校正する(たとえば、回帰ツリーに基づく顔位置合わせアルゴリズムを採用する)ことができ、その目的は、既知のアバター領域上にアバターの正確な形状を特定することである。また、サーバは、さらに、三次元モーフィングモデル(3D Morphable Models、3DMM)アルゴリズム)等のアバター姿勢補正アルゴリズムによりアバターを補正して、補正後のアバターを得ることができ、すなわちオリジナルアバターと対応する正面アバターを取得し、補正後のアバターにより画像処理モデルを訓練することで、モデル訓練の安定性の向上に有利となる。選択可能に、アバター校正後のオリジナルサンプル画像セットを訓練サンプルセットとして取得することができる、又は、サーバは、さらにアバター校正後のオリジナルサンプル画像セットに対してアバター領域分割を行って、アバター領域分割後のサンプル画像セットを訓練サンプルセットとして取得することができ、補正後の訓練サンプルセットを得た後に、サーバは、画像処理モデルの訓練過程を直接開始する、すなわちステップS302を実行してもよく、ステップS3013(該ステップは、選択可能な項目である)を継続的に実行してもよい。
【0052】
S3013:アバター領域分割段階。ステップS3012において、サーバは、既にオリジナルサンプル画像セットにおける各画像のアバター領域を決定したため、サーバは、補正後のオリジナルサンプル画像セットにおける各画像をトリミングし、各画像におけるアバター領域のみを保持することができる。つまり、画像処理モデルを訓練する前に、オリジナルサンプル画像セットに対してアバター補正、及びアバター分割を予め行う。オリジナルサンプル画像セットをそのまま使用して画像処理モデルを訓練することと比較して、アバター領域のみを保持するサンプル画像を使用して画像処理モデルを訓練することは、画像処理モデルの訓練効率を向上させることができる。
【0053】
S302:画像処理モデルにおける第1生成ネットワークを呼び出し、第1サンプルセットにおける第1サンプル画像xiを処理して、第1予測画像[数1]を得る。
【0054】
該第1サンプル画像xiは、第1サンプルセットにおける任意の1つの第1サンプル画像である。
【0055】
1つの実施形態では、第1生成ネットワークは、エンコーダと、第1デコーダとを含み、エンコーダは、画像特徴を抽出して、サンプル画像と対応する特徴ベクトルを得ることに用いられ、第1デコーダは、特徴ベクトルに従って予測画像を生成することに用いられる。
【0056】
概略的には、第1予測画像を取得する過程は、第1生成ネットワークにおけるエンコーダが第1サンプル画像xiを取得した後に、第1サンプル画像xiをエンコードして、第1サンプル画像xiと対応する第1特徴ベクトルを取得し、第1特徴ベクトルを得た後に、サーバが第1デコーダを呼び出して第1特徴ベクトルをデコードして、第1生成画像、及び第1領域分割情報を得る。該第1領域分割情報は、第1生成画像におけるアバター領域を指示することに用いられ、さらに、サーバは、第1領域分割情報に基づき、第1生成画像から第1予測画像[数1]を抽出する。
【0057】
概略的には、
図5は、本願の1つの例示的な実施例により提供されるエンコーダの構造模式図を示している。
図5に示すように、エンコーダは、P個の特徴抽出ネットワークと、1つの特徴集約層とを含み、Pは、正の整数であり、それぞれの特徴抽出ネットワークは、1つのダウンサンプリング層を含む。従って、1つのエンコーダ中には、P個のダウンサンプリング層が対応してあり、P個のダウンサンプリング層のスケールパラメータは異なる。たとえば、第1ダウンサンプリング層におけるdilation(スケールパラメータ)=1であり、第2ダウンサンプリング層におけるdilation(スケールパラメータ)=2であり、第3ダウンサンプリング層におけるdilation(スケールパラメータ)=4である。さらに、それぞれのダウンサンプリング層は、深さ分離畳み込みネットワーク(Depth Separable Convolution、DSN)に基づいて構築され、該深さ分離畳み込みネットワーク中には、畳み込み関数(Conv2d、k=1)と、深さ畳み込み関数(DepthConv2d、k=3、s=2、dilation=d)とが含まれる。これに基づいて、サーバがエンコーダを呼び出して第1サンプル画像x
iをエンコードして、第1特徴ベクトルを得る実施形態は、
P個の特徴抽出ネットワークにおけるダウンサンプリング層(すなわちP個のダウンサンプリング層)により第1サンプル画像x
iのP個の異なるスケールパラメータ下での特徴情報を抽出し、
特徴集約層により第1サンプル画像x
iのP個のスケールパラメータ下での特徴情報に対して集約処理を行って、第1サンプル画像x
iに対応する第1特徴ベクトルを得ることである。
【0058】
1つの可能な実現方式では、第1デコーダは、1つの第1特徴変換ネットワークと、Q個の第1画像再構成ネットワークと、1つの第1畳み込みネットワークとを含み、Qは、正の整数であり、それぞれの第1画像再構成ネットワークは、1つの第1残差ネットワークと、1つの第1アップサンプリング層とを含み、
該第1特徴変換ネットワークは、第1デコーダに入力された特徴ベクトルを特徴マップに変換することに用いられ、
Q個の第1画像再構成ネットワークは、特徴マップに対して第1特徴復元処理を行って、融合特徴画像を得ることに用いられる。
【0059】
該第1畳み込みネットワークは、融合特徴画像に対して畳み込み処理を行い、かつ第1デコーダに入力された特徴ベクトルに対応する生成画像を出力することに用いられる。概略的には、
図6は、本願の1つの例示的な実施例により提供される第1デコーダの構造模式図を示している。
図6に示すように、第1デコーダは、1つの第1特徴変換ネットワークと、Q個の第1画像再構成ネットワークと、1つの第1畳み込みネットワークとを含み、Qは、正の整数である。それぞれの第1画像再構成ネットワークは、1つの第1残差ネットワークと、1つの第1アップサンプリング層とを含む。ここで、第1特徴変換ネットワークは、第1デコーダに入力された特徴ベクトルを特徴マップに変換(Reshape)することに用いられる。第1画像再構成ネットワークは、特徴マップに対して第1特徴復元を行い、すなわちQ個の第1アップサンプリング層(Up Scale Block)により特徴マップのサイズを第1サンプル画像x
iのサイズと一致するように復元し、かつ第1残差ネットワーク(Residual Network)によりアップサンプリング過程において存在する勾配消失の問題を軽減して、第1サンプル画像と対応する融合特徴画像を得ることに用いられる。第1畳み込みネットワークは、第1サンプル画像と対応する融合特徴画像に対して畳み込み処理を行って、第1デコーダに入力された特徴ベクトルと対応する生成画像を得ることに用いられる。これに基づいて、サーバが第1デコーダを呼び出して第1特徴ベクトルをデコードして、第1生成画像、及び第1領域分割情報を得る実施形態は、
特徴変換ネットワークにより第1特徴ベクトルを変換して、第1特徴マップを得て、
Q個の第1画像再構成ネットワークにより特徴マップに対して第1特徴復元を行って、第1サンプル画像と対応する融合特徴画像を得て、
第1畳み込みネットワークにより第1サンプル画像と対応する融合特徴画像に対して畳み込み処理を行って、第1サンプル画像と対応する第1生成画像、及び第1領域分割情報を得ることであってもよい。
【0060】
S303:第1生成ネットワークを呼び出し、第2サンプルセットにおける第2サンプル画像ykを処理して、第2予測画像[数2]を得る。該第2予測画像[数2]は、第2予測アバターを含む。
【0061】
第1生成ネットワークが第1サンプル画像をエンコードする過程と同様に、相応には、第2予測画像を取得する過程は、以下のように実現することができる。第1生成ネットワークにおけるエンコーダが第2サンプル画像を取得した後に、第2サンプル画像をエンコードして、第2サンプル画像と対応する第2特徴ベクトルを取得し、その後に、サーバは、第1デコーダを呼び出して第2特徴ベクトルをデコードして、第2生成画像、及び第2領域分割情報を得る。該第2領域分割情報は、第2生成画像におけるアバター領域を指示することに用いられる。さらに、サーバは、第2領域分割情報に基づき、第2生成画像から第2予測画像[数2]を抽出する。
【0062】
ここで、サーバは、エンコーダを呼び出して第2サンプル画像ykをエンコードして、第2特徴ベクトルを得る実施形態は、
P個の特徴抽出ネットワークにおけるダウンサンプリング層(すなわちP個のダウンサンプリング層)により第2サンプル画像ykのP個のスケールパラメータ下での特徴情報を抽出し、
特徴集約層により第2サンプル画像ykのP個のスケールパラメータ下での特徴情報に対して集約処理を行って、第2特徴ベクトルを得ることであってもよい。
【0063】
第1生成ネットワークが第1特徴ベクトルをデコードする過程と同様に、相応には、サーバが第1デコーダを呼び出して第2特徴ベクトルをデコードして、第2生成画像、及び第2領域分割情報を得る実施形態は、
特徴変換ネットワークにより第2特徴ベクトルを変換して、第2特徴マップを得て、
Q個の第1画像再構成ネットワークにより第2特徴マップに対して第1特徴復元処理を行って、第2サンプル画像と対応する融合特徴画像を得て、
第1畳み込みネットワークにより第2サンプル画像と対応する融合特徴画像に対して畳み込み処理を行って、第2サンプル画像と対応する第2生成画像、及び第2領域分割情報を得ることであってもよい。
【0064】
S304:第2生成ネットワークを呼び出し、第2サンプル画像ykを処理して、第3予測画像[数3]を得る。該第3予測画像[数3]は、第3予測アバターを含み、該第2生成ネットワークは、第1生成ネットワークと同じ特徴抽出ユニットを有する。
【0065】
ここで、該第2生成ネットワークと第1生成ネットワークにおける同じ特徴抽出ユニットは、エンコーダであり、且つ両者は、同じ構造、及びパラメータを有し、該第2生成ネットワークは、第1生成ネットワークの訓練を補助するために用いられ、さらに、第2生成ネットワークは、第1生成ネットワークにおけるエンコーダの訓練を補助するために用いられる。
【0066】
【0067】
1つの可能な実現方式では、第2生成ネットワークは、エンコーダと、第2デコーダと、身元識別ネットワークとを含む。
【0068】
ここで、エンコーダ(すなわち第1生成ネットワーク、第2生成ネットワークが備える同じ特徴抽出構造)は、サンプル画像における画像特徴を抽出して特徴ベクトルを得ることに用いられる。身元識別ネットワークは、サンプル画像、又は、サンプル画像と対応する特徴ベクトルに基づいて画像の識別情報を取得することに用いられ、該識別情報は、異なる画像と対応する異なるID(Identification、身元アカウント)、エンコード情報等であってもよく、第2デコーダは、エンコーダが取得した特徴ベクトル、及び身元識別ネットワークにより提供された識別情報に従って、予測画像を生成することに用いられる。第3予測画像[数3]を生成する過程において、サーバは、エンコーダを呼び出して第2サンプル画像ykをエンコードして、第2サンプル画像ykと対応する第2特徴ベクトルを得て、第2サンプル画像ykをエンコードすると同時に、又は、第2サンプル画像ykをエンコードした後に、サーバは、身元識別ネットワークを呼び出し、第2サンプル画像yk、又は、第2サンプル画像ykと対応する第2特徴ベクトルに基づいて身元識別を行って、第2サンプル画像ykと対応する識別情報(たとえば第2サンプル画像ykにおけるサンプルアバターと対応する人物ID)を得る。さらに、サーバは、第2デコーダを呼び出して第2サンプル画像ykの識別情報に従って第2特徴ベクトルをデコードして、第3生成画像、及び第3領域分割情報を得る。該第3領域分割情報は、第3生成画像におけるアバター領域を指示することに用いられ、よりさらに、サーバは、第3領域分割情報に基づき、第3生成画像から第3予測画像[数3]を抽出する。
【0069】
ここで、サーバがエンコーダを呼び出して第2サンプル画像ykをエンコードして、第2特徴ベクトルを得る実施形態は、
P個の特徴抽出ネットワークにおけるダウンサンプリング層(すなわちP個のダウンサンプリング層)により第2サンプル画像ykのP個のスケールパラメータ下での特徴情報を抽出し
特徴集約層により第2サンプル画像ykのP個のスケールパラメータ下での特徴情報に対して集約処理を行って、第2特徴ベクトルを得ることであってもよい。
【0070】
図7は、本願の1つの例示的な実施例により提供される第2デコーダの構造模式図を示している。
図7に示すように、第2デコーダは、1つの第2特徴変換ネットワークと、Q個の第2画像再構成ネットワーク(第1デコーダにおける第1画像再構成ネットワークの数量と一致する)と、1つの第2畳み込みネットワークとを含み、Qは、正の整数であり、それぞれの第2画像再構成ネットワークは、1つの第2残差ネットワークと、1つの第2アップサンプリング層と、1つの自己適応モジュール(AdaIN)とを含む。ここで、第2特徴変換ネットワークは、第2デコーダに入力された特徴ベクトルを特徴マップに変換することに用いられ、第2画像再構成ネットワークは、特徴マップに対して第2特徴復元処理を行い、すなわちQ個の第2アップサンプリング層により特徴マップのサイズを第2サンプル画像y
kのサイズと一致するように復元することに用いられる。該自己適応モジュールは、アップサンプリング過程において、第2デコーダに入力された特徴ベクトルと対応する識別情報を加えることで、第2デコーダが該識別情報に基づいて特徴融合を行い、かつ第2残差ネットワークによりアップサンプリング過程において存在する勾配消失の問題を軽減して、第2サンプル画像と対応する融合特徴画像を得ることに用いられる。換言すれば、該自己適応モジュールは、第2デコーダのデコード過程において、第2サンプル画像y
kの識別情報に基づいて、識別情報と対応する第3特徴ベクトルを取得することに用いられ、該第3特徴ベクトルは、第2デコーダが第2デコーダに入力された特徴ベクトルをデコードするように指示するために用いられ、第2畳み込みネットワークは、第2サンプル画像と対応する融合特徴画像に対して畳み込み処理を行って、第2デコーダに入力された特徴ベクトルと対応する生成画像を得ることに用いられる。これに基づいて、サーバが第2デコーダを呼び出して第2サンプル画像の識別情報に従って第2特徴ベクトルをデコードして、第3生成画像、及び第3領域分割情報を得る実施形態は、
特徴変換ネットワークにより第2特徴ベクトルを変換して、第2特徴マップを得て、
Q個の第2画像再構成ネットワークにより第2特徴マップに対して第2特徴復元処理を行って、第2サンプル画像と対応する融合特徴画像を得て、
第2畳み込みネットワークにより第2サンプル画像と対応する融合特徴画像に対して畳み込み処理を行って、第2サンプル画像と対応する第3生成画像、及び第3領域分割情報を得ることであってもよい。
【0071】
S305:第1損失関数の関数値を決定し、該第1損失関数は、第1サンプル画像xiにおけるターゲットアバターと第1予測アバターとの間の差異を指示することに用いられる。
【0072】
1つの可能な実現方式では、第1損失関数の関数値を決定する過程は、以下のように実現することができる。
【0073】
第1判別機器を呼び出して第1サンプル画像xi、及び第1予測アバターをそれぞれ判別し、
第1サンプル画像xiの第1判別結果、及び第1予測アバターの第2判別結果に基づいて、第1損失関数の第1分岐関数の関数値を決定し、該第1判別結果は、第1サンプル画像xiが実画像であるかどうかを指示することに用いられ、該第2判別結果は、第1予測アバターが実画像であるかどうかを指示することに用いられ、
第1損失関数の第2分岐関数の関数値を決定し、該第1損失関数の第2分岐関数は、第1サンプル画像xiにおけるターゲットアバターの第1知覚的特徴と、第1予測アバターの第2知覚的特徴との間の差異を指示することに用いられ、
第1損失関数の第1分岐関数の関数値と第1損失関数の第2分岐関数の関数値との和を、第1損失関数の関数値として決定する。
【0074】
図6は、本願の1つの例示的な実施例により提供される第1損失関数の決定過程の模式図を示している。
図6に示すように、サーバは、第1判別機器(特定の判別機器)、及び特徴知覚ネットワークを呼び出すことにより第1損失関数の関数値の決定を実現する。概略的には、該特徴知覚ネットワークは、画像知覚類似度指標(Learned Perceptual Image Patch Similarity、LPIPS)ネットワークとして実現することができる。画像処理モデルが第1サンプル画像x
iを取得し、かつ第1生成ネットワークにより第1サンプル画像x
iを処理して、第1予測画像[数1]を得る実施形態は、ステップS302を参照することができるが、ここでは、詳しく説明しない。
【0075】
第1予測画像[数1]を得た後に、一方では、サーバは、第1判別機器により第1サンプル画像xi、及び第1予測画像[数1]をそれぞれ判別し、すなわちそれぞれ第1サンプル画像xi、及び第1予測画像[数1]が実画像であるかどうかを判断し、かつ第1サンプル画像xiの第1判別結果、及び第1予測画像[数1]の第2判別結果に基づいて、第1損失関数の第1分岐関数の関数値を決定し、該第1分岐関数は、以下[数4]のように表すことができる。
【0076】
【0077】
ここで、LGAN1は、第1敵対的生成ネットワークGAN(第1生成ネットワーク(G1)、及び第1判別機器(D1)を含む)の第1損失関数の第1分岐関数を代表する。[数5]は、第1生成ネットワーク(G)が生成した第1予測画像[数1]と第1サンプル画像xiとの差異をできるだけ小さくすることを表し、[数6]は、第1判別機器による第1予測画像[数1]の判別結果と第1サンプル画像xiの判別結果との間の差異をできるだけ大きくすることを表す。E(x)関数は、xの期待値を求めることに用いられ、Dsrc(x)は、第1判別機器を採用してxを判別することを表すことに用いられ、Isrcは、第1サンプル画像、すなわちxiであり、Enc(x)は、エンコーダを採用してxをエンコードすることを表すことに用いられ、Decsrc(x)は、第1デコーダを採用してxをデコードすることを表すことに用いられる。これから推定できるように、Dsrc(Isrc)は、第1判別機器を採用して第1サンプル画像xiを判別することを表し、[数7]は、第1予測画像、すなわち[数1]であり、[数8]は、第1判別機器を採用して第1予測画像、すなわち[数1]を判別することを表す。
【0078】
【0079】
他方では、サーバは、特徴知覚ネットワーク(LPIPSネットワーク)により第1サンプル画像xi、及び第1予測画像[数1]に対して特徴知覚を行って、第1サンプル画像xiと対応する第1知覚的特徴、及び第1予測画像[数1]と対応する第2知覚的特徴を取得し、第1知覚的特徴と第2知覚的特徴とに対して特徴比較を行って、第1特徴比較結果を得る。該第1特徴比較結果は、第1サンプル画像xiと第1予測画像[数1]との間の特徴差異を反映することに用いられ、第1特徴比較結果を得た後に、サーバは、第1特徴比較結果に基づいて第1損失関数の第2分岐関数の関数値を決定し、該第2分岐関数は、以下[数9]のように表すことができる。
【0080】
【0081】
ここで、LLPIPS1は、特徴知覚ネットワーク(LPIPSネットワーク)と対応する第1損失関数の第2分岐関数を表し、LPIPS(x)は、特徴知覚ネットワーク(LPIPSネットワーク)によりxに対して特徴知覚を行うことを表す。第1損失関数の第1分岐関数から明らかなように、Isrcは、第1サンプル画像、すなわちxiであり、[数10]は、第1予測画像、すなわち[数1]であり、これに基づいて、[数11]は、LPIPSネットワークにより第1予測画像、すなわち[数1]に対して特徴知覚を行うことを表し、LPIPS(Isrc)は、LPIPSネットワークにより第1サンプル画像xiに対して特徴知覚を行うことを表す。
【0082】
【0083】
第1損失関数の第1分岐関数の関数値、及び第1損失関数の第2分岐関数の関数値を得た後に、サーバは、第1損失関数の第1分岐関数の関数値と第1損失関数の第2分岐関数の関数値との和を、第1損失関数の関数値として決定し、第1損失関数L1は、以下[数12]のように表すことができる。
【0084】
【0085】
S306:第2損失関数の関数値を決定し、該第2損失関数は、第2サンプル画像ykにおけるサンプルアバターの第1種類の属性と第2予測アバターの第1種類の属性との間の差異を指示することに用いられる。
【0086】
1つの可能な実現方式では、第2損失関数の関数値を決定する過程は、以下のように実現することができる。
【0087】
第1判別機器を呼び出して第2予測アバターを判別し、
第2予測アバターの第3判別結果に基づいて、第2損失関数の第1分岐関数の関数値を決定し、該第3判別結果は、第2予測アバターが実画像であるかどうかを指示するために用いられ、
第2サンプル画像ykにおけるサンプルアバターの第1種類の属性と、第2予測アバターの第1種類の属性に対して属性比較を行って、属性比較結果を得て、
属性比較結果に基づいて第2損失関数の第2分岐関数の関数値を決定し、
第2損失関数の第1分岐関数の関数値と第2損失関数の第2分岐関数の関数値との和を、第2損失関数の関数値として決定する。
【0088】
図9は、本願の1つの例示的な実施例により提供される第2損失関数の決定過程の模式図を示している。
図9に示すように、サーバは、属性識別ネットワーク、及び第1判別機器を呼び出すことにより、第2損失関数の関数値の決定を実現する。属性識別ネットワークは、目の大きさ、眼球の位置、及び口の大きさ等の顔の表情を指示するために用いられる表情属性を識別することができ、属性識別ネットワークが出力するのは、1つの[0,1]範囲内の連続値であり、たとえば、目の大きさについて、0は、目が閉じていることを表し、1は、目が完全に開いていることを表す。眼球の位置について、0は、最左側に偏ることを表し、1は、最右側に偏ることを表す。口の大きさについて、0は、口が閉じていることを表し、1は、口が完全に開いていることを表す。画像処理モデルが第2サンプル画像y
kを取得し、かつ第1生成ネットワークにより第2サンプル画像y
kを処理して、第2予測画像[数2]を得る実施形態は、ステップS303を参照することができるが、ここでは、詳しく説明しない。
【0089】
第2予測画像[数2]を得た後に、一方では、サーバは、第1判別機器により第2予測画像[数2]を判別し、すなわち第2予測画像[数2]が実画像であるかどうかを判断し、かつ第2予測画像[数2]の第3判別結果に基づいて、第2損失関数の第1分岐関数の関数値を決定し、該第1分岐関数は、以下[数13]のように表すことができる。
【0090】
【0091】
ここで、LGAN2は、第1敵対的生成ネットワークGAN(第1生成ネットワーク(G1)、及び第1判別機器(D1)を含む)の第2損失関数の第1分岐関数を代表する。[数14]は、第1生成ネットワーク(G)が生成した第2予測画像[数2]と第2サンプル画像ykとの差異をできるだけ小さくする(第1判別機器による第2予測画像[数2]の判別結果を真にする)ことを表し、E(x)関数は、xの期待値を求めることに用いられ、Dsrc(x)は、第1判別機器を採用してxを判別することを表すことに用いられ、Iotherは、第2サンプル画像ykであり、Enc(x)は、エンコーダを採用してxをエンコードすることを表すことに用いられ、Decsrc(x)は、第1デコーダを採用してxをデコードすることを表すことに用いられる。これから推定できるように、[数15]は、第2予測画像[数2]であり、[数16]は、第1判別機器を採用して第2予測画像[数2]を判別することを表す。
【0092】
【0093】
他方では、サーバは、属性識別ネットワークにより第2サンプル画像yk、及び第2予測画像[数2]に対して属性特徴抽出を行って、第2サンプル画像と対応する第1種類の属性、及び第1予測画像の第1種類の属性を取得し、第2サンプル画像の第1種類の属性、及び第1予測画像の第1種類の属性に対して属性比較を行って、属性比較結果を得る。属性比較結果は、第2サンプル画像ykと第2予測画像[数2]との間の属性差異を反映することに用いられ、かつ属性比較結果に基づいて第2損失関数の関数値を決定し、第2損失関数は、以下[数17]のように表すことができる。
【0094】
【0095】
ここで、Lattriは、属性識別ネットワークの損失関数を代表し、Nattri(x)は、属性識別ネットワークによりxに対して属性識別を行うことを表し、第2損失関数の第1分岐関数から明らかなように、Iotherは、第2サンプル画像ykであり、[数18]は、第2予測画像[数2]であり、これに基づいて、[数19]は、属性識別ネットワークにより第2予測画像[数2]に対して属性特徴抽出を行うことを表し、[数20]は、属性識別ネットワークにより第2サンプル画像ykに対して属性特徴抽出を行うことを表す。
【0096】
【0097】
第2損失関数の第1分岐関数の関数値、及び第2損失関数の第2分岐関数の関数値を得た後に、サーバは、第2損失関数の第1分岐関数の関数値と第2損失関数の第2分岐関数の関数値との和を、第2損失関数の関数値として決定し、第2損失関数L2は、以下[数21]のように表すことができる。
【0098】
【0099】
S307:第3損失関数の関数値を決定し、該第3損失関数は、第2サンプル画像ykにおけるサンプルアバターと第3予測アバターとの間の差異を指示することに用いられる。
【0100】
1つの可能な実現方式では、第3損失関数の関数値を決定する過程は、以下のように実現することができる。
【0101】
第2判別機器を呼び出して第2サンプル画像yk、及び第3予測アバターをそれぞれ判別し、
第2サンプル画像ykの第4判別結果、及び第3予測アバターの第5判別結果に基づいて、第3損失関数の第1分岐関数の関数値を決定し、該第4判別結果は、第2サンプル画像ykが実画像であるかどうかを指示することに用いられ、該第5判別結果は、第3予測アバターが実画像であるかどうかを指示することに用いられ、
第3損失関数の第2分岐関数の関数値を決定し、該第3損失関数の第2分岐関数は、第2サンプル画像ykにおけるサンプルアバターの第3知覚的特徴と第3予測アバターの第4知覚的特徴との間の差異を指示することに用いられ、
第3損失関数の第1分岐関数の関数値と第3損失関数の第2分岐関数の関数値との和を、第3損失関数の関数値として決定する。
【0102】
図10は、本願の1つの例示的な実施例により提供される第3損失関数の決定過程の模式図を示している。
図10に示すように、サーバは、第2判別機器(一般判別機器)、身元識別ネットワーク、及び特徴知覚ネットワークを呼び出すことにより第3損失関数の関数値の決定を実現する。画像処理モデルが第2生成ネットワークにより第2サンプル画像y
kを処理して、第3予測画像[数3]を得る実施形態は、ステップS304を参照することができるが、ここでは、詳しく説明しない。
【0103】
第3予測画像[数3]を得た後に、一方では、サーバは、第2判別機器により第2サンプル画像yk、及び第3予測画像[数3]をそれぞれ判別し、すなわちそれぞれ第2サンプル画像yk、及び第3予測画像[数3]が実画像であるかどうかを判断し、かつ第2サンプル画像ykの第4判別結果、及び第3予測画像[数3]の第5判別結果に基づいて、第3損失関数の第1分岐関数の関数値を決定する。該第1分岐関数は、以下[数22]のように表すことができる。
【0104】
【0105】
ここで、LGAN3は、第2敵対的生成ネットワークGAN´(第2生成ネットワーク(G2)、及び第2判別機器(D2)を含む)の第3損失関数の第1分岐関数を代表する。[数23]は、第2生成ネットワーク(G)が生成した第3予測画像[数3]と第2サンプル画像ykとの差異をできるだけ小さくすることを表し、[数24]は、第2判別機器による第3予測画像[数3]の判別結果と第2サンプル画像ykの判別結果との間の差異をできるだけ大きくすることを表し、E(x)関数は、xの期待値を求めることに用いられ、Dgeneral(x)は、第2判別機器を採用してxを判別することを表すことに用いられ、Iotherは、第2サンプル画像ykであり、Enc(x)は、エンコーダを採用してxをエンコードすることを表すことに用いられ、[数25]は、第2デコーダを採用してyに従ってxをデコードすることを表すことに用いられる。これから推定できるように、[数26]は、第2判別機器を採用して第2サンプル画像ykを判別することを表し、[数27]は、第3予測画像[数3]であり、[数28]は、第2判別機器を採用して第3予測画像[数3]を判別することを表す。
【0106】
【数23】
【数24】
【数25】
【数26】
【数27】
【数28】
【0107】
他方では、サーバは、特徴知覚ネットワーク(LPIPSネットワーク)により第2サンプル画像yk、及び第3予測画像[数3]に対して特徴知覚を行って、第2サンプル画像ykと対応する第3知覚的特徴、及び第3予測画像[数3]と対応する第4知覚的特徴を取得し、第3知覚的特徴と第4知覚的特徴とに対して特徴比較を行って、第2特徴比較結果を得る。該第2特徴比較結果は、第2サンプル画像ykと第3予測画像[数3]との間の特徴差異を反映することに用いられ、第2特徴比較結果を得た後に、サーバは、第2特徴比較結果に基づいて第3損失関数の第2分岐関数を決定し、該第2分岐関数は、以下[数29]のように表すことができる。
【0108】
【0109】
ここで、LLPIPS2は、特徴知覚ネットワーク(LPIPSネットワーク)の第3損失関数の第2分岐関数を代表し、LPIPS(x)は、特徴知覚ネットワーク(LPIPSネットワーク)によりxに対して特徴知覚を行うことを表し、第3損失関数の第1分岐関数から明らかなように、Iotherは、第2サンプル画像、すなわちykであり、[数30]は、第3予測画像、すなわち[数3]であり、これに基づいて、[数31]は、LPIPSネットワークにより第3予測画像、すなわち[数3]に対して特徴知覚を行うことを表し、[数32]は、LPIPSネットワークにより第2サンプル画像、すなわちykに対して特徴知覚を行うことを表す。
【0110】
【0111】
第3損失関数の第1分岐関数の関数値、及び第3損失関数の第2分岐関数の関数値を得た後に、サーバは、第3損失関数の第1分岐関数の関数値と第3損失関数の第2分岐関数の関数値との和を、第3損失関数の関数値として決定し、第3損失関数L3は、以下[数33]のように表すことができる。
【0112】
【0113】
S308:第1損失関数の関数値、第2損失関数の関数値、及び第3損失関数の関数値に基づいて、ターゲット損失関数の関数値を決定する。
【0114】
選択可能に、モデル訓練過程においては、第1損失関数の関数値、及び第2損失関数の関数値に基づいて、画像処理モデルのターゲット損失関数の関数値を決定することができる。
【0115】
第3損失関数値に基づいて訓練することを例として、該ターゲット損失関数は、以下[数34]のように表すことができる。
【0116】
【0117】
選択可能に、ターゲット損失関数の関数値は、第1損失関数の関数値、第2損失関数の関数値、及び第3損失関数の関数値の和であってもよく、又は、ターゲット損失関数の関数値は、第1損失関数の関数値、第2損失関数の関数値、及び第3損失関数の関数値の加重合計結果であってもよく、3つのうち任意の2つの間の重みは、同じであってもよく、異なってもよい。概略的には、該ターゲット損失関数は、以下[数35]のように表すことができる。
【0118】
【0119】
ここで、aは、第1損失関数と対応する重み値を表し、bは、第2損失関数と対応する重み値を表し、cは、第3損失関数と対応する重み値を表し、3つの重み値の値のうち、任意の2つの間は、同じであってもよく、異なってもよく、ここで、a+b+c=1である。
【0120】
1つの可能な実現方式では、第1損失関数、第2損失関数、及び第3損失関数を計算する過程は、同時に行うことができる。
【0121】
S309:ターゲット損失関数の関数値に従って、画像処理モデルを訓練する。
【0122】
1つの実施形態では、サーバは、画像処理モデルのパラメータ(たとえば、畳み込み層の層数、アップサンプリング層の層数、ダウンサンプリング層の層数、dilation等)を調整することで、総損失関数の損失値を低減させる。概略的には、サーバは、ターゲット損失関数の関数値に従って、誤差を第1生成ネットワーク、及び第2生成ネットワーク(エンコーダ、及びデコーダ)に逆伝播(Back Propagation)し、勾配降下法を使用して第1生成ネットワーク、及び第2生成ネットワークのパラメータ値を更新する。選択可能に、モデル訓練過程において、パラメータ更新すべき部分は、エンコーダと、特定のデコーダと、一般デコーダと、特定の判別機器と、一般判別機器とを含み、LPIPSネットワーク、身元識別ネットワーク、及び属性識別ネットワークは、パラメータ更新に関与しない。
【0123】
1つの可能な実現方式では、サーバは、画像処理モデルのパラメータを調整するときに、L1+L2により第1生成ネットワークのパラメータを調整し、かつL3により第2生成ネットワークのパラメータを調整することができる。
【0124】
画像処理モデルの訓練過程において、パラメータ更新を1回行うたびに、サーバは、更新後の画像処理モデルが訓練完了条件に達するかどうかを判断することができ、更新後の画像処理モデルが訓練完了条件に達していなければ、上記ステップS302~ステップS309に基づき反復し、画像処理モデルが訓練完了条件に達するまで、画像処理モデルを訓練し続け、更新後の画像処理モデルが訓練完了条件に達していれば、画像処理モデルの訓練を終了する。
【0125】
選択可能に、本願の実施例における画像処理モデルは、第1生成ネットワークに加えて、さらに第2生成ネットワークと、第1判別機器と、第2判別機器と、特徴知覚ネットワークと、身元識別ネットワークと、属性識別ネットワークとを含むことができる。モデル訓練過程においては、第1生成ネットワーク、第2生成ネットワーク、第1判別機器、及び第2判別機器におけるパラメータをいずれも更新し、画像処理モデルの訓練が終了した後に、第1生成ネットワークを保持し、つまり、訓練完了条件に達した画像処理モデル中には、訓練が終了した後の第1生成ネットワークを含む。
【0126】
又は、本願の画像処理モデルにおいては、第1生成ネットワークを含み、モデル訓練過程において、画像処理モデル以外のその他のネットワーク構造を呼び出して画像処理モデルの訓練を補助し、訓練完了条件に達した後に、訓練完了後の画像処理モデルを取得して応用する。
【0127】
第1種類の属性が非身元識別属性であり、第2種類の属性が身元識別属性であるときに、訓練完了後の画像処理モデルにより入力画像を処理し、取得した予測画像は、入力画像におけるアバターの非身元識別属性を保持しているが、ターゲットアバターの身元識別属性を有する画像であってもよい。概略的には、該予測画像におけるアバターの表情、姿勢、照明等の特徴属性は、入力画像と一致しており、該予測画像における五官、皮膚、髪、眼鏡等の容貌特徴は、ターゲットアバターと一致している。
【0128】
概略的には、訓練完了後の画像処理モデルは、ビデオのアバター置換シーンにおいて応用することができ、サーバがテストビデオに対してアバター置換処理を行う過程を例とすると、
図11は、本願の1つの例示的な実施例により提供されるテストビデオの処理フローチャートを示している。
図11に示すように、サーバは、テストビデオを取得し、該テストビデオは、Rフレームのテスト画像を含み、各フレームのテスト画像は、1つの校正アバターを含み、Rは、正の整数であり、
訓練完了後の画像処理モデルの第1生成ネットワークを呼び出してそれぞれRフレームのテスト画像を処理して、Rフレームのテスト画像とそれぞれ対応する予測画像を得る。ここで、Rフレームの予測画像は、ターゲット人物のターゲットアバターを含み、且つRフレームの予測画像におけるアバターの第1種類の属性は、対応するテスト画像における校正アバターの第1種類の属性と一致しており、
テストビデオにおける、校正アバターを削除するRフレームのテスト画像に対して画像補完を行い、
Rフレームの予測画像をそれぞれ画像補完後のテストビデオにおける相応なテスト画像と融合して、ターゲットビデオを得る。
【0129】
一方では、サーバは、テストビデオに対して画像フレーム抽出(画像抽出)を行って、テスト画像セットを得る。各フレームのテスト画像は、テストアバターを含む。サーバは、テスト画像セットにおけるテストアバターを校正し、テストアバターに対する校正方式は、S3012における実施形態を参照することができるが、ここでは、詳しく説明しない。校正完了後に、サーバは、アバター置換モデルを呼び出してそれぞれ各フレームのテスト画像を処理して、各フレームのテスト画像と対応する予測画像を得る。該予測画像におけるアバターは、オリジナルアバターの第1種類の属性、及び訓練画像処理モデルを含むことができるときに、第1サンプル画像中に含まれたターゲット人物のアバターの第2種類の属性に対応する。
【0130】
選択可能に、各フレームのテスト画像と対応する予測アバターを取得した後に、後に、各フレームのテスト画像におけるアバターを置換することができ、
図12は、本願の1つの例示的な実施例により提供される訓練完了後の画像処理モデルでテスト画像を処理するフローチャートを示している。
図12において、サーバが訓練完了後の画像処理モデルを採用して各フレームのテスト画像をそれぞれ処理して、各フレームのテスト画像と各自対応する予測画像を得るという具体的な実施形態は、S302、又は、S303を参照することができるが、ここでは、詳しく説明しない。
【0131】
他方では、テストビデオにおける画像に対してアバター変換を行う過程がサーバにより処理されることを例とすると、サーバは、テストビデオにおけるテスト画像における校正アバターを削除し、かつテストビデオにおける、校正アバターを削除した後のRフレームのテスト画像に対して画像補完(Inpainting)処理を行う必要がある。その目的は、テスト画像におけるオリジナルアバターを削除した後に、修復すべき画像自体(たとえば、背景)、又は、画像ライブラリ情報に従って修復すべき画像の欠落領域(すなわち、アバター変換領域)を補完することで、修復後の画像を比較的自然に見えるようにすることである。
【0132】
図13は、本願の1つの例示的な実施例により提供されるテストビデオの処理フローチャートを示している。
図13に示すように、サーバは、各フレームの予測画像を、それぞれ相応な画像補完後のテスト画像と融合して、ターゲットビデオを得る。
【0133】
選択可能に、サーバは、融合後のビデオに対して色校正(たとえば、皮膚の色の調整)を行うことで、取得したターゲットビデオをより現実にそっくりなものにするようにしてもよい。
【0134】
1つの実施例では、ユーザーは、自分が歌ったり踊ったりするビデオをアップロードすることができ、サーバは、訓練完了後の画像処理モデルを使用して、ユーザーがアップロードしたビデオにおけるアバターをスターアバター/アニメアバター等(ターゲット人物とするアバター)に置換して、アバター変換後のターゲットビデオを得ることができ、さらにビデオの面白さを向上させることができる。また、ユーザーは、さらに訓練完了後の画像処理モデルにより「アバター変換」ライブ配信を行う(すなわち、ライブ配信するユーザーのアバターをターゲット人物のアバターにリアルタイムに変換する)ことができ、さらにライブ配信の面白さを増加させることができる。
【0135】
別の実施例では、モバイル決済は、「顔認証」により行うことができるため、顔識別モデルの精度に対する要件が比較的高い訓練完了後の画像処理モデルは、訓練データ(攻撃データ)を生成して顔識別モデルを訓練する(すなわち、顔識別モデルの予測アバターの真実性を識別する能力を訓練する)ことに用いることができるため、さらにモバイル決済の信頼性、及びセキュリティを向上させることができる。
【0136】
本願の実施例では、本願の実施例が提供した画像処理方法は、同一のターゲット人物のターゲットアバターの第1サンプル画像を含む第1サンプルセット、及びサンプルアバターの第2サンプル画像を含む第2サンプルセットを使用することにより、第1生成ネットワークを含む画像処理モデルを訓練し、訓練過程において、第1サンプル画像、及び第1生成ネットワークでそれを処理することにより得られた第1予測画像の間のアバター差異、及び第2サンプル画像、及び第1生成ネットワークでそれを処理することにより得られた第2予測画像の間の第1種類の属性の差異により、画像処理モデルを訓練することで、訓練完了後の画像処理モデルが入力画像におけるアバターをターゲットアバターに置換し、かつ入力画像におけるアバターの第1種類の属性を保持することを可能にする。それにより、本願により取得された画像処理モデルに基づいて、アバター置換を行うと同時に、置換されたアバターの指定属性を保持することを可能にし、それにより、置換後のアバターの真実性を比較的高くし、画像処理の正確性、及び置換効果を向上させることができる。
【0137】
上記では、本願の実施例の方法を詳細に論述し、本願の実施例の上記手段をよりよく実施するために、同様に、以下に本願の実施例の装置を提示する。
【0138】
図14は、本願の1つの例示的な実施例により提供される画像処理装置の構造模式図を示している。該画像処理装置は、
図1に示されたサーバ102中に搭載することができる。
図14に示された画像処理装置は、上記
図2、及び
図3によって記述された方法実施例における一部、又は、全部の機能を実行することに用いることができる。
【0139】
ここで、該画像処理装置は、
画像処理モデルにおける第1生成ネットワークを呼び出し、第1サンプルセットにおける第1サンプル画像xiを処理して、第1予測画像[数1]を得ることに用いられる第1予測画像取得モジュール1410であって、上記第1予測画像[数1]は、第1予測アバターを含み、上記第1サンプルセット中には、N個の第1サンプル画像が含まれ、それぞれの上記第1サンプル画像は、いずれも同一のターゲット人物に対応するターゲットアバターを含み、Nは、正の整数であり、iは、正の整数で、且つi≦Nである、第1予測画像取得モジュール1410と、
上記第1生成ネットワークを呼び出し、第2サンプルセットにおける第2サンプル画像ykを処理して、第2予測画像[数2]を得ることに用いられる第2予測画像取得モジュール1420であって、上記第2予測画像[数2]は、第2予測アバターを含み、上記第2サンプルセット中には、M個の第2サンプル画像が含まれ、それぞれの第2サンプル画像は、サンプルアバターを含み、Mは、正の整数であり、kは、正の整数で、且つk≦Mである、第2予測画像取得モジュール1420と、
上記第1サンプル画像xiにおける上記ターゲットアバターと上記第1予測アバターとの間の差異、上記第2サンプル画像ykにおける上記サンプルアバターの第1種類の属性と上記第2予測アバターの上記第1種類の属性との間の差異に基づき、上記画像処理モデルを訓練することに用いられるモデル訓練モジュール1430であって、上記画像処理モデルは、入力画像におけるアバターを上記ターゲットアバターに置換し、かつ上記入力画像におけるアバターの上記第1種類の属性を保持することに用いられる、モデル訓練モジュール1430と、を含む。
【0140】
1つの実施形態では、上記モデル訓練モジュール1430は、
第1損失関数の関数値を決定することに用いられる第1決定サブモジュールであって、上記第1損失関数は、上記第1サンプル画像xiにおける上記ターゲットアバターと上記第1予測アバターとの間の差異を指示することに用いられる、第1決定サブモジュールと、
第2損失関数の関数値を決定することに用いられる第2決定サブモジュールであって、上記第2損失関数は、上記第2サンプル画像ykにおける上記サンプルアバターの第1種類の属性と上記第2予測アバターの上記第1種類の属性との間の差異を指示することに用いられる、第2決定サブモジュールと、
上記第1損失関数の関数値、及び上記第2損失関数の関数値に基づいて、上記画像処理モデルのターゲット損失関数の関数値を決定することに用いられる第3決定サブモジュールと、
上記ターゲット損失関数の関数値に従って、上記画像処理モデルを訓練することに用いられるモデル訓練サブモジュールと、を含む。
【0141】
1つの実施形態では、上記第1決定サブモジュールは、
第1判別機器を呼び出して、上記第1サンプル画像xi、及び上記第1予測アバターをそれぞれ判別することと、
上記第1サンプル画像xiの第1判別結果、及び上記第1予測アバターの第2判別結果に基づいて、上記第1損失関数の第1分岐関数の関数値を決定することであって、上記第1判別結果は、上記第1サンプル画像xiが実画像であるかどうかを指示することに用いられ、上記第2判別結果は、上記第1予測アバターが実画像であるかどうかを指示することに用いられる、ことと、
上記第1損失関数の第2分岐関数の関数値を決定することであって、上記第1損失関数の第2分岐関数は、上記第1サンプル画像xiにおける上記ターゲットアバターの第1知覚的特徴と、上記第1予測アバターの第2知覚的特徴との間の差異を指示することに用いられる、ことと、
上記第1損失関数の第1分岐関数の関数値と上記第1損失関数の第2分岐関数の関数値との和を、上記第1損失関数の関数値として決定することと、に用いられる。
【0142】
1つの実施形態では、上記第2決定サブモジュールは、
第1判別機器を呼び出して上記第2予測アバターを判別することと、
上記第2予測アバターの第3判別結果に基づいて、上記第2損失関数の第1分岐関数の関数値を決定することであって、上記第3判別結果は、上記第2予測アバターが実画像であるかどうかを指示するために用いられる、ことと、
上記第2サンプル画像ykにおける上記サンプルアバターの上記第1種類の属性と、上記第2予測アバターの上記第1種類の属性とに対して属性比較を行い、属性比較結果を得ることと、
上記属性比較結果に基づいて上記第2損失関数の第2分岐関数を決定することと、
上記第2損失関数の第1分岐関数の関数値と上記第2損失関数の第2分岐関数の関数値との和を、上記第2損失関数の関数値として決定することと、に用いられる。
【0143】
1つの実施形態では、上記装置は、
第2生成ネットワークを呼び出し、上記第2サンプル画像ykを処理して、第3予測画像[数3]を得ることに用いられる第3予測画像取得モジュールであって、上記第3予測画像[数3]は、第3予測アバターを含み、上記第2生成ネットワークと上記第1生成ネットワークは、同じ特徴抽出ユニットを有する、第3予測画像取得モジュールをさらに含み、
上記モデル訓練モジュール1430は、
第3損失関数の関数値を決定することに用いられる第4決定サブモジュールであって、上記第3損失関数は、上記第2サンプル画像ykにおける上記サンプルアバターと上記第3予測アバターとの間の差異を指示することに用いられる、第4決定サブモジュールをさらに含み、
上記第3決定サブモジュールは、上記第1損失関数の関数値、上記第2損失関数の関数値、及び上記第3損失関数の関数値に基づいて、上記ターゲット損失関数の関数値を決定することに用いられる。
【0144】
1つの実施形態では、上記第4決定サブモジュールは、
第2判別機器を呼び出して、上記第2サンプル画像yk、及び上記第3予測アバターをそれぞれ判別することと、
上記第2サンプル画像ykの第4判別結果、及び上記第3予測アバターの第5判別結果に基づいて、上記第3損失関数の第1分岐関数の関数値を決定することであって、上記第4判別結果は、上記第2サンプル画像ykが実画像であるかどうかを指示することに用いられ、上記第5判別結果は、上記第3予測アバターが実画像であるかどうかを指示することに用いられる、ことと、
上記第3損失関数の第2分岐関数の関数値を決定することであって、上記第3損失関数の第2分岐関数は、上記第2サンプル画像ykにおける上記サンプルアバターの第3知覚的特徴と上記第3予測アバターの第4知覚的特徴との間の差異を指示することに用いられる、ことと、
上記第3損失関数の第1分岐関数の関数値と上記第3損失関数の第2分岐関数の関数値との和を、上記第3損失関数の関数値として決定することと、に用いられる。
【0145】
1つの実施形態では、上記第1生成ネットワークは、エンコーダと、第1デコーダとを含み、
上記第1予測画像取得モジュール1410は、
上記エンコーダを呼び出して上記第1サンプル画像xiをエンコードして、第1特徴ベクトルを得ることと、
上記第1デコーダを呼び出して上記第1特徴ベクトルをデコードして、第1生成画像、及び上記第1領域分割情報を得ることであって、上記第1領域分割情報は、上記第1生成画像におけるアバター領域を指示することに用いられる、ことと、
上記第1領域分割情報に基づき、上記第1生成画像から上記第1予測画像[数1]を抽出することと、に用いられる。
【0146】
1つの実施形態では、上記第1生成ネットワークは、エンコーダと、第1デコーダとを含み、
上記第2予測画像取得モジュール1420は、
上記エンコーダを呼び出して上記第2サンプル画像ykをエンコードして、第2特徴ベクトルを得ることと、
上記第1デコーダを呼び出して上記第2特徴ベクトルをデコードして、第2生成画像、及び上記第2領域分割情報を得ることであって、上記第2領域分割情報は、上記第2生成画像におけるアバター領域を指示することに用いられる、ことと、
上記第2領域分割情報に基づき、上記第2生成画像から上記第2予測画像[数2]を抽出することと、に用いられる。
【0147】
1つの実施形態では、上記エンコーダは、P個の特徴抽出ネットワークと、1つの特徴集約層とを含み、Pは、正の整数であり、それぞれの特徴抽出ネットワークは、1つのダウンサンプリング層を含み、P個の上記ダウンサンプリング層のスケールパラメータは異なり、
P個の上記ダウンサンプリング層は、上記エンコーダに入力された画像のP個のスケールパラメータ下での特徴情報を抽出することに用いられ、
上記特徴集約層は、P個の上記スケールパラメータ下での上記特徴情報に対して集約処理を行って、上記エンコーダに入力された画像と対応する特徴ベクトルを得ることに用いられる。
【0148】
1つの実施形態では、上記第1デコーダは、1つの第1特徴変換ネットワークと、Q個の第1画像再構成ネットワークと、1つの第1畳み込みネットワークとを含み、Qは、正の整数であり、それぞれの上記第1画像再構成ネットワークは、1つの第1残差ネットワークと、1つの第1アップサンプリング層とを含み、
上記第1特徴変換ネットワークは、上記第1デコーダに入力された特徴ベクトルを特徴マップに変換することに用いられ、
Q個の上記第1画像再構成ネットワークは、上記特徴マップに対して第1特徴復元処理を行って、融合特徴画像を得ることに用いられ、
上記第1畳み込みネットワークは、上記融合特徴画像に対して畳み込み処理を行い、かつ上記第1デコーダに入力された特徴ベクトルに対応する生成画像を出力することに用いられる。
【0149】
1つの実施形態では、上記第2生成ネットワークは、エンコーダと、第2デコーダと、身元識別ネットワークとを含み、
第2生成ネットワークを呼び出し、上記第2サンプル画像ykを処理して、第3予測画像[数3]を得る上記ステップは、
上記エンコーダを呼び出して上記第2サンプル画像ykをエンコードして、第2特徴ベクトルを得るステップと、
上記身元識別ネットワークを呼び出して上記第2サンプル画像ykを識別して、上記第2サンプル画像ykの識別情報を得るステップと、
上記第2デコーダを呼び出し、上記第2サンプル画像ykの上記識別情報に従って上記第2特徴ベクトルをデコードして、第3生成画像、及び上記第3領域分割情報を得るステップであって、上記第3領域分割情報は、上記第3生成画像におけるアバター領域を指示することに用いられる、ステップと、
上記第3領域分割情報に基づき、上記第3生成画像から上記第3予測画像[数3]を抽出するステップと、を含む。
【0150】
1つの実施形態では、上記第2デコーダは、1つの第2特徴変換ネットワークと、Q個の第2画像再構成ネットワークと、1つの第2畳み込みネットワークと、を含み、Qは、正の整数であり、それぞれの上記第2画像再構成ネットワークは、1つの第2残差ネットワークと、1つの第2アップサンプリング層と、1つの自己適応モジュールとを含み、
上記自己適応モジュールは、上記第2デコーダのデコード過程において、上記第2サンプル画像ykの識別情報に基づいて、上記識別情報と対応する第3特徴ベクトルを取得することに用いられ、上記第3特徴ベクトルは、上記第2デコーダが上記第2デコーダに入力された特徴ベクトルをデコードするように指示するために用いられる。
【0151】
1つの実施形態では、上記装置は、
上記モデル訓練モジュール1430が上記画像処理モデルに対する訓練を完了した後に、上記テストビデオを取得することに用いられるテストビデオ取得モジュールであって、上記テストビデオは、Rフレームのテスト画像を含み、各フレームのテスト画像は、1つの校正アバターを含み、Rは、正の整数である、テストビデオ取得モジュールと、
訓練完了後の上記画像処理モデルの第1生成ネットワークを呼び出してそれぞれRフレームの上記テスト画像を処理して、Rフレームの上記テスト画像とそれぞれ対応する予測画像を得ることに用いられる第4予測画像取得モジュールであって、ここで、Rフレームの上記予測画像は、上記ターゲット人物の上記ターゲットアバターを含み、且つRフレームの上記予測画像におけるアバターの上記第1種類の属性は、対応する上記テスト画像における上記校正アバターの上記第1種類の属性と一致している、第4予測画像取得モジュールと、
上記テストビデオにおける、上記校正アバターを削除したRフレームの上記テスト画像に対して画像補完を行うことに用いられる画像補完モジュールと、
Rフレームの上記予測画像をそれぞれ画像補完後のテストビデオにおける相応な上記テスト画像と融合して、ターゲットビデオを得ることに用いられるターゲットビデオ取得モジュールと、をさらに含む。
【0152】
1つの実施形態では、上記第1種類の属性は、非身元識別属性を指す。
【0153】
本願の1つの実施例に従って、
図2、及び
図3に示された画像処理方法に関する一部のステップは、
図14に示された画像処理装置における各モジュール、又は、サブモジュールにより実行することができる。
図14に示された画像処理装置における各モジュール、又は、サブモジュールは、それぞれ、又は、全部で1つ、又は、若干の別の構造と合併することで構成することができる、又は、そのうちのある(いくつかの)モジュールは、さらに機能上でより小さな複数の構造に分解することで構成することができ、それにより同様な操作を実現するとともに、本願の実施例の技術的効果の実現には影響を与えない。上記モジュールは、ロジック機能に基づいて分割され、実施の応用においては、1つのモジュールの機能は、複数のモジュールにより実現することができ、又は、複数のモジュールの機能は、1つのモジュールにより実現することができる。本願の他の実施例において、画像処理装置は、他のモジュールを含むこともでき、実際の応用において、それらの機能は、他のモジュールにより支援されて実現することができ、且つ複数のモジュールにより共同で実現することができる。
【0154】
本願の別の実施例に基づけば、中央処理ユニット(CPU)、ランダムアクセス記憶媒体(RAM)、リードオンリー記憶媒体(ROM)等の処理素子、及び記憶素子を含む、たとえばコンピュータの汎用計算装置において、
図2、又は、
図3において示された相応な方法に関する各ステップを実行できるコンピュータプログラム(プログラムコードを含む)を動作させることにより、
図14において示された画像処理装置を構成し、かつ本願の実施例の画像処理方法を実現することができる。コンピュータプログラムは、たとえばコンピュータ可読記録媒体に記憶され、かつコンピュータ可読記録媒体により上記計算装置において搭載され、かつ上記計算装置において動作することができる。
【0155】
同一の発明の技術的思想に基づいて、本願の実施例において提供された画像処理装置が課題を解決する原理、及び有益な効果は、本願の方法実施例における画像処理方法が課題を解決する原理、及び有益な効果と類似するため、方法の実施の原理、及び有益な効果を参照することができるが、記述を簡潔にするために、ここでは詳しく説明しない。
【0156】
図15に参照されるように、
図15は、本願の1つの例示的な実施例により提供される画像処理機器の構造模式図を示している。該画像処理機器は、
図1に示されたサーバ102であってもよく、該画像処理機器は、少なくともプロセッサ1501と、通信インタフェース1502と、メモリ1503とを含む。ここで、プロセッサ1501、通信インタフェース1502、及びメモリ1503は、バス、又は、その他の方式により接続することができ、本願の実施例では、バスにより接続することを例とする。ここで、プロセッサ1501(又は、中央プロセッサ(Central Processing Unit、CPU)とも呼ばれる)は、画像処理機器の計算コア、及び制御コアであり、それは、画像処理機器内の各種の命令を解析し、及び画像処理機器の各種のデータを処理することができ、たとえば、CPUは、ユーザーが画像処理機器に送信した電源オン/オフ命令を解析し、かつ画像処理機器を制御して電源オン/オフ操作を行うことに用いることができ、また、たとえば、CPUは、画像処理機器の内部構造の間に各種のインタラクションデータ等を伝送することができる。通信インタフェース1502は、選択可能に、標準的な有線インタフェース、無線インタフェース(たとえば、WI-FI、移動通信インタフェース等)を含むことができ、プロセッサ1501により制御され、データを受送信することに用いることができ、通信インタフェース1502は、さらに、画像処理機器の内部データの伝送、及びインタラクションに用いることができる。メモリ1503(Memory)は、画像処理機器における記憶機器であり、プログラム、及びデータを保存することに用いることができる。理解することができるように、ここでのメモリ1503は、画像処理機器の内蔵メモリを含むことができるだけでなく、勿論、画像処理機器がサポートした拡張メモリを含むことができる。メモリ1503は、記憶領域を提供し、該記憶領域には、画像処理機器のオペレーティングシステムが記憶されており、Androidシステム、iOSシステム、Windows Phoneシステム等を含むがそれらに制限されず、本願は、この点に対して限定をしない。
【0157】
本願の実施例では、プロセッサ1501は、メモリ1503における実行可能なプログラムコードを動作させることにより、本願に示された手段を実現する。該プロセッサ1501が実行した操作は、上記各方法実施例における紹介を参照することができるが、ここでは、詳しく説明しない。
【0158】
同一の発明の技術的思想に基づいて、本願の実施例において提供された画像処理機器が課題を解決する原理、及び有益な効果は、本願の方法実施例における画像処理方法が課題を解決する原理、及び有益な効果と類似しており、方法の実施の原理、及び有益な効果を参照することができるため、簡潔に記述するために、ここでは詳しく説明しない。
【0159】
本願の実施例は、さらにコンピュータ可読記憶媒体を提供し、コンピュータ可読記憶媒体には、コンピュータプログラムが記憶されており、該コンピュータプログラムは、プロセッサによりロードされ、かつ上記方法実施例の画像処理方法を実行することに適する。
【0160】
本願の実施例は、さらにコンピュータプログラム製品、又は、コンピュータプログラムを提供し、該コンピュータプログラム製品、又は、コンピュータプログラムは、コンピュータ命令を含み、該コンピュータ命令は、コンピュータ可読記憶媒体に記憶されている。コンピュータ機器のプロセッサは、コンピュータ可読記憶媒体から該コンピュータ命令を読み取り、プロセッサは、該コンピュータ命令を実行することで、該コンピュータ機器に上記画像処理方法を実行させる。
【0161】
説明する必要がある点として、上記各方法実施例について、簡単に記述するために、それらをいずれも一連の動作の組み合わせとして表現しているが、当業者が了解できるように、本願は、記述された動作の順序に制限されず、それは、本願によればあるいくつかのステップをその他の順序で、又は、同時に行うことができるからである。次に、また、さらに当業者が了解できるように、明細書において記述された実施例は、いずれも好ましい実施例に属し、関する動作、及びモジュールは、必ずしも本願に必須なものではない。
【0162】
本願の実施例の方法におけるステップは、実際の必要に応じて順序の調整、合併、及び削減を行うことができる。
【0163】
本願の実施例の装置におけるモジュールは、実際の必要に応じて合併、分割、及び削減を行うことができる。
【0164】
当業者が理解できるように、上記実施例の各種の方法における全部、又は、一部のステップは、プログラムにより関連するハードウェアに命令を出して完了することができる。該プログラムは、コンピュータ可読記憶媒体に記憶することができ、可読記憶媒体は、フラッシュドライブ、読み出し専用メモリ(Read-Only Memory、ROM)、ランダムアクセスメモリ(Random Access Memory、RAM)、磁気ディスク、又は、光ディスク等を含んでもよい。
【0165】
以上で開示したのは、本願の1つの比較的好ましい実施例に過ぎず、勿論、これをもって本願の特許請求の範囲を限定してはならない。当業者であれば理解できるように、上記実施例の全部、又は、一部のプロセスを実現し、かつ本願の請求項に基づいて行われる均等物への変更も本出願がカバーする範囲に属するものである。
【符号の説明】
【0166】
101 端末機器
102 サーバ
1410 第1予測画像取得モジュール
1420 第2予測画像取得モジュール
1430 モデル訓練モジュール
1501 プロセッサ
1502 通信インタフェース
1503 メモリ
【手続補正書】
【提出日】2023-08-29
【手続補正2】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
画像処理方法であって、
画像処理モデルにおける第1生成ネットワークを呼び出し、第1サンプルセットにおける第1サンプル画像x
iを処理して、第1予測画像[数1]を得るステップであって、前記第1予測画像[数1]は、第1予測アバターを含み、前記第1サンプルセット中には、N個の第1サンプル画像が含まれ、それぞれの前記第1サンプル画像は、いずれも同一のターゲット人物に対応するターゲットアバターを含み、Nは、正の整数であり、iは、正の整数で、且つi≦Nである、ステップと、
前記第1生成ネットワークを呼び出し、第2サンプルセットにおける第2サンプル画像y
kを処理して、第2予測画像[数2]を得るステップであって、前記第2予測画像[数2]は、第2予測アバターを含み、前記第2サンプルセット中には、M個の第2サンプル画像が含まれ、それぞれの第2サンプル画像は、サンプルアバターを含み、Mは、正の整数であり、kは、正の整数で、且つk≦Mである、ステップと、
前記第1サンプル画像x
iにおける前記ターゲットアバターと前記第1予測アバターとの間の差異、及び前記第2サンプル画像y
kにおける前記サンプルアバターの第1種類の属性と前記第2予測アバターの前記第1種類の属性との間の差異に基づき、前記画像処理モデルを訓練するステップであって、前記画像処理モデルは、入力画像におけるアバターを前記ターゲットアバターに置換し、かつ前記入力画像におけるアバターの前記第1種類の属性を保持することに用いられる、ステップと、を含む、画像処理方法。
【数1】
【数2】
【請求項2】
前記第1サンプル画像x
iにおける前記ターゲットアバターと前記第1予測アバターとの間の差異、前記第2サンプル画像y
kにおける前記サンプルアバターの第1種類の属性と前記第2予測アバターの前記第1種類の属性との間の差異に基づき、前記画像処理モデルを訓練する前記ステップは、
第1損失関数の関数値を決定するステップであって、前記第1損失関数は、前記第1サンプル画像x
iにおける前記ターゲットアバターと前記第1予測アバターとの間の差異を指示することに用いられる、ステップと、
第2損失関数の関数値を決定するステップであって、前記第2損失関数は、前記第2サンプル画像y
kにおける前記サンプルアバターの第1種類の属性と前記第2予測アバターの前記第1種類の属性との間の差異を指示することに用いられる、ステップと、
前記第1損失関数の関数値、及び前記第2損失関数の関数値に基づいて、前記画像処理モデルのターゲット損失関数の関数値を決定するステップと、
前記ターゲット損失関数の関数値に従って、前記画像処理モデルを訓練するステップと、を含む、請求項1に記載の方法。
【請求項3】
第1損失関数の関数値を決定する前記ステップは、
第1判別機器を呼び出して、前記第1サンプル画像x
i、及び前記第1予測アバターをそれぞれ判別するステップと、
前記第1サンプル画像x
iの第1判別結果、及び前記第1予測アバターの第2判別結果に基づいて、前記第1損失関数の第1分岐関数の関数値を決定するステップであって、前記第1判別結果は、前記第1サンプル画像x
iが実画像であるかどうかを指示することに用いられ、前記第2判別結果は、前記第1予測アバターが実画像であるかどうかを指示することに用いられる、ステップと、
前記第1損失関数の第2分岐関数の関数値を決定するステップであって、前記第1損失関数の第2分岐関数は、前記第1サンプル画像x
iにおける前記ターゲットアバターの第1知覚的特徴と、前記第1予測アバターの第2知覚的特徴との間の差異を指示することに用いられる、ステップと、
前記第1損失関数の第1分岐関数の関数値と前記第1損失関数の第2分岐関数の関数値との和を、前記第1損失関数の関数値として決定するステップと、を含む、請求項2に記載の方法。
【請求項4】
第2損失関数の関数値を決定する前記ステップは、
第1判別機器を呼び出して前記第2予測アバターを判別するステップと、
前記第2予測アバターの第3判別結果に基づいて、前記第2損失関数の第1分岐関数の関数値を決定するステップであって、前記第3判別結果は、前記第2予測アバターが実画像であるかどうかを指示するために用いられる、ステップと、
前記第2サンプル画像y
kにおける前記サンプルアバターの前記第1種類の属性と、前記第2予測アバターの前記第1種類の属性とに対して属性比較を行い、属性比較結果を得るステップと、
前記属性比較結果に基づいて前記第2損失関数の第2分岐関数の関数値を決定するステップと、
前記第2損失関数の第1分岐関数の関数値と前記第2損失関数の第2分岐関数の関数値との和を、前記第2損失関数の関数値として決定するステップと、を含む、請求項2に記載の方法。
【請求項5】
前記第1損失関数、及び前記第2損失関数に従って前記画像処理モデルのターゲット損失関数を構築する前に、前記方法は、
第2生成ネットワークを呼び出し、前記第2サンプル画像y
kを処理して、第3予測画像[数3]を得るステップであって、前記第3予測画像[数3]は、第3予測アバターを含み、前記第2生成ネットワークと前記第1生成ネットワークは、同じ特徴抽出ユニットを有する、ステップと、
第3損失関数の関数値を決定するステップであって、前記第3損失関数は、前記第2サンプル画像y
kにおける前記サンプルアバターと前記第3予測アバターとの間の差異を指示することに用いられる、ステップと、をさらに含み、
前記第1損失関数の関数値、及び前記第2損失関数の関数値に基づいて、前記画像処理モデルのターゲット損失関数の関数値を決定する前記ステップは、
前記第1損失関数の関数値、前記第2損失関数の関数値、及び前記第3損失関数の関数値に基づいて、前記ターゲット損失関数の関数値を決定するステップを含む、請求項2に記載の方法。
【数3】
【請求項6】
第3損失関数の関数値を決定する前記ステップは、
第2判別機器を呼び出して、前記第2サンプル画像y
k、及び前記第3予測アバターをそれぞれ判別するステップと、
前記第2サンプル画像y
kの第4判別結果、及び前記第3予測アバターの第5判別結果に基づいて、前記第3損失関数の第1分岐関数の関数値を決定するステップであって、前記第4判別結果は、前記第2サンプル画像y
kが実画像であるかどうかを指示することに用いられ、前記第5判別結果は、前記第3予測アバターが実画像であるかどうかを指示することに用いられる、ステップと、
前記第3損失関数の第2分岐関数の関数値を決定するステップであって、前記第3損失関数の第2分岐関数は、前記第2サンプル画像y
kにおける前記サンプルアバターの第3知覚的特徴と前記第3予測アバターの第4知覚的特徴との間の差異を指示することに用いられる、ステップと、
前記第3損失関数の第1分岐関数の関数値と前記第3損失関数の第2分岐関数の関数値との和を、前記第3損失関数の関数値として決定するステップと、を含む、請求項5に記載の方法。
【請求項7】
前記第1生成ネットワークは、エンコーダと、第1デコーダとを含み、
画像処理モデルにおける第1生成ネットワークを呼び出し、第1サンプルセットにおける第1サンプル画像x
iを処理して、第1予測画像[数1]を得る前記ステップは、
前記エンコーダを呼び出して前記第1サンプル画像x
iをエンコードして、第1特徴ベクトルを得るステップと、
前記第1デコーダを呼び出して前記第1特徴ベクトルをデコードして、第1生成画像、及び第1領域分割情報を得るステップであって、前記第1領域分割情報は、前記第1生成画像におけるアバター領域を指示することに用いられる、ステップと、
前記第1領域分割情報に基づき、前記第1生成画像から前記第1予測画像[数1]を抽出するステップと、を含む、請求項1に記載の方法。
【請求項8】
前記第1生成ネットワークは、エンコーダと、第1デコーダとを含み、
前記第1生成ネットワークを呼び出し、第2サンプルセットにおける第2サンプル画像y
kを処理して、第2予測画像[数2]を得る前記ステップは、
前記エンコーダを呼び出して前記第2サンプル画像y
kをエンコードして、第2特徴ベクトルを得るステップと、
前記第1デコーダを呼び出して前記第2特徴ベクトルをデコードして、第2生成画像、及び第2領域分割情報を得るステップであって、前記第2領域分割情報は、前記第2生成画像におけるアバター領域を指示することに用いられる、ステップと、
前記第2領域分割情報に基づき、前記第2生成画像から前記第2予測画像[数2]を抽出するステップと、を含む、請求項1に記載の方法。
【請求項9】
前記エンコーダは、P個の特徴抽出ネットワークと、1つの特徴集約層とを含み、Pは、正の整数であり、それぞれの特徴抽出ネットワークは、1つのダウンサンプリング層を含み、P個の前記ダウンサンプリング層のスケールパラメータは異なり、
P個の前記ダウンサンプリング層は、前記エンコーダに入力された画像のP個のスケールパラメータ下での特徴情報を抽出することに用いられ、
前記特徴集約層は、P個の前記スケールパラメータ下での前記特徴情報に対して集約処理を行って、前記エンコーダに入力された画像と対応する特徴ベクトルを得ることに用いられる、請求項7、又は、8に記載の方法。
【請求項10】
前記第1デコーダは、1つの第1特徴変換ネットワークと、Q個の第1画像再構成ネットワークと、1つの第1畳み込みネットワークとを含み、Qは、正の整数であり、それぞれの前記第1画像再構成ネットワークは、1つの第1残差ネットワークと、1つの第1アップサンプリング層とを含み、
前記第1特徴変換ネットワークは、前記第1デコーダに入力された特徴ベクトルを特徴マップに変換することに用いられ、
Q個の前記第1画像再構成ネットワークは、前記特徴マップに対して第1特徴復元処理を行って、融合特徴画像を得ることに用いられ、
前記第1畳み込みネットワークは、前記融合特徴画像に対して畳み込み処理を行い、かつ前記第1デコーダに入力された特徴ベクトルに対応する生成画像を出力することに用いられる、請求項7、又は、8に記載の方法。
【請求項11】
前記第2生成ネットワークは、エンコーダと、第2デコーダと、身元識別ネットワークとを含み、
第2生成ネットワークを呼び出し、前記第2サンプル画像y
kを処理して、第3予測画像[数3]を得る前記ステップは、
前記エンコーダを呼び出して前記第2サンプル画像y
kをエンコードして、第2特徴ベクトルを得るステップと、
前記身元識別ネットワークを呼び出して前記第2サンプル画像y
kを識別して、前記第2サンプル画像y
kの識別情報を得るステップと、
前記第2デコーダを呼び出し、前記第2サンプル画像y
kの前記識別情報に従って前記第2特徴ベクトルをデコードして、第3生成画像、及び第3領域分割情報を得るステップであって、前記第3領域分割情報は、前記第3生成画像におけるアバター領域を指示することに用いられる、ステップと、
前記第3領域分割情報に基づき、前記第3生成画像から前記第3予測画像[数3]を抽出するステップと、を含む、請求項5に記載の方法。
【請求項12】
前記第2デコーダは、1つの第2特徴変換ネットワークと、Q個の第2画像再構成ネットワークと、1つの第2畳み込みネットワークと、を含み、Qは、正の整数であり、それぞれの前記第2画像再構成ネットワークは、1つの第2残差ネットワークと、1つの第2アップサンプリング層と、1つの自己適応モジュールとを含み、
前記自己適応モジュールは、前記第2デコーダのデコード過程において、前記第2サンプル画像y
kの識別情報に基づいて、前記識別情報と対応する第3特徴ベクトルを取得することに用いられ、前記第3特徴ベクトルは、前記第2デコーダが前記第2デコーダに入力された特徴ベクトルをデコードするように指示するために用いられる、請求項11に記載の方法。
【請求項13】
前記画像処理モデルの訓練を完了した後に、前記方法は、
テストビデオを取得するステップであって、前記テストビデオは、Rフレームのテスト画像を含み、各フレームのテスト画像は、1つの校正アバターを含み、Rは、正の整数である、ステップと、
訓練完了後の前記画像処理モデルの第1生成ネットワークを呼び出してそれぞれRフレームの前記テスト画像を処理して、Rフレームの前記テスト画像とそれぞれ対応する予測画像を得るステップであって、Rフレームの前記予測画像は、前記ターゲット人物の前記ターゲットアバターを含み、且つRフレームの前記予測画像におけるアバターの前記第1種類の属性は、対応する前記テスト画像における前記校正アバターの前記第1種類の属性と一致している、ステップと、
前記テストビデオにおける、前記校正アバターを削除したRフレームの前記テスト画像に対して画像補完を行う、ステップと、
Rフレームの前記予測画像をそれぞれ画像補完後のテストビデオにおける相応な前記テスト画像と融合して、ターゲットビデオを得るステップと、をさらに含む、請求項1に記載の方法。
【請求項14】
前記第1種類の属性は、非身元識別属性を指す、請求項1~13のいずれか一項に記載の方法。
【請求項15】
画像処理装置であって、前記画像処理装置は、
画像処理モデルにおける第1生成ネットワークを呼び出し、第1サンプルセットにおける第1サンプル画像x
iを処理して、第1予測画像[数1]を得ることに用いられる第1予測画像取得モジュールであって、前記第1予測画像[数1]は、第1予測アバターを含み、前記第1サンプルセット中には、N個の第1サンプル画像が含まれ、それぞれの前記第1サンプル画像は、いずれも同一のターゲット人物に対応するターゲットアバターを含み、Nは、正の整数であり、iは、正の整数で、且つi≦Nである、第1予測画像取得モジュールと、
前記第1生成ネットワークを呼び出し、第2サンプルセットにおける第2サンプル画像y
kを処理して、第2予測画像[数2]を得ることに用いられる第2予測画像取得モジュールであって、前記第2予測画像[数2]は、第2予測アバターを含み、前記第2サンプルセット中には、M個の第2サンプル画像が含まれ、それぞれの第2サンプル画像は、サンプルアバターを含み、Mは、正の整数であり、kは、正の整数で、且つk≦Mである、第2予測画像取得モジュールと、
前記第1サンプル画像x
iにおける前記ターゲットアバターと前記第1予測アバターとの間の差異、前記第2サンプル画像y
kにおける前記サンプルアバターの第1種類の属性と前記第2予測アバターの前記第1種類の属性との間の差異に基づき、前記画像処理モデルを訓練することに用いられるモデル訓練モジュールであって、前記画像処理モデルは、入力画像におけるアバターを前記ターゲットアバターに置換し、かつ前記入力画像におけるアバターの前記第1種類の属性を保持することに用いられる、モデル訓練モジュールと、を含む、画像処理装置。
【請求項16】
画像処理機器であって、記憶装置と、プロセッサとを含み、
前記記憶装置には、コンピュータプログラムが記憶されており、
前記プロセッサは、前記コンピュータプログラムをロードし、かつ実行することで、請求項1~14のいずれか一項に記載の画像処理方法を実現することに用いられる、画像処理機器。
【請求項17】
コンピュータ
プログラムであって、請求項1~14のいずれか一項に記載の画像処理方法を実行する
ように構成された、コンピュータ
プログラム。
【国際調査報告】