説明

画像処理装置、画像処理方法、画像処理プログラム、および、印刷装置

【課題】本発明は、表情を精度よく判別することを目的とする。
【解決手段】注目画像に含まれる顔の表情を判定するにあたり、前記注目画像から顔画像の少なくとも一部を含む画像領域を顔領域として検出し、複数の基本特徴量に基づいて少なくとも顔の特徴部位の位置を再現する基本顔モデルと、表情に対応付けられた複数の表情用特徴量に基づいて少なくとも表情に応じた前記特徴部位の位置の変動を再現する表情用顔モデルとを設定し、前記基本顔モデルによって再現される前記特徴部位の位置が、前記顔領域と近似するように前記基本特徴量を補正し、前記補正された前記基本特徴量を前記基本顔モデルに適用して再現した前記特徴部位の位置を、さらに前記表情用顔モデルによって変動させたときの前記特徴部位の位置が、前記顔領域と近似するように前記表情用特徴量を補正し、前記補正された前記表情用特徴量に基づいて顔の表情を判定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像に含まれる顔の表情を判定する画像処理装置、画像処理方法、画像処理プログラム、および、印刷装置に関する。
【背景技術】
【0002】
顔画像の表情を目や鼻や口や髪型や色彩などについての位置や大きさや比率などの顔特徴情報に基づいて推定する印刷装置が開示されている(特許文献1、段落0031、参照。)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2007−206921号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、顔器官の位置や形状の検出と表情の判定とを同時におこなうと、顔器官の検出精度や表情判定の精度が悪くなるという課題があった。
【0005】
本発明は、前記の課題を解決するためになされたものであり、表情を精度よく判別することが可能な画像処理装置、画像処理方法、画像処理プログラム、および、印刷装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
前記課題の少なくとも一部を解決するために本願発明は以下の態様を採る。すなわち、顔領域検出部を備え、該顔領域検出部は前記注目画像から顔画像の少なくとも一部を含む画像領域を顔領域として検出する。設定部は、複数の基本特徴量に基づいて少なくとも顔の特徴部位の位置を再現する基本顔モデルと、表情に対応付けられた複数の表情用特徴量に基づいて表情に応じた前記特徴部位の位置の変動を再現する表情用顔モデルとを設定する。基本特徴量補正部は、前記基本顔モデルによって再現される前記特徴部位の位置が、前記顔領域に近似するように前記基本特徴量を補正する。一方、表情用特徴量補正部は、前記補正された前記基本特徴量を前記基本顔モデルに適用して再現した前記特徴部位の位置を、さらに前記表情用顔モデルによって変動させたときの前記特徴部位の位置が前記顔領域に近似するように前記表情用特徴量を補正する。そして、判定部は前記補正された前記表情用特徴量に基づいて顔の表情を判定する。
【0007】
かかる構成では、まず前記基本特徴量補正部が前記基本特徴量を補正することにより、前記特徴部位の基本的な位置や形状を精度よく特定することができる。次に、特定された顔の特徴部位の位置をもとにして、前記表情用特徴量補正部が前記表情用特徴量を補正する。このように、予め顔の器官の輪郭等の特徴部位の基本的な配置を特定しておくことにより、前記表情用顔モデルによって、表情に起因した顔の器官の形状や位置の細かな変動を特定することができる。従って、補正された前記表情用特徴量に基づいて表情を精度よく判定することができる。なお、前記基本顔モデルと前記表情用顔モデルは、少なくとも前記特徴部位の位置を再現することができればよく、前記特徴部位の位置とともに他の顔の状態(例えば、テクスチャー等。)も再現するものであってもよい。
【0008】
別の態様に係る画像処理装置では、前記基本特徴量と前記表情用特徴量の少なくとも一つを、複数のサンプル画像の前記特徴部位の位置を主成分分析して得られる各主成分の固有ベクトルの係数とする。すなわち、顔モデルを主成分分析を利用して用意するとともに、前記特徴量を各主成分の固有ベクトルの係数とする。さらに、前記複数のサンプル画像の画素の色彩値を主成分分析することにより、顔の見えをモデル化するようにしてもよい。また、前記基本顔モデルは前記特徴部位の基本的な配置を再現するのに特化し、前記表情用顔モデルは表情に起因した前記特徴部位の細かな変動を特定したものであるのが望ましく、前記サンプル画像は前記基本顔モデルと前記表情用顔モデルとで異ならせるのが望ましい。
【0009】
なお、本発明は、種々の態様で実現することが可能であり、例えば、画像処理方法および装置、特徴部位の位置検出方法および装置、表情判定方法および装置、これらの方法または装置の機能を実現するための画像処理プログラム、その画像処理プログラムを記録した記録媒体、そのコンピュータープログラムを含み搬送波内に具現化されたデータ信号、等の形態で実現することができる。
【図面の簡単な説明】
【0010】
【図1】本発明の実施例における画像処理装置としてのプリンター100の構成を概略的に示す説明図である。
【図2】実施例におけるAAM設定処理の流れを示すフローチャートである。
【図3】サンプル画像SIの一例を示す説明図である。
【図4】サンプル画像SIにおける特徴点CPの設定方法の一例を示す説明図である。
【図5】サンプル画像SIに設定された特徴点CPの座標の一例を示す説明図である。
【図6】平均形状s0の一例を示す説明図である。
【図7】形状ベクトルsiおよび形状パラメーターpiと顔の形状sとの関係を例示した説明図である。
【図8】サンプル画像SIのワープWの方法の一例を示す説明図である。
【図9】平均顔画像A0(x)の一例を示す説明図である。
【図10】実施例における顔特徴検出処理の流れを示すフローチャートである。
【図11】注目画像OIにおける顔領域FAの検出結果の一例を示す説明図である。
【図12】実施例における特徴点CPの初期位置設定処理の流れを示すフローチャートである。
【図13】グローバルパラメーターの値を変更することによる特徴点CPの仮設定位置の一例を示す説明図である。
【図14】平均形状画像I(W(x;p))の一例を示す説明図である。
【図15】実施例における特徴点CP設定位置補正処理の流れを示すフローチャートである。
【図16】CP設定位置補正処理の結果の一例を示す説明図である。
【図17】テクスチャー検出処理の流れを示すフローチャートである。
【図18】表情判定処理の流れを示すフローチャートである。
【図19】表情判定用画像を示す図である。
【図20】表情判定処理における特徴点CP設定位置補正処理の流れを示すフローチャートである。
【図21】表情判定処理におけるテクスチャー検出処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0011】
以下、本発明に係る画像処理装置の一態様であるプリンターについて、図面を参照しつつ、実施例に基づいて説明する。
【0012】
A.本実施例:
A1.画像処理装置の構成:
図1は、本発明の本実施例における画像処理装置としてのプリンター100の構成を概略的に示す説明図である。本実施例のプリンター100は、メモリーカードMC等から取得した画像データに基づき画像を印刷する、いわゆるダイレクトプリントに対応したインクジェット式カラープリンターである。プリンター100は、プリンター100の各部を制御するCPU110と、ROMやRAMによって構成された内部メモリー120と、ボタンやタッチパネルにより構成された操作部140と、液晶ディスプレイにより構成された表示部150と、印刷機構160と、カードインターフェース(カードI/F)170と、を備えている。プリンター100は、さらに、他の機器(例えばデジタルスチルカメラやパーソナルコンピューター)とのデータ通信をおこなうためのインターフェースを備えていてもよい。プリンター100の各構成要素は、バスを介して双方向通信可能に接続されている。
【0013】
印刷機構160は、印刷データに基づき印刷をおこなう。カードインターフェース170は、カードスロット172に挿入されたメモリーカードMCとの間でデータのやり取りをおこなうためのインターフェースである。なお、本実施例では、メモリーカードMCに画像データを含む画像ファイルが格納されている。
【0014】
内部メモリー120には、画像処理部200と、表示処理部310と、印刷処理部320と、が格納されている。画像処理部200は、コンピュータープログラムであり、所定のオペレーティングシステムの下で、CPU110により実行されることで顔特徴検出処理や表情判定処理をおこなう。顔特徴検出処理は、顔画像における所定の特徴部位(例えば目尻や鼻頭やフェイスライン)の位置を検出する処理である。顔特徴検出処理については、後に詳述する。表示処理部310、および、印刷処理部320についてもCPU110により実行されることでぞれぞれの機能を実現する。
【0015】
画像処理部200は、プログラムモジュールとして、設定部210と、特徴位置検出部220と、顔領域検出部230と、テクスチャー検出部240と、表情判定部250と、を含んでいる。特徴位置検出部220とテクスチャー検出部240は、それぞれ生成部222,242と、算出部224,244と、補正部226,246と、を含んでいる。これら各部の機能については、後述の顔特徴検出処理および表情判定処理の説明において詳述する。
【0016】
表示処理部310は、表示部150を制御して、表示部150上に処理メニューやメッセージ、画像等を表示させるディスプレイドライバーである。印刷処理部320は、画像データから印刷データを生成し、印刷機構160を制御して、印刷データに基づく画像の印刷を実行するためのコンピュータープログラムである。CPU110は、内部メモリー120から、これらのプログラム(画像処理部200、表示処理部310、印刷処理部320)を読み出して実行することにより、これら各部の機能を実現する。
【0017】
内部メモリー120には、また、AAM情報AMIが格納されている。AAM情報AMIは、後述のAAM設定処理によって予め設定される情報であり、後述の顔特徴検出処理において参照される。AAM情報AMIの内容については、後述のAAM設定処理の説明において詳述する。
【0018】
A2.AAM設定処理:
図2は、本実施例におけるAAM設定処理の流れを示すフローチャートである。AAM設定処理は、AAM(アクティブアピアランスモデル(Active Appearance Model))と呼ばれる画像のモデル化に用いられる形状モデルおよびテクスチャーモデルおよび表情用形状モデルおよび表情用テクスチャーモデルを設定する処理である。本実施例において、AAM設定処理は、オペレーターがコンピューターを使用することによりおこなわれる。コンピューターは、CPUとRAMとROMとHDDとディスプレイと入力装置等を有しており、これらがバスによって接続されている。CPUはHDDに記録されたプログラムを読み出し、該プログラムにしたがった演算処理を実行することにより、コンピューターが後述する各処理を実行させる。なお、形状モデルおよびテクスチャーモデルおよび表情用形状モデルおよび表情用テクスチャーモデルを設定するコンピューターは特許請求の範囲の「設定部」に相当する。また、形状モデルおよびテクスチャーモデルは特許請求の範囲の「基本顔モデル」に相当し、表情用形状モデルおよび表情用テクスチャーモデルは特許請求の範囲の「表情用顔モデル」に相当する。
【0019】
はじめに、オペレーターは、人物の顔を含んだ複数の画像をサンプル画像SIとして用意する(ステップS110)。図3は、サンプル画像SIの一例を示す説明図である。図3に示すように、サンプル画像SIは、個性・人種・性別・向き(正面向き、上向き、下向き、右向き、左向き等)といった種々の属性に関して互いに相違する顔画像が含まれるように用意される。本実施例では、これらのサンプル画像SIのすべてによって構成されるサンプル群G1と、表情(喜顔、悲顔、驚顔、怒顔)の属性に関して互いに相違する顔画像のみを含むサンプル群G2とをそれぞれ用意する。サンプル群G1によれば、AAMによってあらゆる顔画像を精度良くモデル化することが可能となり、あらゆる顔画像を対象とした精度の良い顔特徴検出処理(後述)の実行が可能となる。一方、サンプル群G2によれば、AAMによって表情の特徴のみを選択的にモデル化することができ、精度の良い表情判定処理(後述)の実行が可能となる。なお、サンプル群G2においては、表情以外の個性・人種・性別・向きについての属性ができるだけ多様とならないようにサンプル画像SIが選択される。なお、サンプル画像SIは、学習用画像とも呼ばれる。
【0020】
以下、サンプル群G1に属するサンプル画像SIに対しておこなう処理を例に説明する。サンプル群G1に属するそれぞれのサンプル画像SIに含まれる顔画像に、特徴点CPを設定する(ステップS120)。図4は、サンプル画像SIにおける特徴点CPの設定方法の一例を示す説明図である。特徴点CPは、顔画像における所定の特徴部位の位置を示す点である。本実施例では、所定の特徴部位として、人物の顔における眉毛上の所定位置(例えば端点や4分割点等、以下同じ)、目の輪郭上の所定位置、鼻筋および小鼻の輪郭上の所定位置、上下唇の輪郭上の所定位置、顔の輪郭(フェイスライン)上の所定位置といった68箇所の部位が設定されている。すなわち、本実施例では、人物の顔に共通して含まれる顔の器官(眉毛、目、鼻、口)および顔の輪郭における所定位置を、特徴部位として設定する。図4に示すように、特徴点CPは、各サンプル画像SIにおいてオペレーターにより指定された68個の特徴部位を表す位置に設定(配置)される。このように設定された各特徴点CPは各特徴部位に対応しているため、顔画像における特徴点CPの配置は顔の形状を特定していると表現することができる。
【0021】
サンプル画像SIにおける特徴点CPの位置は、座標により特定される。図5は、サンプル画像SIに設定された特徴点CPの座標の一例を示す説明図である。図5において、SI(g)(g=1,2,3・・・)は各サンプル画像SIを示しており、CP(k)(k=0,1,・・・,67)は各特徴点CPを示している。また、CP(k)−Xは、特徴点CP(k)のX座標を示しており、CP(k)−Yは、特徴点CP(k)のY座標を示している。特徴点CPの座標としては、顔の大きさと顔の傾き(画像面内の傾き)と顔のX方向およびY方向の位置とのそれぞれについて正規化されたサンプル画像SIにおける所定の基準点(例えば画像の左下の点)を原点とした座標が用いられる。また、本実施例では、1つのサンプル画像SIに複数の人物の顔画像が含まれる場合が許容されており(例えばサンプル画像SI(2)には2人の顔画像が含まれている)、1つのサンプル画像SIにおける各人物は人物IDによって特定される。各サンプル画像SIと、各特徴点CPの座標と、人物IDとは、コンピューターに入力される。
【0022】
つづいて、オペレーターは、AAMの形状モデルの設定をおこなう(ステップS130)。具体的には、各サンプル画像SIにおける68個の特徴点CPの座標(X座標およびY座標)により構成される座標ベクトル(図5参照)に対する主成分分析をコンピューターがおこない、さらにコンピューターが特徴点CPの位置により特定される顔の形状sを下記の式(1)によりモデル化する。なお、形状モデルは、特徴点CPの配置モデルとも呼ぶ。
【0023】
【数1】

