説明

顔画像合成装置

【課題】登録対象者が異なる表情をして写っている複数の顔画像から、照合に適した顔画像を合成可能な顔画像合成装置を提供する。
【解決手段】顔画像合成装置1は、対象者を撮影した複数の顔画像を3次元顔形状データにマッピングして各顔画像に対応する3次元顔モデルを作成するマッピング部53と、複数の3次元顔モデルのそれぞれを2次元に展開した展開顔画像を生成する展開顔画像生成部54と、複数の展開顔画像から少なくとも第1の展開顔画像と第2の展開顔画像を選択するとともに、予め設定された境界線候補の中から、顔の所定部位を回避する境界線候補を選択して合成境界に設定する顔画像選定部55と、第1の展開顔画像において顔のテクスチャ情報を有する第1の領域と第2の展開顔画像において顔のテクスチャ情報を有する第2の領域とを合成境界に基づいて合成し、合成顔画像を作成する顔画像合成部57とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、人物の顔を撮影した画像から、照合に適した顔画像を作成する顔画像合成装置に関する。
【背景技術】
【0002】
従来より、対象者の顔を撮影して取得した顔画像を登録された顔画像と照合することにより、その対象者を認証する顔認証装置が提案されている。このような顔認証装置は、事前に対象者本人の顔画像を登録しておき、利用時に取得した顔画像と比較した結果に基づいて、認証の可否を決定する。そのため、登録用の顔画像の撮影時における顔の向きなどにより、登録された顔画像上に欠落した顔の部分が存在すると、顔認証装置は、その欠落部分についての照合ができないため、認証精度が低下してしまうおそれがある。そこで、同一人物の顔を異なる方向から撮影した複数の画像を用いて、照合用の顔画像を作成する技術が提案されている(例えば、特許文献1を参照)。
【0003】
例えば、特許文献1に開示された顔画像照合装置は、3次元顔モデルの一部または全てに対し、オクルージョンなどによる顔の一部のテクスチャの欠落部分を補う向きの顔画像をマッピングすることにより、テクスチャの欠損がない3次元顔モデルを作成する。その際、この顔画像照合装置は、合成に用いられた2枚の顔画像の撮影条件の違いなどにより、合成された部分の境界で画素値の差が生じることを防ぐため、3次元顔モデルに既にマッピングされている顔画像と追加でマッピングする別の顔画像とを2次元上で顔特徴点を用いて位置合わせをして平均化し、この平均化された顔画像を、顔の3次元形状を表す3次元顔形状データにマッピングする。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2009−245338号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に開示された技術を用いることにより、テクスチャの欠損がない顔画像を作成することが可能となる。
しかしながら、顔画像に写っている対象者の顔の領域全体が、照合処理に適しているとは限らない。特に、対象者の表情が顔画像の合成に用いる複数の顔画像ごとに異なっていることがある。このような場合において、一方の顔画像上でテクスチャが欠落している領域の境界上に目、鼻、口といった顔の特徴的な部位が位置していると、他方の顔画像からその欠落部分に相当している部分をマッピングすることにより、例えば、顔の右半分では口を開け、顔の左半分では口を閉じているような不自然な表情となることがある。また、特許文献1に開示されているように、二つの顔画像を平均化すると、その特徴的な部分がぼやけてしまう。そのため、合成された顔画像が照合に適したものとならない場合があった。 そのため、このような写っている人物の表情が異なる顔画像を用いても、照合処理に適した顔画像を合成可能な技術が求められている。
【0006】
そこで、本発明は、登録対象者が異なる表情をしている複数の顔画像から、照合に適した顔画像を合成可能な顔画像合成装置を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一つの形態として、複数の顔画像を合成して合成顔画像を生成する顔画像合成装置が提供される。この顔画像合成装置は、同一の対象者を撮影した複数の顔画像と人物の顔の形状を表す3次元顔形状データとその3次元顔形状の顔の所定部位を参照して設定された境界線候補とを記憶する記憶部と、複数の顔画像のそれぞれを、3次元顔形状データと位置合わせして、その3次元顔形状データにマッピングすることにより、複数の顔画像のそれぞれに対応する3次元顔モデルを作成するマッピング部と、複数の3次元顔モデルのそれぞれを2次元に展開した展開顔画像を生成する展開顔画像生成部と、複数の展開顔画像から少なくとも第1の展開顔画像と第2の展開顔画像を選択するとともに、上記の顔の所定部位を回避するように境界線候補を選択して合成境界に設定する顔画像選定部と、第1の展開顔画像において顔のテクスチャ情報を有する第1の領域と第2の展開顔画像において顔のテクスチャ情報を有する第2の領域とを合成境界に基づいて合成し、合成顔画像を作成する顔画像合成部とを有する。
【0008】
なお顔の所定部位は、対象者の表情に応じて形状が変わる口、目、眉のうちの一つまたは複数の部位であることが好ましい。
【0009】
また顔画像選定部は、記憶部に記憶されている境界線候補のうち、第1の展開顔画像において顔のテクスチャ情報を有する第1の領域と第2の展開顔画像において顔のテクスチャ情報を有する第2の領域とが重なる共通領域に含まれる境界線候補を合成境界とすることが好ましい。
【0010】
また顔画像選定部は、複数の展開顔画像から選択された二つの展開顔画像を含む組み合わせであって、その組み合わせに含まれる二つの展開顔画像において顔のテクスチャ情報を有する領域をそれぞれ一つの画像上にマッピングすることにより作成される合成顔画像において顔のテクスチャ情報の欠けがない組み合わせを少なくとも一つ求め、その組み合わせにおける共通領域に含まれる境界線候補上の二つの展開顔画像の対応する画素の値の差の統計量を輝度相違度として算出し、輝度相違度が最小または所定の閾値以下となる組み合わせに含まれる二つの展開顔画像をそれぞれ第1の展開顔画像及び第2の展開顔画像とするとともに、所定の閾値以下または最小となる輝度相違度に対応する境界線候補を合成境界とすることが好ましい。
【発明の効果】
【0011】
本発明に係る顔画像合成装置は、登録対象者が異なる表情をしている複数の顔画像から、照合に適した顔画像を合成できるという効果を奏する。
【図面の簡単な説明】
【0012】
【図1】本発明の一つの実施形態に係る顔画像合成装置の概略構成図である。
【図2】展開顔画像を生成するために3次元顔モデルに対して設定される座標系の一例を示す図である。
【図3】(a)は、3次元顔モデルの一例の概略図であり、(b)は、(a)に示された3次元顔モデルから作成される展開顔画像の概略図である。
【図4】(a)は、展開顔画像の一例を示す図であり、(b)は、(a)に示した展開顔画像に写っている登録対象者の表情と異なる表情の展開顔画像の他の一例を示す図である。
【図5】(a)は、境界線候補情報の一例を示す図であり、(b)は、設定された合成境界と共通領域の関係を示す図である。
【図6】(a)は、展開顔画像の一例を示す図であり、(b)は、(a)に示された展開顔画像の着目画素と合成境界間の距離と、着目画素に適用される重み係数との関係を示すグラフである。
【図7】顔画像合成処理の動作を示すフローチャートである。
【図8】顔画像合成処理の動作を示すフローチャートである。
【発明を実施するための形態】
【0013】
以下、本発明の一つの実施形態による顔画像合成装置を、図を参照しつつ説明する。この顔画像合成装置は、人間の顔の3次元的な形状を表す3次元顔形状データ上に、登録対象者の顔を撮影した顔画像をマッピングすることで、その登録対象者の3次元顔モデルを作成する。この顔画像合成装置は、マッピングに用いる顔画像に欠落部分が存在する場合、その欠落部分に、その欠落部分に相当する情報を持つ他の顔画像の対応する部分をマッピングして合成顔画像を作成する。その際、この顔画像合成装置は、合成に用いられる二つの顔画像のどちらにも写っている共通領域内において、表情に応じて形状などが変化する、目、口、眉などの特徴的な部位を避けるように、二つの顔画像のそれぞれからテクスチャ情報がマッピングされる領域の境界を設定する。これにより、この顔画像合成装置は、顔のテクスチャ情報が合成される境界を挟んで顔の特徴的な部位の形状が変わることを避けるように合成顔画像を作成する。
【0014】
図1は、一つの実施形態に係る顔画像合成装置1の概略構成を示す図である。図1に示すように、顔画像合成装置1は、撮像部2と、インターフェース部3と、記憶部4と、画像処理部5とを有する。
【0015】
撮像部2は、例えば、カメラを有し、監視領域内に進入した登録対象者の顔を撮影した2次元の入力顔画像を作成する。そのために、撮像部2は、監視領域を撮影可能な位置に設置される。例えば、監視領域が店舗、廊下などの屋内に設定されている場合、撮像部2は、監視領域内の天井近傍あるいは監視領域の境界を形成する壁面に、人の身長よりも高い位置に設置される。また撮像部2は、監視領域の通用口近傍を撮影するように設置されてもよい。さらに撮像部2は一つに限られず、複数存在してもよい。
なお、撮像部2が有するカメラは、入力顔画像上の肌色部分を抽出することが容易となるように、可視光域に感度を有し、カラーの多階調画像を作成するものとすることが好ましい。しかし、撮像部2が有するカメラは、近赤外域に感度を有し、グレー画像を作成するカメラであってもよい。また撮像部2は、入力顔画像上に写っている顔の目、鼻、口などの顔特徴が区別できる程度の画素数を有することが好ましい。
撮像部2は、入力顔画像を作成する度に、その入力顔画像をインターフェース部3へ出力する。
【0016】
インターフェース部3は、撮像部2と接続されるインターフェース回路であり、撮像部2から受け取った入力顔画像を画像処理部5に渡す。
記憶部4は、半導体メモリ、磁気記録媒体及びそのアクセス装置及び光記録媒体及びそのアクセス装置のうちの少なくとも一つを有する。そして記憶部4は、顔画像合成装置1を制御するためのコンピュータプログラム、各種パラメータ及びデータなどを記憶する。また記憶部4は、3次元顔形状データ及び3次元顔形状データに対応する3D顔特徴点の3次元位置情報を記憶する。3次元顔形状データは複数存在してもよく、また一つであってもよい。3次元顔形状データは、人物の顔の3次元形状を表すフレームモデルであって、ワイヤーフレームモデルあるいはサーフェイスモデル等が用いられる。なお3次元顔形状データは、例えば、複数の人物の顔形状からそれぞれ作成されたり、多数の人物の顔形状を模した顔形状モデルを平均化して作成される。さらに、3次元顔形状データとして、他の方法によって作成された3次元顔形状データの一部を変形させたもの、例えば、顔の中心から上側部分の長さと下側部分の長さの比を変化させたものを用いてもよい。
【0017】
また、3D顔特徴点は、目、鼻、口など、形状若しくは色成分について他と異なる特徴的な部位の何れかの点、例えばそれらの部位の中心点若しくは端点を表す。例えば、3D顔特徴点には、眉頭、眉尻、黒目中心、目領域中心、目頭、目尻、鼻尖点、鼻孔中心、口中心、口端などが含まれる。なお、記憶する3D顔特徴点の種類及び数に制限はないが、少なくとも2D顔特徴点抽出部51において抽出可能な顔特徴点と同じ部位の特徴点を全て含むことが好ましい。本実施形態では、3D顔特徴点として、左右それぞれの目領域中心、目頭及び目尻と、鼻尖点、口中心、及び左右の口端、耳珠点、顎角点及びオトガイ点の15箇所を記憶するものとした。
さらに記憶部4は、入力顔画像、展開顔画像、重み参照テーブルの形で合成用重み係数、及び別個の展開顔画像からそれぞれマッピングされる領域の境界の候補である境界線候補情報などを記憶する。なお、展開顔画像、合成用重み係数及び境界線候補情報の詳細については、画像処理部5の関連する構成要素とともに説明する。
【0018】
画像処理部5は、1個または複数個のプロセッサ及びその周辺回路を有する。そして画像処理部5は、撮像部2から入力顔画像を受け取る度に、その入力顔画像を登録対象者の識別コードと関連付けて記憶部4に記憶する。なお、登録対象者の識別コードは、たとえば、図示しないユーザインターフェースを介して、画像処理部5に入力される。あるいは、画像処理部5は、入力顔画像に写っている登録対象者の顔が、記憶部4に既に登録されている登録者の何れの3次元顔モデルとも一致しない場合、既に設定されている何れの識別コードとも異なる識別コードを新たに生成してもよい。この場合、画像処理部5は、公知の顔画像照合方法の何れかを利用して、入力顔画像に写っている登録対象者の顔が、記憶部4に登録されている登録者の3次元顔モデルと一致するか否かを判定できる。
【0019】
画像処理部5は、登録対象者について複数の入力顔画像を用いて、その登録対象者の3次元顔モデルを作成する。そのために、画像処理部5は、そのプロセッサ上で動作するソフトウェアにより実装される機能モジュールとして、2D顔特徴点抽出部51、位置合わせ情報算出部52、入力顔画像マッピング部53、展開顔画像生成部54、合成元画像選定部55、合成重み算出部56、顔画像合成部57及び展開顔画像マッピング部58を有する。
なお、画像処理部5が有するこれらの各部は、独立した集積回路、ファームウェア、マイクロプロセッサなどで構成されてもよい。
以下、画像処理部5の各部について詳細に説明する。
【0020】
2D顔特徴点抽出部51は、画像処理部5が登録対象者についての入力顔画像を取得する度に、その入力顔画像から顔特徴点を抽出する。そして2D顔特徴点抽出部51は、抽出した顔特徴点の種別と入力顔画像上の位置情報(例えば、入力顔画像の左上端部を原点とする2次元座標値)を、位置合わせ情報算出部52へ出力する。
本実施形態において、2D顔特徴点抽出部51は、記憶部4に記憶されている各3D顔特徴点(目領域中心、鼻尖点、口端などの15箇所)に対応する顔特徴点を抽出する。2D顔特徴点抽出部51は、入力顔画像から顔特徴点を抽出するための公知の様々な手法を用いることができる。例えば、2D顔特徴点抽出部51は、入力顔画像に対してエッジ抽出処理を行って周辺画素との画素値の差が大きいエッジ画素を抽出する。そして2D顔特徴点抽出部51は、エッジ画素の位置、パターンなどに基づいて求めた特徴量が、目、鼻、口などの部位について予め定められた条件を満たすか否かを調べて各部位の位置を特定することにより、各顔特徴点を抽出することができる。また2D顔特徴点抽出部51は、エッジ抽出処理を行ってエッジ画素を抽出する代わりに、ガボール変換処理あるいはウェーブレット変換処理を行って、異なる複数の空間周波数帯域で局所的に変化の大きい画素を抽出してもよい。さらに2D顔特徴点抽出部51は、顔の各部位に相当するテンプレートと入力顔画像とのテンプレートマッチングを行って顔の各部位の位置を特定することにより、顔特徴点を抽出してもよい。さらにまた、2D顔特徴点抽出部51は、キーボード、マウス及びディスプレイなどで構成されるユーザインターフェース(図示せず)を介してユーザに各顔特徴点の位置を指定させることにより、各顔特徴点を取得してもよい。
【0021】
位置合わせ情報算出部52は、入力顔画像について2D顔特徴点抽出部51により抽出された各顔特徴点と、3次元顔形状データに関連する3D顔特徴点とを用いて、3次元顔形状データに回転、拡大/縮小などの処理を行い、入力顔画像と3次元顔形状データの位置合わせを行う。そして位置合わせ情報算出部52は、その位置合わせの結果として得られる位置合わせ情報を、3次元顔形状データに関連付けて、入力顔画像マッピング部53及び合成元画像選定部55へ出力する。位置合わせ情報は、例えば、3次元顔形状データの3次元の正規直交座標系(X,Y,Z)の各軸に沿った回転角、並進量、及び拡大/縮小率を含む。この正規直交座標系(X,Y,Z)では、例えば、3次元顔形状データ上の複数の3D顔特徴点の重心を原点とし、顔に対して水平かつ右目から左目へ向かう方向に(3次元顔モデルの正面に向かって左から右に)X軸、X軸及びZ軸と直交し、喉付近から頭頂部へ向かう方向、すなわち下から上へ向かう方向にY軸、X軸及びY軸と直交し、鼻尖点から後頭部へ向かう方向にZ軸が設定される。
【0022】
位置合わせ情報算出部52は、例えば、以下のように位置合わせ情報を算出する。まず、3次元顔形状データ上の3D顔特徴点を、2次元画像である入力顔画像上に投影する。そして位置合わせ情報算出部52は、投影された各3D顔特徴点の位置と、2D顔特徴点抽出部51により抽出された、対応する各顔特徴点の位置との差の二乗和を位置ずれ量として求める。位置合わせ情報算出部52は、この位置ずれ量が最小となるように、3次元顔形状データを、3次元の正規直交座標系の各軸に沿って回転または並進させたり、拡大または縮小させる。位置合わせ情報算出部52は、位置ずれ量が最小となったときの3次元顔形状データの回転角、並進量、及び拡大/縮小率を位置合わせ情報とする。
【0023】
また、記憶部4に複数の3次元顔形状データが記憶されている場合、位置合わせ情報算出部52は、各3次元顔形状データについて、同一人物に対する複数の入力顔画像のそれぞれに対する上記の位置ずれ量の最小値を求める。そして位置合わせ情報算出部52は、複数の入力顔画像に対する位置ずれ量の最小値の総和が最も小さくなる3次元顔形状データを、それら入力顔画像に写っている登録対象者に適用する3次元顔形状データとして選択する。位置合わせ情報算出部52は、選択された3次元顔形状データに対する各入力顔画像の位置ずれ量が最小となったときの位置合わせ情報を入力顔画像マッピング部53及び合成元画像選定部55へ出力する。
【0024】
なお、位置合わせ情報算出部52は、入力顔画像について抽出された各顔特徴点を3次元空間内へ投影した後、3次元顔形状データ上の3D顔特徴点との位置ずれ量が最小となるように3次元顔形状データに回転、拡大/縮小などの処理を行い、位置合わせ情報を算出してもよい。
【0025】
入力顔画像マッピング部53は、記憶手段4に記憶されている3次元顔形状データのうち、位置合わせ情報算出部52により選択された3次元顔形状データの顔の向きを、入力顔画像に写った顔の向きと同じ顔の向きとなるように調整する。そのために、入力顔画像マッピング部53は、選択された3次元顔形状データを、対応する位置合わせ情報にしたがって、3次元の正規直交座標系の各軸に沿って回転または並進させたり、拡大または縮小させて向き調整済み形状モデルを作成する。
【0026】
入力顔画像マッピング部53は、向き調整済み形状モデルに、入力顔画像をテクスチャ画像としてマッピングすることにより、入力顔画像に写っている登録対象者の3次元顔モデルを作成する。すなわち、入力顔画像について抽出されている各顔特徴点と、向き調整済み形状モデルとして選択された3次元顔形状データについての3D顔特徴点との位置が合うように、位置合わせ情報を用いて入力顔画像をテクスチャ画像として向き調整済み形状モデルにマッピングする。なお、マッピングは、入力顔画像の各画素の値を、3次元顔形状データの対応する位置の画素値とする処理である。
入力顔画像マッピング部53は、画像処理部5が登録対象者についての入力顔画像を取得する度に、その入力顔画像に対する3次元顔モデルを作成する。ただし、記憶部4に複数の3次元顔形状データが記憶されている場合は、登録対象者の複数の入力顔画像に対して最適な3次元顔形状データが選択された後、入力顔画像マッピング部53は、各入力顔画像について3次元顔モデルを作成する。そして入力顔画像マッピング部53は、作成した3次元顔モデルを登録対象者の識別コードと関連付けて記憶部4に記憶するとともに、展開顔画像生成部54へ出力する。
【0027】
展開顔画像生成部54は、入力顔画像マッピング部53から登録対象者の3次元顔モデルを受け取る度に、その3次元顔モデル上にマッピングされたテクスチャ情報を2次元に展開した展開顔画像を生成する。
図2は、展開顔画像を生成するために3次元顔モデルに対して設定される座標系を示す。
図2おいて、X軸は、3次元顔モデル200に対して、右目から左目へ向かうように(3次元顔モデルの正面に向かって左から右に)、水平方向の軸として定義される。Y軸は、X軸及びZ軸と直交し、喉付近から頭頂部へ向かうように、すなわち下から上へ向かう軸として定義される。Z軸は、X軸及びY軸と直交し、鼻尖点から後頭部へ向かう方向の軸として定義される。X軸、Y軸及びZ軸の交点である原点Oは、3次元顔モデル200の重心に設定される。
【0028】
本実施形態において、Z座標が負の値となる象限における、すなわち、3次元顔モデルにおける顔の正面側における、X=0であるYZ平面220と3次元顔モデル200の表面との交線210をテクスチャスキャンラインと呼ぶ。
展開顔画像生成部54は、Y軸を回転中心として3次元顔モデルを回転させ、それぞれの回転角度における、テクスチャスキャンライン210上の画素値を読み取って、横軸を回転角、縦軸をY座標とする2次元上にマッピングすることにより、展開顔画像を作成する。なお、入力顔画像がカラー画像である場合、画素値は、例えばRGB各色の輝度値となる。また、入力顔画像がグレー画像である場合、画素値は輝度値となる。例えば、鼻尖点がYZ平面220上に位置するときの回転角を0°とし、3次元顔モデル200を矢印230に示されるように時計回りに回転させたときの回転角の値を正、3次元顔モデル200を矢印240に示されるように反時計回りに回転させたときの回転角の値を負とする。
【0029】
展開顔画像生成部54は、例えば、3次元顔モデル200を−180°〜+180°まで所定の単位(例えば、1°)ずつ回転させ、その度にテクスチャスキャンライン210上の画素値を読み取る。なお、回転角が−180°または+180°近傍のテクスチャ情報、すなわち後頭部近傍のテクスチャ情報は、顔の認証処理に利用するには適さない。そこで展開顔画像生成部54は、3次元顔モデル200を回転させる範囲を、少なくとも顔の一部がテクスチャラインとなる範囲、例えば、−150°〜+150°の範囲としてもよい。
なお、展開顔画像生成部54は、X軸を回転軸としてもよい。この場合には、例えば、Y=0のXZ平面と、3次元顔モデルの表面との交点をテクスチャスキャンラインとする。
【0030】
また、展開顔画像生成部54は、3次元顔モデルの肌色に相当する部分及び肌色に囲まれた部分だけを展開顔画像上にマッピングすることが好ましい。これは、髪の毛のように、顔の周囲に位置し、肌色と異なる色を持つ部分は個人識別のための情報をあまり有していないためである。なお、肌色に相当する部分は、例えば、入力顔画像がRGBのカラー画像である場合、3次元顔モデルの各部の値をHSV表色系に変換したときに、色相Hの成分の色情報が、肌色に相当値の範囲(例えば、色相Hの成分の色情報が0から359で表される場合に0〜30)に含まれる部分とする。
【0031】
展開顔画像生成部54は、作成した展開顔画像を元の3次元顔モデル、入力顔画像及び登録対象者の識別コードと関連付けて記憶部4に記憶する。また展開顔画像生成部54は、3次元顔モデルから展開顔画像を作成する際に、展開顔画像の各画素が3次元顔モデルの何れの位置に存在したのかを表す展開情報も、展開顔画像とともに記憶部4に記憶する。この展開情報は、後述する合成処理が終了した後の展開顔画像から3次元顔モデルを再現する際に利用される。
【0032】
図3(a)は、3次元顔モデルの一例の概略図であり、図3(b)は、図3(a)に示された3次元顔モデル300から作成される展開顔画像の概略図である。
図3(a)に示された3次元顔モデル300は、やや右側(向かって左側)を向いている入力顔画像から作成された3次元顔モデルである。このとき、上記のように、3次元顔モデル300をY軸を回転中心として1°ずつ回転させつつ、3次元顔モデル300の表面とYZ平面との交点の画素値情報を読み取ることにより、図3(b)に示されるような展開顔画像310が作成される。展開顔画像310の輪郭315は、3次元顔モデル300にマッピングされた入力顔画像の肌部分の輪郭に対応する。
【0033】
この例では、3次元顔モデル300が右側を向いているために、鼻の右側部分320、及び、右耳、右頬から顎にかけての顔の右側部分330が入力顔画像上で隠れているために、それらの部分のテクスチャ情報が存在しない。そのため、展開顔画像310においても、鼻の右側部分320、及び顔の右側部分330のテクスチャ情報は欠落している。このような、テクスチャ情報が欠落した領域を以下ではテクスチャ欠落領域と呼ぶ。また、テクスチャ情報が存在する領域と、テクスチャ欠落領域との境界を、以下ではテクスチャ欠落境界と呼ぶ。図3(b)では、テクスチャ欠落領域320のテクスチャ欠落境界325及びテクスチャ欠落領域330のテクスチャ欠落境界335は、それぞれ点線で示されている。
なお、輪郭315のうち、テクスチャ欠落領域330と重なる部分は、本来輪郭として写ってはいないが、ここでは、理解を容易にするために、顔の左側の輪郭を、顔の中心を通る線で左右反転した線を、欠落している部分の輪郭として図示した。またテクスチャ欠落領域内の画素の値は、例えば、テクスチャ情報が欠落していることを表す特定の値(例えば、通常取り得る画素値の範囲外の値である-1)に設定される。
【0034】
一般に、入力顔画像上で、登録対象者が正面を向いていると、テクスチャ情報が欠落する部分は少なくなる。しかし、登録対象者が少しでも横方向を向いていると、オクルージョンが生じるので、図3(a)及び(b)に示されるように、展開顔画像において、顔の一部のテクスチャ情報が欠落する。また、登録対象者が正面を向いた状態で撮影された入力顔画像が得られた場合でも、両耳から顎にかけての領域のテクスチャ情報は欠落する。
このように、展開顔画像上でテクスチャ情報が欠落していると、照合時において、特にその欠落している部分の方から撮影した顔画像が照合用の画像として得られたときに、その展開顔画像に対応する3次元顔モデルを用いた照合処理の精度が低下する。そこで顔画像合成装置1は、登録対象者について作成された複数の展開顔画像を用いて、テクスチャ情報の欠落のない合成展開顔画像を作成する。
【0035】
合成元画像選定部55は、顔画像選定部の一例であり、登録対象者の複数の展開顔画像の中から、合成展開顔画像を作成するために利用される複数の展開顔画像の組み合わせを決定する。
合成展開顔画像に写った登録対象者の顔が不自然にならないようにするためには、合成に用いられる二つの展開顔画像からマッピングされる領域の境界上に、登録対象者の表情に応じて形状の変わる、目、口、眉などの個人の特徴を豊富に含む特徴的な部位が存在せず、かつ、その境界付近において二つの展開顔画像の対応する画素間の輝度差ができるだけ小さいことが好ましい。
例えば、登録対象者が所定の領域、例えば、建物内の廊下を歩行している様子を撮像部2で撮影することにより入力顔画像が得られる場合、登録対象者の位置、顔の向き、または照明の設置位置などにより顔に対する照明条件は変化する。その結果、複数の入力顔画像のそれぞれに写っている登録対象者の顔の輝度は、入力顔画像ごとに異なる可能性がある。特に、顔画像合成装置1が複数の撮像部2を有し、それぞれの撮像部2によって撮影された画像を一人の登録対象者の入力顔画像として用いる場合に、そのような入力顔画像ごとの顔の輝度の違いが生じる傾向が強くなる。そして入力顔画像ごとの顔の輝度の違いがあまりに大きいと、そのような入力顔画像から作成された展開顔画像を用いた合成展開顔画像では、異なる展開顔画像がマッピングされた二つの領域の境界がエッジ状になってしまう。さらに、合成に利用される展開顔画像の枚数が増えると、それだけ異なる展開顔画像からマッピングされた領域の境界の数も増えるので、顔全体の輝度を合わせることが困難になる。
【0036】
さらに、合成展開顔画像の作成に用いられる複数の展開顔画像の撮影時刻に時間差が有れば、その時間差のうちに登録対象者の表情が変わることもある。
そのため、本実施形態では、合成元画像選定部55は、合成展開顔画像の作成に用いられる展開顔画像の数はできるだけ少なくする。さらに合成元画像選定部55は、合成に用いられる一方の展開顔画像からマッピングされる領域と他方の展開顔画像からマッピングされる領域の境界上に、登録対象者の表情に応じて形状の変わる、目、口、眉などの個人の特徴を豊富に含む特徴的な部位が存在しないようにその境界を設定可能で、かつ、その境界付近の合成する展開顔画像に写っている顔の輝度差ができるだけ小さくなるように、展開顔画像を選択する。なお、以下では、この境界を合成境界と呼ぶ。
【0037】
登録対象者の顔の向きが、撮像部2に対して正面を向いている状態から左へ45°回転した展開顔画像と、右へ45°回転した展開顔画像の2枚あれば、顔画像合成装置1は、殆どの場合、その登録対象者についてテクスチャ欠落領域の無い合成展開顔画像を作成できる。そこで本実施形態では、合成元画像選定部55は、記憶部4に記憶されている登録対象者の複数の展開顔画像の中から、2枚の展開顔画像を用いる組み合わせを全て求める。例えば、記憶部4にN枚の展開顔画像が記憶されている場合、この組み合わせの総数は、(NC2)通りとなる。ただしNは、2以上の整数である。なお、合成元画像選定部55は、2枚の展開顔画像を用いてテクスチャ欠落領域の無い合成展開顔画像を作成できない場合には、3枚以上の展開顔画像を選択してもよい。
【0038】
次に、合成元画像選定部55は、求めた組み合わせのそれぞれについて、その組み合わせに含まれる展開顔画像のみを用いて、テクスチャ欠落領域のない合成展開顔画像を作成できるか否かを判定する。例えば、合成元画像選定部55は、その組み合わせに含まれた展開顔画像の顔が写っている領域全てを、何のテクスチャ情報も持たない一つのマッピング用展開顔画像上にマッピングした場合において、顔に相当する画素に囲まれた欠落部分が存在せず、かつ、展開顔画像作成時における3次元顔モデルの回転角が所定の角度範囲内に相当する合成展開顔画像上の領域に欠落部分が存在しない場合、テクスチャ情報の欠落部分が存在しないと判定する。なお、所定の角度範囲は、顔が撮像部2に対して正面を向いた状態を回転角0°としたときに、±80°とすることができる。
逆に、合成展開顔画像上に、顔に相当する画素に囲まれた欠落部分が存在する場合、または上記の3次元顔モデルの回転角が所定の角度範囲内に相当する合成展開顔画像上の領域に欠落部分が存在する場合、合成元画像選定部55はテクスチャ情報の欠落部分が存在すると判定する。
【0039】
図4(a)は、展開顔画像の一例を示す図であり、図4(b)は、図4(a)に示した展開顔画像に写っている登録対象者の表情と異なる表情の展開顔画像の他の一例を示す図である。図4(a)において、展開顔画像400の顔の右側部分401及び鼻の右側部分402はテクスチャ欠落領域となっている。また図4(b)では、展開顔画像410の顔の左側部分411がテクスチャ欠落領域となっている。
ここで、展開顔画像410は、展開顔画像400のテクスチャ欠落領域401、402に対応する部分のテクスチャ情報を含んでいる。そのため、顔画像合成装置1は、この二つ展開顔画像400及び410を合成することにより、テクスチャ欠落領域のない合成展開顔画像を作成できる。
しかし、図4(a)及び(b)から明らかなように、展開顔画像400に写っている登録対象者の表情は、展開顔画像410に写っている登録対象者の表情と異なっている。具体的には、展開顔画像400では、登録対象者は口を閉じているのに対して、展開顔画像410では、登録対象者は口を開いている。そのため、口の上に合成境界が設定されると、合成展開顔画像上では、顔の右半分と左半分とで口の開き方が異なる、不自然な表情の顔の像が作成されることになる。
【0040】
そこで合成元画像選定部55は、テクスチャ欠落領域の無い合成展開顔画像が作成可能と判定した展開顔画像の組み合わせについて、顔の特徴的な部位を避けた合成境界を設定可能か否か判定する。
そのために、合成元画像選定部55は、記憶部4から、登録対象者の展開顔画像の作成に利用された3次元顔形状データに対応する境界線候補情報を読み込む。
【0041】
図5(a)は、3次元顔形状データを展開顔画像の作成手順に従って2次元に展開した展開顔画像500上に設定された境界線候補情報の一例を示す図である。境界線候補情報には、展開顔画像上に設定された複数のノード501と、ノード501同士を接続するリンク502とを含む。そして、合成境界となり得る境界線候補は、展開顔画像500の顔に相当する領域である顔領域510の上端に設定されたノードの何れかから顔領域510の下端に設定されたノードの何れかまで、1以上のノードを経由するリンク502を結んで設定される。例えば、図5(a)では、一つの境界線候補503が示されている。この境界線候補503は、ノード501aからノード501iまでの9個のノードと、それらノードを経由する8本のリンク502a〜502hにより構成される。このような境界線候補は複数設定される。そして境界線候補情報には、境界線候補ごとに、その境界線候補上の各ノードの個数及び座標が含まれる。
【0042】
各ノード及び各リンクは、それぞれ、表情に応じて形状の変わる顔の特徴的な部位と重ならないように設定される。例えば、図5(a)では、各ノード501及び各リンク502は、3次元顔形状データについて設定された目、鼻、口、眉を含む領域(以下では、これらの領域を特徴領域と呼ぶ)と重ならないように設定されている。そのため、各境界線候補も、特徴領域と重ならないように設定される。特に、本実施形態では、境界線候補から何れかの特徴領域までの距離が、後述する合成重み算出部56により算出される、後からマッピングされる展開顔画像に対する重み係数が略0となる合成境界からの距離よりも長くなるように、各ノード及び各リンクは設定される。
これら複数のノードは、展開顔画像上で格子状に設定されてもよく、あるいはハニカム状に設定されてもよい。さらに、これら複数のノードは、略等間隔に設定されてもよく、あるいは場所によって異なる密度で設定されてもよい。例えば、ノードは、特徴領域の周囲では、その他の領域よりも密に設定されてもよい。
【0043】
また、ノードが多数設定されている場合、設定可能な境界線候補の数は非常に多い。また多数のノードを経由する境界線候補は、境界線の形状が複雑になり、境界線自体も長くなる。そこで、各境界線候補は、例えば、経由するノードの数が10個以下となるように設定されることが好ましい。さらに、各境界線候補に含まれるリンクは、直線に限らず、例えば、複数のノードを滑らかな曲線で接続する、例えばスプライン関数によって表される曲線であってもよい。
または、境界線の長さが不必要に長くならないように、各境界線候補に含まれるリンクの長さの合計が顔領域の高さの1.5倍以下となるように、各境界線候補は設定されることが好ましい。
【0044】
合成元画像選定部55は、合成境界を決定するために、選択された組み合わせに含まれる、二つの展開顔画像の何れにおいても顔のテクスチャ情報が含まれている、すなわち、二つの展開顔画像の何れにおいてもテクスチャ欠落領域でなく、かつ、顔に相当する領域に含まれている領域を共通領域として抽出する。そして合成元画像選定部55は、境界線候補情報に含まれる複数の境界線候補のうち、共通領域内に完全に含まれる境界線候補を抽出する。なお、境界線候補上に位置する各ノードの座標は既知であるため、境界線候補が共通領域に含まれるか否かは、点及び線が所定の領域内に含まれるか否かを調べる公知の方法により判定できる。
【0045】
合成元画像選定部55は、抽出された境界線候補ごとに、その境界線候補上の二つの展開顔画像の対応する画素の値の差の平均値の総和を次式に従って算出し、その値を輝度相違度Pとする。
【数1】

