JINS MEME Advent Calendar 2015の記事です。
JINS MEMEとは
箇条書きで簡単にまとめてみます。
- 2015年11月5日に発売を開始した「内なる自分を知ることができるウェアラブルメガネ」というコンセプトのメガネ
- JINS PCを販売するジェイアイエヌ社が、研究者とコラボし開発
- スマートフォンアプリとbluetoothで連携し、様々な機能を提供
- デベロッパにもSDKを解放
公式webページ:https://jins-meme.com/ja/
以下のプロダクトビデオ(2分10秒)を見ると、どんなものかイメージつきやすいと思います。
JINS MEMEのラインナップ
JINS MEMEは、現在(2015年12月1日時点、以後同)、ES、MT2つのタイプが発売されています。
こちらのページで比較表を見ることができます。
https://jins-meme.com/ja/collection/compare/
ES
画像: JINS MEME比較表ページより
1番の特徴は、3点式眼電位センサーが搭載されていること。
3点式眼電位センサーとは
眼電位は、角膜側に流れる電荷(正)と網膜側に流れる電荷(負)の電位差のこと。眼球が動くことで発生した電位を、鼻あてとブリッジの部分に搭載されているセンサーで検出し、目線の移動量や瞬きを検出します。
3軸加速度センサー, 3軸ジャイロセンサー
MTと共通なので以下で説明します。
MT
画像: JINS MEME比較表ページより
これはサングラスになっていて度は入れられないようです。ということで野外やスポーツ用途な感じですね。機能的にはESから眼電位センサーを除いただけのようです。
3軸加速度センサー, 3軸ジャイロセンサー
加速度センサーは、単位時間当たりの速度変化や、重力加速度を検出する装置で、"動き"一般を検出する場合によく使われます。3軸ということなので、xyz軸について速度変化量を検出しています。
ジャイロセンサーは、単位時間当たりの回転量を検出する装置です。なので、例えば加速度がめっちゃ小さくてもこれを使えば頭がxyz軸のどこにどのくらい傾いているか検出することができます。
参考:
http://ednjapan.com/edn/articles/1406/09/news014.html
http://www.atmarkit.co.jp/fsmart/articles/ios_sensor02/01.html
JIJS MEMEの公式アプリ
現在、3つのアプリがリリースされています。
※ 以下、こちらのサイトより転用
JINS MEME
センサーで得たデータを独自のアルゴリズムで解析し、集中・活力・落ち着きの3つの指標でマインド(心)の状態を判定します。その他、瞬きや姿勢のトラッキングができるそうです。(AppStore)
※ ESタイプでのみ利用可
JINS MEME RUN
正しいランニングフォームで走れているかを測定する「JINS MEME RUN」。加速度センサー、ジャイロセンサーを使って測定しています。(AppStore)
※ ES/MT両タイプで利用可
JINS MEME DRIVE
安全運転をサポートするアプリ。3点式眼電位センサーで眼球の動きや瞬きを計測して、眠気を検出するそうです。眠くなると目線が下がったり、瞬きが多くなったりすることを利用しているのだと思います。長距離運転をするドライバーさんの居眠り運転帽子によさそうです。(AppStpre)
※ ESタイプでのみ利用可
デベロッパサポート
ユーザサポート
これは一般のサポートページですが、FAQがかなり充実しています。ここを見ると解決することもあるかもしれません。
https://jins-meme.com/ja/support/user-support/ios/
デベロッパサイト
以下のデベロッパページに色々と情報がまとまっています。
https://developers.jins.com/ja/
SDKについては、リソースから色々と情報収集できます。SDKのダウンロードもこちらからです。
https://developers.jins.com/ja/resource/docs/startup_guide/ios/
リソースの、**"JINS MEMEとアプリの関係"**って部分にしれっと重要なことが書いてあるような...隅々までチェックしておくことをおすすめします。
また、わからないことがあればフォーラムで開発者同士質問/回答しあうことができます。
SDKについて
現在はiosのみSDKが提供されています(Androidも一瞬出ていたような...ただ2016年1月リリースの予定だそう)。
また、公式のJINS MEMEアプリではスタンダードモード使ってアプリを作っているようなのですが、SDKで提供しているのはリアルタイムモードのみになります。
cf.) https://developers.jins.com/ja/forums/sdk/topic/8519/
リアルタイムモードで取得可能なデータ一覧
気になる、取得可能データはこちらになります。
名前 | 説明 |
---|---|
eyeMoveUp | 視線が上に動いたかどうかを示す整数値 0:なし 1:移動検知ー小 2:移動検知ー中 3:逆移動検知ー大 4:逆移動検知ー特大 |
eyeMoveDown | 視線が下に動いたかどうかを示す整数値 0:なし 1:移動検知ー小 2:移動検知ー中 3:逆移動検知ー大 4:逆移動検知ー特大 |
eyeMoveLeft | 視線が左に動いたかどうかを示す整数値 0:なし 1:移動検知ー小 2:移動検知ー中 3:逆移動検知ー大 4:逆移動検知ー特大 |
eyeMoveRight | 視線が右に動いたかどうかを示す整数値 0:なし 1:移動検知ー小 2:移動検知ー中 3:逆移動検知ー大 4:逆移動検知ー特大 |
blinkSpeed | まばたきのスピード(Millisecond) |
blinkStrength | まばたきの強さ (一般的に、50~200の間におさまります。) |
walking | かかとを地面についたかどうか。それを検出するとtrueになる |
roll | 姿勢を表す角度のうちのロール要素を示す度 |
pitch | 姿勢を表す角度のうちのピッチ要素を示す度 |
yaw | 姿勢を表す角度のうちのヨー要素を示す度 |
accX | 加速度のX軸の値。-128 ~ 127 の1byteの整数値 |
accY | 加速度のY軸の値。-128 ~ 127 の1byteの整数値 |
accZ | 加速度のZ軸の値。-128 ~ 127 の1byteの整数値 |
fitError | JINS MEMEがきちんと装着されているかどうかを示す整数値。 0:エラーなし 1:左鼻パッドエラー 2:右鼻パッドエラー 3:ブリッジエラー |
powerLeft | 電池残量を表す整数値 0:充電中 1:低電圧 2:Lv2 3:Lv3 4:Lv4 5:満充電 |
それほど多くはない印象です。これを駆使すれば、公式アプリのような凄いやつが作れるのか否か!それはこれからのお楽しみということで。
以下、気になった単語の補足です。
roll, pitch, yaw
いわゆるオイラー角のx,y,z軸の動きに相当していて、頭を中心にして、どこに何度傾いたかを検知できるようです。
画像:The quadcopter : control the orientationより引用
roll: x軸
pitch: y軸
yaw: z軸
また、オイラー角に関しては、こちらのサイトが参考になりそうです。
http://naochang.me/?p=53
この辺は実際に3Dモデル作って検証してみたいですね!
逆移動検知
とはなんぞや...と思ったら、フォーラムに回答がありました。
視線移動は、眼電位の変化分を見ておりまして、眼球運動の速度に比例した値から計測しております。
(速度が大きい、小さいというものを判定しております)
逆移動検知は、例えば、「まず右を見てから、その後そのまま左を見る」などの眼球運動のケースを想定した検知です。
とのこと。専門用語ではサッケード?というらしいですね。
サッケードについて参考になりそうなサイト:
http://www.megane-isshindo.jp/EyeMovement/Eyemovement.html
ということで
簡単なコピペ記事で大変恐縮ですが、とりあえずのイントロダクション的な記事でした。
2015年Advent Calendar2日目以降もこうご期待!