(57)【特許請求の範囲】
【請求項１】
対象物からの反射光量に対応する画像である色画像を取得するとともに、当該対象物との距離に対応する画像である距離画像を取得するカメラシステムと、
前記対象物に画像を投影するプロジェクターと、
プロセッサーと、を備え、
前記プロセッサーは、
（１）ユーザーのジェスチャーを前記色画像及び距離画像に基づいて検出し、
（２）前記色画像を用いずに前記距離画像から、画像を投影する対象物の表面の、プロジェクターに対する相対的な位置及び向きを検出し、
（３）処理（１）で検出したジェスチャーに応じて異なる画像を、処理（２）で検出した表面の位置および向きに応じて変形し、これを当該表面に投影し、
（４）前記距離画像を用いて３次元座標系を生成し、
（５）前記３次元座標系において、前記色画像から検出された前記対象物上のコンテンツと、前記検出されたジェスチャーに関する情報とをマッピングし、前記ジェスチャーを、前記検出されたコンテンツに関連するものとして検出する、
処理を行うことを特徴とする、画像投影装置。
【請求項２】
外部のカメラから対象物の反射光量に対応する画像である色画像、および、当該対象物との距離に対応する画像である距離画像を取得する手段と、
ユーザーのジェスチャーを前記色画像及び距離画像に基づいて検出する第１の検出手段と、
前記色画像を用いずに前記距離画像から、画像を投影する対象物の表面の、プロジェクターに対する相対的な位置及び向きを検出する第２の検出手段と、
第１の検出手段で検出したジェスチャーに応じて異なる画像を、第２の検出手段で検出した表面の位置および向きに応じて変形し、これを外部のプロジェクターに出力する出力手段と、
前記距離画像を用いて３次元座標系を生成し、前記３次元座標系において、前記色画像から検出された前記対象物上のコンテンツと、前記検出されたジェスチャーに関する情報とをマッピングし、前記ジェスチャーを、前記検出されたコンテンツに関連するものとして検出する手段と、を備えることを特徴とする画像投影制御装置。
【請求項３】
外部のカメラから対象物の反射光量に対応する画像である色画像、および、当該対象物との距離に対応する画像である距離画像を取得するステップと、
ユーザーのジェスチャーを前記色画像及び距離画像に基づいて検出するステップと、
前記色画像を用いずに前記距離画像から、画像を投影する対象物の表面の、プロジェクターに対する相対的な位置及び向きを検出するステップと、
検出したジェスチャーに応じて異なる画像を、検出した表面の位置および向きに応じて変形し、これを外部のプロジェクターに出力するステップと、
前記距離画像を用いて３次元座標系を生成するステップと、
前記３次元座標系において、前記色画像から検出された前記対象物上のコンテンツと、前記検出されたジェスチャーに関する情報とをマッピングし、前記ジェスチャーを、前記検出されたコンテンツに関連するものとして検出するステップと、をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像を対象物に投影する画像投影装置ならびに画像投影制御装置およびプログラムに関する。
【背景技術】
【０００２】
非特許文献１及び２には、文書中の文字列等の領域ではなく、文書全体またはページ全体をハイパーリンクに見立てた、紙文書とコンピュータの間のインタラクションに関する技術が記載されている。
【０００３】
非特許文献３には、カメラを用いて机の上の文書を認識し、電子文書との対応付けを行う技術が記載されている。
【０００４】
非特許文献４には、カメラを用いてＯＣＲを行い、認識したテキストを転写する技術が記載されている。
【０００５】
非特許文献５には、カメラとプロジェクターを組み合わせた装置を使って、ユーザーのペン操作を入力とプロジェクターによる出力で、紙文書とのインタラクションを行う技術が記載されている。
【０００６】
非特許文献６には、紙文書とのインタラクションのために特別のマークを付加する技術が記載されている。
【０００７】
非特許文献７には、紙に書いたキャラクターをテーブルの上で動かすことで、アニメーションを作る技術が記載されている。
【０００８】
非特許文献８には、画像の局所特徴量を算出してそれを基に画像を比較する技術が記載されている。
【０００９】
非特許文献９および１０には、画像の局所特徴量を用いて、格納してある画像とのマッチングを行う技術が記載されている。
【先行技術文献】
【非特許文献】
【００１０】
【非特許文献１】ウィルソン（Ｗｉｌｓｏｎ）、「どこでも再生：コンパクト・インタラクティブ・テーブルトップ・プロジェクション・ビジョン・システム（ＰｌａｙＡｎｙｗｈｅｒｅ：  ａ  ｃｏｍｐａｃｔ  ｉｎｔｅｒａｃｔｉｖｅ  ｔａｂｌｅｔｏｐ  ｐｒｏｊｅｃｔｉｏｎ−ｖｉｓｉｏｎ  ｓｙｓｔｅｍ）、ＵＩＳＴ抄録（Ｐｒｏｃｅｅｄｉｎｇｓ    ｏｆ  ＵＩＳＴ）、２００５年、ｐ．８３〜９２
【非特許文献２】ケーン（Ｋａｎｅ）ら、「焚き火：ハイブリッド・ラップトップ・テーブルトップ・インタラクションのためのノーマディック・システム（Ｂｏｎｆｉｒｅ：  ａ  ｎｏｍａｄｉｃ  ｓｙｓｔｅｍ  ｆｏｒ  ｈｙｂｒｉｄ  ｌａｐｔｏｐ−ｔａｂｌｅｔｏｐ  ｉｎｔｅｒａｃｔｉｏｎ）、ＵＩＳＴ抄録（Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＵＩＳＴ）、２００９年、ｐ．１２９〜１３８
【非特許文献３】キム（Ｋｉｍ）ら、「ビデオ・ベース・ドキュメント追跡：物理的デスクトップと電子的デスクトップとの統一（Ｖｉｄｅｏ−ｂａｓｅｄ  ｄｏｃｕｍｅｎｔ  ｔｒａｃｋｉｎｇ：  ｕｎｉｆｙｉｎｇ  ｙｏｕｒ  ｐｈｙｓｉｃａｌ  ａｎｄ  ｅｌｅｃｔｒｏｎｉｃ  ｄｅｓｋｔｏｐｓ）」、ＵＩＳＴ抄録（Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＵＩＳＴ）、２００４年、ｐ．９９〜１０７
【非特許文献４】ニューマン（Ｎｅｗｍａｎ）ら、「カムワークス：ペーパ・ソース・ドキュメントから効率的にキャプチャするためのビデオ・ベース・ツール（ＣａｍＷｏｒｋｓ：  Ａ  Ｖｉｄｅｏ−ｂａｓｅｄ  Ｔｏｏｌ  ｆｏｒ  Ｅｆｆｉｃｉｅｎｔ  Ｃａｐｔｕｒｅ  ｆｒｏｍ  Ｐａｐｅｒ  Ｓｏｕｒｃｅ  Ｄｏｃｕｍｅｎｔｓ）、ＩＥＥＥ  マルチメディア・システム抄録（Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＩＥＥＥ  Ｍｕｌｔｉｍｅｄｉａ  Ｓｙｓｔｅｍ）、１９９９年、ｐ．６４７〜６５３
【非特許文献５】ウェルナー（Ｗｅｌｌｎｅｒ）、「デジタルデスク上のペーパとのインタラクション（Ｉｎｔｅｒａｃｔｉｎｇ  ｗｉｔｈ  ｐａｐｅｒ  ｏｎ  ｔｈｅ  ＤｉｇｉｔａｌＤｅｓｋ）」、ＡＣＭ通信（Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  ｏｆ  ｔｈｅ  ＡＣＭ）、３６（７）、１９９３年、ｐ．１〜１０７
【非特許文献６】ソング（Ｓｏｎｇ）ら、「ペンおよび空間感知モバイル・プロジェクタを用いたデジタル・ペーパのバイマニュアル・インタラクション（ＭｏｕｓｅＬｉｇｈｔ：Ｂｉｍａｎｕａｌ  Ｉｎｔｅｒａｃｔｉｏｎｓ  ｏｎ  Ｄｉｇｉｔａｌ  Ｐａｐｅｒ  Ｕｓｉｎｇ  ａ  Ｐｅｎ  ａｎｄ  ａ  Ｓｐａｔｉａｌｌｙ−ａｗａｒｅ  Ｍｏｂｉｌｅ  Ｐｒｏｊｅｃｔｏｒ）、ＣＨＩ抄録（Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＣＨＩ）、２０１０年
【非特許文献７】バーンズ（Ｂａｒｎｅｓ）ら、「ビデオ・パペット：切り絵アニメのための遂行的インタフェース（Ｖｉｄｅｏ  Ｐｕｐｐｅｔｒｙ：  Ａ  Ｐｅｒｆｏｒｍａｔｉｖｅ  Ｉｎｔｅｒｆａｃｅ  ｆｏｒ  Ｃｕｔｏｕｔ  Ａｎｉｍａｔｉｏｎ）」、グラフィックに関するＡＣＭトランザクション（ＡＣＭ  Ｔｒａｎｓａｃｔｉｏｎ  ｏｎ  Ｇｒａｐｈｉｃｓ）、Ｖｏｌ．２７、Ｎｏ．５、２００８年
【非特許文献８】リウ（Ｌｉｕ）ら、「ＦＩＴによる高精度・言語非依存ドキュメント検索（Ｈｉｇｈ  Ａｃｃｕｒａｃｙ  Ａｎｄ  Ｌａｎｇｕａｇｅ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｄｏｃｕｍｅｎｔ  Ｒｅｔｒｉｅｖａｌ  Ｗｉｔｈ  Ａ  Ｆａｓｔ  Ｉｎｖａｒｉａｎｔ  Ｔｒａｎｓｆｏｒｍ）」、ＩＣＭＥ抄録（Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＩＣＭＥ）、２００９年
【非特許文献９】ヘア（Ｈａｒｅ）ら、「マップスナッパー：モバイル・フォンのマップ  画像をマッチングするための効率的なアルゴリズム処理（ＭａｐＳｎａｐｐｅｒ：  Ｅｎｇｉｎｅｅｒｉｎｇ  ａｎ  Ｅｆｆｉｃｉｅｎｔ  Ａｌｇｏｒｉｔｈｍ  ｆｏｒ  Ｍａｔｃｈｉｎｇ  Ｉｍａｇｅｓ  ｏｆ  Ｍａｐｓ  ｆｒｏｍ  Ｍｏｂｉｌｅ  Ｐｈｏｎｅｓ）」、マルチメディア・コンテンツ・アクセス抄録（Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  Ｍｕｌｔｉｍｅｄｉａ  Ｃｏｎｔｅｎｔ  Ａｃｃｅｓｓ）、アルゴリズムおよびシステムＩＩ（Ａｌｇｏｒｉｔｈｍｓ  ａｎｄ  Ｓｙｓｔｅｍｓ  ＩＩ）第６８２０巻、２００８年、ｐ．６８２００Ｌ．１〜６８２００Ｌ．１１
【非特許文献１０】リウ（Ｌｉｕ）ら、「埋め込みメディア・マーカ：関連メディアを示すペーパ上のマーク（Ｅｍｂｅｄｄｅｄ  Ｍｅｄｉａ  Ｍａｒｋｅｒｓ：  Ｍａｒｋｓ  ｏｎ  Ｐａｐｅｒ  ｔｈａｔ  Ｓｉｇｎｉｆｙ  Ａｓｓｏｃｉａｔｅｄ  Ｍｅｄｉａ）」、ＩＵＩ抄録（Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＩＵＩ）、２０１０年、ｐ．１４９〜１５８
【発明の概要】
【発明が解決しようとする課題】
【００１１】
対象表面に記載されたコンテンツに対するジェスチャーによって、当該コンテンツに関する電子的な操作を行った結果を、プロジェクターを用いて当該対象表面に投影する場合において、対象表面とプロジェクターの間の相対位置及び向きの変化したときに、従来技術は対応できなかった。
【００１２】
本発明は、対象表面とプロジェクターの間の相対位置及び向きの変化に応じて対象表面に投影された画像を変形させることができる、画像投影装置ならびに画像投影制御装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明の第１の態様は、対象物からの反射光量に対応する画像である色画像を取得するとともに、当該対象物との距離に対応する画像である距離画像を取得するカメラシステムと、前記対象物に画像を投影するプロジェクターと、以下の（１）ないし（３）の処理を行うプロセッサーとを備えることを特徴とする。（１）ユーザーのジェスチャーを前記色画像及び距離画像の少なくとも一方から検出し、（２）前記色画像を用いずに前記距離画像から、画像を投影する対象物の表面の、プロジェクターに対する相対的な位置及び向きを検出し、（３）処理（１）で検出したジェスチャーに応じて異なる画像を、処理（２）で検出した表面の位置および向きに応じて変形し、これを当該表面に投影する。
【００１４】
本発明の第２の態様は、外部のカメラから対象物の反射光量に対応する画像である色画像、および、当該対象物との距離に対応する画像である距離画像を取得する手段と、ユーザーのジェスチャーを前記色画像及び距離画像の少なくとも一方から検出する第１の検出手段と、前記色画像を用いずに前記距離画像から、画像を投影する対象物の表面の、プロジェクターに対する相対的な位置及び向きを検出する第２の検出手段と第１の検出手段で検出したジェスチャーに応じて異なる画像を、第２の検出手段で検出した表面の位置および向きに応じて変形し、これを外部のプロジェクターに出力する出力手段と、を備えることを特徴とする。
【００１５】
本発明の第３の態様は、外部のカメラから対象物の反射光量に対応する画像である色画像、および、当該対象物との距離に対応する画像である距離画像を取得するステップと、ユーザーのジェスチャーを前記色画像及び距離画像の少なくとも一方から検出するステップと、前記色画像を用いずに前記距離画像から、画像を投影する対象物の表面の、プロジェクターに対する相対的な位置及び向きを検出するステップと、検出したジェスチャーに応じて異なる画像を、検出した表面の位置および向きに応じて変形し、これを外部のプロジェクターに出力するステップと、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１６】
本発明によれば、プロジェクターによる投影内容による誤検知をすることなく、対象表面の追跡が可能となる。
【図面の簡単な説明】
【００１７】
【図１】ＦＡＣＴの実装例を示している。
【図２】ＦＡＣＴの使用例を示している。
【図３】本発明の使用例を示している。
【図４】カメラ及びプロジェクターを備えた入出力装置に用いられるカメラの例を示している。
【図５】距離画像（ｄｅｐｔｈ  ｉｍａｇｅ）の例を示している。
【図６】カメラによって得られた画像であって、距離画像を抽出する前のものを示している。
【図７】二値化した距離画像の例を示している。
【図８】本発明で実現可能な機能の例を示している。
【図９】本発明における処理の一例を示すフローチャートである。
【図１０】対象表面の特定法の一例を示すフローチャートである。
【図１１】本発明を実装するコンピュータシステムの例を示すブロック図である。
【図１２】紙文書、カメラ、プロジェクター、電子文書の間の相対的な位置関係のマッピングを行う方法の一例を示している。
【発明を実施するための形態】
【００１８】
本発明の実施の形態を以下に説明するが、本実施形態は、本発明者が開発したＦＡＣＴという技術（特願２０１１−００３８８３として出願）を基にしている。ここで、ＦＡＣＴは、マーカー無しの紙文書を認識及び拡張するカメラ付きプロジェクタユニットである。また、これによって、ユーザーは、紙上の微細なコンテンツを選択することで、キーワード検索、ウェブ検索、マルチメディアアノテーション等のコンピュータの機能を実行することができる。ＦＡＣＴでは、紙文書を固定しておく必要は無く、紙の持つ本質的な柔軟性を損なうことがない。図１は、ＦＡＣＴの実装例を示している。ＦＡＣＴは、紙を使った対話型のシステム１００である。このシステムは、カメラおよびプロジェクターを備えた入出力ユニット１０１、ノート型のコンピュータ１０２、機械読取のためのバーコードや標識の付されていない通常の紙文書１０３を利用する。
【００１９】
図２は、ＦＡＣＴの使用例を示している。ＦＡＣＴは、カメラとプロジェクターを備えた入出力ユニットを活用して、コンテンツに基づく画像認識および座標変換を行う。これによって、ユーザーのペンを操作する動作（ジェスチャー）によって指定された、紙文書中のコンテンツ（文章、印、アイコン、図、任煮の領域等）を認識し、コンピュータで処理できるようにするのである。例えば、紙文書中の単語によるキーワード検索を行う場合、ユーザーは、同図（ａ）に示すようにペン先２０１で検索対象とする単語２０２をポイント（指し示すこと）した上で、「キーワード検索」コマンドの起動を指示する。この入力を受けたシステムは、同図（ｂ）に示すように、その紙文書の元となった電子文書を対象としてその単語を検索し、検索された単語２０３の紙文書中の位置をプロジェクターで特定の色の光を照射することによりハイライト表示するのである。同図（ｃ）は、同図（ｂ）において「３Ｄ」という単語を紙文書１０３においてハイライト表示した様子を示す拡大図である。
【００２０】
ＦＡＣＴは、紙文書に対応する文書画像に対してＳＩＦＴ（Ｓｃａｌｅ  Ｉｎｖａｒｉａｎｔ  Ｆｅａｔｕｒｅ  Ｔｒａｎｓｒｏｍ）のような局所特徴量を算出し比較することで、対応する（元となった）電子文書を特定する。また、この局所特徴量の文書画像と電子文書との間の対応関係はまた、カメラ、プロジェクターおよび文書の間のホモグラフィック座標変換にも用いる。また、カメラで撮影した画像からのペン先の検出には、色情報を基準とした方法を用いる。紙文書上におけるペンの動き（ジェスチャー）は、同様のマウスポインターの操作に対応付けられる。この方法は、通常の紙文書に何らかの標識をつけたり、何らかの変更を加えたりする必要がない。
【００２１】
しかしながら、特願２０１１−００３８８３に記載したＦＡＣＴでは、カメラ、プロジェクターおよび紙文書が載っている平面それぞれの相対的位置は、一連の操作の間固定されていることが必要である。したがって、紙文書は固定された平面上に置かなければならず（例：テーブルの上）、また、カメラ及びプロジェクターを備えた入出力ユニットは、どこかに固定されていなければならない（例：本棚に固定）。すなわち、手に持った紙を使ってＦＡＣＴの機能を使うことが出来ない。また、プロジェクターやカメラで入出力可能な領域の制限から、テーブル上における紙の位置すら限られたものになっている。
【００２２】
そこで、本発明の実施例においては、通常のＲＧＢの色画像（色毎の光センサー（ＲＧＢ等）で検出した画素毎の色情報を有する画像）に距離画像（ｄｅｐｔｈ  ｉｍａｇｅ：各画素が対象物とセンサーとの間の距離情報を有する画像）を組み合わせて、紙文書の表面の認識および追跡を行う。
【００２３】
ここで、本実施例では、図３に示すような、３つの典型的なインタラクションの形態をサポートする。第１に、同図（ａ）に示すように、カメラ及びプロジェクターを備えた入出力ユニット３０１が固定されているが、紙文書３０３は固定されておらず自由な位置及び向き（テーブルの上に置いてあってもよいし、空中でユーザー３０２が保持していてもよい）にあることを前提としている形態である。ユーザー３０２は、紙文書３０３を動かしたり、また、紙文書３０３に対してポイントやタッチ等の手を使ったジェスチャーをすることによって操作を行うのである。第２に、同図（ｂ）に示すように、入出力ユニット３０１を、固定された投影表面３０４（紙文書が貼ってある壁等）に向けてユーザーが保持し、これを動かすことによって、また体を使ったジェスチャーによって操作を行う形態である。第３に、同図（ｃ）に示すように、一方の手で紙文書３０３を保持し、他方の手で入出力ユニット３０１を保持した上で、両者を両手の動きで連動させる形態である。
【００２４】
以下では、大きく分けて５つの技術を実施例を用いて説明する。（１）３次元空間における紙文書の認識及び姿勢推定、（２）紙文書を操作するための指によるジェスチャー、（３）情報媒体が混在する環境における体を使ったジェスチャー、（４）手持ち型のプロジェクターの利用、（５）両手持ちによる操作、の５つである。
【００２５】
本実施例におけるシステムでは、カメラからビデオフレームを取得し、その局所特徴量（例：ＳＩＦＴやＦＩＴ）を用いて紙文書の特定を行う。この際に、紙文書に特殊なコードやマークを付加しておく必要は無い。本実施例のシステムでは、クアッドコア２．８ＧＨＺのＣＰＵと４ＧＢのＲＡＭを搭載したコンピュータを用いて、６４０×４８０画素のフレームの認識処理を行ったところ、０．５ｆｐｓ程度での処理が可能であった。認識等を行っている最中に、ユーザーが紙文書をわざわざ高速で動かすことは想定しなくても良いと考えられるので、この処理スピードは許容可能な数字であろう。
【００２６】
各ビデオフレーム（色画像）と予め設定した紙文書モデルの間の局所特徴量の対応を検出することで、紙文書の３次元空間における姿勢の認識及び推定処理（３次元姿勢推定）を行うことができる。しかしながら、ビデオフレームの視覚的な特徴量（色情報等）のみを用いて姿勢の認識及び推定処理を行うことには、いくつか問題がある。
【００２７】
（１）現在知られている認識アルゴリズムは、文書画像の大きな射影歪み（ｐｅｒｓｐｅｃｔｉｖｅ  ｄｉｓｔｏｒｔｉｏｎ）に対応できない。一方で、これは紙文書を空中に保持して取り扱う際には頻繁に生じる問題である。
【００２８】
（２）紙文書へのプロジェクターによる投影が、紙文書の局所特徴量を変えてしまうかも知れない。これによって、紙文書の認識及び姿勢推定に失敗することもある。この問題は、紙文書のコンテンツが少なく、結果として抽出できる特徴量が少ない場合に特に顕著である。紙の姿勢推定は、ＲＧＢセンサーの色情報による画像（色画像）からその頂点を検出することでも可能であるが、それには背景と紙の間に大きなコントラストの差があることが条件となる。
【００２９】
（３）特徴量抽出に係る計算が複雑で、これをリアルタイムで行えない可能性がある。その場合には、紙文書の姿勢推定がユーザーの紙を動かす動作に遅れてしまうことになる。
【００３０】
これらの問題を解決するために、マイクロソフト（登録商標）のＫＩＮＥＣＴ（登録商標）から得られるような距離情報（ｄｅｐｔｈ  ｉｎｆｏｒｍａｔｉｏｎ）を用いて、色情報による紙文書の認識処理及び追跡処理を補完する。
【００３１】
本システムは各シーンの距離画像を取得し、これを用いて３次元空間における（平らな）紙文書の姿勢を推定するのである。認識モジュールでの処理の前に、姿勢情報を用いて、色画像の射影歪みが少なくなるように補正することもできる。３次元姿勢推定には距離画像のみを用いる。距離画像は、文書の局所特徴量とは無関係である。本実施例の場合、距離画像の取得、およびこの距離画像からの紙の３次元姿勢推定は、６０ｆｐｓ程度で行える。３次元姿勢推定及び文書認識に関しては、それぞれ別のスレッドで処理を行い、それぞれが独立して、紙文書・カメラ・プロジェクターを含む「世界」のモデルを更新する。
【００３２】
本実施例のシステムは、図４に示すように、距離画像の生成および通常の色画像の生成が可能なカメラシステム４００と一体となって、または連携して処理を行うことが出来る。距離を検出するカメラ４０１（距離検出カメラ）は、例えば、赤外線の光源４０３から投影された構造化された赤外光（例えば格子縞の赤外光）の反射光のパターンの歪みを解析することで、対象までの距離を面状に計測することができる。その計測の結果が距離画像である。そして、この距離画像と、ＲＧＢカメラ４０２で撮影した色画像とを重ね合わせることで、色画像の各点が距離情報を有することになる。ここで、各点の距離情報を色で表すこともできる（以下、この画像をカラー距離画像という）。このように、３次元座標系にＲＧＢカメラからの色情報をマッピングしたものが得られるので、これをカメラ・プロジェクター・紙文書が存在する現実の座標系に変換するのである。
【００３３】
なお、ＲＧＢカメラ４０２はまた、紙文書のコンテンツの特定や、特定された面における特徴量の検出に用いることも出来る。ユーザーが何らかの指示のための動き（ジェスチャー）をすると（例：ペンで単語をなぞって単語を指定）、ＲＧＢカメラ４０２が、特定された面上で検出されたコンテンツに関連するものとして、このジェスチャーを検出する。
【００３４】
図５は、距離画像とＲＧＢカメラからの色画像とを組み合わせて、カラー距離画像５００を作成した例を示している。ここでは、色がＲＧＢカメラから対象物表面までの距離を表している。図５の例では、カメラから近い距離を赤で、遠い距離を青で、そして、その間の距離を両者の間の波長を持つ色で表している。この例では、赤い部分５０１は、青で表現されている背景５０２よりもＲＧＢカメラに近いことを示している。
【００３５】
このシステムでは対象物が平面状でない場合であってもカラー距離画像の生成が可能ではあるが、本実施例では、対象すなわち紙文書が平面状である場合を前提とし、３次元空間中の平面としてモデル化する。この前提の下で、本システムは、紙文書に対応する面を検出及び特定して（例えば、紙の四つの頂点から定める）、これを追跡する。例えば、図６の画像６００は、ユーザーが空中で持っている１枚の紙を表している。本システムでは、この紙の４つの頂点を検出する。ここで、この頂点の位置を示す丸印は、飽くまでも説明のためのものであってこのような画像が生成されるわけではない。また、必ずしも４つの頂点を検出する必要は無く、３つでも良いし、また検出するポイントが頂点である必要も無い。また、より多数の点までの距離から平面を求めてもよい。
【００３６】
また、本実施例では、環境光の変化による影響を受けにくいことから、距離画像を用いて紙の頂点を検出している。この検出においてはまず、背景のオブジェクトを切り捨てるべく、閾値以上の距離を有する点を除外する（背景として取り扱う）フィルタ処理を行う。
【００３７】
図７は、この閾値処理、およびいわゆるブロブ検出（ｂｌｏｂ  ｄｅｔｅｃｔｉｏｎ）を適用した距離画像７００の例を示している。ここでブロブ検出とは、周囲の画素値に対して大きい又は小さい画素値を有し且つ一定以上の大きさを持つ領域を検出することであり、一般に結果としての画像を二値化してブロブの部分とそうでない部分を区別するようにする。この例は、図６の画像に対して一定の閾値によるフィルタリング処理を行い、その結果に対してブロブ検出を行ったところ、対象物（この場合は紙）とこれを保持している腕とが距離画像７００として残ったものである。
【００３８】
距離画像７００を用いて紙の頂点を検出するアルゴリズムは以下の通りである。
【００３９】
（１）まず、弱い結合をしているオブジェクトの分割を行う。すなわち、画像中のオブジェクトの弱い結合を検出して、それを断ち切り、個別のオブジェクトに分割する。ここで、弱い結合とは、画像中の領域同士が、その領域に比べて細い部分で結合していることである。図７の例で言えば、紙と腕とがそれぞれ弱い結合をしている。この処理は、例えば以下の３つの基本的な画像処理で実現できる。まず、強いブラー処理（ぼかし処理）を行う。すると、弱い結合をしている部分の画素値が低い値（背景に近い値）となる。次に、閾値による２値化を行って、低い値となった結合部分を背景と同化させる。最後に、モルフォロジー演算のｏｐｅｎｉｎｇとｃｌｏｓｉｎｇを行って、オブジェクトの境界を明確にする。
【００４０】
（２）次に、対象オブジェクトの内部特徴点の検出を行う。ステップ（１）の結果画像は、オブジェクト同士が分離されてはいるものの、前段の画像処理によってその領域（およびその境界）が狭くなってしまっている。とはいえ、ブロブ検出を行うことで、この狭くなった領域を検出することができる。そこで、まずは回転不変な外接矩形を算出する。そして、この矩形の頂点を次の処理における入力（内部特徴点）として用いる。
【００４１】
（３）次に、内部特徴点の元の頂点への割り付けを行う。ステップ（２）で求めた内部特徴点を、図６で認識されたオブジェクトの輪郭を使って、元の（縮小されていない）オブジェクト（紙文書）の頂点に割り当てる。具体的には、外接矩形（すなわち内部特徴頂点）を、元の対象オブジェクトの頂点に近付けるように繰り返し拡張する。そして、両者の距離が予め定めた閾値以下となった場合に、紙の頂点が距離画像上で特定されたことになる。
【００４２】
このように特定された紙の頂点を、距離画像を用いてフレーム単位で追跡する。これは、ステップ（２）の回転不変な外接矩形算出に用いた処理と類似した方法で、対象オブジェクトの向きを推定することによって行う。この追跡結果に基づいて、画像を追跡対象の領域に、且つその対象の向きに合わせてリアルタイムに投影するのである。
【００４３】
紙文書が認識され３次元空間で追跡されると、本実施例のシステムは、ユーザーのジェスチャーによる操作の検出を始める。ユーザーの操作としては、例えば、ユーザーが人差し指を使って紙文書中の図をポイントし近くのディスプレイに表示させることや、地図上の領域の周りを囲むように指でなぞってその領域内のホテルを検索すること、等がある。このような指によるジェスチャーを検出するために、２つの技術が用いられる。ポイントの検出と、タッチ（接触）の検出である。
【００４４】
ポイントの検出は、距離画像ではなく（例えばＲＧＢカメラからの）色画像を用いて行う。例えば、背景から指先やペンの色が識別可能であるという前提の下に、色画像から特定の色を検出することにより、ユーザーの指先やペン先の検出及び追跡を行うことができる。指先の検出においては、指の色として定めた一定の色の検出を行えばよい。また、ペン先の検出においては、予め取得しておいたペン先の画像から色相ヒストグラムの逆射影法を用いて検出すればよい。
【００４５】
タッチの検出は、指先の位置およびポイントされているオブジェクト表面が距離画像中で特定されると、平面を特定するのに必要な３点を、指先の周りからその表面上で選択する。この、指先と特定された平面との距離を計算することで、指先がオブジェクトの表面にタッチしているか否かを判定する。
【００４６】
本実施例のシステムはまた、前述のＦＡＣＴと同様に、紙文書上においてポイントされたコンテンツを特定し、そのコンテンツに対するユーザーのジェスチャーを検出し、そのジェスチャーに対応した電子的な処理を行う。図８には、このジェスチャーによる選択操作の例を示した。ここで、ポインター８０１は文字列の選択操作を、アンダーライン８０２は楽譜の一部の選択操作を、ブラケット８０３およびバーティカルバー８０４は複数行に渡る文字列の選択操作を、ラッソ８０５は閉曲線による領域選択操作を、マーキー８０６は対角線の指定による矩形領域の選択操作を、パス８０７は開曲線による経路の選択操作を、そしてフリーフォーム８０８は任意形状の選択操作をそれぞれ表している。こうしてコンテンツが選択された後に、ユーザーによる他のジェスチャー（例えばコマンド選択メニューからのコマンド指定）を受けて、そのジェスチャーに対応する処理を選択された領域に対して適用する。
【００４７】
図１２は、紙文書、カメラ、プロジェクター、電子文書の間の相対的な位置関係のマッピングを行う方法の一例を示す図である。ここでＨｒは、カメラの基準フレーム１２３６と電子文書１２３８との間のホモグラフィック変換（ホモグラフィ行列）を表す。これは、カメラ画像の特徴点と電子文書の特徴点との対応から求めることができる。これには、少なくとも４対以上の特徴点のペアが必要である。変換行列を求めるために、最小二乗法を用いることができる。このＨｒによって、カメラで検出された文書上のコンテンツやジェスチャーに用いる指先が電子文書１２３８の座標系にマッピングされる。次に、Ｈｃは、対象表面を通る平面状に設定される基準フレームとカメラの基準フレームとのホモグラフィック変換である。これも、同様の４対以上の特徴点のペアの対応関係から求めることができる。Ｈｐは、カメラの基準フレーム１２３６とプロジェクターの基準フレーム１２４８との間のホモグラフィック変換である。これも同様に４つ以上のペアの対応関係から求めることができる。
【００４８】
これら３つの変換行列をそれぞれの間の相対的位置関係として、リアルタイムで求めることで、紙文書、カメラ、プロジェクターおよび電子文書の間の座標の相互変換が可能となる。そして、この座標変換によって、対象表面の位置および向きに応じて投影すべき画像を変形させて、対象表面（紙文書）上に投影するのである。
【００４９】
本実施例の技術は、他のインタラクティブペーパーやデバイス（例えばディスプレイやプリンタ）と組み合わせることで、複合メディア環境を作ることができる。複合メディア環境においては、共に電子的インタラクション（双方向のコミュニケーション）が可能という意味で、紙と電子デバイスとが等価に扱われる。また、このような複数のデバイスにまたがったインタラクションには、体を使ったジェスチャーを検出するようにしても良い。このジェスチャーの例としては、メモ用紙上に描かれた絵をコピーしてディスプレイ上に表示させる、書籍の図をディスプレイに表示させたスライドにリンクさせる、印刷物を再度プリンターに転送してもう一部印刷する等が挙げられる。
【００５０】
複合メディア環境の概念はよく知られているが、本実施例のシステムは、通常の何のマークも付されていない紙文書に対する３次元空間における操作をサポートしているという点で、それら従来のシステムとは異なる。
【００５１】
本実施例はさらに別のシナリオにも適用可能である。すなわち、追跡対象の投影面が固定された紙文書（例えば、テーブルの上や壁上に固定されている）であり、入出力ユニット（カメラ及びプロジェクターを備える）の方が３次元空間で動く場合である。この場合においても本実施例が適用できる理由は、紙（より一般的には、プロジェクターの投影面）と入出力ユニットの間の、動的に変化する相対的な位置関係を特定して処理を行うという意味では、入出力ユニットが動く場合は紙の方が動く場合と技術的に変わりが無いからである。また、この場合、入出力ユニットのプロジェクターから領域選択用のカーソル（注目位置を示す記号。例えば矢印型。）を投影した上で、入出力ユニットそのものが動いたことによるそのカーソルの軌跡から選択範囲を特定し、その選択範囲に対して、上述のような何らかの操作を行うこともできる。例えば、壁に表示した地図の上で、入出力ユニットを動かし、カーソルの閉曲線の軌跡によって選択された範囲に対応する地図上の領域に存在するホテルを検索し、当該プロジェクターによってその位置を地図上に示すことが考えられる。
【００５２】
図９は、本実施例の処理の一例を示すフローチャートである。まず、プロジェクターによる映像の投影、および追跡の対象となる表面（対象表面）を特定する（９０１）。次に、カメラ（距離検出カメラ等）によって、その表面に関する３次元情報（距離、形状、向き等）を取得する（９０２）。この情報から、対象表面上に、当該表面に合わせて、向きや大さを調整した画像を投影する（９０３）。
【００５３】
図１０は、対象表面を特定する処理（９０１）の詳細な方法の一例を示すフローチャートである。まず、距離検出カメラで取得した距離情報から距離画像を生成する（９０１−１）。次に、距離画像を解析して、弱い結合をしている要素を分離し、それぞれを対象表面の候補とする（９０１−２）。次に、先の分離処理で縮小されたそれぞれの対象表面の候補に関して、特徴点（内部特徴点）を特定する（９０１−３）。次に、内部特徴点を、縮小されていない対象表面の特徴点に割り当てる処理を行い、対象表面に対応する距離画像中の表面を対象表面として特定する（９０１−４）。そして、特定された距離画像中の対象表面を追跡する（９０１−５）。
【００５４】
ここで、対象表面の特徴点は、通常の四角い紙を検出する場合であれば、その４つの頂点を用いることができる。一方で、他の種類の表面を検出する場合には、その表面の形状に合わせた点を予め定義する必要がある。
【００５５】
図１１は、本実施例を実装するコンピュータシステムの例を示すブロック図である。システム１０００は、指示を実行するための作業を行うプロセッサー（処理手段）１００２およびメモリ（記憶手段）１００３を含むコンピュータ／サーバ・プラットフォーム１００１を含む。「コンピュータ可読記憶媒体」は、たとえば、ディスク、半導体メモリなどの任意の有形の媒体であってよい。該コンピュータ記憶媒体はプロセッサ１００２に実行のための指示を提供する際に使用される。さらに、コンピュータ・プラットフォーム１００１は、キーボード、マウス、タッチ・デバイス、音声命令入力装置など、複数の入力デバイス（入力手段）１００４からの入力を受信する。コンピュータ・プラットフォーム１００１は、ポータブル・ハード・ディスク・ドライブ、光メディア（ＣＤ、ＤＶＤ）、ディスク媒体、その他の任意の有形な媒体など、コンピュータが実行コードを読み取ることができる脱着可能な記憶デバイス（脱着可能記憶手段）１００５にさらに接続されていてもよい。コンピュータ・プラットフォームはさらにインターネットもしくはローカル・パブリック・ネットワークもしくはローカル・プライベート・ネットワークのその他の構成要素に接続するネットワーク・リソース１００６に接続していてもよい。ネットワーク・リソース１００６は指示およびデータをネットワーク１００７の遠隔位置からコンピュータ・プラットフォームに提供してもよい。ネットワーク・リソース１００６への接続は、たとえば、８０２．１１規格、ブルートゥース、ワイヤレス・プロトコル、セルラー・プロトコルなどのワイヤレス・プロトコルを介してもよいし、たとえば、金属ケーブルや光学繊維ケーブルなどの物理的な送信媒体を介してもよい。ネットワーク・リソースは、データや実行可能な指示を記憶する、コンピュータ・プラットフォーム１００１とは別個の位置にある記憶デバイスを含んでもよい。コンピュータは、その他の指示およびユーザからの入力を要求し、ユーザへデータやその他の情報を出力するためのディスプレイ（表示手段）１００８とインタラクションを行う。表示手段１００８はユーザとのインタラクションを行うための入力手段として機能してもよい。
【図１】
0006007497.tif 000002
【図２】
0006007497.tif 000003
【図３】
0006007497.tif 000004
【図４】
0006007497.tif 000005
【図６】
0006007497.tif 000006
【図１１】
0006007497.tif 000007
【図５】
0006007497.tif 000008
【図７】
0006007497.tif 000009
【図８】
0006007497.tif 000010
【図９】
0006007497.tif 000011
【図１０】
0006007497.tif 000012
【図１２】
0006007497.tif 000013