【0024】
前記式(1)において、s0は平均形状である。図6は、平均形状s0の一例を示す説明図である。図6(a)および(b)に示すように、平均形状s0は、サンプル画像SIの各特徴点CPについての平均位置(平均座標)により特定される平均的な顔の形状を表すモデルである。なお、本実施例では、平均形状s0において、外周に位置する特徴点CP(フェイスラインおよび眉毛、眉間に対応する特徴点CP、図4参照)を結ぶ直線により囲まれた領域(図6(b)においてハッチングを付して示す)を「平均形状領域BSA」と呼ぶ。コンピューターは、平均形状s0に対して、図6(a)に示すように、特徴点CPを頂点とする複数の三角形領域TAを、平均形状領域BSAをメッシュ状に分割するように設定する。
【0025】
形状モデルを表す前記式(1)において、siは形状ベクトルであり、piは形状ベクトルsiの重みを表す形状パラメーターである。形状ベクトルsiは、顔の形状sの特性を表すベクトルであり、主成分分析により得られる第i主成分に対応する固有ベクトルである。前記式(1)に示すように、本実施例における形状モデルでは、特徴点CPの配置を表す顔形状sが、平均形状s0とn個の形状ベクトルsiの線形結合との和としてモデル化される。前記式(1a)が示すように、形状モデルにおいて形状パラメーターpiを適切に設定することにより、あらゆる画像における顔の形状sを再現することが可能である。また、前記式(1b)が示すように、形状モデルにおいて形状パラメーターpiを適切に設定することにより、あらゆる形状sから平均形状s0へと逆変換することができる。
【0026】
図7は、形状ベクトルsiおよび形状パラメーターpiと、顔の形状sとの関係を例示した説明図である。図7(a)に示すように、コンピューターは、顔の形状sを特定するために、寄与率のより大きい主成分に対応する固有ベクトルから順に、累積寄与率の高い順に選択された個数n(本実施例では10個とする。)の固有ベクトルを、形状ベクトルsiとして採用する。形状ベクトルsiのそれぞれは、図7(a)の矢印に示すように、各特徴点CPの移動方向・移動量と対応している。本実施例では、最も寄与率の大きい第1主成分に対応する第1形状ベクトルs1は顔の左右振りにほぼ相関するベクトルとなっており、形状パラメーターp1を大小することにより、図7(b)に示すように、顔の形状sの横方向の顔向きが変化する。2番目に寄与率の大きい第2主成分に対応する第2形状ベクトルs2は顔の上下振りにほぼ相関するベクトルとなっており、形状パラメーターp2を大小することにより、図7(c)に示すように、顔の形状sの縦方向の顔向きが変化する。また、3番目に寄与率の大きい第3主成分に対応する第3形状ベクトルs3は顔の形状の縦横比にほぼ相関するベクトルとなっており、4番目に寄与率の大きい第4主成分に対応する第4形状ベクトルs4は口の開きの程度にほぼ相関するベクトルとなっている。このように、形状パラメーターの値は、顔の表情や、顔向きなど顔画像の特徴を表す。形状モデルにおけるn個の「形状パラメーター」は特許請求の範囲における「基本特徴量」に該当する。
【0027】
なお、形状モデル設定ステップ(ステップS130)においてコンピューターが設定した平均形状s0および形状ベクトルsiは、AAM情報AMI(図1)としてプリンター100の内部メモリー120に格納される。つづいて、コンピューターはAAMのテクスチャーモデルの設定をおこなう(ステップS140)。具体的には、まず、各サンプル画像SIに対して、サンプル画像SIにおける特徴点CPの設定位置が平均形状s0における特徴点CPの設定位置と等しくなるように、画像変換(以下、「ワープW」とも呼ぶ)をおこなう。
【0028】
図8は、サンプル画像SIのワープWの方法の一例を示す説明図である。コンピューターは、各サンプル画像SIにおいて、平均形状s0と同様に、外周に位置する特徴点CPにより囲まれた領域をメッシュ状に分割する複数の三角形領域TAを設定する。ワープWは、複数の三角形領域TAのそれぞれについてのアフィン変換の集合である。すなわち、ワープWにおいては、サンプル画像SIにおけるある三角形領域TAの画像は、平均形状s0における対応する三角形領域TAの画像へとアフィン変換される。コンピューターは、ワープWにより、特徴点CPの設定位置が平均形状s0における特徴点CPの設定位置と等しいサンプル画像SI(以下「サンプル画像SIw」と表す)を生成する。
【0029】
なお、各サンプル画像SIwは、平均形状領域BSA(図8においてハッチングを付して示す)を内包する矩形枠を外周とし、平均形状領域BSA以外の領域(以下「マスク領域MA」とも呼ぶ)がマスクされた画像として生成される。平均形状領域BSAとマスク領域MAとを併せた画像領域を基準領域BAと呼ぶ。また、コンピューターは、各サンプル画像SIwを、例えば56画素×56画素のサイズの画像として正規化する。
【0030】
次に、コンピューターは、各サンプル画像SIwの画素群xのそれぞれにおける輝度値により構成される輝度値ベクトルに対する主成分分析を行い、顔のテクスチャー(「見え」とも呼ぶ)A(x)を下記の式(2)によりモデル化する。なお、画素群xは、平均形状領域BSAに位置する画素の集合である。
【数2】