ここでnは、着目する組み合わせに含まれる展開顔画像の総数を表す。またAvgi,i+1は、着目する組み合わせにおけるi番目の展開顔画像の境界線候補上の画素の値と、(i+1)番目の展開顔画像の対応する画素の値との差の平均値を表す。
なお、合成元画像選定部55は、平均値Avgi,i+1の総和の代わりに、i番目の展開顔画像の境界線候補上の画素の値と、(i+1)番目の展開顔画像の対応する画素の値との差の中央値の総和を輝度相違度Pとしてもよい。
【0046】
合成元画像選定部55は、選択された展開顔画像の組み合わせのそれぞれについて設定可能な全ての境界線候補の組み合わせについて輝度相違度Pを算出し、その輝度相違度Pが最小となる展開顔画像の組み合わせ及び境界線候補を求める。そして合成元画像選定部55は、輝度相違度Pが最小となった組み合わせに含まれる展開顔画像を、合成展開顔画像の作成に利用するものとして選択し、その輝度相違度Pの最小値に対応する境界線候補を合成境界とする。
あるいは、合成元画像選定部55は、選択された展開顔画像の組み合わせの中から、一つずつ輝度相違度Pを算出し、その輝度相違度Pが最初に所定の閾値以下となったときの組み合わせに含まれる展開顔画像を、合成展開顔画像の作成に利用するものとして選択し、所定の閾値以下となった輝度相違度Pに対応する境界線候補を合成境界としてもよい。なお、所定の閾値は、例えば、15に設定される。
【0047】
図5(b)は、図4(a)及び(b)に示された二つの展開顔画像についての共通領域と設定された合成境界との関係を示す図である。図5(b)に示された展開顔画像500において、テクスチャ欠落境界501よりも顔の右側部分511及びテクスチャ欠落境界502で囲まれた鼻の右側部分512は、図4(a)に示された展開顔画像400におけるテクスチャ欠落領域になっている。また、展開顔画像500において、テクスチャ欠落境界503よりも顔の左側部分513は、図4(b)に示された展開顔画像410におけるテクスチャ欠落領域になっている。そのため、展開顔画像500の中央部分がこの二つの展開顔画像400、410に対する共通領域514となる。そのため、合成境界520は、共通領域514内に含まれるように、顔の中央部分に設定される。
【0048】
さらに、合成元画像選定部55は、選択された展開顔画像について合成する順序を設定する。その際、合成元画像選定部55は、マッピング用展開顔画像に対して最初にマッピングされる展開顔画像について、合成境界とテクスチャ欠落境界に挟まれた領域を非合成領域として設定する。この非合成領域は、テクスチャ情報が欠落していないものの、合成展開顔画像の作成に利用されない領域である。非合成領域に関しては、次にマッピングされる展開顔画像の対応する領域のテクスチャ情報が合成展開顔画像の作成に利用される。また、合成元画像選定部55は、顔のテクスチャ情報を持つ領域から非合成領域を除いた領域を、合成展開顔画像の作成に利用する合成領域とする。
また、合成元画像選定部55は、後からマッピングされる展開顔画像において顔のテクスチャ情報を持つ領域を合成領域として設定する。なお、マッピング用展開顔画像は、登録対象者の入力顔画像に基づいて選択された3次元顔形状データを展開することにより得られる、テクスチャ情報を持たない画像である。
【0049】
例えば、図4(a)に示された展開顔画像400が先にマッピング用展開顔画像にマッピングされ、その後に図4(b)に示された展開顔画像410がマッピング用展開顔画像にマッピングされる場合、図5(b)においてテクスチャ欠落境界501と合成境界520に挟まれた領域が展開顔画像400についての非合成領域530となる。一方、合成境界520よりも顔の左側部分が、展開顔画像400についての合成領域となる。
また、展開顔画像410に関しては、図5(b)に示されたテクスチャ欠落境界503よりも顔の右側部分が合成領域となる。
【0050】
合成元画像選定部55は、合成展開顔画像の作成に利用されることを示すフラグ及び合成順序を選択された展開顔画像のそれぞれと関連付けて記憶部4に記憶する。また合成元画像選定部55は、設定された合成境界上の各ノードの座標及び各ノード間を結ぶリンクを表す式を記憶部4に記憶する。
【0051】
画像処理部5は、合成展開顔画像においてその合成境界がエッジとならず、合成境界近傍で画素の値が滑らかに変化するように、合成元画像選定部55により選択された展開顔画像を合成する。そのために、画像処理部5は、合成境界近傍で、且つマッピング用展開顔画像上に先にマッピングされた展開顔画像の合成領域では、その先にマッピングされた展開顔画像の画素の値と対応する次にマッピングされる展開顔画像の画素の値とを所定の重み係数を用いて加重平均する。
なお、以下では、先にマッピングされた展開顔画像を基準展開顔画像と呼び、後からマッピングされる展開顔画像を補完用展開顔画像と呼ぶ。
【0052】
合成重み算出部56は、基準展開顔画像の各画素の値に乗じる重み係数B(dist)を次式に従って決定する。
【数2】

