顔や視線をインタフェースに

RGB-Dセンサを用いた「全身」、「手」によるナチュラルインタフェース応用を見てきましたが、最後に「顔」をインタフェースとする応用を紹介します。

Kinect for Windows SDKにはFace SDKという開発者向けの顔追跡を簡単に用いることができる機能が用意されています。以下の動画は開発者の方によるそのデモ動画です。

APEX Day 151 - Face Tracking with Microsoft Kinect for Windows

動画中右側、男性の顔に沿った形で、動画の各フレームで黄色の三角系がこの男性の顔に沿った形で自動追跡されている様子がわかると思います。専門用語ではこういった顔追跡の手法を「モデルベースの顔追跡(フェイストラッキング)」と呼びます。動画左側には、眼、鼻、口のデフォルメモデルが、右側の追跡結果の該当する点の情報を用いて変形する様子も同時に表示されています。このように、顔の特徴点を追跡することで「表情認識」的なことも実現できるので、モデルベースの顔追跡では、まず顔の形全体が、どのように変化したらどういった形になるかを表現してある「顔モデル」を先に用意して保存しておきます。

そしてテスト時には、新しい動画の1フレームのデプスデータ(+カラー画像)に対して、その顔モデルを1フレーム前の状態から形を変形させていき、入力したフレームの形(+カラー画像)と近い状態(差が少ない状態)を探索することで、現在のフレームでの顔モデルの状態が自動決定されます(この過程を「モデルを(データに)フィッティングさせる(あてはめる)」とも言います)。以前、パーティクルフィルタの回でも説明しましたが、顔追跡のように、動画の各フレームに対して、前フレームの状態から更新させながら次フレームの状態を確定させていくことを、コンピュータビジョンでは「追跡(トラッキング)」と呼びますが、顔追跡は、顔モデルを用いた追跡なので、顔追跡と呼ぶわけです。

顔追跡の技術は、商用の顔追跡製品こそ存在するものの安価ではなく、個人開発者が商用のアプリケーションに組み込むにはハードルが高いものでした。しかし、Microsoft社がKinect for Windows SDKに、顔追跡機能を提供し始めて以降、この技術を用いるハードルが一気に下がったというのが現在の状況です

顔追跡は、デプスセンサではなく画像でも実現・応用されています。オムロンの商用の顔認識系のモジュール群「OKAO Vision」では、顔追跡が搭載されており、先日ニュースにもなった、AmazonのスマートフォンにもOKAO Visionの顔追跡技術が搭載されているとのことです。

TechCrunch:Amazon、独自スマートフォンFireを発表-3Dヘッドトラッキング機能を備えて199ドルから

このAmazonの話でもそうですが、顔追跡により顔の向きが取得できると、例えば以下のiPadアプリのような「擬似的な3D表示(顔の位置にあわせて、画面側が3D的に擬似的に変化する)」という仮想現実アプリケーションが実現可能です。

i3D - Head Tracking for iPad: Glasses-Free 3D Display

今回はその話はしませんが、顔系のコンピュータビジョンビジョンの技術では、「視線(眼の見ている所)」を捉えて、その情報を活用するという話もあります。Google Glassのような「一人称ビジョン」ともかかわる話ですので、今後機会があれば視線の計測応用についても紹介していきたいと思います。

まとめ

以上、安価なデプスセンサが登場して以降、気軽に開発者が使用できるになった「人の姿勢・手・顔」のリアルタイム情報を用いたナチュラルユーザーインタフェース応用について紹介しました。

以前はどちらかというと「一方的にカメラから情報を取得するだけ」のイメージが強かったビジョンの技術ですが、こうしたナチュラルインタフェースが手軽に作れるようになって以降は、「人とコンピュータとのやりとり」という形のヒューマン・コンピュータ・インタラクション応用や、VR(バーチャルリアリティ)応用との連携も増えていると思います。また、今後ロボットの応用が増えてくる時に、人と対話する手段はこれまでは音声対話までが多かったところに、こうしたナチュラルな人とのインタフェースの割合も増えてくるはずです(とはいえ、むしろビジョン技術により人から取得できる情報が増えていることには注意が必要ですが)。

というわけで、3D編はKinectの姿勢推定から始まって、今回ナチュラルユーザーインタフェース編が終った所で、一段落しました。ここまでは姿勢や顔特徴点に変換してからの話でしたが、次は入力の3Dデータそのものを処理して活用して行く「3D点群編」に突入する予定です。3Dプリンタの登場などもあって、ビジョンベースの3Dデータの取得、およびそのデータの解析への注目度も上がってきています。今後も面白い内容を提供していきたいと思っていますので、引き続き本連載を応援頂ければ幸いです。

林 昌希(はやし まさき)

慶應義塾大学大学院 理工学研究科、博士課程。
チームスポーツ映像解析プロジェクトにおいて、動画からの選手の姿勢の推定、およびその姿勢情報を用いた選手の行動認識の研究に取り組み中。(所属研究室が得意とする)コンピュータビジョン技術によって、人間の振る舞いや属性を機械学習・パターン認識により計算機で理解する「ヒューマンセンシング技術」全般に明るい。技術商社でエンジニアをしていたこともあり、海外のIT事情にも詳しい

一方、デプスセンサー等で撮影した実世界の3D点群データの活用を推進するための「Point Cloud コンソーシアム」での活動など、3Dコンピュータビジョンのビジネスでの普及にも力を入れている。また、有料メルマガ「DERiVE メルマガ 別館」では、コンピュータビジョン・機械学習の初~中級者のエンジニア向けの、他人と大きな差がつく情報やアイデアを発信中(メルマガでは、わかりやすい理論や使いどころの解説込みの、OpenCVの初心者向け連載なども展開中)。

翻訳書に「コンピュータビジョン アルゴリズムと応用 (3章前半担当)」。