顔の表情変化の有無の検出

はじめに

本研究では、近年増加している独居老人に対してコミュニケーションを試み、 寂しさや不安を解消し、彼らの健康状態を把握するシステムを目指し、その 第一歩として表情変化の有無の検出を行った。将来的には有無だけではなく どのような表情であるかといった表情認識を行うことを目指している。

検出の流れ

フローチャート.JPG

処理の説明

顔検出について

まず初めに入力として、顔の写った時間的に連続した2枚の画像を用いる。読み込んだ2枚の入力画像のうち時間的に早い画像をここでは入力画像1、遅い画像を入力画像2と呼ぶこととする。 そして、入力画像1について顔検出を行い顔の位置情報を取得する。本研究では顔検出の手法としてViola,Jonesらの提案した既存の手法を用いた。

0.jpg
r0.jpg

オプティカルフローについて

オプティカルフローとは、画像全体の動きのことである。具体的には画像上の濃度分布により物体の動きを抽出するが、その際の濃度分布の速度分布に事をオプティカルフロー(見かけ速度ベクトル)という。オプティカルフローの計算にはいくつかの手法があるが、本研究では画像上の小領域(ブロック)内の移動は一定であると仮定して、勾配法を適用し計算を行った。

  • 勾配法
    勾配法の基本となる微分値と移動ベクトルの関係は画像と各画素ごとに成り立つが、この関係によって得られる移動ベクトルの情報は画像の勾配方向の成分だけであり移動ベクトルを完全に求めるには何らかの付加条件が必要となる。この付加条件として画像上の小領域(ブロック)では移動ベクトルは一定であるという仮定を用いて計算を行う。
  • 信頼度

表情変化の検出について

カメラで撮影した動画から顔の動きを抽出する際に,考えられる動きのうち大きいものとして表情変化と顔が動いてしまった場合の移動による変化が考えられる。それぞれの特徴をまとめると以下のようになる。

  • 表情変化
    顔のパーツはばらばらに動く。
    表情変化の図.JPG
  • 移動
    全体が一様な方向に動く
    平行移動の図.JPG

ここで今回は表情の変化のみを見たいので、体が動いているときの変化は無視をしたい。そこで本研究ではそれらをフローの平均値と分散値を用いて判別を行った。

  • 平均値と分散値を用いた判別
    上で述べた2つの動きは平均値、分散値で考えると以下のような特徴がまとめられる。
    • 表情変化
      分散値:大きくなる 平均値:急激な変化であれば大きくなり小さい変化であれば小さくなる
    • 移動
      分散値:小さくなる 平均値:移動量が大きければ大きく、小さければ小さくなる

ここで分散値には違いが出ているが平均値に大きな違いはないように思えるが、実際は顔のパーツの動きと体全体の動きでは動きのスケールが違うので移動の平均値の方が大きくなることが分かる。理想では分散のみで判別可能になるが、移動の際にあまりに大きな動きをしてしまうと変化が急激となり滑らかな変化を仮定している勾配法では正確なフローの検出ができなくなってしまう。そこで本研究では分散値だけでなく先に説明した平均値も用いて判別を行う。

判別の流れ.JPG

ここで、フローの平均値の絶対値が大きいときは急激な移動として判別し表情の検出は行わない事とした。

結果

  • case1:体が動いている
    case1.JPG
    入力画像では左に移動している画像になる。ここで(d-1)のデータで水平方向の平均値の絶対値は閾値以上なので体が動いているという変別が正しくされている。
  • case2:表情変化
    case2(瞬き).JPG
    この画像は瞬きの検出結果である。このときの(d-4) を見ると平均値は閾値以下で分散値は閾値以上になるので変化ありと正しく検出される。
    case2.JPG
    この画像は口を開く変化のある画像である。このときの平均値は閾値以下なので表情変化を判別するために分散値で判断をするとxy方向ともに閾値以上なので変化ありと判別され、正しく検出できている。
  • case3:表情変化なし
    case3.JPG
    上の入力画像に変化がほぼないように(d-1)のデータでも平均値、分散値がともに閾値以下のため変化なしと判別され、正しく検出されている。


以上の結果を以下のグラフにまとめる。グラフの横軸はフレーム数、縦軸は分散値または平均値となっている。

結果1.JPG

これは、表情変化(中)の結果である。見て分かる通り、ほとんどの変化を判別できている。しかし、変化が小さいところでの判別に失敗している点も見受けられる。

結果2.JPG

こちらは平行移動(大)の結果である。右のグラフが分散、左のグラフが平均値をあらわしている。平均値が閾値以上のところはすべて移動中と考えられる。したがってすべて移動中と考えられるので正しく判別されていると考えられる。

今後の課題

より精度の高い検出を行うために口端検出や瞳検出を併用しての判別や、パーツ個別の変化の検出が考えられる。また、リアルタイム化についてはより正確な判別を行うために実行時間の短縮が課題である。


添付ファイル: filer0.jpg 377件 [詳細] file0.jpg 382件 [詳細] file失敗.JPG 412件 [詳細] file結果2.JPG 403件 [詳細] file結果1.JPG 408件 [詳細] filecase3.JPG 363件 [詳細] filecase2.JPG 386件 [詳細] filecase2(瞬き).JPG 429件 [詳細] filecase1.JPG 459件 [詳細] file判別の流れ.JPG 394件 [詳細] file平行移動の図.JPG 408件 [詳細] file表情変化の図.JPG 404件 [詳細] fileフローチャート.JPG 431件 [詳細] file表情変化の図.bmp 411件 [詳細] fileフローチャート.bmp 447件 [詳細]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-03-27 (金) 17:39:28