【0031】
前記式(2)において、A0(x)は平均顔画像である。図9は、平均顔画像A0(x)の一例を示す説明図である。平均顔画像A0(x)は、ワープWの後のサンプル画像SIw(図8参照)の平均の顔が表された画像である。すなわち、平均顔画像A0(x)は、サンプル画像SIwの平均形状領域BSA内の画素群xの画素値(輝度値)の平均をとることにより算出される画像である。従って、平均顔画像A0(x)は、平均的な顔の形状における平均的な顔のテクスチャー(見え)を表すモデルである。なお、平均顔画像A0(x)は、サンプル画像SIwと同様に、平均形状領域BSAとマスク領域MAとで構成され、例えば56画素×56画素のサイズの画像として算出される。
【0032】
テクスチャーモデルを表す前記式(2)において、ak(x)はテクスチャーベクトルであり、λkはテクスチャーベクトルak(x)の重みを表すテクスチャーパラメーターである。テクスチャーベクトルak(x)は、顔のテクスチャーA(x)の特性を表すベクトルであり、具体的には、主成分分析により得られる第j主成分に対応する固有ベクトルである。すなわち、寄与率のより大きい主成分に対応する固有ベクトルから順に、累積寄与率に基づき設定された個数m(本実施例では4個とする。)の固有ベクトルが、テクスチャーベクトルak(x)として採用される。本実施例では、最も寄与率の大きい第1主成分に対応する第1テクスチャーベクトルA1(x)は、顔色の変化(性別の差とも捉えられる)にほぼ相関するベクトルとなっている。
【0033】
前記式(2)に示すように、本実施例におけるテクスチャーモデルでは、顔の見えを表す顔のテクスチャーA(x)が、平均顔画像A0(x)とm個のテクスチャーベクトルak(x)の線形結合との和としてモデル化される。前記式(2a)に示すように、テクスチャーモデルにおいてテクスチャーパラメーターλkを適切に設定することにより、あらゆる画像における顔のテクスチャーA(x)を再現することが可能である。逆に、前記式(2b)に示すように、テクスチャーモデルにおいてテクスチャーパラメーターλkを適切に設定することにより、あらゆる画像における顔のテクスチャーA(x)から平均顔画像A0(x)へと逆変換することができる。テクスチャーモデルにおけるm個の「テクスチャーパラメーター」は特許請求の範囲における「基本特徴量」に該当する。
【0034】
なお、テクスチャーモデル設定ステップ(図2のステップS140)において設定された平均顔画像A0(x)およびテクスチャーベクトルak(x)は、AAM情報AMI(図1)としてプリンター100の内部メモリー120に格納される。コンピューターはAAM情報AMIをいずれかの記録媒体に記録しておき、プリンター100の製造時において該記録媒体から読み出したAAM情報AMIを記録した内部メモリー120をプリンター100に組み込むか、プリンター100に組み込むまれた内部メモリー120に対して該記録媒体から読み出したAAM情報AMIを記録させる。
【0035】
ここまでの処理により、顔の形状をモデル化する形状モデルと、顔のテクスチャーをモデル化するテクスチャーモデルが設定される。設定された形状モデルとテクスチャーモデルとを組み合わせることにより、すなわち合成されたテクスチャーA(x)に対して平均形状s0から形状sへの変換(図8に示したワープWの逆変換)をおこなうことにより、あらゆる顔画像の形状およびテクスチャーを再現することが可能である。
【0036】
次に、サンプル群G2に属するサンプル画像SIを対象としてAAM設定処理(ステップS110〜S140)の処理を実行させる。これにより、サンプル群G1に属するサンプル画像SIを対象としてAAM設定処理を行った場合と異なる平均形状s0と平均顔画像A0(x)と形状ベクトルsiとテクスチャーベクトルak(x)とがAAM情報AMIとして記憶されることとなる。平均形状s0と形状ベクトルsiにより表情用形状モデルが設定され、平均顔画像A0(x)とテクスチャーベクトルak(x)により表情用テクスチャーモデルが設定されたこととなる。なお、表情用形状モデルと表情用テクスチャーモデルにおける平均形状s0と平均顔画像A0(x)は、それぞれ無表情に対応する。
【0037】
サンプル群G2に属するサンプル画像SIを対象としてAAM設定処理をおこなうため、表情用形状モデルにおいて最も寄与率の大きい第1〜4主成分に対応する第1〜4形状ベクトルs1〜s4は、それぞれ喜顔であるか否か、悲顔であるか否か、驚顔であるか否か、怒顔であるか否かと、相関するベクトルとなっている。すなわち、表情(喜顔、悲顔、驚顔、怒顔)の属性に関して互いに相違する顔画像のみを含むサンプル群G2を対象としてAAM設定処理を行っているため、各表情であるか否かを示す形状ベクトルsiの累積寄与率がもっとも高くなる。なお、表情用形状モデルに使用する主成分は第1〜4主成分(n=4)とする。例えば、喜顔であるか否かに対応する形状ベクトルs1は、目尻の角度と口角と目尻の下がり具合等を総合的に変動させる固有ベクトルとなる。また、第1〜4形状ベクトルs1〜s4についての係数である形状パラメーターp1〜p4は、特許請求の範囲における「表情用特徴量」に相当する。
【0038】
一方、表情用テクスチャーモデルにおいても、同様に最も寄与率の大きい第1〜4主成分に対応する第1〜4テクスチャーベクトルa1(x)〜a4(x)は、それぞれ喜顔であるか否か、悲顔であるか否か、驚顔であるか否か、怒顔であるか否かほぼ相関するベクトルとなっている。なお、ここでも使用する主成分は第1〜4主成分(m=4)とする。例えば、喜顔であるか否かに対応するテクスチャーベクトルa1(x)は、目尻のしわと口のまわりのしわなどに起因する色の変化等を総合的に変動させる固有ベクトルとなる。また、第1〜4形状ベクトルs1〜s4についての係数であるテクスチャーパラメーターλ1〜λ4は、特許請求の範囲における「表情用特徴量」に相当する。
【0039】
A3.顔特徴検出処理:
図10は、実施例における顔特徴検出処理の流れを示すフローチャートである。本実施例における顔特徴検出処理は、AAM(基本顔モデル(形状モデル,テクスチャーモデル))を利用して注目画像に含まれる顔画像における特徴点CPの配置を決定する特徴点CP設定位置補正処理(ステップS250)により、顔画像における特徴部位の位置を検出し、さらにテクスチャー検出処理(ステップS260)により顔のテクスチャーを検出する処理である。上述したように、本実施例では、AAM設定処理(図2)において、人物の顔の器官(眉毛、目、鼻、口)および顔の輪郭における計68箇所の所定位置が、特徴部位として設定されている(図4参照)。そのため、本実施例の顔特徴検出処理では、人物の顔の器官および顔の輪郭における所定位置を示す68個の特徴点CPの配置が決定される。
【0040】
なお、顔特徴検出処理によって顔画像における特徴点CPの配置が決定されると、顔画像についての形状パラメーターpiの値が特定される。従って、顔特徴検出処理の処理結果は特定の向き(例えば右向きや下向き)の顔画像を検出するための顔向き判定、顔の形状を変形する顔変形、顔の陰影補正等に利用可能である。
【0041】
はじめに、画像処理部200(図1)は、顔特徴検出処理の対象となる注目画像を表す画像データを取得する(ステップS210)。本実施例のプリンター100では、カードスロット172にメモリーカードMCが挿入されると、メモリーカードMCに格納された画像ファイルのサムネイル画像が表示部150に表示される。処理の対象となる1つまたは複数の画像は、操作部140を介してユーザーにより選択される。画像処理部200は、選択された1つまたは複数の画像に対応する画像データを含む画像ファイルをメモリーカードMCより取得して内部メモリー120の所定の領域に格納する。なお、取得された画像データを注目画像データと呼び、注目画像データの表す画像を注目画像OIと呼ぶものとする。
【0042】
顔領域検出部230(図1)は、注目画像OIに含まれる顔画像の少なくとも一部を含む画像領域を顔領域FAとして検出する(ステップS230)。顔領域FAの検出は、公知の顔検出手法を用いておこなうことができる。公知の顔検出手法としては、例えば、パターンマッチングによる手法や肌色領域抽出による手法、サンプル画像を用いた学習(例えばニューラルネットワークを用いた学習や、ブースティングを用いた学習、サポートベクターマシーンを用いた学習等)により設定される学習データを用いる手法等がある。
【0043】
図11は、注目画像OIにおける顔領域FAの検出結果の一例を示す説明図である。図11には、注目画像OIにおいて検出された顔領域FAが示されている。本実施例では、おおよそ、顔の上下方向は額から顎まで、左右方向は両耳の外側まで含む矩形の領域が顔領域FAとして検出されるような顔検出手法が用いられている。
【0044】
設定部210(図1)は、注目画像OIにおける特徴点CPの初期位置を設定する(ステップS240)。図12は、本実施例における特徴点CPの初期位置設定処理の流れを示すフローチャートである。本実施例では、設定部210は、顔領域FAに対する顔画像の大きさ、傾き、位置(上下方向の位置および左右方向の位置)を表すグローバルパラメーターの値を種々変更して、特徴点CPを注目画像OI上の仮設定位置に設定する(ステップS310)。
【0045】
図13は、グローバルパラメーターの値を変更することによる特徴点CPの仮設定位置の一例を示す説明図である。図13(a)および図13(b)には、注目画像OIにおける特徴点CPおよび特徴点CPをつないで形成されるメッシュが示されている。設定部210は、図13(a)および図13(b)の中央に示すように、顔領域FAの中央部に平均形状s0が形成されるような特徴点CPの仮設定位置(以下、「基準仮設定位置」とも呼ぶ)を設定する。
【0046】
設定部210は、また、基準仮設定位置に対して、グローバルパラメーターの値を種々変更させた複数の仮設定位置を設定する。グローバルパラメーター(大きさ、傾き、上下方向の位置および左右方向の位置)を変更することは、注目画像OIにおいて特徴点CPにより形成されるメッシュが拡大・縮小、傾きを変更、並行移動することに相当する。従って、設定部210は、図13(a)に示すように、基準仮設定位置のメッシュを所定倍率で拡大または縮小したメッシュを形成するような仮設定位置(基準仮設定位置の図の下および上に示す)や、所定角度だけ時計回りまたは半時計回りに傾きを変更したメッシュを形成するような仮設定位置(基準仮設定位置の図の右および左に示す)を設定する。また、設定部210は、基準仮設定位置のメッシュに対して、拡大・縮小および傾きの変更を組み合わせた変換を行ったメッシュを形成するような仮設定位置(基準仮設定位置の図の左上、左下、右上、右下に示す)も設定する。
【0047】
また、図13(b)に示すように、設定部210は、基準仮設定位置のメッシュを所定量だけ上または下に並行移動したメッシュを形成するような仮設定位置(基準仮設定位置の図の上および下に示す)や、左または右に並行移動したメッシュを形成するような仮設定位置(基準仮設定位置の図の左および右に示す)を設定する。また、設定部210は、基準仮設定位置のメッシュに対して、上下および左右の並行移動を組み合わせた変換を行ったメッシュを形成するような仮設定位置(基準仮設定位置の図の左上、左下、右上、右下に示す)も設定する。
【0048】
設定部210は、図13(a)に示す基準仮設定位置以外の8つの仮設定位置のそれぞれにおけるメッシュに対して図13(b)に示す上下左右の並行移動が実行される仮設定位置も設定する。従って、本実施例では、4つのグローバルパラメーター(大きさ、傾き、上下方向の位置、左右方向の位置)をそれぞれ既知の3段階の値として組み合わせにより設定される80通り(=3×3×3×3−1)の仮設定位置と、基準仮設定位置の合計81通りの仮設定位置が設定される。
【0049】
生成部222(図1)は、設定された各仮設定位置に対応する平均形状画像I(W(x;p))を生成する(ステップS320)。図14は、平均形状画像I(W(x;p))の一例を示す説明図である。平均形状画像I(W(x;p))は、入力画像における特徴点CPの配置が平均形状s0における特徴点CPの配置と等しくなるような変換によって算出される。
【0050】
平均形状画像I(W(x;p))を算出するための変換は、サンプル画像SIw算出のための変換(図8参照)と同様に、三角形領域TA毎のアフィン変換の集合であるワープWにより行われる。具体的には、注目画像OIに配置された特徴点CP(図13参照)によって平均形状領域BSA(外周に位置する特徴点CPにより囲まれた領域)が特定され、注目画像OIにおける平均形状領域BSAに対して三角形領域TA毎のアフィン変換が行われることにより、平均形状画像I(W(x;p))が算出される。本実施例では、平均形状画像I(W(x;p))は、平均顔画像A0(x)と同様に平均形状領域BSAおよびマスク領域MAにより構成され、平均顔画像A0(x)と同サイズの画像として算出される。
【0051】
なお、上述したように、画素群xは、平均形状s0における平均形状領域BSAに位置する画素の集合である。ワープW実行後の画像(平均形状s0を有する顔画像)における画素群xに対応するワープW実行前の画像(注目画像OIの平均形状領域BSA)における画素群をW(x;p)と表す。平均形状画像は、注目画像OIの平均形状領域BSAにおける画素群W(x;p)のそれぞれにおける輝度値により構成される画像であるため、I(W(x;p))と表される。図14には、図13(a)に示した9個の仮設定位置に対応する9個の平均形状画像I(W(x;p))を示している。
【0052】
算出部224(図1)は、各仮設定位置に対応する平均形状画像I(W(x;p))と、特許請求の範囲の「比較顔画像」としての平均顔画像A0(x)との差分画像Ieを算出する(ステップS330)。特徴点CPの仮設定位置は81種類設定されているため、算出部224(図1)は、81個の差分画像Ieを算出することとなる。
【0053】
設定部210は、各差分画像Ieの画素値からノルムを算出し、ノルムの値が最も小さい差分画像Ieに対応する仮設置位置(以下「ノルム最小仮設定位置」とも呼ぶ)を、注目画像OIにおける特徴点CPの初期位置として設定する(ステップS340)。ノルムを算出するための画素値は輝度値であってもよいしRGB値であってもよい。以上により特徴点CP初期位置設定処理が完了する。なお、ノルムの値が小さいほど平均形状画像I(W(x;p))と、平均顔画像A0(x)との差が小さくなる(両者が近似する)。
【0054】
A3−1.特徴点CP設定位置補正処理:
特徴点CP初期位置設定処理が完了すると、特徴位置検出部220(図1)は、注目画像OIにおける特徴点CPの設定位置の補正をおこなう(ステップS250)。図15は、本実施例における特徴点CP設定位置補正処理の流れを示すフローチャートである。
【0055】
生成部222(図1)は、注目画像OIから平均形状画像I(W(x;p))を算出する(ステップS410)。平均形状画像I(W(x;p))の算出方法は、特徴点CP初期位置設定処理におけるステップS320と同様である。
【0056】
特徴位置検出部220は、平均形状画像I(W(x;p))と平均顔画像A0(x)との差分画像Ieを算出する(ステップS420)。特徴位置検出部220は、差分画像Ieに基づき、特徴点CPの設定位置補正処理が収束したか否かを判定する(ステップS430)。特徴位置検出部220は、差分画像Ieのノルムを算出し、ノルムの値が予め設定された閾値より小さい場合には収束したと判定し、ノルムの値が閾値以上の場合には未だ収束していないと判定する。なお、特徴位置検出部220は、算出された差分画像Ieのノルムの値が前回のステップS430において算出された値よりも小さい場合には収束したと判定し、前回値以上である場合には未だ収束していないと判定するものとしてもよい。あるいは、特徴位置検出部220は、閾値による判定と前回値との比較による判定とを組み合わせて収束判定をおこなうものとしてもよい。例えば、特徴位置検出部220は、算出されたノルムの値が、閾値より小さく、かつ、前回値より小さい場合にのみ収束したと判定し、それ以外の場合には未だ収束していないと判定するものとしてもよい。
【0057】
前記のステップS430の収束判定において未だ収束していないと判定された場合には、補正部226(図1)がパラメーター更新量ΔPを算出する(ステップS450)。パラメーター更新量ΔPは、4個のグローバルパラメーター(全体としての大きさ、傾き、X方向位置、Y方向位置)、および、特徴量であるn個の形状パラメーターpi(i=1〜nの整数。)の値の変更量を意味している。なお、特徴点CPを初期位置に設定した直後においては、グローバルパラメーターは、特徴点CP初期位置設定処理(図12)において決定された値が設定されている。また、このときの特徴点CPの初期位置と平均形状s0の特徴点CPの設定位置との相違は、全体としての大きさ、傾き、位置の相違に限られるため、形状モデルにおける形状パラメーターpiの値およびテクスチャーモデルにおけるテクスチャーパラメーターλkはすべてゼロである。
【0058】
パラメーター更新量ΔPは、下記の式(3)により算出される。すなわち、パラメーター更新量ΔPは、アップデートマトリックスRと差分画像Ieとの積である。
【0059】
【数3】

