スマートグラスで『おもてなし』 : スマートグラスと顔検出
からっちゃん
こんにちは、客員研究員のからっちゃんです。
SF小説や映画に登場していた未来のデバイスが、ここ最近になってどんどん現実化していますね。
ガジェット好きの私は嬉しくてしょうがありません。
やはり中でも大注目は『スマートグラス』!!
スマートグラスがもたらす便利ライフにワクワクが止まらないのです(*´д`*)
という訳で、3/27のイベントに向けて、スマートグラスを使った接客システムを作っちゃいます。
システムの概要
ここで作るシステムは、よく来店するお客様に常連登録してもらうことで、次の来店時からスタッフのスマートグラスにお客様情報がAR表示されるというもの。
足しげく通えばお得なサービスが受けられるかもしれません。ビバVIP待遇!
構成はスマートグラス + スマートフォン + サーバ。
スマートフォンで登録した情報がサーバを介して同期され、スマートグラスにAR表示されるわけです。
今回はスマートグラスとしてVUZIXのM100、スマートグラスでの顔認識にPUX株式会社(Panasonic)のFaceUというプロダクトを使用します。
M100はandroid搭載のスマートグラスでカメラとマイクはもちろんGPSやジェスチャセンサーも搭載しています。
かっこいいですね!
未来ですね!!
イベント当日にはかっこいい姿でお目見えするという噂も!?!?
このM100というプロダクトは小型ながらなかなかパワフルな液晶が備わっています。その液晶ではこんな風に見えます。最初は焦点を合わせるために思わず凝視してしまいますが、慣れると周囲を見渡すいわば普通の視線とスマートグラスM100のディスプレイを見る視線とをかなりシームレスに切り替えられるようになります。プログラミングしながらM100でYoutubeの動画を同時に見ることもできるようになります!
FaceUは様々なプラットフォームに対応した顔認識ソフトウェアです。
笑顔・まばたき判定等のリッチな機能に加えて、高速モードと高精度モードも切替可能という至れり尽くせりなライブラリとなっています。
まずは顔検出
さぁ、まずはM100とFaceUを使って顔検出を行ってみましょう!!
FaceUにはカメラ画像取り込み部分は含まれていないので、AndroidのSurfaceViewとCameraクラスを使ってカメラプレビューを取得します。
取得した画像からFaceUで顔とそのパーツ位置を検出して、カメラプレビューの上に表示してみます。
Android 4.0まではカメラプレビュー用のSurfaceViewに直接付加情報を描画できたのですが、4.1からそれが難しくなったのでSurfaceViewを2枚重ねにして表現することにします。
せっかくなので、目や顔の位置以外に取得できるパーツを全部表示して見ましょう。
そんな感じで出来上がったアプリで、あの有名な女性をプレビューした結果がこちら
こわ!!!
なんかごめんなさい。。。
とにかく目の位置だけでなく、輪郭、鼻、口の位置もしっかり検出できていますね。
デジタルカメラの顔認識システムにも使用されているソフトウェアなので、複数人でもかなり一瞬で人間の顔を識別することができます。
次回はさっそく登録したお客様の顔認識に挑戦したいと思います。
“未来レストラン”に参加されるには事前登録が必要です。登録はこちらから行ってください。また定員に限りがあるので登録される方は急いでくださいね!