2003/03/24
石川悠
日常生活する空間のインテリアをデザインすることは一般に関心が高いが, 専門的な知識や経験が必要とされることから専門家に依頼されることが多い.生活スタイルや嗜好が多様化する現代において,専門家と顧客との間にある感性やアイデアのギャップを埋めるためにデザインプランを提示することはデザイン過程において重要である.従来のCAD(computer aided designやCG(computer graphics)のソフトウェアによる製図や見取り図を用いたプレゼンテーション方法では,実在感を持たせることは容易ではなく,特に,既存の環境を対象として,内装を変更 したり家具を新調する場合などでは,実際のスペースの使い方や,既存のアイテムと新調する物品との調和に注目されるため,CG表現における実在感が重要となる.本研究では,MR(mixed reality)を用いて,実空間においてその場で必要なアイテムを CGで表示し,対話的にレイアウトを試行したりアイテムを変更したりすることの可能なシステムを構築する.
MRによる仮想物体表現には,次の3つの整合性を保つことが視覚的に違和感を与えないために重要であるとされ,幾何学的および光学的整合性は,CG表現における実在感を作用する要因である.
幾何学的整合性は,実空間,ユーザ,仮想物体それぞ れの座標系の幾何学的な関係を正確に表現することによ り保つことができる.複数の座標系の関係を計測によっ て取得する方法は,主に画像センサによる手法と位置セ ンサによる手法の二つに分類できる.複数のセンサ間でのキャリブレーションや適切 なマーカの設置が必要であり,また設備の可搬性や計測 範囲に制約がある.また画像センサと位置センサとを併用するハイブリッド手法もあり,精度は向上するが,システムはより複雑になる傾向がある.[1]
光学的整合性は,実環境での照光状態がCGの仮想物 体の色合いの表現に反映されることで保たれる.実環境中の照光条件を計測する方法として,双曲面ミラーや魚 眼レンズを装着したカメラや,環境中に設置した鏡面球を用いて全周囲画像を取得し照光条件を計測する手法がある.これらは空間の大局的な照光条件を取得する ことを目的としており,一度計測しておけば環境が変わ らない限り実環境に調和したCGのレンダリングが容易 に可能であるが,部分的に影が落ちている場所や,壁と の相互反射といった局所的な照光条件には対応できない[2,3]
位置姿勢と照光条件を同時に計測し,光学的整合性と幾何学的整合性とを保持して仮想物体の表示してMR空間を構築する方法として決定的なものはない.Andreiら[4] は,マーカと磁気センサを併用して仮想物体表示の位置合わせを高い精度で実現し,環境に設置した鏡面球の画像から金属の質感を持ったティーポットのCG に環境マッピングを行っているが,汎用なCGレンダリングを行うための照光条件を取得するには至っていない.
| 本システムは,ユーザが装着するカメラと映像処理・CG レンダリング用PC,仮想物体を実空間に配置するためのマーカ から構成される(図0).仮想物体座標系をカメラ座標系との相対関係で表すことにより,取り扱う座標系はユーザ座標系と個々の マーカ座標系のみである.計測に使用するセンサはユーザ視点のカメラのみであり,カメラ内部パラメータだけがキャリブ レーションを要する.内部パラメータは場所によって変化しないため,使用するカメラを変更しなければ,システム構築場所 を変えてもキャリブレーションは不要である.この性質は,可搬型のPC やウェアラブルPC の導入により、さらに場所を選ばない使い方を可能にすると考えられる |
| 直方体の全側面に2次元コード(図1)を貼付し,上面中心に鏡面球を設置したものを立体マーカとして用いる(図2). ユーザ視点のカメラによって2次元コードを捉え,立体マーカのID番号と位置姿勢を取得する.鏡面球に映 り込む遠景や照明などを,仮想物体をレンダリングする 際の照光条件として計測することで.個々の立体マーカの位置での照光条件をユーザ視点から観測する.2次元 コードにはそれぞれ固有のパターンを与え,立体マーカ の前後左右を判別可能とする.1つの立体マーカの側面 に合計4枚の2次元コードを使用するため,コードの種 類は仮想物体数の4倍必要となり,姿勢の回転を考慮す るため,90度ずつ回転して一致するパターンは同一とみなす. |
![]() 図1: 2次元コード |
カメラ映像から2次元コードを検出し,透視投影のモ デルに基づいて,コードの位置と姿勢を算出し,カメラ 座標系で表現する.まず,入力画像を二値化し,連 結領域の面積と外接長方形を求める.次に,面積値に よってノイズを除去した後,連結領域の輪郭線追跡を行 い,4本の線分によって近似できる領域をコード候補と する.コードの識別は,あらかじめ登録されたパターン とのテンプレートマッチングで行う(図3). 本実装では, 2次元コードの検出および変換行列計算は公開されてい るARToolKitのライブラリを利用した.
図3: ARToolKitによる処理
| 立体マーカ周辺の照光条件を,鏡面球を用いて計測する.図4に光源と鏡面球,ユーザ視点の関係を示す. ある光源から鏡面球に入射した光(ベクトルL)が,法線ベクトルNによって反射され視点に届いたとすると,光源の強さと色は画像平面の画素(x,y)で観察される.そこで,入力画像から鏡面球画像を切り出し,視線ベクトルVから立体マーカを照らす光源を計測する. なお,鏡面球画像の切り出しは,2次元コードから得た立体マーカの位置姿勢から自動で行い,取得した鏡面球画像は複数の領域に分割した後,領域のRGB輝度値を平均した値を光源の色とする. |
|
![]() 図5: 切り出した鏡面球画像の例 ![]() 図6: 図5を領域分割し,平均化した鏡面球画像 ![]() 図7: 図6から計測した照光条件 |
|
仮想物体を構成する頂点の色は,PhongとLambertのモデルに従って決定されると仮定し,視点ベクトルと 頂点の法線ベクトル,光源の入射角をもとに鏡面反射と拡散反射との和をとる.それぞれの反射成分のうち入射 光の輝度値に対する重みとして,拡散反射は入射角と法 線ベクトルの内積を,鏡面反射は入射角と反射角の中間 ベクトルと法線ベクトルとの内積をとる(式1).ここで,n は頂点の法線ベクトル,hは入射ベクトルと視線ベクトルの中間ベクトル,l は入射ベクトルである.Is,Id はそれぞれ,光源色の鏡面および拡散反射強度であり,Ms,Md はそれぞれ,物体色での鏡面およ び拡散反射係数である.
図8 にシステムの処理の流れを示す.キャプチャしたカメラ映像の各フレームにおいて,2次元コードを探索 する.2次元コードが見つからなければ,仮想物体は視野内に存在しないものと判断し,キャプチャした画像をそのまま出力する.2次元コードが見つかった場合,その位置姿勢を計測するとともに,符号化部分を復号化 し2次元コードのID番号を得る.ID番号をもとに立体マーカの情報を検索し,立体マーカのID番号,方向, サ イズ,鏡面球の大きさ,対応する仮想物体のモデルデー タを参照する.複数のコードが視野内に存在した場合, 同じ仮想物体に対応するID番号を持つコードは情報を統合しマーカ座標系を得る.鏡面球の位置をマーカ座標系から算出し,鏡面球画像から光源分布をサンプリングする.仮想物体の全頂点において鏡面反射および拡散反射成分を求め,入力画像に重ねて出力する.
実物体と立体マーカを混在させ,レンダリングされる様子を確認しながらレイアウト作業を行うことができた(図9).
個々の立体マーカに鏡面球を持たせることにより,衝立ての影や机の下などに生じる照光条件の局所的な変化を計測可能である.
![]() |
![]() |
|
図10: 右端の椅子が局所的な照光条件の変化により暗くレンダリングされている
|
|
マーカとカメラを固定し,一日の日照変化による仮想物体のレンダリング結果がどのように変化するかを観察した.
|
入力画像
|
出力画像
|
|
図11: 早朝のシーン
|
|
|
図12: 夕方のシーン
|
|
|
図13: 離れた場所からライトに照らされたシーン
|
|
|
図14: 蛍光灯によって明るく照らされたシーン
|
|
本実験で用いたシステムでは,1辺20cm の立体マー カを約8mの距離まで,およそ数cm度程度の誤差で 距離と姿勢計測を行うことができ,オブジェクトの選択や配置を実時間で行うことが可能であった.カメラとともにユーザが動き回ることを考慮すると作業可能なMR空間の範囲は8mの限りではない.高い計算コストが要求されるのは,仮想物体の描画におけるポリゴンの頂点色の計算式(式1) である.これは配置される光源の数に大 きく依存するが,作業の過程やオブジェクトの種類によって光源サンプリング数を切り替えることで支障なく対話的な作業を行える. 問題点としては,マーカ検出自体が照明の影響を受けるため,部屋全体が暗すぎる場合や逆光によりマーカ面が暗い場合に計測誤差が大きくなったり,マーカの検出に失敗することがあった点が挙げられる.特に大きいオブ ジェクトを表示する場合,姿勢検出の誤差が表示誤差に大きく現れてしまう.この点については可視光以外の近赤外光などを使ったマーキング手法を適用するなどの 改善が考えられる.また,光源分布の取得の際に,カメ ラのダイナミックレンジの制約により,強く発光してい る光源色と,壁などの拡散反射面の色を同時にうまく取得できない場合があった.対処方法として,ダイナミッ クレンジの広いカメラの利用のほか,絞りの異なるカメ ラを複数用いる方法などが考えられる.
2次元コードと鏡面球とを組み合わせた立体マーカを単眼カメラで捉えることにより,幾何学的・光学的整合性を保持し実時間で動作するシステムを提案した. また対話的なインテリアデザインシステムを構築し,実験により提案手法の有効性を確認した.カメラのダイナミックレンジに起因する2次元コードの捕捉精度や照光強度の計測精度における難点を今後の課題とする.
[1] H.Kato and M.Billinghurst. ”Marker tracking andHMD calibration
for a video-based augmented reality conferencing system.” In Proc. IEEE International
Workshop on Augmented Reality, pages 125-133, 1999.
[2] I.Sato,Y.Sato and I.Ikeuchi”Acquiring a radience distribution to superimpose
virtual objects onto a real scene”, IEEE Tran Visualization and Computer Graphics,Vol.5,No.1,pp.1-
12,1999.
[3] 田中法博, 梶本めぐみ, 富永昌治:鏡面球を用いた光源の全方位分 布の推定, 日本色彩学会誌,vol25,No.2,pp92-101,2001
[4] Andrei State,et al.”Superior Augmented-Reality Registration by Integrating
Landmark Tracking and Magnetic Tracking.”,Proceedings of SIGGRAPH 96 pgs.
429-438.