IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 富士通株式会社の特許一覧

特許7452016学習データ生成プログラム、及び学習データ生成方法
<>
  • 特許-学習データ生成プログラム、及び学習データ生成方法 図1
  • 特許-学習データ生成プログラム、及び学習データ生成方法 図2
  • 特許-学習データ生成プログラム、及び学習データ生成方法 図3
  • 特許-学習データ生成プログラム、及び学習データ生成方法 図4
  • 特許-学習データ生成プログラム、及び学習データ生成方法 図5
  • 特許-学習データ生成プログラム、及び学習データ生成方法 図6
  • 特許-学習データ生成プログラム、及び学習データ生成方法 図7
  • 特許-学習データ生成プログラム、及び学習データ生成方法 図8
  • 特許-学習データ生成プログラム、及び学習データ生成方法 図9
  • 特許-学習データ生成プログラム、及び学習データ生成方法 図10
  • 特許-学習データ生成プログラム、及び学習データ生成方法 図11
  • 特許-学習データ生成プログラム、及び学習データ生成方法 図12
  • 特許-学習データ生成プログラム、及び学習データ生成方法 図13
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-11
(45)【発行日】2024-03-19
(54)【発明の名称】学習データ生成プログラム、及び学習データ生成方法
(51)【国際特許分類】
   G06T 7/20 20170101AFI20240312BHJP
   G06T 7/00 20170101ALI20240312BHJP
