土曜日も作業@138日目
さて,改めて僕が今何をやっているのか,ということについて簡単に説明すると,reactableのようなインタラクティブテーブルを作ろうとしています.
reactableについては,本家のサイトを見るとよくわかります.
テーブルの上にモノを置くと,それがコンピュータを操作するというPhysical Computing(フィジカルコンピューティング)の一種です.この根幹部分はreactivisionという無料の画像認識ソフトウェアが使われています.
実際の映像はこのサイトを見るとわかりやすいでしょう.
http://vimeo.com/channels/reactivision
このreactableの流れをまとめるとこのようになります.
- カメラがマーカーを認識
- reactivisionがマーカーの位置,角度を認識して信号を出す
- 他のソフトウェアがその信号を受信し,映像を作成する
- 映像をプロジェクタでマーカーの上に映し出す
という4つのステップを経ていますが,年度末に僕がプロトタイプとしてやったのは,1から3のレベルであり,4の「プロジェクタで映し出す」というところはやっていません.
実際のプロトタイプの写真を使って説明してみましょう.
どこにでもあるような段ボールの中にiSightカメラを入れてあります.なぜiSightなのかというと,画角が広いことと画像がシャープであるという理由からです.他のカメラでも色々と試してみましたが,ビデオカメラだと画角が足りないものが多く,またwebカメラだとマーカー認識が出きるぐらいの鮮明さを持つものが少なかったからです.
上にアクリル板と半透明の紙を置き,マーカー認識用に横からライトで照らしています.
カメラからの信号をProcessingで受信し,このようなグラフを作りプロジェクタで上から映像を投射してみた写真です.
一見すると,もう完成しているように見えますが,実際のところこの写真は「奇跡」のタイミングで撮れたようなものです.
前述したように,カメラは箱の中にありマーカーの画像を認識する必要があります.横からライトで照明をしていますが,あまりこの照明が明るすぎるとプロジェクタの映像が見えにくくなります.といって,ライトが暗いとマーカーの認識が出来ません.
さらに,プロジェクタの映像がマーカーと干渉してしまい,うまく認識ができなくなります.このバランスを見つけるのが至難の業でした.
ですので,最終的な展示作品のためには,より安定したマーカー認識が可能であり,なおかつプロジェクタの映像も鮮明に見せなければいけないという難しい問題を同時に解決する必要があります.
あちらを立てるとこちらが立たず……となってしまうのを避けるには,他の先行作品と同様に赤外線を使うしかなさそうだというのが今日の結論でした.