折田, "仮想空間における複数の立体映像を用いたTV 会議システムの開発"

仮想空間における複数の立体映像を用いた TV 会議システムの開発
折田 真一( 310201110 )
名古屋大学大学院 人間情報学研究科 物質・生命情報学専攻
1 はじめに
近年,マルチメディアに関するハード ウェア及びソフト
ウェアの性能向上に伴い,VR( Virtual Reality )が比較的身
近なものになってきた.コンピュータの低価格化などにより,
従来では困難であったリアルタイム 3D レンダリング処理が
市販されているパソコンで十分まかなえるようになってき
たからである.そのような流れを受け,2003 年 3 月に ”3D
コンソーシアム”[1] が設立され,3D を扱った多くのアプリ
ケーションが登場した.NTT-X 社の ”3DFieldExplorer”[2],
3DNA 社の ”3DNA デスクトップ ”[3] などが記憶に新しい.
さらに,裸眼立体視液晶ディスプレイを搭載したノート PC
[4, 5] も一般に市販され,一般人に対する VR への敷居は
徐々に低くなってきている.
このように,今後,マルチメディアインタフェースが 3D
へ移行するに伴い,従来とは異なった三次元画像を活用し
たコミュニケーションツールの必要性が高まることが予想
される.なぜなら,3D インタフェースは 2D インタフェー
スに比べ,臨場感,情報伝達能力,そして表現力において
優れており,またエンターテインメント,医療,そして教
育といった多方面での応用が考えられるからである.
図 1 仮想空間における立体映像の原理
そのような VR を利用したコミュニケーションツールの
ひとつとして,仮想空間における複数の立体映像を用いた
ミティブ )を作成する.それとは別に,実空間の対象物を
TV 会議システムが考えられる.これは,仮想空間における
複数の仮想立体 TV を通して,遠隔地にいる相手とコミュ
ニケーションを行なうシステムであり,ユーザーは仮想空
して,仮想空間内から切り出された左眼用と右眼用の画像
間内で仮想立体 TV を覗くことで,まるでその場にいるか
をそれぞれ貼り付け,この視差画像を立体視する.すると,
2 台のカメラで撮影し,各カメラから画像を取り込む.そ
に描かれたオブジェクト上に,カメラから取り込んだ画像
のように相手と会話することができる.
観察者は仮想空間に対して立体感を知覚でき,さらにオブ
そこで本研究では,仮想空間における複数の立体映像を
ジェクトに投影された実空間の映像に対しても立体感を知
用いた TV 会議システムの開発を行なった.また,従来の
覚できる.
VR システムは,高価なデバイスやソフトウェアを必要と
しかし ,これを実現するには,3D レンダリング方法に
し,実現性や可搬性が低かったため,比較的汎用性の高い
大きく依存する.最も重要な要素は,仮想空間内の視点に
システムの構築を目指した.
対して描画するオブジェクトを指定できるかど うかである.
2
なぜなら,仮想空間内で立体映像を見るには,左眼画像,
仮想空間における立体映像の原理
右眼画像のそれぞれにしか描画されないオブジェクトが必
本システムで使用した仮想空間における立体映像を実現
要だからである.
する原理について説明する.
Java3D では,オブジェクト(プリミティブ )に対して 2
図 1 は,仮想空間における立体映像の原理を示した図
つの属性を指定でき,各視点に対してどちらの属性のオブ
である.まず,PC 上において仮想空間を構築し ,視差を
ジェクトを可視化するかを決定できる.この機能を利用す
持った視点及び立体映像を表示させるオブジェクト(プリ
ることで,仮想空間における立体映像を実現できる.
1
図 2 システム構成
開発したシステム
3
図3
画像・音声サーバーアプリケーションの構成
3.1 システム構成
本研究で開発した仮想空間における複数の立体映像を用
いた TV 会議システムの構成を図 2 に示す.本システム
は,画像・音声サーバーアプリケーション,TV 会議クライ
アントアプリケーションから構成されている.なお,入力
インタフェースにはマウス,マイク,キーボード,そして
USB カメラといった標準的なデバイスを,出力デバイス
には立体視ディスプレイ(又はその代替となるデバイス),
スピーカー(ヘッド フォンなど )を使用する.
3.2
Java による USB カメラ画像の獲得
本研究では,汎用性の高いシステムを構築するにあたり,
Java による USB カメラの画像の獲得を試みた.本システ
ムでは,javax.usb [6] 及び JMF [7] を用いて USB カメラの
画像を獲得している.これらについて,以下で説明する.
図 4 TV 会議クライアントアプリケーションの構成
javax.usb を 利用し たド ラ イバの 開発 本研究では ,
javax.usb を用いて USB カメラド ライバ ”usbcamera パッ
ケージ ” を作成した.usbcamera パッケージは,Pure Java
( Java のみで記述されている)の USB カメラド ライバで
あるため,ド ライバレベルからアプリケーションレベルま
で,完全に Java ベースで記述できるようになり,非常に
コルにより送信するサーバーアプリケーションである.
画像生成 サーバーに接続された USB カメラからの画
像情報は javax.usb,もしくは JMF によって構成された画
像生成モジュールに送られる.そこで,JPEG ストリーム
汎用的なシステムを構築することができる.
が生成され,サーバーへ渡される.この時点から,USB カ
JMF の利用 JMF は メデ ィアコンテンツの取り込み,
メラの画像は HTTP プロトコルによりダウンロード 可能と
再生,ストリーミング,そしてコード 変換などを取り扱う
なり,次の画像が生成されるまで公開を続ける.
ための API であり,J2SE のオプションとして提供されて
音声生成 サーバーに接続されたマイクからの音声情報
いる.本システムでは,JMF によって USB カメラの画像
は,Java Sound API によって構成された音声解析モジュー
を獲得することも可能である.
ルに常に送られる.このモジュールはマイクから入力され
3.3
画像・音声サーバーアプリケーション
る音声情報を常に監視し,音声の有無を解析する.音声が
本研究で開発した 画像・音声サーバーアプリケーション
検出されると,その音声の開始から終了までの区間を音声
の構成を図 3 を示す.本サーバーアプリケーションは,コ
ストリームとして生成し,サーバーへ渡す.その後,HTTP
ンピュータに接続された USB カメラの画像及び接続され
プロトコルによりダウンロード 可能となり,その音声期間
たマイクの音声をストリームとして生成し,HTTP プロト
だけ公開を続ける.
2
3.4
TV 会議クライアント アプリケーション
本研究で開発した TV 会議クライアントアプリケーショ
ンの構成を図 4 に示す.
本クライアントアプリケーションは,クライアント PC
上で仮想空間を構築し,サーバーから逐次ダウンロード さ
れた画像及び音声ファイルをもとに,仮想空間において立
体映像及び立体音響を提供するアプリケーションである.
なお,本クライアントは立体視可能な映像を提供する機
能を持ち,立体映像を体験するには立体視用のディスプレ
イやメガネを,立体音響を体験するにはステレオスピー
カーを必要とする.本クライアントアプリケーションでは,
下記の 3 つの立体視用デバイスに対応している.
図5
• 偏光プロジェクタ
• プリズムメガネ
• Parallax Illumination 方式の 3D 液晶デ ィスプレ イ
操作パネルのスナップショット
であった.また,写真を仮想空間内のオブジェクトに貼り
付け,リアリティを向上させたり,TV のように演出する
また,操作パネルを図 5 に示す.操作パネルでは,クラ
試みも数多く存在したが,仮想空間において実空間までも
イアントアプリケーションの設定を行なう.設定は,User
立体的に知覚しようとする試みは,調査した限りでは全く
Data(接続するサーバーの情報),GUI Type( GUI のタイ
プ ),Screen Type(スクリーンのタイプ ),Separate & Ratio
Type( 映像とアスペクト比のタイプ ),Physical Parameter
( スクリーンとスピーカーの設定等)が行なえる.
なかった.さらに,VR システムには視覚的に演出するも
のが多く,聴覚的な演出,つまり立体音響を提供するシス
テムは少なかった.本研究で作成したシステムは,従来の
システムにはない仮想空間における複数の立体映像及び立
体音響を提供する.
3.5 システムの特徴
本システムの特徴を以下に記す.
実験
4
Pure Java アプリケーション 本システムでは,Java か
ら USB カメラの画像を獲得するために,本研究で作成し
た USB カメラド ライバ ”usbcamera パッケージ ” 及び JMF
を用いた.また,本システムの他のモジュールにおいても
完全に Java によって作成されているため,極めて汎用性
が高く,また統一的なインタフェースを提供可能である.
本研究で開発した,仮想空間における複数の立体映像を
用いた TV 会議システムを用いて,実際に TV 会議を行
なった.
4.1
実験方法
実験方法及び実験環境を以下に記す.
容易なシステムの導入 本システムでは,立体視用デ
実験はローカルエリアネットワーク内で行ない,クライ
バイスを除き,標準的なデバイスを使用する.また,数種
アント PC 1 台及びサーバー PC 4 台の計 5 台の PC を使用
類の立体視用デバイスに対応しており,システム導入時に
した.クライアントアプリケーションを実行するには,比
ユーザー側において適当な立体視用デバイスを選択するこ
較的高い性能が要求されると思われたため,使用する PC
とが可能である.さらに,マルチプラットフォームを実現
の中で最も性能が高い PC を選択した.
しており,実際に Windows,Linux,Macintosh( クライア
4.2
ントのみ)システムでの動作を確認した.
実験結果
標準的なプロト コルを使用 本システムでは,サーバ−/
本実験において,TV 会議システムにより生成された映
クライアント間の通信プロトコルに,HTTP プロトコルを
像のスナップショットを図 6 に示す.(a) GridLayout は仮
使用している.これは,WWW でのファイル転送に使用さ
想 TV を格子状に配置した時,(b) H-RingLayout は水平リ
れているプロトコルであり,きわめて標準的なプロトコル
ング状に配置した時,(c) V-RingLayout は垂直リング状に
である.また,画像フォーマット( JPEG )及び音声フォー
配置した時のスナップショットである.各図に表示されて
マット( AU,WAVE,AIFF )においても,標準的なものを
いる立方体のオブジェクトが立体映像を写し出す仮想 TV
採用しており,すでに利用されている画像,音声サーバー
であり,それらの上にある立体文字がサーバー名を表して
による代用も可能である.
いる.画面左上には,マウスで選択された TV の情報が空
仮想空間における立体映像及び立体音響 従来の VR シ
間内に表示され,サーバー名,左眼画像 URL,右眼画像
ステムでは,視覚対象は全て仮想的なオブジェクトばかり
URL,画像状態,音声状態を確認できる.画面右下には,
3
(a) GridLayout
(b) H-RingLayout
(c) V-RingLayout
図 6 TV 会議システムによって生成された映像のスナップショット
(a) 偏光プロジェクタ
(b) プリズムメガネ
(c) Parallax Illumination 方式
の 3D 液晶ディスプレ イ
図 7 立体視用デバイスによる実験の様子
操作用コマンド が空間内に表示され,TV の格子状配置,
JMF を用いた.さらに,標準的な入力デバイス,数種類の
立体視用デバイスに対応させ,本システムの導入を比較的
容易にできるようにした.
最後に,本システムを用いて実際に TV 会議を行なった
結果,仮想空間において複数の立体映像及び立体音響を確
認することができた.従って,本システムで使用した手法
を用いることで,仮想空間において複数の立体映像及び立
体音響を実現できることが分かった.
水平リング状配置,垂直リング状配置,TV 情報の表示切
替,視点の初期化をマウスによって指定できる.
また,立体視用デバイスによる実験時の様子を図 7 に
示す.左から偏光プロジェクタ,プリズムメガネ,Parallax
Illumination 方式の 3D 液晶デ ィスプレ イを使用した時の
様子を示しており,どのデバイスを使用しても仮想空間に
おいて複数の立体映像及び立体音響を確認できた.
参考文献
5 まとめ
[1] 3D コンソーシアム
http://www.3dc.gr.jp/
本研究では,仮想空間における複数の立体映像を用いた
TV 会議システムの開発を行なった.
[2] 3D ウェブ検索 (NTT-X)
本システムは,画像・音声サーバーアプリケーション及
http://goo.ntt-infolead.net/
び TV 会議クライアントアプリケーションから構成される.
[3] 3DNA デスクトップ (3DNA)
サーバーアプリケーションは,サーバーに接続された 2 つ
http://www.3dna.ne.jp/
の USB カメラからの画像及びマイクからの音声をストリー
[4] 3D 液晶搭載ノートパソコン (SHARP)
http://www.sharp.co.jp/products/pcrd3d/
ムとして生成し,HTTP プロトコルで公開するサーバーで
ある.一方,クライアントアプリケーションは,サーバー
[5] 3D 液晶搭載ノートパソコン (NEC)
http://121ware.com/lavie/s/
からダウンロード された画像及び音声ファイルをもとに仮
想空間において立体映像及び立体音響を提供するシステム
[6] javax.usb
である.
http://sourceforge.net/projects/javax-usb/
なお,システムのコーディングには,高い汎用性を持た
[7] Java Media Framework API
せるために Java のみを使用した.また,USB カメラの画
http://java.sun.com/products/java-media/jmf/
像の獲得には,javax.usb を用いて作成したド ライバ及び
4