三次元形状復元装置
【課題】三次元形状復元装置において、観測データ行列(特徴点位置系列)中に複数の物体に由来するデータが混在していても因子分解の実行を可能とする。
【解決手段】複数の物体に由来する特徴点の位置を表す観測データ行列xを因子分解するにあたり、物体の形状を表す形状行列をz、特徴点のそれぞれが属する物体を指定する指定行列をhとし、また、物体uの運動行列We|u ,物体uに由来する特徴点の測定の正確さτ|u,特徴点がそれぞれの物体u(u=1,2,…,U)に属している確率(混合比)gをまとめたものをモデルパラメータをθとして、変分ベイズ推定法を適用し、Eステップでは、第1試験分布q(θ)を固定して第2試験分布q(z,h)を求め、Mステップでは、第2試験分布q(z,h)を固定して第1試験分布q(θ)を求めることで、確率的に因子分解計算を実行する。
【解決手段】複数の物体に由来する特徴点の位置を表す観測データ行列xを因子分解するにあたり、物体の形状を表す形状行列をz、特徴点のそれぞれが属する物体を指定する指定行列をhとし、また、物体uの運動行列We|u ,物体uに由来する特徴点の測定の正確さτ|u,特徴点がそれぞれの物体u(u=1,2,…,U)に属している確率(混合比)gをまとめたものをモデルパラメータをθとして、変分ベイズ推定法を適用し、Eステップでは、第1試験分布q(θ)を固定して第2試験分布q(z,h)を求め、Mステップでは、第2試験分布q(z,h)を固定して第1試験分布q(θ)を求めることで、確率的に因子分解計算を実行する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、物体を撮影した画像(二次元形状)系列から、その物体の三次元形状を復元する三次元形状復元装置に関する。
【背景技術】
【0002】
従来より、物体を撮影した画像系列を入力し、その物体について予め設定された複数の特徴点について、その特徴点の位置を画像面上で追跡し、追跡により得られた特徴点位置系列から物体の三次元形状を復元する装置が知られている。
【0003】
この主の三次元復元装置の一つとして、特徴点位置系列から観測データ行列を生成し、その観測データ行列を、物体の形状(特徴点の三次元位置)を表す形状行列と、物体の運動を表す運動行列とに因子分解する手法を用いたものがある(例えば、特許文献1〜3参照)。
【0004】
但し、因子分解法は、観測データ行列を構成するデータが全て揃っていないと、有効な結果が得られないため、特徴点の隠れ,誤追跡,フレームアウト等によって、特徴点位置系列(ひいては観測データ行列を構成するデータ)の欠損が頻繁に生じる実問題への適用は、非常に困難であるという問題があった。
【0005】
これに対して出願人は、データを統計的に扱い、データの確率分布の分散をデータの信頼度として考慮した計算を行うことによって、データの欠損に対処する手法を提案している(特許文献4参照)。
【0006】
しかし、この手法でも、形状を推定すべき物体が人物の顔である場合、サングラスやスカーフ等の装飾品によって特徴点が隠れた状態が継続すると、検出精度が劣化してしまう。
【0007】
このため、予め固定的に設定された特徴点(以下「固定特徴点」という)だけでなく、その都度検出される予め規定された特徴(例えば、撮像された物体のエッジやコーナー等)を有する地点(以下「任意特徴点」という)を検出し、この任意特徴点も利用することが検討されている。
【特許文献1】特開2000−194863号公報
【特許文献2】特開2003−141552号公報
【特許文献3】特開2004−347332号公報
【特許文献4】特開2008−261662号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
しかし、任意特徴点は、物体上に限らず、物体の背景や物体以外の物体上であっても、その特徴を有していれば抽出されてしまう。
【0009】
しかし、特許文献1〜4に記載の従来装置では、いずれも、観測データ行列を構成する特徴点が、単一の対象物に由来していることを前提とするものであるため、特徴点が複数の対象物に由来している場合には、形状行列(ひいては物体の形状)を正しく求めることができないという問題があった。
【0010】
なお、各特徴点が、どの物体に由来するかを識別し、その識別された特徴点を用いて物体毎に作成した観測データ行列を、それぞれ因子分解する手法が考えられる。しかし、特徴点の識別を、別の画像処理等によって行う必要があり、処理量が増大するだけでなく、その識別が困難であり、十分な精度が得られないという問題があった。
【0011】
また、観測データ行列を因子分解して形状行列を得る手法において、三次元形状の推定精度を向上させるには、計算に用いる画像系列を増やす(即ち、観測データ行列の次元を大きくする)必要がある。
【0012】
しかし、因子分解の際に必要となる計算量は、通常、観測データ行列の行数×列数の3乗に比例することが知られており、観測データ行列の次元を大きくすることによって爆発的に増大する。
【0013】
そして、計算量が増大すると、三次元形状復元装置を車両に搭載する場合等のように、使用できる演算器の計算能力に制限がある場合には、適用することが困難になるという問題もあった。
【0014】
本発明は、上記問題点を解決するために、三次元形状復元装置において、観測データ行列(特徴点位置系列)中に複数の物体に由来するデータが混在していても因子分解の実行を可能とすること、更には、計算時間を低減することを目的とする。
【課題を解決するための手段】
【0015】
上記目的を達成するためになされた本発明の三次元形状復元装置では、特徴点追跡手段が、画像系列を入力し、入力された各画像から予め設定された特徴を有する複数の特徴点を抽出すると共に、特徴点のそれぞれについて該特徴点の位置を画像面上で追跡する。
【0016】
また、観測データ行列生成手段は、特徴点抽出追跡手段での抽出,追跡結果に従って、特徴点の位置を表す観測データ行列を生成する。そして、分解手段が、観測データ行列生成手段にて生成された観測データ行列を因子分解して、画像に写された物体の三次元形状を表す形状行列および前記物体の運動を表す運動行列を生成する。
【0017】
このとき、分解手段は、観測データ行列をx、形状行列をz、特徴点のそれぞれが属する物体を指定する指定行列をh、運動行列,特徴点の測定の正確さ,特徴点がそれぞれの物体に属している確率をまとめたモデルパラメータをθとして、観測データ行列xから事後確率P(θ,z,h|x)を計算することで、θ,z,hを求める。
【0018】
このように構成された本発明の三次元形状復元装置によれば、観測データ行列xが複数の物体に由来する特徴点で構成された混合データ行列であっても、因子分解を実行することができ、指定行列hによって分類される特徴点毎、即ち、特徴点が由来する物体毎に、形状行列や運動行列を求めることができる。
【0019】
なお、本発明において、分解手段は、請求項2に記載のように、事後確率P(θ,z,h|x)の近似関数である試験分布q(θ,h,z)が、第1試験分布q(θ)と第2試験分布q(h,z)とに因子化されるものとして、事後確率P(θ,z,h|x)と試験分布q(θ,h,z)とのKL距離を最小にする第1試験分布q(θ)及び第2試験分布q(h,z)を求めることで、確率的に因子分解計算を実行するように構成されていてもよい。
【0020】
このように構成された本発明の三次元形状復元装置によれば、形状行列zを求めるのと同時に、指定行列hもベイズ推定によって確率的に求められるため、因子分解以外の特別な処理を行うことなく、簡単に特徴点を物体毎に識別することができる。
【0021】
そして、このようにベイズ推定を用いた因子分解を行う場合、請求項3に記載のように、観測データ行列生成手段は、予め設定されたフレーム数分の画像に基づいて観測データ行列xを生成し、分解手段は、第1試験分布q(θ)を固定して第2試験分布q(z,h)を推定する第1のステップ、及び、前記第2試験分布q(z,h)を固定して前記第1試験分布q(θ)を推定する第2のステップを、互いの推定結果を用いて交互に繰り返し実行する推定手段と、予め設定された終了条件が満たされている場合に、前記推定手段を終了させる終了手段とからなり、最終的に得られた前記第2試験分布q(z,h)から形状行列z及び指定行列hを得るように構成されていてもよい。
【0022】
この場合、分解手段は、変分ベイズ推定法を実現するものであり、第1のステップがEステップ、第2のステップがMステップに相当する。
【0023】
但し、変分ベイズ推定法を用いても、計算に用いる画像系列の増加(即ち、観測データ行列の次元の増大)に応じて、計算量(計算時間)が指数関数的に増大することを避けることはできない。
【0024】
そこで、請求項4に記載のように、観測データ行列生成手段は、1フレーム分の画像毎に前記観測データ行列xを生成し、分解手段は、観測データ行列生成手段にて観測データ行列xが生成される毎に、第1試験分布q(θ)を固定して第2試験分布q(z,h)を推定する第1のステップ、及び、第2試験分布q(z,h)を固定して第1試験分布q(θ)を推定する第2のステップを、互いの推定結果を用いて実行する推定手段と、予め設定された終了条件が満たされている場合に、推定手段及び更新手段を終了させる終了手段とからなり、推定手段によって逐次的に得られる第2試験分布q(z,h)から形状行列z及び指定行列hを得るように構成されていていることが望ましい。
【0025】
つまり、推定手段では、計算に用いる画像系列を制限して、第1のステップ(Eステップ),第2のステップ(Mステップ)を1回ずつ実行し、これを繰り返し実行すると共に、推定手段から計算結果が得られる毎に、その計算結果に基づいて形状行列の分布を更新する。これは、変分ベイズ推定法を逐次計算にて実現(いわゆるオンライン化)するものである。
【0026】
このように、本発明の三次元形状復元装置によれば、使用する画像系列を複数に分割し、その分割した画像系列毎に因子分解を実行するため、画像系列を増やしても、処理量は推定手段での1回の処理を単位として加算的に増大するだけで、指数関数的に増大することがないため、因子分解に要する処理負荷(ひいては処理に要する時間)を大幅に削減することができる。
【0027】
そして、当該三次元形状復元装置は、請求項5に記載のように、自動車に搭載して使用するように構成されていてもよい。
【0028】
自動車に搭載される演算器は一般的に計算能力が低いが、そのような場合でも適用することができる。
【発明を実施するための最良の形態】
【0029】
以下に本発明の実施形態を図面と共に説明する。
【0030】
[第1実施形態]
図1は、本発明を適用した三次元形状復元装置としての画像処理装置1の全体構成を示すブロック図である。なお、画像処理装置1は、車両に搭載され、ドライバの頭部を撮影した画像から、ドライバのわき見や居眠り等を検出するための情報である頭部姿勢を時系列的に求める処理を実行する装置である。
【0031】
<全体構成>
図1に示すように、画像処理装置1は、ドライバシートの前面上部又は下部(例えば、メータ内)に設置され、ドライバの頭部を含む画像を取得するカメラ2と、カメラ2が取得した画像を取り込む画像取込装置3と、画像取込装置3を介して取り込んだ入力画像sf (fはフレームを識別する識別子)から、予め設定された特徴を有する複数の特徴点の位置(画像面上での二次元座標)x(p) (p=1,2,…P)を抽出すると共に、その抽出された特徴点を追跡して、その特徴点の位置の分布を規定するための特徴点推定分布パラメータ(平均値xf ,分散Vf )を求める特徴点追跡部4とを備えている。
【0032】
また、画像処理装置1は、特徴点の三次元位置(ひいては、頭部の三次元形状)を規定する顔モデル(形状行列)Ca を供給する顔モデル供給部5と、特徴点追跡部4から供給される特徴点推定分布パラメータ、顔モデル供給部5から供給される顔モデルCa に基づき、カルマンフィルタを用いて、ドライバの頭部姿勢を表すアフィンパラメータAf を推定する推定部6と、推定部6が推定したアフィンパラメータAf に従って、頭部姿勢θx,θy,θzを算出する頭部姿勢算出部7から構成される。
【0033】
<特徴点追跡部>
特徴点追跡部4は、目尻,目頭,口元、鼻(鼻の穴,鼻の中心,鼻の左右端)等(図2(a)参照)、ドライバの顔の特徴を表す複数の特徴点(以下「固定特徴点」ともいう)の位置を抽出,追跡するする固定特徴点追跡部41と、画像中の追跡し易い特徴(例えば、撮像された物体のエッジやコーナ等)を有する部位(以下「任意特徴点」ともいう)の位置を抽出,追跡する任意特徴点追跡部43とからなる。
【0034】
そして、固定特徴点追跡部41は、予め用意されたテンプレートを用いて入力画像sf とのテンプレートマッチングによって、固定特徴点の抽出,追跡を行う。なお、テンプレートは、具体的には、図2(a)中の点線白枠にて示すようなものとなる。但し、図では、左口元、鼻の中心、左目尻についてのみ示す。
【0035】
一方、任意特徴点追跡部43は、SIFT(Scale Invariant Feature Transform) やKLT(Kanade-Lucas-Tomasi) といった周知の特徴点検出器を用いて任意特徴点の抽出,追跡を行う。
【0036】
ここで、図3は、任意特徴点追跡部43により抽出される任意特徴点の例を示す説明図である。但し、(a)が入力画像、(b)が固定特徴点追跡部41によって抽出される固定特徴点、(c)が任意特徴点追跡部43によって抽出される任意特徴点を示す。
【0037】
図3に示すように、任意特徴点は、ドライバ頭部からだけでなく、背景(車室)からも抽出されることになる。但し、ドライバがサングラス等を装着して固定特徴点(目尻,目頭等)が隠れたとしても、サングラスの輪郭等から多数の任意特徴点が抽出されることになる。
【0038】
つまり、特徴点追跡部4では、常時追跡対象となる固定特徴点以外に、任意特徴点が適宜、追跡対象として追加されることになる。
【0039】
但し、任意特徴点追跡部4は、任意特徴点の中で固定特徴点と一致するものを追跡対象から除外すると共に、後述する顔モデル供給部5からドライバ頭部に位置する特徴点(以下「頭部特徴点」という)の情報が得られた後は、その情報に基づいて、頭部特徴点以外の任意特徴点を追跡対象から除外するように構成されている。
【0040】
また、固定特徴点及び任意特徴点の追跡には、いずれも、パーティクルフィルタが用いられており、その処理に必要な事後確率p(xf|Af)は、推定部6から供給を受けるように構成されている。
【0041】
<顔モデル>
顔モデル供給部5から供給される顔モデルCa は、特徴点追跡部4にて追跡される特徴点のうち、ドライバの顔上に位置するものの位置を三次元的に規定するものであり、図4に示すように、画像面における水平方向の座標軸をu軸、垂直方向の座標軸をv軸、三次元空間における水平方向の座標軸をX軸、垂直方向の座標軸をY軸、光軸方向(奥行き方向)の座標軸をZ軸として(1)(2)式で表される。但し、z(p) は、特徴点追跡部4で抽出されたp番目の特徴点(特徴点位置x(p) =(u(p),v(p))の3次元空間内での座標である。
【0042】
【数1】
<推定部>
推定部6で推定されるアフィンパラメータAf は、実世界(三次元のXYZ空間)における座標変換を、射影面である画像面(二次元のuv平面)上での座標変換として表す際に用いる変換行列であり、(3)(4)式に示す関係を有する。
【0043】
但し、ある特徴点の三次元座標を(X,Y,Z)T ,座標変換後の三次元座標を(X’,Y’,Z’)T 、これら三次元座標を画像面上に射影した二次元座標、すなわち画像面上での特徴点の座標を(u,v)T,(u’,v’)Tとして、X=u,Y=v(すなわちX’=u’,Y’=v’)であると仮定する。
【0044】
【数2】
<頭部姿勢算出部>
頭部姿勢算出部7では、頭部姿勢情報として、頭部の3軸角度θx,θy,θzを(5)〜(7)式を用いて算出する。
【0045】
【数3】
そして、フレームfにおける頭部姿勢を表すアフィンパラメータAf が得られれば、そのアフィンパラメータAf を顔モデルCa に作用させることで、フレームfにおける画像に映っていない隠れた特徴点の位置も含めて、フレームfにおける全ての特徴点の位置を予測することができる。
【0046】
また、このようなアフィンパラメータAf には、カメラパラメータ(カメラの焦点距離、設置場所、向き等)及びドライバの頭部姿勢の変化を全て反映させることができる。
【0047】
<特徴点追跡部及び推定部での処理の概要>
ここで、図5は、特徴点追跡部4及び推定部6が扱う状態空間モデルを表すグラフである。
【0048】
図5に示すように、フレームfにおける顔モデルの姿勢を表すアフィンパラメータAf を隠れ状態として求める上位層(推定部6)と、フレームfにおける特徴点群の位置xf =(xf(1),xf(2),…,xf(P))T を隠れ状態として求めるP個の追跡器からなる下位層(特徴点追跡部4)を備えており、フレーム1からfまでに入力された入力画像系列s1:f から、これら隠れ状態Af ,xf を、時系列ベイズ推定により推定するものである。
【0049】
なお、時系列ベイズ推定は、図6に示すように、状態変数をすべて確率変数として扱い、隠れ状態に関するフレームf−1における推定結果(推定分布)からフレームfにおける予測分布を求めると共に、フレームfにおける観測データから、検出すべき隠れ状態であるもっともらしさ(尤度)を求め、これら予測分布と尤度を考慮してフレームfにおける推定結果(推定分布)を得るという手順を繰り返すことで、逐次的に隠れ状態を推定するものである。
【0050】
つまり、入力画像系列(観測データ)s1:f に基づいて、アフィンパラメータ(頭部姿勢の隠れ状態)Af を推定した事後確率(推定分布)p(Af|s1:f)を求めることになり、これを数式で記述すると(8)(9)式で表される。
【0051】
【数4】
ここで、p(Af|s1:f-1)はアフィンパラメータAf の事前確率分布(予測分布)、p(xf|Af,s1:f-1 )は特徴点群の位置xf の事前確率分布(予測分布)、p(xf |Af ,s1:f-1 ),p(sf |xf )は尤度を表す。
【0052】
そして、(8)式の部分を下位層(特徴点追跡部4)がパーティクルフィルタを用いて推定し、(9)式の部分を上位層(推定部6)がカルマンフィルタを用いて推定する。
【0053】
なお、あるパラメータの確率分布がガウス分布(正規分布)に従う場合、そのパラメータの確率分布の計算は、実際には、その平均xf と分散Vf を求めれば十分である。
【0054】
なお、このような推定部6の具体的な構成は、例えば、特願2005−368124号等に、また、特徴点追跡部4の具体的な構成は、例えば、特願2007−102914号等に詳述されているため、ここではその詳細についての説明を省略する。
【0055】
<顔モデル供給部>
次に、本発明の主要部である顔モデル供給部5について詳述する。
【0056】
顔モデル供給部5は、図1に示すように、頭部を撮影した複数人分の映像から、それぞれ固定特徴点を抽出し、その抽出した結果に基づいて設定された平均的な固定特徴点の配置を表す平均顔モデルを記憶する平均顔モデル記憶部51と、外部からの起動指令によって起動し、特徴点追跡部4から逐次供給される特徴点推定分布パラメータxf に基づいて、カメラ2の被写体であるドライバ頭部に由来する特徴点(固定特徴点及び任意特徴点)の配置を表す個人顔モデルを、学習,生成する個人顔モデル学習部52と、個人顔モデル学習部52からの切替信号に従って、平均顔モデル記憶部51に記憶された平均顔モデル、個人顔モデル学習部52にて生成された個人顔モデルのいずれかを、顔モデルCa として選択して推定部6に供給する顔モデル切替部53とを備えている。
【0057】
なお、個人顔モデル学習部52が本発明の三次元形状復元装置に相当し、複数の物体(例えば、ドライバ,車両,車両の窓に映る車外の風景など)に由来する特徴点xf が、それぞれどの物体に由来するものであるかを示す情報と、特徴点が由来する各物体(特にドライバの頭部)の形状とを同時に学習するものである。
【0058】
<学習の概要>
個人顔モデル学習部52では、以下に示す手法により学習を行う。
【0059】
<モデル>
まず、学習に適用するモデルについて説明する。
【0060】
ここでは、物体が複数存在する場合の観測データ(特徴点群)の生成過程を考えると、生成過程が複数あって、各過程が確率的に選択されるMixtures of PPCA(Probabilistic Principal Component Analysis;確率的主成分分析)によってモデル化するものとする。
【0061】
まず、カメラによる画像の撮影を、三次元空間から二次元平面への線形写像(アフィンカメラ)と仮定する。撮像される物体の形状は時不変の剛体だとして、P個の特徴点の三次元位置を表す行列zを(10)式、フレームfの画像上での各特徴点の位置を表す行列xf を(11)式で表すものとする。但し、p番目の特徴点の三次元位置をz(p) 、フレームfにおけるp番目の特徴点の二次元位置をxf(p)とする。
【0062】
【数5】
アフィンカメラの下で特徴点の二次元位置xf(p)の生成過程は、観測ノイズεが加わって(12)式で表すことができる。
【0063】
【数6】
但し、Wf は射影行列、μf は並進成分を表す。
【0064】
そして、P個の特徴点をフレーム数Fに渡って観測(特徴点追跡部4から取得)したとすると、(13)式に示す観測データ行列xが得られる。
【0065】
【数7】
但し、We は(14)式で定義され、以下では運動行列と称する。また、ze は(15)式で定義され、以下では形状行列と称する。
【0066】
【数8】
画像に複数の物体が撮影されている場合は、それぞれの物体に対して運動行列We が存在するため、物体u(u=1,2,…,U)に対応するものをWe/u で表すものとする。但し、画像上では実際には各特徴点がどの物体に由来するのかわからないため、各物体の特徴点が混在する観測データ行列xが測定されることになる。
【0067】
また、物体uに関して測定された特徴点の数をPu で表すものとすると、特徴点の総数Pは、(16)式で表される。
【0068】
【数9】
ここで、特徴点pがどの物体に由来するかを指定する指示変数h(p) を(17)式で表すものとする。この指示変数は、仮定する物体の総数と同じU個hu(p)の要素を持つ。
【0069】
【数10】
そして、特徴点pについての指示変数h(p) は、特徴点pが物体uに由来するものであるということを表現する場合、u番目の要素のみが1(hu(p)=1)となり、他の要素は全て0となる。また、指示変数h(p) は、特徴点の数Pだけ存在するため、これをまとめたものを指定行列hと呼び、(18)式で表すものとする。
【0070】
【数11】
また、全特徴点の内からランダムに1点を選択した時に、その選択した特徴点が物体uに属している確率をgu として、これを全ての物体についてまとめたものを混合比gと呼び、(19)式で表すものとする。
【0071】
【数12】
なお、各物体に関して測定されている特徴点数(P1,…,PU)が既知である場合、gu はP個の特徴点の中からランダムに選択して特定のPu 個の特徴点のうちのどれかを選ぶ確率なのでgu=Pu/Pとなる。但し、Pu は未知なので、gも推定する必要がある。
【0072】
また、物体uに関する測定に混入するノイズεは期待値0、分散τ|u-1の正規分布に従うものとする。
【0073】
特徴点pが物体uに属すると仮定すると、特徴点pのノイズの分布p(εp )は、(20)式で表されることになる。但し、d次元ベクトルとして表された確率変数xが期待値m、共分散Σの正規分布に従うことをN(x|m,Σ)で示し、その内容は(21)式で定義されるものとする。
【0074】
【数13】
以上の設定から、形状行列z、指示行列h、混合比g、物体毎のアフィンパラメータWe|u (u=1,2,…,U),各物体の特徴点位置の測定の正確さ(ノイズの分散の逆数)τ|uが推定(学習)の対象となる。
【0075】
これらの関係を図示したグラフィカルモデルを図7に示す。
【0076】
なお、以下では、式の記述を簡略化するために、(22)(23)式に示すモデルパラメータθ,Jを用いるものとする。
【0077】
【数14】
図7に示すグラフィカルモデルの下では、特徴点(観測データ)xが得られれば、形状行列zとモデルパラメータθは事後確率p(θ,z,h|x)を計算することで推定することができる。
【0078】
また、事後分布(事後確率)p(θ,z,h|x)はベイズ推定により、(24)式のように記述される。
【0079】
【数15】
この式を計算するために、形状行列z,モデルパラメータθ(即ち、We|u ,τ|u,g)の事前分布p0 を(25)〜(28)式によって設定する。但し、αe|u は、4次元ベクトルであり、ここではαe|u =[1,1,1,1]Tが用いられるが、何等かの分布を設けてもよい。
【0080】
【数16】
但し、we,i|u はWe|u のi行目に対応した列ベクトルである。また、ガンマ分布Gam(x|a,b)は(29)式、ディリクレ分布Dir(x|γx )は(30)式で定義される。
【0081】
【数17】
なお、(24)式を解析的に計算することは不可能なため、ここでは変分推定法を利用して事後分布を近似的に求める。
【0082】
<変分推定法>
変分推定法では、事後分布p(θ,h,z|x)の近似関数である試験分布q(θ,h,z)を計算する。但し、q(θ,h,z)=q(θ)q(h,z)と因子化されると仮定して、試験分布q(θ,h,z)と真の事後分布p(θ,h,z|x)との間のKL(Kullback-Leibler)疑似距離を最小化するように、試験分布q(θ)q(h,z)を調節する。
【0083】
ところで、KL疑似距離を最小にする試験分布を求めるということは、自由エネルギーを最大にする試験分布を求めることに等しいことが知られている。つまり、変分推定法では、この自由エネルギーを最大にする試験分布が最も妥当な推定解であるということになる。
【0084】
本件の場合、自由エネルギーFE は(31)式で表される。また、この場合、自由エネルギーFE を最大化する試験分布q(θ,h,z)は、事前の同時分布p0(J) に基づいて、(32)式及び(33)式に示す条件を満たすことが知られている。
【0085】
【数18】
但し、<>qは、分布qに基づく期待値を求める操作を意味する。
【0086】
この条件式(32)(33)を展開して得られる式は、推定対象であるθ,h,zが互いに依存した形式となっているため、明示的な解を得ることができない。しかし、条件式(32)(33)を繰り返し適用することは、自由エネルギーFE を対象とした勾配法を行うことに等しいため、近似的な解を得ることができる。
【0087】
具体的には、変分ベイズ法のEステップでは、試験分布q(θ)を固定した上で、試験分布q(h,z)を求め、変分ベイズ法のMステップでは、試験分布q(h,z)を固定した上で、試験分布q(θ)を求めるものとする。
【0088】
ここで、Eステップで求める各試験分布を(34)〜(36)式のようにパラメータ付けする。
【0089】
【数19】
また、Mステップで求める各試験分布を(37)〜(40)式のようにパラメータ付けする。
【0090】
【数20】
(25)〜(28)式と、以下に示す(41)式に基づいて、(32)(33)式を展開する。
【0091】
【数21】
すると、Eステップで求める各試験分布のパラメータには、次の(42)〜(46)式に示す条件が課されることになる。但し、Σz|u は物体uの推定構造の共分散行列(信頼度)、z|u(p) は特徴点pが物体u由来であると仮定したときの推定座標、cu(p)は特徴点pが物体u由来であるという仮定の信頼度、cu は試験分布q(h(p) )の正規化項を表す。
【0092】
【数22】
同様に、Mステップで求める各試験分布のパラメータには、次の(47)〜(52)式に示す条件が課されることになる。但し、γguの比は混合比の期待値(推定値)、MWe|uはWe|u の期待値(推定値)、Σwe|u はWe|u の推定の各行の共分散行列(信頼度)、mτ|u はτ|uの期待値(推定値)、γτ|u はτ|uの推定の分散(信頼度)mτ|u/γτ|uの構成要素を表す。
【0093】
【数23】
なお、Eステップで計算される全てのパラメータをまとめた分布パラメータΘS は(53)式で表され、Mステップで計算される全てのパラメータをまとめた分布パラメータΘM は(54)式で表される。
【0094】
【数24】
また、h,zに依存する十分統計量rを(55)式で表すものとする。具体的には、(47)(48)(49)(51)(52)式のそれぞれにおいて、<<>>fcで囲われた項が十分統計量となる。
【0095】
【数25】
<個人顔モデル学習部での処理>
ここで、個人顔モデル学習部52が実行する処理を、図8に示すフローチャートに沿って説明する。なお、本処理は、外部からの起動指令の入力により起動される。
【0096】
本処理が起動すると、まず、S110では、顔モデル切替部53が推定部6に供給する顔モデルCa として、平均顔モデル記憶部51に記憶された平均顔モデルを選択するように切替信号を出力して、S120に進む。
【0097】
これにより、推定部6では、画像(フレーム)が入力される毎に、平均顔モデルを用いたアフィンパラメータAf 、及び特徴点推定分布パラメータxf,Vfの算出が行われる。また、頭部姿勢算出部7では、推定部6にて求められたアフィンパラメータAf に基づいて、頭部姿勢θx,θy,θzの算出が行われる。
【0098】
S120では、モデルパラメータθの試験分布である第1試験分布q(θ)を初期化してS130に進む。
【0099】
具体的には、(54)式に示した分布パラメータΘM 及び、(55)式に示した十分統計量r初期化され、例えば、全ての要素が、同じ一定値(例えば、0又は1又は0.5)に設定される。
【0100】
S130では、特徴点追跡部4から予め設定された規定フレーム数F個分の特徴点パラメータxf ((11)式参照)の取得を完了したか否かを判断し、完了していなければ、完了するまで待機する。
【0101】
そして規定フレーム数F分の特徴点パラメータxf の取得を完了すると、これらをまとめた観測データ行列x((13)式参照)を生成してS140に移行し、設定されている分布パラメータΘM に基づいて、第2試験分布q(z,h)の算出、即ち、変分ベイズのEステップとしての処理を実行して、S150へ進む。
【0102】
具体的には、(53)式に示す分布パラメータΘS を、(42)〜(46)式に従って算出する。
【0103】
S150では、観測データ行列x及びS140での第2試験分布q(z,h)の算出結果に従って、十分統計量rを更新し、続くS160では、第1試験分布q(θ)の算出、即ち、変分ベイズのMステップとしての処理を実行して、S170に進む。
【0104】
具体的には、(54)式に示す分布パラメータΘM を、S150にて算出された十分統計量rを用い、(47)〜(52)式に従って算出する。
【0105】
S170では、S140,S160での算出結果に基づき、上述の(31)式を用いて自由エネルギーFE を算出してS190に進む。
【0106】
但し、自由エネルギーFE は、上述の処理によって得られた第1試験分布q(θ)及び第2試験分布q(h,z)から求められる運動行列Wおよび形状行列zに基づいて推定される位置と、観測により得られた位置(観測データ行列x)とが近いほど大きな値となる。
【0107】
S180では、S170にて算出された自由エネルギーFE が、予め設定されたエネルギー閾値より大きいことを終了条件として、その終了条件を充足しているか否かを判断し、充足していなければ、S140に戻って、S140〜S170の処理を繰り返し、一方、終了条件を充足していれば、S190に移行する。
【0108】
ここでは、エネルギー閾値として、例えば、平均顔モデルを表す形状行列と、上述の処理で得られた運動行列Wとを用いて算出した自由エネルギー、またはその自由エネルギーより大きな値に設定された固定値を用いる。
【0109】
S190では、各特徴点p(p=1,2,…,P)について、その特徴点が由来する物体uを、(56)式に示す判別式を用いて判別し、その判別結果からドライバの頭部に由来する特徴点(以下「頭部特徴点」という)のみを抽出して特徴点追跡部4に通知する。
【0110】
【数26】
これにより、特徴点追跡部4では、以後、通知された頭部特徴点に基づいて、任意特徴点の中からドライバの頭部に由来するもののみを選択して追跡することが可能となる。
【0111】
S200では、第2試験分布q(h,z)から求められた形状行列のうち、S190にて得られた頭部特徴点に基づく部分のみを抽出した部分形状行列を生成し、その部分形状行列を個人顔モデルとして出力すると共に、顔モデル切替部53が推定部6に供給する顔モデルCa として、個人顔モデルを選択するように切替信号を出力して、本処理を終了する。
【0112】
これにより、以後、推定部6では、画像(フレーム)が入力される毎に、個人顔モデルを用いたアフィンパラメータAf の算出が行われ、更に、そのアフィンパラメータAf に基づいて、頭部姿勢算出部7では、頭部姿勢θx,θy,θzの算出が行われる。
【0113】
<効果>
以上説明したように、画像処理装置1では、頭部姿勢θx,θy,θzを推定する処理を開始した直後は、固定特徴点に基づく平均顔モデルを用いてアフィンパラメータAf の算出(顔向き推定)を行い、これと並行して、任意特徴点も利用した個人顔モデルの学習を実行し、その個人顔モデルの精度が十分に向上した時点で、平均顔モデルから個人顔モデルへの切替を行うようにされている。
【0114】
従って、画像処理装置1によれば、ドライバが誰であっても、また、ドライバが身につける物品(サングラス,マスク,帽子,スカーフ等)によって、固定特徴点を抽出することができない場合であっても、頭部姿勢θx,θy,θzの推定を、処理の初期段階から、安定した精度の推定結果を得ることができ、しかも、平均顔モデルから個人顔モデルへの切替後は、高い精度の推定結果を得ることができる。
【0115】
また、画像処理装置1では、観測データ行列xを因子分解する際に、指定行列hを導入して、各特徴点がどの物体に由来するかを同時に推定するようにされている。
【0116】
従って、画像処理装置1によれば、観測データ行列xに、ドライバ頭部に由来する特徴点(頭部特徴点)だけでなく、ドライバの頭部以外の物体(例えば、車両や窓に映る車外の景色等)に由来する特徴点(非頭部特徴点)が含まれていたとしても、即ち、観測データ行列xが混合データ行列であったとしても、その観測データ行列xを因子分解した結果から、物体の形状を個別に推定することができ、ひいてはドライバ頭部の形状を精度よく推定することができる。
【0117】
また、画像処理装置1では、個人顔モデル学習部52にて得られた頭部特徴点の情報を、特徴点追跡部4にて供給するようにされているため、特徴点追跡部4では、頭部特徴点の情報に基づいて任意特徴点を選別することができ、その選別結果に基づき、例えば、非頭部特徴点の追跡を中止することによって、不要な追跡処理が実行されることを防止することができる。
【0118】
[第2実施形態]
次に、第2実施形態について説明する。
【0119】
なお、本実施形態では、個人顔モデル学習部52での処理内容の一部が、第1実施形態のものとは異なるだけであるため、この相違する部分を中心に説明する。
【0120】
詳しくは、第1実施形態では、規定フレーム数F分の特徴点データが得られた後に、因子分解を一括して行う、いわゆるバッチ手法を用いているが、本実施形態では、1フレーム分の特徴点データを取得する毎に、逐次的にθ,h,zを推定する、所謂、オンライン推定法を実行するものである。
【0121】
<オンライン推定法の概要>
オンライン推定法では、(31)式に示す自由エネルギーFE を、(57)式に示すように、オンライン推定に適した形式のオンライン自由エネルギーFEλに置き換えて使用する。
【0122】
但し、忘却係数をλ(但し、0<λ<1)、現フレームをfc 、フレームfまでの観測に基づいた試験分布を(58)式、十分統計量を(59)式、忘却係数の影響を正規化するための係数を(60)式で表すものとする。
【0123】
【数27】
(31)式と(57)式を比較すると、オンライン自由エネルギーFEλの十分統計量rを、(61)式に示す十分統計量rfのf=1,2,…,fcを通した減衰付き和で置き換えたものとなっている。
【0124】
そして、十分統計量rfの減衰係数付き和は(62)式に示すように逐次的に計算することができ、また、正規化項も(63)式に示すように逐次的に計算することができる。
【0125】
【数28】
<個人顔モデル学習部での処理>
図9は、個人顔モデル学習部52が実行する処理の内容を示すフローチャートである。
【0126】
第1実施形態の場合と同様に、本処理は、初期化指令の入力により起動され、S310〜S340は、第1実施形態のS110〜S140と同様であるため説明を省略する。
【0127】
但し、S130にて使用される規定個数は、第1実施形態の場合より少ない数(例えば、数分の一から数十分の一程度)でよく、ここでは1とされている。
【0128】
そして、S350では、観測データ行列xf 及びS340での第2試験分布q(z,h)の算出結果に基づき、(62)(63)式を用いて、十分統計量<<r>>fcを更新し、続くS360では、第1試験分布q(θ)の算出、即ち、変分ベイズのMステップとしての処理を実行して、S170に進む。
【0129】
具体的には、(54)式に示す分布パラメータΘM を、S350にて算出された十分統計量<<r>>fcを、(47)〜(52)式の十分統計量の項(<<>>fcで囲われた項)に代入して算出する。
【0130】
S370では、S190と同様に頭部特徴点を抽出して特徴点追跡部4に通知し、続くS380では、(57)式に従ってオンライン自由エネルギーFEλを算出し、S390では、S180と同様に、その算出したオンライン自由エネルギーFEλが、予め設定されたエネルギー閾値より大きいことを終了条件として、その終了条件を充足しているか否かを判断する。
【0131】
そして、終了条件を充足していなければ、S330に戻って、S330〜S380の処理を繰り返し、一方、終了条件を充足していれば、S400に移行する。
【0132】
S400では、S200と同様に、頭部特徴点に基づく部分形状行列を個人顔モデルとして出力すると共に、顔モデル切替部53が推定部6に供給する顔モデルCa として、個人顔モデルを選択するように切替信号を出力して、本処理を終了する。
【0133】
<効果>
以上説明したように、本実施形態では、1フレーム毎に、Eステップ,Mステップを1回ずつ実行して第1試験分布p(θ)及び第2試験分布p(h,z)を求める処理を繰り返し、その結果を過去のデータほど比率が低下するように減衰係数ηfcを乗じて足し合わせていく、いわゆるオンライン化した変分ベイズ推定法を用いて、因子分解を行っている。
【0134】
従って、本実施形態によれば、使用する画像系列の数(フレーム数)を増加させても、それによって増加する処理量は、Eステップ,Mステップを1回ずつ実行する際の処理量を単位として、加算的に増大するだけで、指数関数的に増大することがないため、因子分解に要する処理負荷(ひいては処理に要する時間)を大幅に削減することができる。
【0135】
その結果、自動車に搭載される演算器は一般的に計算能力が低いが、そのような場合でも問題なく適用することができる。
【0136】
更に本実施形態では、Mステップで求める第1試験分布を規定するパラメータの算出式中に現れる十分統計量<<r>>fc 及び減衰係数ηfcを、前フレームでの算出結果を利用した簡易な式((62)(63)式参照)によって逐次的求めるようにされているため、因子分解に要する処理負荷を、更に削減することができる。
【0137】
また、本実施形態では、十分統計量<<r>>fcが求められれば観測データ行列xfcは不要であり、特徴点の増減に対応するために、過去の観測データ行列を記憶しておく必要がないため、装置の記憶容量も削減することができる。
【0138】
[実験]
図10に示すような二つの物体(四角柱,三角柱)を適当に動かして画像に投影したものを入力画像系列として、第2実施形態で説明した処理を実行する画像処理装置1に処理を行わせて形状行列zを求めた。なお、特徴点としては、各物体の頂点を用いた。
【0139】
図11は、処理の結果得られた形状行列zから推定し二つの物体の形状の推定誤差(RMS誤差)の推移を観測フレーム数に対して示したものであり、(a)が四角柱についての結果、(b)が三角柱についての結果である。
【0140】
図11からは、フレーム数が少ないと推定精度が低いが、フレーム数の増加に共に推定精度が向上していること、及び、二つの物体を正しく分離できていることがわかる。
【0141】
[他の実施形態]
以上本発明の実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において、様々な態様での実施が可能である。
【0142】
例えば、上記実施形態では、頭部姿勢を推定するためにアフィンパラメータを用いているが、これは頭部姿勢の推定を行うことができれば、例えば、アフィンパラメータを用いずに、拡張カルマンフィルタを利用して直接頭部推定を行う手法等を採用してもよい。
【0143】
また、因子分解を終了させる際の終了条件として、平均顔モデルから求めた自由エネルギーに基づいて設定されたエネルギー閾値を用いているが、例えば、処理の繰り返し回数が、予め設定された回数閾値より大きいことを終了条件としてもよい。この場合、処理を終了させるか否かの判断のために、自由エネルギーを算出する必要がなくなるため、当該装置での処理負荷を、より一層軽減することができ、また、常に一定時間内で処理を終了させることができる。
【図面の簡単な説明】
【0144】
【図1】発明が適用された画像処理装置の全体構成を示すブロック図。
【図2】固定特徴点の説明図。
【図3】任意特徴点の説明図。
【図4】画像処理装置が使用する座標系を示す説明図。
【図5】特徴点追跡部及び推定部が扱う状態空間モデルを表すグラフ。
【図6】時系列ベイズ推定の動作概要を示す説明図。
【図7】個人顔モデル学習部が扱うグラフィックモデルを示す説明図。
【図8】第1実施形態における個人顔モデル学習部の処理内容を示すフローチャート。
【図9】第2実施形態における個人顔モデル学習部の処理内容を示すフローチャート。
【図10】実験に用いた物体の形状を示す説明図。
【図11】物体の形状と実験により得られた形状との誤差を示すグラフ。
【符号の説明】
【0145】
1…画像処理装置 2…カメラ 3…画像取込装置 4…特徴点追跡部 5…顔モデル供給部 6…推定部 7…頭部姿勢算出部 41…固定特徴点追跡部 43…任意特徴点追跡部 51…平均顔モデル記憶部 52…個人顔モデル学習部 53…顔モデル切替部
【技術分野】
【0001】
本発明は、物体を撮影した画像(二次元形状)系列から、その物体の三次元形状を復元する三次元形状復元装置に関する。
【背景技術】
【0002】
従来より、物体を撮影した画像系列を入力し、その物体について予め設定された複数の特徴点について、その特徴点の位置を画像面上で追跡し、追跡により得られた特徴点位置系列から物体の三次元形状を復元する装置が知られている。
【0003】
この主の三次元復元装置の一つとして、特徴点位置系列から観測データ行列を生成し、その観測データ行列を、物体の形状(特徴点の三次元位置)を表す形状行列と、物体の運動を表す運動行列とに因子分解する手法を用いたものがある(例えば、特許文献1〜3参照)。
【0004】
但し、因子分解法は、観測データ行列を構成するデータが全て揃っていないと、有効な結果が得られないため、特徴点の隠れ,誤追跡,フレームアウト等によって、特徴点位置系列(ひいては観測データ行列を構成するデータ)の欠損が頻繁に生じる実問題への適用は、非常に困難であるという問題があった。
【0005】
これに対して出願人は、データを統計的に扱い、データの確率分布の分散をデータの信頼度として考慮した計算を行うことによって、データの欠損に対処する手法を提案している(特許文献4参照)。
【0006】
しかし、この手法でも、形状を推定すべき物体が人物の顔である場合、サングラスやスカーフ等の装飾品によって特徴点が隠れた状態が継続すると、検出精度が劣化してしまう。
【0007】
このため、予め固定的に設定された特徴点(以下「固定特徴点」という)だけでなく、その都度検出される予め規定された特徴(例えば、撮像された物体のエッジやコーナー等)を有する地点(以下「任意特徴点」という)を検出し、この任意特徴点も利用することが検討されている。
【特許文献1】特開2000−194863号公報
【特許文献2】特開2003−141552号公報
【特許文献3】特開2004−347332号公報
【特許文献4】特開2008−261662号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
しかし、任意特徴点は、物体上に限らず、物体の背景や物体以外の物体上であっても、その特徴を有していれば抽出されてしまう。
【0009】
しかし、特許文献1〜4に記載の従来装置では、いずれも、観測データ行列を構成する特徴点が、単一の対象物に由来していることを前提とするものであるため、特徴点が複数の対象物に由来している場合には、形状行列(ひいては物体の形状)を正しく求めることができないという問題があった。
【0010】
なお、各特徴点が、どの物体に由来するかを識別し、その識別された特徴点を用いて物体毎に作成した観測データ行列を、それぞれ因子分解する手法が考えられる。しかし、特徴点の識別を、別の画像処理等によって行う必要があり、処理量が増大するだけでなく、その識別が困難であり、十分な精度が得られないという問題があった。
【0011】
また、観測データ行列を因子分解して形状行列を得る手法において、三次元形状の推定精度を向上させるには、計算に用いる画像系列を増やす(即ち、観測データ行列の次元を大きくする)必要がある。
【0012】
しかし、因子分解の際に必要となる計算量は、通常、観測データ行列の行数×列数の3乗に比例することが知られており、観測データ行列の次元を大きくすることによって爆発的に増大する。
【0013】
そして、計算量が増大すると、三次元形状復元装置を車両に搭載する場合等のように、使用できる演算器の計算能力に制限がある場合には、適用することが困難になるという問題もあった。
【0014】
本発明は、上記問題点を解決するために、三次元形状復元装置において、観測データ行列(特徴点位置系列)中に複数の物体に由来するデータが混在していても因子分解の実行を可能とすること、更には、計算時間を低減することを目的とする。
【課題を解決するための手段】
【0015】
上記目的を達成するためになされた本発明の三次元形状復元装置では、特徴点追跡手段が、画像系列を入力し、入力された各画像から予め設定された特徴を有する複数の特徴点を抽出すると共に、特徴点のそれぞれについて該特徴点の位置を画像面上で追跡する。
【0016】
また、観測データ行列生成手段は、特徴点抽出追跡手段での抽出,追跡結果に従って、特徴点の位置を表す観測データ行列を生成する。そして、分解手段が、観測データ行列生成手段にて生成された観測データ行列を因子分解して、画像に写された物体の三次元形状を表す形状行列および前記物体の運動を表す運動行列を生成する。
【0017】
このとき、分解手段は、観測データ行列をx、形状行列をz、特徴点のそれぞれが属する物体を指定する指定行列をh、運動行列,特徴点の測定の正確さ,特徴点がそれぞれの物体に属している確率をまとめたモデルパラメータをθとして、観測データ行列xから事後確率P(θ,z,h|x)を計算することで、θ,z,hを求める。
【0018】
このように構成された本発明の三次元形状復元装置によれば、観測データ行列xが複数の物体に由来する特徴点で構成された混合データ行列であっても、因子分解を実行することができ、指定行列hによって分類される特徴点毎、即ち、特徴点が由来する物体毎に、形状行列や運動行列を求めることができる。
【0019】
なお、本発明において、分解手段は、請求項2に記載のように、事後確率P(θ,z,h|x)の近似関数である試験分布q(θ,h,z)が、第1試験分布q(θ)と第2試験分布q(h,z)とに因子化されるものとして、事後確率P(θ,z,h|x)と試験分布q(θ,h,z)とのKL距離を最小にする第1試験分布q(θ)及び第2試験分布q(h,z)を求めることで、確率的に因子分解計算を実行するように構成されていてもよい。
【0020】
このように構成された本発明の三次元形状復元装置によれば、形状行列zを求めるのと同時に、指定行列hもベイズ推定によって確率的に求められるため、因子分解以外の特別な処理を行うことなく、簡単に特徴点を物体毎に識別することができる。
【0021】
そして、このようにベイズ推定を用いた因子分解を行う場合、請求項3に記載のように、観測データ行列生成手段は、予め設定されたフレーム数分の画像に基づいて観測データ行列xを生成し、分解手段は、第1試験分布q(θ)を固定して第2試験分布q(z,h)を推定する第1のステップ、及び、前記第2試験分布q(z,h)を固定して前記第1試験分布q(θ)を推定する第2のステップを、互いの推定結果を用いて交互に繰り返し実行する推定手段と、予め設定された終了条件が満たされている場合に、前記推定手段を終了させる終了手段とからなり、最終的に得られた前記第2試験分布q(z,h)から形状行列z及び指定行列hを得るように構成されていてもよい。
【0022】
この場合、分解手段は、変分ベイズ推定法を実現するものであり、第1のステップがEステップ、第2のステップがMステップに相当する。
【0023】
但し、変分ベイズ推定法を用いても、計算に用いる画像系列の増加(即ち、観測データ行列の次元の増大)に応じて、計算量(計算時間)が指数関数的に増大することを避けることはできない。
【0024】
そこで、請求項4に記載のように、観測データ行列生成手段は、1フレーム分の画像毎に前記観測データ行列xを生成し、分解手段は、観測データ行列生成手段にて観測データ行列xが生成される毎に、第1試験分布q(θ)を固定して第2試験分布q(z,h)を推定する第1のステップ、及び、第2試験分布q(z,h)を固定して第1試験分布q(θ)を推定する第2のステップを、互いの推定結果を用いて実行する推定手段と、予め設定された終了条件が満たされている場合に、推定手段及び更新手段を終了させる終了手段とからなり、推定手段によって逐次的に得られる第2試験分布q(z,h)から形状行列z及び指定行列hを得るように構成されていていることが望ましい。
【0025】
つまり、推定手段では、計算に用いる画像系列を制限して、第1のステップ(Eステップ),第2のステップ(Mステップ)を1回ずつ実行し、これを繰り返し実行すると共に、推定手段から計算結果が得られる毎に、その計算結果に基づいて形状行列の分布を更新する。これは、変分ベイズ推定法を逐次計算にて実現(いわゆるオンライン化)するものである。
【0026】
このように、本発明の三次元形状復元装置によれば、使用する画像系列を複数に分割し、その分割した画像系列毎に因子分解を実行するため、画像系列を増やしても、処理量は推定手段での1回の処理を単位として加算的に増大するだけで、指数関数的に増大することがないため、因子分解に要する処理負荷(ひいては処理に要する時間)を大幅に削減することができる。
【0027】
そして、当該三次元形状復元装置は、請求項5に記載のように、自動車に搭載して使用するように構成されていてもよい。
【0028】
自動車に搭載される演算器は一般的に計算能力が低いが、そのような場合でも適用することができる。
【発明を実施するための最良の形態】
【0029】
以下に本発明の実施形態を図面と共に説明する。
【0030】
[第1実施形態]
図1は、本発明を適用した三次元形状復元装置としての画像処理装置1の全体構成を示すブロック図である。なお、画像処理装置1は、車両に搭載され、ドライバの頭部を撮影した画像から、ドライバのわき見や居眠り等を検出するための情報である頭部姿勢を時系列的に求める処理を実行する装置である。
【0031】
<全体構成>
図1に示すように、画像処理装置1は、ドライバシートの前面上部又は下部(例えば、メータ内)に設置され、ドライバの頭部を含む画像を取得するカメラ2と、カメラ2が取得した画像を取り込む画像取込装置3と、画像取込装置3を介して取り込んだ入力画像sf (fはフレームを識別する識別子)から、予め設定された特徴を有する複数の特徴点の位置(画像面上での二次元座標)x(p) (p=1,2,…P)を抽出すると共に、その抽出された特徴点を追跡して、その特徴点の位置の分布を規定するための特徴点推定分布パラメータ(平均値xf ,分散Vf )を求める特徴点追跡部4とを備えている。
【0032】
また、画像処理装置1は、特徴点の三次元位置(ひいては、頭部の三次元形状)を規定する顔モデル(形状行列)Ca を供給する顔モデル供給部5と、特徴点追跡部4から供給される特徴点推定分布パラメータ、顔モデル供給部5から供給される顔モデルCa に基づき、カルマンフィルタを用いて、ドライバの頭部姿勢を表すアフィンパラメータAf を推定する推定部6と、推定部6が推定したアフィンパラメータAf に従って、頭部姿勢θx,θy,θzを算出する頭部姿勢算出部7から構成される。
【0033】
<特徴点追跡部>
特徴点追跡部4は、目尻,目頭,口元、鼻(鼻の穴,鼻の中心,鼻の左右端)等(図2(a)参照)、ドライバの顔の特徴を表す複数の特徴点(以下「固定特徴点」ともいう)の位置を抽出,追跡するする固定特徴点追跡部41と、画像中の追跡し易い特徴(例えば、撮像された物体のエッジやコーナ等)を有する部位(以下「任意特徴点」ともいう)の位置を抽出,追跡する任意特徴点追跡部43とからなる。
【0034】
そして、固定特徴点追跡部41は、予め用意されたテンプレートを用いて入力画像sf とのテンプレートマッチングによって、固定特徴点の抽出,追跡を行う。なお、テンプレートは、具体的には、図2(a)中の点線白枠にて示すようなものとなる。但し、図では、左口元、鼻の中心、左目尻についてのみ示す。
【0035】
一方、任意特徴点追跡部43は、SIFT(Scale Invariant Feature Transform) やKLT(Kanade-Lucas-Tomasi) といった周知の特徴点検出器を用いて任意特徴点の抽出,追跡を行う。
【0036】
ここで、図3は、任意特徴点追跡部43により抽出される任意特徴点の例を示す説明図である。但し、(a)が入力画像、(b)が固定特徴点追跡部41によって抽出される固定特徴点、(c)が任意特徴点追跡部43によって抽出される任意特徴点を示す。
【0037】
図3に示すように、任意特徴点は、ドライバ頭部からだけでなく、背景(車室)からも抽出されることになる。但し、ドライバがサングラス等を装着して固定特徴点(目尻,目頭等)が隠れたとしても、サングラスの輪郭等から多数の任意特徴点が抽出されることになる。
【0038】
つまり、特徴点追跡部4では、常時追跡対象となる固定特徴点以外に、任意特徴点が適宜、追跡対象として追加されることになる。
【0039】
但し、任意特徴点追跡部4は、任意特徴点の中で固定特徴点と一致するものを追跡対象から除外すると共に、後述する顔モデル供給部5からドライバ頭部に位置する特徴点(以下「頭部特徴点」という)の情報が得られた後は、その情報に基づいて、頭部特徴点以外の任意特徴点を追跡対象から除外するように構成されている。
【0040】
また、固定特徴点及び任意特徴点の追跡には、いずれも、パーティクルフィルタが用いられており、その処理に必要な事後確率p(xf|Af)は、推定部6から供給を受けるように構成されている。
【0041】
<顔モデル>
顔モデル供給部5から供給される顔モデルCa は、特徴点追跡部4にて追跡される特徴点のうち、ドライバの顔上に位置するものの位置を三次元的に規定するものであり、図4に示すように、画像面における水平方向の座標軸をu軸、垂直方向の座標軸をv軸、三次元空間における水平方向の座標軸をX軸、垂直方向の座標軸をY軸、光軸方向(奥行き方向)の座標軸をZ軸として(1)(2)式で表される。但し、z(p) は、特徴点追跡部4で抽出されたp番目の特徴点(特徴点位置x(p) =(u(p),v(p))の3次元空間内での座標である。
【0042】
【数1】
<推定部>
推定部6で推定されるアフィンパラメータAf は、実世界(三次元のXYZ空間)における座標変換を、射影面である画像面(二次元のuv平面)上での座標変換として表す際に用いる変換行列であり、(3)(4)式に示す関係を有する。
【0043】
但し、ある特徴点の三次元座標を(X,Y,Z)T ,座標変換後の三次元座標を(X’,Y’,Z’)T 、これら三次元座標を画像面上に射影した二次元座標、すなわち画像面上での特徴点の座標を(u,v)T,(u’,v’)Tとして、X=u,Y=v(すなわちX’=u’,Y’=v’)であると仮定する。
【0044】
【数2】
<頭部姿勢算出部>
頭部姿勢算出部7では、頭部姿勢情報として、頭部の3軸角度θx,θy,θzを(5)〜(7)式を用いて算出する。
【0045】
【数3】
そして、フレームfにおける頭部姿勢を表すアフィンパラメータAf が得られれば、そのアフィンパラメータAf を顔モデルCa に作用させることで、フレームfにおける画像に映っていない隠れた特徴点の位置も含めて、フレームfにおける全ての特徴点の位置を予測することができる。
【0046】
また、このようなアフィンパラメータAf には、カメラパラメータ(カメラの焦点距離、設置場所、向き等)及びドライバの頭部姿勢の変化を全て反映させることができる。
【0047】
<特徴点追跡部及び推定部での処理の概要>
ここで、図5は、特徴点追跡部4及び推定部6が扱う状態空間モデルを表すグラフである。
【0048】
図5に示すように、フレームfにおける顔モデルの姿勢を表すアフィンパラメータAf を隠れ状態として求める上位層(推定部6)と、フレームfにおける特徴点群の位置xf =(xf(1),xf(2),…,xf(P))T を隠れ状態として求めるP個の追跡器からなる下位層(特徴点追跡部4)を備えており、フレーム1からfまでに入力された入力画像系列s1:f から、これら隠れ状態Af ,xf を、時系列ベイズ推定により推定するものである。
【0049】
なお、時系列ベイズ推定は、図6に示すように、状態変数をすべて確率変数として扱い、隠れ状態に関するフレームf−1における推定結果(推定分布)からフレームfにおける予測分布を求めると共に、フレームfにおける観測データから、検出すべき隠れ状態であるもっともらしさ(尤度)を求め、これら予測分布と尤度を考慮してフレームfにおける推定結果(推定分布)を得るという手順を繰り返すことで、逐次的に隠れ状態を推定するものである。
【0050】
つまり、入力画像系列(観測データ)s1:f に基づいて、アフィンパラメータ(頭部姿勢の隠れ状態)Af を推定した事後確率(推定分布)p(Af|s1:f)を求めることになり、これを数式で記述すると(8)(9)式で表される。
【0051】
【数4】
ここで、p(Af|s1:f-1)はアフィンパラメータAf の事前確率分布(予測分布)、p(xf|Af,s1:f-1 )は特徴点群の位置xf の事前確率分布(予測分布)、p(xf |Af ,s1:f-1 ),p(sf |xf )は尤度を表す。
【0052】
そして、(8)式の部分を下位層(特徴点追跡部4)がパーティクルフィルタを用いて推定し、(9)式の部分を上位層(推定部6)がカルマンフィルタを用いて推定する。
【0053】
なお、あるパラメータの確率分布がガウス分布(正規分布)に従う場合、そのパラメータの確率分布の計算は、実際には、その平均xf と分散Vf を求めれば十分である。
【0054】
なお、このような推定部6の具体的な構成は、例えば、特願2005−368124号等に、また、特徴点追跡部4の具体的な構成は、例えば、特願2007−102914号等に詳述されているため、ここではその詳細についての説明を省略する。
【0055】
<顔モデル供給部>
次に、本発明の主要部である顔モデル供給部5について詳述する。
【0056】
顔モデル供給部5は、図1に示すように、頭部を撮影した複数人分の映像から、それぞれ固定特徴点を抽出し、その抽出した結果に基づいて設定された平均的な固定特徴点の配置を表す平均顔モデルを記憶する平均顔モデル記憶部51と、外部からの起動指令によって起動し、特徴点追跡部4から逐次供給される特徴点推定分布パラメータxf に基づいて、カメラ2の被写体であるドライバ頭部に由来する特徴点(固定特徴点及び任意特徴点)の配置を表す個人顔モデルを、学習,生成する個人顔モデル学習部52と、個人顔モデル学習部52からの切替信号に従って、平均顔モデル記憶部51に記憶された平均顔モデル、個人顔モデル学習部52にて生成された個人顔モデルのいずれかを、顔モデルCa として選択して推定部6に供給する顔モデル切替部53とを備えている。
【0057】
なお、個人顔モデル学習部52が本発明の三次元形状復元装置に相当し、複数の物体(例えば、ドライバ,車両,車両の窓に映る車外の風景など)に由来する特徴点xf が、それぞれどの物体に由来するものであるかを示す情報と、特徴点が由来する各物体(特にドライバの頭部)の形状とを同時に学習するものである。
【0058】
<学習の概要>
個人顔モデル学習部52では、以下に示す手法により学習を行う。
【0059】
<モデル>
まず、学習に適用するモデルについて説明する。
【0060】
ここでは、物体が複数存在する場合の観測データ(特徴点群)の生成過程を考えると、生成過程が複数あって、各過程が確率的に選択されるMixtures of PPCA(Probabilistic Principal Component Analysis;確率的主成分分析)によってモデル化するものとする。
【0061】
まず、カメラによる画像の撮影を、三次元空間から二次元平面への線形写像(アフィンカメラ)と仮定する。撮像される物体の形状は時不変の剛体だとして、P個の特徴点の三次元位置を表す行列zを(10)式、フレームfの画像上での各特徴点の位置を表す行列xf を(11)式で表すものとする。但し、p番目の特徴点の三次元位置をz(p) 、フレームfにおけるp番目の特徴点の二次元位置をxf(p)とする。
【0062】
【数5】
アフィンカメラの下で特徴点の二次元位置xf(p)の生成過程は、観測ノイズεが加わって(12)式で表すことができる。
【0063】
【数6】
但し、Wf は射影行列、μf は並進成分を表す。
【0064】
そして、P個の特徴点をフレーム数Fに渡って観測(特徴点追跡部4から取得)したとすると、(13)式に示す観測データ行列xが得られる。
【0065】
【数7】
但し、We は(14)式で定義され、以下では運動行列と称する。また、ze は(15)式で定義され、以下では形状行列と称する。
【0066】
【数8】
画像に複数の物体が撮影されている場合は、それぞれの物体に対して運動行列We が存在するため、物体u(u=1,2,…,U)に対応するものをWe/u で表すものとする。但し、画像上では実際には各特徴点がどの物体に由来するのかわからないため、各物体の特徴点が混在する観測データ行列xが測定されることになる。
【0067】
また、物体uに関して測定された特徴点の数をPu で表すものとすると、特徴点の総数Pは、(16)式で表される。
【0068】
【数9】
ここで、特徴点pがどの物体に由来するかを指定する指示変数h(p) を(17)式で表すものとする。この指示変数は、仮定する物体の総数と同じU個hu(p)の要素を持つ。
【0069】
【数10】
そして、特徴点pについての指示変数h(p) は、特徴点pが物体uに由来するものであるということを表現する場合、u番目の要素のみが1(hu(p)=1)となり、他の要素は全て0となる。また、指示変数h(p) は、特徴点の数Pだけ存在するため、これをまとめたものを指定行列hと呼び、(18)式で表すものとする。
【0070】
【数11】
また、全特徴点の内からランダムに1点を選択した時に、その選択した特徴点が物体uに属している確率をgu として、これを全ての物体についてまとめたものを混合比gと呼び、(19)式で表すものとする。
【0071】
【数12】
なお、各物体に関して測定されている特徴点数(P1,…,PU)が既知である場合、gu はP個の特徴点の中からランダムに選択して特定のPu 個の特徴点のうちのどれかを選ぶ確率なのでgu=Pu/Pとなる。但し、Pu は未知なので、gも推定する必要がある。
【0072】
また、物体uに関する測定に混入するノイズεは期待値0、分散τ|u-1の正規分布に従うものとする。
【0073】
特徴点pが物体uに属すると仮定すると、特徴点pのノイズの分布p(εp )は、(20)式で表されることになる。但し、d次元ベクトルとして表された確率変数xが期待値m、共分散Σの正規分布に従うことをN(x|m,Σ)で示し、その内容は(21)式で定義されるものとする。
【0074】
【数13】
以上の設定から、形状行列z、指示行列h、混合比g、物体毎のアフィンパラメータWe|u (u=1,2,…,U),各物体の特徴点位置の測定の正確さ(ノイズの分散の逆数)τ|uが推定(学習)の対象となる。
【0075】
これらの関係を図示したグラフィカルモデルを図7に示す。
【0076】
なお、以下では、式の記述を簡略化するために、(22)(23)式に示すモデルパラメータθ,Jを用いるものとする。
【0077】
【数14】
図7に示すグラフィカルモデルの下では、特徴点(観測データ)xが得られれば、形状行列zとモデルパラメータθは事後確率p(θ,z,h|x)を計算することで推定することができる。
【0078】
また、事後分布(事後確率)p(θ,z,h|x)はベイズ推定により、(24)式のように記述される。
【0079】
【数15】
この式を計算するために、形状行列z,モデルパラメータθ(即ち、We|u ,τ|u,g)の事前分布p0 を(25)〜(28)式によって設定する。但し、αe|u は、4次元ベクトルであり、ここではαe|u =[1,1,1,1]Tが用いられるが、何等かの分布を設けてもよい。
【0080】
【数16】
但し、we,i|u はWe|u のi行目に対応した列ベクトルである。また、ガンマ分布Gam(x|a,b)は(29)式、ディリクレ分布Dir(x|γx )は(30)式で定義される。
【0081】
【数17】
なお、(24)式を解析的に計算することは不可能なため、ここでは変分推定法を利用して事後分布を近似的に求める。
【0082】
<変分推定法>
変分推定法では、事後分布p(θ,h,z|x)の近似関数である試験分布q(θ,h,z)を計算する。但し、q(θ,h,z)=q(θ)q(h,z)と因子化されると仮定して、試験分布q(θ,h,z)と真の事後分布p(θ,h,z|x)との間のKL(Kullback-Leibler)疑似距離を最小化するように、試験分布q(θ)q(h,z)を調節する。
【0083】
ところで、KL疑似距離を最小にする試験分布を求めるということは、自由エネルギーを最大にする試験分布を求めることに等しいことが知られている。つまり、変分推定法では、この自由エネルギーを最大にする試験分布が最も妥当な推定解であるということになる。
【0084】
本件の場合、自由エネルギーFE は(31)式で表される。また、この場合、自由エネルギーFE を最大化する試験分布q(θ,h,z)は、事前の同時分布p0(J) に基づいて、(32)式及び(33)式に示す条件を満たすことが知られている。
【0085】
【数18】
但し、<>qは、分布qに基づく期待値を求める操作を意味する。
【0086】
この条件式(32)(33)を展開して得られる式は、推定対象であるθ,h,zが互いに依存した形式となっているため、明示的な解を得ることができない。しかし、条件式(32)(33)を繰り返し適用することは、自由エネルギーFE を対象とした勾配法を行うことに等しいため、近似的な解を得ることができる。
【0087】
具体的には、変分ベイズ法のEステップでは、試験分布q(θ)を固定した上で、試験分布q(h,z)を求め、変分ベイズ法のMステップでは、試験分布q(h,z)を固定した上で、試験分布q(θ)を求めるものとする。
【0088】
ここで、Eステップで求める各試験分布を(34)〜(36)式のようにパラメータ付けする。
【0089】
【数19】
また、Mステップで求める各試験分布を(37)〜(40)式のようにパラメータ付けする。
【0090】
【数20】
(25)〜(28)式と、以下に示す(41)式に基づいて、(32)(33)式を展開する。
【0091】
【数21】
すると、Eステップで求める各試験分布のパラメータには、次の(42)〜(46)式に示す条件が課されることになる。但し、Σz|u は物体uの推定構造の共分散行列(信頼度)、z|u(p) は特徴点pが物体u由来であると仮定したときの推定座標、cu(p)は特徴点pが物体u由来であるという仮定の信頼度、cu は試験分布q(h(p) )の正規化項を表す。
【0092】
【数22】
同様に、Mステップで求める各試験分布のパラメータには、次の(47)〜(52)式に示す条件が課されることになる。但し、γguの比は混合比の期待値(推定値)、MWe|uはWe|u の期待値(推定値)、Σwe|u はWe|u の推定の各行の共分散行列(信頼度)、mτ|u はτ|uの期待値(推定値)、γτ|u はτ|uの推定の分散(信頼度)mτ|u/γτ|uの構成要素を表す。
【0093】
【数23】
なお、Eステップで計算される全てのパラメータをまとめた分布パラメータΘS は(53)式で表され、Mステップで計算される全てのパラメータをまとめた分布パラメータΘM は(54)式で表される。
【0094】
【数24】
また、h,zに依存する十分統計量rを(55)式で表すものとする。具体的には、(47)(48)(49)(51)(52)式のそれぞれにおいて、<<>>fcで囲われた項が十分統計量となる。
【0095】
【数25】
<個人顔モデル学習部での処理>
ここで、個人顔モデル学習部52が実行する処理を、図8に示すフローチャートに沿って説明する。なお、本処理は、外部からの起動指令の入力により起動される。
【0096】
本処理が起動すると、まず、S110では、顔モデル切替部53が推定部6に供給する顔モデルCa として、平均顔モデル記憶部51に記憶された平均顔モデルを選択するように切替信号を出力して、S120に進む。
【0097】
これにより、推定部6では、画像(フレーム)が入力される毎に、平均顔モデルを用いたアフィンパラメータAf 、及び特徴点推定分布パラメータxf,Vfの算出が行われる。また、頭部姿勢算出部7では、推定部6にて求められたアフィンパラメータAf に基づいて、頭部姿勢θx,θy,θzの算出が行われる。
【0098】
S120では、モデルパラメータθの試験分布である第1試験分布q(θ)を初期化してS130に進む。
【0099】
具体的には、(54)式に示した分布パラメータΘM 及び、(55)式に示した十分統計量r初期化され、例えば、全ての要素が、同じ一定値(例えば、0又は1又は0.5)に設定される。
【0100】
S130では、特徴点追跡部4から予め設定された規定フレーム数F個分の特徴点パラメータxf ((11)式参照)の取得を完了したか否かを判断し、完了していなければ、完了するまで待機する。
【0101】
そして規定フレーム数F分の特徴点パラメータxf の取得を完了すると、これらをまとめた観測データ行列x((13)式参照)を生成してS140に移行し、設定されている分布パラメータΘM に基づいて、第2試験分布q(z,h)の算出、即ち、変分ベイズのEステップとしての処理を実行して、S150へ進む。
【0102】
具体的には、(53)式に示す分布パラメータΘS を、(42)〜(46)式に従って算出する。
【0103】
S150では、観測データ行列x及びS140での第2試験分布q(z,h)の算出結果に従って、十分統計量rを更新し、続くS160では、第1試験分布q(θ)の算出、即ち、変分ベイズのMステップとしての処理を実行して、S170に進む。
【0104】
具体的には、(54)式に示す分布パラメータΘM を、S150にて算出された十分統計量rを用い、(47)〜(52)式に従って算出する。
【0105】
S170では、S140,S160での算出結果に基づき、上述の(31)式を用いて自由エネルギーFE を算出してS190に進む。
【0106】
但し、自由エネルギーFE は、上述の処理によって得られた第1試験分布q(θ)及び第2試験分布q(h,z)から求められる運動行列Wおよび形状行列zに基づいて推定される位置と、観測により得られた位置(観測データ行列x)とが近いほど大きな値となる。
【0107】
S180では、S170にて算出された自由エネルギーFE が、予め設定されたエネルギー閾値より大きいことを終了条件として、その終了条件を充足しているか否かを判断し、充足していなければ、S140に戻って、S140〜S170の処理を繰り返し、一方、終了条件を充足していれば、S190に移行する。
【0108】
ここでは、エネルギー閾値として、例えば、平均顔モデルを表す形状行列と、上述の処理で得られた運動行列Wとを用いて算出した自由エネルギー、またはその自由エネルギーより大きな値に設定された固定値を用いる。
【0109】
S190では、各特徴点p(p=1,2,…,P)について、その特徴点が由来する物体uを、(56)式に示す判別式を用いて判別し、その判別結果からドライバの頭部に由来する特徴点(以下「頭部特徴点」という)のみを抽出して特徴点追跡部4に通知する。
【0110】
【数26】
これにより、特徴点追跡部4では、以後、通知された頭部特徴点に基づいて、任意特徴点の中からドライバの頭部に由来するもののみを選択して追跡することが可能となる。
【0111】
S200では、第2試験分布q(h,z)から求められた形状行列のうち、S190にて得られた頭部特徴点に基づく部分のみを抽出した部分形状行列を生成し、その部分形状行列を個人顔モデルとして出力すると共に、顔モデル切替部53が推定部6に供給する顔モデルCa として、個人顔モデルを選択するように切替信号を出力して、本処理を終了する。
【0112】
これにより、以後、推定部6では、画像(フレーム)が入力される毎に、個人顔モデルを用いたアフィンパラメータAf の算出が行われ、更に、そのアフィンパラメータAf に基づいて、頭部姿勢算出部7では、頭部姿勢θx,θy,θzの算出が行われる。
【0113】
<効果>
以上説明したように、画像処理装置1では、頭部姿勢θx,θy,θzを推定する処理を開始した直後は、固定特徴点に基づく平均顔モデルを用いてアフィンパラメータAf の算出(顔向き推定)を行い、これと並行して、任意特徴点も利用した個人顔モデルの学習を実行し、その個人顔モデルの精度が十分に向上した時点で、平均顔モデルから個人顔モデルへの切替を行うようにされている。
【0114】
従って、画像処理装置1によれば、ドライバが誰であっても、また、ドライバが身につける物品(サングラス,マスク,帽子,スカーフ等)によって、固定特徴点を抽出することができない場合であっても、頭部姿勢θx,θy,θzの推定を、処理の初期段階から、安定した精度の推定結果を得ることができ、しかも、平均顔モデルから個人顔モデルへの切替後は、高い精度の推定結果を得ることができる。
【0115】
また、画像処理装置1では、観測データ行列xを因子分解する際に、指定行列hを導入して、各特徴点がどの物体に由来するかを同時に推定するようにされている。
【0116】
従って、画像処理装置1によれば、観測データ行列xに、ドライバ頭部に由来する特徴点(頭部特徴点)だけでなく、ドライバの頭部以外の物体(例えば、車両や窓に映る車外の景色等)に由来する特徴点(非頭部特徴点)が含まれていたとしても、即ち、観測データ行列xが混合データ行列であったとしても、その観測データ行列xを因子分解した結果から、物体の形状を個別に推定することができ、ひいてはドライバ頭部の形状を精度よく推定することができる。
【0117】
また、画像処理装置1では、個人顔モデル学習部52にて得られた頭部特徴点の情報を、特徴点追跡部4にて供給するようにされているため、特徴点追跡部4では、頭部特徴点の情報に基づいて任意特徴点を選別することができ、その選別結果に基づき、例えば、非頭部特徴点の追跡を中止することによって、不要な追跡処理が実行されることを防止することができる。
【0118】
[第2実施形態]
次に、第2実施形態について説明する。
【0119】
なお、本実施形態では、個人顔モデル学習部52での処理内容の一部が、第1実施形態のものとは異なるだけであるため、この相違する部分を中心に説明する。
【0120】
詳しくは、第1実施形態では、規定フレーム数F分の特徴点データが得られた後に、因子分解を一括して行う、いわゆるバッチ手法を用いているが、本実施形態では、1フレーム分の特徴点データを取得する毎に、逐次的にθ,h,zを推定する、所謂、オンライン推定法を実行するものである。
【0121】
<オンライン推定法の概要>
オンライン推定法では、(31)式に示す自由エネルギーFE を、(57)式に示すように、オンライン推定に適した形式のオンライン自由エネルギーFEλに置き換えて使用する。
【0122】
但し、忘却係数をλ(但し、0<λ<1)、現フレームをfc 、フレームfまでの観測に基づいた試験分布を(58)式、十分統計量を(59)式、忘却係数の影響を正規化するための係数を(60)式で表すものとする。
【0123】
【数27】
(31)式と(57)式を比較すると、オンライン自由エネルギーFEλの十分統計量rを、(61)式に示す十分統計量rfのf=1,2,…,fcを通した減衰付き和で置き換えたものとなっている。
【0124】
そして、十分統計量rfの減衰係数付き和は(62)式に示すように逐次的に計算することができ、また、正規化項も(63)式に示すように逐次的に計算することができる。
【0125】
【数28】
<個人顔モデル学習部での処理>
図9は、個人顔モデル学習部52が実行する処理の内容を示すフローチャートである。
【0126】
第1実施形態の場合と同様に、本処理は、初期化指令の入力により起動され、S310〜S340は、第1実施形態のS110〜S140と同様であるため説明を省略する。
【0127】
但し、S130にて使用される規定個数は、第1実施形態の場合より少ない数(例えば、数分の一から数十分の一程度)でよく、ここでは1とされている。
【0128】
そして、S350では、観測データ行列xf 及びS340での第2試験分布q(z,h)の算出結果に基づき、(62)(63)式を用いて、十分統計量<<r>>fcを更新し、続くS360では、第1試験分布q(θ)の算出、即ち、変分ベイズのMステップとしての処理を実行して、S170に進む。
【0129】
具体的には、(54)式に示す分布パラメータΘM を、S350にて算出された十分統計量<<r>>fcを、(47)〜(52)式の十分統計量の項(<<>>fcで囲われた項)に代入して算出する。
【0130】
S370では、S190と同様に頭部特徴点を抽出して特徴点追跡部4に通知し、続くS380では、(57)式に従ってオンライン自由エネルギーFEλを算出し、S390では、S180と同様に、その算出したオンライン自由エネルギーFEλが、予め設定されたエネルギー閾値より大きいことを終了条件として、その終了条件を充足しているか否かを判断する。
【0131】
そして、終了条件を充足していなければ、S330に戻って、S330〜S380の処理を繰り返し、一方、終了条件を充足していれば、S400に移行する。
【0132】
S400では、S200と同様に、頭部特徴点に基づく部分形状行列を個人顔モデルとして出力すると共に、顔モデル切替部53が推定部6に供給する顔モデルCa として、個人顔モデルを選択するように切替信号を出力して、本処理を終了する。
【0133】
<効果>
以上説明したように、本実施形態では、1フレーム毎に、Eステップ,Mステップを1回ずつ実行して第1試験分布p(θ)及び第2試験分布p(h,z)を求める処理を繰り返し、その結果を過去のデータほど比率が低下するように減衰係数ηfcを乗じて足し合わせていく、いわゆるオンライン化した変分ベイズ推定法を用いて、因子分解を行っている。
【0134】
従って、本実施形態によれば、使用する画像系列の数(フレーム数)を増加させても、それによって増加する処理量は、Eステップ,Mステップを1回ずつ実行する際の処理量を単位として、加算的に増大するだけで、指数関数的に増大することがないため、因子分解に要する処理負荷(ひいては処理に要する時間)を大幅に削減することができる。
【0135】
その結果、自動車に搭載される演算器は一般的に計算能力が低いが、そのような場合でも問題なく適用することができる。
【0136】
更に本実施形態では、Mステップで求める第1試験分布を規定するパラメータの算出式中に現れる十分統計量<<r>>fc 及び減衰係数ηfcを、前フレームでの算出結果を利用した簡易な式((62)(63)式参照)によって逐次的求めるようにされているため、因子分解に要する処理負荷を、更に削減することができる。
【0137】
また、本実施形態では、十分統計量<<r>>fcが求められれば観測データ行列xfcは不要であり、特徴点の増減に対応するために、過去の観測データ行列を記憶しておく必要がないため、装置の記憶容量も削減することができる。
【0138】
[実験]
図10に示すような二つの物体(四角柱,三角柱)を適当に動かして画像に投影したものを入力画像系列として、第2実施形態で説明した処理を実行する画像処理装置1に処理を行わせて形状行列zを求めた。なお、特徴点としては、各物体の頂点を用いた。
【0139】
図11は、処理の結果得られた形状行列zから推定し二つの物体の形状の推定誤差(RMS誤差)の推移を観測フレーム数に対して示したものであり、(a)が四角柱についての結果、(b)が三角柱についての結果である。
【0140】
図11からは、フレーム数が少ないと推定精度が低いが、フレーム数の増加に共に推定精度が向上していること、及び、二つの物体を正しく分離できていることがわかる。
【0141】
[他の実施形態]
以上本発明の実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において、様々な態様での実施が可能である。
【0142】
例えば、上記実施形態では、頭部姿勢を推定するためにアフィンパラメータを用いているが、これは頭部姿勢の推定を行うことができれば、例えば、アフィンパラメータを用いずに、拡張カルマンフィルタを利用して直接頭部推定を行う手法等を採用してもよい。
【0143】
また、因子分解を終了させる際の終了条件として、平均顔モデルから求めた自由エネルギーに基づいて設定されたエネルギー閾値を用いているが、例えば、処理の繰り返し回数が、予め設定された回数閾値より大きいことを終了条件としてもよい。この場合、処理を終了させるか否かの判断のために、自由エネルギーを算出する必要がなくなるため、当該装置での処理負荷を、より一層軽減することができ、また、常に一定時間内で処理を終了させることができる。
【図面の簡単な説明】
【0144】
【図1】発明が適用された画像処理装置の全体構成を示すブロック図。
【図2】固定特徴点の説明図。
【図3】任意特徴点の説明図。
【図4】画像処理装置が使用する座標系を示す説明図。
【図5】特徴点追跡部及び推定部が扱う状態空間モデルを表すグラフ。
【図6】時系列ベイズ推定の動作概要を示す説明図。
【図7】個人顔モデル学習部が扱うグラフィックモデルを示す説明図。
【図8】第1実施形態における個人顔モデル学習部の処理内容を示すフローチャート。
【図9】第2実施形態における個人顔モデル学習部の処理内容を示すフローチャート。
【図10】実験に用いた物体の形状を示す説明図。
【図11】物体の形状と実験により得られた形状との誤差を示すグラフ。
【符号の説明】
【0145】
1…画像処理装置 2…カメラ 3…画像取込装置 4…特徴点追跡部 5…顔モデル供給部 6…推定部 7…頭部姿勢算出部 41…固定特徴点追跡部 43…任意特徴点追跡部 51…平均顔モデル記憶部 52…個人顔モデル学習部 53…顔モデル切替部
【特許請求の範囲】
【請求項1】
画像系列を入力し、入力された各画像から予め設定された特徴を有する複数の特徴点を抽出すると共に、前記特徴点のそれぞれについて該特徴点の位置を画像面上で追跡する特徴点抽出追跡手段と、
該特徴点抽出追跡手段での抽出,追跡結果に従って、前記特徴点の位置を表す観測データ行列を生成する観測データ行列生成手段と、
該観測データ行列生成手段にて生成された観測データ行列を因子分解して、前記画像に写された物体の三次元形状を表す形状行列および該物体の運動を表す運動行列を生成する分解手段と、
を備えた三次元形状復元装置において、
前記分解手段は、
前記観測データ行列をx、前記形状行列をz、前記特徴点のそれぞれが属する物体を指定する指定行列をh、前記運動行列,前記特徴点の測定の正確さ,前記特徴点がそれぞれの物体に属している確率をまとめたモデルパラメータをθとして、前記観測データ行列xから事後確率P(θ,z,h|x)を計算することで、θ,z,hを求めることを特徴とする三次元形状復元装置。
【請求項2】
前記分解手段は、
前記事後確率P(θ,z,h|x)の近似関数である試験分布q(θ,h,z)が、第1試験分布q(θ)と第2試験分布q(h,z)とに因子化されるものとして、前記事後確率P(θ,z,h|x)と前記試験分布q(θ,h,z)とのKL距離を最小にする前記第1試験分布q(θ)及び第2試験分布q(h,z)を求めることで、確率的に因子分解計算を実行することを特徴とする請求項1に記載の三次元形状復元装置。
【請求項3】
前記観測データ行列生成手段は、予め設定されたフレーム数分の画像に基づいて前記観測データ行列xを生成し、
前記分解手段は、
前記第1試験分布q(θ)を固定して前記第2試験分布q(z,h)を推定する第1のステップ、及び、前記第2試験分布q(z,h)を固定して前記第1試験分布q(θ)を推定する第2のステップを、互いの推定結果を用いて交互に繰り返し実行する推定手段と、
予め設定された終了条件が満たされている場合に、前記推定手段を終了させる終了手段と、
からなり、最終的に得られた前記第2試験分布q(z,h)から形状行列z及び指定行列hを得ることを特徴とする請求項2に記載の三次元形状復元装置。
【請求項4】
前記観測データ行列生成手段は、1フレーム分の画像毎に前記観測データ行列xを生成し、
前記分解手段は、
前記観測データ行列生成手段にて前記観測データ行列xが生成される毎に、前記第1試験分布q(θ)を固定して前記第2試験分布q(z,h)を推定する第1のステップ、及び、前記第2試験分布q(z,h)を固定して前記第1試験分布q(θ)を推定する第2のステップを、互いの推定結果を用いて実行する推定手段と、
予め設定された終了条件が満たされている場合に、前記推定手段及び更新手段を終了させる終了手段と、
からなり、前記推定手段によって逐次的に得られる前記第2試験分布q(z,h)から形状行列z及び指定行列hを得ることを特徴とする請求項2に記載の三次元形状復元装置。
【請求項5】
自動車に搭載して使用することを特徴とする請求項1乃至請求項4のいずれかに記載の三次元形状復元装置。
【請求項1】
画像系列を入力し、入力された各画像から予め設定された特徴を有する複数の特徴点を抽出すると共に、前記特徴点のそれぞれについて該特徴点の位置を画像面上で追跡する特徴点抽出追跡手段と、
該特徴点抽出追跡手段での抽出,追跡結果に従って、前記特徴点の位置を表す観測データ行列を生成する観測データ行列生成手段と、
該観測データ行列生成手段にて生成された観測データ行列を因子分解して、前記画像に写された物体の三次元形状を表す形状行列および該物体の運動を表す運動行列を生成する分解手段と、
を備えた三次元形状復元装置において、
前記分解手段は、
前記観測データ行列をx、前記形状行列をz、前記特徴点のそれぞれが属する物体を指定する指定行列をh、前記運動行列,前記特徴点の測定の正確さ,前記特徴点がそれぞれの物体に属している確率をまとめたモデルパラメータをθとして、前記観測データ行列xから事後確率P(θ,z,h|x)を計算することで、θ,z,hを求めることを特徴とする三次元形状復元装置。
【請求項2】
前記分解手段は、
前記事後確率P(θ,z,h|x)の近似関数である試験分布q(θ,h,z)が、第1試験分布q(θ)と第2試験分布q(h,z)とに因子化されるものとして、前記事後確率P(θ,z,h|x)と前記試験分布q(θ,h,z)とのKL距離を最小にする前記第1試験分布q(θ)及び第2試験分布q(h,z)を求めることで、確率的に因子分解計算を実行することを特徴とする請求項1に記載の三次元形状復元装置。
【請求項3】
前記観測データ行列生成手段は、予め設定されたフレーム数分の画像に基づいて前記観測データ行列xを生成し、
前記分解手段は、
前記第1試験分布q(θ)を固定して前記第2試験分布q(z,h)を推定する第1のステップ、及び、前記第2試験分布q(z,h)を固定して前記第1試験分布q(θ)を推定する第2のステップを、互いの推定結果を用いて交互に繰り返し実行する推定手段と、
予め設定された終了条件が満たされている場合に、前記推定手段を終了させる終了手段と、
からなり、最終的に得られた前記第2試験分布q(z,h)から形状行列z及び指定行列hを得ることを特徴とする請求項2に記載の三次元形状復元装置。
【請求項4】
前記観測データ行列生成手段は、1フレーム分の画像毎に前記観測データ行列xを生成し、
前記分解手段は、
前記観測データ行列生成手段にて前記観測データ行列xが生成される毎に、前記第1試験分布q(θ)を固定して前記第2試験分布q(z,h)を推定する第1のステップ、及び、前記第2試験分布q(z,h)を固定して前記第1試験分布q(θ)を推定する第2のステップを、互いの推定結果を用いて実行する推定手段と、
予め設定された終了条件が満たされている場合に、前記推定手段及び更新手段を終了させる終了手段と、
からなり、前記推定手段によって逐次的に得られる前記第2試験分布q(z,h)から形状行列z及び指定行列hを得ることを特徴とする請求項2に記載の三次元形状復元装置。
【請求項5】
自動車に搭載して使用することを特徴とする請求項1乃至請求項4のいずれかに記載の三次元形状復元装置。
【図1】
【図4】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図5】
【図6】
【図4】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図5】
【図6】
【公開番号】特開2010−123070(P2010−123070A)
【公開日】平成22年6月3日(2010.6.3)
【国際特許分類】
【出願番号】特願2008−298478(P2008−298478)
【出願日】平成20年11月21日(2008.11.21)
【出願人】(504143441)国立大学法人 奈良先端科学技術大学院大学 (226)
【出願人】(000004260)株式会社デンソー (27,639)
【Fターム(参考)】
【公開日】平成22年6月3日(2010.6.3)
【国際特許分類】
【出願日】平成20年11月21日(2008.11.21)
【出願人】(504143441)国立大学法人 奈良先端科学技術大学院大学 (226)
【出願人】(000004260)株式会社デンソー (27,639)
【Fターム(参考)】
[ Back to top ]