(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-15
(45)【発行日】2023-12-25
(54)【発明の名称】顔モデルパラメータ推定装置、顔モデルパラメータ推定方法及び顔モデルパラメータ推定プログラム
(51)【国際特許分類】
G06T 7/00 20170101AFI20231218BHJP
【FI】
G06T7/00 660A
(21)【出願番号】P 2021019659
(22)【出願日】2021-02-10
【審査請求日】2023-07-20
(73)【特許権者】
【識別番号】000003609
【氏名又は名称】株式会社豊田中央研究所
(73)【特許権者】
【識別番号】000000011
【氏名又は名称】株式会社アイシン
(74)【代理人】
【識別番号】110001519
【氏名又は名称】弁理士法人太陽国際特許事務所
(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)
【文献】H. M. REHAN AFZAL et al.,3D Face Reconstruction From Single 2D Image Using Distinctive Features,[online],2020年10月13日,https://ieeexplore.ieee.org/document/9210569,検索日:2023年11月09日
【文献】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/00
(57)【特許請求の範囲】
【請求項1】
人物の顔を撮影して得られた画像の当該顔の器官の特徴点における、各々画像座標系の水平方向の座標値であるx座標値及び垂直方向の座標値であるy座標値を検出し、かつ、前記画像座標系の奥行き方向の座標値であるz座標値を推定することで当該画像座標系の3次元座標値を導出する画像座標系座標値導出部と、
前記画像座標系座標値導出部によって導出された前記画像座標系の3次元座標値から、カメラ座標系の3次元座標値を導出するカメラ座標系座標値導出部と、
前記カメラ座標系座標値導出部によって導出された前記カメラ座標系の3次元座標値を予め定められた3次元顔形状モデルに適用して、当該3次元顔形状モデルの前記カメラ座標系における位置姿勢パラメータを導出するパラメータ導出部と、
前記パラメータ導出部によって導出された前記位置姿勢パラメータと、真のパラメータとの位置姿勢誤差及び形状変形パラメータを共に推定する誤差推定部と、
を備える、顔モデルパラメータ推定装置。
【請求項2】
前記位置姿勢パラメータは、3次元顔形状モデルの前記カメラ座標系における並進パラメータ、回転パラメータ、及び拡大縮小パラメータで構成される、請求項1に記載の顔モデルパラメータ推定装置。
【請求項3】
前記位置姿勢誤差は、導出された前記並進パラメータ、前記回転パラメータ、及び前記拡大縮小パラメータと、それぞれの真のパラメータとの誤差である並進パラメータ誤差、回転パラメータ誤差及び拡大縮小パラメータ誤差で構成される、請求項2に記載の顔モデルパラメータ推定装置。
【請求項4】
前記3次元顔形状モデルは、平均形状と基底との線形和で構成されている、請求項1~3のいずれか1項に記載の顔モデルパラメータ推定装置。
【請求項5】
前記基底は、時間変化しない成分である個人差基底と、時間変化する成分である表情基底とが分離されている、請求項4に記載の顔モデルパラメータ推定装置。
【請求項6】
前記形状変形パラメータは、前記個人差基底のパラメータ、及び前記表情基底のパラメータを含む、請求項5に記載の顔モデルパラメータ推定装置。
【請求項7】
人物の顔を撮影して得られた画像の当該顔の器官の特徴点における、各々画像座標系の水平方向の座標値であるx座標値及び垂直方向の座標値であるy座標値を検出し、かつ、前記画像座標系の奥行き方向の座標値であるz座標値を推定することで当該画像座標系の3次元座標値を導出し、
導出された前記画像座標系の3次元座標値から、カメラ座標系の3次元座標値を導出し、
導出された前記カメラ座標系の3次元座標値を予め定められた3次元顔形状モデルに適用して、当該3次元顔形状モデルの前記カメラ座標系における位置姿勢パラメータを導出し、
導出された前記位置姿勢パラメータと、真のパラメータとの位置姿勢誤差及び形状変形パラメータを共に推定する
処理をコンピュータが実行する、顔モデルパラメータ推定方法。
【請求項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】
3次元顔形状モデルのパラメータを推定する際に対象の形状は不明であるので、平均的な形状でパラメータを推定すると、3次元顔形状モデルの位置及び姿勢に関する位置姿勢パラメータには誤差が生じる。さらに、位置姿勢に関するパラメータに誤差が生じている状態では、平均的な形状からの変形に関するパラメータである形状変形パラメータの推定にも誤差が生じる。
【0007】
本発明は、上記の点に鑑みてなされたものであり、3次元顔形状モデルのパラメータを精度よく推定することができる顔モデルパラメータ推定装置、顔モデルパラメータ推定方法及び顔モデルパラメータ推定プログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
請求項1の顔モデルパラメータ推定装置は、人物の顔を撮影して得られた画像の当該顔の器官の特徴点における、各々画像座標系の水平方向の座標値であるx座標値及び垂直方向の座標値であるy座標値を検出し、かつ、前記画像座標系の奥行き方向の座標値であるz座標値を推定することで当該画像座標系の3次元座標値を導出する画像座標系座標値導出部と、前記画像座標系座標値導出部によって導出された前記画像座標系の3次元座標値から、カメラ座標系の3次元座標値を導出するカメラ座標系座標値導出部と、前記カメラ座標系座標値導出部によって導出された前記カメラ座標系の3次元座標値を予め定められた3次元顔形状モデルに適用して、当該3次元顔形状モデルの前記カメラ座標系における位置姿勢パラメータを導出するパラメータ導出部と、前記パラメータ導出部によって導出された前記位置姿勢パラメータと、真のパラメータとの位置姿勢誤差及び形状変形パラメータを共に推定する誤差推定部と、を備える。
【0009】
請求項2の顔モデルパラメータ推定装置は、請求項1の顔モデルパラメータ推定装置であって、前記位置姿勢パラメータは、3次元顔形状モデルの前記カメラ座標系における並進パラメータ、回転パラメータ、及び拡大縮小パラメータで構成される。
【0010】
請求項3の顔モデルパラメータ推定装置は、請求項2の顔モデルパラメータ推定装置であって、前記位置姿勢誤差は、導出された前記並進パラメータ、前記回転パラメータ、及び前記拡大縮小パラメータと、それぞれの真のパラメータとの誤差である並進パラメータ誤差、回転パラメータ誤差及び拡大縮小パラメータ誤差で構成される。
【0011】
請求項4の顔モデルパラメータ推定装置は、請求項1~3のいずれか1項の顔モデルパラメータ推定装置であって、前記3次元顔形状モデルは、平均形状と基底との線形和で構成されている。
【0012】
請求項5の顔モデルパラメータ推定装置は、請求項4の顔モデルパラメータ推定装置であって、前記基底は、時間変化しない成分である個人差基底と、時間変化する成分である表情基底とが分離されている。
【0013】
請求項6の顔モデルパラメータ推定装置は、請求項5の顔モデルパラメータ推定装置であって、前記形状変形パラメータは、前記個人差基底のパラメータ、及び前記表情基底のパラメータを含む。
【0014】
請求項7の顔モデルパラメータ推定方法は、人物の顔を撮影して得られた画像の当該顔の器官の特徴点における、各々画像座標系の水平方向の座標値であるx座標値及び垂直方向の座標値であるy座標値を検出し、かつ、前記画像座標系の奥行き方向の座標値であるz座標値を推定することで当該画像座標系の3次元座標値を導出し、導出された前記画像座標系の3次元座標値から、カメラ座標系の3次元座標値を導出し、導出された前記カメラ座標系の3次元座標値を予め定められた3次元顔形状モデルに適用して、当該3次元顔形状モデルの前記カメラ座標系における位置姿勢パラメータを導出し、導出された前記位置姿勢パラメータと、真のパラメータとの位置姿勢誤差及び形状変形パラメータを共に推定する処理をコンピュータが実行する、顔モデルパラメータ推定方法である。
【0015】
請求項8の顔モデルパラメータ推定プログラムは、人物の顔を撮影して得られた画像の当該顔の器官の特徴点における、各々画像座標系の水平方向の座標値であるx座標値及び垂直方向の座標値であるy座標値を検出し、かつ、前記画像座標系の奥行き方向の座標値であるz座標値を推定することで当該画像座標系の3次元座標値を導出し、導出された前記画像座標系の3次元座標値から、カメラ座標系の3次元座標値を導出し、導出された前記カメラ座標系の3次元座標値を予め定められた3次元顔形状モデルに適用して、当該3次元顔形状モデルの前記カメラ座標系における位置姿勢パラメータを導出し、導出された前記位置姿勢パラメータと、真のパラメータとの位置姿勢誤差及び形状変形パラメータを共に推定する処理をコンピュータに実行させる、顔モデルパラメータ推定プログラムである。
【発明の効果】
【0016】
本開示によれば、位置及び姿勢に関する位置姿勢パラメータと、形状変形パラメータとを一度に推定することで、3次元顔形状モデルのパラメータを精度よく推定することができる顔モデルパラメータ推定装置及び顔モデルパラメータ推定プログラムを提供することができる。
【図面の簡単な説明】
【0017】
【
図1】実施形態に係る顔画像処理装置をコンピュータにより実現する構成の一例を示すブロック図である。
【
図2】実施形態に係る顔画像処理装置の電子機器の配置の一例を示すイメージ図である。
【
図3】実施形態に係る顔画像処理装置における座標系の一例を示すイメージ図である。
【
図4】実施形態に係る顔画像処理装置の装置本体を機能的に分類した構成の一例を示すブロック図である。
【
図5】実施形態に係る顔モデルパラメータ推定プログラムによる処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【0018】
以下、本発明の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一または等価な構成要素および部分には同一の参照符号を付与している。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
【0019】
本実施形態は、人物の頭部を撮影した撮影画像を用いて人物の3次元顔形状モデルのパラメータを推定する場合の一例を説明する。また、本実施形態では、人物の3次元顔形状モデルのパラメータの一例として、移動体としての自動車等の車両の乗員の3次元顔形状モデルのパラメータを、顔モデルパラメータ推定装置により推定する。
【0020】
図1に、開示の技術の顔モデルパラメータ推定装置として動作する顔モデルパラメータ推定装置10を、コンピュータにより実現する構成の一例を示す。
【0021】
図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に接続することができる。
【0022】
装置本体12は、顔モデルパラメータ推定プログラム12PがROM12Cから読み出されてRAM12Bに展開され、RAM12Bに展開された顔モデルパラメータ推定プログラム12PがCPU12Aによって実行されることで、顔モデルパラメータ推定装置10として動作する。なお、顔モデルパラメータ推定プログラム12Pは、3次元顔形状モデルのパラメータを推定する各種機能を実現するためのプロセスを含む。
【0023】
図2に、顔モデルパラメータ推定装置10として、車両に搭載された電子機器の配置の一例を示す。
【0024】
図2に示すように、車両には、顔モデルパラメータ推定装置10の装置本体12、乗員OPを照明する照明部14、乗員OPの頭部を撮影するカメラ16、及び距離センサ18が搭載されている。本実施形態の配置例では、ステアリング4を保持するコラム5の上部に照明部14及びカメラ16を設置し、下部に距離センサ18を設置した場合を示している。
【0025】
図3に、顔モデルパラメータ推定装置10における座標系の一例を示す。
【0026】
位置を特定する場合の座標系は、中心とする物品をどのように扱うかによって相違する。例えば、人物の顔を撮影するカメラを中心とした座標系、撮影画像を中心とした座標系、及び人物の顔を中心とした座標系が挙げられる。以下の説明では、カメラを中心とした座標系をカメラ座標系といい、撮影画像を中心とした座標系を画像座標系といい、顔を中心とした座標系を顔モデル座標系という。
図3に示す例は、本実施形態に係る顔モデルパラメータ推定装置10に用いるカメラ座標系、顔モデル座標系、及び画像座標系の関係の一例を示している。
【0027】
カメラ座標系はカメラ16から見て右方がX方向、下方がY方向、前方がZ方向であり、原点はキャリブレーションにより導出される点である。カメラ座標系は、画像の左上を原点とする画像座標系とx軸とy軸とz軸の方向が一致するように定めてある。
【0028】
顔モデル座標系は、顔の中で目及び口などの部位の位置を表現したりするための座標系である。例えば、顔画像処理では、目及び口などの顔の特徴的な部位の3次元位置が記述された3次元顔形状モデルと呼ばれるデータを用い、このデータを画像に投影し、目及び口の位置を合わせることで顔の位置及び姿勢を推定する手法が一般的に用いられる。この3次元顔形状モデルに設定されている座標系の一例が顔モデル座標系であり、顔から見て左方がXm方向、下方がYm方向、後方がZm方向である。
【0029】
なお、カメラ座標系と画像座標系の相互関係は、予め定められており、カメラ座標系と画像座標系の間で、座標変換が可能になっている。また、上述した顔の位置及び姿勢の推定値を用いてカメラ座標系と顔モデル座標系の相互関係を特定可能である。
【0030】
一方、
図1に示すように、ROM12Cは、3次元顔形状モデル12Qを含んでいる。本実施形態に係る3次元顔形状モデル12Qは、平均形状と基底の線形和で構成されており、上記基底は個人差基底(時間変化しない成分)と、表情基底(時間変化する成分)とが分離されている。即ち、本実施形態に係る3次元顔形状モデル12Qは、次の(1)式によって表される。
【0031】
【0032】
上記数式(1)の各変数の意味は以下の通りである。
i:頂点番号(0~L-1)
L:頂点数
xi:i番目の頂点座標(3次元)
xm
i:平均形状のi番目の頂点座標(3次元)
Eid
i:平均形状のi番目の頂点座標に対応する個人差基底ベクトルをMid個並べた行列(3×Mid次元)
pid:個人差基底のパラメータベクトル(Mid次元)
Eexp
i:平均形状のi番目の頂点座標に対応する表情基底ベクトルをMid個並べた行列(3×Mexp次元)
pexp:表情基底のパラメータベクトル(Mexp次元)
【0033】
数式(1)の3次元顔形状モデル12Qに、回転、並進及び拡大縮小を施したものが以下の数式(2)である。
【0034】
【0035】
上記数式(2)において、sは拡大縮小係数(1次元)、Rは回転行列(3×3次元)、tは並進ベクトル(3次元)である。回転行列Rは、例えば、以下の数式(3)で示されるような回転パラメータで表現される。
【0036】
【0037】
数式(3)において、ψ、θ、φは、それぞれカメラ中心座標系における、X軸、Y軸、Z軸回りの回転角度である。
【0038】
図4に、本実施形態に係る顔モデルパラメータ推定装置10の装置本体12を機能的構成に分類したブロック構成の一例を示す。
【0039】
図4に示すように、顔モデルパラメータ推定装置10は、カメラ等の撮影部101、画像座標系座標値導出部102、カメラ座標系座標値導出部103、パラメータ導出部104、誤差推定部105、及び出力部106の各機能部を含む。
【0040】
撮影部101は、人物の顔を撮影して撮影画像を取得し、取得した撮影画像を画像座標系座標値導出部102へ出力する機能部である。本実施形態では、撮影部101の一例として撮影装置の一例であるカメラ16を用いている。カメラ16は、車両の乗員OPの頭部を撮影し、撮影画像を出力する。本実施形態では、カメラ16が撮影した画像と、距離センサ18により出力される距離情報とを組み合わせた、テクスチャ付き3Dデータが撮影部101から出力される。なお、本実施形態では、カメラ16としてモノクロ画像を撮影するカメラを適用しているが、これに限るものではなく、カメラ16としてカラー画像を撮影するカメラを適用する形態としてもよい。
【0041】
画像座標系座標値導出部102は、上記撮影画像の上記人物の顔の器官の特徴点における、各々画像座標系の水平方向の座標値であるx座標値及び垂直方向の座標値であるy座標値を検出する。画像座標系座標値導出部102は、撮影画像から特徴点を抽出する技術として任意の技術を用いることができる。例えば、画像座標系座標値導出部102は、「Vahid Kazemi and Josephine Sullivan, “One Millisecond Face Alignment with an Ensemble of Regression Trees”」に記載の技術によって、撮影画像から特徴点を抽出する。
【0042】
また、画像座標系座標値導出部102は、画像座標系の奥行き方向の座標値であるz座標値を推定する。画像座標系座標値導出部102は、以上のx座標値及びy座標値の検出と、z座標値の推定とにより画像座標系の3次元座標値を導出する。なお、本実施形態に係る画像座標系座標値導出部102では、x座標値及びy座標値の検出と並行して、深層学習を用いてz座標値を推定することにより導出する。
【0043】
カメラ座標系座標値導出部103は、画像座標系座標値導出部102によって導出された画像座標系の3次元座標値から、カメラ座標系の3次元座標値を導出する。
【0044】
パラメータ導出部104は、カメラ座標系座標値導出部103によって導出されたカメラ座標系の3次元座標値を3次元顔形状モデル12Qに適用して、3次元顔形状モデル12Qのカメラ座標系における位置姿勢パラメータを導出する。例えば、パラメータ導出部104は、位置姿勢パラメータとして、並進パラメータ、回転パラメータ、及び拡大縮小パラメータを導出する。
【0045】
誤差推定部105は、パラメータ導出部104が導出した位置姿勢パラメータと、真のパラメータとの誤差である位置姿勢誤差、及び形状変形パラメータを一度に推定する。具体的には、誤差推定部105は、パラメータ導出部104が導出した並進パラメータ、回転パラメータ、及び拡大縮小パラメータと、真のパラメータとの並進パラメータ誤差、回転パラメータ誤差及び拡大縮小パラメータ誤差、並びに形状変形パラメータを共に推定する。形状変形パラメータは、個人差基底のパラメータベクトルpid及び表情基底のパラメータベクトルpexpを含む。
【0046】
出力部106は、パラメータ導出部104で導出された人物の3次元顔形状モデル12Qのカメラ座標系における位置姿勢パラメータ及び形状変形パラメータを示す情報を出力する。また、出力部106は、誤差推定部105が推定した位置姿勢誤差を示す情報を出力する。
【0047】
次に、3次元顔形状モデル12Qのパラメータを推定する顔モデルパラメータ推定装置10の動作を説明する。本実施形態では、顔モデルパラメータ推定装置10は、コンピュータの装置本体12によって動作される。
【0048】
図5には、コンピュータにより実現した顔モデルパラメータ推定装置10における顔モデルパラメータ推定プログラム12Pによる処理の流れの一例が示されている。装置本体12では、顔モデルパラメータ推定プログラム12PがROM12Cから読み出されてRAM12Bに展開され、RAM12Bに展開された顔モデルパラメータ推定プログラム12PをCPU12Aが実行する。
【0049】
まず、CPU12Aは、カメラ16により撮影された撮影画像の取得処理を実行する(ステップS101)。ステップS101の処理は、
図4に示す撮影部101から出力される撮影画像を取得する動作の一例である。
【0050】
ステップS101に続いて、CPU12Aは、取得した撮影画像から顔の複数の器官の特徴点を検出する(ステップS102)。なお、本実施形態では、複数の器官として、目及び口の2つの器官を適用しているが、これに限るものではない。これらの器官に加えて、鼻、耳等の他の器官を含めて、以上の器官の複数の組み合わせを適用する形態としてもよい。本実施形態では、「Vahid Kazemi and Josephine Sullivan, “One Millisecond Face Alignment with an Ensemble of Regression Trees”」に記載の技術によって、撮影画像から特徴点を抽出する。
【0051】
ステップS102に続いて、CPU12Aは、検出した各器官の特徴点の画像座標系におけるx座標値及びy座標値を検出し、かつ当該画像座標系におけるz座標値を推定することで、各器官の特徴点の画像座標系における3次元座標値を導出する(ステップS103)。本実施形態では、上記画像座標系における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次元座標値を導出する技術も広く一般に実施されている技術であるため、これ以上の、ここでの説明は省略する。
【0052】
ステップS103に続いて、CPU12Aは、ステップS103の処理で求めた画像座標系における3次元座標値からカメラ座標系の3次元座標値を導出する(ステップS104)。本実施形態では、上記カメラ座標系の3次元座標値を次の数式(4)~(6)を用いた演算により導出している。
【0053】
【0054】
上記数式(4)~(6)の各変数の意味は以下の通りである。
k:観測点番号(0~N-1)
N:観測点の総数
Xo
k,Yo
k,Zo
k:カメラ座標系における観測点のxyz座標
xk,yk,zk:画像座標系における観測点のxyz座標
xc,yc:画像中心
f:ピクセル単位の焦点距離
d:顔までの仮の距離
【0055】
ステップS104に続いて、CPU12Aは、ステップS104の処理で求めたカメラ座標系の3次元座標値を3次元顔形状モデル12Qに適用する。そして、CPU12Aは、3次元顔形状モデル12Qの並進パラメータ、回転パラメータ、及び拡大縮小パラメータを導出する(ステップS105)。
【0056】
本実施形態では、並進パラメータである並進ベクトルt、回転パラメータである回転行列R、及び拡大縮小パラメータである拡大縮小係数sの導出には、以下の数式(7)で示される評価関数gが用いられる。
【0057】
【0058】
上記数式(7)において、
【数5】
は、k番目の観測点に対応する、顔形状モデルの頂点番号である。また、
【数6】
は、k番目の観測点に対応する、顔形状モデルの頂点座標である。
【0059】
数式(7)のs、R、tは、pid=pexp=0として、「S. Umeyama, “Least-squares estimation of transformation parameters between two point patterns”, IEEE Trans. PAMI, vol.13, no.4, April 1991.」で開示されているアルゴリズム(以下「Umeyamaのアルゴリズム」と称する)で求めることができる。
【0060】
拡大縮小係数s、回転行列R、及び並進ベクトルtが求まると、個人差基底のパラメータベクトルpid及び表情基底のパラメータベクトルpexpは、以下の数式(8)の連立方程式の最小二乗解として求まる。
【0061】
【0062】
数式(8)の最小二乗解は、以下の数式(9)となる。数式(9)において、Tは転置を表す。
【0063】
【0064】
拡大縮小係数s、回転行列R、及び並進ベクトルtを求める時点では、対象の形状は不明であるため、pid=pexp=0として、平均形状でs、R、tを求めると、推定されるs、R、tはいずれも誤差を含んでいる。上記数式(8)でpid及びpexpを求める際には、誤差を含んだs、R、tを用いて連立方程式を解いているので、pid及びpexpも誤差を含んでいる。s、R、tの推定とpid及びpexpの推定とを交互に行うと、各パラメータの値が正しい値に収束するとは限らず、場合によっては発散してしまう。
【0065】
そこで、本実施形態に係る顔モデルパラメータ推定装置10は、拡大縮小係数s、回転行列R、及び並進ベクトルtを推定した後で、拡大縮小パラメータ誤差ps、回転パラメータ誤差pr、並進パラメータ誤差pt、個人差基底のパラメータベクトルpid及び表情基底のパラメータベクトルpexpの推定を一度に行う。
【0066】
ステップS105に続いて、CPU12Aは、形状変形パラメータ、並進パラメータ誤差、回転パラメータ誤差、及び拡大縮小パラメータ誤差を一度に推定する(ステップS106)。上述したように、形状変形パラメータは、個人差基底のパラメータベクトルpid及び表情基底のパラメータベクトルpexpを含む。具体的には、CPU12Aは、ステップS106において以下の数式(10)の計算を行う。
【0067】
【0068】
上記数式(10)において、
【数10】
は、それぞれ、平均形状のi番目の頂点座標に対応する回転パラメータ誤差、並進パラメータ誤差、拡大縮小パラメータ誤差を計算するための基底ベクトルを3個並べた行列(3×3次元)である。また、p
r,p
t,p
sは、それぞれ、回転パラメータ誤差、並進パラメータ誤差、拡大縮小パラメータ誤差のパラメータベクトルである。回転パラメータ誤差及び並進パラメータ誤差のパラメータベクトルは3次元であり、拡大縮小パラメータ誤差のパラメータベクトルは1次元である。
【0069】
回転パラメータ誤差の基底ベクトルを3個並べた行列の構成を説明する。各頂点で以下の数式(11)を計算することで行列が構成される。
【0070】
【0071】
数式(11)において、Δψ,Δθ,Δφは、α=1/1000~1/100[rad]程度の微小角度とする。数式(10)を解いた後、prをα-1倍したものが回転パラメータ誤差となる。
【0072】
次に並進パラメータ誤差の基底ベクトルを3個並べた行列の構成を説明する。当該行列は、全ての頂点で以下の数式(12)を用いる。
【0073】
【0074】
次に拡大縮小パラメータ誤差の基底ベクトルを3個並べた行列の構成を説明する。当該行列は、全ての頂点で以下の数式(13)を用いる。
【0075】
【0076】
数式(10)の最小二乗解は、以下の数式(14)となる。ETのTは転置を表す。
【0077】
【0078】
数式(14)のpid及びpexpが、求める対象となる、正確な個人差パラメータ及び表情パラメータとなる。また、正確な並進パラメータ、回転パラメータ、及び拡大縮小パラメータは以下の数式(15)の通りとなる。
【0079】
まず回転パラメータについて説明する。回転パラメータは、まずUmeyamaのアルゴリズムを用いて回転行列Rを求めた後、数式(3)と照らし合わせることで、ψ、θ及びφを求めることができる。このように求めたψ、θ及びφの暫定値を、それぞれψ
tmp、θ
tmp及びφ
tmpとする。数式(14)で求めたp
rを
【数15】
とした場合、正確な回転パラメータψ、θ及びφは以下の数式(15)の通りとなる。
【0080】
【0081】
次に並進パラメータについて説明する。Umeyamaのアルゴリズムで求めた並進パラメータの暫定値をt
x_tmp、t
y_tmp及びt
z_tmpとする。数式(14)で求めたp
tを
【数17】
とした場合、正確な並進パラメータt
x、t
y及びt
zは以下の数式(16)の通りとなる。
【0082】
【0083】
次に拡大縮小パラメータについて説明する。Umeyamaのアルゴリズムで求めた並進パラメータの暫定値をs
tmpとする。数式(14)で求めたp
sを
【数19】
とすると、正確な拡大縮小パラメータsは以下の数式(17)の通りとなる。
【0084】
【0085】
ステップS106に続いて、CPU12Aは、推定結果を出力する(ステップS107)。ステップS107の処理によって出力された各種パラメータの推定値は、車両の乗員の位置姿勢の推定、顔画像トラッキング等に用いられる。
【0086】
以上説明したように、本実施形態の顔パラメータ推定装置によれば、人物の顔を撮影して得られた画像の当該顔の器官の特徴点における、各々画像座標系の水平方向の座標値であるx座標値及び垂直方向の座標値であるy座標値を検出し、かつ、前記画像座標系の奥行き方向の座標値であるz座標値を推定することで当該画像座標系の3次元座標値を導出し、導出した前記画像座標系の3次元座標値から、カメラ座標系の3次元座標値を導出する。そして、本実施形態の顔パラメータ推定装置によれば、導出した前記カメラ座標系の3次元座標値を予め定められた3次元顔形状モデルに適用して、当該3次元顔形状モデルの前記カメラ座標系における位置姿勢パラメータを導出し、形状変形パラメータ及び位置姿勢誤差を一度に推定する。本実施形態の顔パラメータ推定装置は、形状変形パラメータ及び位置姿勢誤差を一度に推定することで、3次元顔形状モデルの個人差パラメータ及び表情パラメータが精度よく推定できるとともに、位置姿勢パラメータをより正確に推定できる。
【0087】
なお、上記各実施形態でCPUがソフトウェア(プログラム)を読み込んで実行した顔パラメータ推定処理を、CPU以外の各種のプロセッサが実行してもよい。この場合のプロセッサとしては、FPGA(Field-Programmable Gate Array)等の製造後に回路構成を変更可能なPLD(Programmable Logic Device)、及びASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が例示される。また、顔パラメータ推定処理を、これらの各種のプロセッサのうちの1つで実行してもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGA、及びCPUとFPGAとの組み合わせ等)で実行してもよい。また、これらの各種のプロセッサのハードウェア的な構造は、より具体的には、半導体素子等の回路素子を組み合わせた電気回路である。
【0088】
また、上記各実施形態では、顔パラメータ推定処理のプログラムがROMに予め記憶(インストール)されている態様を説明したが、これに限定されない。プログラムは、CD-ROM(Compact Disk Read Only Memory)、DVD-ROM(Digital Versatile Disk Read Only Memory)、及びUSB(Universal Serial Bus)メモリ等の非一時的(non-transitory)記録媒体に記録された形態で提供されてもよい。また、プログラムは、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
【符号の説明】
【0089】
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 出力部