LeapMotionで簡単な動的生体認証してみた(JavaのOpenGL(JOGL)で)

今回はJavaOpenGL(JOGL)でLeapMotion使って簡単な生体認証アプリを作ってみました。のでやってみたいと思います。環境はwindows8.1、Eclipseです。

まずEclipseにライブラリを設定します。

JavaOpenGLライブラリは以下のサイトを見て下さい。

JOGL,JOCLのEclipse環境を整える - プログラムdeタマゴ

そしてLeapMotionはこちらのサイトです。ビルドパス通してサンプルを実行してくれてます。

LeapMotionのサンプルプログラムで遊んだ - あんまり見ないでください

あと僕の作ったプログラムはJAMAを使うのでこちらも一応。

Java行列ライブラリ(JAMA)を使ってみた | Always Look at the Bright Side of Life

Javaプロジェクトを新規作成して、LeapGLというクラスを作ってください。そして上記のライブラリのビルドパスを通すとこんな感じです。(C:にjavapathファイルを作ってそこにまとめてます)

f:id:castlejou:20160119013340j:plain

こちらが作ってみたコードです。適当にコピペしてください。

github.com

LeapGLを実行してLeapMotionに手をかざすとこんな感じで動くと思います。

f:id:castlejou:20160119011016j:plain

LeapMotionから以下の関節の座標をマイフレーム取得してプロットしています。このデータを色々処理すると遊びがいがありそうですね。

f:id:castlejou:20160119013053p:plain

てことで生体認証()なシステムを作ってみました。それがLeapKeyてプログラムです。汚いコードなのであまり見ないでください。実行の様子と状態遷移図です。

f:id:castlejou:20160119013008j:plain

f:id:castlejou:20160119013137j:plain

 実行してる様子を動画にしてみました。

youtu.be

 

ちなみにLeapMotionのUSBケーブルってUSB3.0 micro Bて種類で、これはAndroidの充電ケーブルの規格USB2.0 micro Bでも認識するのです。持ち運ぶとき純正のケーブルいらなくて済むかもですね。動作は保証しませんけどw

f:id:castlejou:20160119020058j:plain

 すみませんこの記事作るのしんどくて説明不足だと思いますが、もし詳しく使い方を見たければGithubにhowtouse.pdf上げてるので読んでみてください。