最適化された世界 (後編)

2009年 02月 19日1:18 pm @ anonymous

0


最適化された世界 (後編)

text:常盤拓司
前回、コンピュータビジョン分野の研究について概説し、画像タグを利用することで、実世界をコンピュータビジョン側に最適化するという考え方について述べ た。後半では、実際にどのような最適化の方法があるか、ということについて、少しまとめたい。

特に、この数カ月で、AR( 拡張現実 )分野の技術として画像マーカ技術についての注目が集りつつある。そこで、これらについて概説する。また、画像マーカによる方法とはまったく異なる新しく 研究開発されているアプローチについても触れる。

画像マーカ技術

現在、画像マーカ技術として知られているものは、2次元バーコード( QRコード、サイバーコード)、ARToolKitreacTiVisionの 3つが知られている。いずれの技術も、カメラで検出したマーカの画像の大きさや傾き、回転などを検出することが可能である。なお、マーカをここでは画像と 表現しているが、実際には、紙に印刷されたものや、手書き、携帯電話等のディスプレイ上での表示など、カメラで検出できえすれば良い。

2次元バーコード( QRコード、サイバーコード ) : 2次元バーコード技術は、携帯電話などに読み取り機能が搭載されており、雑誌面やさまざまな商品のタグなどとして広く一般に利用されている。いわゆるバー コード( 1次元バーコード )に対して、より多くのバイナリデータを埋め込むことができる。残念ながら画像データのようなデータ量の多いものは難しい。また、どのような情報が2次元 バーコードになっているのかを目視で確認することができない。

ARToolkit : ARToolkitで使用される画像マーカ( ARタグ )は一定の制約条件が伴うものの、視覚的に意味を理解できる絵や文字をマーカとして使用することができる。そのかわり、任意のバイナリデータを画像自体に 埋め込むことができないため、ARタグとそれが指し示す情報の対応関係を検出する仕組み側で把握していることが前提となる。

reacTiVision : これは、reacTiVeTableシステムを実現することを目的とする画像マーカ技術である。点と丸の組み合せによる単位マーカを並べることでマーカと なる画像を作成する。単位マーカの並べ方の制約がゆるやかなため、制約をマーカをデザインするためのルールと解釈することで、一定のルールに基くデザイン を技術者に提供する。また、ARToolkitと同様に、画像にバイナリデータを埋め込むことはできないため、マーカを検出する仕組み側でマーカと情報の 対応関係を持っている必要がある。また、「黒丸1つ」をマーカとして登録すると、簡易のマルチタッチスクリーンを構築することができる。

ARToolkitによる作品。画像マーカを壁に貼ることで、壁の穴の別空間から戦車がでてくるよ うな感覚を覚える

reacTiVisionの画像マーカの種類と位置をカメラが認識し、個別に設定したサウンドを傾 きで変化を加えながら奏でる

reacTiVisionの画像マーカの一例。 amoebaと呼ばれるタイプは179種類ある

これらの画像マーカの技術について比較すると、以下の3つ の点が浮き上がってくる。

1. 人による画像マーカの弁別( 人にとってコードの違いがわかりやすいかどうか )

    • 2 次元バーコード : 難しい
    • ARToolkit : 容易
    • reacTiVision : 中くらい( パターンの複 雑さに依存 )

2. 装飾性

    • 2次元バーコード : 低い
    • ARToolkit : 中くらい
    • reacTiVision : 高い?

3. 情報量

    • 2 次元バーコード : 高い
    • ARToolkit : 低い
    • reacTiVision : マーカの大きさに依存

マー カに多くの情報量を持たせたい場合において、どのようなオブジェクトが空間の中にあるかが未知な状態、あるいは、あらかじめマーカと情報の対応付けを準備 しておくことが困難な場合には、QRコードが有効だと言えるだろう。また、QRコードはそこに何が情報として埋め込まれているのかを人は簡単には判読でき ないため、複数のマーカを区別しにくくさせたい場合にも有効である。