【0060】
式(3)におけるアップデートマトリックスRは、差分画像Ieに基づきパラメーター更新量ΔPを算出するために予め学習により設定されたM行N列のマトリックスであり、
AAM情報AMI(図1)として内部メモリー120に格納されている。本実施例では、アップデートマトリックスRの行数Mは、グローバルパラメーターの数(4個)と、形状パラメーターpiの数(n個)との和((4+n)個)に等しく、列数Nは、平均顔画像A0(x)の平均形状領域BSA内の画素数(56画素×56画素−マスク領域MAの画素数)に等しい。アップデートマトリックスRは、下記の式(4)および(5)により算出される。
【0061】
【数4】


【数5】

【0062】
補正部226(図1)は、算出されたパラメーター更新量ΔPに基づきパラメーター(4個のグローバルパラメーターとn個の形状パラメーターpi)を更新する(ステップS460)。これにより、注目画像OIにおける特徴点CPの設定位置が補正される。補正部226は、差分画像Ieのノルムが小さくなるように補正する。パラメーターの更新の後には、再度、特徴点CPの設置位置が補正された注目画像OIからの平均形状画像I(W(x;p))の算出(ステップS410)、差分画像Ieの算出(ステップS420)、差分画像Ieに基づく収束判定(ステップS430)が行われる。なお、平均形状画像I(W(x;p))は、形状パラメーターpiの更新(変化)に応じて変化するものであり、特許請求の範囲の「顔領域」に相当する。再度の収束判定においても収束していないと判定された場合には、さらに、差分画像Ieに基づくパラメーター更新量ΔPの算出(ステップS450)、パラメーターの更新による特徴点CPの設定位置補正(ステップS460)が行われる。
【0063】
図15のステップS410からS460までの処理が繰り返し実行されると、注目画像OIにおける各特徴部位に対応する特徴点CPの位置、実際の特徴部位の位置に全体として近づいていき、ある時点で収束判定(ステップS430)において収束したと判定される。収束判定において収束したと判定されると、顔特徴検出処理が完了する(ステップS470)。このとき設定されているグローバルパラメーターおよび形状パラメーターpiの値により特定される特徴点CPの設定位置が、最終的な注目画像OIにおける特徴点CPの設定位置として特定される。
【0064】
図16は、特徴点CP設定位置補正処理の結果の一例を示す説明図である。図16には、注目画像OIにおいて最終的に特定された特徴点CPの設定位置が示されている。特徴点CPの設定位置により、注目画像OIに含まれる顔の特徴部位(人物の顔の器官(眉毛、目、鼻、口)および顔の輪郭における所定位置)の位置が特定されるため、注目画像OIにおける人物の顔の器官の形状・位置や顔の輪郭形状の検出が可能となる。
【0065】
特徴点CP設定位置補正処理が完了すると、テクスチャー検出部240(図1)は、注目画像OIにおいて設定される平均形状画像I(W(x;p))のテクスチャー(見え)の補正(検出)をおこなう(ステップS260)。
【0066】
A3−2.テクスチャー検出処理:
図17は、テクスチャー検出処理の流れを示すフローチャートである。生成部242(図1)は、注目画像OIから平均形状画像I(W(x;p))を算出する(ステップS510)。平均形状画像I(W(x;p))の算出方法は、特徴点CP初期位置設定処理におけるステップS320、および、特徴点CP設定位置補正処理におけるステップS410と同様であるが、特徴点CP設定位置補正処理完了時のグローバルパラメーターおよび形状パラメーターpiの値を使用して平均形状画像I(W(x;p))が算出される。
【0067】
さらに、テクスチャー検出部240の生成部242は、平均形状画像I(W(x;p))に基づく平均テクスチャー画像J(T(x;λ))を算出する(ステップS515)。平均テクスチャー画像J(T(x;λ))は、以下の(6)式によって算出される。
【数6】


