Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7643546B2 - Learning device, estimation device, their methods, and programs - Google Patents
[go: Go Back, main page]

JP7643546B2 - Learning device, estimation device, their methods, and programs - Google Patents

Learning device, estimation device, their methods, and programs Download PDF

Info

Publication number
JP7643546B2
JP7643546B2 JP2023528807A JP2023528807A JP7643546B2 JP 7643546 B2 JP7643546 B2 JP 7643546B2 JP 2023528807 A JP2023528807 A JP 2023528807A JP 2023528807 A JP2023528807 A JP 2023528807A JP 7643546 B2 JP7643546 B2 JP 7643546B2
Authority
JP
Japan
Prior art keywords
face
model parameter
keypoint
learning
estimation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2023528807A
Other languages
Japanese (ja)
Other versions
JPWO2022264268A1 (en
Inventor
瑛彦 高島
亮 増村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Inc
NTT Inc USA
Original Assignee
Nippon Telegraph and Telephone Corp
NTT Inc USA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp, NTT Inc USA filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2022264268A1 publication Critical patent/JPWO2022264268A1/ja
Application granted granted Critical
Publication of JP7643546B2 publication Critical patent/JP7643546B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Description

本発明は、顔画像から顔キーポイントと顔向きを推定する推定技術と、推定する際に用いるパラメータの学習技術に関する。 The present invention relates to an estimation technology for estimating facial key points and facial pose from a facial image, and a learning technology for parameters used when making the estimation.

顔キーポイントとは人間の顔の、眉、目、鼻、口、輪郭を数点~十数点の特徴点としてプロットしたもので、表情の動きや顔の動きを定量的に捉える特徴であり、顔画像から、顔キーポイントを推定することは人間の状態・内面理解において重要である。一方、顔向きとは、顔の3軸(ロール、ピッチ、ヨー)の回転角度であり、顔画像から顔向きを推定することで、顔の動きや注意方向を分析することができる。顔キーポイント、顔向きは一般にニューラルネットワークを利用して推定が行われる。従来技術では、顔キーポイント、顔向きはそれぞれの学習データのみで学習した独立したニューラルネットワークモデルを用いて、独立して推定を行う(非特許文献1,2)。顔キーポイント、顔向きとも正解ラベルはベクトルデータあり。顔キーポイントは各キーポイントの2次元、もしくは3次元の、画像中における座標値の連続データとして表す。例えば、21点や68点など任意のキーポイント数を用いることができる。顔向きは回転角度のロール、ピッチ、ヨー成分の各回転角度値の連続データである。ニューラルネットワークによる顔キーポイント、顔向きの推定は、例えば画像認識等で広く用いられている畳み込み層、プーリング層を用いて画像の特徴を抽出し、その後の全結合層により、顔キーポイント、顔向きのベクトルデータへの回帰を行うことで、推定することができる。 Facial keypoints are plots of several to a dozen feature points on the human face, including eyebrows, eyes, nose, mouth, and contours. These features quantitatively capture facial expressions and facial movements, and estimating facial keypoints from facial images is important for understanding human states and inner thoughts. On the other hand, facial orientation is the rotation angle of the three axes (roll, pitch, yaw) of the face, and estimating facial orientation from facial images allows for analysis of facial movements and attention direction. Facial keypoints and facial orientation are generally estimated using neural networks. In conventional technology, facial keypoints and facial orientation are estimated independently using independent neural network models trained only with their respective training data (Non-Patent Documents 1 and 2). Correct labels for both facial keypoints and facial orientation are available as vector data. Facial keypoints are expressed as continuous data of the two-dimensional or three-dimensional coordinate values of each keypoint in the image. For example, any number of keypoints, such as 21 or 68 points, can be used. Facial orientation is continuous data of the rotation angle values of the roll, pitch, and yaw components of the rotation angle. Facial keypoints and facial direction can be estimated using a neural network by extracting image features using a convolutional layer and pooling layer, which are widely used in image recognition, and then regressing the facial keypoints and facial direction into vector data using a subsequent fully connected layer.

非特許文献1,2では、ニューラルネットワークを用いて顔キーポイント、顔向きを推定している。In non-patent documents 1 and 2, facial keypoints and facial pose are estimated using neural networks.

Zongping Deng, Ke Li, Qijun Zhao, Yi Zhang, Hu Chen, "Effective face landmark localization via single deep network", CoRR, 2017.Zongping Deng, Ke Li, Qijun Zhao, Yi Zhang, Hu Chen, "Effective face landmark localization via single deep network", CoRR, 2017. Nataniel Ruiz, Eunji Chong, James M. Rehg, "Fine-Grained Head Pose Estimation Without Keypoints", Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR) Workshops, 2018Nataniel Ruiz, Eunji Chong, James M. Rehg, "Fine-Grained Head Pose Estimation Without Keypoints", Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR) Workshops, 2018

従来技術では、顔キーポイントの推定に用いるモデルパラメータ、顔向きの推定に用いるモデルパラメータは、それぞれ独立した学習データを用いて、独立したニューラルネットワークで学習される。一方、顔キーポイント、顔向きはどちらも顔の動きを捉える特徴であり、両者の特徴を考慮してモデルパラメータを学習することができれば、より普遍的な顔の特徴を獲得することができ、高精度な顔キーポイントおよび顔向きの推定が期待できる。しかしながら、従来技術は、顔キーポイントの推定に用いるモデルパラメータ、顔向きの推定に用いるモデルパラメータを独立して学習しているため、局所的な顔の特徴しか捉えられないという問題がある。 In conventional technology, the model parameters used to estimate facial keypoints and the model parameters used to estimate facial direction are trained in independent neural networks using independent training data. However, since both facial keypoints and facial direction are features that capture facial movement, if model parameters can be trained taking into account the features of both, more universal facial features can be acquired, and highly accurate estimation of facial keypoints and facial direction can be expected. However, conventional technology has the problem that only local facial features can be captured because the model parameters used to estimate facial keypoints and the model parameters used to estimate facial direction are trained independently.

本発明は、顔キーポイントと顔向きの推定に用いるモデルパラメータを1つのニューラルネットワークの系で学習することで、より普遍的な顔の特徴を捉えた顔キーポイントおよび顔向きの推定ができる推定装置、推定する際に用いるパラメータの学習装置、それらの方法、およびプログラムを提供することを目的とする。 The present invention aims to provide an estimation device that can estimate facial keypoints and facial orientation that capture more universal facial features by learning model parameters used to estimate facial keypoints and facial orientation using a single neural network system, a learning device for the parameters used in the estimation, and methods and programs for carrying out the above mentioned estimation.

上記の課題を解決するために、本発明の一態様によれば、学習装置は、モデルパラメータ^θkまたは^θpを用いて、ニューラルネットワークの関数により学習用顔画像Sbを中間特徴vbに変換する共有ネットワーク部と、学習用顔画像Sbが顔キーポイント学習用顔画像で構成されている場合、モデルパラメータ^θkを用いて、ニューラルネットワークの関数により中間特徴vbを推定顔キーポイントベクトルZ'k,bに変換する顔キーポイントネットワーク部と、推定顔キーポイントベクトルZ'k,bと学習用顔画像Sbに対する顔キーポイント正解ラベルTk 1,…,Tk |M|とを用いて、モデルパラメータ^θkを更新する顔キーポイントモデルパラメータ最適化部と、学習用顔画像Sbが顔向き学習用顔画像で構成されている場合、モデルパラメータ^θpを用いて、ニューラルネットワークの関数により中間特徴vbを推定顔向きベクトルZ'p,bに変換する顔向きネットワーク部と、推定顔向きベクトルZ'p,bと顔向き正解ラベルTp 1,…,Tp |N|とを用いて、モデルパラメータ^θpを更新する顔向きモデルパラメータ最適化部とを含み、モデルパラメータ^θkに対応する学習済みのモデルパラメータθkと、モデルパラメータ^θpに対応する学習済みのモデルパラメータθpを取得する。 In order to solve the above problem, according to one aspect of the present invention, a learning device includes a shared network unit that converts a training face image Sb into an intermediate feature vb by a neural network function using a model parameter ^ θk or ^ θp , a face keypoint network unit that converts the intermediate feature vb into an estimated face keypoint vector Z'k , b by a neural network function using the model parameter ^ θk when the training face image Sb is composed of face keypoint training face images, a face keypoint model parameter optimization unit that updates the model parameter ^ θk by using the estimated face keypoint vector Z'k ,b and a face keypoint correct label Tk1 , ..., Tk |M| for the training face image Sb, a face orientation network unit that converts the intermediate feature vb into an estimated face orientation vector Z'p ,b by a neural network function using the model parameter ^ θp when the training face image Sb is composed of face orientation training face images, and The face direction model parameter optimization unit updates the face direction model parameter θ k corresponding to the model parameter ^θ k and obtains the learned model parameter θ p corresponding to the model parameter ^θ p .

