4.4 実装
4.4.5 WithYou 移動者側システム
移動者側ハードウェア
移動者側のハードウェアは二つの地磁気センサー,パン・チルトカメラ,情報表示用モノ クロLCD,ワイヤレスコントローラ(Wii Remote)とノートパソコンが備えられた.移動 者は肩掛けフレーム(図4.12)を装着しながら外出する.移動者の向き方向を取得するため に,頭に地磁気センサーを搭載し,また,移動者側のノートパソコンは無線通信機能を持ち,
移動しながら観察者側と通信する.
移動者側の肩掛けフレームは木材で製作され,移動者の胸の前にカメラを設置するように なった.これにより,カメラの揺れが少なく,より安定した映像が得られるようになった.
また,移動者の胸の前にカメラを設置すると,カメラの向きが移動者の頭部の向きに影響さ れないことも利点である.
移動者側アプリケーション
移動者側アプリケーションでは移動者側のパン・チルトカメラ,モノクロLCDとセン サーを制御し,そして観察者側アプリケーションと通信する役割を担う.パン・チルトカメ ラの映像は圧縮され観察者側に送信する.外出中で移動者に情報を知らせるため,モノクロ LCDと音声提示で情報の提示を行う.また,システムの操作とジェスチャインタラクショ
図 4.12: WithYouシステム:移動者側の装置
機能種類 機能内容
センサー計測 頭の向き方向の計測 体の向き方向の計測 コントローラの向きの計測 装置制御 USBカメラの制御
パン・チルト台の制御 提示機能 モノクロLCDの表示
音声提示 振動提示
操作システム コントローラによる操作 視野モードの変更
ジェスチャインタラクション 知らせメッセージの送信
表 4.8: WithYouシステム:移動者側アプリケーションの機能
ン機能はワイヤレスコントローラを使う.移動者側アプリケーションの機能は表 4.8の通り になる.
パン・チルトカメラの制御
移動者側のパン・チルトカメラでは,市販のUSBカメラ(Logicool C910)をカメラのパ ン・チルト台の上に固定する(図 4.13).カメラのパン・チルト台ではArdunio Mega基板 により制御され,パソコンからUSBのシリアル通信を介してコマンドを送ることでパン・
チルト台の横軸回転と縦軸回転を制御する.
パン・チルト台の制御
WithYouシステムに使われたパン・チルトカメラは,市販のUSBカメラとパン・チルト
台で構成される.パン・チルト台の設計に関しては,より高い回転性能を得る為,二つの高 速サーボモータを用いてパン・チルト軸の回転構造を製作した.サーボモータの回転速度は 0.17秒/60度であり(GWSサーボ MICRO/2BBMG),人間の頭の振り向きを 追従するには十分な性能が備われる.サーボモータの制御はArduino Mega基板を通して行 われ,回転範囲として,パンは移動者の前方180度を回転することができ,チルトは上下方 向の130度を回転することができる.なお,サーボーモータに対する十分な電流を供給する ため,外付けの電池ボックス(充電式単三電池4個使用,出力電圧=4.8V)によりパン・チ ルト台への給電を行う.
WithYouシステムで使われたlogicool C910カメラをパン・チルト台に装着した場合,観
察者が見える最大水平可視範囲はカメラの水平視角(およそ70度)とパン・チルト台の水 平回転範囲の合計で70+180=250度であり,最大垂直可視範囲はカメラの垂直視角(およ そ45度)とパン・チルト台の垂直回転範囲の合計で45+130=175度である.
パソコンからパン・チルト台への制御に関してはUSBに介したシリアル通信が使われた.パ ソコン側から2バイトのコマンドでパン・チルト角度を指定し(Byte0データ: 0から180, Byte0データ: 0から130),Arduino Mega側がデータを受け取るとアナログアウトの出力 電圧を改変し,二つのサーボモータを指定の角度まで回転させる.
図4.13: 移動者側のパン・チルト台
パン・チルト台のブレ防止対策
WithYouシステムでは観察者側のHMDの上に設置した方向計測モジュールから観察者
の頭の向きを計測し,その角度データを移動者側に送信しパン・チルト台の回転と連動す る.しかし,方向計測モジュールが出力された角度は整数であり,観察者が動かなくても場 合によって出力の角度は頻繁に変動していることがあった(例えば出力角度は0度から1度 の間で変動している現象).サーボモータが微小な角度角度範囲で頻繁に回転するとパン・
チルト台乗せたカメラに悪影響を与え,カメラからキャプチャされた画像も不安定になりや すい.こうした現象を軽減させるため,パン・チルト台の回転制御処理では,新たに指定さ れた角度と現在角度との差が3度以内であれば回転しないという仕組みが設計された.こう
することでパン・チルト台は微小な回転に反応せず,方向計測モジュールのセンサーの誤差 によるブレを対策できた.
USBカメラの制御と映像のキャプチャ
USBカメラの制御に関しては,Microsoft DirectShowライブラリを用いて行う.カメラの 画像を取得するには原始データであるYUVフォーマット画像データを取得した後,Bitmap フォーマットに変換して出力し,前述した画像受送信モジュールを用いて観察者側に送信す る.また,ズームイン,ズームアウト(デジタルズーム)の制御も同ライブラリを用いて 行う.
モノクロLCDによる情報表示
移動者の肩掛け装置にはモノクロLCD(図 4.6)が設置された,LCDの画面では移動者は お互いの向き方向,視野モード,システムメッセージと接続状態等を表示する.モノクロ LCDは128x64ピクセルの表示領域を持ち,8bitパラレル通信を用いてArduino Mega基板 に制御される.Arduino Mega側ではコマンドとテキストメッセージを受信するシステムを 実装し,移動者側アプリケーションから伝わった情報を表示する.