前記式(6)は、前記式(2b)における顔のテクスチャーA(x)にW(x;p)を代入したものであり、テクスチャーパラメーターλkが適切に設定されれば、T(x;λ)が平均顔画像A0(x)と等しくなる。
【0068】
そして、算出部244は、平均テクスチャー画像J(T(x;λ))と平均顔画像A0(x)との差分画像Ieを算出する(ステップS520)。テクスチャー検出部240は、差分画像Ieに基づき、テクスチャー検出処理が収束したか否かを判定する(ステップS530)。テクスチャー検出部240は、差分画像Ieのノルムを算出し、ノルムの値が予め設定された閾値より小さい場合には収束したと判定し、ノルムの値が閾値以上の場合には未だ収束していないと判定する。なお、テクスチャー検出部240は、算出された差分画像Ieのノルムの値が前回のステップS530において算出された値よりも小さい場合には収束したと判定し、前回値以上である場合には未だ収束していないと判定するものとしてもよい。ここにおける収束の判定は、特徴点CP設定位置補正処理におけるステップS430と同様の手法によりおこなうことができる。
【0069】
前記のステップS530の収束判定において未だ収束していないと判定された場合には、補正部246(図1)がパラメーター更新量Δλを算出する(ステップS550)。パラメーター更新量ΔΛは、特徴量であるm個のテクスチャーパラメーターλk(k=1〜mの整数。)の値の変更量を意味している。パラメーター更新量ΔΛは、下記の式(7)により算出される。すなわち、パラメーター更新量ΔΛは、アップデートマトリックスUと差分画像Ieとの積である。
【0070】
【数7】