なお、ここでは議論しないが、QRコードは、平文を2次元バーコードに 変換した場合、人には読めなくても、カメラとコンピュータで読めば、情報を抽出することができる。流通する大部分の携帯電話にはQRコードのリーダが内蔵 されているため、読もうと思えば大抵の人が読むことができてしまう。セキュリティが重要な要件となる場合は、2次元バーコードに変換する前の段階で、暗号 化するなどの手続きが必要となる。

一方で、マーカの数や種類が少なく、既知の場合には、あらかじめマーカと情報の対応付けが可能となるた め、ARToolKitやreacTiVisionなどが利用できる。また、人にとってマーカの弁別が容易である。マーカ自体に情報が埋め込まれていない ことから、どのマーカがどういう情報と対応付けられているかは、読み取るシステム側に依存するため、同じマーカ画像に複数のシステムで異なる情報を対応付 けておくことなどができる。

新しい研究の流れ

画像マーカによる方法は、環境にコンピュータのための情報を追加するという考え方である。これはカメラが撮影する環境を構成している要素が既知であ ることが条件となる。しかし、常にこのような条件が望めるとは限らない。

そこで、未知の環境においても利用可能な手法の研究が行われてい る。

SLAM( Simultaneously Localization and Mapping )

SLAMは、さまざまなセンサを利用して( センサが搭載されている装置自身の )位置の推定と、周辺空間の地図を作成する技術である。

セ ンサはカメラやレーザレンジファインダ( レーザを利用した距離計測のシステム )などが代表的である。レーザレンジファインダは極めて高価なシステムな ので、一般に入手し、使用することは難しい。そこで、ここではカメラによる手法を取り上げる。

SLAMによってカメラで撮影した空間をコンピュータが認識していくサンプル

先 に説明した画像マーカ技術はカメラにどんな情報がどんな風に写っているか、ということを情報として得ることを可能とする。「どんな風に」とは、カ メラと対象物の位置や角度の関係である。この情報があることで、撮影された実世界の映像にCGなどを重畳することが可能になる。

カメラによ る未知の空間で( カメラの )位置を推定するためには、カメラの撮影した映像の中から、何らかの手掛かりを見付ける必要がある。方法としては画像の中に写っている物体を認識する技術 や3次元での物体の特徴点を抽出する技術などがある。前者は、物体の形状についての情報が既知である必要がある必要がある。画像マーカを利用するのは、 マーカがこの既知の情報として利用できるためである。

後者は、静止画であれば、比較的容易に抽出することができるが、動画で、映像が動いて いるような場合には、抽出した特徴点を追跡する必要が生じる。特徴点の追跡は、高度な情報処理技術が必要で、かつ高性能な計算機も必要な技術である。この ような状況からカメラによる方法は現実的な方法ではなかった。

ところが、一昨年、PTAM(Parallel Tracking and Mapping for Small AR Workspaces)という技術が開発・公開された。マルチコアプロセッサ技術を応用し、従来のカメラによるSLAMを高速化したものである。この技術 の革命的であった点は、従来のコンピュータの性能の限界によって生じていた問題が解消され、現実的な時間でのSLAMが実現されることとなった点にある

PTAMを利用すれば車窓の景色にさまざまなアニメーションを付加させることも

PTAMは、カメラで撮影された画像の中にある物体の特徴点を抽出し、それを手掛かりにして、カメラの傾き や移動を計測する。

ARToolKitとは違い、カメラで撮影されたそれぞれの情報を得ることができない。しかし、特別なしかけをあらかじ め用意しておかなくても、カメラの位置が計測できることから、カメラで撮影された映像にCGを重畳することができるようになる。

前 回、環境をコンピュータに最適化するという方法について述べた。しかし、情報科学技術の発達によって、人に近い環境の理解をコンピュータシステムができる ようになりつつもある。中期的には、画像マーカを利用した技術はマーカの意味も利用することが出来ることから、これまで以上に普及をしていくことになるだ ろう。

しかし、長期的には、PTAMのような人に近い環境認識をコンピュータがするようになるだろう。