本発明によれば、より普遍的な顔の特徴を捉えた顔キーポイントおよび顔向きの推定ができるという効果を奏する。 The present invention has the effect of enabling estimation of facial keypoints and facial pose that capture more general facial features.

第一実施形態に係る推定システムの構成例を示す図。FIG. 1 is a diagram showing an example of the configuration of an estimation system according to a first embodiment. 第一実施形態に係る学習装置の機能ブロック図。FIG. 2 is a functional block diagram of the learning device according to the first embodiment. 第一実施形態に係る学習装置の処理フローの例を示す図。FIG. 4 is a diagram showing an example of a processing flow of the learning device according to the first embodiment. 第一実施形態に係る推定装置の機能ブロック図。FIG. 1 is a functional block diagram of an estimation device according to a first embodiment. 第一実施形態に係る推定装置の処理フローの例を示す図。FIG. 4 is a diagram showing an example of a processing flow of the estimation device according to the first embodiment. 本手法を適用するコンピュータの構成例を示す図。FIG. 13 is a diagram showing an example of the configuration of a computer to which the present technique is applied.

以下、本発明の実施形態について、説明する。なお、以下の説明に用いる図面では、同じ機能を持つ構成部や同じ処理を行うステップには同一の符号を記し、重複説明を省略する。以下の説明において、テキスト中で使用する記号「^」等は、本来直前の文字の真上に記載されるべきものであるが、テキスト記法の制限により、当該文字の直後に記載する。式中においてはこれらの記号は本来の位置に記述している。また、ベクトルや行列の各要素単位で行われる処理は、特に断りが無い限り、そのベクトルやその行列の全ての要素に対して適用されるものとする。 Below, an embodiment of the present invention will be described. In the drawings used in the following description, components having the same functions and steps performing the same processing are given the same reference numerals, and duplicated explanations will be omitted. In the following description, symbols such as "^" used in the text should be written directly above the character immediately preceding it, but due to limitations in text notation, they are written immediately after the character in question. In formulas, these symbols are written in their original positions. Furthermore, unless otherwise specified, processing performed on an element-by-element basis of a vector or matrix is assumed to apply to all elements of that vector or matrix.

<第一実施形態のポイント>
本実施形態では、顔キーポイントの推定に用いるモデルパラメータの学習データと、顔向きの推定に用いるモデルパラメータの学習データの両者を1つのニューラルネットワークの系である学習装置にて学習する。顔キーポイントの推定に用いるモデルパラメータの学習用顔画像と、顔向きの推定に用いるモデルパラメータの学習用顔画像は、交互に学習装置内の共有ネットワーク部に入力され、ここで両学習用顔画像から獲得した、より普遍的な顔の特徴が学習される。共有ネットワーク部の後段には、顔キーポイントネットワーク部と顔向きネットワーク部が分岐しており、それぞれの正解ラベルを用いて推定値の誤差最小化を行い、モデルパラメータを更新する。推定時には、それぞれ、顔キーポイント推定部、顔向き推定部を用いる。顔キーポイント推定部は、共有ネットワーク部とそれに続く顔キーポイントネットワーク部のネットワークアーキテクチャと、学習装置で学習したモデルパラメータを用いて、顔キーポイントの推定を行う。同様に、顔向き推定部は、共有ネットワーク部とそれに続く顔向きネットワーク部のネットワークアーキテクチャと学習装置で学習したモデルパラメータを用いて、顔向きの推定を行う。
<Key Points of the First Embodiment>
In this embodiment, both the learning data of the model parameters used to estimate the face keypoints and the learning data of the model parameters used to estimate the face direction are learned by a learning device that is a single neural network system. The face images for learning the model parameters used to estimate the face keypoints and the face images for learning the model parameters used to estimate the face direction are alternately input to a shared network section in the learning device, where more universal face features acquired from both the learning face images are learned. The face keypoint network section and the face direction network section are branched out at the rear of the shared network section, and the error of the estimated value is minimized using the respective correct answer labels, and the model parameters are updated. During estimation, the face keypoint estimation section and the face direction estimation section are used, respectively. The face keypoint estimation section estimates the face keypoints using the network architecture of the shared network section and the subsequent face keypoint network section, and the model parameters learned by the learning device. Similarly, the face direction estimation section estimates the face direction using the network architecture of the shared network section and the subsequent face direction network section, and the model parameters learned by the learning device.

<第一実施形態>
図1は第一実施形態に係る推定システムの構成例を示す。
First Embodiment
FIG. 1 shows an example of the configuration of an estimation system according to the first embodiment.

推定システムは、学習装置100と、推定装置200とを含む。 The estimation system includes a learning device 100 and an estimation device 200.

学習装置100および推定装置200は、例えば、中央演算処理装置(CPU: Central Processing Unit)、主記憶装置(RAM: Random Access Memory)などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。学習装置100および推定装置200は、例えば、中央演算処理装置の制御のもとで各処理を実行する。学習装置100および推定装置200に入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて中央演算処理装置へ読み出されて他の処理に利用される。学習装置100および推定装置200の各処理部は、少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。学習装置100および推定装置200が備える各記憶部は、例えば、RAM(Random Access Memory)などの主記憶装置、またはリレーショナルデータベースやキーバリューストアなどのミドルウェアにより構成することができる。ただし、各記憶部は、必ずしも学習装置100および推定装置200がその内部に備える必要はなく、ハードディスクや光ディスクもしくはフラッシュメモリ(Flash Memory)のような半導体メモリ素子により構成される補助記憶装置により構成し、学習装置100および推定装置200の外部に備える構成としてもよい。The learning device 100 and the estimation device 200 are special devices configured by loading a special program into a publicly known or dedicated computer having, for example, a central processing unit (CPU), a main storage device (RAM), etc. The learning device 100 and the estimation device 200 execute each process under the control of the central processing unit, for example. Data input to the learning device 100 and the estimation device 200 and data obtained in each process are stored in, for example, the main storage device, and the data stored in the main storage device is read out to the central processing unit as necessary and used for other processes. At least a part of each processing unit of the learning device 100 and the estimation device 200 may be configured by hardware such as an integrated circuit. Each storage unit provided in the learning device 100 and the estimation device 200 can be configured by, for example, a main storage device such as a RAM (Random Access Memory), or middleware such as a relational database or a key-value store. However, each storage unit does not necessarily need to be provided inside the learning device 100 and the estimation device 200, but may be configured as an auxiliary storage device made up of a hard disk, an optical disk, or a semiconductor memory element such as a flash memory, and may be configured to be provided outside the learning device 100 and the estimation device 200.

まず、学習装置100について説明する。 First, we will explain the learning device 100.

