Legendary scribbles about JavaScript, HTML5, AJAX, PHP, CSS, and ∞.

デジタルカメラでは顔認識処理があたり前の時代だ。最近の画像処理アプリケーションは当然のように顔認識を実施する。いくらか学習させれば、誰が写った画像かを管理ソフトが自動的に判断して分類してくれるという機能を持っている。一度使い出すと抜け出せない便利さだ。スマートフォンでは音声認識機能による操作が普及するなど、音声認識や画像認識処理が日常生活で多用されている。

こうした処理をJavaScriptで実現する簡単なデモが「Face Detection with jQuery」で紹介されている。Jay Salvat氏が公開しているjQueryプラグイン「jquery.facedetection」を使う方法だ。使い方は簡単で、基本的にjQuery("#targetimage").faceDetection()によって顔部分の座標データを得る。

Firefox 8でデモ表示

Chrome 15でデモ表示

Opera 11.52でデモ表示

IE9でデモ表示 - 動作せず

Safari 5.1.1 on Mac OS X Lionでデモ表示 - 動作せず

Safari on iOS 5でデモ表示 - 動作せず

比較的パワーのあるPCを使って最近のブラウザで表示させても、顔認識が完了するまでいくらか時間がかかる。ブラウザによってはそもそも処理してくれないし、Firefoxからは処理が長すぎるという警告もでる。iPhoneといったスマートフォンのSafariからも顔認識処理は完了しなかった。

リソースの消費量から見ても、認識率から見ても、実用的とは言い難いライブラリだが、素の状態のJavaScriptでここまで顔認識処理ができるという点は興味深い。高速化技術はいくつも登場しており、認識処理エンジンをより高速な状態で実行できるようにすれば、実用レベルに近づく可能性はある。