(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-15
(45)【発行日】2023-12-25
(54)【発明の名称】顔画像処理装置及び顔画像処理プログラム
(51)【国際特許分類】
G06T 7/70 20170101AFI20231218BHJP
G06T 7/00 20170101ALI20231218BHJP
【FI】
G06T7/70 Z
G06T7/00 660A
(21)【出願番号】P 2020066196
(22)【出願日】2020-04-01
【審査請求日】2023-02-15
(73)【特許権者】
【識別番号】000003609
【氏名又は名称】株式会社豊田中央研究所
(73)【特許権者】
【識別番号】000000011
【氏名又は名称】株式会社アイシン
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(72)【発明者】
【氏名】小島 真一
(72)【発明者】
【氏名】山田 祐也
(72)【発明者】
【氏名】大須賀 晋
(72)【発明者】
【氏名】上田 康貴
(72)【発明者】
【氏名】河合 雄太
(72)【発明者】
【氏名】加藤 隆志
(72)【発明者】
【氏名】山田 善之
【審査官】片岡 利延
(56)【参考文献】
【文献】特開2019-168954(JP,A)
【文献】特表2014-517392(JP,A)
【文献】特開2018-195309(JP,A)
【文献】特開2018-207342(JP,A)
【文献】特開2004-280451(JP,A)
【文献】特開2013-171522(JP,A)
【文献】国際公開第2019/213459(WO,A1)
【文献】米国特許出願公開第2019/0118383(US,A1)
【文献】中国特許出願公開第110852293(CN,A)
【文献】Volker Blanz et al.,Face Recognition Based on Fitting a 3D Morphable Model,[online],2003年09月,https://ieeexplore.ieee.org/document/1227983,検索日:2023年11月09日
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/70
G06T 7/00
(57)【特許請求の範囲】
【請求項1】
人物の顔を撮影して得られた画像の当該顔の器官の特徴点における、各々画像座標系の水平方向の座標値であるx座標値及び垂直方向の座標値であるy座標値を検出し、かつ、前記画像座標系の奥行き方向の座標値であるz座標値を推定することで当該画像座標系の3次元座標値を導出する画像座標系座標値導出部と、
前記画像座標系座標値導出部によって導出された前記画像座標系の3次元座標値から、カメラ座標系の3次元座標値を導出するカメラ座標系座標値導出部と、
前記カメラ座標系座標値導出部によって導出された前記カメラ座標系の3次元座標値を予め定められた3次元顔形状モデルに適用して、当該3次元顔形状モデルの前記カメラ座標系におけるモデルパラメータを導出するパラメータ導出部と、
を備えた顔画像処理装置。
【請求項2】
前記画像座標系座標値導出部は、前記x座標値及び前記y座標値の検出と並行して、深層学習を用いて前記z座標値を推定することにより導出する、
請求項1に記載の顔画像処理装置。
【請求項3】
前記3次元顔形状モデルは、平均形状と基底との線形和で構成されており、前記基底は、時間変化しない成分である個人差基底と、時間変化する成分である表情基底とが分離されており、
前記モデルパラメータは、前記個人差基底のパラメータ、及び前記表情基底のパラメータを含む、
請求項1又は請求項2に記載の顔画像処理装置。
【請求項4】
前記モデルパラメータは、前記人物の顔を撮影したカメラから見た当該人物の顔の位置及び姿勢を示す位置姿勢パラメータを更に含む、
請求項3に記載の顔画像処理装置。
【請求項5】
前記人物の顔までの距離を推定する顔距離推定部を更に備え、
前記カメラ座標系座標値導出部は、前記顔距離推定部によって推定された距離を用いて、前記カメラ座標系におけるz座標値を導出する、
請求項1~請求項4の何れか1項に記載の顔画像処理装置。
【請求項6】
前記画像座標系座標値導出部によって導出されたz座標値を、前記画像における前記顔の位置に応じて補正する座標補正部を更に備えた、
請求項1~請求項5の何れか1項に記載の顔画像処理装置。
【請求項7】
前記顔の器官の特徴点における、x座標値、y座標値、及びz座標値の誤差評価値のそれぞれに独立した重みを設定する重み設定部を更に備えた、
請求項1~請求項6の何れか1項に記載の顔画像処理装置。
【請求項8】
人物の顔を撮影して得られた画像の当該顔の器官の特徴点における、各々画像座標系の水平方向の座標値であるx座標値及び垂直方向の座標値であるy座標値を検出し、かつ、前記画像座標系の奥行き方向の座標値であるz座標値を推定することで当該画像座標系の3次元座標値を導出し、
導出した前記画像座標系の3次元座標値から、カメラ座標系の3次元座標値を導出し、
導出した前記カメラ座標系の3次元座標値を予め定められた3次元顔形状モデルに適用して、当該3次元顔形状モデルの前記カメラ座標系におけるモデルパラメータを導出する、
処理をコンピュータに実行させるための顔画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、顔画像処理装置及び顔画像処理プログラムに関する。
【背景技術】
【0002】
従来、人物の顔を撮影して得られた顔画像を用いて3次元顔形状モデルのカメラ座標系におけるモデルパラメータを導出する技術として以下の技術があった。
【0003】
非特許文献1には、顔画像から検出した特徴点と3次元顔形状モデルの頂点の画像投影点の投影誤差を用いてパラメータの推定を行う技術が開示されている。
【0004】
また、非特許文献2には、顔画像から検出した特徴点と3次元センサから得られた特徴点の凹凸情報と、3次元顔形状モデルの頂点の画像投影点の投影誤差を用いてパラメータの推定を行う技術が開示されている。
【先行技術文献】
【非特許文献】
【0005】
【文献】J. M. Saragih, S. Lucey and J. F. Cohn, “Face Alignment through Subspace Constrained Mean-Shifts,” International Conference on Computer Vision (ICCV) 2009.
【文献】T. Baltrusaitis, P. Robinson and L.-P. Morency, “3D Constrained Local Model for Rigid and Non-Rigid Facial Tracking,” Conference on Computer Vision and Pattern Recognition (CVPR) 2012.
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上記非特許文献1に開示されている技術では、画像観測点と3次元顔形状モデルの画像投影点の2次元空間での距離誤差を最小化するような最適化計算を行っているが、投影変換により3次元情報が2次元情報に変換される。このため、x座標値とz座標値、及びy座標値とz座標値の間の曖昧性が生じ、当該曖昧性による推定誤差が生じやすく、この結果として、3次元顔形状モデルのパラメータの推定精度が必ずしも十分ではない、という問題点があった。
【0007】
また、上記非特許文献2に開示されている技術では、3次元センサを用いているため、太陽光等の外乱に弱く、この技術においても、結果的に3次元顔形状モデルのパラメータの推定精度が必ずしも十分ではない、という問題点があった。
【0008】
本発明は、上記問題点を解決するためになされたものであり、3次元顔形状モデルのパラメータを精度よく推定することができる顔画像処理装置及び顔画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
上記目的を達成するために、請求項1に記載の顔画像処理装置は、人物の顔を撮影して得られた画像の当該顔の器官の特徴点における、各々画像座標系の水平方向の座標値であるx座標値及び垂直方向の座標値であるy座標値を検出し、かつ、前記画像座標系の奥行き方向の座標値であるz座標値を推定することで当該画像座標系の3次元座標値を導出する画像座標系座標値導出部と、前記画像座標系座標値導出部によって導出された前記画像座標系の3次元座標値から、カメラ座標系の3次元座標値を導出するカメラ座標系座標値導出部と、前記カメラ座標系座標値導出部によって導出された前記カメラ座標系の3次元座標値を予め定められた3次元顔形状モデルに適用して、当該3次元顔形状モデルの前記カメラ座標系におけるモデルパラメータを導出するパラメータ導出部と、を備えている。
【0010】
請求項2に記載の顔画像処理装置は、請求項1に記載の顔画像処理装置において、前記画像座標系座標値導出部は、前記x座標値及び前記y座標値の検出と並行して、深層学習を用いて前記z座標値を推定することにより導出する。
【0011】
請求項3に記載の顔画像処理装置は、請求項1又は請求項2に記載の顔画像処理装置において、前記3次元顔形状モデルは、平均形状と基底との線形和で構成されており、前記基底は、時間変化しない成分である個人差基底と、時間変化する成分である表情基底とが分離されており、前記モデルパラメータは、前記個人差基底のパラメータ、及び前記表情基底のパラメータを含む。
【0012】
請求項4に記載の顔画像処理装置は、請求項3に記載の顔画像処理装置において、前記モデルパラメータは、前記人物の顔を撮影したカメラから見た当該人物の顔の位置及び姿勢を示す位置姿勢パラメータを更に含む。
【0013】
請求項5に記載の顔画像処理装置は、請求項1~請求項4の何れか1項に記載の顔画像処理装置において、前記人物の顔までの距離を推定する顔距離推定部を更に備え、前記カメラ座標系座標値導出部は、前記顔距離推定部によって推定された距離を用いて、前記カメラ座標系におけるz座標値を導出する。
【0014】
請求項6に記載の顔画像処理装置は、請求項1~請求項5の何れか1項に記載の顔画像処理装置において、前記画像座標系座標値導出部によって導出されたz座標値を、前記画像における前記顔の位置に応じて補正する座標補正部を更に備えている。
【0015】
請求項7に記載の顔画像処理装置は、請求項1~請求項6の何れか1項に記載の顔画像処理装置において、前記顔の器官の特徴点における、x座標値、y座標値、及びz座標値の誤差評価値のそれぞれに独立した重みを設定する重み設定部を更に備えている。
【0016】
更に、上記目的を達成するために、請求項8に記載の顔画像処理プログラムは、人物の顔を撮影して得られた画像の当該顔の器官の特徴点における、各々画像座標系の水平方向の座標値であるx座標値及び垂直方向の座標値であるy座標値を検出し、かつ、前記画像座標系の奥行き方向の座標値であるz座標値を推定することで当該画像座標系の3次元座標値を導出し、導出した前記画像座標系の3次元座標値から、カメラ座標系の3次元座標値を導出し、導出した前記カメラ座標系の3次元座標値を予め定められた3次元顔形状モデルに適用して、当該3次元顔形状モデルの前記カメラ座標系におけるモデルパラメータを導出する、処理をコンピュータに実行させる。
【発明の効果】
【0017】
本発明によれば、3次元顔形状モデルのパラメータを精度よく推定することができる顔画像処理装置及び顔画像処理プログラムを提供することができる。
【図面の簡単な説明】
【0018】
【
図1】実施形態に係る顔画像処理装置をコンピュータにより実現する構成の一例を示すブロック図である。
【
図2】実施形態に係る顔画像処理装置の電子機器の配置の一例を示すイメージ図である。
【
図3】実施形態に係る顔画像処理装置における座標系の一例を示すイメージ図である。
【
図4】第1実施形態に係る顔画像処理装置の装置本体を機能的に分類した構成の一例を示すブロック図である。
【
図5】第1実施形態に係る顔画像処理プログラムによる処理の流れの一例を示すフローチャートである。
【
図6】第2実施形態に係る顔画像処理装置の装置本体を機能的に分類した構成の一例を示すブロック図である。
【
図7】第2実施形態に係る顔画像処理プログラムによる処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【0019】
以下、図面を参照して開示の技術に係る実施形態を説明する。
【0020】
(第1実施形態)
本実施形態は、人物の頭部を撮影した撮影画像を用いて人物の3次元顔形状モデルのパラメータを推定する場合の一例を説明する。また、本実施形態では、人物の3次元顔形状モデルのパラメータの一例として、移動体としての自動車等の車両の乗員の3次元顔形状モデルのパラメータを、顔画像処理装置により推定する。
【0021】
図1に、開示の技術の顔画像処理装置として動作する顔画像処理装置10を、コンピュータにより実現する構成の一例を示す。
【0022】
図1に示すように、顔画像処理装置10として動作するコンピュータは、プロセッサとしてのCPU(Central Processing Unit)12A、RAM(Random Access Memory)12B、およびROM(Read Only Memory)12Cを備えた装置本体12を含んで構成されている。ROM12Cは、3次元顔形状モデルのパラメータを推定する各種機能を実現するための顔画像処理プログラム12Pを含んでいる。装置本体12は、入出力インタフェース(以下、I/Oという。)12Dを備えており、CPU12A、RAM12B、ROM12C、及びI/O12Dは各々コマンド及びデータを授受可能なようにバス12Eを介して接続されている。また、I/O12Dには、キーボード及びマウス等の入力部12F、ディスプレイ等の表示部12G、及び外部装置と通信するための通信部12Hが接続されている。更に、I/O12Dには、乗員の頭部を照明する近赤外LED(Light Emitting Diode)等の照明部14、乗員の頭部を撮影するカメラ16、及び乗員の頭部までの距離を計測する距離センサ18が接続されている。なお、図示は省略したが、各種データを格納可能な不揮発性メモリをI/O12Dに接続することができる。
【0023】
装置本体12は、顔画像処理プログラム12PがROM12Cから読み出されてRAM12Bに展開され、RAM12Bに展開された顔画像処理プログラム12PがCPU12Aによって実行されることで、顔画像処理装置10として動作する。なお、顔画像処理プログラム12Pは、3次元顔形状モデルのパラメータを推定する各種機能を実現するためのプロセスを含む(詳細は後述)。
【0024】
図2に、顔画像処理装置10として、車両に搭載された電子機器の配置の一例を示す。
【0025】
図2に示すように、車両には、顔画像処理装置10の装置本体12、乗員OPを照明する照明部14、乗員OPの頭部を撮影するカメラ16、及び距離センサ18が搭載されている。本実施形態の配置例では、ステアリング4を保持するコラム5の上部に照明部14及びカメラ16を設置し、下部に距離センサ18を設置した場合を示している。
【0026】
図3に、顔画像処理装置10における座標系の一例を示す。
【0027】
位置を特定する場合の座標系は、中心とする物品をどのように扱うかによって相違する。例えば、人物の顔を撮影するカメラを中心とした座標系、撮影画像を中心とした座標系、及び人物の顔を中心とした座標系が挙げられる。以下の説明では、カメラを中心とした座標系をカメラ座標系といい、撮影画像を中心とした座標系を画像座標系といい、顔を中心とした座標系を顔モデル座標系という。
図3に示す例は、本実施形態に係る顔画像処理装置10に用いるカメラ座標系、顔モデル座標系、及び画像座標系の関係の一例を示している。
【0028】
カメラ座標系はカメラ16から見て右方がX方向、下方がY方向、前方がZ方向であり、原点はキャリブレーションにより導出される点である。カメラ座標系は、画像の左上を原点とする画像座標系とx軸とy軸とz軸の方向が一致するように定めてある。
【0029】
顔モデル座標系は、顔の中で目及び口などの部位の位置を表現したりするための座標系である。例えば、顔画像処理では、目及び口などの顔の特徴的な部位の3次元位置が記述された3次元顔形状モデルと呼ばれるデータを用い、このデータを画像に投影し、目及び口の位置を合わせることで顔の位置及び姿勢を推定する手法が一般的に用いられる。この3次元顔形状モデルに設定されている座標系の一例が顔モデル座標系であり、顔から見て左方がXm方向、下方がYm方向、後方がZm方向である。
【0030】
なお、カメラ座標系と画像座標系の相互関係は、予め定められており、カメラ座標系と画像座標系の間で、座標変換が可能になっている。また、上述した顔の位置及び姿勢の推定値を用いてカメラ座標系と顔モデル座標系の相互関係を特定可能である。
【0031】
一方、
図1に示すように、ROM12Cは、3次元顔形状モデル12Qを含んでいる。本実施形態に係る3次元顔形状モデル12Qは、平均形状と基底の線形和で構成されており、上記基底は個人差基底(時間変化しない成分)と、表情基底(時間変化する成分)とが分離されている。
【0032】
即ち、本実施形態に係る3次元顔形状モデル12Qは、次の(1)式によって表される。
【0033】
【0034】
また、3次元顔形状モデル12Qのカメラ座標系への変換は次の(2)式によって行われる。なお、(2)式におけるRは回転行列を表し、tは並進ベクトルを表す。
【0035】
【0036】
図4に、本実施形態に係る顔画像処理装置10の装置本体12を機能的構成に分類したブロック構成の一例を示す。
【0037】
図4に示すように、装置本体12は、カメラ等の撮影部101、画像座標系座標値導出部102、カメラ座標系座標値導出部103、パラメータ導出部104、及び出力部105の各機能部を含む。
【0038】
撮影部101は、人物の顔を撮影して撮影画像を取得し、取得した撮影画像を画像座標系座標値導出部102へ出力する機能部である。本実施形態では、撮影部101の一例として撮影装置の一例であるカメラ16を用いている。カメラ16は、車両の乗員OPの頭部を撮影し、撮影画像を出力する。なお、本実施形態では、カメラ16としてモノクロ画像を撮影するカメラを適用しているが、これに限るものではなく、カメラ16としてカラー画像を撮影するカメラを適用する形態としてもよい。
【0039】
また、画像座標系座標値導出部102は、上記撮影画像の上記人物の顔の器官の特徴点における、各々画像座標系の水平方向の座標値であるx座標値及び垂直方向の座標値であるy座標値を検出する。また、画像座標系座標値導出部102は、画像座標系の奥行き方向の座標値であるz座標値を推定する。画像座標系座標値導出部102は、以上のx座標値及びy座標値の検出と、z座標値の推定とにより画像座標系の3次元座標値を導出する。なお、本実施形態に係る画像座標系座標値導出部102では、x座標値及びy座標値の検出と並行して、深層学習を用いてz座標値を推定することにより導出する。
【0040】
また、カメラ座標系座標値導出部103は、画像座標系座標値導出部102によって導出された画像座標系の3次元座標値から、カメラ座標系の3次元座標値を導出する。
【0041】
また、パラメータ導出部104は、カメラ座標系座標値導出部103によって導出されたカメラ座標系の3次元座標値を3次元顔形状モデル12Qに適用して、3次元顔形状モデル12Qのカメラ座標系におけるモデルパラメータを導出する。本実施形態では、上記モデルパラメータとして、3次元顔形状モデル12Qの個人差基底のパラメータ、表情基底のパラメータ、及びカメラ16から見た上記人物の顔の位置及び姿勢を示す位置姿勢パラメータを適用している。
【0042】
更に、出力部105は、パラメータ導出部104で導出された人物の3次元顔形状モデル12Qのモデルパラメータを示す情報を出力する。
【0043】
次に、3次元顔形状モデル12Qのパラメータを推定する顔画像処理装置10の動作を説明する。本実施形態では、顔画像処理装置10は、コンピュータの装置本体12によって動作される。
【0044】
図5には、コンピュータにより実現した顔画像処理装置10における顔画像処理プログラム12Pによる処理の流れの一例が示されている。装置本体12では、顔画像処理プログラム12PがROM12Cから読み出されてRAM12Bに展開され、RAM12Bに展開された顔画像処理プログラム12PをCPU12Aが実行する。
【0045】
まず、ステップS100では、CPU12Aにより、カメラ16により撮影された撮影画像の取得処理が実行される。ステップS100の処理は、
図4に示す撮影部101から出力される撮影画像を取得する動作の一例である。
【0046】
次のステップS102では、CPU12Aが、取得した撮影画像から人物(本実施形態では、乗員OP)の顔を囲む矩形領域を検出する。本実施形態では、上記矩形領域の検出を、「P. Viola and M. Jones, “Rapid Object Detection using a Boosted Cascade of Simple Features,” Conference on Computer Vision and Pattern Recognition(CVPR) 2001.」に記載の技術によって行っている。なお、この顔を囲む矩形領域を検出する技術は広く一般に実施されている技術であるため、これ以上の、ここでの説明は省略する。
【0047】
次のステップS104では、CPU12Aが、検出した顔を囲む矩形領域の内部における顔の複数の器官の特徴点を検出する。なお、本実施形態では、複数の器官として、目及び口の2つの器官を適用しているが、これに限るものではない。これらの器官に加えて、鼻、耳等の他の器官を含めて、以上の器官の複数の組み合わせを適用する形態としてもよい。
【0048】
次のステップS106では、CPU12Aが、検出した各器官の特徴点の画像座標系におけるx座標値及びy座標値を検出し、かつ当該画像座標系におけるz座標値を推定することで、各器官の特徴点の画像座標系における3次元座標値を導出する。本実施形態では、上記画像座標系における3次元座標値の導出を、「Y. Sun, X. Wang and X. Tang, “Deep Convolutional Network Cascade for Facial Point Detection,” Conference on Computer Vision and Pattern Recognition(CVPR) 2013.」に記載の技術を利用して行っている。この技術では、深層学習により各特徴点のx座標値及びy座標値を検出しているが、z座標値を学習データに加えることで、z座標値の推定も可能となる。なお、この画像座標系の3次元座標値を導出する技術も広く一般に実施されている技術であるため、これ以上の、ここでの説明は省略する。
【0049】
次のステップS112では、CPU12Aが、ステップS106の処理で求めた画像座標系における3次元座標値からカメラ座標系の3次元座標値を導出する。本実施形態では、上記カメラ座標系の3次元座標値を次の(3)式~(5)式を用いた演算により導出している。なお、本実施形態では、(3)式における顔までの仮の距離dとして、距離センサ18によって得られる、カメラ16から乗員OPまでの平均的な距離を適用している。
【0050】
【0051】
次のステップS114では、CPU12Aが、ステップS112の処理で求めたカメラ座標系の3次元座標値を3次元顔形状モデル12Qに適用して、3次元顔形状モデル12Qのカメラ座標系における位置姿勢パラメータを推定する。
【0052】
本実施形態では、位置姿勢パラメータの推定に先立ち、ステップS106の処理によって導出した画像座標系における顔画像の各特徴点の3次元座標値と、カメラ座標系に変換した、対応する3次元顔形状モデル12Qの頂点の3次元座標値と、を用いて、観測点と3次元顔形状モデル12Qの当てはまり度合いを数値化する評価関数gを定義する。
【0053】
例えば、以下の(6)式に示すように観測点とモデル点の距離誤差の2乗和を評価関数gとすることができる。
【0054】
【0055】
(6)式をベクトルの成分で表現すると、評価関数gは、以下の(7)式で示されるものになる。
【0056】
【0057】
ここで、回転行列Rの成分r11,・・・,r33は以下の(8)式で表される。
【0058】
【0059】
求めたい3次元顔形状モデル12Qのパラメータの値は評価関数gを最小化する値である。そのため、求めたいパラメータをαとした場合に、評価関数gをαで偏微分した(∂g/∂α)を計算し、 方程式(∂g/∂α)=0がαで解ける場合には(∂g/∂α)=0の解が求めたいαになり、方程式(∂g/∂α)=0がαで解けない場合は最急降下法などの最適化手法で得られた値が求めたいαになる。
【0060】
評価関数gを並進ベクトルt=(X0,Y0,Z0)Tの成分X0,Y0,Z0で偏微分してそれぞれを=0と置いた式は解くことができ、位置のパラメータである並進ベクトルt=(X0,Y0,Z0)Tは以下の(9)式~(11)式で計算することができる。
【0061】
【0062】
評価関数gを姿勢のパラメータである回転行列Rの回転角Ψ,θ,φで偏微分してそれぞれを=0と置いた式は解くことができない。そのため、姿勢のパラメータである回転行列Rの回転角Ψ,θ,φは、(12)式~(14)式の偏微分式を、例えば最急降下法のような繰り返し計算による最適化に適用して求める。
【0063】
【0064】
ここで、hx
k,hy
k,hz
kは以下の(15)式~(17)式で表される値である。
【0065】
【0066】
次のステップS116では、CPU12Aが、ステップS112の処理で求めたカメラ座標系の3次元座標値を3次元顔形状モデル12Qに適用して、3次元顔形状モデル12Qのカメラ座標系における個人差基底のパラメータを推定する。本実施形態では、次の(18)式によって個人差基底のパラメータpidを算出する。なお、(18)式におけるpjはpid
jに読み替えるものとする。
【0067】
【0068】
ここで、lx
k,j,ly
k,j,lz
k,jは以下の(19)式~(21)式で表される値である。
【0069】
【0070】
次のステップS118では、CPU12Aが、ステップS112の処理で求めたカメラ座標系の3次元座標値を3次元顔形状モデル12Qに適用して、3次元顔形状モデル12Qのカメラ座標系における表情基底のパラメータを推定する。本実施形態では、次の(22)式によって表情基底のパラメータpexpを算出する。なお、(22)式におけるpjはpexp
jに読み替えるものとする。
【0071】
【0072】
次のステップS120では、CPU12Aが、ステップS114~ステップS118の処理によって導出された各種パラメータの推定値を出力し、本処理ルーチンを終了する。
【0073】
なお、ステップS120の処理によって出力された各種パラメータの推定値は、車両の乗員の位置姿勢の推定、顔画像トラッキング等に用いられる。
【0074】
以上説明したように、本実施形態の顔画像処理装置によれば、人物の顔を撮影して得られた画像の当該顔の器官の特徴点における、各々画像座標系の水平方向の座標値であるx座標値及び垂直方向の座標値であるy座標値を検出し、かつ、前記画像座標系の奥行き方向の座標値であるz座標値を推定することで当該画像座標系の3次元座標値を導出し、導出した前記画像座標系の3次元座標値から、カメラ座標系の3次元座標値を導出し、導出した前記カメラ座標系の3次元座標値を予め定められた3次元顔形状モデルに適用して、当該3次元顔形状モデルの前記カメラ座標系におけるモデルパラメータを導出する。これによって、画像観測点と3次元顔形状モデルの画像投影点の2次元空間での距離誤差を最小化するような最適化計算を行う場合や、3次元センサを用いる場合に比較して、3次元顔形状モデルのパラメータを精度よく推定することができる。
【0075】
(第2実施形態)
次に、第2実施形態を説明する。第2実施形態は、顔までの距離を推定する処理、及び画像座標系におけるz座標値を補正する処理が付加されると共に、顔の各器官の特徴点における3次元座標値の距離誤差の評価関数gの各々に独立した重みを設定する点が第1実施形態と異なっている。なお、第2実施形態は、第1実施形態と略同様の構成のため、同一部分には同一符号を付して詳細な説明を省略する。
【0076】
まず、第2実施形態に係る顔画像処理装置10の装置本体12の機能的構成について説明する。
【0077】
図6に示すように、第2実施形態に係る顔画像処理装置10の装置本体12は、座標補正部106、顔距離推定部107、及び重み設定部108が付加されている点のみが第1実施形態に係る顔画像処理装置10の装置本体12と異なっている。
【0078】
座標補正部106は、画像座標系座標値導出部102によって導出されたz座標値を、上記撮影画像における顔の位置に応じて補正する。
【0079】
また、顔距離推定部107は、人物の顔までの距離を推定する。本実施形態に係る顔距離推定部107では、人物の顔までの距離の推定を、3次元顔形状モデル12Qの拡大縮小係数を求め、当該拡大縮小係数で顔までの仮の距離dを除算することで、より精度よく人物の顔までの距離を導出するようにしている。
【0080】
更に、重み設定部108は、顔の器官の特徴点における、3次元座標の誤差に対する評価関数gのそれぞれに独立した重みを設定する。
【0081】
次に、3次元顔形状モデル12Qのパラメータを推定する場合の第2実施形態に係る顔画像処理装置10の動作を説明する。本実施形態では、顔画像処理装置10は、コンピュータの装置本体12によって動作される。
【0082】
図7には、コンピュータにより実現した第2実施形態に係る顔画像処理装置10における顔画像処理プログラム12Pによる処理の流れの一例が示されている。第2実施形態においても、装置本体12では、顔画像処理プログラム12PがROM12Cから読み出されてRAM12Bに展開され、RAM12Bに展開された顔画像処理プログラム12PをCPU12Aが実行することは第1実施形態と同様である。なお、
図7における
図5と同様の処理を行うステップには
図5と同一のステップ番号を付して、その説明を省略する。
【0083】
図7に示すように、本第2実施形態に係る顔画像処理は、ステップS108及びステップS110の処理が新たに含まれている点、及びステップS114の処理に代えてステップS115の処理が適用されている点が上記第1実施形態に係る顔画像処理と異なっている。
【0084】
ステップS108では、CPU12Aは、ステップS106の処理によって導出した画像座標系における3次元座標値のうちのz座標値の補正を行う。
【0085】
即ち、ステップS106の処理では、顔の矩形領域の画像中での位置を考慮していないので、顔が中心から外れた場合にz座標の推定に誤差が生じる場合がある。そこで、ステップS108では、以下の(23)式で各画像特徴点のz座標の推定値の誤差を補正する。
【0086】
【0087】
ステップS110では、CPU12Aは、人物の顔までの距離を推定する。
【0088】
即ち、3次元顔形状モデル12Qの拡大縮小係数をsとし、以下の(24)式で拡大縮小係数sを求める。初期設定されている顔までの仮の距離dに対し、当該拡大縮小係数sで除算することで3次元顔形状モデル12Qのサイズを基準として顔までの距離を求めることができる。
【0089】
【0090】
ステップS115では、CPU12Aは、顔の器官の特徴点における3次元座標の誤差に対する評価関数gのそれぞれに独立した重みを設定する。
【0091】
即ち、(7)式で示した距離誤差の評価関数gに対して、以下の(25)式に示すように重み係数ak,bk,ckを設定する。ak,bk,ckは各特徴点の座標ごとに設定することができ、ある特徴点における誤差を他の特徴点よりも小さくしたい場合にはその特徴点に設定している重み係数を他よりも大きくすることで、その特徴点の誤差が、より小さくなるようにパラメータが推定される。
【0092】
【0093】
なお、上記各実施形態において、プロセッサとは広義的なプロセッサを指し、汎用的なプロセッサ(例えば、CPU: Central Processing Unit、等)や、専用のプロセッサ(例えば、GPU: Graphics Processing Unit、ASIC: Application Specific Integrated Circuit、FPGA: Field Programmable Gate Array、プログラマブル論理デバイス、等)を含むものである。
【0094】
また、上記各実施形態におけるプロセッサの動作は、1つのプロセッサによって成すのみでなく、物理的に離れた位置に存在する複数のプロセッサが協働して成すものであってもよい。また、プロセッサの各動作の順序は、上記各実施形態において記載した順序のみに限定されるものではなく、適宜変更してもよい。
【0095】
以上、実施形態として顔画像処理装置を例示して説明した。実施形態は、コンピュータを、顔画像処理装置が備える各部として機能させるためのプログラムの形態としてもよい。実施形態は、このプログラムを記憶したコンピュータが読み取り可能な記憶媒体の形態としてもよい。
【0096】
また、上記各実施形態では、3次元顔形状モデル12Qが、平均形状と基底との線形和で構成されている一例を説明したが、開示の技術は、これに限定するものではない。例えば、3次元顔形状モデル12Qが、平均形状と基底とのテンソル積で構成されている形態としてもよい。
【0097】
また、上記各実施形態では、本発明を車両の乗員の顔を対象として適用する一例を説明したが、開示の技術は、これに限定するものではない。例えば、パーソナル・コンピュータの利用者の顔、スマートフォンの利用者の顔等を対象として本発明を適用する形態としてもよい。
【0098】
その他、上記各実施形態で説明した顔画像処理装置の構成は、一例であり、主旨を逸脱しない範囲内において状況に応じて変更してもよい。
【0099】
また、上記各実施形態で説明した顔画像処理プログラムの処理の流れも、一例であり、主旨を逸脱しない範囲内において不要なステップを削除したり、新たなステップを追加したり、処理順序を入れ替えたりしてもよい。
【0100】
また、上記各実施形態で説明した各種数式は一例であり、各数式ともに種々の変形を加えてもよいことは言うまでもない。
【0101】
また、上記各実施形態では、顔画像処理プログラムを実行することにより、実施形態に係る処理がコンピュータを利用してソフトウェア構成により実現される場合について説明したが、これに限らない。実施形態は、例えば、ハードウェア構成や、ハードウェア構成とソフトウェア構成との組み合わせによって実現してもよい。
【符号の説明】
【0102】
10 顔画像処理装置
12 装置本体
12A CPU
12B RAM
12C ROM
12D I/O
12F 入力部
12G 表示部
12H 通信部
12P 顔画像処理プログラム
12Q 3次元顔形状モデル
14 照明部
16 カメラ
18 距離センサ
101 撮影部
102 画像座標系座標値導出部
103 カメラ座標系座標値導出部
104 パラメータ導出部
105 出力部
106 座標補正部
107 顔距離推定部
108 重み設定部