(57)【特許請求の範囲】
【請求項１】
底面と複数の側面とを有する錐体と、
前記複数の側面のそれぞれに表示された複数のチャートと、
を備え、
前記複数のチャートのそれぞれは、それぞれが既知のサイズを有する複数の単位図形の集合を含み、
前記複数の単位図形のそれぞれの幾何学的形状は、前記集合内部と前記複数のチャート間との双方につき、各単位図形と観測位置との相対的位置および相対的姿勢にかかわらず、前記観測位置からの観測によって相互に識別可能にコーディングされていることを特徴とするカメラ校正用立体チャート。
【請求項２】
請求項１のカメラ校正用立体チャートにおいて、
前記複数の単位図形は、前記錐体の底面に近いほどサイズが増大していることを特徴とするカメラ校正用立体チャート。
【請求項３】
請求項２のカメラ校正用立体チャートにおいて、
前記錐体が角錐であり、
前記複数のチャートは、各チャートと観測位置との相対的位置および相対的姿勢にかかわらず、前記観測位置からの観測によって相互に識別可能にコーディングされていることを特徴とするカメラ校正用立体チャート。
【請求項４】
請求項３のカメラ校正用立体チャートにおいて、
前記複数の単位図形は、前記錐体の底面に平行な複数の第１の直線と、前記錐体の頂点に相当する位置から放射状に伸びた複数の第２の直線との交差によって形成された複数の台形であり、
前記複数の台形のサイズの複比がコーディングされていることを特徴とするカメラ校正用立体チャート。
【請求項５】
請求項４のカメラ校正用立体チャートにおいて、
前記角錐の頂点にマーカが設けられていることを特徴とするカメラ校正用立体チャート。
【請求項６】
請求項５のカメラ校正用立体チャートにおいて、
前記マーカが発光体を含むことを特徴とするカメラ校正用立体チャート。
【請求項７】
請求項３のカメラ校正用立体チャートにおいて、
前記錐体が角錐台であることを特徴とするカメラ校正用立体チャート。
【請求項８】
請求項１ないし請求項７のいずれかに記載のカメラ校正用立体チャートにおいて、
前記複数の単位図形のうち互いに隣接する単位図形には、互いに異なる明度または色相の色が付されていることを特徴とするカメラ校正用立体チャート。
【請求項９】
底面と側面とを有する錐体と、
前記側面の１周分にわたって表示されたチャートと、
を備え、
前記チャートは、それぞれが既知のサイズを有する複数の単位図形の集合を含み、
前記複数の単位図形のそれぞれの幾何学的形状は、前記集合内部につき、各単位図形と観測位置との相対的位置および相対的姿勢にかかわらず、前記観測位置からの観測によって相互に識別可能にコーディングされていることを特徴とするカメラ校正用立体チャート。
【請求項１０】
カメラの校正用パラメータを取得する方法であって、
請求項１ないし請求項８のいずれかのカメラ校正用立体チャートを、被写体を収容すべき空間内に配置する工程と、
前記カメラ校正用立体チャートの前記複数のチャートのうち少なくとも１つのチャートを、前記カメラに付随した観測位置から観測する工程と、
観測されたチャートに含まれる少なくとも１つの単位図形を対象単位図形として抽出し、前記対象単位図形を、前記複数のチャートおよび前記複数の単位図形の中で同定する工程と、
同定された前記対象単位図形についてあらかじめ特定されている実サイズと、前記観測位置から見た前記対象単位図形の観測サイズとの関係から、前記観測位置と前記カメラ校正用立体チャートとの相対的位置および相対姿勢に依存する前記カメラの校正用パラメータを特定する工程と、
を備えることを特徴とするカメラの校正用パラメータの取得方法。
【請求項１１】
カメラの校正用パラメータを求める装置であって、
請求項１ないし請求項８のいずれかのカメラ校正用立体チャートを前記観測位置から観測して得たチャート画像から少なくとも１つの単位図形を対象単位図形として抽出し、前記対象単位図形を、前記複数のチャート相互間および前記複数の単位図形の中で同定する同定手段と、
同定された前記対象単位図形についてあらかじめ特定されている実サイズと、前記観測位置から見た前記対象単位図形の観測サイズとの関係から、前記観測位置と前記カメラ校正用立体チャートとの相対的位置および相対姿勢に依存する前記カメラの校正用パラメータを算出する演算手段と、
を備えることを特徴とするカメラの校正用情報処理装置。
【請求項１２】
コンピュータを、
請求項１ないし請求項８のいずれかのカメラ校正用立体チャートを前記観測位置から観測して得たチャート画像から少なくとも１つの単位図形を対象単位図形として抽出し、前記対象単位図形を、前記複数のチャート相互間および前記複数の単位図形の中で同定する同定手段と、
同定された前記対象単位図形についてあらかじめ特定されている実サイズと、前記観測位置から見た前記対象単位図形の観測サイズとの関係から、前記観測位置と前記カメラ校正用立体チャートとの相対的位置および相対姿勢に依存する前記カメラの校正用パラメータを算出する演算手段として機能させるためのプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、被写体を複数の方向からカメラで撮影して当該被写体の３次元画像モデルを構築するための技術に関するもので、特に、複数の撮影位置の相対関係を特定するために利用されるカメラ校正用立体チャートと、それを利用したカメラの校正用パラメータを決定するための技術とに関する。
【０００２】
【従来の技術】
立体的な被写体を複数の方向から撮影し、それによって得られた複数の画像データを組み合わせることによって、当該被写体の３次元画像モデルを得ることができる。すなわち、複数の方向から被写体を撮影したそれぞれの画像ごとに、カメラの外部パラメータ（カメラの位置や姿勢など）と内部パラメータ（焦点距離など）のデータを得ることができれば、シェープ・フロム・シルエット法によって、被写体のシルエット画像から３次元のモデルを再構成することができる。このシェープ・フロム・シルエット法についての詳細は、W.Niem, "Robust and Fast Modelling of 3D Natural Objects from Multiple Views" SPIE Proceedings Image and Video Proceeding II vol.2182,1994,pp.388-397に開示されている。以下、カメラの外部パラメータと内部パラメータとを「（カメラの）校正パラメータ」と総称するが、この校正パラメータのうち内部パラメータが既知であって内部パラメータによるカメラの校正が完了している場合には、カメラの外部パラメータが求まれば、被写体の３次元画像モデルの構築が可能となる。
【０００３】
ところで、このように複数の方向から被写体を撮影するにあたっての１つの方法は、複数のカメラを異なる位置に固定配置して被写体を撮影する固定配置方式である。しかしながら、この固定配置方式では複数のカメラを撮影スタジオ内などに固定的に分散配置しておかねばならないために、撮影設備が大がかりになるだけでなる。
【０００４】
そこで、ユーザが１台の手持ちカメラを持って被写体の周りを移動しつつ、複数の方向から被写体を順次に撮影することによって被写体の全周囲の画像を得る移動撮影方式が提案されている。
【０００５】
しかしながら、この移動撮影方式でカメラの外部パラメータを決定するには、それぞれの撮影に際してのカメラの位置および姿勢をそのつど特定することが必要となる。
【０００６】
このような目的でカメラの外部パラメータを測定する方式については、磁気方式、超音波方式、光学方式などが、従来から提案されている。このうち磁気方式はカメラ位置における地磁気などを検出することによって、また、超音波方式は所定の超音波からの超音波を検知することによって、それぞれカメラの位置や姿勢などを特定する方式である。光学方式には、ステレオカメラを使う方法や、視野よりも大きな校正チャートを設置する方法等がある。
【０００７】
これらの方式のうち、磁気方式では、被写体が金属で構成されている場合に精度よ測定することが困難であり、超音波方式は装置が高価になってしまう。
【０００８】
これに対して、従来の光学方式としては、不均一マトリクスパターンが描かれた単一の平面チャートを所定位置に配置し、それをカメラで観測することによってその平面チャートとカメラとの位置や姿勢関係を特定する方式が特開２０００−２７０３４３号に開示されている。これによれば、平面チャートに固定された座標系に対するカメラの位置および姿勢の相対的関係がわかるため、平面チャートと被写体との位置および姿勢関係を固定しておけば、複数の方向から被写体を撮影するたびごとに、平面チャート上のパターンをカメラで観測することにより、その時点でのカメラの位置および姿勢が絶対座標系で特定できることになる。
【０００９】
【発明が解決しようとする課題】
しかしながら、平面チャートは、それを観測可能な角度範囲が狭く、当該平面チャートの法線方向から９０度を越える方向からは観測できないため、カメラの可動範囲が大きく制限される。また、平面チャートを観測できる範囲内にカメラがあっても、平面チャートの法線方向からカメラの方向が大きくずれているときには平面チャート上のパターンの観測精度が低下し、その結果としてカメラの外部パラメータの決定精度が良くないといった欠点があった。
【００１０】
本発明は従来技術における上述の課題を解決するために成されたものであり、光学方式を用いながらも、広い可動範囲を確保しつつ高い測定精度が得られるような、カメラの外部パラメータの取得技術を実現することを目的としている。
【００１１】
【課題を解決するための手段】
上記課題を解決するため、請求項１の発明のカメラ校正用チャートは、底面と複数の側面とを有する錐体と、前記複数の側面のそれぞれに表示された複数のチャートと、を備え、前記複数のチャートのそれぞれは、それぞれが既知のサイズを有する複数の単位図形の集合を含み、前記複数の単位図形のそれぞれの幾何学的形状は、前記集合内部と前記複数のチャート間との双方につき、各単位図形と観測位置との相対的位置および相対的姿勢にかかわらず、前記観測位置からの観測によって相互に識別可能にコーディングされていることを特徴とする。
【００１２】
請求項２の発明は、請求項１のカメラ校正用立体チャートにおいて、前記複数の単位図形は、前記錐体の底面に近いほどサイズが増大していることを特徴とする。
【００１３】
請求項３の発明は、請求項２のカメラ校正用立体チャートにおいて、前記錐体が角錐であり、前記複数のチャートは、各チャートと観測位置との相対的位置および相対的姿勢にかかわらず、前記観測位置からの観測によって相互に識別可能にコーディングされていることを特徴とする。
【００１４】
請求項４の発明は、請求項３のカメラ校正用立体チャートにおいて、前記複数の単位図形は、前記錐体の底面に平行な複数の第１の直線と、前記錐体の頂点に相当する位置から放射状に伸びた複数の第２の直線との交差によって形成された複数の台形であり、前記複数の台形のサイズの複比がコーディングされていることを特徴とする。
【００１５】
請求項５の発明は、請求項４のカメラ校正用立体チャートにおいて、前記角錐の頂点にマーカが設けられていることを特徴とする。
【００１６】
請求項６の発明は、請求項５のカメラ校正用立体チャートにおいて、前記マーカが発光体を含むことを特徴とする。
【００１７】
請求項７の発明は、請求項３のカメラ校正用立体チャートにおいて、前記錐体が角錐台であることを特徴とする。
【００１８】
請求項８の発明は、請求項１ないし請求項７のいずれかに記載のカメラ校正用立体チャートにおいて、前記複数の単位図形のうち互いに隣接する単位図形には、互いに異なる明度または色相の色が付されていることを特徴とする。
【００１９】
請求項９の発明のカメラ校正用チャートは、底面と側面とを有する錐体と、前記側面の１周分にわたって表示されたチャートと、を備え、前記チャートは、それぞれが既知のサイズを有する複数の単位図形の集合を含み、前記複数の単位図形のそれぞれの幾何学的形状は、前記集合内部につき、各単位図形と観測位置との相対的位置および相対的姿勢にかかわらず、前記観測位置からの観測によって相互に識別可能にコーディングされていることを特徴とする。
【００２０】
請求項１０の発明は、カメラの校正用パラメータを取得する方法であって、請求項１ないし請求項８のいずれかのカメラ校正用立体チャートを、被写体を収容すべき空間内に配置する工程と、前記カメラ校正用立体チャートの前記複数のチャートのうち少なくとも１つのチャートを、前記カメラに付随した観測位置から観測する工程と、観測されたチャートに含まれる少なくとも１つの単位図形を対象単位図形として抽出し、前記対象単位図形を、前記複数のチャートおよび前記複数の単位図形の中で同定する工程と、同定された前記対象単位図形についてあらかじめ特定されている実サイズと、前記観測位置から見た前記対象単位図形の観測サイズとの関係から、前記観測位置と前記カメラ校正用立体チャートとの相対的位置および相対姿勢に依存する前記カメラの校正用パラメータを特定する工程と、を備える。
【００２１】
請求項１１の発明は、カメラの校正用パラメータを求める装置であって、請求項１ないし請求項８のいずれかのカメラ校正用立体チャートを前記観測位置から観測して得たチャート画像から少なくとも１つの単位図形を対象単位図形として抽出し、前記対象単位図形を、前記複数のチャート相互間および前記複数の単位図形の中で同定する同定手段と、同定された前記対象単位図形についてあらかじめ特定されている実サイズと、前記観測位置から見た前記対象単位図形の観測サイズとの関係から、前記観測位置と前記カメラ校正用立体チャートとの相対的位置および相対姿勢に依存する前記カメラの校正用パラメータを算出する演算手段と、を備える。
【００２２】
請求項１２の発明のプログラムは、コンピュータを、請求項１ないし請求項８のいずれかのカメラ校正用立体チャートを前記観測位置から観測して得たチャート画像から少なくとも１つの単位図形を対象単位図形として抽出し、前記対象単位図形を、前記複数のチャート相互間および前記複数の単位図形の中で同定する同定手段と、同定された前記対象単位図形についてあらかじめ特定されている実サイズと、前記観測位置から見た前記対象単位図形の観測サイズとの関係から、前記観測位置と前記カメラ校正用立体チャートとの相対的位置および相対姿勢に依存する前記カメラの校正用パラメータを算出する演算手段として機能させることを特徴とする。
【００２３】
【発明の実施の形態】
＜システム構成の概要＞
図１は、本発明の実施形態が適用された撮像演算システム１の構成を示す図であり、図２はこの撮像演算システム１のブロック図である。図１において、撮像演算システム１は、立体的な被写体３０の画像を撮像可能な可搬性のカメラシステム１０と、被写体３０を収容した空間内において、被写体３０の近傍に配置されたカメラ校正用の立体チャート２とを備えている。立体チャート２は、後に詳述するように、略角錐状の本体の各側面にチャートパターンが施された立体物であり、チャート支持具２５０から吊り下げられている。チャート支持具２５０は台座２５１から伸びる逆Ｌ字状のアーム２５２を備え、立体チャート２はそのアーム２５２の先端付近に固定されている。好ましくは、立体チャート２は被写体３０の略上方に吊り下げられる。
【００２４】
カメラシステム１０は、デジタルカメラとしての機能を有する被写体撮影用カメラ（以下、「被写体用カメラ」と略す）１３を備えている。また、この被写体用カメラ１３の上部には、取付機構１２を介して可動式カメラ１１が姿勢変更自在に取り付けられている。可動式カメラ１１は、立体チャート２の上のパターン（図３参照）に含まれる複数の単位図形ＵＰを撮影することにより、立体チャート２と可動式カメラ１１との相対的な位置姿勢関係を特定し、さらには立体チャート２に対して相対的に固定された絶対座標系における、被写体用カメラ１３の位置および姿勢を検出するために使用される。
【００２５】
図１には示されていないが、図２にあるように、この撮影演算システム１は、たとえばノートブック型の可搬性コンピュータ１５を備えていてもよい。コンピュータ１５は通信インターフェイス１５ａを介した無線通信によってカメラシステム１０との間でコマンドやデータの授受が可能である。
【００２６】
＜立体チャートの概要＞
図３は立体チャート２の側面図である。立体チャート２は、立体チャート本体２０３と、この立体チャート本体２０３の表面上に形成されたチャートパターンＣＰとを有している。
【００２７】
このうち立体チャート本体２０３は、多角錐形状の表示部２０４と、角錐台状の支持部２０５とが一体化されており、内部は中空となっている。チャートパターンＣＰは、表示部２０４の各側面Ｔ1〜Ｔn（ｎは３以上の整数）上に付されたパターンＰ1〜Ｐnの集合である。好ましくは、多角錐の側面の数ｎは、ｎ＝３〜３６であり、より好ましくはｎ＝６〜１２である。各側面Ｔ1〜Ｔnに形成されたそれぞれのパターンＰ1〜Ｐnは平面的パターンであるが、パターンＰ1〜Ｐnが立体的に配置されることにより、このパターンＰ1〜Ｐnの集合としてのチャートパターンＣＰは立体的パターンとなっている。それぞれのパターンＰ1〜Ｐnは、それぞれが単位図形として機能する複数の台形の集合であり、その詳細は後述する。
【００２８】
また、表示部２０４を構成する多角錐の頂点には、可動式カメラ１１がチャートパターンＣＰを追尾（トラッキング）する際に基準点とするマーカ２０１として、発光ダイオード（ＬＥＤ）が取り付けられており、これによって容易かつ正確に立体チャート２の位置が可動式カメラ１１で認識できるようになっている。図３では図示されていないが、立体チャート２の内部には、この発光ダイオードに発光電力を供給するためのマーカ用電源２０２（図２）が内蔵されている。
【００２９】
＜可動式カメラ１１の概要＞
図４は可動式カメラ１１の正面図であり、図５は可動式カメラ１１のブロック図である。図５に示すように、可動式カメラ１１では、レンズユニット１１０と、このレンズユニット１１０によって結像した２次元画像を光電変換する２次元受光素子１１１とが一体となって球状ユニット１１６に納められている。２次元受光素子１１１はＣＣＤアレイである。レンズユニット１１０は、固定レンズ１１０ａとズームレンズ１１０ｂとの組み合わせであり、それらの間に絞り／シャッタ機構１１０ｅが存在する。
【００３０】
図４に示すように、球状ユニット１１６は姿勢装置１１３を介して固定部１１４に連結されており、球状ユニット１１６に内蔵された各要素とともにパン方向の±約７０°の旋回（θ回転）と、チルト方向への±約７０°の俯仰（φ回転）とが可能になっている。そして、これらのパン方向の回転駆動とチルト方向の回転駆動とを行うために、複数のピエゾ素子を内蔵した姿勢装置１１３が球状ユニット１１６の基部に配置されている。また、ズームレンズ１１０ｂの駆動に相当するズーム操作も、上記とは別のピエゾ素子によって行われる。これらのピエゾ素子にノコギリ波信号を与えることにより、ピエゾ素子による駆動の対象要素が寸動し、その繰返しによって対象要素に所要の動きが与えられる。パン方向の旋回角とチルト方向の俯仰角とは、それぞれエンコーダなどの角度センサ１２６ｐ、１２６ｔによって検出され、ズームレンズ１１０ｂの駆動量はやはりエンコーダで構成されたセンサ１２６ｚによって検出される。これらの駆動機構については、たとえば特開１９９９−１８０００号や、特開１９９９−４１５０４号に開示されている。
【００３１】
制御演算部１２０は、２次元受光素子１１１からの信号を入力して画像認識などの処理を行う画像処理部１２１と、この画像処理部１２１で得られた画像信号を記憶する画像メモリ１２２とを備えている。また、ズームレンズ１１０ｂ、姿勢装置１１３、および絞り／シャッタ機構部１１０ｅの駆動信号を発生して、これらに出力するカメラ制御部１２３が設けられており、画像処理部１２１およびカメラ制御部１２３は、通信部１２４および通信デバイス１１２を介して、被写体用カメラ１３と無線通信が可能である。この通信により画像データが被写体用カメラ１３に送信されるほか、各種情報が可動式カメラ１１と被写体用カメラ１３との間で送受信される。この実施形態の可動式カメラ１１では、通信デバイス１１２として、赤外線通信を行うためのＩＲＤＡ（Infrared Data Association）インターフェイスに対応した赤外線素子が使用されている。
【００３２】
図４に示すように、固定部１１４に設けられた第１取付溝１１５ａおよび第２取付溝１１５ｂは、被写体用カメラ１１に固定部１１４を取り付けるために用いられる。さらに、追尾ボタン１１７は、可動式カメラ１１に立体チャート２を自動的に追尾させるモード（以下、「自動追尾モード」と略す）と被写体用カメラ１３からのユーザの指示により追尾させるモード（以下、「手動モード」と略す）とを切り換えるためのボタンである。
【００３３】
図６はハードウエア構成から見た可動式カメラ１１の情報処理機能の要部を示す図であり、図７は可動式カメラ１１におけるデータの流れを示す図である。図６において、可動式カメラ１１の制御演算部１２０はＣＰＵ１３０、ＲＯＭ１３１およびＲＡＭ１３２を備えており、後記の各種の動作を実現するプログラム１３１ａはＲＯＭ１３１に記憶されている。
【００３４】
２次元受光素子１１１は、画素ごとにＲＧＢのいずれかのフィルタが付設されており、２次元受光素子１１１上に結像した光は、この２次元受光素子１１１によってＲＧＢ３原色成分ごとに光電変換される。これによって得られた信号がＡ／Ｄ変換部１４１によってデジタル画像信号に変換され、画像補正部１４２においてホワイトバランス補正やγ補正等を受ける。補正後の画像信号は画像メモリ１２２に保存される。図７における第１画像データＤ１は、この補正後の画像信号に相当する。
【００３５】
図７の認識部１４５、姿勢制御部１４６は、ＣＰＵ１３０、ＲＯＭ１３１、ＲＡＭ１３２などの機能の一部として実現される。
【００３６】
認識部１４５は、追尾ボタン１１７からのユーザの指示に応答して能動化され、可動式カメラ１１が取得した第１画像データＤ１の中から、立体チャート２の画像を認識し、第１画像データＤ１における立体チャート２の画像を追尾するための、追尾データＤＦを作成する。
【００３７】
姿勢制御部１４６は、手動モードにおいて被写体用カメラ１３から受信したユーザの指示に基づき、姿勢装置１１３を制御する。追尾ボタン１１７が押下され、自動追尾モードに変更された後においては、後述の処理によって、立体チャート２の像がＣＣＤ１１１上に常に結像されるように、姿勢装置１１３は制御される。
【００３８】
ＣＰＵ１３０はさらに、後述する処理によって図７の回転角データＤＲを作成する機能をも有する。
【００３９】
また、被写体用カメラ１３のシャッタボタンが押下されると、第１画像データＤ１と回転角データＤＲとは、通信部１２４を介して被写体用カメラ１３に送信される。
【００４０】
＜被写体用カメラ１３の概要＞
図８は、ハードウエア構成から見た、被写体用カメラ１３の情報処理機能の要部を示す図であり、図９は、被写体用カメラ１３におけるデータの流れを示す図である。被写体用カメラ１３はＣＰＵ１５０、ＲＡＭ１５１およびＲＯＭ１５２を備えており、後述する被写体用カメラ１３の各種の動作を実現するプログラム１５２ａは、ＲＯＭ１５２に記憶されている。また、シャッタボタン１６１、フラッシュ１６２、背面に設置されたモニタ用カラーディスプレイ１６３、および操作ボタン群１６４などの要素も、ＣＰＵ１５０と電気的に結合している。
【００４１】
図８および図９に示すように、レンズユニット１５５を介して被写体３０から入射した光は、画素ごとにＲＧＢのいずれかのフィルタが付設された、ＣＣＤアレイなどの２次元受光素子１５６上に結像し、２次元受光素子１５６によってＲＧＢ３原色成分ごとに光電変換される。これによって得られた信号が、Ａ／Ｄ変換部１５７によってデジタル画像信号に変換され、画像補正部１５８においてホワイトバランス補正やγ補正等を受ける。補正後の画像信号は画像メモリ１５９に記憶される。シャッタボタン１６１が押下されることにより撮影は実行され、画像メモリ１５９に記憶された画像信号が、第２画像データＤ２としてＲＡＭ１５１に保存される。
【００４２】
通信部１６７は、通信デバイス１６８を介して、可動式カメラ１１との間で、可動式カメラ１１の各部の制御信号や、取得した画像データ等の各種情報を送受信する。たとえば、手動モードにおいて、ユーザが操作ボタン類１６４の一部を操作することにより得られた信号を、可動式カメラ１１に送信することにより、可動式カメラ１１の姿勢装置１１３を、ユーザの手動によって操作することが可能となる。また、被写体用カメラ１３のシャッタボタン１６１の押下に応答して、被写体用カメラ１３と可動式カメラ１１の同時撮影を行うことも可能となる。
【００４３】
通信デバイス１６８は、可動式カメラ１１と赤外線通信を行うためのＩＲＤＡ（Infrared Data Association）インターフェイスとしての赤外線素子であり、通信部１６７によって駆動される。
【００４４】
カードスロット１６５は被写体用カメラ１３にメモリカード１６６を装着するために使用され、このメモリカード１６６には撮影した画像データ等を保存可能である。
【００４５】
図９の抽出部１７１、演算部１７３および表示制御部１７４は、図８のＣＰＵ１５０、ＲＡＭ１５１、ＲＯＭ１５２等により実現される機能である。
【００４６】
抽出部１７１は、通信部１６７を介して可動式カメラ１１から受信した第１画像データＤ１から、立体チャート２上の４点の抽出を行い、第１抽出点データＤＰ１を作成する。また、抽出部１７１は、同様に、被写体用カメラ１３により取得された第２画像データＤ２から立体チャート２上の４点の抽出を行い、第２抽出点データＤＰ２を作成する。
【００４７】
演算部１７３は、第１抽出点データＤＰ１、回転角データＤＲ、および第２抽出点データＤＰ２から、可動式カメラ１１と被写体用カメラ１３との相対的な位置と姿勢を求め、相対位置データＤＰＳを作成する。さらに、第１抽出点データＤ１、回転角データＤＲ、および相対位置データＤＰＳから、被写体撮影カメラ１３と立体チャート２との相対的な位置と姿勢を求め、撮影データＤＭを作成する。撮影データＤＭは、ＲＡＭ１５１に保存される。
【００４８】
表示制御部１７４は、操作ボタン群１６４からのユーザの指示に基づいて、第２画像データＤ２と、撮影データＤＭとを、ＲＡＭ１５１から取得して、メモリカード１６６に保存する。また、表示制御部１７４は、各種データに必要な処理を行ってディスプレイ１６３に表示させたり、メモリカード１６６に保存されている各種データをＲＡＭ１５１上に読み出したりする機能をも有する。
【００４９】
＜カメラ校正の原理＞
任意の方向から被写体用カメラ１３で被写体３０を撮影して画像を得たときには、その撮影を行った際の、立体チャート２またはそれに固定された絶対座標系に対する、被写体用カメラ１３の相対的な位置および姿勢を、外部パラメータとして特定しておく必要がある。それは、複数の方向からの撮影で得た各画像を組み合わせて被写体３０の３次元画像モデルを構築するあたっては、各画像の空間的相互関係が必要だからである。
【００５０】
しかしながら、実際に被写体３０を撮影するときには、被写体用カメラ１３の画角内に立体チャート２を入れることが困難な場合がある。そこで、
Ｘ0：立体チャート２に固定された座標系（絶対座標系）；
Ｘ1：可動式カメラ１１に固定された座標系（第１ローカル座標系）；
Ｘ2：被写体用カメラ１３に固定された座標系（第２ローカル座標系）；
τ01：第１ローカル座標系Ｘ1から絶対座標系Ｘ0への変換関係；
τ02：第２ローカル座標系Ｘ2から絶対座標系Ｘ0への変換関係；
τ12：第１ローカル座標系Ｘ2から第２ローカル座標系Ｘ1への変換関係；
とするときに成り立つ、次の関係を利用する（τ01、τ02、τ12および後述のＱ0、Ｑ2は図示していない）。
【００５１】
数１
τ02   = τ01・τ12
τ01、τ12が既知であれば、τ02が求められる。τ02が求められれば、２次元画像を撮影した被写体用カメラ１３の第２ローカル座標系Ｘ2における位置・姿勢は、この変換τ02を作用させることにより、絶対座標系Ｘ0における位置・姿勢として求められる。絶対座標系における被写体用カメラ１３の位置・姿勢を表す行列をＱ0、第２ローカル座標系Ｘ2における被写体用カメラ１３の位置・姿勢を表す行列をＱ2とすると、
【００５２】
数２
Ｑ0   = ｛τ01・τ12｝Ｑ2 = τ02・Ｑ2
のように求まることになる。
【００５３】
したがって、被写体３０に対して移動しつつ被写体用カメラ１３で被写体３０を撮影するつど、その撮影に対応する変換関係τ02を求めて、これを撮影画像に付随させれば、複数の方向で撮影した画像をＸ0 で組み合わせて被写体３０の３次元画像モデルを得ることができる。
【００５４】
この原理を実現する具体的プロセス（詳細は後述）は、第１サブプロセスと第２サブプロセスとに大別される。
【００５５】
※第１サブプロセス：
これは、２つのカメラ座標系間の変換関係τ12を特定するための、サブプロセスである。
【００５６】
まず、立体チャート２を可動式カメラ１１と被写体用カメラ１３とで同時に撮影し、それらの撮影結果を用いて、それぞれのカメラの外部パラメータ、すなわち絶対座標系Ｘ0でのそれぞれのカメラの位置および姿勢を求める。
【００５７】
これは、その状態での変換関係τ02、  τ01を特定することに対応する。そして、数１から得られる、
【００５８】
数３
τ12  = （τ01）-1  τ02
の関係から、第１ローカル座標系Ｘ1と第２ローカル座標系Ｘ2との変換関係τ12を得る。
【００５９】
また、可動式カメラ１１の回転角θ,φの値は、それぞれ角度センサ１２６ｐ、１２６ｔによって検出される既知の値であるから、変換関係τ12から回転角依存部分を分離して、可動式カメラ１１が基準姿勢（θ = ０、φ = ０）にあるときの基準変換関係τ12(0,0)を求めることができる。この基準変換関係τ12(0,0)は、カメラシステム１０を移動させたり、可動式カメラ１１を回転させても不変なオペレータである。変換関係τ12(0,0)が定まると、変換関係τ12は、回転角θ,φを変数として持つことになる。
【００６０】
このようにして得られた変換関係τ12は、絶対座標系Ｘ0におけるカメラシステム１０全体の位置や姿勢に依存しないので、カメラシステム１０を他の場所に移動させてもそこでの変換演算に利用できる。
【００６１】
※第２サブプロセス：
これは、第１サブプロセスの結果を使用しつつ、被写体３０を複数の方向から撮影して画像データを得るとともに、それらの画像データのそれぞれにつき、第２ローカル座標系Ｘ2から絶対座標系Ｘ0への変換関係τ02に相当する情報を付加していくサブプロセスである。
【００６２】
第２サブプロセスでは、被写体用カメラ１３で被写体３０を撮影すると同時に、可動式カメラ１１で立体チャート２を撮影する。可動式カメラ１１で撮影した立体チャート２の画像データから、第１ローカル座標系Ｘ1から絶対座標系Ｘ0への変換関係τ01が特定される。
【００６３】
一方、第１サブプロセスによって、第２ローカル座標系Ｘ2から第１ローカル座標系Ｘ1への変換関係τ12の回転角依存性は特定されているから、被写体３０を撮影するときの回転角θ,φの値から、変換関係τ12の具体的内容が特定される。したがって、変換関係τ12およびτ01を合成した変換関係τ02を、数４から得ることができる。
【００６４】
数４
τ02   = τ01・τ12
そして、この変換関係τ02を表現する情報を、被写体用カメラ１３で得た画像に付随させて記憶する。
【００６５】
またこの第２サブプロセスは、複数の方向から被写体３０を撮影するつど実行され、それによって、３次元画像モデルを得るための一群の情報が得られることになる。
【００６６】
＜撮影および校正プロセス＞
図１０および図１１は、上記の原理にしたがった撮影および校正プロセスを示す図である。このうちステップＳ１からステップＳ５までは、可動式カメラ１１と被写体用カメラ１３とで立体チャート２を同時に撮影することによって、両者の相対位置・姿勢を求める、上記第１サブプロセスに対応する。また、ステップＳ６以後が、実際に被写体３０の撮影を行う上記第２サブプロセスに対応する。
【００６７】
（１）  カメラ間の相対位置の決定（第１サブプロセス）：
まず、可動式カメラ１１と被写体用カメラ１３とのそれぞれが、自身で保持している内部パラメータの情報を読み出し、それらに基づいて内部パラメータの校正を行う（ステップＳ１）。このような内部パラメータとしては、レンズシステムの焦点距離などがある。たとえば、焦点距離が比較的短いことによって実質的な結像倍率Ｍが小さい場合、立体チャート２の画像は、その２次元受光素子上に比較的小さいサイズで結像する。また、焦点距離が比較的長いことによって実質的な結像倍率Ｍが大きい場合、立体チャート２の画像は、その２次元受光素子上に比較的大きいサイズで結像する。このため、２次元受光素子上における画像のサイズを、実質的な結像倍率Ｍで除算することによって、焦点距離に依存しない基準状態に換算される。このような処理が内部パラメータによるカメラ校正であり、これは被写体用カメラ１３内で自動的に行うことができる。
【００６８】
このような内部パラメータによる校正が完了した後、ユーザはカメラシステム１０を手に持ち、被写体用カメラ１３を立体チャート２に向ける。次に、この姿勢を保ちながら、立体チャート２が可動式カメラ１３の画角に入るように、レンズユニット１１０の回転角度を手動で指定する（ステップＳ２）。この動作の際には、可動式カメラ１３の出力画像がディスプレイ１６３にライブ表示されており、これによってユーザは、立体チャート２が可動式カメラ１３の画角に入ったかどうかを視覚的に確認できる。
【００６９】
立体チャート２が可動式カメラ１１の画角の中に入った後、ユーザが自動追尾ボタン１１７を押すと、自動追尾プログラムが能動化される。姿勢制御部１４６から姿勢装置１１３に駆動出力が与えられて、マーカ２０１を追尾しつつ、立体チャート２が常に画角の中央にくるように、可動式カメラ１１が自動制御されるようになる。ここでユーザがシャッタボタン１６１を押すと、可動式カメラ１１において第１画像データＤ１が、被写体用カメラ１３において第２画像データＤ２が得られる（ステップＳ３）。図１２に可動式カメラ１１と被写体用カメラ１３とで同時に得られた画像データの例を示す。このうち、図１２（ａ）が可動式カメラ１１の撮像画像例、図１２（ｂ）が被写体用カメラ１３の撮像画像例である。図１２（ａ）、（ｂ）のいずれにおいても、画像平面をｘｙ直角座標系で定義された平面とし、ｘｙ平面に垂直で、画像より手前に向かう方向をｚ軸としている。なお、第ｉ層という呼び方については、後述する図１８での定義に準じている。
【００７０】
そして、このステップＳ３では、たとえば、図１２（ａ）、（ｂ）で共通の４つの格子点Ｃ１〜Ｃ４の２次元座標値をそれぞれの画像平面上で特定し、それらの２次元座標値を後述するアルゴリズムで処理することによって、可動式カメラ１１と被写体用カメラ１３とのそれぞれの外部パラメータを算出する。
【００７１】
撮影が完了すると、第１画像データＤ１および姿勢装置１１３の回転角データＤＲが、通信によって可動式カメラ１１から被写体用カメラ１３に送られる。被写体用カメラ１３では、これらに基づいて、可動式カメラ１１の外部パラメータ、すなわち立体チャート２に対する可動式カメラ１１の相対位置と相対姿勢とが計算される。また、第２画像データＤ２からは、被写体用カメラ１３の外部パラメータ、すなわち立体チャート２に対する被写体用カメラ１３の相対位置と相対姿勢とが計算される（ステップＳ４）。なお、この計算に必要な情報が得られない場合には、ステップＳ３に戻って立体チャート２の撮影を繰り返す。
【００７２】
この外部パラメータの算出は、
1)  カメラの内部パラメータ、および
2)  絶対座標系に固定された同一平面上にある４点以上の点の３次元座標値、
が既知であり、かつ、
3)  これらの点に対応する撮影画像上の点の２次元座標値が算出可能、
という条件の下で行うことができる。この算出に利用することができるアルゴリズムは、たとえば下記の文献に開示されており、以下では「多点解析アルゴリズム」と呼ぶことにする。
【００７３】
・L.Quan, Z.Lan, "Linear N-Point Camera Pose Determination", IEEE Trans.PAMI 21(8) 1999：
・高橋、石井、牧野、中静、”人工現実感インターフェースのための単眼画像からのマーカの位置と姿勢の計測"、電子情報論文誌AJ79  1996。
【００７４】
次に、ステップＳ４で得られたそれぞれのカメラ１１，１３の外部パラメータと、可動式カメラ１１の回転角データＤＲとから、可動式カメラ１１と被写体用カメラ１３との相対位置・姿勢（以下これらを「カメラ間パラメータＰＭＣ」と呼ぶ）が求められる（ステップＳ５）。
【００７５】
ステップＳ５において用いられる座標変換の様子を図１３に示す。図１３における各座標系などの定義は以下の通りである。
【００７６】
X0    …立体チャート２に対して相対的に固定された３次元直角座標系（絶対座標系）；
θ  …可動式カメラ１１の旋回角；
φ  …可動式カメラ１１の俯仰角；
X1(θ,φ)  …可動式カメラ１１からの観測空間に相当する３次元直角座標系（第１ローカル座標系）；
X1h  …角度θ,φの双方がゼロの場合の第１ローカル座標系；
X2  …被写体用カメラ１３からの観測空間に相当する３次元直角座標系（第２ローカル座標系）。
【００７７】
ステップＳ４によってそれぞれのカメラ１１，１３の外部パラメータが得られるため、絶対座標系X0 における第１ローカル座標系X1(θ,φ)の位置および姿勢が決定され、したがって第１ローカル座標系X1(θ,φ)から絶対座標系X0 への座標変換が、回転行列RC1、および平行移動ベクトルTC1を用いて、
【００７８】
数５
X0 = RC1X1（θ、φ）+TC1
のように定まる。同様に、第２ローカル座標系X2から絶対座標系X0 への座標変換が、回転行列RC2 、および平行移動ベクトルTC2を用いて、
【００７９】
数６
X0 = RC2X2+TC2
のように定まる。これら数５、数６がそれぞれ、既述した変換関係τ01、τ02 に相当する。
【００８０】
回転角θ,φがゼロでないことによる回転変換は、可動式カメラ１１の姿勢装置１１３が有する回転機構の設計データから、回転行列RX(θ,φ）および平行移動ベクトルTX(θ,φ）を用いて、
【００８１】
数７
X1 = RX(θ,φ）X1h+TX(θ,φ）
の形式で得られる。第２ローカル座標系X2から、回転角θ,φがともにゼロのときの第１ローカル座標系X1hへの座標変換が、回転行列Rhおよび平行移動ベクトルThを用いて、
【００８２】
数８
X1h= RhX2+Th
と表されるとすると、数８が、変換関係τ12(0,0)に相当する。また、数８を数７に代入すると、
【００８３】
数９
X1 = Rm(θ,φ）X2+Tm(θ,φ）
が得られる。ただし、
【００８４】
数１０
Rm(θ,φ） = RX(θ,φ）Rh
Tm(θ,φ） = RX(θ,φ）Th  +TX(θ,φ）
である。数９および１０が、変換関係τ12 に相当する。
【００８５】
したがって、立体チャート２上を可動式カメラ１１と被写体用カメラ１３とで同時に撮影したそれぞれの画像から、それぞれのカメラの外部パラメータを求めれば、既述した変換関係τ12 に相当するものとしての数９、数１０の変換式が特定される。これが図９の相対位置データＤＰＳである。また、角度θ、φの具体的な値は角度センサ１２６ｐ、１２６ｔによって角度データＤＲとして検出される。
【００８６】
（２）  被写体の撮影とカメラの校正（第２サブプロセス）：
ステップＳ５が終了すると、被写体３０の撮影を行うため、カメラシステム１０を適宜移動させる。このとき、可動式カメラ１１は、自動追尾により常に立体チャート２を画角に捉えている（ステップＳ６）。
【００８７】
被写体用カメラ１３によって被写体３０が、可動式カメラ１１によって立体チャート２がそれぞれ撮影可能な状態になったところで、被写体用カメラ１３のシャッタボタン１６１を押下すると、それぞれのカメラで同時に撮影が行われる（ステップＳ７）。図１４に、これらのカメラ１１，１３で得られた画像例を示す。図１４（ａ）が可動式カメラ１１の撮像で得られる画像例であり、図１４（ｂ）が被写体用カメラ１３の撮像画像例である（楕円によって被写体３０の画像を単純化してある）。座標軸の取り方については図１２と同様である。図１４（ａ）の状態では、立体チャート２から可動式カメラ１１までの距離や方向が図１２（ａ）とは異なっているため、可動式カメラ１１は立体チャート２のうち図１２（ａ）とは異なる部分を撮影している。しなしながら、可動式カメラ１１がマーカ２０１を自動追尾していることによって、マーカ２０１は常に可動式カメラ１１の画角内の同一位置に写っている。
【００８８】
このとき、可動式カメラ１１で得られた画像から、ステップＳ４と同様に、可動式カメラ１１の絶対座標系X0における位置および姿勢（外部パラメータＰＭ１）が求められる（ステップＳ８）。
【００８９】
この可動式カメラ１１の外部パラメータＰＭ１と、ステップＳ５で求めたカメラ間パラメータＰＭＣ、およびステップＳ７における可動式カメラ１１回転角θ、φのそれぞれの値θ'、φ'から、被写体用カメラ１３の、立体チャート２に対する相対位置・姿勢（すなわち被写体用カメラ１３の外部パラメータＰＭ２）が求められる（ステップＳ９）。
【００９０】
撮影後、被写体３０の画像データＤ２とともに、撮影時の被写体用カメラ１３の外部パラメータＰＭ２の値が、ＲＡＭ１５１、あるいはメモリカード１７６に記録される（ステップＳ１０）。
【００９１】
ステップＳ６からの撮影処理を、被写体３０に対するカメラシステム１０の方向を変化させつつ、複数回繰り返す。そして、被写体３０の３次元画像モデル  を構築するために必要な数の第２画像データＤ２、およびそれぞれについての外部パラメータＰＭ２の値が得られると、この第２サブプロセスは完了する。外部パラメータＰＭ２は、図９の撮影データＤＭに相当する。
【００９２】
上記のステップＳ９において用いられる座標変換の様子を、図１５に示す。図１５において、座標系X0、X1(θ,φ)、X2などの記号の定義は、図１３と共通である。被写体撮影時の、可動式カメラ１１のカメラ回転角をθ’、φ’とする。
【００９３】
可動式カメラ１１によって得られる立体チャート２の画像を、多点解析アルゴリズムで解析することにより、絶対座標系X0における可動式カメラ１１の位置と姿勢（すなわち可動式カメラ１１の外部パラメータＰＭ１）が特定され、それによって可動式カメラ１１の第１ローカル座標系X1(θ’,φ’)との変換関係：
【００９４】
数１１
X0 = RCP1X1(θ',φ')+TCP1
が定まる。
【００９５】
また、第１ローカル座標系X1(θ’,φ’)と第２ローカル座標系X2との変換関係は、数９〜数１０によって、
【００９６】
数１２
X1(θ',φ'） = Rm(θ',φ'）X2+Tm(θ',φ'）
Rm(θ',φ'） = RX(θ',φ'）Rh
Tm(θ',φ'） = RX(θ',φ'）Th  +TX(θ',φ'）
で与えられる。
【００９７】
よって、数１１、数１２より、第２ローカル座標系X2で表現された位置および姿勢から、絶対座標系X0での位置および姿勢に変換する変換関係が、
【００９８】
数１３
X0 = RCP1 Rm(θ',φ'）X2+RCP1Tm(θ',φ'）+TCP1
のように得られる。
【００９９】
数１３に現れている諸量のうち、回転行列 RCP1および平行移動ベクトルTCP1は可動式カメラ１１についてのものであって、可動式カメラ１１の外部パラメータＰＭ１から決定される。また、回転行列Rm(θ',φ'）および平行移動ベクトルTm(θ',φ'）は、あらかじめ特定しておいた関数形Rm(θ,φ）、Tm(θ,φ）に、角度センサ１２６ｐ、１２６ｔによって検出された角度値θ',φ'を代入して決定される。
【０１００】
したがって、数１３を、
【０１０１】
数１４
X0 = RCP2X2+TCP2
RCP2 = RCP1 Rm(θ',φ'）
TCP2 = RCP1Tm(θ',φ'）+TCP1
の形に変形すると、回転行列RCP2および平行移動ベクトルTCP2は、被写体用カメラ１３の外部パラメータＰＭ２を表現した内容となっている。それらは撮影データＤＭ（図９）として、第２画像データＤ２とともに保存され、第２画像データＤ２に基づいて３次元画像モデルを構築する際に、複数の方向から得られた被写体３０の画像を組み合わせるために使用される。この３次元画像モデルの構築は、コンピュータ１５で行ってもよく、他の演算システムで行ってもよい。
【０１０２】
＜複比のコーディングによるチャートの識別＞
ここからは、立体チャート２の側面のコーディングの方法について説明する。図３に示すように、立体チャート本体２０３の表示部２０４は正多角錐であり、その各側面Ｔ1〜Ｔnは同一の二等辺三角形状をしている。その表面には、当該側面を構成する三角形の底面方向ＤＲ１（図１６参照）に平行な複数の直線Ｌ１と、立体チャート２の頂点に相当する頂点x0を通る放射線状の複数の直線Ｌ２とが描画されている。これらの直線の交差によって作られる台形形状の単位図形ＵＰ（以下これを「単位台形」という）は、画像処理の際に直線の抽出が容易になるよう、交互に異なる明度の色で塗り分けられて高コントラストパターンとされている。典型的には第１の組の単位台形ＵＰ１が黒であり、第２の組の単位台形ＵＰ２が白である。
【０１０３】
そして、これらの単位台形ＵＰのサイズが、複比によりコーディングされている。より具体的には、
1)  これらの単位台形ＵＰを成す直線群Ｌ１の相互間の間隔と、
2)  直線群Ｌ１と直線群Ｌ２との交点（格子点）の底面方向ＤＲ１における間隔と、
のそれぞれを、複比によりコーディングする。図１７にこの複比の概念を示すが、複比は任意の視点を通した空間射影によって変化しない値であり、３次元空間に存在する直線上の４点Ｐ1〜Ｐ4から求められる複比ＤＲ：
【０１０４】
数１５
ＤＲ＝Ｖａ／Ｖｂ
Ｖａ＝dis(Ｐ0Ｐ1)・dis(Ｐ2Ｐ3)
Ｖｂ＝dis(Ｐ0Ｐ2)・dis(Ｐ1Ｐ3)
ただし、記号dis(Ｐ0Ｐ1)は点Ｐ0と点Ｐ1との距離を示す：
は、その直線を視点Ｏを通して任意の平面上に射影したときに、それら４点Ｐ1〜Ｐ4に対応する４点Ｐ'1〜Ｐ'4から求まる複比ＤＲ'：
【０１０５】
数１６
ＤＲ'＝Ｖａ'／Ｖｂ'
Ｖａ’＝dis(Ｐ'0Ｐ'1)・dis(Ｐ'2Ｐ'3)
Ｖｂ’＝dis(Ｐ'0Ｐ'2)・dis(Ｐ'1Ｐ'3)
と等しいことが知られている。
【０１０６】
この性質を利用すると、図３および図１６に示したような単位台形ＵＰを成す直線群Ｌ１相互の間隔を、各単位台形ＵＰを形成する層ごとに複比でコーディングし、かつ底面方向ＤＲ１での格子点相互の間隔を、各側面Ｔ1〜Ｔnごとに異なる複比でコーディングしておくと、立体チャート２を可動式カメラ１１や被写体用カメラ１３で撮影した画像に含まれている各単位台形ＵＰが、立体チャート２の側面Ｔ1〜Ｔnのうちのどの側面に存在する、どの単位台形であるかを、一意的に識別できるようになる。以下にその一例を示す。
【０１０７】
図１６では、底面に垂直な方向（頂点方向ＤＲ２）に配列する直線Ｌ１の間隔が、複比によってコーディングされた例を示している。複数の単位台形のうち、互いに連続する３つの単位台形の高さの複比が、３つの単位台形の組ごとに異なるようにコーディングされている。
【０１０８】
すなわち、立体チャート２の頂点x0を端点として、底辺に平行な直線ｘ1、ｘ2…が定義されており、「第ｉ層」を、「直線ｘiと直線ｘ(i+1)との間の領域」として定義するとき、第ｉ層〜第(i+3)層（ｉ＝1,2,…）の、頂点方向ＤＲ２方向のそれぞれの位置の複比ＤＲiが、
【０１０９】
数１７
ＤＲi＝Ｖａi／（Ｖｂi・Ｖｂ(i+1)）
Ｖａi＝dis(xix(i+1))・dis(x(i+2)x(i+3))
Ｖｂi＝dis(xix(i+1))＋dis(x(i+1)x(i+2))
Ｖｂ（i+1）＝dis(x(i+1)x(i+2))＋dis(x(i+2)x(i+3)）
ないしは、これを書き換えて、
【０１１０】
数１８
ＤＲi＝Ｖａi／ＶBi
Ｖａi＝dis(xix(i+1))・dis(x(i+2)x(i+3))
ＶBi＝dis(xix(i+2))＋dis(x(i+1)x(i+3)）
と定義され、それぞれの複比ＤＲiが図１８に示すような値とされている。それぞれの単位台形は、角錐体の底面に近いほどサイズ（幅および高さ）が増大している。
【０１１１】
また、この実施形態では、頂点方向ＤＲ２の直線ｘ1、ｘ2・・・の間隔の移動平均は、頂点からの距離に略比例するように決められている。すなわち、図１８から各層の位置は、「17.000、22.500、31.000…」であって、それらの差は
5.500（＝22.500−17.000）
8.500（＝31.000−22.500）
…
となっており、これら一連の差のうち連続した４つの移動平均は図１９のようになる。図１９からわかるように、各層の位置の差（層の厚さ）の移動平均は漸増しているが、「移動平均／（頂点からの層の）位置」すなわち比例係数に相当する値の変動は、約２０％以内である。したがって、移動平均は、頂点からの距離にほぼ比例している。
【０１１２】
一方、頂点を中心として放射状に伸びる直線ｙ1、ｙ2…と、上記直線ｘ1、ｘ2…の交点の、底面方向ＤＲ１についての間隔については、立体チャート２の各側面Ｔ1〜Ｔnが相互に識別できるように決定しておく。図２０に、立体チャート２が六角錐である場合の例を示す。図１６および図２０においてａ、ｂ、ｃ、ｄは底辺における直線ｙ1、ｙ2…間の間隔である。
【０１１３】
この例では、
【０１１４】
数１９
ＤＲα＝（ａ・ｃ）／｛（ａ＋ｂ）・（ｂ＋ｃ）｝
ＤＲβ＝（ｂ・ｄ）／｛（ｂ＋ｃ）・（ｃ＋ｄ）｝
として定義される２種類の複比ＤＲα、複比ＤＲβのそれぞれが、
1)  それぞれの側面Ｔj（ｊ＝1〜6）の中では、直線ｘ1、x2…のいずれにおいても、直線ｙ1、ｙ2…とのそれぞれの交点の列について共通であり、かつ
2)  異なる側面の相互では互いに異なる、
ように、それらの値がコーディングされている。
【０１１５】
＜撮影箇所の同定＞
図２１は、可動式カメラ１１や被写体用カメラ１３による立体チャート２の撮影において、立体チャート２のどの部分が撮影されているのかを同定するプロセスを示すフローチャートである。図２２は、直線のグルーピングについての説明図である。
【０１１６】
※直線のグルーピング：
まず、撮像された画像の濃淡のエッジを抽出する（ステップＳ９１）。エッジを抽出する方法は、Sobelオペレータなど様々な手法が知られており、たとえば、長尾真著「画像認識論」コロナ社，1983に開示されたアルゴリズムを使用する。図２２（ａ）の画像について、エッジを抽出した例が図２２（ｂ）である。
【０１１７】
次に、抽出されたエッジから直線を抽出する（ステップＳ９２）。直線を抽出する方法は、HOUGH変換が一般的な手法として知られており、たとえば上記長尾真の文献に記載された方法を用いてエッジ画像から複数の直線を抽出し、撮像上の２次元平面における直線の式を決定できる。図２２の（ｂ）について、エッジを抽出した例が図２２（ｃ）である。
【０１１８】
抽出された複数の直線は、直線の性質ごとに以下のような複数のグループにグルーピングされる（ステップＳ９３）。
【０１１９】
・平行な直線群（以下これをαiとする。iは傾きが同じ直線群を表す）；
・αiに属する各々の直線の端点を通る直線（これをβとする）；
・αiに交差する直線群（以下これをγiとする。iは交差する直線群αiのiと対応している）。
【０１２０】
図２２（ｃ）の例では、各直線が、傾きの異なる２つの直線群α1、α2と、これらに対応する直線群γ1およびγ2、さらに交差直線βにグルーピングされることになる。
【０１２１】
さらに、交差直線βおよびγiは１点で交わっていることから、この交点が立体チャート２のマーカ２０１に相当する。これより、立体チャート２を成す錐の辺に相当する直線が直線β、底面に平行な直線が直線αi、錐の側面を通る直線が直線γiであると判断することができる。これにより、画像上の単位台形のそれぞれに関連する交点の複比を算出する。
【０１２２】
※撮影箇所の同定：
まず、撮影を行う前に、立体チャート２の各側面Ｔ1〜Ｔnにおける直線群について、絶対座標系X0で表した交点（格子点）の座標と、それらの交点の間隔から計算される複比のデータとを、ＲＡＭ１５１（図８）にあらかじめ記憶しておく。そして、カメラ１１または１３によって立体チャート２を撮影した際に、それによって得られた画像から、頂点方向ＤＲ２に連続する３つの層、ないしは単位台形を特定して、それらの高さから複比を算出する。
【０１２３】
図２３に、立体チャート２の同じ側面を、異なる距離から撮影したときの画像例を示す。図２３（ａ）は遠距離から、図２３（ｂ）は近距離から撮影した例である。単位台形の頂点方向ＤＲ２の間隔は、頂点からの距離に略比例している。
【０１２４】
直線の間隔についての複比を計算するには、同一直線上で連続する４点が観測できればよい。すなわち、画角内にあり、かつ複比を精度よく計算するのに十分な間隔で連続する４つの直線が、それらと交差する他の１直線との関係で観測できればよいことになる。多数の直線が画像中に存在する場合は、たとえば次の直線と所定の閾値間隔以上の間隔を持ち、かつ頂点（マーカ２０１）の直上側において、頂点に最も近い位置で配列している４直線を選択する。そしてその４本の直線と、頂点方向ＤＲ２に沿って伸びる１つの直線との４交点を抽出し、それらの間隔の複比を計算する。この抽出において得られるデータのうち、可動式カメラ１１の撮影で得られるものが図９の第１抽出点データＤＰ１であり、被写体用カメラ１３の撮影で得られるものが第２抽出点データＤＰ２である。
【０１２５】
図２３（ａ）では、それぞれが底面方向ＤＲ１に伸び、かつ第７層から第９層のそれぞれの上下を規定する４直線ｘ7〜ｘ10を、また、図２３（ｂ）では第３層から第５層のそれぞれの上下を規定する４直線ｘ3〜ｘ6を、この４直線として選択できる。このようにして４直線を選択することにより、いずれの画像においても、十分に複比の算出が可能となる。複数の側面が撮影されていれば、たとえば最も画像中心に近い側面を選択する。
【０１２６】
また、立体チャート２が角錐形状であるため、種々の方向から立体チャート２の撮影を行っても、自動追尾によりマーカ２０１を検出していれば、少なくとも１つの側面を十分に観測することが可能である。
【０１２７】
このようにして選択された４直線で挟まれるエリアに存在する、複数の単位台形のうちの１つを、対象単位台形（対象単位図形）として選択する。対象単位台形は、たとえば上記の４直線の中の中間側の２直線で挟まれ、かつ画面の中央に最も近い単位台形を選択するというような選択規則によって選ぶことができる。図２３の例では、たとえば単位台形ＵＰA、ＵＰBを対象単位台形として選択することができる。
【０１２８】
そして、上記４直線につき、頂点方向ＤＲ２について画像上の間隔から複比を対象複比として求め、ＲＡＭ１５１にあらかじめ記憶しておいた各側面の直線間隔の複比の値（図１８）を、対象複比と比較して照合する。これにより、その４直線が、立体チャート２の何層目から何層目を規定する４直線であり、かつ対象単位台形が、立体チャート２のどの単位台形であるかを特定することができる（ステップＳ９４）。
【０１２９】
ところで、角錐体の底面に近いほど、単位台形の頂点方向のサイズを増大させていることによって、以下のような利点がある。
【０１３０】
まず、比較的近い距離から立体チャート２を撮影することによって、比較的少数の単位台形だけが画像内に存在する場合（図２３（ｂ））には、マーカ２０１に近い単位台形が比較的大きく撮影される。
【０１３１】
逆に、比較的遠い距離から立体チャート２を撮影することによって、各単位台形の撮影サイズが比較的小さくなる場合には、角錐の底面に近い、実サイズが大きな単位台形が画像内に存在するため（図２３（ａ））、それは画像上の観測サイズとしてあまり小さくならない。
【０１３２】
したがって、近距離からの撮影の場合と、遠距離からの撮影の場合との双方において、常に画像処理における精度を確保するために十分なサイズを持つ単位図形が画像に含まれていることになり、その結果、撮影距離にあまり依存せずに演算精度を高くできる。これが、角錐体の底面に近いほど、単位台形の頂点方向のサイズを増大させていることの利点である。
【０１３３】
対照単位台形が同定されたことによって、立体チャート２に対するカメラの相対位置・姿勢、すなわち絶対座標系X0における外部パラメータの算出が可能となる（ステップＳ９５）。以下にこれを説明する。
【０１３４】
まず、ＲＡＭ１５１には、図２０に示す角錐の側面Ｔ1〜Ｔnごとの距離ａ、ｂ、ｃ、ｄの複比と、角錐の各側面Ｔ1〜Ｔnが絶対座標系X0のどの方向に向いているかの情報とが、互いに関連づけられ、テーブルとしてあらかじめ記憶されている。したがって、上記４直線のうちの１つ（たとえば図２３（ａ）の例では、対象単位台形の辺のうち頂点に近い辺が属する直線ｘ7）上で底面方向ＤＲ１に連続する４交点の画像上の座標を特定し、それらの間隔の複比を計算して上記テーブルと照合することにより、対象単位台形が属する側面を、その時点でカメラにほぼ正対している観測側面として同定する。そして観測側面が側面Ｔ1〜Ｔnのうちのいずれかであるかによって、立体チャート２に対するカメラの相対姿勢を絶対座標系X0において知ることができる。
【０１３５】
立体チャート２に対するカメラの相対姿勢をさらに詳細に知るには、たとえば対象単位台形の４頂点の座標値から、その対象単位図形の外周を規定する４辺の長さの比を求める。この比は、絶対座標系における対象単位台形の法線方向からカメラの撮像軸線がどれだけ傾いているかによって変化する。したがって、この比から当該側面の法線方向からのカメラの撮像軸線の方向を特定できる。
【０１３６】
対象単位台形が特定され、立体チャート２に対するカメラの相対姿勢が求められると、あらかじめＲＡＭ１５１に記憶させておいた各単位台形の実サイズ情報のうち、その対象単位台形に対応する単位台形の実サイズ情報を読み出す。そしてその対象単位台形について、画像上のサイズとその実サイズとの比率ｒを求める。比率ｒは、立体チャート２とカメラとの距離Ｌ、および立体チャート２に対するカメラの相対姿勢の関数であるが、相対姿勢は上記のように求められることから、距離Ｌは結局、比率ｒの関数ｆ（ｒ）として表現できることになる。よって、この関数ｆ（ｒ）に相当する演算式または数値テーブルを記憶しておくことにより、比率ｒから距離Ｌが計算できる。距離Ｌと、立体チャート２に対するカメラの相対姿勢とから、立体チャート２に対するカメラの相対位置が求められる。
【０１３７】
以上のように、本実施形態に係る立体チャート２を撮影することによって、カメラの位置および姿勢の校正のための校正パラメータのうち、外部パラメータを正確に取得することができる。
【０１３８】
＜変形例＞
◎１つの対象単位図形だけでなく、複数の対象単位図形を選択してそれぞれにつき外部パラメータを計算し、得られた複数の外部パラメータを平均化すれば外部パラメータの計算精度がさらに向上する。
【０１３９】
◎上記の実施形態では、被写体用カメラ１３においてカメラの外部パラメータの計算を行っており、被写体用カメラ１３が校正用情報処理装置として機能する。その代わりに、コンピュータ１５（図２）が双方のカメラ１１，１３と通信し、このコンピュータ１５によって、各々のカメラ１１，１３の同期制御や、画像データの演算処理、およびデータの保存を行うことができる。この場合にはコンピュータ１５がカメラの校正用情報処理装置として機能する。
【０１４０】
◎可動式カメラ１１において画像データの演算処理を行って外部パラメータを算出し、コンピュータ１５または被写体用カメラ１３と通信する構成をとってもよい。これらの装置間の情報伝達を、通信ケーブルを介して行ってもよい。
【０１４１】
◎上記実施形態では、可動式カメラ１１の外部パラメータの算出は、被写体用カメラ１３が撮影を行った際にのみ実行されているが、可動式カメラ１１がリアルタイムに捉えている立体チャート２の画像から、立体チャート２のどこを捉えているのかを逐次求めて、外部パラメータをリアルタイムで算出してもよい。この場合、画像上における立体チャート２の頂点の位置を、リアルタイムで把握することからマーカ２０１を省略できる。
【０１４２】
◎また、上記の実施形態において、画像から抽出された直線をグルーピングした後に直線の交点、すなわち単位台形の格子点座標を求めているが、コーナー抽出オペレータにおいて格子点の座標を抽出した後、格子点を通る直線を決定してもよい。あるいは、立体チャート２上の直線をどのように射影すれば、得られたエッジ画像と合致するかを、繰り返し演算処理を行うことで求め、それによって外部パラメータを算出してもよい。
【０１４３】
◎上記の実施形態において４直線の抽出を行うに際しては、立体チャート２の頂点は、必ずしも必須ではない。そこで、立体チャート２として、角錐体のうち頂点を含む部分を底面に平行な平面で切り落としてできる立体、たとえば図２４（ａ）のような角錐台形状の立体を用いることができる。
【０１４４】
◎隣接する単位台形は、互いに異なる色相で塗り分けられていてもよい。
【０１４５】
◎可動式カメラ１１と被写体カメラ１３とは、連結機構を介して間接的に連結してもよい。
【０１４６】
◎立体チャート２は、床上に配置することもできる。このときには角錐体の底面を下に向けることが好ましい。
【０１４７】
◎立体チャート２は、正多角錐ではない多角錐（非等多角錐）でもよい。もっとも、正多角錐を使用することにより、周囲の各方向からの単位図形の観測精度が同程度となるという利点がある。
【０１４８】
◎図２４（ｂ）のように、立体チャート２として円錐を用いることもできる。この場合にはチャートは単一の側面としての曲面上に描かれるため、単位台形の識別に際して曲線間の間隔の複比を求めるように構成する。また、円錐の場合には側面は１つであるため、側面相互の区別は不要であり、側面に沿って一周する範囲の各単位台形の辺の複比をすべて異なるように構成する。円錐の場合にはその周囲のすべての方向につき同精度で単位図形の観測が可能である。
【０１４９】
◎可動式カメラ１１の手動による操作を、被写体用カメラ１３の操作キーにより行える装置構成であってもよい。
【０１５０】
◎マーカ２０１に発光性を持たせず、蛍光塗料を塗布したものなどであってもよく、単なる頂点であっても追尾（トラッキング）に使用することができる。
【０１５１】
【発明の効果】
以上、説明したように、請求項１ないし請求項８の発明によれば、単位図形が各方向に存在しており、立体チャートをどの方向から観測しても少なくとも１つの単位図形がその正面に近い方向から観測できるとともに、コーディングによって、その単位図形が錐体のどの側面のどの位置に形成された単位図形であるかを識別できるようになっているため、カメラの校正パラメータ測定において広い可動範囲を確保しつつ高い測定精度が得られる。
【０１５２】
特に、請求項２の発明では、錐体の底面に近いほどサイズが増大しているため、頂点側を中心としてチャートの画像を撮影することにより、立体チャートとカメラとの距離にかかわらず、画像中の単位図形のサイズを比較的大きくできる。
【０１５３】
特に、請求項３の発明では、各錐を使用していることにより、各側面が平面となり、その画像処理が容易である。
【０１５４】
特に、請求項４の発明では、台形の高さの複比によってコーディングされているため、比較的簡単なアルゴリズムで単位図形を同定できる。
【０１５５】
特に、請求項５の発明では、角錐の頂点にマーカが設けられているためにその追尾が容易かつ正確である。
【０１５６】
特に、請求項６の発明では、マーカが発光体を含むため、その追尾が特に容易かつ正確である。
【０１５７】
特に、請求項８の発明では、隣接する単位図形には、互いに異なる明度または色相の色が付されているため、その画像認識が容易である。
【０１５８】
請求項９の発明によれば、側面が１つの錐体につき単位図形が各方向に存在しており、立体チャートをどの方向から観測しても少なくとも１つの単位図形がその正面に近い方向から観測できるとともに、コーディングによって、その単位図形が錐体のどの位置に形成された単位図形であるかを識別できるようになっているため、カメラの校正パラメータ測定において広い可動範囲を確保しつつ高い測定精度が得られる。
【０１５９】
また、請求項１０ないし請求項１２の発明によれば、請求項１ないし請求項８の立体チャートを利用して、広い可動範囲を確保しつつ高い測定精度でカメラの校正パラメータを測定可能である。
【図面の簡単な説明】
【図１】本実施形態に係る校正用チャートを用いた撮像演算システムの構成例を示す図である。
【図２】図１の撮像演算システムのブロック図である。
【図３】本実施形態に係る校正用立体チャートの側面の例を示す図である。
【図４】チャート撮影用可動式カメラの正面図である。
【図５】チャート撮影用可動式カメラのブロック図である。
【図６】チャート撮影用可動式カメラの情報処理機能の要部を示す図である。
【図７】チャート撮影用可動式カメラのデータの流れを示す図である。
【図８】被写体撮影用デジタルカメラの情報処理機能の要部を示す図である。
【図９】チャート撮影用可動式カメラのデータの流れを示す図である。
【図１０】本実施形態に係るカメラ校正用チャートを用いた撮影および校正の手順のうち、第１サブプロセスに相当する手順を示す図である。
【図１１】本実施形態に係るカメラ校正用チャートを用いた撮影および校正の手順のうち、第２サブプロセスに相当する手順を示す図である。
【図１２】チャート撮影用可動式カメラと被写体撮影デジタル用カメラが、同時に本発明に係るカメラ校正用チャートを撮影したときの、各々の撮像例を示す図である。
【図１３】チャート撮影用可動式カメラに対する、被写体撮影用デジタルカメラの相対位置・姿勢を算出する際に用いる、座標変換の様子を示す図である。
【図１４】被写体撮影用デジタルカメラが被写体を撮影するときの、チャート撮影用可動式カメラと被写体撮影用デジタルカメラの撮像例を示す図である。
【図１５】チャート撮影用可動式カメラに対する、被写体撮影用デジタルカメラの相対位置・姿勢を算出する際に用いる、座標変換の様子を示す図である。
【図１６】本実施形態に係る立体チャートの側面において、単位台形のサイズが、複比によってコーディングされた例を示す図である。
【図１７】複比が射影により変化しないことを説明する図である。
【図１８】コーディングに用いられる複比の例を示す図である。
【図１９】図１８から得られる直線の間隔の移動平均が、頂点からの距離にほぼ比例していることを示す図である。
【図２０】本実施形態に係る立体チャートを六角錐とした場合に、各面に用いられるコーディングの例を示す図である。
【図２１】本実施形態に係る立体チャートを撮影した画像から、立体チャート上の撮影箇所を同定する手順を示す図である。
【図２２】本実施形態に係る立体チャートの撮像における、直線の抽出の例を示す図である。
【図２３】本実施形態に係る立体チャートの同じ側面を、異なる距離から撮影したときの撮像の例を示す図である。
【図２４】本実施形態の変形例である立体チャートの例を示す図である。
【符号の説明】
１  撮像演算システム
２  校正用立体チャート
１１  可動式カメラ
１３  被写体用カメラ
３０  被写体
２０１  マーカ
ＵＰ  単位台形（単位図形）
【図１】
0004590780.tif 000002
【図２】
0004590780.tif 000003
【図３】
0004590780.tif 000004
【図４】
0004590780.tif 000005
【図５】
0004590780.tif 000006
【図６】
0004590780.tif 000007
【図７】
0004590780.tif 000008
【図８】
0004590780.tif 000009
【図９】
0004590780.tif 000010
【図１０】
0004590780.tif 000011
【図１１】
0004590780.tif 000012
【図１２】
0004590780.tif 000013
【図１３】
0004590780.tif 000014
【図１４】
0004590780.tif 000015
【図１５】
0004590780.tif 000016
【図１６】
0004590780.tif 000017
【図１７】
0004590780.tif 000018
【図１８】
0004590780.tif 000019
【図１９】
0004590780.tif 000020
【図２０】
0004590780.tif 000021
【図２１】
0004590780.tif 000022
【図２２】
0004590780.tif 000023
【図２３】
0004590780.tif 000024
【図２４】
0004590780.tif 000025