(57)【要約】【課題】より正確に口動き判定を行う。【解決手段】判定装置１では、顔検出部１１は、入力された動画像を構成する複数のフレームの中から、顔が含まれるフレームを顔画像として検出し、スコア算出部１３は、検出された顔画像内の口を含む口領域に基づいて、顔パーツの動きの度合いを示す指標値をスコアとして算出し、顔パラメータ算出部１４は、人間の顔に関する所定種類のパラメータについて、そのパラメータ値を、検出された顔画像または顔画像から取得可能な情報に基づいて算出し、判定部１５は、算出されたパラメータ値に応じて閾値を変化させ、変化後の閾値と、算出されたスコアとを比較し、その比較結果に基づいて顔パーツの動きの有無を判定する。本発明は、例えば、情報処理装置に適用できる。【選択図】図１
2009223761.tif 000002
【特許請求の範囲】
【請求項１】
動画像に含まれる人間の顔の顔パーツの動きの有無を判定する情報処理装置において、
前記動画像を構成する複数の単位画像の中から、前記顔が含まれる単位画像を顔画像として検出する顔検出手段と、
前記顔検出手段により検出された前記顔画像内の前記口を含む口領域に基づいて、前記顔パーツの動きの度合いを示す指標値をスコアとして算出するスコア算出手段と、
人間の顔に関する所定種類のパラメータについて、そのパラメータ値を、前記顔検出手段により検出された前記顔画像または前記顔画像から取得可能な情報に基づいて算出するパラメータ算出手段と、
前記パラメータ算出手段により算出された前記パラメータ値に応じて閾値を変化させ、変化後の閾値と、前記スコア算出手段により算出された前記スコアとを比較し、その比較結果に基づいて顔パーツの動きの有無を判定する判定手段と
を備える情報処理装置。
【請求項２】
前記パラメータの種類は、前記動画像における前記顔の位置の変化割合を表すパラメータであり、
前記パラメータ算出手段は、前記顔画像から取得された前記顔の位置を示す情報に基づいて、前記パラメータ値を算出する
請求項１に記載の情報処理装置。
【請求項３】
前記パラメータの種類は、前記動画像における前記顔の方向の変化割合を表すパラメータであり、
前記パラメータ算出手段は、前記顔画像から取得された前記顔の方向を示す情報に基づいて、前記パラメータ値を算出する
請求項１に記載の情報処理装置。
【請求項４】
前記パラメータの種類は、前記スコアの算出に用いる前記顔画像の時間間隔を表すパラメータであり、
前記パラメータ算出手段は、前記顔画像の時間情報に基づいて、前記パラメータ値を算出する
請求項１に記載の情報処理装置。
【請求項５】
前記判定手段は、顔パーツの動きの有無という判定結果を判定情報として出力する
請求項１に記載の情報処理装置。
【請求項６】
前記判定手段は、前記所定種類のパラメータのパラメータ値が所定範囲にある場合、前記スコアに対する信頼度として所定値を出力するか、または、顔パーツの動きの有無の判定が不可能であることを示す情報を出力する
請求項１に記載の情報処理装置。
【請求項７】
前記判定手段は、前記所定種類のパラメータのパラメータ値に基づいて、前記スコアに対する信頼度を算出して出力する
請求項１に記載の情報処理装置。
【請求項８】
動画像に含まれる人間の顔の顔パーツの動きの有無を判定する情報処理装置の情報処理方法において、
前記動画像を構成する複数の単位画像の中から、前記顔が含まれる単位画像を顔画像として検出し、
検出された前記顔画像内の前記口を含む口領域に基づいて、前記顔パーツの動きの度合いを示す指標値をスコアとして算出し、
人間の顔に関する所定種類のパラメータについて、そのパラメータ値を、検出された前記顔画像または前記顔画像から取得可能な情報に基づいて算出し、
算出された前記パラメータ値に応じて閾値を変化させ、変化後の閾値と、算出された前記スコアとを比較し、その比較結果に基づいて顔パーツの動きの有無を判定する
ステップを含む情報処理方法。
【請求項９】
動画像に含まれる人間の顔の顔パーツの動きの有無を判定する制御を行うコンピュータに、
前記動画像を構成する複数の単位画像の中から、前記顔が含まれる単位画像を顔画像として検出し、
検出された前記顔画像内の前記口を含む口領域に基づいて、前記顔パーツの動きの度合いを示す指標値をスコアとして算出し、
人間の顔に関する所定種類のパラメータについて、そのパラメータ値を、検出された前記顔画像または前記顔画像から取得可能な情報に基づいて算出し、
算出された前記パラメータ値に応じて閾値を変化させ、変化後の閾値と、算出された前記スコアとを比較し、その比較結果に基づいて顔パーツの動きの有無を判定する
ステップを含む制御処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置及び方法、並びにプログラムに関し、特に、例えば、口の動きの有無をより一段と正確に判定できるようになった情報処理装置及び方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来、動画像中にオブジェクトとして存在する人間の口が動いているか否かを判定する手法が幾つか提案されている。なお、以下、口の変形等の動きを口の動きと称する。但し、ここで称する口の動きとは、口の並進移動等の位置の動きではない点留意すべきである。
【０００３】
基本的な手法としては、動画像中の口が検出されたフレーム間における口周辺領域の輝度画像どうしの差分を取ることで差分画像を作成し、その差分画像の輝度の総和を閾値判定することで口の動きの有無を判定する、といった手法（以下、従来の基本的手法と称する）が存在する。顔が静止している場合、従来の基本的手法によって口の動きの有無を判定することができる。
【０００４】
別の手法としては、例えば、顔が検出されたフレーム間で顔領域下部のオプティカルフロー値から口の動きの有無を判定する手法（例えば、非特許文献１参照）や、口が検出されたフレームから抽出された唇の形状情報や口周辺領域の輝度画像の周波数成分を用いて口の動きの有無を判定する手法がある。
【非特許文献１】Hyun-Don Kim, 駒谷 和範, 尾形 哲也, 奥乃 博: 音源定位及び唇の動き検出による複数ユーザ環境における発話者認識,情報処理学会第68回全国大会, 4B-4, Mar. 2006.
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した従来の基本的手法や別の手法を適用して口の動きの有無を判定する場合、動画像中で顔が高速に移動したとき、または顔の方向が変化したとき等には、口の動きの有無の判定が正しくできない、あるいは、判定ができたとしてもその判定自体が困難になる、という問題があった。
【０００６】
本発明は、このような状況に鑑みてなされたものであり、口の動きの有無をより正確に判定することができるようにするものである。
【課題を解決するための手段】
【０００７】
本発明の一側面の情報処理装置は、動画像に含まれる人間の顔の顔パーツの動きの有無を判定する情報処理装置において、前記動画像を構成する複数の単位画像の中から、前記顔が含まれる単位画像を顔画像として検出する顔検出手段と、前記顔検出手段により検出された前記顔画像内の前記口を含む口領域に基づいて、前記顔パーツの動きの度合いを示す指標値をスコアとして算出するスコア算出手段と、人間の顔に関する所定種類のパラメータについて、そのパラメータ値を、前記顔検出手段により検出された前記顔画像または前記顔画像から取得可能な情報に基づいて算出するパラメータ算出手段と、前記パラメータ算出手段により算出された前記パラメータ値に応じて閾値を変化させ、変化後の閾値と、前記スコア算出手段により算出された前記スコアとを比較し、その比較結果に基づいて顔パーツの動きの有無を判定する判定手段とを備える。
【０００８】
本発明の一側面の情報処理方法またはプログラムは、動画像に含まれる人間の顔の顔パーツの動きの有無を判定する情報処理装置の情報処理方法または制御を行うコンピュータに制御処理を実行させるプログラムであり、前記動画像を構成する複数の単位画像の中から、前記顔が含まれる単位画像を顔画像として検出し、検出された前記顔画像内の前記口を含む口領域に基づいて、前記顔パーツの動きの度合いを示す指標値をスコアとして算出し、人間の顔に関する所定種類のパラメータについて、そのパラメータ値を、検出された前記顔画像または前記顔画像から取得可能な情報に基づいて算出し、算出された前記パラメータ値に応じて閾値を変化させ、変化後の閾値と、算出された前記スコアとを比較し、その比較結果に基づいて顔パーツの動きの有無を判定するステップを含む。
【０００９】
本発明の一側面においては、動画像を構成する複数の単位画像の中から、顔が含まれる単位画像が顔画像として検出され、検出された前記顔画像内の口を含む口領域に基づいて、前記顔パーツの動きの度合いを示す指標値がスコアとして算出され、人間の顔に関する所定種類のパラメータについて、そのパラメータ値が、検出された前記顔画像または前記顔画像から取得可能な情報に基づいて算出され、算出された前記パラメータ値に応じて閾値が変化され、変化後の閾値と、算出された前記スコアとが比較され、その比較結果に基づいて顔パーツの動きの有無が判定される。
【発明の効果】
【００１０】
本発明の一側面によれば、顔パーツの動きの有無を判定できる。特に、顔パーツの動きの有無をより正確に判定することができる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して本発明を適用した実施の形態について説明する。
【００１２】
なお、本実施の形態では、動画像の処理単位として、フレームを採用する。ただし、処理単位は、フレームに限定されず、例えばフィールド等でも構わない。以下、このようなフィールドやフレームといった動画像の処理単位を、単位画像と称する。即ち、本発明は、任意の単位画像に対する処理に適用可能であり、以下に説明するフレームは単位画像の例示にしか過ぎない点留意すべきである。
【００１３】
図１は、本発明を適用した判定装置１の機能的構成例を示すブロック図である。
【００１４】
判定装置１は、入力された動画像に含まれる人間の顔の口が動いているか否か、即ち口の動きの有無を判定する。
【００１５】
例えば、判定装置１は、ビデオカメラにより撮影された動画像に基づいて口の動きの有無を判定する。これにより、例えば、音声認識装置は、ビデオカメラにより入力された音と判定装置１による口の動きの有無の判定結果を利用して音声認識を行うことができるようになる。
【００１６】
判定装置１は、顔検出部１１、口検出部１２、スコア算出部１３、顔パラメータ算出部１４、及び判定部１５から構成される。
【００１７】
顔検出部１１は、入力された動画像を構成する複数のフレームの中から、顔が含まれるフレームを顔画像として検出し、口検出部１２及び顔パラメータ算出部１４に順次供給する。即ち、複数の顔画像から構成される動画像（以下、適宜顔動画像と称する）が顔検出部１１から口検出部１２及び顔パラメータ算出部１４に提供される。なお、顔動画像における隣接する２つの顔画像は、入力された動画像における隣接する２つのフレームに必ずしも対応しているわけではない点留意する。
【００１８】
なお、顔検出部１１より出力され口検出部１２に提供される顔画像は、顔画像中の顔を含む領域（以下、顔領域）として検出された部分の画像だけである。これにより、顔画像中の顔位置に関する情報を提供することが不要となる。
【００１９】
また、顔検出部１１より出力され顔パラメータ算出部１４に提供する画像は、顔画像または顔画像中の顔領域として検出された部分の画像のうちのどちらでも構わない。但し、顔パラメータ算出部１４は、顔検出が出来たフレーム数を数えるだけなので、顔パラメータ算出部１４に画像を提供する代わりにフラグを提供するだけでもよい。
【００２０】
顔検出部１１は、さらに、顔画像における顔の方向を示す情報（以下、「顔向き」と称する）や、顔画像における顔の相対的な空間位置（例えば顔の中心位置）を示す情報（以下、「顔位置」と称する）を検出し、顔パラメータ算出部１４に提供する。
【００２１】
顔検出部１１に適用する顔検出手法としては、特に限定されないが、「顔位置」や「顔向き」も取得できる手法であると好適である。そこで、本実施の形態では例えば、「佐部 浩太郎, 日台 健一, ”ピクセル差分特徴を用いた実時間任意姿勢顔検出器の学習”, 第１０回画像センシングシンポジウム講演論文集, pp.547-552, 2004」に開示された顔検出手法を採用するとする。
【００２２】
この顔検出手法とは、様々な方向を向いている顔が含まれる静止画像を学習しておき、入力される動画像を構成するフレーム毎に、ウィンドウの位置をずらしながらそのウィンドウが顔領域か否かを上記学習結果を用いて判定することにより顔領域を検出し、また、検出した顔領域について顔の方向情報も得ることができる手法をいう。
【００２３】
顔の方向情報は、例えば後述するYaw方向に関して［−45，−15］（−45°乃至−15°の範囲の意）、［−15，＋15］（−15°乃至＋15°の範囲の意）、或いは［＋15，＋45］（＋15°乃至＋45°の範囲の意）といった形態で得られる。即ち、ある範囲をもった大まかな範囲として顔の方向情報が得られる。
【００２４】
そこで、顔検出部１１は、より詳細な顔の方向を角度で示す情報（以下、顔角度情報と称する）を生成し、かかる顔角度情報を「顔向き」として顔パラメータ算出部１４に提供する。即ち、本実施の形態では、「顔向き」として、この顔角度情報が採用されているとする。なお、顔の方向情報から「顔向き」を生成する手法は特に限定されない。例えば、この顔の方向情報に対して、対応する顔領域の近傍の複数のウィンドウで顔領域の検出時にそれぞれ得られた複数の顔の方向情報をスコア重み平均する手法や、顔領域の検出後に例えば目、鼻、及び口のそれぞれのパーツ検出を行い、顔の３次元形状モデルを当てはめる手法等を採用できる。
【００２５】
なお、上述した顔検出手法では、顔位置は、検出された顔領域の所定位置、例えばその中心の位置として得ることができる。
【００２６】
口検出部１２は、顔検出部１１から供給される顔画像内の人間の口を含む領域（以下、口領域）を検出し、その口領域の所定位置、例えばその中心位置を示す情報（以下、口検出位置と称する）を、スコア算出部１３に供給する。そして、口検出部１２は、口領域の検出を終えた顔画像をスコア算出部１３に供給する。
【００２７】
口検出部１２に適用する口検出手法は、特に限定されない。例えば本実施の形態では、顔検出部１１に適用された顔検出手法と基本的に同様の手法が採用されているとする。
【００２８】
スコア算出部１３は、口検出部１２から供給される時間的に隣接する２つの顔画像に対して口検出位置が合うように位置合わせを行った上で、それらの２つの顔画像を用いて、口の動きの度合いを示す指標値（以下、スコアと称する）を算出する。スコア算出部１３に適用するスコア算出方法は、特に限定されない。例えば本実施の形態では、時間的に隣接する２つの顔画像のそれぞれの口周辺領域における輝度画像（以下、口周辺画像と称する）どうしの差分の絶対値をとった輝度差分画像を求め、その輝度差分画像の輝度の総和をスコアとして求める手法が採用されている。
【００２９】
なお、口周辺画像の生成場所は、ここでは説明の簡略上スコア算出部１３とするが、特に限定されず、例えば、口検出部１２でもよい。
【００３０】
図２は、１つ前の口周辺画像Ａ、現在の口周辺画像Ｂ、及び輝度差分画像Ｃ（＝｜Ａ−Ｂ｜）の例を示している。ここで、現在とは、処理対象として注目すべき顔画像（以下、注目顔画像と称する）の時刻を示し、１つ前とは、注目顔画像よりも時間的に１つ前の顔画像の時刻を示す。
【００３１】
図２において、輝度差分画像Ｃでは、対応する現在の口周辺画像Ｂと１つ前の口周辺画像Ａの差分の絶対値が大きい部分ほど白く示されている。口の動きがある時の輝度差分画像ＣＹ、即ち現在の口周辺画像ＢＹと１つ前の口周辺画像ＡＹに対する輝度差分画像ＣＹでは、唇の動きがある部分に輝度の差分が生じるので、そのような部分が白く示されている。口の動きがない時の輝度差分画像ＣＮ、即ち現在の口周辺画像ＢＮと１つ前の口周辺画像ＡＮに対する輝度差分画像ＣＮでは、２つの口周辺画像の輝度に差分が少ないので、全体的に真っ黒な画像となる。つまり、口の動きがある時の輝度差分画像の輝度の総和は大きい。一方、口の動きがない時の輝度差分画像の輝度の総和は小さい。このように、輝度差分画像の輝度の総和は口の動きの度合いを示す指標、即ち、スコアとして採用することができる。
【００３２】
そこで、スコア算出部１３は、この輝度差分画像の輝度の総和をスコアとして演算する。その結果、後述する判定部１５が、かかるスコアを閾値処理することで、口の動きの有無の判定を精度良く行うことができる。
【００３３】
顔パラメータ算出部１４は、後述する幾つかの顔パラメータの種類について、パラメータ値を、顔検出部１１から供給される顔画像、「顔位置」、または「顔向き」に基づいて、それぞれ算出し、判定部１５に提供する。
【００３４】
判定部１５には、顔パラメータ算出部１４における算出対象のパラメータの種類毎に、パラメータ値に応じて可変する閾値が用意されている。そこで、判定部１５は、顔パラメータ算出部１４から提供された所定種類の顔パラメータのパラメータ値に応じて閾値を変化させ、変化後の閾値と、スコア算出部１３から供給されるスコアとを比較する。そして、判定部１５は、その比較結果に基づいて口の動きがあるか否かを判定し、その判定結果を判定情報として外部に出力する。
【００３５】
次に、顔パラメータ算出部１４の内部構成例について説明する。
【００３６】
顔パラメータ算出部１４は、顔移動速度算出部２１、顔方向角速度算出部２２、及び顔画像レート計測部２３から構成される。
【００３７】
顔移動速度算出部２１は、顔検出部１１から供給される「顔位置」に基づいて、顔パラメータの１つの種類である、「顔位置」の変化割合を表す顔移動速度を算出し、判定部１５に供給する。
【００３８】
即ち例えば、顔移動速度算出部２１は、顔検出部１１から供給される時刻tの第tフレームの顔位置と、第tフレームよりnフレーム前の第t-nフレームの顔位置とから、式（１）に従って顔移動速度v[pixel/frame]を求める。
【００３９】
【数１】
2009223761.tif 000003
・・・（１）
【００４０】
ここで、フレームとは、あくまでも、入力された動画像を構成する各フレーム（顔画像として抽出されなかったフレームを含む）を意味する。即ち、nとは、入力された動画像におけるフレーム間隔［frame］を示している。なお、nについては、後述する他の式においても同様とされる。
【００４１】
式（１）において、（xt，yt）は、第tフレームの「顔位置」を表す座標である。xt及びytはそれぞれ、そのx座標及びy座標を［pixel］単位で表した情報である。（xt-n，yt-n）は、第t-nフレームの「顔位置」を表す座標である。xt-n及びyt-nはそれぞれ、そのx座標及びy座標を［pixel］単位で表した情報である。
【００４２】
ここで、例えばn=1の場合、顔移動速度vは、第t-1フレームと第tフレームの顔位置を用いたものとなる。「顔位置」や「顔向き」の検出処理に時間がかかるシステムの場合、例えば、入力された動画像のうちの数フレームおきに「顔位置」や「顔向き」が得られることになるので、nの値が2以上になる場合がある。
【００４３】
但し、判定装置１に入力される動画像を撮像したビデオカメラの視野角や、被写体（人間）からビデオカメラまでの距離の違いによって、実際の顔移動速度（単位時間当りの顔の移動距離）が同じでも、動画像中での顔の移動速度、即ち、［pixel/frame］単位の顔の移動速度が異なってくる。そこで、本実施の形態では、ビデオカメラの視野角や被写体からビデオカメラまでの距離が大きく変化する場合は、顔移動速度vとしては例えば、顔の幅の値で正規化した値を採用する。これにより、ビデオカメラの視野角や被写体からビデオカメラまでの距離の違いによらない顔の移動速度vを計算することができる。顔の幅の値で正規化された顔移動速度vは、例えば式（２）で表される。
【００４４】
【数２】
2009223761.tif 000004
・・・（２）
【００４５】
ここで、式（２）において、wは、顔の幅を［pixel］単位で表した情報である。
【００４６】
なお、顔移動速度算出部２１は、顔検出部１１で検出された顔の大きさの変化から奥行き方向の顔移動速度の推定を行うようにしてもよい。
【００４７】
顔方向角速度算出部２２は、顔検出部１１から供給される「顔向き」に基づいて、顔パラメータの１つの種類である、「顔向き」の変化割合を表す顔方向角速度を算出し、判定部１５に供給する。
【００４８】
即ち例えば、顔方向角速度算出部２２は、顔検出部１１から供給される時刻tの第tフレームの「顔向き」と、第tフレームよりnフレーム前の第t-nフレームの「顔向き」とから、式（３）に従って顔方向角速度ωを求める。なお、顔方向角速度算出部２２は、顔方向角速度ωを、例えば、図３に示すような３次元球座標表現のpitch方向、yaw方向、及びroll方向に関して求める。
【００４９】
【数３】
2009223761.tif 000005
・・・（３）
【００５０】
ここで、式（３）において、θtは、第tフレームの「顔向き」を［rad］単位で表した情報である。θt-nは、第t-nフレームの「顔向き」を［rad］単位で表した情報である。
【００５１】
例えば、図３に示されるように、顔の中心を原点とし、顔を撮像しているビデオカメラがある方向をx軸正方向とし、ビデオカメラから見て上方向をz軸正方向とし、ビデオカメラから見て右方向をy軸正方向とする３次元直交座標が設定されているとする。この場合、３次元球座標としては、x軸、y軸、及びz軸のそれぞれを軸として回転する回転方向であって、原点から見て時計回りを正とする回転方向をそれぞれ、roll方向、pitch方向、及びyaw方向として採用することができる。
【００５２】
顔画像レート計測部２３は、顔検出部１１から供給される顔画像に基づいて、顔パラメータの１つの種類である、スコア算出部１３でスコアの算出に用いられる顔画像の時間間隔を表す顔画像レートを計測し、判定部１５に供給する。
【００５３】
即ち例えば、顔画像レート計測部２３は、顔検出部１１から供給される顔画像の枚数をカウントし、顔画像の１秒当たりの枚数を顔画像レートr[/秒]として求める。但し、顔画像レートが大きくなるほど顔画像の時間間隔は小さくなることに留意する。T秒辺りの顔画像枚数をNとすると、画像レートrは、例えば式（４）で表される。
【００５４】
r=N/T        ・・・（４）
【００５５】
２枚の画像からスコアを算出する本説明の場合、顔画像レートrは、この２枚の画像間のフレーム数nの逆数1/nで代用することが出来る。
【００５６】
なお、以下においては、説明の便宜上、顔パラメータ算出部１４から判定部１５にパラメータ値が供給される顔パラメータの種類は、顔移動速度、顔方向角速度、及び顔画像レートのうちの所定の１種類とする。勿論、顔パラメータ算出部１４から判定部１５にパラメータ値が供給される顔パラメータの種類数は、１種類に限定される訳ではなく、例えば２種類以上とすることも可能である。
【００５７】
次に、図４乃至９を参照して、顔パラメータの種類毎に、パラメータ値に応じて閾値を可変させる意味について説明する。
【００５８】
図４は、動画像中の顔の位置や顔の方向が動いていない場合のスコア算出部１３により算出されるスコアの一例としてスコアS1を示している。
【００５９】
図４（及び後述する図５、図７、及び図９）において、縦軸はスコアの値を示し、横軸は時間を示している。
【００６０】
図４において、「口動き区間」と示されている区間が、実際に口が動いていることが観察された区間である。即ち、それ以外の区間は、実際に口が動いていないことが観察された区間であり、以下、非口動き区間と称する。口動き区間では、スコアは大きな値を持つ。ただし、口の動かし方は一定とは限らないので、口の動き方の違いに応じて、口動き区間ごとにスコアの値は異なることになる。また、一般的に、口動き区間と非口動き区間との変化タイミングでは、口を動かしてはいないが、口が動きかけているので、スコアは、非口動き区間の中央部と比較して大きい値を持つ傾向がある。
【００６１】
図４の例では、スコアS1を閾値Th1(=300)で閾値処理すると、判定部１５は、口動き区間をある程度精度良く検出できることが分かる。
【００６２】
図５は、顔が等速で移動している場合のスコア算出部１３により算出されるスコアの一例としてスコアS2を示している。
【００６３】
スコアS2は、上述したスコアS1に比べて、口動き区間で小さめの値になり、非口動き区間で大きめの値になるという特徴を有する。
【００６４】
かかる特徴について図６を参照して説明する。
【００６５】
図６（及び後述する図８）は、口周辺画像に含まれる唇の模式図を示している。図６（及び図８）では、唇の輪郭が線で示されている。
【００６６】
動画像中の顔の位置や顔の方向が動いていない場合、図６Ａに示すように、口周辺画像に含まれる唇にボケが生じない。これに対し、顔が移動している場合、図６Ｂに示すように、口周辺画像に含まれる唇にボケが生じる。
【００６７】
顔が等速で移動している場合、スコア算出部１３は、図６Ｂのような口周辺画像どうしで輝度差分画像を求めることになる。この口周辺画像では、唇のエッジがボケていることから、輝度差分画像における唇のエッジ部分の輝度差分値が小さくなるので、口の動きがある時のスコア値が低めになる。また、これらのボケた唇を含む顔画像に対しては口検出位置の精度が低下するので、顔画像間の口検出位置の対応付けの精度が悪化し、スコア値が全般的にやや大きくなる。従って、顔が静止している時のスコア値と比較して、口の動きがある時のスコア値は小さめとなり、口の動きがない時のスコア値は大きめとなる。
【００６８】
かかる特徴を有するスコアS2に対して上述した閾値Th1を用いて閾値処理したとすると、非口動き区間を含む図中のすべての区間に対して口の動きがあると判定されてしまう。そこで、閾値をTh1（=300）より大きめのTh2(=400)に変化させて、変化後の閾値Th2でスコアS2を閾値処理することで、口動き区間をある程度精度良く検出できることが分かる。
【００６９】
なお、顔がroll方向に等角速度で移動している場合も、スコア算出部１３は、図６Ｂのような唇のエッジがボケた口周辺画像どうしで輝度差分画像を求めることになる。したがって、この場合も、顔が静止している時のスコア値と比較して、口の動きがある時のスコア値は小さめとなり、口の動きがない時のスコア値は大きめとなる。
【００７０】
顔の動き始めや動き終わりの場合、スコア算出部１３は、図６Ａのような口周辺画像と図６Ｂのような口周辺画像の間で輝度差分画像を求めることになる。このときの輝度差分画像では、口動きがない時でも唇の輪郭部分で輝度差分が生じるので、スコアとしては大きめな値が出る。そこで、閾値をTh1より大きめの閾値に変化させて、変化後の閾値でそのようなスコアを閾値処理することで、口動き区間をある程度精度良く検出できる。
【００７１】
顔の移動速度が一定でない場合、スコア算出部１３は、動きブレの強度が異なる図６Ｂのような口周辺画像どうしで輝度差分画像を求めることになる。このときの輝度差分画像では、口動きがない時でも唇の輪郭部分で輝度差分が生じるので、スコアとしては大きめな値が出る。そこで、閾値をTh1より大きめの閾値に変化させて、変化後の閾値でそのようなスコアを閾値処理することで、口動き区間をある程度精度良く検出できる。
【００７２】
図７は、顔の方向が変化している場合のスコア算出部１３により算出されるスコアの一例としてスコアS3を示している。
【００７３】
スコアS3は、上述したスコアS1に比べて、非口動き区間で大きめの値になるという特徴を有する。
【００７４】
かかる特徴について図８を参照して説明する。
【００７５】
顔の方向が変化している場合、スコア算出部１３は、図８Ａのような顔が正面方向を向いているときの口周辺画像と、図８Ｂのような顔の方向が図中右方向に変化している口周辺画像の間で輝度差分画像を求めることになる。このときの輝度差分画像では、口が動いていなくても唇の見え方が変わった部分で輝度差分が生じているので、口の動きがない時でもスコア値が大きめになる。
【００７６】
かかる特徴を有するスコアS3に対して上述した閾値Th1を用いて閾値処理したとすると、非口動き区間を含む図中のすべての区間に対して口の動きがあると判定されてしまう。そこで、閾値をTh1（=300）より大きめのTh3(=500)に変化させて、変化後の閾値Th3でスコアS3を閾値処理することで、口動き区間をある程度精度良く検出できることが分かる。
【００７７】
図９は、スコアの算出に用いる顔画像の時間的間隔が大きい場合のスコア算出部１３により算出されるスコアの一例としてスコアS4を示している。
【００７８】
スコアS4は、上述したスコアS1に比べて、口動き区間、非口動き区間に関わらず値が大きくなるという特徴を有する。
【００７９】
顔画像の時間的間隔が大きい場合、口の動きがある時と口の動きがない時にかかわらず唇の変化の度合いが大きくなる傾向があるので、スコア値は大きめになる。
【００８０】
かかる特徴を有するスコアS4に対して上述した閾値Th1を用いて閾値処理したとすると、非口動き区間を含む図中のすべての区間に対して口の動きがあると判定されてしまう。そこで、閾値をTh1（=300）より大きめのTh4(=500)に変化させて、変化後の閾値Th4でスコアS4を閾値処理することで、口動き区間をある程度精度良く検出できることが分かる。
【００８１】
このように、顔の位置の変化割合、顔の方向の変化割合、顔画像の時間的間隔等のパラメータ値に応じて変化する閾値を用意することで、判定部１５は、口動き区間をある程度精度良く検出できることが分かる。
【００８２】
そこで、判定部１５には、パラメータ値に応じた最適な閾値をあらかじめ用意しておくようにする。
【００８３】
具体的には、観測者が動画像を見て、口が動いていると認識した区間（口動き区間）に印をつけておく。そして、学習したデータから閾値を決定する際は、印をつけられた区間をもっとも検出しやすいように閾値を決定する。
【００８４】
具体的には、例えば、図４の例の場合、顔移動速度vが値v1、顔方向角速度ωが値ω1、顔画像レートrが値r1であるとすると、このときの最適な閾値はTh1(=300)であることから、判定部１５には、顔移動速度vとしての値v1、顔方向角速度ωとしての値ω1、顔画像レートrとしての値r1のそれぞれに応じた閾値として、閾値Th1(=300)を用意しておくようにする。
【００８５】
図５の例の場合、顔移動速度vが値v2であるとすると、このときの最適な閾値はTh2(=400)であることから、判定部１５には、顔移動速度vとしての値v2に応じた閾値として、閾値Th2(=400)を用意しておくようにする。
【００８６】
図７の例の場合、顔方向角速度ωが値ω3であるとすると、このときの最適な閾値はTh3(=500)であることから、判定部１５には、顔方向角速度ωとしての値ω3に応じた閾値として、閾値Th3(=500)を用意しておくようにする。
【００８７】
図９の例の場合、顔画像レートrが値r4であるとすると、このときの最適な閾値はTh4(=500)であることから、判定部１５には、顔画像レートrとしての値r4に応じた閾値として、閾値Th4(=500)を用意しておくようにする。
【００８８】
そして、判定部１５は、スコア算出部１３から供給される顔移動速度v、顔方向各速度ω、または顔画像レートrに応じた閾値を設定し、この閾値とスコア算出部１３からのスコアとを比較し、その比較結果に基づいて、口の動きがあるか否かを判定する。
【００８９】
まず、顔移動速度vに応じた閾値が設定される場合の例について説明する。
【００９０】
いま、図４の例のとおり顔が静止しているとする。
【００９１】
このとき、顔移動速度算出部２１は、顔検出部１１からの各顔画像に対する「顔位置」から、式（１）または式（２）に従って顔移動速度vとして値v1（ほぼ0）を算出する。
【００９２】
スコア算出部１３は、顔検出部１１からの顔動画像に対して、例えば図４に示したスコアS1を算出する。
【００９３】
そして、判定部１５は、顔移動速度算出部２１からの各顔画像に対する顔移動速度vとしての値v1に応じた閾値Th1(=300)を設定し、この閾値Th1とスコア算出部１３からのスコアS1とを比較し、例えばスコアS1が閾値Th1より大きいか否かにより、口の動きがあるか否かを判定する。これにより、判定部１５は、精度良く口の動きの有無を判定できる。
【００９４】
その後、顔が移動し始め、図５の例のとおりに顔が等速で移動しているとする。
【００９５】
このとき、顔移動速度算出部２１は、顔検出部１１からの各顔画像に対する「顔位置」から、式（１）または式（２）に従って顔移動速度vとして値v2を算出する。
【００９６】
スコア算出部１３は、顔検出部１１からの顔動画像に対して、例えば図５に示したスコアS2を算出する。
【００９７】
そして、判定部１５は、顔移動速度算出部２１からの各顔画像に対する顔移動速度vとしての値v2に応じた閾値Th2(=400)を設定し、この閾値Th2とスコア算出部１３からのスコアS2とを比較し、例えばスコアS2が閾値Th2より大きいか否かにより、口の動きがあるか否かを判定する。これにより、判定部１５は、精度良く口の動きの有無を判定できる。
【００９８】
このように、判定装置１は、顔移動速度vの値に応じた閾値を設定するようにしたので、顔が移動しているときでも、精度良く口の動きの有無を判定することができる。
【００９９】
次に、顔方向角速度ωに応じた閾値が設定される場合の例について説明する。
【０１００】
いま、図４の例のとおりに顔が静止しているとする。
【０１０１】
このとき、顔方向角速度算出部２２は、顔検出部１１からの各顔画像に対する「顔向き」から、式（３）に従って顔方向角速度ωとして値ω1（ほぼ0）を算出する。
【０１０２】
スコア算出部１３は、顔検出部１１からの顔動画像に対して、例えば図４に示したスコアS1を算出する。
【０１０３】
そして、判定部１５は、顔方向角速度算出部２２から供給される各顔画像に対する顔方向角速度ωとしての値ω1に応じた閾値Th1(=300)を設定し、この閾値Th1とスコア算出部１３からのスコアS1とを比較し、例えばスコアS1が閾値Th1より大きいか否かにより、口の動きがあるか否かを判定する。これにより、判定部１５は、精度良く口の動きの有無を判定できる。
【０１０４】
その後、顔の方向が変化し始め、図７の例のとおりに顔の方向が変化しているとする。
【０１０５】
このとき、顔方向角速度算出部２２は、顔検出部１１からの各顔画像に対する「顔向き」から、式（３）に従って顔方向角速度ωとして値ω3を算出する。
【０１０６】
スコア算出部１３は、顔検出部１１からの顔動画像に対して、例えば図８に示したスコアS3を算出する。
【０１０７】
そして、判定部１５は、顔方向角速度算出部２２から供給される各顔画像に対する顔方向角速度ωとしての値ω3に応じた閾値Th3(=500)を設定し、この閾値Th3とスコア算出部１３からのスコアS3とを比較し、例えばスコアS3が閾値Th3より大きいか否かにより、口の動きがあるか否かを判定する。これにより、判定部１５は、精度良く口の動きの有無を判定できる。
【０１０８】
このように、判定装置１は、顔方向角速度ωに応じた閾値を設定するようにしたので、顔の方向が変化しているときでも、ある程度精度よく口の動きの有無を判定できる。
【０１０９】
次に、顔画像レートrに応じた閾値が設定される場合の例について説明する。
【０１１０】
いま、図４の例のとおりに顔画像の時間的間隔が例えば入力される動画像のフレーム間隔とする。
【０１１１】
このとき、顔画像レート計測部２３は、顔検出部１１からの各顔画像から、顔画像レートrとして値r1と算出する。
【０１１２】
スコア算出部１３は、顔検出部１１からの顔動画像に対して、例えば図４に示したスコアS1を算出する。
【０１１３】
そして、判定部１５は、顔画像レート計測部２３からの各顔画像に対する顔画像レートrとしての値r1に応じた閾値Th1(=300)を設定し、この閾値Th1とスコア算出部１３から供給されるスコアS1を比較し、例えばスコアS1が閾値Th1より大きいか否かにより、口の動きがあるか否かを判定する。これにより、判定部１５は、精度良く口動きの有無を判定できる。
【０１１４】
その後、図９の例のとおりに顔画像の時間的間隔が大きくなったとする。
【０１１５】
このとき、顔画像レート計測部２３は、顔検出部１１からの各顔画像から、顔画像レートrとして値r4と算出する。
【０１１６】
スコア算出部１３は、顔検出部１１からの顔動画像に対して、例えば図９に示したスコアS4を算出する。
【０１１７】
そして、判定部１５は、顔画像レート計測部２３から供給される各顔画像に対する顔画像レートrとしての値r4に応じた閾値Th4(=500)を設定し、この閾値Th4とスコア算出部１３から供給されるスコアS4とを比較し、例えばスコアS1が閾値Th1より大きいか否かにより、口の動きがあるか否かを判定する。これにより、判定部１５は、精度良く口の動きの有無を判定できる。
【０１１８】
このように、判定装置１は、顔画像レートrに応じた閾値を設定するようにしたので、顔画像の時間的間隔が変化したときでも、精度よく口の動きの有無を判定することができる。
【０１１９】
次に、図１０のフローチャートを参照して、判定装置１の口の動きの有無を判定する処理（以下、判定処理と称する）の一例について説明する。
【０１２０】
ステップＳ１において、顔検出部１１は、入力された動画像から顔画像を検出し、口検出部１２及び顔パラメータ算出部１４に供給する。ここで、検出された顔画像を注目顔画像とすると、顔検出部１１は、さらに注目顔画像の「顔向き」及び「顔位置」を検出し、顔パラメータ算出部１４に提供する。
【０１２１】
ステップＳ２において、口検出部１２は、顔検出部１１から供給される注目顔画像から口領域を検出し、口領域の検出を終えた注目顔画像をスコア算出部１３に供給する。口検出部１２は、さらに、注目顔画像における口の所定位置を示す口検出位置を検出し、スコア算出部１３に供給する。
【０１２２】
ステップＳ３において、スコア算出部１３は、口検出部１２から供給される注目顔画像と、その１つ前の顔画像のそれぞれの口領域に基づいて、スコアを算出する。なお、注目顔画像と、その１つ前の顔画像を用いて算出されたスコアを、以下、注目顔画像に対するスコアと称する。
【０１２３】
ステップＳ４において、顔パラメータ算出部１４は、顔検出部１１から供給される注目顔画像の所定種類のパラメータについて、そのパラメータ値を注目顔画像または注目顔画像から取得可能な情報に基づいて算出する。
【０１２４】
ステップＳ５において、判定部１５は、顔パラメータ算出部１４から供給される注目顔画像の所定種類のパラメータのパラメータ値に応じて閾値を変化させ、変化後の閾値とスコアとを比較し、その比較結果に基づいて注目顔画像に対して口の動きがあるか否かを判定し、その判定結果を注目顔画像に対する判定情報として外部に出力する。
【０１２５】
このようにして、判定装置１は、例えば顔検出部１１により顔画像が検出される度にその顔画像に対する口の動きの有無という判定結果を判定情報として外部に出力する。
【０１２６】
以上のように、判定装置１は、所定種類のパラメータのパラメータ値に応じた閾値を設定するようにしたので、様々なコンディションにおいても顔が静止しているときと同様の口動き判定性能を発揮することができる。
【０１２７】
判定装置１は、所定種類のパラメータのうちの所定の１種類を用いて口動きの有無を判定するようにしたが、その他、所定種類のパラメータのうちの２種類以上を用いて口動きの有無を判定するようにしてもよい。その場合、判定部１５には、例えば、使用する２種類以上のパラメータどうしのパラメータ値のあらゆる組合せに対する閾値を与える閾値テーブルを用意する。そして、判定部１５は、その閾値テーブルを参照して、顔パラメータ算出部１４からの２種類以上のパラメータのパラメータ値の組み合わせに応じた閾値を設定する。あるいは、判定部１５には、２種類以上のパラメータのそれぞれを変数とする閾値関数を用意する。そして、判定部１５は、顔パラメータ算出部１４からの２種類以上の顔パラメータのパラメータ値を閾値関数に代入して閾値を求め、その閾値を設定する。
【０１２８】
顔移動速度vが大きい場合、顔方向角速度ωが大きい場合、または顔画像レートrが小さい場合は、一般的に、それらのパラメータ値に応じた閾値を用いても口動き判定性能は低下する傾向にある。そこで、判定部１５は、パラメータ値に基づいて、スコアに対する信頼度を算出し、外部に出力するようにする。この際、判定装置１の後段のブロックは、判定情報を用いる際に付加情報として信頼度を利用することができる。また、パラメータ値が口動き判定性能に及ぼす影響が信頼度に加味されているので、信頼度の算出にパラメータ値を用いない場合に比べて信頼度の精度を向上させることができる。
【０１２９】
顔移動速度vが大き過ぎる場合、顔方向角速度ωが大き過ぎる場合、若しくは顔画像レートrが小さ過ぎる場合、または、顔が移動しながら顔の方向が変わるといった複数種類のパラメータの変化が同時に生じる場合、スコアの値が乱れすぎて口動きの有無の判定ができなくなることがある。つまり、所定種類のパラメータのパラメータ値が所定範囲にある場合、判定部１５は、上述した信頼度として0を外部に出力するか、または、口の動きの有無の判定が不可能であることを示す情報として例えばフラグを外部に出力するようにしてもよい。この際、判定装置１の後段のブロックは、例えば、所定閾値以下の信頼度またはフラグを受信したとき、判定情報を利用しないようにしてもよい。
【０１３０】
なお、以上においては、判定装置１は、口動きの有無を判定するようにしたが、その他、発話の有無を判定するようにしてもよい。この場合、発話判定装置としての判定装置１は、口動き区間と非口動き区間の代わりに、発話区間と非発話区間について、所定種類のパラメータのパラメータ値に応じた最適な閾値を学習しておくようにする。発話判定装置としての判定装置１は、所定種類のパラメータのパラメータ値に応じた閾値を設定し、この閾値とスコアとを比較し、その比較結果に基づいて、発話があるか否かを判定する。これにより、精度よく発話の有無を判定することができる。
【０１３１】
口の動きの有無の判定の利用例として、例えば、発話の有無の判定がある。すなわち、判定装置１から出力される判定情報を用いて、発話の有無を判定する。発話の有無は口の動きの有無に対応しているので、判定情報を利用して、発話の有無を判定することができる。また、音声情報と組み合せると発話区間の判定の精度を増すことができる。
【０１３２】
本実施の形態では、動き検出対象として、口を採用したが、動き検出対象は、特に口に限定されない。動き検出対象は、人間の顔を構成する器官または器官の一部（以下、顔パーツ）であればよい。顔パーツは、例えば、目、目の中心や目頭、目尻、目の輪郭、鼻、鼻底部、鼻側面、口、口端点、口の輪郭、眉毛、眉毛頭、眉毛尻などである。
【０１３３】
例えば、口以外の顔パーツの動きの有無の判定の利用例として、瞬きの有無の判定がある。瞬きを検出するには、例えば、「目の中心や、目頭、目尻」の情報を使って検出できる。
【０１３４】
図１の口検出部１２を目検出部とすれば、後の処理は同じである。目検出部にて、「目の中心や目頭、目尻」の情報を取得し、その動きを検出する。
【０１３５】
目尻等を検出する手法としては、顔検出手法と同様の手法を用いている。例えば、目尻の場合は、学習しておく静止画像として、目尻の部分だけを切り抜いた画像をたくさん集めて学習することで、目尻を検出できる。
【０１３６】
この瞬き検出について、以下、具体的に説明する。
【０１３７】
瞬き検出では、判定装置１を目尻の動きの有無を判定する目尻動き判定装置とし、その目尻動き判定装置からの判定情報を用いて瞬き検出を行う。
【０１３８】
目尻動き判定装置の口検出部は、顔検出部１１から供給される顔画像内の目尻を含む領域（以下、目尻領域）を検出し、目尻領域の所定位置、例えばその中心位置を示す情報（以下、目尻検出位置と称する）を、スコア算出部１３に供給する。そして、目検出部は、目尻領域の検出を終えた顔画像をスコア算出部１３に供給する。
【０１３９】
そして、判定部１５には、実際に目尻の動きが観測された区間（瞬き区間）と実際に目尻の動きが観測されなかった区間（非瞬き区間）について、各顔パラメータのパラメータ値に応じた最適な閾値を用意しておくようにする。目尻動き判定装置は、各顔パラメータのパラメータ値に応じた閾値を設定し、この閾値とスコアとを比較し、その比較結果に基づいて、目尻の動きがあるか否かを判定する。
【０１４０】
そして、目尻動き判定装置から出力される判定情報を用いて、瞬きの有無が判定される。これにより、精度よく瞬きの有無を判定することができる。
【０１４１】
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０１４２】
図１１は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【０１４３】
コンピュータにおいて、CPU３１，ROM（Read Only Memory）３２，RAM（Random Access Memory）３３は、バス３４により相互に接続されている。
【０１４４】
バス３４には、さらに、入出力インタフェース３５が接続されている。入出力インタフェース３５には、キーボード、マウス、マイクロホンなどよりなる入力部３６、ディスプレイ、スピーカなどよりなる出力部３７、ハードディスクや不揮発性のメモリなどよりなる記憶部３８、ネットワークインタフェースなどよりなる通信部３９、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア４１を駆動するドライブ４０が接続されている。
【０１４５】
以上のように構成されるコンピュータでは、CPU３１が、例えば、記憶部３８に記憶されているプログラムを、入出力インタフェース３５及びバス３４を介して、RAM３３にロードして実行することにより、上述した一連の処理が行われる。
【０１４６】
コンピュータ（CPU３１）が実行するプログラムは、例えば、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD−ROM(Compact Disc−Read Only Memory),DVD(Digital Versatile Disc)等）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア４１に記録して、あるいは、ローカルエリアネットワーク、インターネット、ディジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
【０１４７】
そして、プログラムは、リムーバブルメディア４１をドライブ４０に装着することにより、入出力インタフェース３５を介して、記憶部３８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部３９で受信し、記憶部３８にインストールすることができる。その他、プログラムは、ROM３２や記憶部３８に、あらかじめインストールしておくことができる。
【０１４８】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１４９】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０１５０】
【図１】本発明を適用した判定装置１の機能的構成例を示すブロック図である。
【図２】輝度差分画像を用いたスコアの算出の原理を説明するための図である。
【図３】顔方向角速度ωの３次元球座標表現に用いるpitch方向とyaw方向を説明するための図である。
【図４】スコアの例を示す図である。
【図５】口周辺画像の模式図を示す図である。
【図６】スコアの他の例を示す図である。
【図７】口周辺画像の模式図を示す図である。
【図８】スコアの他の例を示す図である。
【図９】スコアの他の例を示す図である。
【図１０】判定処理における判定装置１の動作を示すフローチャートである。
【図１１】本発明を適用したコンピュータのハードウェアの構成例を示すブロック図である。
【符号の説明】
【０１５１】
１  判定装置，  １１  顔検出部，  １２  口検出部，  １３  スコア算出部，  １４  顔パラメータ算出部，  １５  判定部，  ２１  顔移動速度算出部，  ２２  顔方向角速度算出部，  ２３  顔画像レート計測部，  ３１  CPU，  ３２  ROM，  ３３  RAM，  ３４  バス，  ３５  入出力インタフェース，  ３６  入力部，  ３７  出力部，  ３８  記憶部，  ３９  通信部，  ４０  ドライブ，  ４１  リムーバブルメディア
【図１】
2009223761.tif 000006
【図２】
2009223761.tif 000007
【図３】
2009223761.tif 000008
【図４】
2009223761.tif 000009
【図５】
2009223761.tif 000010
【図６】
2009223761.tif 000011
【図７】
2009223761.tif 000012
【図８】
2009223761.tif 000013
【図９】
2009223761.tif 000014
【図１０】
2009223761.tif 000015
【図１１】
2009223761.tif 000016