【0071】
式(7)におけるアップデートマトリックスUは、差分画像Ieに基づきパラメーター更新量ΔΛを算出するために予め学習により設定されたM行N列のマトリックスであり、
AAM情報AMI(図1)として内部メモリー120に格納されている。本実施例では、アップデートマトリックスUの行数Mは、テクスチャーパラメーターλk(m個)に等しく、列数Nは、平均形状領域BSA内の画素数(56画素×56画素−マスク領域MAの画素数)に等しい。アップデートマトリックスUは、下記の式(8),(9)により算出される。
【数8】


【数9】

【0072】
補正部246(図1)は、算出されたパラメーター更新量ΔΛに基づきテクスチャーパラメーターλkを更新する(ステップS560)。これにより、顔のテクスチャーA(x)が補正される。すなわち、補正部246は、差分画像Ieのノルムが小さくなるように補正する。パラメーターの更新の後には、再度、補正されたテクスチャーパラメーターλkに基づいて平均テクスチャー画像J(T(x;λ))の算出(ステップS515)、差分画像Ieの算出(ステップS520)、差分画像Ieに基づく収束判定(ステップS530)が行われる。再度の収束判定においても収束していないと判定された場合には、さらに、差分画像Ieに基づくパラメーター更新量ΔΛの算出(ステップS550)、パラメーターの更新によるテクスチャーの補正(ステップS560)が行われる。
【0073】
図17のステップS510からS560までの処理が繰り返し実行されると、顔のテクスチャーA(x)の各画素の輝度値(色彩値)が、実際の顔画像の輝度値に全体として近づいていき、ある時点で収束判定(ステップS530)において収束したと判定される。収束判定において収束したと判定されると、テクスチャー検出処理が完了する(ステップS570)。このとき設定されているテクスチャーパラメーターλkの値により特定される顔のテクスチャーA(x)が最終的な顔の見えとして特定される。顔のテクスチャーA(x)に基づいて、顔色補正等をおこなうことができる。以上のようにして、注目画像OIにおける顔領域FAについての形状パラメーターpiとテクスチャーパラメーターλkが特定できると、次に表情判定処理を実行する。
【0074】
A4.表情判定処理:
図18は、表情判定処理の流れを示すフローチャートである。表情判定処理も、上述した顔特徴検出処理と同様に、特徴点CP設定位置補正処理(ステップS620)とテクスチャー検出処理(ステップS630)とを有し、これらの処理は特徴位置検出部220とテクスチャー検出部240によって実行される。ただし、AAMとして表情用形状モデルと表情用テクスチャーモデルを使用する点で上述した顔特徴検出処理と異なる。顔特徴検出処理では目や口などの顔の器官の基本的な形状や位置を特定されるが、表情判定処理では予め特定された顔の器官の基本的な形状や位置から細かく変動した顔の器官の形状や位置に基づいて表情を判定する。なお、顔特徴検出処理における特徴点CP設定位置補正処理とテクスチャー検出処理を実行する特徴位置検出部220とテクスチャー検出部240は、特許請求の範囲における「基本特徴量補正部」に相当する。一方、表情判定処理における特徴点CP設定位置補正処理とテクスチャー検出処理を実行する特徴位置検出部220とテクスチャー検出部240は、特許請求の範囲における「表情用特徴量補正部」に相当する。まず、上述した顔特徴検出処理によって最終的に求められたグローバルパラメーターと形状パラメーターpiとテクスチャーパラメーターλk(特許請求の範囲の「補正された基本特徴量」に相当。)を使用して、平均テクスチャー画像J(T(x;λ))を算出する(ステップS610)。平均テクスチャー画像J(T(x;λ))の算出は、上述したステップS510,S515と同様におこなうことができる。
【0075】
平均テクスチャー画像J(T(x;λ))は、注目画像OIにおける顔領域FAをグローバルパラメーターと形状パラメーターpiとテクスチャーパラメーターλkに基づいて平均化した画像を示すこととなる。ただし、表情の属性の有無を含まないサンプル画像SIが含まれるサンプル群G1を用いてモデル化したAAM(形状モデルとテクスチャーモデル)を使用し、累積寄与率の高い順に選択された一部の固有ベクトルを用いて平均化を行っているため、平均テクスチャー画像J(T(x;λ))には表情に起因する特徴が残存することとなる。表情の属性の有無を含まないサンプル画像SIで学習を行った形状モデルとテクスチャーモデルでは、表情に関連する固有ベクトルの累積寄与率は低くなり、表情を変化させる固有ベクトルの累積寄与率が上位n,m位以内とはならないからである。
【0076】
図19は、平均テクスチャー画像J(T(x;λ))の一例を示す図である。同図においては、笑っている表情(喜顔)についての平均テクスチャー画像J(T(x;λ))を示している。例えば、注目画像OIにおける本来の顔領域FAは左振りの顔を示すが、第1形状ベクトルs1に基づく補正により、平均テクスチャー画像J(T(x;λ))では正面向きに補正されている。その他、人種・性別などの個性も失われるように平均化されている。しかし、サンプル群G1に属するサンプル画像SIには表情の属性の有無を含まれていないため、喜顔に起因する細かな特徴(口角や目尻の角度や笑いじわ等)は平均テクスチャー画像J(T(x;λ))に残存している。このような平均テクスチャー画像J(T(x;λ))が算出できると、平均テクスチャー画像J(T(x;λ))を表情判定の対象とする表情判定用顔画像FEとする。
【0077】
図20,図21は、表情判定処理における特徴点CP設定位置補正処理(ステップS620)とテクスチャー検出処理(ステップS630)の流れを示すフローチャートである。特徴点CP設定位置補正処理とテクスチャー検出処理の全体的な流れは、上述した顔特徴検出処理における特徴点CP設定位置補正処理(ステップS250)とテクスチャー検出処理(ステップS260)と同様である。ただし、特徴点CP設定位置補正処理のステップS710において、表情判定用顔画像FEを取得して該表情判定用顔画像FEを処理の対象とする点と、表情用形状モデルおよび表情用テクスチャーモデルを使用する点で顔特徴検出処理とは相違している。ステップS710においては、表情判定用顔画像FEに対して特徴点CPを初期設定する。表情判定用顔画像FEは、概ね平均形状s0における特徴点CPの配置と同様の特徴部位の位置を有することとなるため、グローバルパラメーターを複数設定することなく平均形状s0における特徴点CPの配置を初期設定すればよい。初期設定の段階において、基本的に、表情に起因した細かい特徴点CPのずれが生じることとなる。
【0078】
特徴点CP設定位置補正処理のステップS750においては、各表情(喜顔、悲顔、驚顔、怒顔)であるか否かを示す表情用形状モデルの4個(n=4)の形状パラメーターpiが順次更新されることとなる。このようにすることにより、表情判定用顔画像FEの特徴点CPの配置を表情の変化(形状パラメーターpiの変化)に対応付けて変化させていき、無表情を示す平均形状s0に近い特徴点CPの配置が得られるときの形状パラメーターpiを特定することができる。同様に、テクスチャー検出処理のS850においても、各表情(喜顔、悲顔、驚顔、怒顔)であるか否かを示す表情用テクスチャーモデルの4個(m=4)のテクスチャーパラメーターλkが順次更新されることとなる。このようにすることにより、表情判定用顔画像FEの各画素の輝度値を表情の変化(テクスチャーパラメーターλkの変化)に対応付けて変化させていき、無表情を示す平均顔画像A0(x)に近い輝度値分布が得られるときのテクスチャーパラメーターλkを特定することができる。
【0079】
図19のように、上述した顔特徴検出処理によって顔の器官の基本的な形状と位置等が特定された平均テクスチャー画像J(T(x;λ))の段階では、表情に応じた特徴点CPの位置の変動に対応できないが、表情用形状モデルおよび表情用テクスチャーモデルを使用して特徴点CP設定位置補正処理とテクスチャー検出処理をおこなうことにより、表情に応じて変動する特徴点CPの位置や各画素の輝度値に合わせ込むことができる。例えば、特徴点CP設定位置補正処理によって、喜顔における口角の上がり具合に合った特徴点CPの位置に補正することができる。また、テクスチャー検出処理によって、喜顔における笑いじわ等を反映させることができる。
【0080】
テクスチャー検出処理が終了すると、表情判定部250がテクスチャー検出処理終了時の形状パラメーターpiとテクスチャーパラメーターλkとを取得し(ステップS640)、これらに基づいて表情を判定する(ステップS650)。上述したように、表情用形状モデルにおいて最も寄与率の大きい第1〜4主成分に対応する第1〜4形状ベクトルs1〜s4は、それぞれ喜顔であるか否か、悲顔であるか否か、驚顔であるか否か、怒顔であるか否かと、ほぼ相関するベクトルとなっているため、これらの係数である形状パラメーターpi(i=1〜4)の大きさは、それぞれの表情らしさを示すこととなる。表情用テクスチャーモデルのテクスチャーパラメーターλk(k=1〜4)の大きさも、それぞれの表情らしさを示すこととなる。従って、形状パラメーターpiとテクスチャーパラメーターλkの値に基づいて、どの表情であるかを判定することができる。本実施例では、形状パラメーターpiとテクスチャーパラメーターλkを、各表情らしさの度合いに関して正規化する変換式により形状パラメーターpiとテクスチャーパラメーターλkの各値を正規化する。各表情らしさの度合いは人間の感覚に左右されるため、形状パラメーターpiとテクスチャーパラメーターλkの各値に対応する標本について、オペレーターが各表情らしさを判定した結果に基づいて前記変換式が用意されるのが望ましい。
【0081】
そして、正規化した形状パラメーターpiのうち最も大きい成分と、正規化したテクスチャーパラメーターλkのうち最も大きい成分とを検出し、それらが同一の表情に対応したものである場合には、当該表情であると判定する。なお、形状パラメーターpiとテクスチャーパラメーターλkとが矛盾した表情を示す場合には、それらのうち大きい方を採用したり、形状パラメーターpiを優先するようにしてもよい。また、正規化した形状パラメーターpiとテクスチャーパラメーターλkのうち最も大きい成分の値が所定の閾値よりも小さい場合には、無表情であると判定してもよい。本実施例では、注目画像OIに各表情を識別するタグ情報を添付した後、注目画像OIに喜顔が含まれる場合には、印刷機構160に注目画像OIを出力し、印刷を実行させる(ステップS660)。
【0082】
本実施例では、顔特徴検出処理と表情判定処理とで独立したAAMを使用するため、各処理における形状パラメーターpiとテクスチャーパラメーターλkの更新を高速かつ高精度におこなうことができる。すなわち、顔特徴検出処理と表情判定処理において、変化させる形状パラメーターpiとテクスチャーパラメーターλkの要素の個数を抑えることができ、処理を効率的とすることができる。例えば、顔特徴検出処理と同時に表情判定をおこなうことができるように、サンプル群G1とサンプル群G2を統合したサンプル画像SIで学習したAAMを使用することにより、顔特徴検出処理と同時に表情判定をおこなうことも考えられる。しかしながら、特徴点CP設定位置補正処理とテクスチャー検出処理とにおいて更新すべき形状パラメーターpiとテクスチャーパラメーターλkの個数が増大し、処理が非効率的となる。また、顔特徴検出処理において確実に顔器官等の基本的な位置や形状や色彩を検出した後に、表情判定処理において表情に起因した顔器官の位置や形状や色彩の変動を検出するため、細かな表情変化も精度よく判定することができる。
【0083】
B.変形例:
なお、この発明は前記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【0084】
B1.変形例1:
前記実施例では、サンプル群G2に表情(喜顔、悲顔、驚顔、怒顔)の属性に関して互いに相違する顔画像のみを含むサンプル画像SIのみを含ませるようにしたが、サンプル群G2は表情の属性に関して互いに相違する顔画像のみを含むものに限られない。サンプル群G2に別の属性を有するサンプル画像SIを含ませるようにしてもよい。例えば、異なる人種の属性を有するサンプル画像SIをサンプル群G2に含ませてもよい。
【0085】
B2.変形例2:
反対に、サンプル群G1に表情(喜顔、悲顔、驚顔、怒顔)の属性に関して互いに相違する顔画像を含むサンプル画像SIを含ませるようにしてもよい。サンプル群G1に表情の属性に関して互いに相違する顔画像を加えることにより、表情の変動に対する顔特徴検出処理のロバスト性を確保することができる。この場合、表情の相違が、顔特徴検出処理における形状パラメーターpiとテクスチャーパラメーターλkに顕れることも考えられる。従って、顔特徴検出処理における形状パラメーターpiとテクスチャーパラメーターλkに基づいて表情の判定をおこなうことも可能である。ただし、顔特徴検出処理における形状パラメーターpiとテクスチャーパラメーターλkだけでは十分な表情判定精度が得られないおそれがあるため、顔特徴検出処理における形状パラメーターpiとテクスチャーパラメーターλkの表情の顕れ方が顕著である場合(例えば、ある形状パラメーターpiの線形結合値が所定の閾値以上等の場合等。)に限り、これらに基づいて表情判定をおこなうようにしてもよい。これにより、表情用顔モデルについての演算を省略することができ、処理の高速化を図ることができる。顔特徴検出処理における形状パラメーターpiとテクスチャーパラメーターλkの表情の顕れ方が顕著でない場合には、前記実施形態のように、表情用形状モデルと表情用テクスチャーモデルを使用して精度よく表情判定を行えばよい。
【0086】
B3.変形例3:
前記実施例においては、もっとも大きい単一の表情を有していると判定するようにしたが、複数の表情に対応する形状パラメーターpiとテクスチャーパラメーターλkが所定の閾値よりも表情らしいと示すのであれば、複数の表情が混在すると判定するようにしてもよい。例えば、喜顔と驚顔に対応する形状パラメーターpiを正規化した値が双方とも閾値を超える場合には、双方の表情を有していると判定するようにしてもよい。
【0087】
B4.変形例4:
前記実施例では、特徴点CP初期位置設定処理において、4つのグローバルパラメーター(大きさ、傾き、上下方向の位置、左右方向の位置)のそれぞれについての3段階の値の組み合わせに対応する合計80種類(=3×3×3×3−1)の仮設定位置が予め設定されているが、仮設定位置の設定に用いるパラメーターの種類および数やパラメーター値の段階数は変更可能である。例えば、4つのグローバルパラメーターの内の一部のみが仮設定位置の設定に用いられるとしてもよいし、用いられるパラメーターのそれぞれについて、5段階の値の組み合わせにより仮設置位置が設定されるものとしてもよい。
【0088】
B5.変形例5:
前記実施例の特徴点CP設定位置補正処理では、注目画像OIに基づき平均形状画像I(W(x;p))を算出することにより注目画像OIの特徴点CPの設置位置を平均顔画像A0(x)の特徴点CPの設置位置に整合させているが、平均顔画像A0(x)に対して画像変換をおこなうことにより両者の特徴点CPの配置を整合させるものとしてもよい。すなわち、前記実施例では、「顔領域」としての平均形状画像I(W(x;p))を変化させることとしたが、平均顔画像A0(x)を形状パラメーターpiやテクスチャーパラメーターλkの変化に応じて変化させてもよい。いずれにしても、注目画像OIに含まれる「顔領域」と、顔モデルによって再現される顔の画像との差を小さくさせる形状パラメーターpiやテクスチャーパラメーターλkに補正されることとなる。なお、前記実施例の顔特徴検出処理によって最終的に求められたグローバルパラメーターと形状パラメーターpiとテクスチャーパラメーターλk(特許請求の範囲の「補正された基本特徴量」に相当。)を前記の式(1),(2)に代入して得られるテクスチャーA(x)が特許請求の範囲の「基本顔画像」に相当する。前記実施例では、「基本顔画像」を算出せず、代わりに注目画像OIにおける顔領域FAを「補正された基本特徴量」によって平均顔画像A0(x)に近づくように逆変換することとしている。
【0089】
B6.変形例6:
前記実施例におけるサンプル画像SI(図3)はあくまで一例であり、サンプル画像SIとして採用する画像の数、種類は任意に設定可能である。また、前記実施例において、特徴点CPの位置で示される顔の所定の特徴部位(図4参照)はあくまで一例であり、実施例において設定されている特徴部位の一部を省略したり、特徴部位として他の部位を採用したりしてもよい。
【0090】
また、前記実施例では、サンプル画像SIwの画素群xのそれぞれにおける輝度値により構成される輝度値ベクトルに対する主成分分析によってテクスチャーモデルが設定されているが、顔画像のテクスチャー(見え)を表す輝度値以外の指標値(例えばRGB値)に対する主成分分析によってテクスチャーモデルが設定されるものとしてもよい。
【0091】
また、前記実施例において、平均顔画像A0(x)のサイズは56画素×56画素に限られず他のサイズであってもよい。また、平均顔画像A0(x)は、マスク領域MA(図8)を含む必要はなく、平均形状領域BSAのみによって構成されるとしてもよい。また、平均顔画像A0(x)の代わりに、サンプル画像SIの統計的分析に基づき設定される他の基準顔画像が用いられるとしてもよい。
【0092】
また、判定対象の表情は、喜顔と悲顔と驚顔と怒顔に限られるものではなく、困顔や寝顔や焦顔等の表情を判定するようにしてもよい。むろん、前記実施例や変形例において、喜顔と悲顔と驚顔と怒顔のすべてを判定するのではなく、例えば喜顔であるか否かのみを判定するようにしてもよい。
【0093】
また、前記実施例では、AAMを用いた形状モデルおよびテクスチャーモデルの設定が行われているが、他のモデル化手法(例えばMorphable Modelと呼ばれる手法やActive Blobと呼ばれる手法)を用いて形状モデルおよびテクスチャーモデルの設定が行われるとしてもよい。
【0094】
また、前記実施例では、メモリーカードMCに格納された画像が注目画像OIに設定されているが、注目画像OIは例えばネットワークを介して取得された画像であってもよい。また、前記実施例では、画像処理装置としてのプリンター100による画像処理を説明したが、処理の一部または全部がパーソナルコンピューターやデジタルスチルカメラ、デジタルビデオカメラ等の他の種類の画像処理装置により実行されるものとしてもよい。また、プリンター100はインクジェットプリンターに限らず、他の方式のプリンター、例えばレーザプリンターや昇華型プリンターであるとしてもよい。
【0095】
前記実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
【0096】
また、本発明の機能の一部または全部がソフトウェアで実現される場合には、そのソフトウェア(コンピュータープログラム)は、コンピューター読み取り可能な記録媒体に格納された形で提供することができる。この発明において、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスクやCD−ROMのような携帯型の記録媒体に限らず、各種のRAMやROM等のコンピューター内の内部記憶装置や、ハードディスク等のコンピューターに固定されている外部記憶装置も含んでいる。
【符号の説明】
【0097】
100…プリンター、110…CPU、120…内部メモリー、140…操作部、150…表示部、160…印刷機構、170…カードインターフェース、172…カードスロット、200…画像処理部、210…設定部、220…特徴位置検出部、222,242…生成部、224,244…算出部、226,246…補正部、230…顔領域検出部、240…テクスチャー検出部、250…表情判定部、310…表示処理部、320…印刷処理部。