ここでdistは、合成境界から、重み係数B(dist)が用いられる画素までの距離、例えば、合成境界からの画素数を表す。またWは、合成比率の変化率を調整するパラメータであり、1よりも大きい値に設定される。パラメータWを小さい値に設定するほど、重み係数B(dist)は、合成境界からの距離の変化に応じて緩やかに変化する。例えば、パラメータWは1.05に設定される。なお、合成境界からの距離distに位置する、補完用展開顔画像の画素値に乗じる重み係数は、1からB(dist)を引いた値となる。
【0053】
図6(a)は、基準展開顔画像の一例を示す図であり、図6(b)は、図6(a)に示された基準展開顔画像600の画素620と合成境界610間の距離と、画素620に適用される重み係数との関係を示すグラフである。
図6(a)において、基準展開顔画像600において、顔の右側部分及び鼻に相当する領域601は、テクスチャ欠落領域と非合成領域とを組み合わせた領域となっている。そのため、この領域601には、補完用展開顔画像の合成領域のテクスチャ情報がマッピングされる。また、基準展開顔画像600における合成領域602についても、合成境界610から所定距離内の画素については、合成処理において、基準展開顔画像の画素の値と補完用展開顔画像の対応する画素の値とが加重平均される。
【0054】
図6(b)において、横軸は、合成境界610から画素620までの距離を表し、縦軸は、(2)式によって求められる重み係数B(dist)の値を表す。またグラフ631及び632は、それぞれ、パラメータWをw1、w2に設定したときの重み係数B(dist)の値を表すグラフである。ただし、w1<w2である。
図6(b)に示されるように、画素620が合成境界上に位置するとき(すなわち、dist=0)、重み係数B(dist)は0となり、合成境界から画素620までの距離が大きくなるほど、重み係数B(dist)は1に近づく。
すなわち、合成処理において、合成境界の近くでは基準展開顔画像の情報は重視されず、補完用展開顔画像の情報が重視される。このように重み係数を設定する理由は、合成境界近傍では、基準展開顔画像に写っている登録対象者の顔の部分よりも補完用展開顔画像に写っている登録対象者の顔の部分の方が撮像部2に対して正面方向を向いており、従って、補完用展開顔画像の方がテクスチャ情報の信頼性が高いことによる。
一方、合成境界から離れるにつれ、逆に基準展開顔画像に写っている登録対象者の顔の部分の方が、補完用展開顔画像に写っている、対応する登録対象者の顔の部分よりも撮像部2に対して正面方向を向いており、テクスチャ情報の方が信頼性が高くなる。そのため、重み係数B(dist)は、合成境界からの距離が離れるほど大きな値となる。
【0055】
合成重み算出部56は、基準展開顔画像の画素ごとに、(2)式に従って重み係数B(dist)を算出する。なお、基準展開顔画像の合成境界(すなわち、dist<0となる画素)では、合成重み算出部56は、B(dist)=0とする。また、(2)式に従って算出されたB(dist)の値が、1に近い所定値(例えば、0.99)以上となったとき、合成重み算出部56は、B(dist)=1としてもよい。そして合成重み算出部56は、基準展開顔画像の画素の水平座標及び垂直座標をそれぞれ行及び列の番号とする重み参照テーブルの各欄に、その水平座標及び垂直座標で規定される画素の重み係数B(dist)を格納する。そして合成重み算出部56は、重み参照テーブルを記憶部4に記憶する。
【0056】
顔画像合成部57は、記憶部4に記憶された重み参照テーブルを参照して、選定された複数の展開顔画像を合成することにより、合成展開顔画像を作成する。先ず、顔画像合成部57は、合成元画像選定部55により選択された複数の展開顔画像のうち、1番目の順序の展開顔画像を基準展開顔画像とする。そして顔画像合成部57は、2番目の順序の展開顔画像を補完用展開顔画像とする。
なお、本実施形態では、画像処理部5は、登録対象者の全ての入力顔画像を、一つの3次元顔形状データにマッピングして3次元顔モデル及び展開顔画像を生成している。そのため全ての展開顔画像は既に位置合わせされている。そこで顔画像合成部57は、合成展開顔画像の着目する画素の値を、基準展開顔画像と補完用展開顔画像において着目する画素と同じ位置にある画素を次式に従って加重平均することにより算出できる。
【数3】

