4.4 実装
4.4.6 WithYou 観察者側システム
することでパン・チルト台は微小な回転に反応せず,方向計測モジュールのセンサーの誤差 によるブレを対策できた.
USBカメラの制御と映像のキャプチャ
USBカメラの制御に関しては,Microsoft DirectShowライブラリを用いて行う.カメラの 画像を取得するには原始データであるYUVフォーマット画像データを取得した後,Bitmap フォーマットに変換して出力し,前述した画像受送信モジュールを用いて観察者側に送信す る.また,ズームイン,ズームアウト(デジタルズーム)の制御も同ライブラリを用いて 行う.
モノクロLCDによる情報表示
移動者の肩掛け装置にはモノクロLCD(図 4.6)が設置された,LCDの画面では移動者は お互いの向き方向,視野モード,システムメッセージと接続状態等を表示する.モノクロ LCDは128x64ピクセルの表示領域を持ち,8bitパラレル通信を用いてArduino Mega基板 に制御される.Arduino Mega側ではコマンドとテキストメッセージを受信するシステムを 実装し,移動者側アプリケーションから伝わった情報を表示する.
図 4.14: WithYouシステム:観察者側の装置
機能種類 機能内容
センサー計測 頭の向き方向の計測 頭の傾き角度向の計測 コントローラの向きの計測 画面表示 移動者側カメラ映像表示
GUI画面表示 提示機能 音声提示
振動提示
操作システム コントローラによる操作 視野モードの変更 映像ズームイン・アウト ジェスチャインタラクション
表 4.9: WithYouシステム:移動者側アプリケーションの機能
視野モードの実装 相対視野モードの実装
相対視野モードの実装に関しては,観察者側のHMDの上に設置された地磁気センサーと 加速度センサーから観察者の頭の相対向き角度と傾き角度と取得し(4.4.4節に参照),一 秒30回の頻度で移動者システム側に送信する.また,相対視野モードに入る(戻る)際に は,観察者と移動者システムにコマンドで伝達する.
移動者システムは相対視野モードであることを照合すると,観察者システム側から伝わっ た向き角度と傾き角度をX,Y軸の回転量としてパン・チルト台制御モジュールに送信し,カ メラを角度通りに回転させる.そうすると,移動者側のカメラは観察者の頭の向きを追従す ることによって,観察者は首を回して移動者の所在環境を見渡すことができる.また,相対 視野モードはWithYouシステムのデフォルトモードであり,他の視野モードを解除すると 相対視野モードに戻る.
絶対視野モードの実装
絶対視野モードは4.1.2節で説明した通り,移動者の体の向き角度と観察者の頭の首の向 き角度を計算,校正することによって,カメラが向いている絶対角度を維持する.
移動者視野モードの実装
移動者視野モードの実装に関しては,プロセスは相対視野モードと類似しており,相違点 として,移動者視野モードは移動者の頭の向き方向を取得し,カメラを移動者の向きに追従 させる.よって,カメラの向きと移動者の頭の向きが一致し,観察者は移動者の頭の向き方 向に当たる映像を見ることができる.また,両利用者側も移動者視野モードを使うことがで きる.
指差しモードの実装
指差しモードの実装に関しては,観察者と移動者が持っているワイヤレスコントローラ
「Wii Motion Plus」のジャイロセンサーで横向きの角度と傾きの角度を取得し(4.4.3節に 参照),その角度を移動者システム側を送信してカメラをコントローラと同じの向き角度に 回転させる.そうすると,利用者はコントローラーを持って特定方向を指すことでカメラの 向き方向を制御することができる.