gest.jsはJavaScript製のオープンソース・ソフトウェア(MIT License)です。

WebカメラとWebブラウザを使ってどんなことができるでしょうか。単純に映像を取り込んで映し出しても面白いのですが、さらに映像を解析できると面白いサービスが作れそうです。今回はジェスチャー操作を提供するgest.jsを紹介します。

[![](http://images.moongift.jp/2013/09/Screenshot 2013-09-14 16.00.33_thumb.1379210535.png)](http://images.moongift.jp/2013/09/Screenshot 2013-09-14 16.00.33.1379210535.png)
最初にWebカメラへのアクセスが求められます。

[![](http://images.moongift.jp/2013/09/Screenshot 2013-09-14 16.00.54_thumb.1379210539.png)](http://images.moongift.jp/2013/09/Screenshot 2013-09-14 16.00.54.1379210539.png)
認識した操作を表示します。上下左右が認識されます。

[![](http://images.moongift.jp/2013/09/Screenshot 2013-09-14 16.02.39_thumb.1379210542.png)](http://images.moongift.jp/2013/09/Screenshot 2013-09-14 16.02.39.1379210542.png)
例。左右の操作でスライドを切り替えます。

[![](http://images.moongift.jp/2013/09/Screenshot 2013-09-14 16.02.50_thumb.1379210550.png)](http://images.moongift.jp/2013/09/Screenshot 2013-09-14 16.02.50.1379210550.png)
認識率はまだ改善の余地がありそうです…。

Webカメラの前で手を振ると上下左右のいずれかで認識され、それによって指定したアクションを実行できます。プレゼンテーションの他、ページ送りに使ったりWebブラウザのhistory.backに割り当ててみるのも面白いかも知れません。Webカメラとの連携が容易になりそうなライブラリです。

MOONGIFTはこう見る

Webカメラと言えばチャットで使われるのが殆どなのですが、それではあまり面白みがありません。プログラマーとしてはもっと他の使い方を考えるべきです。良く知られているのはAR(拡張現実)ではないでしょうか。オブジェクト認識を使うとリアルとデジタルを融合した面白いサービスができあがります。

映し出されている映像をリアルタイムに分析して処理を行うというのは作り込むと大変ですが、gest.jsのようにライブラリ化されていると手軽に使えるでしょう。ジェスチャー認識に限らずWebカメラ連携型のライブラリはもっとたくさん登場して欲しいですね。

A simple gest.js demo that displays the gesture direction on screen

Using gest.js to control Nathan Searles' SlidesJS

hadimichael/gest.js