なお、IiCは、合成展開顔画像の画素iの画素値であり、Iimainは、基準展開顔画像の画素iの画素値であり、Iisubは、後からマッピングする補完用展開顔画像の画素iの画素値である。すなわち、顔画像合成部57は、基準展開顔画像のテクスチャ欠落領域及び非合成領域に補完用展開顔画像の合成領域内に含まれる対応する部分のテクスチャ情報をマッピングし、基準展開顔画像の合成領域では、基準展開顔画像の画素値と補完用展開顔画像の対応する画素値とを、重み係数B(dist)に応じて加重平均する。
同様に、顔画像合成部57は、3枚以上の展開顔画像を合成する場合、すでに複数の展開顔画像がマッピングされた展開顔画像をあらためて基準展開顔画像とし、次にマッピングする展開顔画像を補完用展開顔画像として、テクスチャ欠落領域がなくなるまで、すなわち、選択された全ての展開顔画像がマッピングされるまで、上記の処理を繰り返す。
顔画像合成部57は、作成した合成展開顔画像を登録対象者の識別コードと関連付けて記憶部4に記憶するとともに、その合成展開顔画像を展開顔画像マッピング部58へ渡す。
【0057】
展開顔画像マッピング部58は、合成展開顔画像を3次元顔形状データにマッピングすることにより、合成3次元顔モデルを作成する。なお、合成展開顔画像がマッピングされる3次元顔形状データは、各展開顔画像の元となった3次元顔モデルの作成に利用された3次元顔形状データとすることが好ましい。この3次元顔形状データは、各展開顔画像に写っている顔特徴点と良好に一致する3D顔特徴点を有しているので、その3D顔特徴点は、複数の展開顔画像から合成された合成展開顔画像に写っている顔特徴点とも良好に一致するためである。
また、展開顔画像マッピング部58は、合成展開顔画像の作成に利用された展開顔画像に関連付けて記憶されている展開情報を参照することにより、合成展開顔画像の各画素が3次元顔形状データ上で対応する位置を特定し、その特定された位置へマッピングする。
画像処理部5は、展開顔画像マッピング部58により作成された合成3次元顔モデルを登録対象者の識別コードと関連付けて記憶部4に記憶する。あるいは、画像処理部5は、その合成3次元顔モデルを登録対象者の識別コードとともに、図示しない通信ネットワークを介して、3次元顔モデルを用いて認証処理を行う顔認証装置など他の装置へ出力してもよい。
【0058】
図7及び図8は、一つの実施形態による顔画像合成装置1における、顔画像合成処理の動作フローチャートである。なお、この顔画像合成処理は、画像処理部5によって制御される。
先ず、画像処理部5は、撮像部2からインターフェース部3を介して、登録対象者の顔が写っている入力顔画像を取得する(ステップS101)。そして画像処理部5は、取得した入力顔画像を登録対象者の識別コードに関連付けて記憶部4に記憶するとともに、画像処理部5の2D顔特徴点抽出部51へ渡す。
【0059】
2D顔特徴点抽出部51は、入力顔画像から、3次元顔形状データに関連付けられている3D顔特徴点と同種類の顔特徴点を抽出する(ステップS102)。そして2D顔特徴点抽出部51は、抽出した顔特徴点の種別と入力顔画像上の位置情報を、画像処理部5の位置合わせ情報算出部52へ出力する。
位置合わせ情報算出部52は、入力顔画像について2D顔特徴点抽出部51により抽出された各顔特徴点と、3次元顔形状データに関連する3D顔特徴点とを用いて、入力顔画像と記憶部4に記憶されている各3次元顔形状データの位置合わせを行う(ステップS103)。そして位置合わせ情報算出部52は、その位置合わせの結果として得られる、各3次元顔形状データに対する位置ずれ量の最小値及びその最小値に対応する3次元顔形状データの回転、拡大/縮小などの量を含む位置合わせ情報を算出する。
【0060】
次に、画像処理部5は、登録利用者の入力顔画像を所定枚数取得したか否か判定する(ステップS104)。なお、所定枚数は、少なくとも2枚であり、例えば、5枚〜10枚の何れかに設定される。取得された入力顔画像の枚数が所定枚数に達していなければ、画像処理部5は、ステップS101〜S104の処理を繰り返す。
一方、取得された入力顔画像の枚数が所定枚数に達していれば、位置合わせ情報算出部52は、記憶部4に記憶されている各3次元顔形状データのうち、最適な3次元顔形状データを選択する(ステップS105)。例えば、位置合わせ情報算出部52は、取得された登録対象者の入力顔画像のそれぞれについて求められた位置ずれ量の最小値の総和が最も小さくなる3次元顔形状データを、最適な3次元顔形状データとする。
位置合わせ情報算出部52は、選択された3次元顔形状データとともに、その3次元顔形状データに対する各入力顔画像の位置合わせ情報を、画像処理部5の入力顔画像マッピング部53及び合成元画像選定部55へ出力する。
【0061】
次に、画像処理部5は、入力顔画像のうち、対応する3次元顔モデルが作成されていない入力顔画像を着目する顔画像に設定する(ステップS106)。そして画像処理部5は、着目顔画像及び選択された3次元顔形状データを入力顔画像マッピング部53へ渡す。
入力顔画像マッピング部53は、着目顔画像と選択された3次元顔形状データとを、着目顔画像について求められた位置合わせ情報を参照して位置合わせした後、着目顔画像の各画素の値を位置合わせされた3次元顔形状データ上にマッピングすることにより、着目顔画像に対応する3次元顔モデルを作成する(ステップS107)。入力顔画像マッピング部53は、作成した3次元顔モデルを画像処理部5の展開顔画像生成部54へ渡す。
展開顔画像生成部54は、3次元顔モデルから展開顔画像を作成する(ステップS108)。そして展開顔画像生成部54は、その展開顔画像を、対応する3次元顔モデル及び入力顔画像に関連付けて記憶部4に記憶する。
画像処理部5は、全ての入力顔画像について3次元顔モデル及び展開顔画像が作成されたか否か判定する(ステップS109)。何れかの入力顔画像について3次元顔モデル及び展開顔画像が作成されていない場合、画像処理部5は、ステップS106〜S109の処理を繰り返す。
【0062】
一方、全ての入力顔画像について3次元顔モデル及び展開顔画像が作成された場合、図8に示されるように、画像処理部5の合成元画像選定部55は、登録対象者についての全ての展開顔画像の中から、合成展開顔画像の作成に利用する展開顔画像の組み合わせを全て求める(ステップS110)。次に合成元画像選定部55は、求めた組み合わせのうち、未着目の組み合わせの中から着目する組み合わせを設定する(ステップS111)。そして合成元画像選定部55は、着目する展開顔画像の組み合わせによってテクスチャ欠落領域のない合成展開顔画像が作成できるか否か判定する(ステップS112)。テクスチャ欠落領域のない合成展開顔画像が作成できる場合、合成元画像選定部55は、その組み合わせに含まれる二つの展開顔画像を選択し、その二つの展開顔画像の何れにおいても顔のテクスチャ情報が欠落していない共通領域を抽出する(ステップS113)。
【0063】
次に、合成元画像選定部55は、記憶部4に記憶されている境界線候補情報に含まれる複数の境界線候補のうち、共通領域に含まれる境界線候補を抽出する(ステップS114)。そして合成元画像選定部55は、抽出した境界線候補のそれぞれについて輝度相違度Pを算出する(ステップS115)。
ステップS115の後、あるいはステップS112にてテクスチャ欠落領域のない合成展開顔画像が作成できないと判定された場合、合成元画像選定部55は、未着目の組み合わせが存在するか否か判定する(ステップS116)。未着目の組み合わせが存在する場合、合成元画像選定部55は、ステップS112〜S116の処理を繰り返す。
【0064】
一方、未着目の組み合わせが存在しない場合、合成元画像選定部55は、輝度相違度Pが算出された組み合わせのうち、その輝度相違度Pが最小となる組み合わせに示された展開顔画像を、合成展開顔画像の作成に利用する展開顔画像として選択する。さらに合成元画像選定部55は、輝度相違度Pが最小となった境界線候補を合成境界とする(ステップS117)。
合成元画像選定部55は、合成展開顔画像の作成に利用されることを示すフラグ及び合成順序を選択された展開顔画像のそれぞれと関連付けて記憶部4に記憶する。また合成元画像選定部55は、設定された合成境界上の各ノードの座標及び各ノード間を結ぶリンクを表す式を記憶部4に記憶する。
【0065】
画像処理部5の顔画像合成部57は、1番目の合成順序の展開顔画像を基準展開顔画像とし、その合成領域を、顔のテクスチャ情報が何もマッピングされていないマッピング用展開顔画像にマッピングする(ステップS118)。なお、このマッピング用展開顔画像は、ステップS105にて選択された3次元顔形状データを2次元に展開することにより作成されたものとすることができる。マッピング用展開顔画像と合成展開顔画像作成用に選択された展開顔画像はすでに位置合わせされているので、顔画像合成部57は、基準展開顔画像の合成領域内の各画素の輝度値を、単にマッピング用展開顔画像の対応する画素の輝度値とすればよい。
【0066】
次に、画像処理部5の合成重み算出部56は、合成に利用する重み係数を(2)式に従って算出する(ステップS119)。その後、顔画像合成部57は、マッピング用展開顔画像にマッピングされていない展開顔画像の中から、最も早い順序の展開顔画像を補完用展開顔画像として選択する(ステップS120)。そして顔画像合成部57は、基準展開顔画像と選択した補完用展開顔画像の対応する画素の値を、算出された重み係数を用いて(3)式に従って加重平均することにより、基準展開顔画像と選択した補完用展開顔画像を合成する(ステップS121)。その際、基準展開顔画像のテクスチャ欠落領域及び非合成領域については、補完用展開顔画像の合成領域内の対応する部分が直接マッピングされる。
【0067】
画像処理部5は、選択された展開顔画像のうち、マッピング用展開顔画像にマッピングされていない展開顔画像が存在するか否か判定する(ステップS122)。マッピング用展開顔画像にマッピングされていない展開顔画像が存在すれば、画像処理部5は、ステップS118〜S122の処理を繰り返す。この場合、ステップS119では、重み係数は、合成展開顔画像に基づいて再算出される。
一方、ステップS122にて、マッピング用展開顔画像にマッピングされていない展開顔画像が存在しなければ、合成展開顔画像が完成されている。そこで画像処理部5は、その合成展開顔画像を、登録対象者の識別コードと関連付けて記憶部4に記憶する。
また画像処理部5の展開顔画像マッピング部58は、合成展開顔画像を、基準展開顔画像の作成に利用された3次元顔形状データにマッピングすることにより、合成3次元顔モデルを作成する(ステップS123)。そして展開顔画像マッピング部58は、作成した合成3次元顔モデルを記憶部4に記憶し、あるいは、通信ネットワークを介して他の機器へ出力する。
その後、画像処理部5は、顔画像合成処理を終了する。
なお、記憶部4が3次元顔形状データを一つしか記憶していなければ、ステップS105の処理は省略されてもよい。
【0068】
以上説明してきたように、この顔画像合成装置は、オクルージョンなどにより、入力顔画像上で登録対象者の顔の一部のテクスチャ情報が欠落している場合でも、他の入力顔画像に写っている登録対象者の顔の情報を利用して、テクスチャ情報の欠落のない合成展開顔画像及び対応する3次元顔モデルを作成できる。またこの顔画像合成装置は、顔の個人の特徴を豊富に含み、特に表情によって形状の変わる特徴的な部位と重ならないように合成境界を設定するので、写っている登録対象者の表情が異なる複数の入力顔画像から作成された展開顔画像を用いても、不自然さの無い、照合に適した合成展開顔画像及び対応する3次元顔モデルを作成できる。
【0069】
またこの顔画像合成装置は、基準となる展開顔画像の合成境界近傍で、その基準となる展開顔画像と補完用の展開顔画像の同じ位置にある画素の値を、合成境界からの距離に応じて基準となる展開顔画像の比重が大きくなる重み係数を用いて加重平均することで、それら二つの展開顔画像を合成する。このように、この顔画像合成装置は、合成された展開顔画像及び3次元顔モデルにおける各画素の値を、その画素に対応する、基準となる展開顔画像と補完用の展開顔画像の画素の値だけを用いて求めているので、テクスチャ情報を劣化させることがない。さらに、この顔画像合成装置は、合成された展開顔画像及び3次元顔モデルにおいて、合成境界近傍での画素値の変化が滑らかとなるので、合成境界が個人性を表す顔の特徴と誤認識される可能性を軽減できる。
【0070】
なお、本発明は上記の実施形態に限定されるものではない。例えば、個人の特徴を豊富に含む特徴部位であっても、鼻のように、表情に応じた形状変化の小さい部位と重なるように、幾つかの境界線候補が設定されていてもよい。この場合、合成元画像選定部は、そのような特徴部位と重ならない境界線候補に基づいて合成境界を設定できるか否か判定し、合成境界を設定できない場合に限り、そのような形状変化の小さい特徴部位と重なる境界線候補を合成境界として設定してもよい。
さらに、特徴部位のうち、目、口、眉といった、表情に応じて大きく形状変化する部位と重なるように境界線候補の幾つかが設定されていてもよい。この場合には、合成元画像選定部は、特徴部位と重ならない境界線候補、及び形状変化の小さい特徴部位と重なる境界線候補の何れも合成境界として設定できない場合に限り、表情に応じて大きく形状変化する特徴部位と重なる境界線候補を合成境界として設定してもよい。
【0071】
また、合成元画像選定部は、合成展開顔画像を作成するために、できるだけ特定の表情を持つ複数の展開顔画像を選択してもよい。特定の表情は、照合時において登録対象者が取る可能性が高い表情、例えば、いわゆる無表情とすることができる。
無表情に近いか否かを判定するために、例えば、無表情に対応する顔特徴点の位置を予め記憶部に記憶させておく。そして合成元画像選定部は、展開顔画像に対応する入力顔画像から抽出された顔特徴点と、無表情に対応する顔特徴点との位置ずれ量の総和を無表情度として算出し、その無表情度が所定の閾値以下である場合に、その展開顔画像に写っている登録対象者は無表情であると判定してもよい。
合成元画像選定部は、無表情であると判定された展開顔画像の中から、上記のようにテクスチャ欠落領域の無い合成展開顔画像を作成可能な展開顔画像の組み合わせを決定する。そして合成元画像選定部は、さらにその組み合わせに対応する共通領域に含まれる境界線候補の中から合成境界を設定する。
【0072】
あるいはまた、合成元画像選定部は、共通領域が十分に広い場合には、その共通領域に含まれる境界線候補のうち、顔の中心(例えば、正中線)からの各ノードの距離の平均値が大きい境界線候補ほど、優先的に合成境界に設定してもよい。これにより、合成元画像選定部は、特徴部位からできるだけ離れた位置に合成境界を設定できるので、合成展開顔画像上の登録対象者の表情が不自然になることをより確実に避けることができる。
さらに、合成元画像選定部は、輝度相違度、顔の中心からの距離、及び無表情度をそれぞれメンバシップ関数の入力とすることにより、ファジイ推論によって合成展開顔画像の作成に利用される展開顔画像及び合成境界を決定してもよい。
【0073】
また、撮影時における撮像部と登録対象者間の距離に応じて、入力顔画像上の顔が写っている領域の大きさは異なる。そして顔が写っている領域の大きさがあまりに異なる入力顔画像に対応する展開顔画像の組み合わせが合成展開顔画像の作成に用いられると、それら入力顔画像を3次元顔形状データにマッピングする際の拡大/縮小率が大きく異なるので、展開顔画像ごとに解像度が異なり、作成された合成展開顔画像は不自然なものとなる可能性がある。
そこで合成元画像選定部は、展開顔画像に対応する入力顔画像に写っている顔の大きさが所定倍率以上あるいは所定縮小率以下離れている展開顔画像の組み合わせを、合成展開顔画像の作成に利用しないようにしてもよい。この場合、所定倍率は、例えば、2に設定される。また所定縮小率は、例えば0.5に設定される。なお、合成元画像選定部は、二つの展開顔画像に写っている顔の倍率を、例えば、入力顔画像を3次元顔形状データにマッピングする際の拡大/縮小率の比として求めることができる。
【0074】
また、合成境界近傍において、先にマッピング用展開顔画像にマッピングされた展開顔画像(すなわち、基準展開顔画像)の画素の値と、後からマッピング用展開顔画像にマッピングされる展開顔画像(すなわち、補完用展開顔画像)の画素の値とが大きく異なることがある。例えば、一方の展開顔画像に対応する入力顔画像が撮影されたときの照明が明るく、他方の展開顔画像に対応する入力顔画像が撮影されたときの照明が暗ければ、一方の展開顔画像については顔に対応する画素が全体的に明るくなるのに対し、他方の展開顔画像では顔に対応する画素が全体的に暗くなる。
このような場合、合成展開顔画像では、合成境界を挟んで画素値が大きく異なってしまうおそれがある。
そこで、合成重み算出部は、合成境界近傍の所定範囲での基準展開顔画像の画素の平均値と、補完用展開顔画像の画素の平均値との差の絶対値Δdelが大きいほど、補完用展開顔画像の画素値が合成展開顔画像に反映されるように、(2)式のパラメータWを調節してもよい。なお、Δdelを求める所定の範囲は、例えば、合成境界に隣接する画素、あるいは、顔画像合成部の処理によって基準展開顔画像と補完用展開顔画像の両方の画素値が反映される範囲、例えば、パラメータWをWmaxに設定したときに重み係数B(dist)が0.5以下となる範囲とすることができる。
【0075】
また合成重み算出部は、基準展開顔画像に対する重み係数B(dist)を、合成境界からの距離distに応じて単調増加する他の関数、例えば、シグモイド関数または線形関数によって求めてもよい。
さらに、顔画像合成部は、基準展開顔画像の非合成領域においても、基準展開顔画像の非合成領域に含まれる画素の値と補完用展開顔画像の対応する画素の値とを加重平均することにより、合成展開顔画像を作成してもよい。この場合、合成重み算出部は、合成境界上、すなわち、dist=0のときに、基準展開顔画像に対する重み係数B(dist)と補完用展開顔画像に対する重み係数(1-B(dist))が等しくなり、合成境界から非合成領域内の画素への距離が大きくなるほど重み係数(1-B(dist))が大きくなり、逆に合成境界から合成領域内の画素への距離が大きくなるほど重み係数B(dist)が大きくなるように、それら重み係数を設定する。
【0076】
さらに、顔画像合成部は、Δdelを求める所定範囲に含まれる、補完用展開顔画像の平均画素値Pavsubに対する基準展開顔画像の平均画素値Pavmainの比(Pavmain/Pavsub)を、補完用展開顔画像の各画素値に乗じた後、合成処理を行ってもよい。これにより、基準展開顔画像の明るさと補完用展開顔画像の明るさが略一致するので、顔画像合成装置は、合成展開顔画像において合成境界を挟んで画素値が大きく変化することを防止できる。そのため、顔画像合成装置は、合成展開顔画像における不自然さをなくすことができる。また、Δdelが大きくなる場合には、基準展開顔画像と補完用展開顔画像の何れか一方のみを上記のように画素値を補正すると、補正後の展開顔画像に表された顔の情報が補正前の展開顔画像に表された顔の情報と異なる可能性がある。そこで、Δdelが大きく異なる場合には、顔画像合成部は、基準展開顔画像と補完用展開顔画像の両方を補正する。例えば、(Pavmain/Pavsub)が2以上、あるいは0.5以下となる場合、顔画像合成部は、(Pavmain/Pavsub)の平方根を補完用展開顔画像の各画素値に乗じ、一方、基準展開顔画像の各画素値を(Pavmain/Pavsub)の平方根で割る。
【0077】
また、撮像部が登録対象者を撮影するときの照明条件が一定である場合のように、複数の入力顔画像上での登録対象者の顔の輝度が一定である場合、顔画像合成部は、基準展開顔画像の合成領域については、そのまま合成展開顔画像の一部とし、基準展開顔画像の非合成領域及びテクスチャ欠落領域に、補完用展開顔画像の合成領域の対応する部分を単にマッピングするだけでもよい。この場合、合成重み算出部は省略される。
【0078】
また、画像処理部は、撮像部によって撮影された画像を入力顔画像とすることができるか否かを判定するために、その画像に人の顔が写っているか否かを判定する顔検出部を有していてもよい。顔検出部は、入力顔画像に顔が写っているか否かを判定するために、様々な公知の顔検知技術の何れかを利用することができる。例えば、記憶部に予め撮影部による撮影領域内に人が存在しないときの画像を基準画像として記憶させておく。そして顔検出部は、撮像部によって撮影された現画像と基準画像との背景差分を行って差分画像を作成し、その差分画像と頭部の形状に対応するテンプレートとのパターンマッチングを行う。顔検出部は、そのパターンマッチングの結果、差分画像上にテンプレートと略一致する領域が検出されれば、現画像に人の顔が写っており、その現画像を入力顔画像とする。
【0079】
さらに画像処理部は、撮像部から連続して取得された入力顔画像に写っている人物の顔が、同一人物の顔か否かを判定するための追跡判定部を有していてもよい。そして追跡判定部は、入力顔画像に写っている人物が同一人物か否か判定するために、様々な公知の追跡技術の何れかを利用することができる。例えば、追跡判定部は、連続して取得された2枚の入力顔画像について、その入力顔画像上の顔の位置の差が、想定される人の移動速度に応じて求められる位置の差よりも小さければ、それら2枚の入力顔画像に写っている人物は同一人物と判定する。
【0080】
さらに、画像処理部は、展開顔画像を作成せず、合成元画像選定部は、登録対象者の複数の3次元顔モデルから、合成3次元顔モデルを作成するための2以上の3次元顔モデルを、合成処理に用いる画像データとして直接選択してもよい。この場合も、合成元画像選定部は、展開顔画像について実施するのと同様の処理を行って、合成3次元顔モデルを作成するために利用する3次元顔モデルを選択する。この場合には、顔画像合成部は、合成重み算出部で算出された重み係数を用いて、基準となる3次元顔モデルと補完用の3次元顔モデルを合成することにより、合成3次元顔モデルを作成する。そのため、画像処理部は、展開顔画像生成部及び展開顔画像マッピング部を有さなくてもよい。
このように、当業者は、本発明の範囲内で、実施される形態に合わせて様々な変更を行うことができる。
【符号の説明】
【0081】
1 顔画像合成装置
2 撮像部
3 インターフェース部
4 記憶部
5 画像処理部
51 2D顔特徴点抽出部
52 位置合わせ情報算出部
53 入力顔画像マッピング部
54 展開顔画像生成部
55 合成元画像選定部
56 合成重み算出部
57 顔画像合成部
58 展開顔画像マッピング部