【FI】
G06T7/20 300B
G06T7/00 660A
G06T7/00 350C
【請求項の数】 7
(21)【出願番号】P 2020002467
(22)【出願日】2020-01-09
(65)【公開番号】P2021111114
(43)【公開日】2021-08-02
【審査請求日】2022-09-08
(73)【特許権者】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】内田 昭嘉
(72)【発明者】
【氏名】斎藤 淳哉
(72)【発明者】
【氏名】吉井 章人
【審査官】千葉 久博
(56)【参考文献】
【文献】特表2019-517693(JP,A)
【文献】特表2002-517859(JP,A)
【文献】山本俊太, 外4名,“モーションキャプチャで得られた顔特徴点位置データを用いた表情の識別”,電子情報通信学会技術研究報告,日本,社団法人電子情報通信学会,2011年02月28日,第110巻, 第457号,p.101-106
【文献】崔昌石, 外2名,“顔の3次元モデルを用いた顔面表情の分析”,電子情報通信学会論文誌,日本,社団法人電子情報通信学会,1991年06月25日,第J74-D-II巻, 第6号,p.766-777
【文献】Beat Fasel, 外1名,"Recognition of asymmetric facial action unit activities and intensities",Proceedings 15th International Conference on Pattern Recognition. ICPR-2000,2000年09月07日,p.1100-1103
【文献】Susanne Kaiser, 外1名,"Automated coding of facial behavior in humancomputer interactions with FACS.",Journal of Nonverbal Behavior,1992年06月,p.67-83
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/20
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
顔を含む撮像画像を取得し、
前記撮像画像に含まれるマーカの位置を特定し、
アクションユニットの判定基準と特定された前記マーカの位置とに基づいて、複数のアクションユニットのうち第1のアクションユニットを選択し、
前記撮像画像を基に、前記マーカの色である代表色を含む色の領域画像をマスク画像として生成し、前記マスク画像を用いて、前記撮像画像から前記マーカを削除する画像処理を実行することによって、画像を生成し、
生成された前記画像に前記第1のアクションユニットに関する情報を付与することによって機械学習用の学習データを生成する、
処理をコンピュータに実行させることを特徴とする学習データ生成プログラム。
【請求項2】
前記画像を生成する処理は、前記撮像画像から、あらかじめ定められたマーカの形状を基に前記マーカの位置を検出することによりマスク画像を生成し、前記マスク画像を用いて、前記撮像画像から前記マーカを削除する画像処理を実行することによって、さらに画像を生成する
ことを特徴とする請求項1に記載の学習データ生成プログラム。
【請求項3】
前記選択する処理は、前記複数のアクションユニットのうち前記マーカに対応する前記第1のアクションユニットが、前記判定基準と前記マーカの位置とに基づいて発生していると判定された場合に、前記第1のアクションユニットを選択する処理を含む、
ことを特徴とする請求項1に記載の学習データ生成プログラム。
【請求項4】
前記判定基準に含まれる前記マーカの基準位置と、特定された前記マーカの位置との距離に基づいて算出した前記マーカの移動量を基に、前記第1のアクションユニットの発生強度を判定する、
処理を前記コンピュータにさらに実行させることを特徴とする請求項3に記載の学習データ生成プログラム。
【請求項5】
前記第1のアクションユニットに関する情報は、前記第1のアクションユニットの発生強度を含む、
ことを特徴とする請求項4に記載の学習データ生成プログラム。
【請求項6】
生成された前記学習データを用いて、顔を含む他の撮像画像を入力としアクションユニットの発生強度に関する情報を出力とする推定モデルの機械学習を実行する、
処理を前記コンピュータに実行させることを特徴とする請求項1に記載の学習データ生成プログラム。
【請求項7】
顔を含む撮像画像を取得し、
前記撮像画像に含まれるマーカの位置を特定し、
アクションユニットの判定基準と特定された前記マーカの位置とに基づいて、複数のアクションユニットのうち第1のアクションユニットを選択し、
前記撮像画像を基に、前記マーカの色である代表色を含む色の領域画像をマスク画像として生成し、前記マスク画像を用いて、前記撮像画像から前記マーカを削除する画像処理を実行することによって、画像を生成し、
生成された前記画像に前記第1のアクションユニットに関する情報を付与することによって機械学習用の学習データを生成する、
処理をコンピュータが実行することを特徴とする学習データ生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、学習データ生成技術、推定技術に関する。
【背景技術】
【0002】
ノンバーバルコミュニケーションにおいて、表情は重要な役割を果たしている。人を理解し、センシングするためには、表情推定技術は必須である。表情推定のためのツールとしてAU(Action Unit:アクションユニット)と呼ばれる手法が知られている。AUは、表情を顔の部位と表情筋に基づいて分解して定量化する手法である。
【0003】
AU推定エンジンは、大量の教師データに基づく機械学習がベースにあり、教師データとして、顔表情の画像データと、各AUのOccurrence(発生の有無)やIntensity(発生強度)が用いられる。また、教師データのOccurrenceやIntensityは、Coder(コーダ)と呼ばれる専門家によりAnnotation(アノテーション)される。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2011-237970号公報
【非特許文献】
【0005】
【文献】X. Zhang, L. Yin, J. Cohn, S. Canavan, M. Reale, A. Horowitz, P. Liu, and J. M. Girard. BP4D-spontaneous: A high-resolution spontaneous 3d dynamic facial expression database. Image and Vision Computing, 32, 2014. 1
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、従来の手法には、AU推定のための教師データを生成することが困難な場合があるという問題がある。例えば、コーダによるアノテーションでは、費用及び時間のコストがかかるため、データを大量に作成することが困難である。また、顔画像の画像処理による顔の各部位の移動計測では、小さな変化を正確に捉えるのが困難であり、コンピュータが人の判断を介さずに顔画像からAUの判定を行うことは難しい。したがって、コンピュータが人の判断を介さずに顔画像にAUのラベルを付した教師データを生成することは困難である。
【0007】
1つの側面では、AU推定のための教師データを生成することを目的とする。
【課題を解決するための手段】
【0008】
1つの態様において、学習データ生成プログラムは、顔を含む撮像画像を取得する処理をコンピュータに実行させる。学習データ生成プログラムは、撮像画像に含まれるマーカの位置を特定する処理をコンピュータに実行させる。学習データ生成プログラムは、アクションユニットの判定基準と特定されたマーカの位置とに基づいて、複数のアクションユニットのうち第1のアクションユニットを選択する処理をコンピュータに実行させる。学習データ生成プログラムは、撮像画像からマーカを削除する画像処理を実行することによって、画像を生成する処理をコンピュータに実行させる。学習データ生成プログラムは、生成された画像に第1のアクションユニットに関する情報を付与することによって機械学習用の学習データを生成する処理をコンピュータに実行させる。
【発明の効果】
【0009】
1つの側面では、AU推定のための教師データを生成することができる。
【図面の簡単な説明】
【0010】
図1図1は、学習システムの構成を説明する図である。
図2図2は、カメラの配置例を示す図である。
図3図3は、生成装置の構成例を示すブロック図である。
図4図4は、マーカの移動について説明する図である。
図5図5は、発生強度の判定方法を説明する図である。
図6図6は、発生強度の判定方法の例を示す図である。
図7図7は、マスク画像の作成方法を説明する図である。
図8図8は、マーカの削除方法を説明する図である。
図9図9は、推定装置の構成例を示すブロック図である。
図10図10は、生成装置の処理の流れを示すフローチャートである。
図11図11は、発生強度判定処理の流れを示すフローチャートである。
図12図12は、学習データ生成処理の流れを示すフローチャートである。
図13図13は、ハードウェア構成例を説明する図である。
【発明を実施するための形態】
【0011】
以下に、本発明に係る学習データ生成プログラム、学習データ生成方法及び推定装置の実施例を図面に基づいて詳細に説明する。なお、この実施例により本発明が限定されるものではない。また、各実施例は、矛盾のない範囲内で適宜組み合わせることができる。
【0012】
図1を用いて、実施例に係る学習システムの構成を説明する。図1は、学習システムの構成を説明するための図である。図1に示すように、学習システム1は、RGB(Red、Green、Blue)カメラ31、IR(infrared:赤外線)カメラ32、生成装置10及び学習装置20を有する。
【0013】
図1に示すように、まず、RGBカメラ31及びIRカメラ32は、マーカが付された人物の顔に向けられる。例えば、RGBカメラ31は一般的なデジタルカメラであり、可視光を受光し画像を生成する。また、例えば、IRカメラ32は、赤外線を感知する。また、マーカは、例えばIR反射(再帰性反射)マーカである。IRカメラ32は、マーカによるIR反射を利用してモーションキャプチャを行うことができる。また、以降の説明では、撮像対象の人物を被験者と呼ぶ。
【0014】
生成装置10は、RGBカメラ31によって撮像された画像及びIRカメラ32によるモーションキャプチャの結果を取得する。そして、生成装置10は、AUの発生強度121及び撮像画像から画像処理によりマーカを削除した画像122を学習装置20に対し出力する。例えば、発生強度121は、各AUの発生強度をAからEの5段階評価で表現し、「AU1:2、AU2:5、AU4:1、…」のようにアノテーションが行われたデータであってもよい。発生強度は、5段階評価で表現されるものに限られるものではなく、例えば2段階評価(発生の有無)によって表現されても良い。
【0015】
学習装置20は、生成装置10から出力された画像122及びAUの発生強度121を用いて機械学習を行い、画像からAUの発生強度を推定するためのモデルを生成する。学習装置20は、AUの発生強度をラベルとして用いることができる。
【0016】
ここで、図2を用いて、カメラの配置について説明する。図2は、カメラの配置例を示す図である。図2に示すように、複数のIRカメラ32がマーカトラッキングシステムを構成していてもよい。その場合、マーカトラッキングシステムは、ステレオ撮影によりIR反射マーカの位置を検出することができる。また、複数のIRカメラ32のそれぞれの間の相対位置関係は、カメラキャリブレーションによりあらかじめ補正されているものとする。
【0017】
また、撮像される被験者の顔には、対象とするAU(例:AU1からAU28)をカバーするように、複数のマーカが付される。マーカの位置は、被験者の表情の変化に応じて変化する。例えば、マーカ401は、眉の根元付近に配置される。また、マーカ402及びマーカ403は、豊麗線の付近に配置される。マーカは、1つ以上のAU及び表情筋の動きに対応した皮膚の上に配置されてもよい。また、マーカは、しわの寄り等により、テクスチャ変化が大きくなる皮膚の上を避けて配置されてもよい。
【0018】
さらに、被験者は、基準点マーカが付された器具40を装着する。被験者の表情が変化しても、器具40に付された基準点マーカの位置は変化しないものとする。このため、生成装置10は、基準点マーカからの相対的な位置の変化により、顔に付されたマーカの位置の変化を検出することができる。また、基準マーカの数を3つ以上にすることで、生成装置10は、3次元空間におけるマーカの位置を特定することができる。
【0019】
器具40は、例えばヘッドバンドであり、顔の輪郭外に基準点マーカを配置する。また、器具40は、VRヘッドセット及び固い素材のマスク等であってもよい。その場合、生成装置10は、器具40のリジッド表面を基準点マーカとして利用することができる。
【0020】
図3を用いて、生成装置10の機能構成を説明する。図3は、生成装置の構成例を示すブロック図である。図3に示すように、生成装置10は、入力部11、出力部12、記憶部13及び制御部14を有する。
【0021】
入力部11は、データを入力するためのインタフェースである。例えば、入力部11は、マウス及びキーボード等の入力装置を介してデータの入力を受け付ける。また、出力部12は、データを出力するためのインタフェースである。例えば、出力部12は、ディスプレイ等の出力装置にデータを出力する。
【0022】
記憶部13は、データや制御部14が実行するプログラム等を記憶する記憶装置の一例であり、例えばハードディスクやメモリ等である。記憶部13は、AU情報131を記憶する。AU情報131は、マーカとAUの対応関係を表す情報である。
【0023】
制御部14は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)等によって、内部の記憶装置に記憶されているプログラムがRAMを作業領域として実行されることにより実現される。また、制御部14は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されるようにしてもよい。制御部14は、取得部141、特定部142、判定部143、画像生成部144及び学習データ生成部145を有する。
【0024】
取得部141は、顔を含む撮像画像を取得する。例えば、取得部141は、複数のAUに対応する複数の位置に複数のマーカを付した顔を含む撮像画像を取得する。取得部141は、RGBカメラ31によって撮像された画像を取得する。
【0025】
ここで、IRカメラ32及びRGBカメラ31による撮影が行われる際、被験者は表情を変化させていく。これにより、生成装置10は、時系列に沿って表情が変化していく様子を画像として取得することができる。また、RGBカメラ31は、動画を撮像してもよい。動画は、時系列に並べられた複数の静止画とみなすことができる。また、被験者は、自由に表情を変化させてもよいし、あらかじめ定められたシナリオに沿って表情を変化させてもよい。
【0026】
特定部142は、撮像画像に含まれるマーカの位置を特定する。特定部142は、撮像画像に含まれる複数のマーカのそれぞれの位置を特定する。さらに、時系列に沿って複数の画像が取得された場合、特定部142は、各画像についてマーカの位置を特定する。また、特定部142は、器具40に付された基準マーカとの位置関係を基に、各マーカの平面上又は空間上の座標を特定することができる。なお、特定部142は、マーカの位置を、基準座標系から定めてもよいし、基準面の投影位置から定めてもよい。
【0027】
判定部143は、AUの判定基準と複数のマーカの位置とに基づいて、複数のAUのそれぞれの発生の有無を判定する。判定部143は、複数のAUのうち発生している1以上のAUについて、発生強度を判定する。このとき、判定部143は、複数のAUのうちマーカに対応するAUが、判定基準とマーカの位置とに基づいて発生していると判定された場合に、当該マーカに対応するAUを選択することができる。
【0028】
例えば、判定部143は、判定基準に含まれる第1のAUに対応付けられた第1のマーカの基準位置と、特定部142によって特定された第1のマーカの位置との距離に基づいて算出した第1のマーカの移動量を基に、第1のAUの発生強度を判定する。なお、第1のマーカは、特定のAUに対応する1つ、あるいは複数マーカということができる。
【0029】
AUの判定基準は、例えば、複数のマーカのうち、AU毎にAUの発生強度を判定するために使用される1又は複数のマーカを示す。AUの判定基準は、複数のマーカの基準位置を含んでもよい。AUの判定基準は、複数のAUのそれぞれについて、発生強度の判定に使用されるマーカの移動量と発生強度との関係(換算ルール)を含んでもよい。なお、マーカの基準位置は、被験者が無表情な状態(いずれのAUも発生していない)の撮像画像における複数のマーカの各位置に応じて定められてもよい。
【0030】
ここで、図4を用いて、マーカの移動について説明する。図4は、マーカの移動について説明する説明図である。図4の(a)、(b)、(c)は、RGBカメラ31によって撮像された画像である。また、画像は、(a)、(b)、(c)の順で撮像されたものとする。例えば、(a)は、被験者が無表情であるときの画像である。生成装置10は、(a)の画像のマーカの位置を、移動量が0の基準位置とみなすことができる。
【0031】
図4に示すように、被験者は、眉を寄せるような表情を取っている。このとき、表情の変化に従い、マーカ401の位置は下方向に移動している。その際、マーカ401の位置と、器具40に付された基準マーカとの間の距離は大きくなっている。
【0032】
また、マーカ401の基準マーカからのX方向及びY方向の距離の変動値は、図5のように表される。図5は、発生強度の判定方法を説明する説明図である。図5に示すように、判定部143は、変動値を発生強度に換算することができる。なお、発生強度は、FACS(Facial Action Coding System)に準じて5段階に量子化されたものであってもよいし、変動量に基づく連続量として定義されたものであってもよい。
【0033】
判定部143が変動量を発生強度に換算するルールとしては、様々なものが考えられる。判定部143は、あらかじめ定められた1つのルールに従って換算を行ってもよいし、複数のルールで換算を行い、最も発生強度が大きいものを採用するようにしてもよい。
【0034】
例えば、判定部143は、被験者が最大限表情を変化させたときの変動量である最大変動量をあらかじめ取得しておき、変動量の最大変動量に対する割合に基づいて発生強度を換算してもよい。また、判定部143は、従来手法によりコーダがタグ付けしたデータを用いて最大変動量を定めておいてもよい。また、判定部143は、変動量を発生強度にリニアに換算してもよい。また、判定部143は、複数の被験者の事前測定から作成された近似式を用いて換算を行ってもよい。
【0035】
また、例えば、判定部143は、判定基準としてあらかじめ設定された位置と、特定部142によって特定された第1のマーカの位置とに基づいて算出した第1のマーカの移動ベクトルを基に発生強度を判定することができる。この場合、判定部143は、第1のマーカの移動ベクトルと、第1のAUに対してあらかじめ対応付けられたベクトルとの合致度合いを基に、第1のAUの発生強度を判定する。また、判定部143は、既存のAU推定エンジンを使って、ベクトルの大きさと発生強度の対応を補正してもよい。
【0036】
図6は、発生強度の判定方法の例を示す図である。例えば、AU4に対応するAU4ベクトルが(-2mm,-6mm)のようにあらかじめ定められているものとする。このとき、判定部143は、マーカ401の移動ベクトルとAU4ベクトルの内積を計算し、AU4ベクトルの大きさで規格化する。ここで、内積がAU4ベクトルの大きさと一致すれば、判定部143は、AU4の発生強度を5段階中の5と判定する。一方、内積がAU4ベクトルの半分であれば、例えば、前述のリニアな換算ルールの場合は、判定部143は、AU4の発生強度を5段階中の3と判定する。
【0037】
また、例えば、図6に示すように、AU11に対応するAU11ベクトルの大きさが3mmのようにあらかじめ定められているものとする。このとき、判定部143は、マーカ402とマーカ403の間の距離の変動量がAU11ベクトルの大きさと一致すれば、判定部143は、AU11の発生強度を5段階中の5と判定する。一方、距離の変動量がAU4ベクトルの半分であれば、例えば、前述のリニアな換算ルールの場合は、判定部143は、AU11の発生強度を5段階中の3と判定する。このように、判定部143は、特定部142によって特定された第1のマーカの位置及び第2のマーカの位置との間の距離の変化を基に、発生強度を判定することができる。
【0038】
さらに、生成装置10は、画像処理を行った画像と発生強度を関連付けて出力してもよい。その場合、画像生成部144は、撮像画像からマーカを削除する画像処理を実行することによって、画像を生成する。
【0039】
画像生成部144は、マスク画像を用いてマーカを削除することができる。図7は、マスク画像の作成方法を説明する説明図である。図7の(a)は、RGBカメラ31によって撮像された画像である。まず、画像生成部144は、あらかじめ意図的に付けられたマーカの色を抽出して代表色として定義する。そして、図7の(b)のように、画像生成部144は、代表色近傍の色の領域画像を生成する。さらに、図7の(c)のように、画像生成部144は、代表色近傍の色の領域に対し収縮、膨張等の処理を行い、マーカ削除用のマスク画像を生成する。また、マーカの色を顔の色としては存在しにくい色に設定しておくことで、マーカの色の抽出精度を向上させてもよい。
【0040】
図8は、マーカの削除方法を説明する説明図である。図8に示すように、まず、画像生成部144は、動画から取得した静止画に対し、マスク画像を適用する。さらに、画像生成部144は、マスク画像を適用した画像を例えばニューラルネットワークに入力し、処理済みの画像を得る。なお、ニューラルネットワークは、被験者のマスクありの画像及びマスクなしの画像等を用いて学習済みであるものとする。なお、動画から静止画を取得することにより、表情変化の途中データが得られることや、短時間で大量のデータが得られることがメリットとして生じる。また、画像生成部144は、ニューラルネットワークとして、GMCNN(Generative Multi-column Convolutional Neural Networks)やGAN(Generative Adversarial Networks)を用いてもよい。
【0041】
なお、画像生成部144がマーカを削除する方法は、上記のものに限られない。例えば、画像生成部144は、あらかじめ定められたマーカの形状を基にマーカの位置を検出し、マスク画像を生成してもよい。また、IRカメラ32とRGBカメラ31の相対位置のキャリブレーションを事前に行うようにしてもよい。この場合、画像生成部144は、IRカメラ32によるマーカトラッキングの情報からマーカの位置を検出することができる。
【0042】
また、画像生成部144は、マーカにより異なる検出方法を採用してもよい。例えば、鼻上のマーカは動きが少なく、形状を認識しやすいため、画像生成部144は、形状認識により位置を検出してもよい。また、口横のマーカは動きが大きく、形状を認識しにくいため、画像生成部144は、代表色を抽出する方法で位置を検出してもよい。
【0043】
学習データ生成部145は、生成された画像に第1のAUに関する情報を付与することによって機械学習用の学習データを生成する。例えば、学習データ生成部145は、生成された画像に、判定部143によって判定された第1のAUの発生強度を付与することによって機械学習用の学習データを生成する。また、学習装置20は、学習データ生成部145によって生成された学習データを既存の学習データに加えて学習を行ってもよい。
【0044】
例えば、学習データは、画像を入力として、発生しているAUを推定する推定モデルの学習に使用できる。また、推定モデルは各AUに特化したモデルであってもよい。推定モデルが特定のAUに特化したものである場合、生成装置10は、生成した学習データを、当該特定のAUに関する情報のみを教師ラベルとする学習データに変更してもよい。つまり、生成装置10は、特定のAUと異なる他のAUが発生している画像に関しては、他のAUに関する情報を削除して、当該特定のAUは発生していない旨の情報を教師ラベルとして付加することができる。
【0045】
本実施例によれば、必要な学習データの見積もりを行うことができる。一般に、機械学習を実施するためには、膨大な計算コストがかかる。計算コストには、時間やGPU等の使用量が含まれる。
【0046】
データセットの質及び量が改善すると、学習によって得られるモデルの精度は改善する。そのため、事前に目標精度に対して必要なデータセットの質及び量の大まかな見積もりができれば、計算コストが削減される。ここで、例えば、データセットの質は、マーカの削除率及び削除精度である。また、例えば、データセットの量は、データセット数及び被験者の人数である。
【0047】
AUの組み合わせ中には、互いの相関が高い組み合わせがある。このため、あるAUに対して行った見積りは、当該AUと相関が高い他のAUに適用できると考えられる。例えば、AU18とAU22の相関は高いことが知られており、対応するマーカが共通する場合がある。このため、AU18の推定精度が目標に達する程度のデータセットの質及び量の見積もりができれば、AU22の推定精度が目標に達する程度のデータセットの質及び量の大まかな見積もりが可能になる。
【0048】
学習装置20は、生成装置10によって生成された学習データを用いて機械学習を行い、画像から各AUの発生強度を推定するためのモデルを生成する。さらに、推定装置60は、学習装置20によって生成されたモデルを用いて、実際に推定を行う。
【0049】
図9を用いて、推定装置60の機能構成を説明する。図9は、推定装置の構成例を示すブロック図である。図9に示すように、推定装置60は、入力部61、出力部62、記憶部63及び制御部64を有する。
【0050】
入力部61は、データを入力するための装置又はインタフェースである。例えば、入力部61は、マウス及びキーボードである。また、出力部62は、データを出力するための装置又はインタフェースである。例えば、出力部62は、画面を表示するディスプレイ等である。
【0051】
記憶部63は、データや制御部64が実行するプログラム等を記憶する記憶装置の一例であり、例えばハードディスクやメモリ等である。記憶部63は、モデル情報631を記憶する。モデル情報631は、学習装置20によって生成されたモデルを構築するためのパラメータ等である。
【0052】
制御部64は、例えば、CPU、MPU、GPU等によって、内部の記憶装置に記憶されているプログラムがRAMを作業領域として実行されることにより実現される。また、制御部64は、例えば、ASICやFPGA等の集積回路により実現されるようにしてもよい。制御部64は、取得部641及び推定部642を有する。
【0053】
取得部641は、顔を含む第1の撮像画像を取得する。例えば、第1の画像は、人物の顔が写った画像であって、各AUの発生強度が未知である画像を取得する。
【0054】
推定部642は、AUの判定基準と撮像画像に含まれるマーカの位置とに基づいて選択された第1のAUの情報を教師ラベルとした学習データに基づいて機械学習により生成された機械学習モデルに、第1の撮像画像を入力する。そして、推定部642は、機械学習モデルの出力を、顔の表情の推定結果として取得する。
【0055】
例えば、推定部642は、各AUの発生強度をAからEの5段階評価で表現した、「AU1:2、AU2:5、AU4:1、…」のようなデータを取得する。また、出力部12は、推定部642によって取得された推定結果を出力する。
【0056】
図10を用いて、生成装置10の処理の流れを説明する。図10は、生成装置の処理の流れを示すフローチャートである。図10に示すように、まず、生成装置10は、被験者の顔の撮像画像を取得する(ステップS10)。次に、生成装置10は、発生強度判定処理を実行する(ステップS20)。そして、生成装置10は、学習データ生成処理を実行する(ステップS30)。そして、生成装置10は、発生強度又は学習データを出力する(ステップS40)。生成装置10は、発生強度のみを出力してもよいし、撮像画像と発生強度を関連付けた所定の形式のデータを出力してもよい。なお、ステップS20はマーカ画像があれば実行可能であるため、生成装置10は、S1とS20並列に実行してもよい。
【0057】
図11を用いて、発生強度判定処理(図10のステップS20)の流れを説明する。図11は、発生強度判定処理の流れを示すフローチャートである。図11に示すように、まず、生成装置10は、撮像画像のマーカの位置を特定する(ステップS201)。
【0058】
次に、生成装置10は、特定したマーカの位置と基準位置を基に、マーカの移動ベクトルを計算する(ステップS202)。そして、生成装置10は、移動ベクトルを基にAUの発生強度を判定する(ステップS203)。
【0059】
図12を用いて、学習データ生成処理の流れを説明する。図12は、学習データ生成処理の流れを示すフローチャートである。図12に示すように、まず、生成装置10は、撮像画像のマーカの位置を特定する(ステップS301)。生成装置10は、画像からマーカを削除する(ステップS302)。そして、生成装置10は、AUの発生強度をマーカが削除された画像に付与する(ステップS303)。
【0060】
上述したように、生成装置10の取得部141は、顔を含む撮像画像を取得する。特定部142は、撮像画像に含まれるマーカの位置を特定する。判定部143は、AUの判定基準と特定されたマーカの位置とに基づいて、複数のAUのうち第1のAUを選択する。画像生成部144は、撮像画像からマーカを削除する画像処理を実行することによって、画像を生成する。学習データ生成部145は、生成された画像に第1のAUに関する情報を付与することによって機械学習用の学習データを生成する。このように、生成装置10は、マーカが削除された高品質な学習データを自動的に得ることができる。その結果、本実施例によれば、AU推定のための教師データを生成することができる。
【0061】
判定部143は、複数のAUのうちマーカに対応するAUが、判定基準とマーカの位置とに基づいて発生していると判定された場合に、当該AUを選択する。このように、判定部143は、マーカに対応するAUを判定することができる。
【0062】
判定部143は、判定基準に含まれるマーカの基準位置と、特定されたマーカの位置との距離に基づいて算出したマーカの移動量を基に、AUの発生強度を判定する。このように、判定部143は、距離に基づいてAUを判定することができる。
【0063】
推定装置60の取得部641は、顔を含む第1の撮像画像を取得する。推定部642は、AUの判定基準と撮像画像に含まれるマーカの位置とに基づいて選択された第1のAUの情報を教師ラベルとした学習データに基づいて機械学習により生成された機械学習モデルに、第1の撮像画像を入力する。推定部642は、機械学習モデルの出力を、顔の表情の推定結果として取得する。このように、推定装置60は、低コストで生成されたモデルを用いて、精度の良い推定を行うことができる。
【0064】
上述したように、生成装置10の取得部141は、複数のAUに対応する複数の位置に複数のマーカを付した顔を含む撮像画像を取得する。特定部142は、撮像画像に含まれる複数のマーカのそれぞれの位置を特定する。判定部143は、複数のAUの中から選択した特定のAUの判定基準と複数のマーカのうち特定のAUに対応する1つ、あるいは複数マーカの位置とに基づいて、特定のAUの発生強度を判定する。出力部12は、撮像画像に関連付けて特定のAUの発生強度を出力する。このように、生成装置10は、コーダによるアノテーションを行うことなく、撮像画像から特定のAUの発生強度を判定することができる。その結果、AU推定のための教師データを生成することも可能となる。
【0065】
判定部143は、判定基準としてあらかじめ設定された位置と、特定部142によって特定された1つ、あるいは複数のマーカの位置との距離に基づいて算出したマーカの移動量基に、発生強度を判定する。このように、生成装置10は、判定基準を用いることでAUの発生強度を精度良く計算することができる。
【0066】
判定部143は、判定基準としてあらかじめ設定された位置と、特定部142によって特定された第1のマーカの位置とに基づいて算出した1つ、あるいは複数のマーカの移動ベクトルと、特定のAUに対してあらかじめ対応付けられたベクトルとの合致度合いを基に、特定のAUの発生強度を判定する。このように、生成装置10は、移動ベクトルを計算することで、方向を含めてマーカの移動を評価し、発生強度の判定精度を向上させることができる。
【0067】
判定部143は、特定部142によって特定された第1のマーカの位置及び第2のマーカの位置との間の距離の変化を基に、発生強度を判定する。このように、生成装置10は、複数のマーカの位置を用いることで、顔表面のテクスチャ変化に起因するような複雑なマーカの動きにも対応することができる。
【0068】
上記の実施例では、判定部143が、マーカの移動量を基にAUの発生強度を判定するものとして説明した。一方で、マーカが動かなかったことも、判定部143による発生強度の判定基準になり得る。
【0069】
また、マーカの周囲には、検出しやすい色が配置されていてもよい。例えば、中央にIRマーカを置いた丸い緑色の粘着シールを被験者に付してもよい。この場合、画像生成部144は、撮像画像から緑色の丸い領域を検出し、当該領域をIRマーカごと削除することができる。
【0070】
上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。また、実施例で説明した具体例、分布、数値等は、あくまで一例であり、任意に変更することができる。
【0071】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散や統合の具体的形態は図示のものに限られない。つまり、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【0072】
図13は、ハードウェア構成例を説明する図である。図11に示すように、生成装置10は、通信インタフェース10a、HDD(Hard Disk Drive)10b、メモリ10c、プロセッサ10dを有する。また、図13に示した各部は、バス等で相互に接続される。
【0073】
通信インタフェース10aは、ネットワークインタフェースカード等であり、他のサーバとの通信を行う。HDD10bは、図3に示した機能を動作させるプログラムやDBを記憶する。
【0074】
プロセッサ10dは、図2に示した各処理部と同様の処理を実行するプログラムをHDD10b等から読み出してメモリ10cに展開することで、図3等で説明した各機能を実行するプロセスを動作させるハードウェア回路である。すなわち、このプロセスは、生成装置10が有する各処理部と同様の機能を実行する。具体的には、プロセッサ10dは、取得部141、特定部142、判定部143、画像生成部144及び学習データ生成部145と同様の機能を有するプログラムをHDD10b等から読み出す。そして、プロセッサ10dは、取得部141、特定部142、判定部143、画像生成部144及び学習データ生成部145等と同様の処理を実行するプロセスを実行する。
【0075】
このように生成装置10は、プログラムを読み出して実行することで学習類方法を実行する情報処理装置として動作する。また、生成装置10は、媒体読取装置によって記録媒体から上記プログラムを読み出し、読み出された上記プログラムを実行することで上記した実施例と同様の機能を実現することもできる。なお、この他の実施例でいうプログラムは、生成装置10によって実行されることに限定されるものではない。例えば、他のコンピュータ又はサーバがプログラムを実行する場合や、これらが協働してプログラムを実行するような場合にも、本発明を同様に適用することができる。
【0076】
このプログラムは、インターネット等のネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD-ROM、MO(Magneto-Optical disk)、DVD(Digital Versatile Disc)等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することができる。
【符号の説明】
【0077】
1 学習システム
10 生成装置
11、61 入力部
12、62 出力部
13、63 記憶部
14、64 制御部
20 学習装置
31 RGBカメラ
32 IRカメラ
40 器具
60 推定装置
131 AU情報
141 取得部
142 特定部
143 判定部
144 画像生成部
145 学習データ生成部
401、402、403 マーカ
631 モデル情報
641 取得部
642 推定部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13