【特許請求の範囲】
【請求項1】
注目画像に含まれる顔の表情を判定する画像処理装置であって、
前記注目画像から顔画像の少なくとも一部を含む画像領域を顔領域として検出する顔領域検出部と、
複数の基本特徴量に基づいて少なくとも顔の特徴部位の位置を再現する基本顔モデルと、表情に対応付けられた複数の表情用特徴量に基づいて少なくとも表情に応じた前記特徴部位の位置の変動を再現する表情用顔モデルとを設定する設定部と、
前記基本顔モデルによって再現される前記特徴部位の位置が、前記顔領域と近似するように前記基本特徴量を補正する基本特徴量補正部と、
前記補正された前記基本特徴量を前記基本顔モデルに適用して再現した前記特徴部位の位置を、さらに前記表情用顔モデルによって変動させたときの前記特徴部位の位置が、前記顔領域と近似するように前記表情用特徴量を補正する表情用特徴量補正部と、
前記補正された前記表情用特徴量に基づいて顔の表情を判定する判定部と、を備える画像処理装置。
【請求項2】
前記基本特徴量と前記表情用特徴量は、複数のサンプル画像の特徴部位の位置を主成分分析して得られる各主成分の固有ベクトルの係数を含む請求項1に記載の画像処理装置。
【請求項3】
前記基本顔モデルと前記表情用顔モデルは互いに異なる前記サンプル画像を用いて設定される請求項2に記載の画像処理装置。
【請求項4】
前記基本特徴量と前記表情用特徴量は、複数のサンプル画像の画素の色彩値を主成分分析して得られる各主成分の固有ベクトルの係数を含む請求項2または請求項3のいずれかに記載の画像処理装置。
【請求項5】
各表情用特徴量は、それぞれ異なる表情についての表情らしさを示す請求項1から請求項4のいずれか一項に記載の画像処理装置。
【請求項6】
注目画像に含まれる顔の表情を判定する画像処理方法であって、
前記注目画像から顔画像の少なくとも一部を含む画像領域を顔領域として検出し、
複数の基本特徴量に基づいて少なくとも顔の特徴部位の位置を再現する基本顔モデルと、表情に対応付けられた複数の表情用特徴量に基づいて少なくとも表情に応じた前記特徴部位の位置の変動を再現する表情用顔モデルとを設定し、
前記基本顔モデルによって再現される前記特徴部位の位置が、前記顔領域と近似するように前記基本特徴量を補正し、
前記補正された前記基本特徴量を前記基本顔モデルに適用して再現した前記特徴部位の位置を、さらに前記表情用顔モデルによって変動させたときの前記特徴部位の位置が、前記顔領域と近似するように前記表情用特徴量を補正し、
前記補正された前記表情用特徴量に基づいて顔の表情を判定する画像処理方法。
【請求項7】
注目画像に含まれる顔の表情を判定する画像処理のための画像処理プログラムであって、
前記注目画像から顔画像の少なくとも一部を含む画像領域を顔領域として検出する顔領域検出機能と、
複数の基本特徴量に基づいて少なくとも顔の特徴部位の位置を再現する基本顔モデルと、表情に対応付けられた複数の表情用特徴量に基づいて少なくとも表情に応じた前記特徴部位の位置の変動を再現する表情用顔モデルとを設定する設定機能と、
前記基本顔モデルによって再現される前記特徴部位の位置が、前記顔領域と近似するように前記基本特徴量を補正する基本特徴量補正機能と、
前記補正された前記基本特徴量を前記基本顔モデルに適用して再現した前記特徴部位の位置を、さらに前記表情用顔モデルによって変動させたときの前記特徴部位の位置が、前記顔領域と近似するように前記表情用特徴量を補正する表情用特徴量補正機能と、
前記補正された前記表情用特徴量に基づいて顔の表情を判定する判定機能と、をコンピューターに実現させる画像処理プログラム。
【請求項8】
注目画像から顔画像の少なくとも一部を含む画像領域を顔領域として検出する顔領域検出部と、
複数の基本特徴量に基づいて少なくとも顔の特徴部位の位置を再現する基本顔モデルと、表情に対応付けられた複数の表情用特徴量に基づいて少なくとも表情に応じた前記特徴部位の位置の変動を再現する表情用顔モデルとを設定する設定部と、
前記基本顔モデルによって再現される前記特徴部位の位置が、前記顔領域と近似するように前記基本特徴量を補正する基本特徴量補正部と、
前記補正された前記基本特徴量を前記基本顔モデルに適用して再現した前記特徴部位の位置を、さらに前記表情用顔モデルによって変動させたときの前記特徴部位の位置が、前記顔領域と近似するように前記表情用特徴量を補正する表情用特徴量補正部と、
前記補正された前記表情用特徴量に基づいて顔の表情を判定する判定部と、
前記注目画像のうち所定の表情であると判定された顔画像を含む前記注目画像を印刷する印刷部とを備える印刷装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate