(57)【要約】【課題】イメージングシステムの高速キャリブレーション。【解決手段】一つ以上のイメージングデバイスに通信するようにつながれたプロセッシングユニットを含むイメージングシステムをキャリブレートするためのシステムおよび方法を開示している。イメージングシステムはディスプレイを含んでいることもある。実施例において、表示特徴のシーケンスがディスプレイ上に表示され、単数または複数のイメージングデバイスによってイメージングされる。表示特徴および対応する画像特徴に関する空間データがコンパイルされる。実施例において、ディスプレイ、単数または複数のイメージングデバイス、またはその両者の位置を変更し、表示特徴のもう一つのシーケンスを表示し、空間データをコンパイルすることができる。最適化およびキャリブレーションのテクニックを使って、コンパイルされた空間データを用いて一つ以上の内部イメージングデバイスパラメータ、一つ以上の外部パラメータ、またはその両方を得ることができる。【選択図】図１
2007129709.tif 000002
【特許請求の範囲】
【請求項１】
イメージングデバイスのビューフィールド内において第１ポーズでディスプレイを配置するステップと、
ディスプレイ上に単一表示特徴の集合を表示するステップを含み、ここでは単一表示特徴の集合からの単一表示特徴の各々がシーケンシャルに表示され、
単一表示特徴の集合に対応するイメージングデバイスに画像特徴の集合をキャプチャするステップと、
単一表示特徴の集合から単一表示特徴の各々に関する空間データおよび画像特徴の集合から対応する画像特徴の各々に関する空間データをコンパイルするステップと、
空間データに基づいて少なくとも一つのイメージングデバイスパラメータを推定するステップと、
を含む、イメージングデバイスをキャリブレートするための方法。
【請求項２】
単一表示特徴の集合は一つ以上の単一表示特徴を含む、請求項１に記載の方法。
【請求項３】
単一表示特徴の集合からの単一表示特徴はディスプレイ上にランダムロケーションに表示される、請求項２に記載の方法。
【請求項４】
単一表示特徴のうちの少なくとも一つは時間パターンに従って表示される、請求項２に記載の方法。
【請求項５】
イメージングデバイスのビューフィールド内において第２ポーズにディスプレイを配置するステップと、
ディスプレイ上に単一表示特徴の第２集合を表示するステップを含み、ここでは単一表示特徴の第２集合の単一表示特徴の各々がシーケンシャルに表示され、
単一表示特徴の集合に対応するイメージングデバイス内の画像特徴の第２集合をキャプチャするステップと、
単一表示特徴の第２集合に関する空間データおよび画像特徴の第２集合に関する空間データをコンパイルするステップと、
をさらに含む、請求項１に記載の方法。
【請求項６】
単一表示特徴の集合からの単一表示特徴の各々に関する空間データはディスプレイ上の単一表示特徴の各々のロケーションを表す距離値の配列を含み、対応する画像特徴の各々に関する空間データは画像特徴の各々の画像平面内におけるロケーションの２次元データの配列を含む、請求項１に記載の方法。
【請求項７】
少なくとも一つのイメージングデバイスパラメータは、焦点長、半径歪み、スケーリング（アスペクト比）、スキュー因子、偏り、ディスプレイに対するイメージングデバイスの相対位置、および回転を含むグループから選択される、請求項１に記載の方法。
【請求項８】
請求項１に記載の方法を実行するように適合された命令集合を含んだ媒体または波形。
【請求項９】
イメージングデバイスの配列を含むイメージングシステムをキャリブレートするための方法であって、この方法は、
イメージングデバイスの配列から少なくとも二つのビューフィールド内において複数のポーズでディスプレイを配置するステップを含み、
ポーズ毎に、
ディスプレイ上に単一表示特徴を表示し、
単一表示特徴に対応するイメージング特徴を少なくとも二つのイメージングデバイスの各々に登録し、
単一表示特徴および対応する画像特徴に関する空間データをコンパイルするステップを含み、
そして
空間データに基づいてイメージングデバイスのためのパラメータを少なくとも一つ推定するステップを含む。
【請求項１０】
少なくとも一つのポーズに対して、
ディスプレイ上に単一表示特徴を表示し、
単一表示特徴に対応するイメージング特徴を少なくとも二つのイメージングデバイスの各々に登録し、
単一表示特徴および対応する画像特徴に関する空間データをコンパイルする、
ステップが繰り返される、請求項９に記載の方法。
【請求項１１】
単一表示特徴はディスプレイ上にランダムなロケーションに表示される、請求項１０に記載の方法。
【請求項１２】
単一表示特徴は時間パターンに従って表示される、請求項１０に記載の方法。
【請求項１３】
単一表示特徴およびそれに対応する画像特徴に関する空間データは、ディスプレイ上における単一表示特徴のロケーションを表す距離値の配列および画像平面において対応する画像特徴のロケーションの各々の値の配列を含む、請求項１０に記載の方法。
【請求項１４】
空間データに基づいてイメージングシステムのための少なくとも一つのパラメータを推定するステップは、少なくとも二つのイメージングデバイスの各々毎に少なくとも一つのパラメータを推定することを含む、請求項９に記載の方法。
【請求項１５】
少なくとも一つのイメージングシステムパラメータは、焦点長、半径歪み、スケーリング（アスペクト比）、スキュー因子、偏り、ディスプレイに対するイメージングデバイスの相対位置、少なくとも二つのイメージングデバイス間の相対位置、および回転を含むグループから選択される、請求項９に記載の方法。
【請求項１６】
請求項９に記載の方法を実行するように適合された命令集合を含んだ媒体または波形。
【請求項１７】
プロセッシングユニットと、
プロセッシングユニットに通信するようにつながれたディスプレイと、
プロセッシングユニットに通信するようにつながれた少なくとも一つのイメージングデバイスとを含む、
イメージングシステムであって、
これにおいてプロセッシングユニットは、
ディスプレイ上に単一表示特徴を表示し、
単一表示特徴に対応するイメージング特徴を少なくとも一つのイメージングデバイスに登録し、
単一表示特徴および対応する画像特徴に関する空間データをコンパイルし、
空間データに基づいてイメージングシステムのための少なくとも一つのパラメータを推定する、
ことをステップを実行するように適合されたイメージングシステム。
【請求項１８】
ディスプレイ上に単一表示特徴を表示し、
単一表示特徴に対応するイメージング特徴を少なくとも一つのイメージングデバイスに登録し、
単一表示特徴および対応する画像特徴に関する空間データをコンパイルする、
ステップを繰り返す、請求項１７に記載のイメージングシステム。
【請求項１９】
イメージングシステムのための少なくとも一つのパラメータは、焦点長、半径歪み、スケーリング（アスペクト比）、スキュー因子、偏り、ディスプレイに対するイメージングデバイスの相対位置、イメージングデバイス間の相対位置、および回転を含むグループから選択される、請求項１７に記載のイメージングシステム。
【請求項２０】
単一表示特徴は時間パターンに従って表示される、請求項１７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にはイメージングの分野に関し、より具体的には一つ以上のイメージングデバイスを含むイメージングシステムをキャリブレートするためのシステムおよび方法に関する。
【背景技術】
【０００２】
カメラのキャリブレーションは、コンピュータビジョンシステムなど、取得した画像のジオメトリックモデルに対して行なうイメージングシステムに欠かせないものである。現在のキャリブレーション方法は、一般的に、チェッカーボードターゲットなど、注意深く設計されたキャリブレーションターゲットの使用を伴う込み入った方法でなければならない。キャリブレーションターゲットといった専用の装置を必要とするだけでなく、こうした従来の方法ではターゲットの準備、保全、さらにその後のキャリブレーションにユーザのかなりの努力と専門知識も必要となる。ユーザは、普通、アライメントの問題、ターゲットから全ての特徴を信頼をもって抽出できるセグメンテーションテクニックを可能にする照明や、誤ったまたは見落とした一致性に起因するエラーに関する問題など、数多くの問題を認識していなければならない。
【０００３】
【特許文献１】米国特許第6,654,493号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００４】
現在のキャリブレーション方法に伴う複雑さが、イメージングシステムを構成するのを難しい、時間のかかる、しかも高価なものにしている。こうした問題があるので普通のユーザはビジョンシステムをキャリブレートするのが難しい。こうした問題はイメージングシステムを素早く且つ効率よくキャリブレートすることも難しくしている。
【０００５】
そこで、単純、ロバストでしかも高速なイメージングシステムキャリブレーションを提供するシステムおよび方法が必要とされている。
【課題を解決するための手段】
【０００６】
本発明の一つの態様によれば、イメージングシステムの単純で高速なキャリブレーションのためのシステムおよび方法を開示している。伝統的なカメラキャリブレーションの日常的なやり方と違って、本発明の方法は訓練されていないユーザが使用できる。
【０００７】
一つの実施例において、イメージングシステムは一つ以上のイメージングデバイスおよび一つのプロセッシングユニットを含んでいる。代替実施例では、イメージングシステムはディスプレイを含んでいても構わない。
【０００８】
本発明の一つの態様によれば、異なったキャリブレーションおよびテスト操作に対応するように最適化された一連のターゲットパターン、つまり表示特徴がディスプレイに表示され、単数または複数のイメージングデバイスでイメージングされる。一つの実施例において、 イメージングデバイスの画像平面（image plane）内の特徴を識別し易くする時間パターン（temporal pattern）またはシーケンスに従って表示特徴を表示してもいい。表示特徴および対応する画像特徴に関する空間データがコンパイルされる。一つの実施例において、ディスプレイ、単数または複数のイメージングデバイス、またはその両方の位置を変更（reposition）し、別のシーケンスの表示特徴を提示し、空間データをコンパイルしてもいい。公知の最適化およびキャリブレーションテクニックを使って、一つ以上の内部イメージングデバイスパラメータ、一つ以上の外部パラメータ、またはその両方を得るために、コンパイルした空間データを使用することができる。
【０００９】
本発明のもう一つの態様によれば、イメージングシステムは深度（depth）パラメータを用いて構成することができる。キャプチャした画像の送信または記録を、キャプチャした画像のうち指定した深度の範囲またはレイヤー内に入る部分だけに限定するのに深度パタメータを用いることができる。
【００１０】
発明の特徴および効果を具体的な実施例に関しておおまかにこの項および下記の詳細な説明の項で述べているが、発明の範囲はこうした具体的な実施例に限定されるものではないことを理解するべきである。図面、明細書および特許請求の範囲に鑑み、当業者ならば多数のさらなる特徴および効果が明白になるであろう。
【発明を実施するための最良の形態】
【００１１】
以下、本発明の実施形態を図面に基づいて説明する。
【実施例１】
【００１２】
以下の説明においては、解説のために、本発明を理解できるように具体的な詳細を述べている。しかし、当業者ならばこうした詳細を知らなくても発明を実施できることは明白であろう。当業者ならば、以下に述べる本発明の実施例は、様々なやり方で、様々な手段を用いて、実行できることを認識するだろう。当業者ならば、また、更なる変更例、応用例、および実施例は発明の範囲内であり、発明が利用性を提供することのある追加の分野であることも理解するだろう。そこで、以下に述べる実施例は発明の具体的な実施例を説明しているものであって、発明を曖昧にしないようにしているつもりである。
【００１３】
明細書の中で「一つの実施例」または「実施例」に言及しているのは、実施例との関係において説明したある特定の特徴、構造、特性または機能が発明の少なくとも一つの実施例の中に含まれていることを意味している。さらに、いろいろな個所に「一つの実施例において」、「実施例において」または類似の表現が出てくるが、それはいつも同じ実施例を指しているとは限らない。
【００１４】
図１は、コネクタ１０３を介してプロセッシングユニット１０２に通信するようにつながれたイメージングデバイス１０１を含むイメージングシステム１００を示す図である。また、コネクタ１０４を介してプロセッシングユニット１０２につながれたディスプレイ１０８も描かれている。「つながれた」および「通信するようにつながれた」という表現は、一つ以上の仲介デバイスを通しての直接接続および間接接続を含むと理解するべきである。
【００１５】
実施例において、イメージングデバイス１０１はデジタルカメラまたはアナログカメラで構わない。代替実施例において、イメージデバイスは、パーソナルデジタルアシスタント（PDA）、ウェブカメラ、ビデオカメラ、コンピュータ、マルチメディアデバイス、モバイル通信デバイスなどを、制限なく、含んだもう一つのデバイスの一部であっても構わない。
【００１６】
実施例において、ディスプレイ１０８は、フラットパネルディスプレイ、LCDスクリーン、CRTモニタ、タッチスクリーン、プロジェクタスクリーンといったようなもので構わない。ディスプレイ１０８は、以下により詳細に説明するが、実質的にフラットな表示面を有していて空間データのコンパイル中に歪みを抑えるのが好ましい。実施例において、CRTモニタなどの、表示曲率（display curvature）の補正を、当業者に知られているテクニックを用いて行なうことができる。しかし、実施例において、ディスプレイタイプにかかわらず、表示曲率の補正を行わなくてもいい。
【００１７】
図２は、プロセッシングユニット１０２の実施例の機能ブロック図である。バス２０１につながれた少なくとも一つのプロセッサ２０２を示している。またバス２０１にはメモリ２０６もつながれている。代替実施例において、プロセッシングユニット１０２はストレージデバイス２０４、一つ以上の出力デバイス２０８、および一つ以上の入力デバイス２１０を含み、入力デバイス２１０はバス２０１につながっている。
【００１８】
プロセッサ２０２は、AMDのプロセッサ、INTELの８６ファミリーのプロセッサ、SUN MICROSYSTEMSのSPARC、またはPOWERPCとの互換性をもつCPUといった汎用のプロセッサでも、あるいは単数または複数の用途特定向けプロセッサでも構わない。メモリ２０６は、例えば、ファームウェア、読み取り専用メモリ（ROM）、フラッシュメモリ、不揮発性ランダムアクセスメモリ（NVRAM）、ランダムアクセスメモリ（RAM）、またはこれらのどんな組み合わせでも構わず、プロセッサ２０２が使用する命令およびデータを保持している。
【００１９】
ストレージデバイス２０４は、コンピュータ可読メディア（例えば、ディスケット、テープ、コンパクトディスク、DVDなど）またはソリッドステートメモリデバイスなど、ハードディスクドライブおよび／またはデータ格納能力をもった別のデバイスで構わない。ストレージデバイス２０４はプロセッシングユニット１０２とともに使用するプログラム、命令、および／またはデータを保持することができる。実施例において、ストレージデバイス２０４上に格納またはそこからロードされたプログラムまた命令はメモリ２０６の中にロードされてプロセッサ２０２で実行することができる。実施例において、ストレージデバイス２０４はプロセッシングユニット１０２上でオペレーティングシステムを実行するためのプログラムまたは命令を保持している。可能なオペレーティングシステムとしては、これらに限られるわけではないが、UNIX（登録商標）、AIX、LINUX、Microsoft Windows（登録商標）、Apple MAC OSなどがある。オペレーティングシステムはプロセッシングユニット１０２上で動作し、プロセッシングユニット１０２の動作を管理する。実施例において、プロセッシングユニット１０２はネットワークを介してデータを共用する能力を提供する。当業者ならば、ストレージ２０４およびメモリ２０６は同じ品目で構わず、どちらでもその両方の機能を果たせることを認識するだろう。
【００２０】
実施例において、入力２１０は、マウス、トラックボール、またはタッチパッドといったポインティングデバイスを含んでいて構わず、またプロセッシングユニット１０２にデータまたは命令を入力するためのキーボードまたはキーパッドを含んでいてもいい。実施例において、プロセッシングユニットは、これらに限定されるものではないが、ディスプレイ、LCDスクリーン、CRTモニタ、プリンタ、タッチスクリーン、またはその他の情報を通信するためのデバイスを含んでいて構わない。実施例において、ディスプレイ１０８（図１）は出力デバイス２０８であってもいいし、あるいは出力デバイス２０８とは別個であっても構わない。プロセッシングユニット１０２は、ディスプレイ１０８および／または出力デバイス２０８上に情報または画像を表示するのを補助するためのグラフィックスアダプタ（未表示）を含んでいても構わない。
【００２１】
プロセッシングユニット１０２は、プロセッシングユニット１０２をネットワークおよび／または他のデバイスに通信するようにつなぐために一つ以上のネットワークインタフェースまたはアダプタ２１２を含んでいても構わない。例えば、ネットワークインタフェース２１２は一つ以上のイメージングデバイス１０１に対してプロセッシングユニット１０２をインタフェースさせることができる。ネットワークアダプタ２１２はプロセッシングユニット１０２に他のネットワーク、デバイス、プロセッシングユニット、あるいはコンピュータシステムとのインタフェースをとらせることができる。
【００２２】
実施例において、プロセッシングユニット１０２は、アナログ画像をデジタル画像フレームに変換するためのビデオキャプチャモジュールまたはカード２１４を含んでいてもいい。イメージングデバイス１０１がアナログイメージングデバイスである本発明の実施例に、ビデオキャプチャモジュール２１４を使用することができる。イメージングデバイス１０１がデジタルイメージングデバイスである実施例にはビデオキャプチャモジュール２１４は不要なことがある。
【００２３】
当業者ならば、本発明の実施にはプロセッシングユニットはクリティカルでないことを認識するだろう。当業者ならば、また、上に述べた多数の要素を物理的におよび／または機能的にサブモジュールに分割してもあるいは一つに組み合わせても構わないことも認識するだろう。例えば、図３は代替実施例を示しており、これにおいてプロセッシングユニット１０２は統合型ディスプレイ１０８を有するラップトップである。代替実施例において、プロセッシングユニット１０２のいくつかのあるいはすべての要素をイメージングデバイス１０１の中に組み入れても構わない。また別の実施例において、イメージングデバイス１０１およびプロセッシングデバイス１０２（またはその一部分）を、 制限なく、PDA、モバイル電話、マルチメディアデバイスなどといったデバイスの中に組み合わせてもいい。
【００２４】
図４は、イメージングデバイスをキャリブレートするための方法の実施例４００を示している。ディスプレイ１０８はイメージングデバイス１０１のビューのフィールド内に置かれている（４０１）。実施例において、ディスプレイ１０８にはどの時間のステップでも一つの表示特徴３００しか表示されない（４０２）。インターバルステップ毎に一つの表示特徴だけを表示することのメリットは、画像をキャプチャし空間データを抽出するためのプロセスが大幅に簡素化され、しかもそうしたプロセスが素早く行えることである。同時に多数の特徴を表示するのに対して、単一の表示特徴を表示すると、表示特徴を混乱させる可能性がなくなる。表示特徴３００は、正方形、長方形、円、楕円形、十字、ポリゴンといったような単純なジオメトリック形状で構わない。代わって、表示特徴はもっと込み入った画像またはパターンでもいい。
【００２５】
イメージングデバイス１０１のビューのフィールド内に特徴３００を表示していると、画像特徴をイメージングデバイス１０１内に登録またはキャプチャすることができる（４０３）。キャプチャされた画像特徴はディスプレイ１０８に表示された表示特徴に相関している。
【００２６】
実施例においては、表示特徴３００がディスプレイ１０８に表示されているときに画像特徴のキャプチャを支援するように、特徴３００はイメージングデバイス１０１またはプロセッシングユニット１０２で認識可能な時間のシーケンスまたはパターンに従って表示されて構わない。例えば、実施例において、プロセッシングユニット１０２は時間のパターンに従ってディスプレイ１０８に表示特徴３００をフラッシュして構わない。プロセッシングユニット１０２はイメージングデバイス１０１と通信するようにつながれていることがあるから、プロセッシングユニット１０２はキャプチャされた画像のうち同じ時間のパターンを有する部分をマッチングさせることによってイメージング特徴を登録することができる。そうした実施例は、更なるモーションチェンジやバックグラウンド変化が起きる環境でイメージングシステムを構成またはキャリブレートするときにメリットがある。例えば、人またはオブジェクトがバックグラウンドで動いているエリアでイメージングシステムを構成またはキャリブレートすることで、キャプチャした画像特徴を識別するのが難しくなることがある。パターンまたはシーケンスに従って表示特徴を提示することによって、対応する画像特徴をもっと容易に識別できるようになる。
【００２７】
表示特徴３００およびそれと対応する画像特徴の両方に関する空間データ集合をコンパイルするのにデータを抽出することができる（４０４）。表示された特徴３００およびキャプチャされた画像特徴に関する空間データをコンパイルした後、もう一つの表示特徴がディスプレイ１０８上に表示されることがある。もう一つの特徴を表示する場合、ステップ４０２４０４を繰り返す。それにおいては、表示特徴がイメージングデバイス１０１でキャプチャされ、更なる空間データがコンパイルされる。このプロセスを指定回数繰り返し、そこで表示特徴の集合をシーケンシャルに表示することができる。表示特徴集合における表示特徴数は１〜nの範囲であって構わない。実施例において、ディスプレイ１０８に提示される表示特徴のロケーションは異なることがある。実施例において、ディスプレイ１０８上の表示特徴のロケーションはランダムに選択されても構わない。
【００２８】
表示特徴の集合の完了に到達したら、もう一つのポーズ（pose）を選択することがある（４０６）。ポーズは、ディスプレイ１０８の位置変更（repositioning）（４０７）、イメージングデバイス１０１の位置変更、また両者の位置変更といったことからなっていて構わない。位置変更とは、次の、つまり、傾斜、回転、およびロケーションのうちの一つ以上を調整することを含むと理解されるものとする。イメージングデバイス１０１、ディスプレイ１０８、またはその両者の位置が変更され、プロセスはステップ４０２に戻り、そこで表示特徴の集合が表示され、表示特徴に関する空間データおよび対応する画像特徴に関する空間データがコンパイルされる。ポーズ数は１〜mの範囲で構わず、推定の対象となる内在的イメージングデバイスパラメータ（intrinsic imaging device parameter）数いかんによって異なってくる。例えば、実施例において、単一平面の単一ビューの場合、基本軸または光学軸および画像平面の交差点を表す基本点が与えられると、アスペクト比および焦点長をキャリブレートすることができる。更なる例として、実施例において、単一平面の２つのビューまたは２つの平面の一つのビューを用いて、カメラパラメータを十分にキャリブレートすることができる。また別の実施例において、３つ以上のビューを用いてカメラパラメータをキャリブレートすることができる。
【００２９】
実施例において、同じまたは異なった表示特徴集合をポーズのために表示してもいい。実施例において、模式的方法４００の、表示特徴数、ポーズ数、ポジションなどを含む一つ以上のシステムパラメータを事前定義したりあるいはユーザが提供したりすることができる。
【００３０】
すべてのポーズが完了すると、プロセス中にコンパイルされた空間データを用いて少なくとも一つのイメージングデバイスキャリブレーションパラメータを推定することができる（４０８）。
【００３１】
なお、本発明は（図３に示すように）単一イメージングデバイスを有するイメージングシステムに用いることができるし、あるいは複数のイメージングデバイスを有するイメージングシステムに使用することもできる。図５に示すのは、イメージングデバイス１０１A〜１０１pの配列がイメージングシステム１００の一部分をなす実施例である。なお、配列におけるイメージングデバイス数は１〜pの範囲で異なっていて構わず、そこでpは整数（whole number）である。また、イメージングデバイスとプロセッシングユニット１０２とを通信するようにつなぐ物理的接続はないことがある。本発明は、一つ以上のイメージングデバイスとプロセッシングデバイス１０２との間にワイヤレス通信を使用することを考えている。図５に示した実施例はそうした構成である。キャリブレーションのために選択したイメージングデバイスは各々が少なくともキャリブレーションプロセスの一部分の間にビューフィールド内にディスプレイを有する。
【００３２】
図６は、イメージングデバイスの配列をキャリブレートするための方法の実施例６００である。この方法はディスプレイ１０８を配置する（６０１）ことから始まる。一つの実施例において、ディスプレイ１０８がイメージングデバイスの配列におけるイメージングデバイス１０１A〜１０１p各々のビューフィールドに入るように、ディスプレイ１０８を配置することができる。いくつかの実施例においては、ディスプレイ１０８はイメージングデバイスの配列におけるイメージングデバイス１０１A〜１０１p各々のビューフィールドに入っていないかもしれない。
【００３３】
表示特徴３００（図５参照）がディスプレイ１０８上に表示される（６０２）。実施例において、イメージングデバイス１０１のビューフィールドがどれだけオーバーラップするかによって、表示特徴３００をサイズを調整してイメージングデバイスから容易に見れるようにすることができる。
【００３４】
表示特徴３００が表示されていると、ビューフィールド内にディスプレイ１０８を有するイメージングデバイス各々内に画像特徴をキャプチャすることができる。これらのイメージングデバイス各々は、キャプチャされた画像特徴がディスプレイ１０８上に表示された表示特徴３００に対して相関している。表示特徴３００および対応する画像特徴の両方に関する空間データの集合がイメージングデバイスにおいてコンパイルするために情報が抽出される（６０４）。
【００３５】
表示された特徴３００とキャプチャされた画像特徴とに関する空間データをコンパイルした後、ディスプレイ１０８にもう一つの表示特徴が表示されることがある。もう一つの特徴を表示する場合（６０５）、ステップ６０２〜６０４が繰り返され、そこでキャプチャされた画像がイメージングデバイスによってキャプチャされて追加の空間データがコンパイルされる。このプロセスを指定の回数繰り返して、表示特徴の集合を表示することができる。表示特徴集合における表示特徴数は１〜nの範囲でいい。以前に触れたように、実施例において、ディスプレイ１０８上に提示される表示特徴のロケーションはいろいろ異なり、しかもランダムに異なることがある。
【００３６】
表示特徴集合の完了に達したら、別のポーズを選択して構わない（６０６）。ポーズは、ディスプレイ１０８の位置変更（６０７）、一つ以上のイメージングデバイス１０１の位置変更、またはその両方からなっていて構わない。実施例において、ディスプレイ１０８は、一つ以上のポーズのために全てのイメージングデバイス１０１のビューフィールド内に入ってはいないかもしれない。実施例において、ディスプレイ１０８がいろいろ異なるポーズから異なるポーズに動くのに伴って、ディスプレイ１０８は一つ以上のイメージングデバイスのビューフィールド内に入ることもあるいは外に出ることもある。代替実施例において、ディスプレイ１０８の各ポーズは少なくとも一つのイメージングデバイスをもう一つのポーズと共通で維持している。例えば、実施例において、ディスプレイ１０８の各連続ポーズは少なくとも一つのイメージングデバイス１０１を前のポーズと共通で維持している。
【００３７】
位置変更の後、プロセスはステップ６０２に戻り、そこで表示特徴の集合が表示され、表示特徴および対応する画像特徴に関する空間データがコンパイルされる。ポーズ数は１〜mの範囲でよく、推定の対象となる内在的イメージングデバイスパラメータ数いかんによって異なってくる。例えば、実施例において、単一平面の単一ビューの場合、基本軸または光学軸および画像平面の交差点を表す基本点が与えられると、アスペクト比および焦点長をキャリブレートすることができる。更なる例として、実施例において、単一平面の２つのビューまたは２つの平面の一つのビューを用いて、カメラパラメータを十分にキャリブレートすることができる。また別の実施例においては、３つ以上のビューを用いてカメラパラメータをキャリブレートすることができる。
【００３８】
実施例において、ポーズのために同じまたは異なる表示特徴が表示されることがある。代替実施例において、表示特徴集合のサイズ、ポーズ数、イメージングデバイス数、ポジションといったような、模式的方法の一つ以上のシステムパラメータをユーザが事前定義してもまたは提供することができる。実施例において、各ポーズは少なくとも一つ以上のイメージングデバイスをもう一つのポーズと共通で有している。
【００３９】
図６でわかるように、プロセスは、空間データを得るために、ポーズ毎に指定ポーズ数および表示特徴集合のサイズいかんによって、指定回数繰り返される。少なくとも一つのイメージングデバイスキャリブレーションパラメータを推定する（６０８）のにコンパイルされた空間データを用いることができる。どんなイメージングデバイスの場合でも、３次元の世界が２次元の点として画像平面に投影される。ディスプレイ上に表示された３次元の特徴の集合としておよび単数および複数のイメージングデバイス上のこうした３次元の点の投影として空間データを記述することができる。例えば、複数のイメージングデバイス構成において、空間データはキャリブレート対象の全てのイメージングデバイスの３次元の点の集合およびこうした各イメージングデバイスの画像平面上に投影された２次元の特徴の集合を含む。
【００４０】
図７は、本発明の実施例に従って集められる空間データを説明しようとしたものである。図７は表示特徴３００を有するディスプレイ１０８を示しているが、ディスプレイ１０８は別個のディスプレイでも統合型ディスプレイ１０２でも構わない。表示特徴３００に対応する画像特徴３００iを有するイメージングデバイス１０１の画像平面７１０も示している。実施例において、イメージングシステムにおけるイメージングデバイスの数を問わず、空間データは２次元特徴データの配列および対応する３次元データの配列とを含んでいて構わない。２次元特徴データの配列は画像平面に画像特徴（３００i）のロケーション７１１、７１２を含んでいて構わず、また画像特徴のサイズを含んでいることもある。実施例において、画像特徴のロケーションを画像特徴３００iの中心まで測ることができる。実施例において、画像特徴（３００i）のロケーション７１１、７１２および／またはサイズを画素の単位で測ってもいい。３次元データの配列は表示特徴（３００）のロケーション７０１、７０２を含んでいて構わず、また表示特徴のサイズを含んでいてもいい。実施例において、表示特徴（３００）のロケーション７０１、７０２を表示特徴３００の中心まで測って構わない。実施例において、表示特徴（３００）のロケーション７０１、７０２および／またはサイズをミリメートルまたはインチの単位で測って構わない。空間データはディスプレイ１０８の角から表示特徴３００までの距離７０３を含んで構わない。当業者ならば、距離７０３はロケーションデータ７０１および７０２から計算することができることを認識するだろう。
【００４１】
実施例において、画像特徴の２次元の特徴データをイメージングデバイス１０１が行う単純なしきい値画像キャプチャリングによって得ることができる。代替実施例において、 精度の高い特徴ロケーション抽出およびコンパイル作業のために当技術分野で知られている更なる画像処理テクニックを実行してもいい。実施例において、ディスプレイ上で特徴をフレッシュする（flashing）ことによって、イメージングデバイスがキャプチャしたシーン上の欲しくない同じようなパターンを削除することが可能である。実施例において、これに限定されるものでないが、テンプレートマッチングまたはハフ変換（Hough transform）を含むもっと手の込んだ方法を用いてイメージングデバイスの画像平面に投影された表示された特徴の正確なロケーションを抽出することができる。
【００４２】
実施例において、ディスプレイ１０８の角までの表示特徴の距離７０３を得る、または推定する、あるいは算出することによって３次元データを得ることができる。ディスプレイ１０８上の表示特徴３００の相対的画素位置をプロセッシングユニット１０２から知ることができる。さらに、画素単位またはミリメートル単位でプロセッシングユニットから表示特徴の物理的サイズおよびロケーションを抽出することができる。したがって、ランタイムに表示特徴の３次元座標を指定することが可能である。このように、あるポーズおよび瞬時に、画像平面における特徴の座標および実の３次元世界における表示特徴のロケーションデータを表す空間データを収集することができる。
【００４３】
コンパイルした空間データを用いて少なくとも一つのイメージングデバイスキャリブレーションパラメータを推定することができる（４０８／６０８）。これらに限定されるものではないが、http:/www.vision.caltech.edu/bouguetj/calib_doc/papers/zahn00.pdf; から入手できるIEEE Seventh International Conference on Computer Vision （ICCV’99）掲載のZ. Zhang著“Flexible Camera Calibration by Viewing a Plane from Unknown Orientations”、およびhttp:/www.vision.caltech.edu/bouguetj/calib_doc/papers/sturm99.pdf; から入手できるIEEE Conference on Computer Vision and Pattern Recognition （CVPR’99）掲載のP. Sturm & S. Maybank著“On Plane-Based Camera Calibration: A General Algorithm, Singularities, Applications” に説明されている方法を含む、一つ以上の当業者に知られている最適化スキームを用いて、一つ以上のイメージングデバイスキャリブレーションパラメータの推定値を得ることができる。上に述べた記事は各々参照することによりその全体が本明細書の中に組み込まれているものとする。推定値は、個々のイメージングデバイス、全てのイメージングデバイス、あるいはそれらの組み合わせに対して得ることができる。
【００４４】
実施例において、キャリブレーションパラメータを決定するのにピンホール幾何学（pinhole geometry）近似法および数学を用いることができる。一つ以上のイメージングデバイスパラメータの推定は、これらに限られるものではないが、単一または複数のイメージングデバイスのシナリオに対する伝統的なカメラキャリブレーション方法を用いて行って構わないことが当業者ならば明白であろう。そうした方法には、http://www.vision.caltech.edu/bouguetj/calib_doc/papers/zhan99.pdf; から入手可能なIEEE Seventh International Conference on Computer Vision （ICCV’99）に掲載のZ. Zhang著“Flexible Camera Calibration by Viewing a Plane from Unknown Orientations” 、http://www.vision.caltech.edu/bouguetj/calib_doc/papers/sturm99.pdf; から入手可能な IEEE Conference on Computer Vision and Pattern Recognition （CVPR’99）に掲載のP.Sturm & S. Maybank著“On Plane-Based Camera Calibration: A General Algorithm, Singularities, Applications” 、http://www.vision.caltech.edu/bouguetj/calib_doc/papers/heikkila97.pdf; から入手可能なIEEE Conference on Computer Vision and Pattern Recognition （CVPR’97）に掲載のJ. Keikkila & O. Silven著“A Four-step Camera Calibration Procedure with Implicit Image Correction”、http://www.optical-metrology-centre.com/Downloads/Papers/Photogrammetric%20Record%201998%20Camera%20calibration.pdf; から入手可能なT. A. Clarke & J. G. Fryer著“The Development of Camera Calibration Methods and Models” Photogrammetric Record, 16(91): 51-66, April 1998、および IEEE J. Robotics Automat, pages 323-344, Vol. RA-3, No. 4 (1987)に掲載のR. Y. Tsai著“A versatile camera calibration technique for high accuracy 3D machine vision metrology using off-the-shelf TV cameras and lenses” がある。これらは各々参照することによりその全体が本明細書に組み込まれているものとする。
【００４５】
イメージングデバイスは同じ表示特徴を全てレジスタしていることがわかっているから、単一の表示特徴を用いて、イメージングデバイス間のキャリブレーションを算出することができる。したがって、共通のオブジェクト、つまり表示特徴を用いて、イメージングデバイスの相対位置をそれぞれに対して決めることができる。
【００４６】
推定されたまたは最適化キャリブレーションパラメータは内在パラメータでも外在パラメータでも構わない。内在パラメータは、焦点長（focal length）、半径歪み（radial distortion）、スケーリング（アスペクト比）、スキュー因子（skew factor）、および画像の中心または基本点に対する偏り（bias）を含んでいて構わない。外部パラメータは、ディスプレイ１０８に対するイメージングデバイスの相対位置、イメージングデバイスの配列におけるイメージングデバイス１０１A〜１０１pの相対位置、および回転（rotation）を含んでいて構わない。
【００４７】
実施例において、キャリブレートされたイメージングシステムは深度キーまたはレベルを有して構成されることがある。深度は決定されることがあるパラメータの一つだから、深度キーを用いてイメージングシステムまたはイメージングデバイスを構成することができる。すなわち、指定の距離でまたは距離の範囲内でオブジェクトを表すこれらの画像だけが伝送および／または記録される。例えば、人であろうと何らかのオブジェクトであろうと、問題の項目がある指定の距離（距離の範囲を含むかもしれない）にある場合、指定の距離の外にあるオブジェクトのキャプチャされた画像を伝送しないようにイメージングシステムを構成することができる。そうした実施例は、伝送するまたは記録する画像データの量を減らして記録サイズまたはバンド幅の所要量を減らすのでメリットがあることがある。深度のキー化（keying）またはレイヤー化（layering）は、これらに限られるものではないが、http://www.csd.uch.gr/~tziritas/papers/3d-motion.pdf; から入手できるN. KomodakisおよびG. Tziritas著“Robust 3-D motion estimation and depth layering” International Conference on Digital Signal Processing, Santoroni 1997、およびIEEE International Conference on Pattern Recognition, Vol. 1, pages 201-205, Austria, 1996に掲載の N. Paragiosおよび G. Tziritas著“Detection and location of moving objects using deterministic relaxation algorithms” に説明されている方法を含む、当業者に知られている一つ以上の方法を用いて達成することができる。これらの記事は各々参照することによりその全体が本明細書に組み込まれているものとする。深度レイヤー化によって、遮られた領域（occluded region）の表現および異なるレイヤーにおいて異なる深度範囲を有するオブジェクトの異なる空間解像度の表現が可能になる。内在性のカメラパラメータと外在性のカメラパラメータとを有するステレオ型のイメージングデバイス対があるとすれば、イメージングデバイスでキャプチャしたシーンの深度レイヤー化を実施することができる。シーンの任意の点に対して、深度を決めることができるし、この深度キーに基づいて単数または複数のレイヤーを計算することができる。
【産業上の利用可能性】
【００４８】
当業者ならば、これらに限定されるものではないが、ウェブカメラ、デジタルカメラ、カメラ機能付きモバイル電話、カメラ機能付きパーソナルデータアシスタント（PDA）などを含むいろいろなデバイスに本発明を利用できることを認識するだろう。なお、本発明はソフトウェア、ハードウェア、またはそれらの組み合わせとしてインプリメントすることもできる。また、プロセッシングユニット１０２は本発明の方法の一つ以上の実施例を実行するように構成することができる。
【００４９】
本発明は様々な変更例および代替え形が可能であるが、それらの具体的な例を図面に表示するとともに本書で詳細に説明している。しかし、発明は開示した具体的な形に限定されるものではなく、それとは逆に、発明は添付の特許請求の精神および範囲内に入るあらゆる変更例、均等物、および代替例を網羅するものである。
【図面の簡単な説明】
【００５０】
【図１】イメージングデバイス、プロセッシングユニット、およびディスプレイを含むイメージングシステムの一つの実施例を示す図。
【図２】プロセッシングユニットの一つの実施例の機能ブロック図。
【図３】本発明の一つの実施例による、イメージングデバイスと統合型ディスプレイを有するプロセッシングユニットとを含むイメージングシステムを示す図。
【図４】本発明の一つの実施例による、イメージングデバイスをキャリブレートするための方法を示す図。
【図５】本発明の一つの実施例による、イメージングデバイスと統合型ディスプレイを有するプロセッシングユニットとの配列を含むイメージングシステムを示す図。
【図６】本発明の一つの実施例による、イメージングシステムをキャリブレートするための方法を示す図。
【図７】本発明の一つの実施例による、表示特徴を有するディスプレイと表示特徴に対応する画像特徴を有するイメージングデバイスの画像平面とを示す図。
【符号の説明】
【００５１】
202  プロセッサ
204  ストレージ
206  メモリ
208  出力
210  入力
212  ネットワークインタフェース
214  ビデオキャプチャ／画像デジタイザ
【図１】
2007129709.tif 000003
【図２】
2007129709.tif 000004
【図３】
2007129709.tif 000005
【図４】
2007129709.tif 000006
【図５】
2007129709.tif 000007
【図６】
2007129709.tif 000008
【図７】
2007129709.tif 000009