Comments
Description
Transcript
光学工房
光科学及び光技術調査委員会 ■ 光 学 工 房 カ メ ラ と パ ソ コ ン で 拡 張 現 実 感 を 体 験 し て み た 近年,拡張現実感(augmented reality; AR)とい プログラムを最低限動かしてみるのに必要なもの う技術が注目され,応用されはじめています.似た は, 用語として,仮想現実感(virtual reality; VR)があ ● りますが,VR はコンピューター上に仮想空間を再現 ● するものであり,例えば三次元 CG ゲームなどに使 ● われています.VR に対して,AR は現実世界に仮想 物体や情報を重ね合わせて,現実世界を拡張しよう コンピューター USB カメラ マーカーを印刷した紙 です.プログラムを開発するには, ● C 言語開発環境(Visual C++ など) というものです. が必要となります.以下,コンピューターは Windows AR の応用例としては,現実の絵本の上を CG キャ 32 ビット環境とします.ARToolKit 自体はマルチプ ラクターが動き回って見える仮想立体絵本や,ヘッ ラットフォーム対応ですので, Mac や Linux でも動き ドマウントディスプレイなどを装着し,機器の操作 ます.MatlabやJavaやFlash対応版などもあります. 方法を支援するシステムなどがあり,特に最近セカ ま ず 初 め に,ARToolKit の ホ ー ム ペ ー ジ 3) か ら イカメラ1) が有名になりました.セカイカメラと ARToolKit-2.72.1-bin-win32.zipをダウンロードします. は,iPhone などのスマートフォンや携帯電話のカメ 1. ARToolKit のインストール ラを街中でかざすと,そのカメラに写った建物・看 ダウンロードした ARToolKit-2.72.1-bin-win32.zip 板・商品などに関する情報が携帯端末の画面上でカ を 解 凍 し,「C:¥Program Files¥ARToolKit」フ ォ ル メラ画像と重なってリアルタイムに表示されるアプ ダーを作りコピーします.コンパイル環境を設定す リケーションです.セカイカメラは,情報を表示さ るには,インクルードやライブラリーパスの設定, せるために,GPS による位置情報を用いています. OpenGL の補助ライブラリー GLUT 4) のインストー これに対して,USB カメラで撮影した正方形の ルが必要です. マーカーを認識して,リアルタイムにコンピュー 2. マーカーの印刷 ターディスプレイ上にカメラ画像と CG を合成す ARToolKit で作るアプリケーションは「マーカー る C 言語のソフトウェアライブラリーとして, をカメラで撮影すると,その上に 3D オブジェク ARToolKit 2)があります.これは,奈良先端科学技術 トを上書き表示する」という,いわゆるマーカー 大学院大学の加藤博一教授とワシントン大学 HITL 検知タイプのアプリケーションです.最近では, (Human Interface Technology Laboratory)が開発し マーカーレスタイプ 5) の研究もされています. 「C: たもので,研究用として公開されています.画像合 ¥Program Files¥ARToolKit¥patterns」の中にマーカー 成 と い う の は 昔 か ら あ り ま し た が,近 年 の コ ン のパターンが PDF ファイルで入っています.この ピューターの発達によって,リアルタイムに画像認 中の「pattHiro.pdf」を紙に印刷します(Fig. 1). 識と合成ができるようになっています.この画像認 3. サンプルプログラムを動かしてみる 識と合成の処理は,ARToolKit がやってくれます. USB カメラを PC につなぎ,ドライバーのインス 今回,ARToolKit を用いて,AR を体験してみました トール等の設定をすませておきます.サンプルプ ので,紹介します. ログラムは「C:¥Program Files¥ARToolKit¥bin」の中 464( 42 ) 光 学 光 の 広 場 Fig. 1 印刷したマーカー. に あ り ま す.他 の カ メ ラ キ ャ プ チ ャ ー プ ロ グ ラ Fig. 2 マーカー上にリアルタイム合成された三次 元物体. ム が 動 い て い な い こ と を 確 認 し,こ の 中 に あ る 「simpleTest.exe」をダブルクリックして起動します. プログラムも同梱されています.また,マーカー 起動すると,カメラのプロパティー画面(画像サ や 3D オブジェクトは,自分で好きなものを作成 イズ,フレームレート)が表示されます.そのまま することができます.3D オブジェクトは,静止オ OK を押すと,新しいウィンドウが出てきてカメラ ブジェクトでも,アニメーションするオブジェクト 画像が表示されます. でもかまいません.また,ARToolKit と OpenCV な この状態で,先ほど印刷したマーカーをカメラで どの他の画像認識,画像処理ライブラリーと連携さ 撮影してみると,コンピューターディスプレイ上に せたプログラムなども考えられます.特別な知識も は,Fig. 2 のようにマーカーの上に立方体が表示さ 必要なく,コンピューターとカメラだけで,このよ れます(実際には,カラー画像です) .マーカーを回 うに非常に簡単に AR を体験できますので,みなさ 転させたり傾けたりして動かすと,それにあわせて んも一度体験されてはいかがでしょうか. (大阪府立大学 水谷彰夫) 上に乗っている立方体もリアルタイムに動きます. このままでも表示はできますが,もっと高精度に CG を合成表示させるには,カメラキャリブレー ションが必要となります.カメラキャリブレーショ ンとは,ドットやチェックパターンのような既知の 規則的な点をカメラで複数方向から撮影し,画像上 でその点を指定してやることで,カメラレンズの焦 点距離やレンズ歪みなどのカメラパラメーターを求 文献・URL 1)http://sekaicamera.com/ 2)橋 本 直:3D キ ャ ラ ク タ ー が 現 実 世 界 に 誕 生! ARToolKit 拡張現実感プログラミング入門(アスキー・ メディアワークス,2008) . 3)http://www.hitl.washington.edu/artoolkit/download/ 4)http://www.xmission.com/~nate/glut.html 5)例えば,http://www.robots.ox.ac.uk/~gk/ め,収差補正などの校正を行う,通常の画像計測で よく用いられる手法です.キャリブレーション用の 39 巻 9 号(2010) 465( 43 )