(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2025-02-06
(54)【発明の名称】顔姿勢推定方法、装置、電子機器及び記憶媒体
(51)【国際特許分類】
G06T 7/00 20170101AFI20250130BHJP
G06T 7/70 20170101ALI20250130BHJP
【FI】
G06T7/00 350C
G06T7/00 660A
G06T7/70 Z
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2024545137
(86)(22)【出願日】2022-07-26
(85)【翻訳文提出日】2024-07-30
(86)【国際出願番号】 CN2022107825
(87)【国際公開番号】W WO2023151237
(87)【国際公開日】2023-08-17
(31)【優先権主張番号】202210129785.7
(32)【優先日】2022-02-11
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】524179651
【氏名又は名称】深▲セン▼須弥雲図空間科技有限公司
【氏名又は名称原語表記】SHENZHEN XUMI YUNTU SPACE TECHNOLOGY CO., LTD.
【住所又は居所原語表記】25F2504, Wired Information Transmission Building, No. 3369, Binhai Avenue, Haizhu Community, Yuehai Street, Nanshan District. Shenzhen, Guangdong 518054 (CN)
(74)【代理人】
【識別番号】100146374
【氏名又は名称】有馬 百子
(72)【発明者】
【氏名】楊 戦波
(72)【発明者】
【氏名】黄 澤元
(72)【発明者】
【氏名】祁 暁▲亭▼
(72)【発明者】
【氏名】蒋 召
【テーマコード(参考)】
5L096
【Fターム(参考)】
5L096AA06
5L096DA02
5L096EA35
5L096FA12
5L096FA16
5L096FA67
5L096FA69
5L096HA11
5L096KA04
(57)【要約】
【要約】本公開は、顔姿勢推定方法、装置、電子機器及び記憶媒体を提供する。方法は、顔情報を含む対象画像を取得し、対象画像を予め構築された姿勢推定モデルに入力するステップと、浅い密結合層を用いて対象画像に対して特徴抽出を行い、浅い特徴情報を含む複数の第1特徴マップを取得するステップと、深い特徴再利用層を用いてそれぞれ複数の第1特徴マップに対して情報融合操作を実行し、第2特徴マップを取得することによって、浅い特徴情報に深い特徴情報を融合するステップと、アテンション層を用いて第2特徴マップにおける顔姿勢情報を抽出し、顔姿勢情報を含む第3特徴マップを取得し、分類子を用いて第3特徴マップを予測し、第3特徴マップが対応する顔姿勢の予測結果を取得し、予測結果に基づいて対象画像における顔姿勢を特定するステップと、を含む。本公開は、顔姿勢の重要な情報を十分に取得し、顔姿勢推定結果の正確性を向上させることができる。
【選択図】
図2
【特許請求の範囲】
【請求項1】
顔姿勢推定方法であって、
顔情報を含む対象画像を取得し、前記対象画像を予め構築された姿勢推定モデルに入力するステップと、
前記姿勢推定モデルで、浅い密結合層を用いて前記対象画像に対して特徴抽出を行い、浅い特徴情報を含む複数の第1特徴マップを取得するステップと、
複数の前記第1特徴マップを深い特徴再利用層の入力とし、前記深い特徴再利用層を用いてそれぞれ複数の前記第1特徴マップに対して情報融合操作を実行し、第2特徴マップを取得することによって、前記浅い特徴情報に深い特徴情報を融合するステップと、
アテンション層を用いて前記第2特徴マップにおける顔姿勢情報を抽出し、前記顔姿勢情報を含む第3特徴マップを取得し、分類子を用いて前記第3特徴マップを予測し、前記第3特徴マップが対応する顔姿勢の予測結果を取得し、前記予測結果に基づいて前記対象画像における顔姿勢を特定するステップと、を含む
ことを特徴とする顔姿勢推定方法。
【請求項2】
下記の方式で前記姿勢推定モデルを構築するステップは、
顔情報を含む元画像を取得し、顔検出モデルを用いて前記元画像を検出し、前記元画像が対応する顔画像及び顔枠を取得するとともに、前記元画像における顔姿勢情報を取得し、前記顔画像、前記顔枠の位置座標、及び前記顔姿勢情報を用いて第1データセットを生成するステップと、
前記元画像及び前記顔枠の位置座標に基づいて、デフォルトのトリミング方式により前記元画像をトリミングし、トリミング後の顔画像を取得し、前記トリミング後の顔画像、前記顔枠の位置座標、及び前記顔姿勢情報を用いて第2データセットを生成するステップと、
前記第1データセット及び前記第2データセットを組み合わせてトレーニングセットを取得し、前記トレーニングセットを用いて姿勢推定モデルをトレーニングし、トレーニング後の姿勢推定モデルを取得するステップと、を含む
ことを特徴とする請求項1に記載の方法。
【請求項3】
前記トレーニングセットには顔画像及びラベル情報が含まれ、前記ラベル情報をモデルトレーニング時のタグとして用い、前記ラベル情報には前記顔枠が対応する複数のラベル点、及び複数の姿勢角度が含まれ、
前記顔枠のラベル点は、顔枠の対応するコーナーポイント座標、及び前記顔枠の幅及び高さを含み、前記姿勢角度は、ピッチ角、極角及びローリング角を含む
ことを特徴とする請求項2に記載の方法。
【請求項4】
浅い密結合層を用いて前記対象画像に対して特徴抽出を行い、浅い特徴情報を含む複数の第1特徴マップを取得する前記ステップは、
前記浅い密結合層には、順に接続される複数の畳み込みモジュールが含まれ、それぞれの畳み込みモジュールを用いて、前記畳み込みモジュールに入力された特徴マップに対して順に畳み込み演算を実行するとともに、それぞれの前記畳み込みモジュールの出力を次の畳み込みモジュールの入力とし、それぞれの前記畳み込みモジュールの入力には、前の畳み込みモジュールの出力がさらに含まれ、前記浅い密結合層のうち、最後の複数の畳み込みモジュールの出力を前記第1特徴マップとすることを含む
ことを特徴とする請求項1に記載の方法。
【請求項5】
前記深い特徴再利用層を用いてそれぞれ複数の前記第1特徴マップに対して情報融合操作を実行し、第2特徴マップを取得することによって、前記浅い特徴情報に深い特徴情報を融合する前記ステップは、
前記深い特徴再利用層には、前記第1特徴マップの数に対応する畳み込みモジュールが含まれ、前記深い特徴再利用層の畳み込みモジュールを用いて、前記第1特徴マップに対して畳み込み変換を行い第2特徴マップを取得することによって、前記浅い特徴情報を含む第2特徴マップに前記深い特徴情報を融合し、前記第2特徴マップに対してグローバル平均プーリングを行い、前記グローバル平均プーリング後の対応する第2特徴マップを取得することを含む
ことを特徴とする請求項1に記載の方法。
【請求項6】
前記アテンション層は、SEアテンションモジュールと特徴変換モジュールを含み、アテンション層を用いて前記第2特徴マップにおける顔姿勢情報を抽出し、前記顔姿勢情報を含む第3特徴マップを取得する前記ステップは、
前記SEアテンションモジュールを用いて前記第2特徴マップにおける特徴チャンネルに対して重み計算を行い、チャンネル重みに基づいて前記特徴チャンネルを重み付けして重み付け後の第2特徴マップを取得するステップと、
前記特徴変換モジュールにより前記重み付け後の第2特徴マップに対して特徴抽出を行い、有効な特徴情報を含む第3特徴マップを取得するステップであって、前記有効な特徴情報に顔姿勢情報が含まれるステップと、を含む
ことを特徴とする請求項1に記載の方法。
【請求項7】
分類子を用いて前記第3特徴マップを予測し、前記第3特徴マップが対応する顔姿勢の予測結果を取得し、前記予測結果に基づいて前記対象画像における顔姿勢を特定する前記ステップは、
それぞれの顔姿勢は、複数の前記第3特徴マップに対応し、それぞれの前記第3特徴マップは、複数の分類子に対応し、それぞれの分類子は、前記第3特徴マップに基づいて若干数の角度値を予測し、前記若干数の角度値に基づいてそれぞれの前記分類子の予測した姿勢角度を計算し、すべての前記分類子の予測した姿勢角度を合計し、それぞれの前記顔姿勢が対応する姿勢角度を取得し、3つの前記顔姿勢が対応する姿勢角度を、前記対象画像中の顔姿勢に対する推定結果とするために用いられることを含む
ことを特徴とする請求項1に記載の方法。
【請求項8】
顔姿勢推定装置であって、
顔情報を含む対象画像を取得し、前記対象画像を予め構築された姿勢推定モデルに入力するように配置される取得モジュールと、
前記姿勢推定モデルで、浅い密結合層を用いて前記対象画像に対して特徴抽出を行い、浅い特徴情報を含む複数の第1特徴マップを取得するように配置される抽出モジュールと、
複数の前記第1特徴マップを深い特徴再利用層の入力とし、前記深い特徴再利用層を用いてそれぞれ複数の前記第1特徴マップに対して情報融合操作を実行し、第2特徴マップを取得することによって、前記浅い特徴情報に深い特徴情報を融合するように配置される融合モジュールと、
アテンション層を用いて前記第2特徴マップにおける顔姿勢情報を抽出し、前記顔姿勢情報を含む第3特徴マップを取得し、分類子を用いて前記第3特徴マップを予測し、前記第3特徴マップが対応する顔姿勢の予測結果を取得し、前記予測結果に基づいて前記対象画像における顔姿勢を特定するように配置される予測モジュールと、を備える
ことを特徴とする顔姿勢推定装置。
【請求項9】
メモリ、プロセッサ、メモリ内に記憶されプロセッサで実行可能なコンピュータプログラムを備える電子機器であって、前記プロセッサが前記コンピュータプログラムを実行する時に請求項1に記載の方法を実現する
ことを特徴とする電子機器。
【請求項10】
コンピュータプログラムが記憶されるコンピュータ読み取り可能な記憶媒体であって、前記コンピュータプログラムがプロセッサにより実行される時に請求項1に記載の方法を実現する
ことを特徴とするコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本公開は、コンピュータ技術分野に関し、特に顔姿勢推定方法、装置、電子機器及び記憶媒体に関する。
【背景技術】
【0002】
顔姿勢推定は、コンピュータビジョン分野の重要な研究方向であり、顔の姿勢変化も顔認識の効果に影響を与える重要な要因である。顔画像に対して効果的な姿勢推定を行う限り、顔姿勢による顔認識効果への影響をさらに低減させることができない。顔姿勢推定は、コンピュータビジョン分野で広く使用されており、例えば、ライブ認証、人間とコンピュータのインタラクション、バーチャルリアリティ、スマート監視などがある。
【0003】
現在、従来顔姿勢推定方法では、姿勢角度情報を捕捉し、無関係な顔の特徴を無視するため、顔及び周囲情報を用いてモデルを最適化することができ、且つ従来の汎用認識モデルによる顔姿勢認識の方式は、顔姿勢の重要な情報を十分に取得することができない。従来の顔姿勢推定方法は、検出した顔枠をそのまま入力とし、顔枠の不確実性を考慮せず、よって、顔姿勢推定方法は、姿勢角度に対して直接的に回帰や分類する場合に、最適な予測効果を取得しにくく、顔姿勢推定結果の正確さを低減させる。
【発明の概要】
【0004】
これに鑑みて、本公開の実施例は、従来技術に存在する、顔姿勢の重要な情報を十分に取得できず、顔姿勢推定結果の正確性が悪い問題を解決するために、顔姿勢推定方法、装置、電子機器及び記憶媒体を提供する。
【0005】
本公開の実施例の第1態様では、顔情報を含む対象画像を取得し、対象画像を予め構築された姿勢推定モデルに入力するステップと、姿勢推定モデルで、浅い密結合層を用いて対象画像に対して特徴抽出を行い、浅い特徴情報を含む複数の第1特徴マップを取得するステップと、複数の第1特徴マップを深い特徴再利用層の入力とし、深い特徴再利用層を用いてそれぞれ複数の第1特徴マップに対して情報融合操作を実行し、第2特徴マップを取得することによって、浅い特徴情報に深い特徴情報を融合するステップと、アテンション層を用いて第2特徴マップにおける顔姿勢情報を抽出し、顔姿勢情報を含む第3特徴マップを取得し、分類子を用いて第3特徴マップを予測し、第3特徴マップが対応する顔姿勢の予測結果を取得し、予測結果に基づいて対象画像における顔姿勢を特定するステップと、を含む顔姿勢推定方法を提供する。
【0006】
本公開の実施例の第2態様では、顔情報を含む対象画像を取得し、対象画像を予め構築された姿勢推定モデルに入力するように配置される取得モジュールと、姿勢推定モデルで、浅い密結合層を用いて対象画像に対して特徴抽出を行い、浅い特徴情報を含む複数の第1特徴マップを取得するように配置される抽出モジュールと、複数の第1特徴マップを深い特徴再利用層の入力とし、深い特徴再利用層を用いてそれぞれ複数の第1特徴マップに対して情報融合操作を実行し、第2特徴マップを取得することによって、浅い特徴情報に深い特徴情報を融合するように配置される融合モジュールと、アテンション層を用いて第2特徴マップにおける顔姿勢情報を抽出し、顔姿勢情報を含む第3特徴マップを取得し、分類子を用いて第3特徴マップを予測し、第3特徴マップが対応する顔姿勢の予測結果を取得し、予測結果に基づいて対象画像における顔姿勢を特定するように配置される予測モジュールと、を備える顔姿勢推定装置を提供する。
【0007】
本公開の実施例の第3態様では、メモリ、プロセッサ、メモリ内に記憶されプロセッサで実行可能なコンピュータプログラムを備える電子機器であって、プロセッサがコンピュータプログラムを実行する時に上記方法のステップを実現する電子機器を提供する。
【0008】
本公開の実施例の第4態様では、コンピュータプログラムが記憶されるコンピュータ読み取り可能な記憶媒体であって、該コンピュータプログラムがプロセッサによって実行される時に、上記方法のステップを実現するコンピュータ読み取り可能な記憶媒体を提供する。
【0009】
本公開の実施例で用いられる上記少なくとも一つの技術案は下記の有益な効果を奏する。
【0010】
顔情報を含む対象画像を取得し、対象画像を予め構築された姿勢推定モデルに入力し、姿勢推定モデルで、浅い密結合層を用いて対象画像に対して特徴抽出を行い、浅い特徴情報を含む複数の第1特徴マップを取得し、複数の第1特徴マップを深い特徴再利用層の入力とし、深い特徴再利用層を用いてそれぞれ複数の第1特徴マップに対して情報融合操作を実行し、第2特徴マップを取得することによって、浅い特徴情報に深い特徴情報を融合し、アテンション層を用いて第2特徴マップにおける顔姿勢情報を抽出し、顔姿勢情報を含む第3特徴マップを取得し、分類子を用いて第3特徴マップを予測し、第3特徴マップが対応する顔姿勢の予測結果を取得し、予測結果に基づいて対象画像における顔姿勢を特定する。本公開は、顔姿勢の重要な情報を十分に取得し、顔姿勢推定結果をより正確にすることができる。
【図面の簡単な説明】
【0011】
本公開の実施例における技術案をより明確に説明するために、以下、実施例又は従来技術の説明に必要な図面を簡単に紹介し、明らかに、以下に説明する図面は本公開のいくつかの実施例に過ぎず、当業者にとって、創造的作業の必要がない前提で、これらの図面に基づいて他の図面を取得することができる。
【
図1】本公開の実施例で提供される姿勢推定モデルのネットワーク構造概略図である。
【
図2】本公開の実施例で提供される顔姿勢推定方法のフローチャートである。
【
図3】本公開の実施例で提供される顔姿勢推定装置の構造概略図である。
【
図4】本公開の実施例で提供される電子機器の構造概略図である。
【発明を実施するための形態】
【0012】
下記の説明において、限定ではなく、説明するために、例えば特定のシステム構造、技術のような具体的詳細を提供することにより、本公開の実施例を徹底的に理解する。しかしながら、当業者は、これらの具体的詳細がない他の実施例においても本公開を実現できることを分かるべきである。他の場合には、周知のシステム、装置、回路及び方法についての詳細な説明を省略し、不要な詳細が本公開の説明を妨げることを回避する。
【0013】
顔姿勢推定タスクにおいて、画像における顔位置及び大きさの多様性、異なる顔のあらゆる角度から見た違い、及び複雑な背景環境などの要素のため、アルゴリズムにより顔の姿勢角度を正確に推定することに不利影響をもたらす。
【0014】
従来の顔姿勢推定アルゴリズムにおいて、検出した顔枠をそのまま入力とし、顔枠の不確実性を考慮せず、顔及び周囲情報を十分に利用してモデルを最適化することができない。姿勢推定は、姿勢角度情報を捕捉し、無関係な顔の特徴を無視する必要があり、従来、汎用認識モデルによるバックボーンネットワーク及びneckモジュールは、有効な設計を欠けるため、姿勢重要情報を十分に取得することができない。また、従来、角度に対して直接的に回帰や分類を行う方法は、あまりにも直接的であり、最適な効果を得るのが難しい。よって、顔姿勢推定方法は、姿勢角度に対して直接的に回帰や分類する場合に、最適な予測効果を取得しにくく、顔姿勢推定結果の正確さを低減させる。
【0015】
従来技術における問題に鑑みて、本公開は、真新しいニューラルネットワークによる姿勢推定モデルの顔姿勢推定方法を提出し、本公開のニューラルネットワークモデルには、主にバックボーンネットワーク、Neckモジュール及びHeadモジュールが含まれる。姿勢推定モデルをトレーニングする場合に、用いられるトレーニングセットには、顔枠及び複数のポイントの姿勢ラベルが含まれ、複数の顔枠のラベル点及び複数の姿勢角度からなる姿勢ラベル情報を含む。そして、元画像を保留し、元画像に基づいてデータ拡張を行うことによって、姿勢推定モデルに対するデータ拡張トレーニングを実現する。姿勢推定モデルにおける浅い密結合層及び深い特徴再利用層からなるバックボーンネットワークにより、顔画像における浅い特徴及び深い特徴を融合し、アテンションモジュール及びグループ化角度回帰モジュールから、写真における顔の姿勢角度を推定する。
【0016】
以下、図面を参照しながら、本公開において姿勢推定モデルのネットワーク構造を詳しく説明し、
図1は本公開の実施例で提供される姿勢推定モデルのネットワーク構造概略図であり、
図1に示すように、該姿勢推定モデルのネットワーク構造は、具体的に下記のように含んでもよい。
【0017】
バックボーンネットワークには、浅い密結合層(C1~C5対応)及び深い特徴再利用層(P3~P5対応)が含まれ、浅い密結合層は、主に顔画像におけるフォワード特徴の抽出に用いられ、密結合とは、それぞれのモジュールの出力は、次のモジュールの入力とする他に、その後の他のモジュールの入力とするという意味であり、深い特徴再利用層は、特徴表現時に、抽出された浅い特徴情報に深い特徴情報を融合することによって、より多くのセマンティック情報(即ち姿勢情報)を含む特徴マップを取得する。
【0018】
Neckモジュールは、SEアテンションモジュールとTransformerによる特徴変換モジュールからなり、SEアテンションモジュールは、異なるチャンネルの特徴を重み付けることによって重要な特徴を拡大すると同時に、比較的重要ではない特徴を抑制する。Transformerは、賢い構造設計により、強い特徴抽出能力を有し、マルチヘッドアテンションメカニズムにより、有効な特徴を抽出して、特徴マップにおける重要な特徴を強調し、干渉特徴を抑制する。
【0019】
Headモジュールは、グループ化角度回帰モジュール(即ち分類子)に対応し、それぞれの顔姿勢について複数の分類子を設置することによって、それぞれの分類子は複数の角度が対応する確率値をそれぞれ予測し、それぞれの角度の対応する確率値により分類子の予測結果を計算し、最後にすべての分類子の予測結果を加算して最終的な推定結果を取得する。よって、顔画像中のすべての姿勢が対応する角度値を特定する。
【0020】
図2は、本公開の実施例で提供される顔姿勢推定方法のフローチャートである。
図2の顔姿勢推定方法はサーバによって実行されてもよい。
図2に示すように、該顔姿勢推定方法は、具体的に、
顔情報を含む対象画像を取得し、対象画像を予め構築された姿勢推定モデルに入力するS201と、
姿勢推定モデルで、浅い密結合層を用いて対象画像に対して特徴抽出を行い、浅い特徴情報を含む複数の第1特徴マップを取得するS202と、
複数の第1特徴マップを深い特徴再利用層の入力とし、深い特徴再利用層を用いてそれぞれ複数の第1特徴マップに対して情報融合操作を実行し、第2特徴マップを取得することによって、浅い特徴情報に深い特徴情報を融合するS203と、
アテンション層を用いて第2特徴マップにおける顔姿勢情報を抽出し、顔姿勢情報を含む第3特徴マップを取得し、分類子を用いて第3特徴マップを予測し、第3特徴マップが対応する顔姿勢の予測結果を取得し、予測結果に基づいて対象画像における顔姿勢を特定するS204と、を含んでもよい。
【0021】
具体的には、本公開の実施例の対象画像とは、収集した元画像を、顔検出が行われた後の顔画像を意味し、即ち姿勢推定モデルの入力は、元画像ではなく、顔検出後の顔画像である。姿勢推定モデルを用いて姿勢角度を予測する前に、まず姿勢推定モデルを構築しトレーニングし、その後、トレーニング後の姿勢推定モデルを実際使用際のモデルとする必要がある。
【0022】
更には、本公開の実施例の顔姿勢推定方法では、検出後の顔画像(即ち対象画像)を姿勢推定モデルの入力とすることによって、姿勢推定モデルを用いて予測し、3つの姿勢角度、即ちピッチ角、極角及びローリング角を出力する。異なる顔及び顔検出モデルの違いによって、顔境界線が完全に統合する基準を有しないため、検出された顔画像をトレーニングして取得した姿勢推定モデルは、より良い堅牢性を有する。
【0023】
本公開の実施例で提供される技術案によれば、本公開は、顔情報を含む対象画像を取得し、対象画像を予め構築された姿勢推定モデルに入力し、姿勢推定モデルで、浅い密結合層を用いて対象画像に対して特徴抽出を行い、浅い特徴情報を含む複数の第1特徴マップを取得し、複数の第1特徴マップを深い特徴再利用層の入力とし、深い特徴再利用層を用いてそれぞれ複数の第1特徴マップに対して情報融合操作を実行し、第2特徴マップを取得することによって、浅い特徴情報に深い特徴情報を融合し、アテンション層を用いて第2特徴マップにおける顔姿勢情報を抽出し、顔姿勢情報を含む第3特徴マップを取得し、分類子を用いて第3特徴マップを予測し、第3特徴マップが対応する顔姿勢の予測結果を取得し、予測結果に基づいて対象画像における顔姿勢を特定する。本公開は、顔姿勢の重要な情報を十分に取得し、顔姿勢推定結果をより正確にすることができる。
【0024】
いくつかの実施例において、下記の方式で姿勢推定モデルを構築し、即ち、顔情報を含む元画像を取得し、顔検出モデルを用いて元画像を検出し、元画像が対応する顔画像及び顔枠を取得するとともに、元画像における顔姿勢情報を取得し、顔画像、顔枠の位置座標、及び顔姿勢情報を用いて第1データセットを生成するステップと、元画像及び顔枠の位置座標に基づいて、デフォルトのトリミング方式により元画像をトリミングし、トリミング後の顔画像を取得し、トリミング後の顔画像、顔枠の位置座標、及び顔姿勢情報を用いて第2データセットを生成するステップと、第1データセット及び第2データセットを組み合わせてトレーニングセットを取得し、トレーニングセットを用いて姿勢推定モデルをトレーニングし、トレーニング後の姿勢推定モデルを取得するステップと、を含む。
【0025】
具体的には、姿勢推定モデルのトレーニングは、主に二部分、即ちデータセットのラベリング、及びトレーニング時のデータ拡張に分けられ、以下、具体的な実施例を参照しながら、この二部分の内容をそれぞれ詳しく説明し、具体的に、下記の内容を含んでもよい。
【0026】
データセットのラベリングプロセスにおいて、ラベリング対象データセットのバッチについて、まず、従来のアルゴリズムを用いて各枚の元画像Xにおいて顔の対応する3つの姿勢角度を取得し、それぞれp(ピッチ角)、y(極角)及びr(ローリング角)と記す。そして、RetinaFaceモデルを用いて顔検出を行い、顔枠を取得するとともに、顔枠が対応する左上隅座標(x1,y1)、顔枠の幅(w)及び高さ(h)を特定する。元画像Xを保留し、画像タグをY=[p,y,r,x1,y1,w,h]として記録する。
【0027】
更には、顔検出を経った後、取得した顔枠において、上記した左上隅座標、幅及び高さを検出枠(即ち顔枠)の対応する4つのラベル点として使用できる他に、顔枠の矩形の対応する4つの頂点座標を4つのラベル点としてもよい。このようにすると、トレーニングセットにおけるラベル情報には、7点の姿勢ラベル、即ち4つの検出枠のラベル点及び3つの姿勢角度が含まれる。上記検出後の顔画像、及び7点姿勢ラベルからなるラベル情報を第1データセットとする。
【0028】
トレーニング時のデータ拡張操作において、ランダムなトリミングによるデータ拡張の方式によって、元画像に基づき、一定のトリミング比例(例えば0.5倍)に応じて元画像における顔画像をランダムな範囲でトリミングし、例えば、顔検出枠よりも僅かに大きい(1.0~1.2倍)顔画像をランダムにトリミングすることによって、第1データセットにおける顔画像と類似する顔画像を生成し、新たに生成した顔画像、及び該顔画像が対応する7点の姿勢ラベルからなるラベル情報を第2データセットとする。
【0029】
本公開の実施例で、データ拡張の方式により、トレーニングデータセットの規模を拡大し、データ拡張後のトレーニングセットを用いて姿勢推定モデルをトレーニングする場合に、不正確なラベルボックスによる影響を低減させるだけでなく、データ量が増加してモデルの堅牢性も向上する。
【0030】
いくつかの実施例において、トレーニングセットには顔画像及びラベル情報が含まれ、ラベル情報をモデルトレーニング時のタグとして用い、ラベル情報には、顔枠が対応する複数のラベル点と、複数の姿勢角度とが含まれ、顔枠のラベル点は、顔枠が対応するコーナーポイント座標、顔枠の幅及び高さを含み、姿勢角度はピッチ角、極角及びローリング角を含む。
【0031】
いくつかの実施例において、浅い密結合層を用いて対象画像に対して特徴抽出を行い、浅い特徴情報を含む複数の第1特徴マップを取得するステップは、浅い密結合層には、順に接続される複数の畳み込みモジュールが含まれ、それぞれの畳み込みモジュールを用いて、畳み込みモジュールに入力された特徴マップに対して順に畳み込み演算を実行するとともに、それぞれの畳み込みモジュールの出力を次の畳み込みモジュールの入力とし、それぞれの畳み込みモジュールの入力には、前の畳み込みモジュールの出力がさらに含まれ、浅い密結合層のうち、最後の複数の畳み込みモジュールの出力を第1特徴マップとするステップを含む。
【0032】
具体的に、顔姿勢分類について、顔の特徴の位置及びアバター全体の角度を考慮する必要があるので、顔画像における一部の浅い情報及び深い抽象情報は、いずれも重要な役割を有するため、本公開の実施例は、浅い密結合層及び深い特徴再利用層からなるバックボーンネットワークを提出する。バックボーンネットワークにより、顔画像における浅い特徴情報及び深い特徴情報を抽出し、浅い特徴情報を深い特徴情報に融合して、より多くのセマンティック情報の特徴マップを取得する。
【0033】
更には、浅い密結合層でフォワード特徴の抽出時に、姿勢推定モデルで浅い密結合層をC1、C2、C3、C4及びC5の合計5つの畳み込みモジュールに分け、密結合とは、それぞれの畳み込みモジュールの出力が、次の畳み込みモジュールの入力とする他に、その後の他の畳み込みモジュールの入力とするという意味である。このようにして、深い特徴再利用層により多くの浅い情報を受信させると同時に、特徴による姿勢情報の表現能力を向上し、また特徴の利用効率を向上させ、各部分の抽出した特徴は、より多くのモジュールで活用できる。
【0034】
いくつかの実施例において、深い特徴再利用層を用いてそれぞれ複数の第1特徴マップに対して情報融合操作を実行し、第2特徴マップを取得することによって、浅い特徴情報に深い特徴情報を融合するステップは、深い特徴再利用層には、第1特徴マップの数に対応する畳み込みモジュールが含まれ、深い特徴再利用層の畳み込みモジュールを用いて、第1特徴マップに対して畳み込み変換を行い第2特徴マップを取得することによって、浅い特徴情報を含む第2特徴マップに深い特徴情報を融合し、第2特徴マップに対してグローバル平均プーリングを行い、グローバル平均プーリング後の対応する第2特徴マップを取得するステップを含む。
【0035】
具体的には、深い特徴再利用層を用いて特徴表現を行う場合に、浅い特徴情報を深い特徴情報に融合することによって、
図1に示すように、畳み込みモジュールC3、C4、C5の出力を利用して3つの異なるレベルの特徴表現、即ちP3、P4及びP5をそれぞれ作製し、よってC3、C4、C5の出力する特徴マップに深い特徴情報を融合する。以下、上記実施例における
図1を参照しながら、深い特徴再利用層の実現方式について詳しく説明し、具体的に下記の内容を含む。
【0036】
C3、C4及びC5は、浅い密結合層における畳み込みモジュールに対応し、C3、C4及びC5の出力をP3、P4及びP5の入力とし、深い特徴再利用層における畳み込みモジュールを用いてC3、C4及びC5の出力する特徴マップに対して畳み込み演算を行い、セマンティック情報(即ち姿勢情報)を含む特徴マップを出力する。P3、P4及びP5に対して畳み込み演算を行う場合に、以下のルールを使用し、即ち、P3を計算する場合に、C3、C4及びC5に対して1x1畳み込みをそれぞれ実行して(28,28,512)の特徴マップに変換し、よってP3にC3、C4及びC5の情報を融合させ、P4を計算する場合に、C4、C5に対して1x1畳み込みをそれぞれ実行して(14,14,512)の特徴マップに変換し、よってC4及びC5の情報を融合し、P5を計算する場合に、C5に対して1x1畳み込みを実行して(7,7,512)の特徴マップに変換し、C5の情報のみを利用する。最後に、P3、P4及びP5に対してグローバル平均プーリングをそれぞれ実行し、長さ128、256及び512の特徴ベクトルをそれぞれ取得し、アテンション層に入力する。
【0037】
いくつかの実施例において、アテンション層はSEアテンションモジュールと特徴変換モジュールを備え、アテンション層を用いて第2特徴マップにおける顔姿勢情報を抽出し、顔姿勢情報を含む第3特徴マップを取得するステップは、SEアテンションモジュールを用いて第2特徴マップにおける特徴チャンネルに対して重み計算を行うとともに、チャンネル重みに基づいて特徴チャンネルに対して重み付けして重み付け後の第2特徴マップを取得するステップと、特徴変換モジュールを用いて重み付け後の第2特徴マップに対して特徴抽出を行い、有効な特徴情報を含む第3特徴マップを取得するステップと、を含み、有効な特徴情報に顔姿勢情報が含まれる。
【0038】
具体的には、バックボーンネットワークから抽出された特徴情報から、姿勢情報をよく抽出するために、本公開は、SEアテンションモジュール及びTransformerによるNeckモジュールが提供される。SEアテンションモジュールを用いて、異なるチャンネルの特徴を重み付けして重要な特徴を拡大すると同時に、比較的重要ではない特徴を抑制する。Transformerは、強い特徴抽出能力を有し、重要な特徴を強調し、干渉特徴を抑制する。
【0039】
更には、SEアテンションモジュールには2つの全結合層及び1つのsigmoid層(即ち正規化層)が含まれ、SEアテンションモジュールに入力された第2特徴マップのチャンネル数をcと仮定すると、チャンネル数cの第2特徴マップを、2つの全結合層及び1つのsigmoid層の処理によってそれぞれの特徴チャンネルのチャンネル重みを取得し、その後、それぞれのチャンネル重みと対応する特徴チャンネルとを乗算して、重み付け後の特徴マップを取得する。
【0040】
更には、Transformer(特徴変換モジュール)において、入力された重み付け後の特徴マップを、マルチヘッドアテンション(Multi-HeadAttention)及び多層全結合層MLPの処理によって、変換後のcセットの特徴マップを取得する。Transformerのマルチヘッドアテンションメカニズムにより、特徴マップにおける有効な特徴を抽出して、重要な特徴をより強調することができる。
【0041】
いくつかの実施例において、分類子を用いて第3特徴マップを予測し、第3特徴マップが対応する顔姿勢の予測結果を取得し、予測結果に基づいて対象画像における顔姿勢を特定するステップは、それぞれの顔姿勢は、複数の第3特徴マップに対応し、それぞれの第3特徴マップは、複数の分類子に対応し、それぞれの分類子は、第3特徴マップに基づいて若干数の角度値を予測し、若干数の角度値に基づいてそれぞれの分類子の予測した姿勢角度を計算し、すべての分類子の予測した姿勢角度を合計し、それぞれの顔姿勢が対応する姿勢角度を取得し、3つの顔姿勢が対応する姿勢角度を、対象画像中の顔姿勢に対する推定結果とするために用いられることを含む。
【0042】
具体的には、正確な姿勢角度を取得するために、本公開は、姿勢推定モデルにグループ化角度回帰モジュール(分類子モジュールとも称する)、即ち
図1中のHeadモジュール部分を追加する。それぞれの姿勢角度について、各セットの特徴は3つの分類子を含んでもよいが、それぞれの分類子は、10つの角度値を予測する。例えば、1番目の分類子は、0°から9°の確率値を予測し、モデルによりこれらの10つの角度の確率値(p00、p01、…、p09)を予測すると、この分類子の予測結果はangle0=p01*0+p02*1+…+p09*9である。最後に、9つの分類子の結果を加算すると、最終的な姿勢角度を取得することができる。3つの姿勢角度についてそれぞれ上記計算を行うと、最終的に予測する3つの姿勢角度を取得する。
【0043】
更には、Headモジュールに入力されたそれぞれの第3特徴マップは、3つの分類子に対応し、それぞれの分類子は、異なる10つの角度値を予測し、それぞれの分類子の予測結果に基づいて、すべての分類子(合計9つの分類子)の最終的な予測結果を計算し、Headモジュールの最終的な予測結果を現在姿勢角度の対応する角度値とすることに用いられる。それぞれの姿勢角度について、モデルはいずれも1つの角度値を出力し、すべての姿勢角度が対応する角度値を対象画像における顔姿勢に対する推定結果とする。
【0044】
本公開の実施例で提供される技術案によれば、本公開は、7点の姿勢ラベル(4つの検出枠ラベル点及び3つの姿勢角度)のデータセットフォーマットを用い、このラベリングスキームに基づいて顔画像のデータ拡張を設計し、トレーニングセットのデータ量を拡大する。本公開は、顔画像姿勢特徴に基づいて分析し、浅い密結合及び深い特徴再利用のバックボーンネットワークを設計し、特徴の利用効率及び表現能力を向上させる。本公開は、SEアテンション及びTransformerによるNeckモジュールを更に公開し、よって更に姿勢の重要な情報を抽出する。本公開は、モデルにグループ化角度回帰モジュールを追加し、27個の分類子により、3つの姿勢角度をより正確的に予測する。
【0045】
下記は、本公開の方法実施例を実行するための本公開の装置実施例である。本公開の装置実施例に開示されない詳細については、本公開の方法実施例を参照してください。
【0046】
図3は、本公開の実施例で提供される顔姿勢推定装置の構造概略図である。
図3に示すように、該顔姿勢推定装置は、
顔情報を含む対象画像を取得し、対象画像を予め構築された姿勢推定モデルに入力するように配置される取得モジュール301と、
姿勢推定モデルで、浅い密結合層を用いて対象画像に対して特徴抽出を行い、浅い特徴情報を含む複数の第1特徴マップを取得するように配置される抽出モジュール302と、
複数の第1特徴マップを深い特徴再利用層の入力とし、深い特徴再利用層を用いてそれぞれ複数の第1特徴マップに対して情報融合操作を実行し、第2特徴マップを取得することによって、浅い特徴情報に深い特徴情報を融合するように配置される融合モジュール303と、
アテンション層を用いて第2特徴マップにおける顔姿勢情報を抽出し、顔姿勢情報を含む第3特徴マップを取得し、分類子を用いて第3特徴マップを予測し、第3特徴マップが対応する顔姿勢の予測結果を取得し、予測結果に基づいて対象画像における顔姿勢を特定するように配置される予測モジュール304と、を備える。
【0047】
いくつかの実施例において、
図3の取得モジュール301は、下記の方式で姿勢推定モデルを構築し、即ち、顔情報を含む元画像を取得し、顔検出モデルを用いて元画像を検出し、元画像が対応する顔画像及び顔枠を取得するとともに、元画像における顔姿勢情報を取得し、顔画像、顔枠の位置座標、及び顔姿勢情報を用いて第1データセットを生成するステップと、元画像及び顔枠の位置座標に基づいて、デフォルトのトリミング方式により元画像をトリミングし、トリミング後の顔画像を取得し、トリミング後の顔画像、顔枠の位置座標、及び顔姿勢情報を用いて第2データセットを生成するステップと、第1データセット及び第2データセットを組み合わせてトレーニングセットを取得し、トレーニングセットを用いて姿勢推定モデルをトレーニングし、トレーニング後の姿勢推定モデルを取得するステップと、を含む。
【0048】
いくつかの実施例において、トレーニングセットには顔画像及びラベル情報が含まれ、ラベル情報をモデルトレーニング時のタグとして用い、ラベル情報には、顔枠が対応する複数のラベル点と、複数の姿勢角度とが含まれ、顔枠のラベル点は、顔枠が対応するコーナーポイント座標、顔枠の幅及び高さを含み、姿勢角度はピッチ角、極角及びローリング角を含む。
【0049】
いくつかの実施例において、浅い密結合層には、順に接続される複数の畳み込みモジュールが含まれ、
図3の抽出モジュール302は、それぞれの畳み込みモジュールを用いて、畳み込みモジュールに入力された特徴マップに対して順に畳み込み演算を実行するとともに、それぞれの畳み込みモジュールの出力を次の畳み込みモジュールの入力とし、それぞれの畳み込みモジュールの入力には、前の畳み込みモジュールの出力がさらに含まれ、浅い密結合層のうち、最後の複数の畳み込みモジュールの出力を第1特徴マップとする。
【0050】
いくつかの実施例において、深い特徴再利用層には、第1特徴マップの数に対応する畳み込みモジュールが含まれ、
図3の融合モジュール303は、深い特徴再利用層の畳み込みモジュールを用いて、第1特徴マップに対して畳み込み変換を行い第2特徴マップを取得することによって、浅い特徴情報を含む第2特徴マップに深い特徴情報を融合し、第2特徴マップに対してグローバル平均プーリングを行い、グローバル平均プーリング後の対応する第2特徴マップを取得する。
【0051】
いくつかの実施例において、アテンション層は、SEアテンションモジュール及び特徴変換モジュールを備え、
図3の予測モジュール304は、SEアテンションモジュールを用いて第2特徴マップにおける特徴チャンネルに対して重み計算を行うとともに、チャンネル重みに基づいて特徴チャンネルに対して重み付けして重み付け後の第2特徴マップを取得するステップと、特徴変換モジュールを用いて重み付け後の第2特徴マップに対して特徴抽出を行い、有効な特徴情報を含む第3特徴マップを取得するステップ、を含み、有効な特徴情報に顔姿勢情報が含まれる。
【0052】
いくつかの実施例において、それぞれの顔姿勢は、複数の第3特徴マップに対応し、それぞれの第3特徴マップは、複数の分類子に対応し、それぞれの分類子は、第3特徴マップに基づいて若干数の角度値を予測し、若干数の角度値に基づいてそれぞれの分類子の予測した姿勢角度を計算し、すべての分類子の予測した姿勢角度を合計し、それぞれの顔姿勢が対応する姿勢角度を取得し、3つの顔姿勢が対応する姿勢角度を、対象画像中の顔姿勢に対する推定結果とするために用いられる。
【0053】
理解すべきこととして、上記実施例における各ステップの番号の大きさは実行順序の前後を意味するものではなく、各プロセスの実行順序はその機能及び固有論理で確定されるべきであり、本公開の実施例の実施プロセスを任意に限定するものではない。
【0054】
図4は本公開の実施例で提供される電子機器4の構造概略図である。
図4に示すように、該実施例の電子機器4は、プロセッサ401、メモリ402、及び該メモリ402内に記憶されプロセッサ401で実行可能なコンピュータプログラム403を備える。プロセッサ401は、コンピュータプログラム403を実行する時に、上記各方法実施例におけるステップを実現する。或いは、プロセッサ401は、コンピュータプログラム403を実行する時に、上記各装置実施例における各モジュール/ユニットの機能を実現する。
【0055】
例示として、コンピュータプログラム403は、1つ又は複数のモジュール/ユニットに分割され、1つ又は複数のモジュール/ユニットがメモリ402内に記憶され、プロセッサ401によって実行されて、本公開を完成するようにしてもよい。1つ又は複数のモジュール/ユニットは、特定機能を発揮することができるシリーズのコンピュータプログラムコマンドセクションであってもよく、該コマンドセクションは、コンピュータプログラム403が電子機器4で実行されるプロセスを説明するためのものである。
【0056】
電子機器4は、デスクトップコンピュータ、ノートパソコン、パームトップコンピュータ及びクラウドサーバ等の電子機器であってもよい。電子機器4は、プロセッサ401及びメモリ402を備えてもよいが、それらに限定されない。当業者であれば理解できるように、
図4は電子機器4の例示に過ぎず、電子機器4を限定するものではなく、図示より多いか又は少ない部品を含み、或いはある部品や異なる部品を組み合わせることができ、例えば電子機器は、入出力機器、ネットワークアクセス機器、バスなどを含んでもよい。
【0057】
プロセッサ401は、中央処理ユニット(Central Processing Unit,CPU)であってもよく、他の汎用プロセッサ、デジタル信号プロセッサ(Digital Signal Processor,DSP)、特定用途向け集積回路(Application SpecificIntegrated Circuit,ASIC)、フィールドプログラマブルゲートアレイ(Field-Programmable GateArray,FPGA)又は他のプログラマブルロジックデバイス、ディスクリートゲート又はトランジスタ論理デバイス、ディスクリートハードウェアコンポーネント等であってもよい。汎用プロセッサはマイクロプロセッサであってもよいし、任意の一般的なプロセッサ等であってもよい。
【0058】
メモリ402は、電子機器4の内部記憶ユニット、例えば電子機器4のハードディスク又はRAMであってもよい。メモリ402は、電子機器4の外部記憶機器、例えば電子機器4に装備するプラグインハードディスク、スマートメモリカード(Smart Media Card,SMC)、セキュリティデジタル(Secure Digital,SD)カード、フラッシュカード(Flash Card)等であってもよい。さらに、メモリ402は、電子機器4の内部記憶ユニットを含むだけでなく外部記憶機器も含むことができる。メモリ402は、コンピュータプログラムと、電子機器に所要のほかのプログラム及びデータを記憶するためのものである。メモリ402は、出力された、又は出力されるべきデータを一時的に記憶するために用いられてもよい。
【0059】
当業者であれば、説明の利便性及び簡潔のために、上記各機能ユニット、モジュールの分割のみを例に挙げて説明したが、実際の適用において、必要に応じて上記機能を異なる機能ユニット、モジュールに割り当てて完成させることができ、すなわち装置の内部構造を異なる機能ユニット又はモジュールに分割することにより、以上に説明した全て又は一部の機能を完了することを明確に理解することができる。実施例における各機能ユニット、モジュールは一つの処理ユニットに統合されてもよく、各ユニットが単独で物理的に存在してもよく、二つ以上のユニットが一つのユニットに統合されてもよく、上記統合されたユニットはハードウェアの形式で実現されてもよく、ソフトウェア機能ユニットの形式で実現されてもよい。なお、各機能ユニット、モジュールの具体的な名称について互いに区別されやすいためのものであり、本願の保護範囲を限定するものではない。上記システムにおけるユニット、モジュールの具体的な動作プロセスについては、前述方法の実施例における対応プロセスを参照することができ、ここで説明を省略する。
【0060】
上記実施例において、各実施例に対する説明はそれぞれの重点を有し、ある実施例において詳しく説明又は記載されていない部分については、他の実施例の関連説明を参照することができる。
【0061】
当業者であれば、本明細書に開示された実施例で説明された各例のユニット及びアルゴリズムステップを、電子ハードウェア、又はコンピュータソフトウェアと電子ハードウェアとの組み合わせで実現することができることを意識することができる。これらの機能がハードウェアで実行されるか、あるいはソフトウェアで実行されるかについては、技術案の特定の適用及び設計の制約条件に決められる。当業者はそれぞれの特定の適用に対して異なる方法を用いて説明された機能を実現してもよいが、このような実現は本公開の範囲を超えると考えられるべきではない。
【0062】
本公開で提供される実施例において、開示された装置/コンピュータ機器及び方法は、他の方式で実現することができると理解すべきである。例えば、上記説明された装置/コンピュータ機器の実施例は例示的なものに過ぎず、例えば、モジュール又はユニットの分けは、論理的機能分けに過ぎず、実際に実現時に他の分け方式があてもよく、例えば複数のユニット又はコンポーネントを結合するか又は他のシステムに統合することができ、又はいくつかの特徴を無視するか、あるいは実行しなくてもよい。また、表示されるか又は議論される相互間の結合又は直接結合又は通信接続はいくつかのインタフェース、装置又はユニットによる間接結合又は通信接続であってもよく、電気的、機械的又は他の形式であってもよい。
【0063】
分離部材として説明されるユニットは物理的に分離されてもよいし、又はそうでなくてもよく、ユニットとして表示される部材は物理的ユニットであってもよいし又はそうでなくてもよく、即ち1つの箇所に位置してもよいし、又は複数のネットワークユニットに分布してもよい。実際な需要に応じてそのうちの一部又は全部のユニットを選択して本実施例の方案の目的を達成することができる。
【0064】
なお、本公開における各機能ユニットは一つの処理ユニットに統合されてもよいし、各ユニットが単独で物理的に存在してもよいし、二つ以上のユニットが一つのユニットに統合されてもよい。上記統合されたユニットはハードウェアの形式で実現されてもよく、ソフトウェア機能ユニットの形式で実現されてもよい。
【0065】
統合されたモジュール/ユニットは、ソフトウェア機能ユニットの形式で実現されるとともに、独立した製品として販売されるか又は使用される場合に、コンピュータ読み取り可能な記憶媒体記憶媒体に記憶されてもよい。このような理解により、本公開は上記実施例の方法における全部又は一部のプロセスの実現について、コンピュータプログラムにより関連するハードウェアを指令して完了することができ、コンピュータプログラムをコンピュータ読み取り可能な記憶媒体に記憶することができ、該コンピュータプログラムがプロセッサにより実行される場合に、上記それぞれの方法実施例のステップを実現することができる。コンピュータプログラムは、コンピュータプログラムコードを含んでもよく、コンピュータプログラムコードはソースコード形式、オブジェクトコード形式、実行可能なファイル又はある中間形式等であってもよい。コンピュータ読み取り可能な記憶媒体は、コンピュータプログラムコードをキャリア可能な任意のエンティティ又は装置、記録媒体、Uディスク、リムーバブルハードディスク、磁気ディスク、光ディスク、コンピュータメモリ、リードオンリーメモリ(Read-Only Memory,ROM)、ランダムアクセスメモリ(Random Access Memory,RAM)、電気搬送波信号、電気通信信号及びソフトウェア配布媒体等を含んでもよい。なお、コンピュータ読み取り可能な記憶媒体に含まれた内容は司法管轄エリア内立法及び特許実践の要求に応じて適当に増減を行うことができ、例えばある司法管轄エリアにおいて、立法及び特許実践に基づいて、コンピュータ読み取り可能な記憶媒体は電気搬送波信号及び電気通信信号を含まない。
【0066】
上記した実施例は本公開の技術案を説明するためのものに過ぎず、それを限定するものではなく、前述の実施例を参照して本公開を詳細に説明したが、当業者は、依然として前述の各実施例に記載の技術案を補正してもよく、又はそのうちの一部の技術的特徴を同等置換することができるが、これらの補正又は置換が、対応する技術案の実質が本公開の各実施例の技術案の思想及び範囲から逸脱することがなく、いずれも本公開の保護範囲内に含まれるべきであることを理解すべきである。
【国際調査報告】