BLOGブログ
【Tech Blog】MRゴーグル Nreal Light について - 視覚支援のDX ②
文責:久保田 達哉
- 視覚支援
前回のテーマ「【Tech Blog】音声認識とクラウドでのリアルタイム構文解析 - 視覚支援のDX ①」:https://segaxd.co.jp/blog/2937dbe077168ba8b4b65c0d8f51a47437018625.html
療育 (発達支援が必要な子どもたちが、自立できるようにするための治療・教育) の現場で絵カードを使った視覚支援が行われています。発達支援が必要な子供たちは言葉で伝えられた内容を理解するより、目でみてわかることの理解が得意なので絵カードを使ってのコミュニケーションが有効だからです。
ただし、絵カードだとカードを用意する必要があり、話しながらカードを探す手間がうまれます。これを音声認識により簡単にカードを探せるようにできないかを検証するために、いくつかある音声認識の技術を調査していきたいと思います。
前回はカードを探す部分を音声認識でリアルタイムに実行出来るかを調べました。
今回は子どもに見せる部分をスマートフォンなどではなく、AR/MRゴーグルを使えばより直感的に認識させることができるのではないかと考え、AR/MRゴーグルについて調査してみたいと思います。
ARとはAugmented Reality「拡張現実」の略で、現実空間にデジタルデータを融合させる技術です。
MRとはMixed Reality「複合現実」の略で、現実空間と仮想空間を混合して、融合させる技術です。MRはARを発展させた技術となります。
そこで、いくつかあるMRゴーグルの中で注目度の高いNreal Lightを動かしてみます。
■Nreal Light とは
「Nreal Light」 とは、Androidのスマートフォンで作成したアプリを、Nrealグラスを通して表示できるデバイスです。
デバイスにカメラ付いており、画像トラッキング、平面検知が行えます。
ゲーム内でサウンドを鳴らせばメガネのツルの部分から音が鳴ります。操作はスマートフォン or 専用の機材を設定して使用します。
グラスの位置も取れるので、「見る」という選択もでき、カメラもついているので撮影や動画が撮れます。
尚、「Nreal Light」は、Android専用端末となっています。
■開発準備
Unity2018.2.x
NrealSDK 1.1.3
Android SDK APIレベル8.0以上
空のプロジェクトにSDKを追加後、各種設定を行います。
Edit > Project Settings > Player で .NET 4系にします。
Edit > Project Settings > Player Allow 'unsafe' setting にチェックをします。
以下のように設定し、Switch Platform で Android にします。
![](/n1-thumb-1774x1404-190.png)
※参考URL:Nreal Developer Quickstart for Android https://developer.nreal.ai/develop/unity/android-quickstart
■平面検知
Nreal グラスの機能で現実世界の水平面を検知することができます。
試しに、サンプルを動かしてUnity を表示してみます。
まずは NRKernal Session Config の設定を確認してモードを確認します。
NRKernal Session Config が設定されたオブジェクトをゲームシーンに配置して使用します。
![](/n2.png)
次に平面検知してアプリにパネルを設置します。
![](/n3-thumb-2174x998-193.png)
設置したパネルにスマフォをリモコンとしてレイを飛ばして当たり判定を検知して Unity を表示します。
![](/blog/n4-thumb-1297x710-195.png)
出現させた Unity 操作をリモコンでタップして行います。
IPointer Click Handler などを継承させたクラスに以下のメソッド定義で可能です。
![](/n5-thumb-1008x188-197.png)
■画像認識&トラッキング
もう一つの機能紹介として画像認識があります。
まず、あらかじめ認識させる画像を設定します。
その画像をグラスで見ると、それを検知し、アプリ内へ通知されます。
認識させる画像の設定は Tracking Image Database を選択すると Inspector に登録画像が表示されます。
![](/n6-thumb-2826x1320-199.png)
平面検知に触れた NRKernal Session Config ですが、画像認識が ON になっているかも合わせて確認します。
※参考URL:Nreal Developer Image Tracking https://developer.nreal.ai/develop/unity/image-tracking
画像認識一部コード
![](/n7-thumb-2126x1524-201.png)
■所感
検証当時トラッキング周りは、「垂直検知」「オクルージョン」「空間検知」といった機能はなく、まだまだ課題が多い印象でした。
暗い空間でのカメラを使用する検知系も厳しいです。
Nrealグラスに搭載されているトラッキングは必要最低限にして、アプリの映像を映すホログラフ的な要素としてのアプリアイディアは、色々考えられそうです。
■終わりに
検証当時、上記「所感」で記載したようなトラッキング周りに課題が多い印象はありますが、XRデバイスとして安価でとてもよくできており、未来の可能性を感じますので、これからのアップデートにも注目していきたいと思います。
セガ エックスディーでは一緒に働く仲間を募集しています!
少しでも興味をお持ちの方は、お気軽にお問合せください。
最後まで読んでいただきありがとうございます。
この記事の内容について詳しく聞きたい方は、以下よりお気軽にお問い合わせください。
※記載されている会社名、製品名は、各社の登録商標または商標です。
- 文責:久保田 達哉 システム開発部
- 「セガ エックスディーで、xR系のR&Dを推進している久保田です。クライアント側のプロフェッショナルとしてxRデバイスの技術調査をしております。」