<学習装置100>
学習装置100は、顔キーポイントの推定に用いるモデルパラメータθk(以下、「顔キーポイントパラメータθk」ともいう)を学習するための学習データK=(Sk 1,Tk 1),…,(Sk |M|,Tk |M|)と、顔向きの推定に用いるモデルパラメータθp(以下、「顔向きパラメータθp」ともいう)を学習するための学習データP=(Sp 1,Tp 1),…,(Sp |N|,Tp |N|)とを入力とし、学習データK,Pを用いてモデルパラメータθkpを学習し、学習済みのモデルパラメータθkpを取得し、出力する。ここで、Mは学習データKのデータサイズ、Nは学習データPのデータサイズである。Sk m(m=1,…,M)は、顔キーポイントパラメータθkを学習するための学習データにおける学習用顔画像である。学習用顔画像は、例えば、顔だけを切り出した画像であり、解像度は224x224ピクセル、RGB3チャンネルを持つ。Tk m(m=1,…,M)は、顔キーポイントパラメータθkを学習するための学習データにおける正解ラベル(以下、「顔キーポイント正解ラベル」ともいう)であり、例えば、顔キーポイントの各点の座標を格納したベクトルデータであり、[[X1,Y1],…,[X68,Y68]]のようなデータ形式をとる。Sp n(n=1,…,N)は顔向きパラメータθpを学習するための学習データにおける学習用顔画像であり、学習データKの学習用顔画像Sk mと同様に、例えば、顔だけを切り出した画像で、解像度は例えば224x224ピクセル、RGB3チャンネルを持つ。Tp n(n=1,…,N)は、顔向きパラメータθpを学習するための学習データにおける正解ラベル(以下、「顔向き正解ラベル」ともいう)であり、顔の向きのロール、ピッチ、ヨーの3方向の回転角度を格納したベクトルであり、[roll, pitch, yaw]のようなデータ形式をとる。
<Learning device 100>
The learning device 100 receives as input learning data K=(S k 1 ,T k 1 ),...,(S k |M| ,T k |M| ) for learning model parameters θ k used to estimate face keypoints (hereinafter also referred to as "face keypoint parameters θ k ") and learning data P=(S p 1 ,T p 1 ),...,(S p |N| , T p |N| ) for learning model parameters θ p used to estimate face direction ( hereinafter also referred to as "face direction parameters θ p " ), learns the model parameters θ k , θ p using the learning data K, P, acquires and outputs the learned model parameters θ k , θ p . Here, M is the data size of the learning data K, and N is the data size of the learning data P. S k m (m=1,...,M) are learning face images in the learning data for learning the face keypoint parameters θ k . The training face image is, for example, an image in which only the face is cut out, has a resolution of 224x224 pixels, and has three RGB channels. T k m (m=1,...,M) is a correct label in the training data for learning the face keypoint parameter θ k (hereinafter, also referred to as a "face keypoint correct label"), and is, for example, vector data storing the coordinates of each point of the face keypoint, and has a data format such as [[X1,Y1],...,[X68,Y68]]. S p n (n=1,...,N) is a training face image in the training data for learning the face direction parameter θ p , and is, for example, an image in which only the face is cut out, similar to the training face image S k m of the training data K, and has a resolution of, for example, 224x224 pixels, and has three RGB channels. T p n (n = 1, ..., N) is a correct label in the training data for learning the face direction parameter θ p (hereinafter also referred to as a "face direction correct label"), a vector that stores the rotation angles in three directions, roll, pitch, and yaw, of the face direction, and has a data format such as [roll, pitch, yaw].

図2は、学習装置100の機能ブロック図を、図3はその処理フローを示す。 Figure 2 shows a functional block diagram of the learning device 100, and Figure 3 shows its processing flow.

学習装置100は、データ選択部110と、共有ネットワーク部120と、顔キーポイントネットワーク部130と、顔キーポイントモデルパラメータ最適化部140と、顔向きネットワーク部150と、顔向きモデルパラメータ最適化部160とを含む。The learning device 100 includes a data selection unit 110, a shared network unit 120, a facial keypoint network unit 130, a facial keypoint model parameter optimization unit 140, a facial orientation network unit 150, and a facial orientation model parameter optimization unit 160.

以下、各部の概要について説明する。 Below, an overview of each part is provided.

データ選択部110は、顔キーポイントパラメータθkの学習用顔画像(以下「顔キーポイント学習用顔画像」ともいう)Sk 1,…,Sk |M|と顔向きパラメータθpの学習用顔画像(以下「顔向き学習用顔画像」ともいう)Sp 1,…,Sp |N|とを入力とし、1回のバッチで使用する学習データを選択する。 The data selection unit 110 receives as input face images S k 1 , ..., S k |M| for training of face keypoint parameter θ k (hereinafter also referred to as "face images for face keypoint training") and face images S p 1 , ..., S p | N| for training of face direction parameter θ p (hereinafter also referred to as "face images for face direction training"), and selects training data to be used in one batch.

共有ネットワーク部120は、1バッチの学習用顔画像を入力とし、中間特徴を出力する任意のニューラルネットワークを用いて、中間特徴を取得する。The shared network unit 120 takes a batch of training face images as input and obtains intermediate features using any neural network that outputs intermediate features.

顔キーポイントネットワーク部130は、中間特徴を入力とし、顔キーポイントの推定値を出力する任意のニューラルネットワークを用いて、顔キーポイントの推定値を取得する。The facial keypoint network unit 130 obtains estimates of facial keypoints using any neural network that takes intermediate features as input and outputs estimates of facial keypoints.

顔キーポイントモデルパラメータ最適化部140は、顔キーポイントの推定値と顔キーポイントの正解ラベルを入力とし、顔キーポイントの推定座標の誤差を計算し、誤差に基づいてモデルパラメータθkを更新する。 The face keypoint model parameter optimization unit 140 receives the estimated values of the face keypoints and the correct labels of the face keypoints as input, calculates the error in the estimated coordinates of the face keypoints, and updates the model parameters θ k based on the error.

顔向きネットワーク部150は、中間特徴を入力とし、顔向きの推定値を出力する任意のニューラルネットワークを用いて、顔向きの推定値を取得する。The face orientation network unit 150 obtains an estimate of face orientation using any neural network that takes intermediate features as input and outputs an estimate of face orientation.

顔向きモデルパラメータ最適化部160は、顔向きの推定値と顔向きの正解ラベルを入力とし、顔向きの推定回転角度の誤差を計算し、誤差に基づいてモデルパラメータθpを更新する。 The face direction model parameter optimization unit 160 receives the estimated face direction value and the correct label of the face direction as input, calculates the error in the estimated rotation angle of the face direction, and updates the model parameter θ p based on the error.

上述の処理は、1バッチ(学習データのうち部分的に選択した一塊のデータ)の学習手順を示したものであり、これを繰り返して、全データの学習を任意の回数、行えるものとする。 The above process shows the learning procedure for one batch (a part of the training data that has been selected), and this can be repeated any number of times to learn all the data.

以下、各部の詳細について説明する。 Details of each part are explained below.

