(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-02
(45)【発行日】2024-12-10
(54)【発明の名称】学習装置、推定装置、それらの方法、およびプログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20241203BHJP
A61B 3/113 20060101ALI20241203BHJP
G06N 3/045 20230101ALI20241203BHJP
【FI】
G06T7/00 350C
A61B3/113
G06N3/045
G06T7/00 660A
(21)【出願番号】P 2023528808
(86)(22)【出願日】2021-06-15
(86)【国際出願番号】 JP2021022704
(87)【国際公開番号】W WO2022264269
(87)【国際公開日】2022-12-22
【審査請求日】2023-09-27
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】100121706
【氏名又は名称】中尾 直樹
(74)【代理人】
【識別番号】100128705
【氏名又は名称】中村 幸雄
(74)【代理人】
【識別番号】100147773
【氏名又は名称】義村 宗洋
(72)【発明者】
【氏名】高島 瑛彦
(72)【発明者】
【氏名】増村 亮
【審査官】岡本 俊威
(56)【参考文献】
【文献】特開2019-159518(JP,A)
【文献】米国特許出願公開第2019/0377409(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00
A61B 3/113
G06N 3/045
(57)【特許請求の範囲】
【請求項1】
モデルパラメータ^θ
gまたは^θ
pを用いて、ニューラルネットワークの関数により学習用顔画像S
bを中間特徴vに変換する共有ネットワーク部と、
前記モデルパラメータ^θ
gを用いて、ニューラルネットワークの関数により前記中間特徴vを推定視線角度ベクトルZ'
gに変換する視線角度ネットワーク部と、
前記推定視線角度ベクトルZ'
gと前記学習用顔画像S
bに対する視線角度正解ラベルとを用いて、前記モデルパラメータ^θ
gを更新する視線角度モデルパラメータ最適化部と、
前記モデルパラメータ^θ
pを用いて、ニューラルネットワークの関数により中間特徴vを推定有効視野確率ベクトルZ'
pに変換する有効視野ネットワーク部と、
前記推定有効視野確率ベクトルZ'
pと前記学習用顔画像S
bに対する有効視野正解ラベルとを用いて、前記モデルパラメータ^θ
pを更新する有効視野モデルパラメータ最適化部とを含み、
前記モデルパラメータ^θ
gに対応する学習済みのモデルパラメータθ
gと、前記モデルパラメータ^θ
pに対応する学習済みのモデルパラメータθ
pを取得する、
学習装置。
【請求項2】
請求項1の学習装置で学習したモデルパラメータθ
gを用いる推定装置であって、
前記共有ネットワーク部とそれに続く前記視線角度ネットワーク部のネットワークアーキテクチャと、前記モデルパラメータθ
gとを用いて、推定対象の顔画像Sから視線角度を推定する視線角度推定部を含む、
推定装置。
【請求項3】
請求項1の学習装置で学習したモデルパラメータθ
pを用いる推定装置であって、
前記共有ネットワーク部とそれに続く前記有効視野ネットワーク部のネットワークアーキテクチャと、前記モデルパラメータθ
pとを用いて、前記顔画像Sから有効視野確率を推定し、前記有効視野確率の推定値に基づき有効視野内か否かを判定する有効視野判定部を含む、
推定装置。
【請求項4】
請求項1の学習装置で学習したモデルパラメータθ
gとモデルパラメータθ
pとを用いる推定装置であって、
前記共有ネットワーク部とそれに続く前記視線角度ネットワーク部のネットワークアーキテクチャと、前記モデルパラメータθ
gとを用いて、推定対象の顔画像Sから視線角度を推定する視線角度推定部と、
前記共有ネットワーク部とそれに続く前記有効視野ネットワーク部のネットワークアーキテクチャと、前記モデルパラメータθ
pとを用いて、前記顔画像Sから有効視野確率を推定し、前記有効視野確率の推定値に基づき有効視野内か否かを判定する有効視野判定部とを含む、
推定装置。
【請求項5】
モデルパラメータ^θ
gまたは^θ
pを用いて、ニューラルネットワークの関数により学習用顔画像S
bを中間特徴vに変換する共有ネットワークステップと、
前記モデルパラメータ^θ
gを用いて、ニューラルネットワークの関数により前記中間特徴vを推定視線角度ベクトルZ'
gに変換する視線角度ネットワークステップと、
前記推定視線角度ベクトルZ'
gと前記学習用顔画像S
bに対する視線角度正解ラベルとを用いて、前記モデルパラメータ^θ
gを更新する視線角度モデルパラメータ最適化ステップと、
前記モデルパラメータ^θ
pを用いて、ニューラルネットワークの関数により中間特徴vを推定有効視野確率ベクトルZ'
pに変換する有効視野ネットワークステップと、
前記推定有効視野確率ベクトルZ'
pと前記学習用顔画像S
bに対する有効視野正解ラベルとを用いて、前記モデルパラメータ^θ
pを更新する有効視野モデルパラメータ最適化ステップとを含み、
前記モデルパラメータ^θ
gに対応する学習済みのモデルパラメータθ
gと、前記モデルパラメータ^θ
pに対応する学習済みのモデルパラメータθ
pを取得する、
学習方法。
【請求項6】
請求項5の学習方法で学習したモデルパラメータθ
gを用いる推定方法であって、
前記共有ネットワークステップとそれに続く前記視線角度ネットワークステップのネットワークアーキテクチャと、前記モデルパラメータθ
gとを用いて、推定対象の顔画像Sから視線角度を推定する視線角度推定ステップを含む、
推定方法。
【請求項7】
請求項5の学習方法で学習したモデルパラメータθ
pを用いる推定方法であって、
前記共有ネットワークステップとそれに続く前記有効視野ネットワークステップのネットワークアーキテクチャと、前記モデルパラメータθ
pとを用いて、前記顔画像Sから有効視野確率を推定し、前記有効視野確率の推定値に基づき有効視野内か否かを判定する有効視野判定ステップを含む、
推定方法。
【請求項8】
請求項1の学習装置、または、請求項2から請求項4の何れかの推定装置として、コンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、顔画像から視線角度と有効視野を推定する推定技術と、推定する際に用いるパラメータの学習技術に関する。
【背景技術】
【0002】
視線角度とは、左目、右目の眼球の瞳孔の向きを表す回転角度である。視線角度を画像から推定することができると、人間が何を注視しているのか、またはキョロキョロしている、など眼球の運動状態が分かり、人間の状態、内面理解を分析することができる。視線角度推定は、一般にニューラルネットワークを利用して行われる。従来技術では、視線角度のみを目領域画像からニューラルネットワークモデルを用いて、回帰をする学習を行う。視線角度の正解ラベルはベクトルデータであり、眼球の水平成分、垂直成分の各回転角度値の連続データである。ニューラルネットワークによる視線角度推定に用いるパラメータの学習では、例えば画像認識等で広く用いられている畳み込み層、プーリング層を用いて画像の特徴を抽出し、その後の全結合層により、視線角度のベクトルデータへの回帰を行うことで、視線角度を推定することができる。
【0003】
非特許文献1は、ニューラルネットワークを用いて視線角度を推定する手法である。
【0004】
一方、人物が物体を認識しているか、どうかを判別する尺度として有効視野を活用する手法がある。有効視野とは眼球の水平角度-15度以上15度以下、垂直角度-12度以上8度以下の範囲を示し(
図1参照)、人間はこの範囲にある対象物を明に認識することができる。逆に有効視野外の物体の認識力は極端に低下する。例えばユースケースとして対象物をロボットとすると、カメラが搭載されているロボットが、カメラに映っている人間から認識されているか、認識されていないかを有効視野尺度を用いて判別することができる。具体的には、人間がロボットに対して顔を向けているのにも関わらず、視線角度が有効視野外の場合は、ロボットを認識していなく、有効視野内の場合はロボットを認識していると判定できる。
図1は、人間の視野と視野特性を表す図である。
図2は、有効視野内(ものがあると認識できている範囲)と有効視野外(ものがあると認識できていない範囲)を示す図である。
【先行技術文献】
【非特許文献】
【0005】
【文献】Xucong Zhang, Yusuke Sugano, Mario Fritz, Andreas Bulling, "Appearance-Based Gaze Estimation in the Wild", Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2015
【発明の概要】
【発明が解決しようとする課題】
【0006】
従来の視線角度推定に用いるモデルパラメータの学習では視線角度のみをニューラルネットワークで回帰する手法を用いており、視線角度が有効視野内か有効視野外かは推定視線角度からのルール判定によって判別する。また、従来技術は視線角度の誤差最小化のみを行っており、有効視野内か外かは考慮していない学習を行っている。視線角度の推定誤差の傾向として、正解角度の絶対値が大きくなるほど、誤差も大きくなり、有効視野境界である水平角度-15度付近および15度付近(
図3の破線で囲んだ部分)、垂直角度-12度付近および8度付近も角度誤差が大きくなる傾向がある。このため、推定した視線角度から、ルールにて有効視野を判定する手法では、有効視野境界付近では、有効視野の判定精度が低下する問題がある。
【0007】
本発明は、視線角度と有効視野判定の両者の特徴を捉えた高精度な視線角度推定、有効視野判定を行うことができる推定装置、学習装置、それらの方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
上記の課題を解決するために、本発明の一態様によれば、学習装置は、モデルパラメータ^θgまたは^θpを用いて、ニューラルネットワークの関数により学習用顔画像Sbを中間特徴vに変換する共有ネットワーク部と、モデルパラメータ^θgを用いて、ニューラルネットワークの関数により中間特徴vを推定視線角度ベクトルZ'gに変換する視線角度ネットワーク部と、推定視線角度ベクトルZ'gと学習用顔画像Sbに対する視線角度正解ラベルとを用いて、モデルパラメータ^θgを更新する視線角度モデルパラメータ最適化部と、モデルパラメータ^θpを用いて、ニューラルネットワークの関数により中間特徴vを推定有効視野確率ベクトルZ'pに変換する有効視野ネットワーク部と、推定有効視野確率ベクトルZ'pと学習用顔画像Sbに対する有効視野正解ラベルとを用いて、モデルパラメータ^θpを更新する有効視野モデルパラメータ最適化部とを含み、モデルパラメータ^θgに対応する学習済みのモデルパラメータθgと、モデルパラメータ^θpに対応する学習済みのモデルパラメータθpを取得する。
【発明の効果】
【0009】
本発明によれば、視線角度と有効視野判定の両者の特徴を捉えた高精度な視線角度推定、有効視野判定を行うことができるという効果を奏する。
【図面の簡単な説明】
【0010】
【
図4】第一実施形態に係る推定システムの構成例を示す図。
【
図5】第一実施形態に係る学習装置の機能ブロック図。
【
図6】第一実施形態に係る学習装置の処理フローの例を示す図。
【
図7】第一実施形態に係る推定装置の機能ブロック図。
【
図8】第一実施形態に係る推定装置の処理フローの例を示す図。
【
図9】本手法を適用するコンピュータの構成例を示す図。
【発明を実施するための形態】
【0011】
以下、本発明の実施形態について、説明する。なお、以下の説明に用いる図面では、同じ機能を持つ構成部や同じ処理を行うステップには同一の符号を記し、重複説明を省略する。以下の説明において、テキスト中で使用する記号「^」等は、本来直前の文字の真上に記載されるべきものであるが、テキスト記法の制限により、当該文字の直後に記載する。式中においてはこれらの記号は本来の位置に記述している。また、ベクトルや行列の各要素単位で行われる処理は、特に断りが無い限り、そのベクトルやその行列の全ての要素に対して適用されるものとする。
【0012】
<第一実施形態のポイント>
本実施形態は、視線角度の推定に用いるモデルパラメータと、有効視野の判定に用いるモデルパラメータを、同時に学習装置にて学習する。学習データには、学習用顔画像と、それに対する視線角度の正解ラベルYgと、有効視野の正解ラベルYpを持つ。ニューラルネットワークの構成は、共有ネットワーク部と、その後段に分岐する視線角度ネットワーク部と有効視野ネットワーク部である。共有ネットワーク部は学習用顔画像を入力とし、視線角度と有効視野の両者の特徴を獲得する学習が期待でき、後段の視線角度ネットワーク部では、視線角度を回帰し、有効視野ネットワーク部では有効視野内の確率を計算し、それぞれの正解ラベルを用いて推定値の誤差最小化を行い、モデルパラメータを更新する。推定時には、それぞれ、視線角度推定部、有効視野判定部を用いる。視線角度推定部は、共有ネットワーク部とそれに続く視線角度ネットワーク部のネットワークアーキテクチャと、学習装置で学習したモデルパラメータを用いて、視線角度の推定を行う。同様に、有効視野判定部は、共有ネットワーク部とそれに続く有効視野ネットワーク部のネットワークアーキテクチャと、学習装置で学習したモデルパラメータを用いて、有効視野の判定を行う。
【0013】
<第一実施形態>
図4は第一実施形態に係る推定システムの構成例を示す。
【0014】
推定システムは、学習装置100と、推定装置200とを含む。
【0015】
学習装置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の外部に備える構成としてもよい。
【0016】
まず、学習装置100について説明する。
【0017】
<学習装置100>
学習装置100は、学習データD=(S1,Tg
1,Tp
1),…,(S|M|,Tg
|M|,Tp
|M|)を入力とし、学習データDを用いてモデルパラメータθg,θpを学習し、学習済みのモデルパラメータθg,θpを出力する。ここで、Mは学習データDのデータサイズである。Sm(m=1,…,M)は、学習用顔画像である。学習用顔画像は、例えば、顔だけを切り出した画像、または、目領域だけを切り出した画像のどちらでもよい。例えば、学習用顔画像の解像度は224x224ピクセル、RGB3チャンネルを持つ。Tg
m(m=1,…,M)は、視線角度の正解ラベル(以下、「視線角度正解ラベル」ともいう)であり、例えば、視線角度の水平、垂直回転角度を格納したベクトルデータであり、[-35,56]のようなデータ形式をとる。Tp
m(m=1,…,M)は、有効視野の正解ラベル(以下、「有効視野正解ラベル」ともいう)であり、例えば、有効視野内である場合は[1]、有効視野外である場合[0]となる。
【0018】
図5は、学習装置100の機能ブロック図を、
図6はその処理フローを示す。
【0019】
学習装置100は、共有ネットワーク部120と、視線角度ネットワーク部130と、視線角度モデルパラメータ最適化部140と、有効視野ネットワーク部150と、有効視野モデルパラメータ最適化部160とを含む。
【0020】
以下、各部の概要について説明する。
【0021】
共有ネットワーク部120は、学習用顔画像を入力とし、視線角度と有効視野の両者の特徴を学習し、中間特徴を出力する任意のニューラルネットワークを用いて、中間特徴を取得する。
【0022】
視線角度ネットワーク部130は、中間特徴を入力とし、視線角度の推定値を出力する任意のニューラルネットワークを用いて、視線角度の推定値を取得する。
【0023】
視線角度モデルパラメータ最適化部140は、視線角度の推定値と視線角度の正解ラベルを入力とし、視線角度の推定値の誤差を計算し、誤差に基づいてモデルパラメータθgを更新する。
【0024】
有効視野ネットワーク部150は、中間特徴を入力とし、有効視野内である確率(推定有効視野確率)を出力する任意のニューラルネットワークを用いて、推定有効視野確率を取得する。
【0025】
有効視野モデルパラメータ最適化部160は、推定有効視野確率と有効視野の正解ラベルを入力とし、推定有効視野確率の誤差を計算し、誤差に基づいてモデルパラメータθpを更新する。
【0026】
上述の処理は、1バッチ(学習データのうち部分的に選択した一塊のデータ)の学習手順を示したものであり、これを繰り返して、全データの学習を任意の回数、行えるものとする。
【0027】
以下、各部の詳細について説明する。
【0028】
<共有ネットワーク部120>
入力:学習用顔画像S1,…,S|M|、更新したモデルパラメータ^θgまたは^θpのうち共有ネットワーク部120を構成するニューラルネットワークに対応するパラメータ
出力:1バッチの中間特徴v
共有ネットワーク部120は、任意のニューラルネットワークで構成されており、例えば、4層の畳み込み層などで構成される。
【0029】
共有ネットワーク部120は、変換処理に先立ち、更新したモデルパラメータ^θg(視線角度モデルパラメータ最適化部140の出力値)または^θp(有効視野モデルパラメータ最適化部160の出力値)のうち共有ネットワーク部120を構成する任意のニューラルネットワークに対応するパラメータを受け取る。
【0030】
共有ネットワーク部120は、更新したモデルパラメータ^θgまたは^θpのうち共有ネットワーク部120を構成する任意のニューラルネットワークに対応するパラメータを用いて、任意のニューラルネットワークの関数により学習用顔画像Sbを中間特徴vに変換する(S120)。学習用顔画像Sbは、学習用顔画像S1,…,S|M|をバッチ単位に分割したものである。1バッチの学習用顔画像Sbは、例えば、16枚の画像で構成される。例えば、あるバッチの学習用顔画像SbがQ枚の画像で構成される場合、q番目の画像に対応する中間特徴をvqとし、v=[v1,v2,…,vQ]とする。ただし、q=1,2,…,Qである。
【0031】
<視線角度ネットワーク部130>
入力:1バッチの中間特徴v、更新したモデルパラメータ^θgのうち視線角度ネットワーク部130を構成するニューラルネットワークに対応するパラメータ
出力:推定視線角度ベクトルZ'g
視線角度ネットワーク部130は、任意のニューラルネットワークで構成されており、例えば2層の全結合層などで構成される。
【0032】
視線角度ネットワーク部130は、変換処理に先立ち、更新したモデルパラメータ^θg(視線角度モデルパラメータ最適化部140の出力値)のうち視線角度ネットワーク部130を構成する任意のニューラルネットワークに対応するパラメータを受け取る。
【0033】
視線角度ネットワーク部130は、受け取ったパラメータを用いて、任意のニューラルネットワークの関数により中間特徴vを推定視線角度ベクトルZ'gに変換する(S130)。推定視線角度ベクトルとは、視線角度の水平回転角度の推定値、垂直回転角度の推定値を格納したベクトルデータである。別の言い方をすると、推定視線角度ベクトルとは、視線角度ベクトルの推定値である。視線角度ベクトルとは、視線角度の水平回転角度、垂直回転角度を格納したベクトルデータである。回転角度の範囲は-180度~180度の範囲を持ち、例えば視線角度ベクトルは、[-35,56]などのベクトルとなる。例えば、あるバッチのq番目の中間特徴vqに対応する推定視線角度ベクトルをZ'g,qとし、Z'g=[Z'g,1,Z'g,2,…,Z'g,Q]とする。推定視線角度ベクトルZ'g,qが、[-35,56]のようなベクトルとなる。
【0034】
<視線角度モデルパラメータ最適化部140>
入力:推定視線角度ベクトルZ'g、視線角度正解ラベルTg
1,…,Tg
|M|
出力:更新したモデルパラメータ^θgまたは学習済みモデルパラメータθg
モデルパラメータ^θgおよびθgは、共有ネットワーク部120を構成するニューラルネットワークに対応するパラメータと視線角度ネットワーク部130を構成するニューラルネットワークに対応するパラメータとを連結したものである。
【0035】
視線角度モデルパラメータ最適化部140は、推定視線角度ベクトルZ'gと視線角度正解ラベルTg
1,…,Tg
|M|とを用いて、モデルパラメータ^θgを更新し(S140)、最適化を行う。例えば、視線角度モデルパラメータ最適化部140は、推定視線角度ベクトルZ'gと視線角度正解ラベルTg
1,…,Tg
|M|との間の誤差を計算し、誤差を最小化するようにモデルパラメータ^θgを更新し、最適化を行う。誤差は例えばMSE誤差やMAE誤差などを用いることができ、パラメータの更新方法としては勾配降下法等を用いることができる。
【0036】
<有効視野ネットワーク部150>
入力:1バッチの中間特徴v、更新したモデルパラメータ^θpのうち有効視野ネットワーク部150を構成するニューラルネットワークに対応するパラメータ
出力:推定有効視野確率ベクトルZ'p
有効視野ネットワーク部150は、任意のニューラルネットワークで構成されており、例えば2層の全結合層などで構成される。
【0037】
有効視野ネットワーク部150は、変換処理に先立ち、更新したモデルパラメータ^θp(有効視野モデルパラメータ最適化部160の出力値)のうち有効視野ネットワーク部150を構成する任意のニューラルネットワークに対応するパラメータを受け取る。
【0038】
有効視野ネットワーク部150は、受け取ったパラメータを用いて、任意のニューラルネットワークの関数により1バッチの中間特徴vを推定有効視野確率ベクトルZ'pに変換する(S150)。推定有効視野確率ベクトルとは、有効視野確率の推定値(推定有効視野確率)からなるベクトルであり、有効視野確率とは学習用顔画像の視線向きが有効視野内であるかどうかの確率である。別の言い方をすると、有効視野確率は、学習用顔画像を撮影するカメラが学習用顔画像の被写体の有効視野内に存在するか否かの確率である。例えば、あるバッチのq番目の中間特徴vqに対応する推定有効視野確率をZ'p,qとし、Z'p=[Z'p,1,Z'p,2,…,Z'g,Q]とする。
【0039】
<有効視野モデルパラメータ最適化部160>
入力:推定有効視野確率ベクトルZ'p、有効視野正解ラベルTp
1,…,Tp
|M|
出力:更新したモデルパラメータ^θpまたは学習済みモデルパラメータθp
モデルパラメータ^θpおよびθpは、共有ネットワーク部120を構成するニューラルネットワークに対応するパラメータと有効視野ネットワーク部150を構成するニューラルネットワークに対応するパラメータとを連結したものである。
【0040】
有効視野モデルパラメータ最適化部160は、推定有効視野確率ベクトルZ'pと有効視野正解ラベルTp
1,…,Tp
|M|とを用いて、モデルパラメータ^θpを更新し(S160)、最適化を行う。例えば、有効視野モデルパラメータ最適化部160は、推定有効視野確率ベクトルZ'pと有効視野正解ラベルTp
1,…,Tp
|M|との間の誤差を計算し、誤差を最小化するようにモデルパラメータ^θpを更新し、最適化を行う。誤差は例えばクロスエントロピー誤差などを用いることができ、パラメータの更新方法としては勾配降下法等を用いることができる。
【0041】
上述の処理S120~S160を所定の条件を満たすまで繰り返す(S170)。所定の条件とは、パラメータの更新が収束したか否かを判断するための条件であり、例えば、所定の条件を(i)更新回数が所定の回数を超えたこと、(ii)更新前後のパラメータの差分が所定の値よりも小さいことなどとしてもよい。
【0042】
さらに、上述の処理S120~S170を全てのバッチデータ(学習データ)に対して行う。例えば、未処理のバッチデータがあるか否かを判定し(S180)、未処理のバッチデータがある場合には上述の処理S120~S170を行い(S180のNO)、未処理のバッチデータがない場合(S180のYES)には処理を終了する。
【0043】
全てのバッチデータに対して上述の処理を行った後、最終的に得られた、更新したモデルパラメータ^θg、^θpを学習済みモデルパラメータθg、θpとして出力する。
【0044】
次に、推定装置200について説明する。
【0045】
<推定装置200>
推定装置200は、推定処理に先立ち、学習済みのモデルパラメータθg,θpを受け取る。推定装置200は、推定対象の顔画像Sを入力とし、学習済みのモデルパラメータθgを用いて視線角度を推定し、学習済みのモデルパラメータθpを用いて有効視野確率を推定し、推定視線角度ベクトルZg、有効視野の判定結果Zpを出力する。
【0046】
図7は、推定装置200の機能ブロック図を、
図8はその処理フローを示す。
【0047】
推定装置200は、視線角度推定部210と、有効視野判定部220とを含む。
【0048】
以下、各部の詳細について説明する。
【0049】
<視線角度推定部210>
入力: 顔画像S、モデルパラメータθg
出力: 顔画像Sに対する推定視線角度ベクトルZg
視線角度推定部210は、推定処理に先立ち、モデルパラメータθgを受け取る。
【0050】
視線角度推定部210は、共有ネットワーク部120とそれに続く視線角度ネットワーク部130のネットワークアーキテクチャと、モデルパラメータθgとを用いて、顔画像Sから視線角度を推定し(S210)、推定値(推定視線角度ベクトルZg)を求める。例えば、共有ネットワーク部120が4層の畳み込み層からなる任意のニューラルネットワークで構成され、視線角度ネットワーク部130が2層の全結合層からなる任意のニューラルネットワークで構成される場合、視線角度推定部210は、共有ネットワーク部120と視線角度ネットワーク部130とに対応する4層の畳み込み層と2層の全結合層とからなるニューラルネットワークで構成され、このニューラルネットワークでモデルパラメータθgを用いる。
【0051】
<有効視野判定部220>
入力: 顔画像S、モデルパラメータθp
出力: 顔画像Sに対する有効視野の判定結果Zp
有効視野判定部220は、推定処理に先立ち、モデルパラメータθpを受け取る。
【0052】
有効視野判定部220は、共有ネットワーク部120とそれに続く有効視野ネットワーク部150のネットワークアーキテクチャと、モデルパラメータθpとを用いて、顔画像Sから有効視野確率を推定し、有効視野確率の推定値に基づき有効視野内か否かを判定する(S220)。例えば、有効視野判定部220は、有効視野確率の推定値と所定の閾値との大小関係に基づき、有効視野内であるか否かを判定する。例えば、有効視野判定部220は、有効視野確率の推定値が所定の閾値(例えば、0.5)以上の場合には有効視野内であることを示す判定結果を出力し、所定の閾値未満の場合には有効視野外であることを示す判定結果を出力する。ただし、有効視野判定部220は、有効視野確率の推定値そのものを判定結果として出力してもよい。例えば、共有ネットワーク部120が4層の畳み込み層からなる任意のニューラルネットワークで構成され、有効視野ネットワーク部150が2層の全結合層からなる任意のニューラルネットワークで構成される場合、有効視野判定部220は、共有ネットワーク部120と有効視野ネットワーク部150とに対応する4層の畳み込み層と2層の全結合層とからなるニューラルネットワークで構成され、このニューラルネットワークでモデルパラメータθpを用いる。
【0053】
<効果>
以上の構成により、視線角度と有効視野判定の両者の特徴を捉えた高精度な視線角度推定および有効視野判定ができる。
【0054】
<変形例>
本実施形態では、推定装置200は、視線角度と有効視野確率とを推定しているが、何れか一方のみを推定する構成としてもよい。その場合であっても、学習時には、視線角度と有効視野の推定に用いるモデルパラメータを1つのニューラルネットワークの系で学習しているため、視線角度と有効視野判定の両者の特徴を捉えた高精度な視線角度推定または有効視野判定を行うことができる。
【0055】
<効果>
以上の構成により、視線角度と有効視野判定の両者の特徴を捉えた高精度な視線角度推定、有効視野判定が行うことができる。
【0056】
<その他の変形例>
本発明は上記の実施形態及び変形例に限定されるものではない。例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。
【0057】
<プログラム及び記録媒体>
上述の各種の処理は、
図9に示すコンピュータの記憶部2020に、上記方法の各ステップを実行させるプログラムを読み込ませ、制御部2010、入力部2030、出力部2040などに動作させることで実施できる。
【0058】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【0059】
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【0060】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
【0061】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。