読者です 読者をやめる 読者になる 読者になる

凹みTips

C++、JavaScript、Unity、ガジェット等の Tips について雑多に書いています。

透過ごっちゃ煮技術交流会で Leap Motion を使ったインタラクティブな透過スクリーンネタについて発表してきた

Leap Motion

はじめに

透過ごっちゃ煮技術交流会に参加してきました。

Kinect などのセンサーアプリケーションで著名な中村薫さんやポリッドスクリーンのあおめさんを始めとするスゴい方々がたくさん集まっている会で、湯村さん(@yumu19 )がまとめて下さったTogetter をご覧いただくとお分かり頂けるように、展示や発表を見ながら透明ディスプレイ、透過スクリーンなどを題材に、色々な方とディスカッション出来る楽しい会でした。主催の光輝さん(@koukiwf)、運営の方々、ありがとうございました!

発表内容

折角参加するなら何か発表したなぁ...、呟いていたら気づいたら発表する流れになってたのでネタを捻り出してみました。スライドは以下になります(発表時のものから幾つかページを省略しています)。

スライド中の動画は以下になります。

斜めに立てた透明スクリーンにプロジェクタで映像を投影、スクリーンの下に Leap Motion を置いて手形状やタッチを検出しています。プロジェクタ、Leap Motion、スクリーンを1直線に並べる方式にすると一部映像が投影できない場所ができてしまうのと、スクリーンを垂直に置く方式だと手形状の認識精度が低いため、斜めにスクリーンを置く形にしています。

頂いたフィードバック

光輝さんより、アクリルは反射率が高いので透過光の減衰が大きく、プロジェクタ投影による透過スクリーン利用時には使わないほうが良い、というご意見を頂きました。確かに実験している時にも反射して床への映り込み具合が大きかったので納得です。1つ目のプロトタイプのような形状に修正しようと思います。

透明ディスプレイでの実現について

最初やろうとした透過スクリーンでなく透明ディスプレイについてです。分解については以下のアーケードPさんの動画を思い出してやってみました。

動画中でもお分かり頂けるようにちょっと暗いです。試してみたのですがこれを通して Leap Motion の認識は無理でした。会場に展示されていたデジタルブレイン様の透明ディスプレイなら透過度が高く可能かもしれません(試させて頂こうと思ったのを忘れてしまいました...)。

そこで、液晶ディスプレイの仕組みを踏まえて、そもそも可能なのかを考察してみました。

結論から言うと、表示したい色に応じて赤外線の透過率が変化してしまう(例えば黒表示の時は赤外線を通さない等)ため、手形状を Leap Motion が認識できなくなるため巧く動かないものと考えられます。液晶ディスプレイの仕組みは、バックライトから入ってきた光を偏光フィルタで整列、電圧によって偏光の向きを変えることの出来る液晶層を通過、RGB フィルタを通過させた後に、入射時のフィルタに対して 90 度回転させた偏光フィルタを通過させる形になっています。

例えば緑色を出そうとした時には、画素中の青/赤に対応する光は遮断されている = 赤外線もそこを通過しない、という形になってしまいます。つまり、赤外波長域を観測する Leap Motion からも液晶ディスプレイの画が可視になってしまうものと考えられ、認識は難しいという結論に至りました。

透明ディスプレイとのインタラクション方法

線がブチッといった気がしてぶっ壊れたと思ってた分解した液晶ディスプレイですが、家に帰っていじってみるとどうやら壊れていなかったようなので他にも試してみました。

Microsoft Research の以下の動画を見たことのある方は多いかもしれません。

これっぽいことなら作りこめば出来るんじゃないか、と思って雰囲気だけやってみました。

後はヘッドトラッキングだけつければ似たような体験になる気がします。他にも向こう側に AR マーカを置いたり、向こう側の映像を加工して重畳したりと色々やったりすると面白そうで、ネタは多そうです。

おわりに

ネタ出しから実験、準備、発表、交流、打ち上げと色々と刺激のある大変有意義な1週間を過ごせました!打ち上げの時にも色々と話をしていましたが、色々とネタはありそうで、機材が手に入れば他にも実験してみたいです。