【特許請求の範囲】
【請求項1】
複数の顔画像を合成して合成顔画像を生成する顔画像合成装置であって、
同一の対象者を撮影した複数の顔画像と人物の顔の形状を表す3次元顔形状データと該3次元顔形状の顔の所定部位を参照して設定された境界線候補とを記憶する記憶部と、
前記複数の顔画像のそれぞれを、前記3次元顔形状データと位置合わせして、当該3次元顔形状データにマッピングすることにより、前記複数の顔画像のそれぞれに対応する3次元顔モデルを作成するマッピング部と、
複数の前記3次元顔モデルのそれぞれを2次元に展開した展開顔画像を生成する展開顔画像生成部と、
複数の前記展開顔画像から少なくとも第1の展開顔画像と第2の展開顔画像を選択するとともに、前記顔の所定部位を回避するように前記境界線候補を選択して合成境界に設定する顔画像選定部と、
前記第1の展開顔画像において顔のテクスチャ情報を有する第1の領域と前記第2の展開顔画像において顔のテクスチャ情報を有する第2の領域とを前記合成境界に基づいて合成し、前記合成顔画像を作成する顔画像合成部と、
を有することを特徴とする顔画像合成装置。
【請求項2】
前記顔の所定部位は、前記対象者の表情に応じて形状が変わる口、目、眉のうちの一つまたは複数の部位である、請求項1に記載の顔画像合成装置。
【請求項3】
前記顔画像選定部は、前記境界線候補のうち、前記第1の領域と前記第2の領域とが重なる共通領域に含まれる境界線候補を前記合成境界とする、請求項1または2に記載の顔画像合成装置。
【請求項4】
前記顔画像選定部は、
前記複数の展開顔画像から選択された二つの展開顔画像を含む組み合わせであって、当該組み合わせに含まれる該二つの展開顔画像において顔のテクスチャ情報を有する領域をそれぞれ一つの画像上にマッピングすることにより作成される前記合成顔画像において顔のテクスチャ情報の欠けがない組み合わせを少なくとも一つ求め、
当該組み合わせにおける前記共通領域に含まれる前記境界線候補上の該二つの展開顔画像の対応する画素の値の差の統計量を輝度相違度として算出し、
当該輝度相違度が最小または所定の閾値以下となる組み合わせに含まれる該二つの前記展開顔画像をそれぞれ前記第1の展開顔画像及び前記第2の展開顔画像とするとともに、前記所定の閾値以下または最小となる前記輝度相違度に対応する前記境界線候補を前記合成境界とする、請求項3に記載の顔画像合成装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate