WebGL × 深層学習ライブラリ「jeeliz」でバーチャルYouTuberやAnimojiを再現

このエントリーをはてなブックマークに追加

すでに3,000人を突破し、大きな盛り上がりをみせている「バーチャルYouTuber」や、iPhone X話題の機能「Animoji(アニ文字)」はご存知ですよね。

自分の動きに合わせてキャラクターを動かせるバーチャルYouTuber、人の表情と連動する「Animoji(アニ文字)」は、深度センサーを搭載したデバイスや3次元モーショントラッキング、表情認識などによって実現されているんですが……。

これらの機能を組み込んだWebアプリケーションが簡単に作れたら、ちょっとワクワクしませんか?

そのハードル、WebGLとディープラーニングが越えようとしています。

jeeliz」というJavaScriptライブラリを使えば、ブラウザだけで動くウェブアプリケーションとして実装できるかもしれないんです。

デモがあるので、さっそく紹介させてください。

深度センサー不要。ブラウザだけで顔検出、11種類の表情認識を実現

まずは、マトリックスの中に入り込んでみました。

これはSnapChatのような、顔検出に基づいたAR(拡張現実)アプリケーションのデモです。

もちろん専用のデバイスは使っておらず、ブラウザだけで動いています。jeelizライブラリを使えば、リアルタイムに顔を検出し、ARと3Dコンテンツを組み合わせたアプリケーションが作れるんですね。

「ただこれだけだと、バーチャルYouTuberやAnimojiを再現するって無理じゃない?」なんて思っている方いませんか?

はい、こちらのデモも動かしてみてください。

iPhone Xが深度・方向のデータを取得可能な3Dカメラ「TrueDepth」を搭載することで実現しているAnimoji(アニ文字)にそっくりな機能も、ブラウザだけで再現しているんです。

もちろん、方向や表情も認識して動いてますよ。すごい。

そうです、「jeeliz」ライブラリを使えばブラウザだけで動くバーチャルYouTuberも作れちゃうってことです。

Webアプリケーションのスタンダードは「WebGL × ディープラーニング」で変貌する

紹介したデモアプリケーションの裏で動いているのは、WebGLとディープラーニング、3Dコンテンツを作成するためのJavaScriptライブラリThree.js。

WebGLとは

WebGLとは、ウェブブラウザで3次元コンピュータグラフィックスを表示させるための標準仕様のAPIです。WebGLを使い、ウェブブラウザからローカルマシンのGPUにアクセスすることでディープラーニングに必要な演算処理が可能になります。

これらを組み合わせることで

  • 顔検出
  • 顔の追跡
  • 顔回転検出
  • 口開き検出
  • 複数の顔の検出および追跡
  • 11種類の表情認識
  • 3Dコンテンツ

以上の機能を持ったアプリケーションがwebカメラとブラウザだけで動かせます。

これらの技術で作れるアプリケーションは上で挙げただけではありません。こちらのデモをみてください。

皆さんおなじみの、「パックマン」ゲーム。このゲーム、顔の動きでパックマンを操作できるんですね。

顔認識による操作は正直その精度が少し気になりますが、近い将来はこのような体の動きを認識して操作するアプリケーションがスタンダードになるのではないでしょうか。

メイン機能ではなくても、ブラウザで顔認識・表情認識などが可能になれば、

  • ユーザーの表情からレコメンドする商品を選定
  • 顔、表情認識によるシステム制御
  • 顔、表情認識による動画コンテンツなどのスコアリング

などを機能を組み込んだウェブアプリケーションを作ることができます。

WebGLとディープラーニングを使った完成度の高いアプリケーションを開発可能なライブラリ「jeeliz」に今後も注目していきたいです。