<データ選択部110>
入力:顔キーポイント学習用顔画像Sk 1,…,Sk |M|、顔向き学習用顔画像Sp 1,…,Sp |N|
出力:1バッチの学習用顔画像Sb、データ識別子ib
データ選択部110は、顔キーポイント学習用顔画像Sk 1,…,Sk |M|と顔向き学習用顔画像Sp 1,…,Sp |N|とを入力とし、1回の学習で使うデータ=1バッチの学習用顔画像Sbを選択する(S110)。なお、bはバッチ番号を示すインデックスである。例えば、顔キーポイント学習用顔画像Sk 1,…,Sk |M|、顔向き学習用顔画像Sp 1,…,Sp |N|をそれぞれB個のバッチに分割し、b=1,2,…,2Bとする。このとき、1バッチの学習用顔画像Sbは、例えば、16枚の画像で構成される。この1バッチの学習用顔画像Sbは、顔キーポイント学習用顔画像、顔向き学習用顔画像ごとにそれぞれ作られ、1つのバッチ内の学習用顔画像は、全てが顔キーポイント学習用顔画像、または、全てが顔向き学習用顔画像で構成される。データ選択の手順としては、例えば、学習の1バッチ目は顔キーポイント学習用顔画像で全て構成されたバッチ、学習の2バッチ目は顔向き学習用顔画像で全て構成されたバッチ、以降、これを交互に繰り返す。また、データ識別子ibとは、1バッチの学習用顔画像Sbが顔キーポイント学習用顔画像と顔向き学習用顔画像のどちらのデータで構成されているかを識別するための識別子である。
<Data Selection Unit 110>
Input: Face images S k 1 , …, S k |M| for face keypoint learning, face images S p 1 , …, S p |N| for face pose learning
Output: One batch of training face images S b , data identifier i b
The data selection unit 110 receives face images S k 1 , ..., S k |M| for face keypoint learning and face images S p 1 , ..., S p |N| for face direction learning, and selects data to be used in one learning, that is, one batch of face images S b (S110). Note that b is an index indicating a batch number. For example, the face images S k 1 , ..., S k |M| for face keypoint learning and the face images S p 1 , ..., S p |N| for face direction learning are each divided into B batches, and b=1, 2, ..., 2B. In this case, one batch of face images S b is composed of, for example, 16 images. This one batch of face images S b is created for each face image for face keypoint learning and each face image for face direction learning, and the face images for learning in one batch are all composed of face images for face keypoint learning or all of the face images for face direction learning. As a data selection procedure, for example, the first batch of learning is a batch composed entirely of face images for face keypoint learning, the second batch of learning is a batch composed entirely of face images for face pose learning, and so on. The data identifier i b is an identifier for identifying whether one batch of learning face images S b is composed of data of face images for face keypoint learning or data of face images for face pose learning.

<共有ネットワーク部120>
入力:1バッチの学習用顔画像Sb、データ識別子ib、更新したモデルパラメータ^θkまたは^θpのうち共有ネットワーク部120を構成するニューラルネットワークに対応するパラメータ
出力:1バッチの中間特徴vb、データ識別子ib
共有ネットワーク部120は、任意のニューラルネットワークで構成されており、例えば、4層の畳み込み層などで構成される。
<Shared Network Unit 120>
Input: one batch of face images for learning S b , data identifier i b , updated model parameters ^θ k or ^θ p corresponding to the neural network constituting the shared network unit 120 Output: one batch of intermediate features v b , data identifier i b
The shared network unit 120 is configured with any neural network, for example, with four convolutional layers.

共有ネットワーク部120は、変換処理に先立ち、更新したモデルパラメータ^θk(顔キーポイントモデルパラメータ最適化部140の出力値)または^θp(顔向きモデルパラメータ最適化部160の出力値)のうち共有ネットワーク部120を構成する任意のニューラルネットワークに対応するパラメータを受け取る。 Prior to the conversion process, the shared network unit 120 receives updated model parameters ^θ k (output value of the facial keypoint model parameter optimization unit 140) or ^θ p (output value of the facial direction model parameter optimization unit 160) corresponding to any neural network that constitutes the shared network unit 120.

共有ネットワーク部120は、更新したモデルパラメータ^θkまたは^θpのうち共有ネットワーク部120を構成する任意のニューラルネットワークに対応するパラメータを用いて、任意のニューラルネットワークの関数により1バッチの学習用顔画像Sbを中間特徴vbに変換する(S120)。例えば、b番目のバッチの学習用顔画像SbがQ枚の画像で構成される場合、q番目の画像に対応する中間特徴をvb qとし、vb=[vb 1,vb 2,…,vb Q]とする。ただし、q=1,2,…,Qである。 The shared network unit 120 converts one batch of training face images S b into intermediate features v b by a function of an arbitrary neural network using the updated model parameters ^θ k or ^ θ p corresponding to an arbitrary neural network constituting the shared network unit 120 (S120). For example, when the training face images S b of the b -th batch are composed of Q images, the intermediate feature corresponding to the q-th image is defined as v b q , and v b = [v b 1 , v b 2 , ..., v b Q ], where q = 1, 2, ..., Q.

また、共有ネットワーク部120は、データ識別子ibをそのまま出力する。 Moreover, the shared network unit 120 outputs the data identifier i_b as is.

<顔キーポイントネットワーク部130>
入力:1バッチの中間特徴vb、データ識別子ib、更新したモデルパラメータ^θkのうち顔キーポイントネットワーク部130を構成するニューラルネットワークに対応するパラメータ
出力:推定顔キーポイントベクトルZ'k,b
顔キーポイントネットワーク部130は、任意のニューラルネットワークで構成されており、例えば2層の全結合層などで構成される。
<Face Keypoint Network Unit 130>
Input: one batch of intermediate features v b , data identifier i b , and updated model parameters ^θ k corresponding to the neural network constituting the face keypoint network unit 130. Output: estimated face keypoint vector Z' k,b
The face keypoint network unit 130 is configured with any neural network, for example, with two fully connected layers.

顔キーポイントネットワーク部130は、変換処理に先立ち、更新したモデルパラメータ^θk(顔キーポイントモデルパラメータ最適化部140の出力値)のうち顔キーポイントネットワーク部130を構成する任意のニューラルネットワークに対応するパラメータを受け取る。 Prior to the conversion process, the facial keypoint network unit 130 receives parameters corresponding to any neural network constituting the facial keypoint network unit 130 from among the updated model parameters ^θ k (output values of the facial keypoint model parameter optimization unit 140).

顔キーポイントネットワーク部130は、学習用顔画像Sbが顔キーポイント学習用顔画像で構成されていることをデータ識別子ibが示す場合(S129のYES)、受け取ったパラメータを用いて、任意のニューラルネットワークの関数により1バッチの中間特徴vbを推定顔キーポイントベクトルZ'k,bに変換する(S130)。推定顔キーポイントベクトルとは、顔キーポイントの各点の推定値の座標を配列で格納したベクトルデータである。別の言い方をすると、推定顔キーポイントベクトルとは、顔キーポイントベクトルの推定値である。顔キーポイントベクトルとは、顔キーポイントの各点の座標を格納したベクトルデータであり、例えば68点の2次元キーポイントを推定するモデルの場合、X1をキーポイント1点目のX座標値、Y1をキーポイント1点目のY座標値とすると、顔キーポイントベクトルは[[X1,Y1],…,[X68,Y68]]のようなベクトルになる。また、3次元のキーポイントを推定するモデルの場合は、Z1をキーポイント1点目のZ座標値とすると、[[X1,Y1,Z1],…,[X68,Y68,Z68]]のようなベクトルになる。例えば、b番目のバッチのq番目の中間特徴vb qに対応する推定顔キーポイントベクトルをZ'k,b,qとし、Z'k,b=[Z'k,b,1,Z'k,b,2,…,Z'k,b,Q]とする。推定顔キーポイントベクトルZ'k,b,qが、[[X1,Y1],…,[X68,Y68]]や[[X1,Y1,Z1],…,[X68,Y68,Z68]]のようなベクトルとなる。 When the data identifier i b indicates that the learning face image S b is composed of a face image for learning face keypoints (YES in S129), the face keypoint network unit 130 converts one batch of intermediate features v b into an estimated face keypoint vector Z' k,b by using the received parameters and an arbitrary neural network function (S130). The estimated face keypoint vector is vector data that stores the coordinates of the estimated values of each point of the face keypoint in an array. In other words, the estimated face keypoint vector is an estimated value of the face keypoint vector. The face keypoint vector is vector data that stores the coordinates of each point of the face keypoint. For example, in the case of a model that estimates 68 two-dimensional keypoints, if X1 is the X coordinate value of the first keypoint and Y1 is the Y coordinate value of the first keypoint, the face keypoint vector will be a vector such as [[X1,Y1],...,[X68,Y68]]. In addition, in the case of a model that estimates three-dimensional keypoints, if Z1 is the Z coordinate value of the first keypoint, the vector will be something like [[X1,Y1,Z1],…,[X68,Y68,Z68]]. For example, let Z' k,b,q be the estimated face keypoint vector corresponding to the q-th intermediate feature v b q of the b-th batch, and let Z' k,b =[Z' k,b,1 ,Z' k,b,2 ,…,Z' k,b,Q ]. The estimated face keypoint vector Z' k,b,q will be a vector like [[X1,Y1],…,[X68,Y68]] or [[X1,Y1,Z1],…,[X68,Y68,Z68]].

なお、学習用顔画像Sbが顔向き学習用顔画像で構成されていることをデータ識別子ibが示す場合、顔キーポイントネットワーク部130および顔キーポイントモデルパラメータ最適化部140は、処理を行わない。 When the data identifier i b indicates that the training face image S b is composed of face images for face pose training, the facial keypoint network unit 130 and the facial keypoint model parameter optimization unit 140 do not perform any processing.

<顔キーポイントモデルパラメータ最適化部140>
入力:推定顔キーポイントベクトルZ'k,b、顔キーポイント正解ラベルTk 1,…,Tk |M|
出力:更新したモデルパラメータ^θkまたは学習済みモデルパラメータθk
モデルパラメータ^θkおよびθkは、共有ネットワーク部120を構成するニューラルネットワークに対応するパラメータと顔キーポイントネットワーク部130を構成するニューラルネットワークに対応するパラメータとを連結したものである。
<Facial Keypoint Model Parameter Optimization Unit 140>
Input: Estimated face keypoint vector Z' k,b , ground truth labels of face keypoints T k 1 ,…,T k |M|
Output: Updated model parameters ^θ k or trained model parameters θ k
The model parameters ^θ k and θ k are a concatenation of parameters corresponding to the neural network constituting the shared network unit 120 and parameters corresponding to the neural network constituting the face keypoint network unit 130 .

顔キーポイントモデルパラメータ最適化部140は、推定顔キーポイントベクトルZ'k,bと顔キーポイント正解ラベルTk 1,…,Tk |M|とを用いて、モデルパラメータ^θkを更新し(S140)、最適化を行う。例えば、顔キーポイントモデルパラメータ最適化部140は、推定顔キーポイントベクトルZ'k,bと顔キーポイント正解ラベルTk 1,…,Tk |M|との間の誤差を計算し、誤差を最小化するようにモデルパラメータ^θkを更新し、最適化を行う。誤差は例えばMSE誤差やMAE誤差などを用いることができ、パラメータの更新方法としては勾配降下法等を用いることができる。 The face keypoint model parameter optimization unit 140 updates the model parameters ^ θk using the estimated face keypoint vector Z'k ,b and the face keypoint correct labels Tk1 , ..., Tk |M| (S140) to perform optimization. For example, the face keypoint model parameter optimization unit 140 calculates the error between the estimated face keypoint vector Z'k ,b and the face keypoint correct labels Tk1 , ..., Tk |M| , updates the model parameters ^ θk so as to minimize the error, and performs optimization. For example, the error may be an MSE error or an MAE error, and the parameter update method may be a gradient descent method or the like.

上述の処理S120~S140を所定の条件を満たすまで繰り返す(S170)。所定の条件とは、パラメータの更新が収束したか否かを判断するための条件であり、例えば、所定の条件を(i)更新回数が所定の回数を超えたこと、(ii)更新前後のパラメータの差分が所定の値よりも小さいことなどとしてもよい。The above-mentioned processes S120 to S140 are repeated until a predetermined condition is met (S170). The predetermined condition is a condition for determining whether the parameter update has converged or not, and may be, for example, (i) the number of updates has exceeded a predetermined number, or (ii) the difference between the parameters before and after the update is smaller than a predetermined value.

<顔向きネットワーク部150>
入力:1バッチの中間特徴vb、データ識別子ib、更新したモデルパラメータ^θpのうち顔向きネットワーク部150を構成するニューラルネットワークに対応するパラメータ
出力:推定顔向きベクトルZ'p,b
顔向きネットワーク部150は、任意のニューラルネットワークで構成されており、例えば2層の全結合層などで構成される。
<Face Direction Network Unit 150>
Input: one batch of intermediate features v b , data identifier i b , and updated model parameters ^θ p corresponding to the neural network constituting the face direction network unit 150. Output: estimated face direction vector Z′ p,b
The face direction network unit 150 is configured with any neural network, for example, with two fully connected layers.

顔向きネットワーク部150は、変換処理に先立ち、更新したモデルパラメータ^θp(顔向きモデルパラメータ最適化部160の出力値)のうち顔向きネットワーク部150を構成する任意のニューラルネットワークに対応するパラメータを受け取る。 Prior to the conversion process, the face direction network unit 150 receives parameters corresponding to any of the neural networks constituting the face direction network unit 150 from among the updated model parameters ^θ p (output values of the face direction model parameter optimization unit 160).

顔向きネットワーク部150は、学習用顔画像Sbが顔向き学習用顔画像で構成されていることをデータ識別子ibが示す場合(S129のNO)、受け取ったパラメータを用いて、任意のニューラルネットワークの関数により1バッチの中間特徴vbを推定顔向きベクトルZ'p,bに変換する(S150)。推定顔向きベクトルとは、顔の向きのロール、ピッチ、ヨーの3方向の回転角度の推定値を格納したベクトルデータである。別の言い方をすると、推定顔向きベクトルとは、顔向きベクトルの推定値である。顔向きベクトルとは、顔の向きのロール、ピッチ、ヨーの3方向の回転角度を格納したベクトルである。回転角度の値は例えば、-180度~180度の範囲を持ち、顔向きベクトルは[20、43、-151]などのベクトルとなる。例えば、b番目のバッチのq番目の中間特徴vb qに対応する推定顔向きベクトルをZ'p,b,qとし、Z'p,b=[Z'p,b,1,Z'p,b,2,…,Z'p,b,Q]とする。推定顔向きベクトルZ'p,b,qが、[20、43、-151]のようなベクトルとなる。 When the data identifier i b indicates that the learning face image S b is composed of a face orientation learning face image (NO in S129), the face orientation network unit 150 converts one batch of intermediate features v b into an estimated face orientation vector Z' p,b by using the received parameters and an arbitrary neural network function (S150). The estimated face orientation vector is vector data that stores estimated values of the rotation angles in three directions, roll, pitch, and yaw, of the face orientation. In other words, the estimated face orientation vector is an estimated value of the face orientation vector. The face orientation vector is a vector that stores the rotation angles in three directions, roll, pitch, and yaw, of the face orientation. For example, the rotation angle value has a range of -180 degrees to 180 degrees, and the face orientation vector is a vector such as [20, 43, -151]. For example, let Z' p,b,q be the estimated face direction vector corresponding to the q-th intermediate feature v b q of the b-th batch, and let Z' p,b = [Z' p,b,1 , Z' p,b,2 , … , Z' p,b,Q ]. The estimated face direction vector Z' p,b,q is a vector such as [20, 43, -151].

なお、学習用顔画像Sbが顔キーポイント学習用顔画像で構成されていることをデータ識別子ibが示す場合、顔向きネットワーク部150および顔向きモデルパラメータ最適化部160は、処理を行わない。 When the data identifier i b indicates that the training face image S b is composed of face keypoint training face images, the face pose network unit 150 and the face pose model parameter optimization unit 160 do not perform any processing.

<顔向きモデルパラメータ最適化部160>
入力:推定顔向きベクトルZ'p,b、顔向き正解ラベルTp 1,…,Tp |N|
出力:更新したモデルパラメータ^θpまたは学習済みモデルパラメータθp
モデルパラメータ^θpおよびθpは、共有ネットワーク部120を構成するニューラルネットワークに対応するパラメータと顔向きネットワーク部150を構成するニューラルネットワークに対応するパラメータとを連結したものである。
<Facial pose model parameter optimization unit 160>
Input: Estimated face direction vector Z' p,b , face direction ground truth labels T p 1 ,…,T p |N|
Output: Updated model parameters ^θ p or trained model parameters θ p
The model parameters ^θ p and θ p are a combination of parameters corresponding to the neural network constituting the shared network unit 120 and parameters corresponding to the neural network constituting the face direction network unit 150 .

顔向きモデルパラメータ最適化部160は、推定顔向きベクトルZ'p,bと顔向き正解ラベルTp 1,…,Tp |N|とを用いて、モデルパラメータ^θpを更新し(S160)、最適化を行う。例えば、顔向きモデルパラメータ最適化部160は、推定顔向きベクトルZ'p,bと顔向き正解ラベルTp 1,…,Tp |N|との間の誤差を計算し、誤差を最小化するようにモデルパラメータ^θpを更新し、最適化を行う。誤差は例えばMSE誤差やMAE誤差などを用いることができ、パラメータの更新方法としては勾配降下法等を用いることができる。 The face direction model parameter optimization unit 160 updates the model parameters ^ θp using the estimated face direction vector Z'p ,b and the face direction correct labels Tp1 , ..., Tp |N| (S160) and performs optimization. For example, the face direction model parameter optimization unit 160 calculates the error between the estimated face direction vector Z'p ,b and the face direction correct labels Tp1 , ..., Tp |N| , updates the model parameters ^ θp so as to minimize the error, and performs optimization. For example, the error can be an MSE error or an MAE error, and the parameter update method can be a gradient descent method or the like.

上述の処理S120~S160を所定の条件を満たすまで繰り返す(S170)。The above-mentioned processes S120 to S160 are repeated until the specified conditions are met (S170).

さらに、上述の処理S110~S170を全てのバッチデータ(学習データ)に対して行う。例えば、未処理のバッチデータがあるか否かを判定し(S180)、未処理のバッチデータがある場合には上述の処理S110~S170を行い(S180のNO)、未処理のバッチデータがない場合(S180のYES)には処理を終了する。 Furthermore, the above-mentioned processes S110 to S170 are performed on all batch data (learning data). For example, it is determined whether there is unprocessed batch data (S180), and if there is unprocessed batch data, the above-mentioned processes S110 to S170 are performed (NO in S180), and if there is no unprocessed batch data (YES in S180), the process ends.

全てのバッチデータに対して上述の処理を行った後、最終的に得られた、更新したモデルパラメータ^θk、^θpを学習済みモデルパラメータθk、θpとして出力する。 After performing the above-mentioned processing on all the batch data, the finally obtained updated model parameters ^θ k , ^θ p are output as trained model parameters θ k , θ p .

次に、推定装置200について説明する。 Next, we will explain the estimation device 200.

<推定装置200>
推定装置200は、推定処理に先立ち、学習済みのモデルパラメータθkpを受け取る。推定装置200は、推定対象の顔画像Sを入力とし、学習済みのモデルパラメータθkを用いて顔キーポイントを推定し、学習済みのモデルパラメータθpを用いて顔向きを推定し、推定顔キーポイントベクトルZk、推定顔向きベクトルZpを出力する。
<Estimation device 200>
Prior to the estimation process, the estimation device 200 receives trained model parameters θk and θp . The estimation device 200 receives a face image S to be estimated as an input, estimates face keypoints using the trained model parameter θk , estimates a face direction using the trained model parameter θp , and outputs an estimated face keypoint vector Zk and an estimated face direction vector Zp .

図4は、推定装置200の機能ブロック図を、図5はその処理フローを示す。 Figure 4 shows a functional block diagram of the estimation device 200, and Figure 5 shows its processing flow.

推定装置200は、顔キーポイント推定部210と、顔向き推定部220とを含む。The estimation device 200 includes a face key point estimation unit 210 and a face direction estimation unit 220.

以下、各部の詳細について説明する。 Details of each part are explained below.

<顔キーポイント推定部210>
入力: 顔画像S、モデルパラメータθk
出力: 顔画像Sに対する推定顔キーポイントベクトルZk
顔キーポイント推定部210は、推定処理に先立ち、モデルパラメータθkを受け取る。
<Facial Keypoint Estimation Unit 210>
Input: Face image S, model parameters θ k
Output: Estimated face keypoint vector Z k for face image S
Prior to the estimation process, the facial keypoint estimation unit 210 receives the model parameters θ k .

顔キーポイント推定部210は、共有ネットワーク部120とそれに続く顔キーポイントネットワーク部130のネットワークアーキテクチャと、モデルパラメータθkとを用いて、顔画像Sから顔キーポイントを推定し(S210)、推定値(推定顔キーポイントベクトルZk)を求める。例えば、共有ネットワーク部120が4層の畳み込み層からなる任意のニューラルネットワークで構成され、顔キーポイントネットワーク部130が2層の全結合層からなる任意のニューラルネットワークで構成される場合、顔キーポイント推定部210は、共有ネットワーク部120と顔キーポイントネットワーク部130とに対応する4層の畳み込み層と2層の全結合層とからなるニューラルネットワークで構成され、このニューラルネットワークでモデルパラメータθkを用いる。 The facial keypoint estimation unit 210 estimates facial keypoints from the facial image S (S210) using the network architecture of the shared network unit 120 and the subsequent facial keypoint network unit 130, and the model parameter θ k , to obtain an estimate (estimated facial keypoint vector Z k ). For example, if the shared network unit 120 is composed of an arbitrary neural network consisting of four convolutional layers, and the facial keypoint network unit 130 is composed of an arbitrary neural network consisting of two fully connected layers, the facial keypoint estimation unit 210 is composed of a neural network consisting of four convolutional layers and two fully connected layers corresponding to the shared network unit 120 and the facial keypoint network unit 130, and uses the model parameter θ k in this neural network.

<顔向き推定部220>
入力: 顔画像S、モデルパラメータθp
出力: 顔画像Sに対する推定顔向きベクトルZp
顔向き推定部220は、推定処理に先立ち、モデルパラメータθpを受け取る。
<Facial Direction Estimation Unit 220>
Input: Face image S, model parameters θ p
Output: Estimated face direction vector Z p for face image S
Prior to the estimation process, the face direction estimation unit 220 receives the model parameter θ p .

顔向き推定部220は、共有ネットワーク部120とそれに続く顔向きネットワーク部150のネットワークアーキテクチャと、モデルパラメータθpとを用いて、顔画像Sから顔向きを推定し(S220)、推定値(推定顔向きベクトルZp)を求める。例えば、共有ネットワーク部120が4層の畳み込み層からなる任意のニューラルネットワークで構成され、顔向きネットワーク部150が2層の全結合層からなる任意のニューラルネットワークで構成される場合、顔向き推定部220は、共有ネットワーク部120と顔向きネットワーク部150とに対応する4層の畳み込み層と2層の全結合層とからなるニューラルネットワークで構成され、このニューラルネットワークでモデルパラメータθpを用いる。 The face direction estimation unit 220 estimates a face direction from the face image S using the network architecture of the shared network unit 120 and the subsequent face direction network unit 150 and the model parameter θ p (S220), and obtains an estimated value (estimated face direction vector Z p ). For example, if the shared network unit 120 is configured with an arbitrary neural network consisting of four convolution layers, and the face direction network unit 150 is configured with an arbitrary neural network consisting of two fully connected layers, the face direction estimation unit 220 is configured with a neural network consisting of four convolution layers and two fully connected layers corresponding to the shared network unit 120 and the face direction network unit 150, and uses the model parameter θ p in this neural network.

<効果>
以上の構成により、より普遍的な顔の特徴を捉えた顔キーポイントおよび顔向きの推定ができる。
<Effects>
With the above configuration, it is possible to estimate face keypoints and face poses that capture more general facial features.

<変形例>
本実施形態では、推定装置200は、顔キーポイントと顔向きとを推定しているが、何れか一方のみを推定する構成としてもよい。その場合であっても、学習時には、顔キーポイントと顔向きの推定に用いるモデルパラメータを1つのニューラルネットワークの系で学習しているため、より普遍的な顔の特徴を捉えた顔キーポイントまたは顔向きを推定することができる。
<Modification>
In this embodiment, the estimation device 200 estimates face key points and face direction, but may estimate only one of them. Even in this case, since model parameters used for estimating face key points and face direction are learned in a single neural network system during learning, it is possible to estimate face key points or face direction that capture more general facial features.

また、本実施形態では、顔キーポイント学習用顔画像で全て構成されたバッチと、顔向き学習用顔画像で全て構成されたバッチとを交互に学習データとして用いて学習を行っているが、必ずしも1バッチずつ交互に用いる必要はなく、例えば、10バッチずつ交互に用いてもよい。ただし、何れかの学習データへの偏りが生じないようにするために1バッチずつ交互に用いることが望ましい。 In addition, in this embodiment, learning is performed by alternating between batches composed entirely of face images for face keypoint learning and batches composed entirely of face images for face orientation learning as learning data, but it is not necessary to alternate between batches one at a time; for example, ten batches may be used alternately. However, it is preferable to alternate between batches one at a time to avoid bias towards any of the learning data.

<その他の変形例>
本発明は上記の実施形態及び変形例に限定されるものではない。例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
<Other Modifications>
The present invention is not limited to the above-mentioned embodiment and modified examples. For example, the above-mentioned various processes may be executed not only in chronological order as described, but also in parallel or individually depending on the processing capacity of the device executing the processes or as necessary. In addition, appropriate modifications are possible within the scope of the present invention.

<プログラム及び記録媒体>
上述の各種の処理は、図6に示すコンピュータの記憶部2020に、上記方法の各ステップを実行させるプログラムを読み込ませ、制御部2010、入力部2030、出力部2040などに動作させることで実施できる。
<Program and recording medium>
The various processes described above can be implemented by loading a program that executes each step of the above method into the memory unit 2020 of the computer shown in Figure 6, and operating the control unit 2010, input unit 2030, output unit 2040, etc.

この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。The program describing the processing can be recorded on a computer-readable recording medium. Examples of computer-readable recording media include magnetic recording devices, optical disks, magneto-optical recording media, and semiconductor memories.

また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。 The program may be distributed, for example, by selling, transferring, lending, etc. portable recording media such as DVDs and CD-ROMs on which the program is recorded. Furthermore, the program may be distributed by storing the program in a storage device of a server computer and transferring the program from the server computer to other computers via a network.

このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。A computer that executes such a program, for example, first stores the program recorded on a portable recording medium or the program transferred from a server computer in its own storage device. Then, when executing a process, the computer reads the program stored on its own recording medium and executes the process according to the read program. As another execution form of this program, the computer may read the program directly from the portable recording medium and execute the process according to the program, or may execute the process according to the received program each time a program is transferred from the server computer to this computer. In addition, the server computer may not transfer the program to this computer, but may execute the above-mentioned process by a so-called ASP (Application Service Provider) type service that realizes the processing function only by issuing an execution instruction and obtaining the results. Note that the program in this embodiment includes information used for processing by an electronic computer that is equivalent to a program (such as data that is not a direct command to the computer but has a nature that specifies the processing of the computer).

また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。 In addition, in this embodiment, the device is configured by executing a specific program on a computer, but at least a portion of the processing content may be realized by hardware.

Claims (8)

モデルパラメータ^θkまたは^θpを用いて、ニューラルネットワークの関数により学習用顔画像Sbを中間特徴vbに変換する共有ネットワーク部と、
前記学習用顔画像Sbが顔キーポイント学習用顔画像で構成されている場合、前記モデルパラメータ^θkを用いて、ニューラルネットワークの関数により前記中間特徴vbを推定顔キーポイントベクトルZ'k,bに変換する顔キーポイントネットワーク部と、
前記推定顔キーポイントベクトルZ'k,bと前記学習用顔画像Sbに対する顔キーポイント正解ラベルTk 1,…,Tk |M|とを用いて、前記モデルパラメータ^θkを更新する顔キーポイントモデルパラメータ最適化部と、
前記学習用顔画像Sbが顔向き学習用顔画像で構成されている場合、前記モデルパラメータ^θpを用いて、ニューラルネットワークの関数により中間特徴vbを推定顔向きベクトルZ'p,bに変換する顔向きネットワーク部と、
前記推定顔向きベクトルZ'p,bと顔向き正解ラベルTp 1,…,Tp |N|とを用いて、前記モデルパラメータ^θpを更新する顔向きモデルパラメータ最適化部とを含み、
前記モデルパラメータ^θkに対応する学習済みのモデルパラメータθkと、前記モデルパラメータ^θpに対応する学習済みのモデルパラメータθpを取得する、
学習装置。
A shared network unit that converts the learning face image S b into an intermediate feature v b by a neural network function using the model parameter ^θ k or ^θ p ;
a face keypoint network unit that converts the intermediate feature v b into an estimated face keypoint vector Z' k, b using the model parameter ^θ k and a neural network function when the training face image S b is composed of face keypoint training face images;
a face keypoint model parameter optimization unit that updates the model parameter ^θ k using the estimated face keypoint vector Z' k,b and face keypoint correct labels T k 1 , ..., T k |M| for the learning face image S b ;
a face direction network unit that converts an intermediate feature v b into an estimated face direction vector Z' p, b by a neural network function using the model parameter ^θ p when the learning face image S b is composed of face direction learning face images;
a face direction model parameter optimization unit that updates the model parameter ^θ p by using the estimated face direction vector Z′ p,b and face direction correct labels T p 1 , . . . , T p |N|;
Acquire a trained model parameter θ k corresponding to the model parameter ^θ k and a trained model parameter θ p corresponding to the model parameter ^θ p .
Learning device.
請求項1の学習装置で学習したモデルパラメータθkを用いる推定装置であって、
前記共有ネットワーク部とそれに続く前記顔キーポイントネットワーク部のネットワークアーキテクチャと、前記モデルパラメータθkとを用いて、推定対象の顔画像Sから顔キーポイントを推定する顔キーポイント推定部を含む、
推定装置。
An estimation device using the model parameter θ k learned by the learning device of claim 1,
a face keypoint estimation unit that estimates face keypoints from an estimation target face image S using a network architecture of the shared network unit and the subsequent face keypoint network unit and the model parameter θ k ;
Estimation device.
請求項1の学習装置で学習したモデルパラメータθpを用いる推定装置であって、
前記共有ネットワーク部とそれに続く前記顔向きネットワーク部のネットワークアーキテクチャと、前記モデルパラメータθpとを用いて、前記顔画像Sから顔向きを推定する顔向き推定部を含む、
推定装置。
An estimation device using a model parameter θ p learned by the learning device of claim 1,
a face direction estimation unit that estimates a face direction from the face image S by using a network architecture of the shared network unit and the subsequent face direction network unit and the model parameter θ p ;
Estimation device.
請求項1の学習装置で学習したモデルパラメータθkとモデルパラメータθpとを用いる推定装置であって、
前記共有ネットワーク部とそれに続く前記顔キーポイントネットワーク部のネットワークアーキテクチャと、前記モデルパラメータθkとを用いて、推定対象の顔画像Sから顔キーポイントを推定する顔キーポイント推定部と、
前記共有ネットワーク部とそれに続く前記顔向きネットワーク部のネットワークアーキテクチャと、前記モデルパラメータθpとを用いて、前記顔画像Sから顔向きを推定する顔向き推定部とを含む、
推定装置。
An estimation device that uses the model parameters θ k and θ p learned by the learning device of claim 1,
a face keypoint estimation unit that estimates face keypoints from an estimation target face image S using the network architecture of the shared network unit and the subsequent face keypoint network unit and the model parameter θ k ;
a face direction estimation unit that estimates a face direction from the face image S by using a network architecture of the shared network unit and the subsequent face direction network unit, and the model parameter θ p ;
Estimation device.
モデルパラメータ^θkまたは^θpを用いて、ニューラルネットワークの関数により学習用顔画像Sbを中間特徴vbに変換する共有ネットワークステップと、
前記学習用顔画像Sbが顔キーポイント学習用顔画像で構成されている場合、前記モデルパラメータ^θkを用いて、ニューラルネットワークの関数により前記中間特徴vbを推定顔キーポイントベクトルZ'k,bに変換する顔キーポイントネットワークステップと、
前記推定顔キーポイントベクトルZ'k,bと前記学習用顔画像Sbに対する顔キーポイント正解ラベルTk 1,…,Tk |M|とを用いて、前記モデルパラメータ^θkを更新する顔キーポイントモデルパラメータ最適化ステップと、
前記学習用顔画像Sbが顔向き学習用顔画像で構成されている場合、前記モデルパラメータ^θpを用いて、ニューラルネットワークの関数により中間特徴vbを推定顔向きベクトルZ'p,bに変換する顔向きネットワークステップと、
前記推定顔向きベクトルZ'p,bと顔向き正解ラベルTp 1,…,Tp |N|とを用いて、前記モデルパラメータ^θpを更新する顔向きモデルパラメータ最適化ステップとを含み、
前記モデルパラメータ^θkに対応する学習済みのモデルパラメータθkと、前記モデルパラメータ^θpに対応する学習済みのモデルパラメータθpを取得する、
学習方法。
A shared network step of converting the training face image S b into intermediate features v b by a neural network function using the model parameter ^θ k or ^θ p ;
a face keypoint network step of converting the intermediate feature v b into an estimated face keypoint vector Z' k,b by a neural network function using the model parameter ^θ k when the training face image S b is composed of face keypoint training face images;
a face keypoint model parameter optimization step of updating the model parameter ^θ k using the estimated face keypoint vector Z' k,b and face keypoint ground truth labels T k 1 , ..., T k |M| for the learning face image S b ;
a face direction network step of converting the intermediate feature v b into an estimated face direction vector Z' p, b by a neural network function using the model parameter ^θ p when the learning face image S b is composed of face direction learning face images;
a face direction model parameter optimization step of updating the model parameter ^θ p using the estimated face direction vector Z′ p,b and face direction ground truth labels T p 1 , . . . , T p |N|;
Acquire a trained model parameter θ k corresponding to the model parameter ^θ k and a trained model parameter θ p corresponding to the model parameter ^θ p .
How to learn.
請求項5の学習方法で学習したモデルパラメータθkを用いる推定方法であって、
前記共有ネットワークステップとそれに続く前記顔キーポイントネットワークステップのネットワークアーキテクチャと、前記モデルパラメータθkとを用いて、推定対象の顔画像Sから顔キーポイントを推定する顔キーポイント推定ステップを含む、
推定方法。
An estimation method using a model parameter θ k learned by the learning method of claim 5,
a face keypoint estimation step of estimating face keypoints from an estimation target face image S using a network architecture of the shared network step and the subsequent face keypoint network step and the model parameter θ k ;
Estimation method.
請求項5の学習方法で学習したモデルパラメータθpを用いる推定方法であって、
前記共有ネットワークステップとそれに続く前記顔向きネットワークステップのネットワークアーキテクチャと、前記モデルパラメータθpとを用いて、前記顔画像Sから顔向きを推定する顔向き推定ステップを含む、
推定方法。
An estimation method using a model parameter θ p learned by the learning method of claim 5,
a face direction estimation step of estimating a face direction from the face image S by using a network architecture of the shared network step and the subsequent face direction network step and the model parameter θ p ;
Estimation method.
請求項1の学習装置、または、請求項2から請求項4の何れかの推定装置として、コンピュータを機能させるためのプログラム。 A program for causing a computer to function as the learning device of claim 1 or as any one of the estimation devices of claims 2 to 4.
JP2023528807A 2021-06-15 2021-06-15 Learning device, estimation device, their methods, and programs Active JP7643546B2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/022703 WO2022264268A1 (en) 2021-06-15 2021-06-15 Learning device, estimation device, method for these, and program

Publications (2)

Publication Number Publication Date
JPWO2022264268A1 JPWO2022264268A1 (en) 2022-12-22
JP7643546B2 true JP7643546B2 (en) 2025-03-11

Family

ID=84526327

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2023528807A Active JP7643546B2 (en) 2021-06-15 2021-06-15 Learning device, estimation device, their methods, and programs

Country Status (2)

Country Link
JP (1) JP7643546B2 (en)
WO (1) WO2022264268A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020518051A (en) 2017-08-17 2020-06-18 平安科技(深▲せん▼)有限公司Ping An Technology (Shenzhen) Co.,Ltd. Face posture detection method, device and storage medium

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020518051A (en) 2017-08-17 2020-06-18 平安科技(深▲せん▼)有限公司Ping An Technology (Shenzhen) Co.,Ltd. Face posture detection method, device and storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Zhanpeng Zhang, Ping Luo, Chen Change Loy, and Xiaoou Tang,Facial Landmark Detection by Deep Multi-task Learning,European Conference on Computer Vision, Springer International Publishing, 2014,2014年09月14日,pp.94-108

Also Published As

Publication number Publication date
JPWO2022264268A1 (en) 2022-12-22
WO2022264268A1 (en) 2022-12-22

Similar Documents

Publication Publication Date Title
US11941719B2 (en) Learning robotic tasks using one or more neural networks
US20230419113A1 (en) Attention-based deep reinforcement learning for autonomous agents
US20230074706A1 (en) Learning contrastive representation for semantic correspondence
CN110298926A (en) Depth geometry models fitting
CN115063598B (en) Keypoint detection methods, neural networks, devices, electronic equipment, and storage media
JP3979007B2 (en) Pattern identification method and apparatus
US20240161245A1 (en) Image optimization
Gou et al. Shape augmented regression for 3D face alignment
CN114281985A (en) Sample feature space enhancement method and device
JP2022509564A (en) Neural network active training system and image processing system
JP2024077442A (en) Target detection program, device, and machine learning model generation method
KR20230106057A (en) Method and apparatus for 6 degree of freedom pose estimation using artifical neural network
JP7472471B2 (en) Estimation system, estimation device, and estimation method
US20230169329A1 (en) Method to incorporate uncertain inputs into neural networks
Saxena et al. Generalizable pose estimation using implicit scene representations
He et al. Demystifying diffusion policies: Action memorization and simple lookup table alternatives
Zhou et al. PoseDiffusion: A coarse-to-fine framework for unseen object 6-DoF pose estimation
CN114120447A (en) Behavior recognition method and system based on prototype comparison learning and storage medium
JP7643546B2 (en) Learning device, estimation device, their methods, and programs
CN115759177A (en) A Multi-Agent Reinforcement Learning Data Augmentation Method Based on Rotational Symmetry
CN115620082A (en) Model training method, head pose estimation method, electronic device and storage medium
JP7166738B2 (en) Information processing device, information processing method, and program
CN114648560A (en) Distributed image registration method, system, medium, computer device and terminal
CN119940118A (en) Trajectory prediction method for diverse traffic participants in autonomous driving system based on flexible anchor points
JP7597217B2 (en) Learning device, estimation device, their methods, and programs

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20241029

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20250128

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250210

R150 Certificate of patent or registration of utility model

Ref document number: 7643546

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350