説明

3次元座標位置推定装置、その方法、そのプログラムおよび3次元座標推定システム、ならびに、カメラ較正情報生成装置

【課題】マーカを複数のカメラで撮影したそれぞれの画像からマーカの3次元座標位置を推定する3次元座標位置推定装置を提供する。
【解決手段】3次元座標位置推定装置1は、少なくとも30台以上のカメラによって撮影されたカメラ画像を入力する画像入力手段11と、カメラごとに、カメラ画像からマーカの2次元座標位置を検出する点光源(マーカ)検出手段12と、カメラパラメータに基づいて、全カメラ共通の座標系において、カメラごとに、点光源(マーカ)検出手段12で検出された2次元座標位置と、当該カメラの光学中心とを結ぶ直線式を算出する点光源(マーカ)方向算出手段13と、カメラごとの直線式との距離の総和が最小となる位置を、マーカの3次元座標位置として算出する距離最小位置算出手段14と、を備えることを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、点光源等のマーカを複数のカメラで撮影したそれぞれの画像からマーカの3次元座標位置を推定する3次元座標位置推定装置、その方法、そのプログラムおよび3次元座標推定システム、ならびに、3次元座標位置推定装置を用いて複数のカメラの較正情報を生成するカメラ較正情報生成装置に関する。
【背景技術】
【0002】
一般に、被写体を複数のカメラで撮影し、そのカメラ画像から、3次元形状を復元したり、自由視点映像を生成したり等の処理を行うコンピュータビジョンの分野においては、複数のカメラ画像の2次元座標から、被写体空間の3次元座標を推定する技術が重要となる。従来、このように2次元座標から、3次元座標を推定する技術は種々存在する。
【0003】
例えば、複数のカメラの誤差を含んだパラメータ(内部パラメータ、外部パラメータ)と、カメラが撮影した画像上の位置(2次元座標)とから、パラメータや当該位置の3次元座標を変化させて最適解を求めるバンドルアジャストメントという手法が存在する(非特許文献1参照)。
【0004】
また、1台のカメラごとに、特徴点の位置が既知の平面パターン(例えば、白と黒の市松模様等)を複数撮影した画像から、カメラのパラメータ(内部パラメータ、外部パラメータ)を求め、複数のカメラで撮影したそれぞれの画像から、被写体空間における予め定めた特徴点の3次元座標位置を特定する手法も存在する(非特許文献2参照)。
【0005】
また、これらの手法をさらに簡便にした手法として、1台のカメラをレール上で動かして画像を撮影したり、同一平面の格子上にカメラを配置して画像を撮影したりすることで、カメラのパラメータの一部を限定し、高速に被写体空間上の特徴点の3次元座標位置を特定する手法も存在する(非特許文献3,4参照)。
【先行技術文献】
【非特許文献】
【0006】
【非特許文献1】Tomas Svoboda, Daniel Martinec, Tomas Pajdla, “A Convenient Multi-Camera Self-Calibration for Virtual Environments”, MIT Press Journals, vol. 14, no. 4, pp. 407-422, 2006
【非特許文献2】Zhengyou Zhang, “A Flexible New Technique for Camera Calibration”, IEEE Trans. on PAMI, vol. 22, no. 11, pp. 1330-1334, 2000
【非特許文献3】Vaibhav Vaish, Bennett Wilburn, Neel Joshi, Marc Levoy, “Using plane + parallax for calibrating dense camera arrays”, Proc. of CVPR04, pp. 2-9, 2004
【非特許文献4】Makoto Ota, Norishige Fukushima, Tomohiro Yendo, Masayuki Tanimoto, Toshiaki Fujii, “Rectification of Pure Translation 2D Camera Array”, Proc. of IWAIT2009, 2009
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかし、非特許文献1に記載の手法は、複数の誤差を含んだ未知のパラメータを適宜変化させて最適解を求めるため、その演算に時間がかかり、非特許文献1にも記載されているように、16台のカメラを用いた場合、30分程度の時間を要してしまう。これは、100台、300台等、多数のカメラを用いる場合、キャリブレーションに膨大な時間がかかってしまうという問題がある。
【0008】
また、非特許文献2に記載の手法は、1台のカメラごとにキャリブレーションを行う必要があるため、非特許文献1に記載の手法と同様に、多数のカメラを用いる場合、膨大な時間がかかってしまうという問題がある。さらに、この手法は、1台のカメラごとにキャリブレーションを行うため、複数のカメラ全体で、グローバルな座標を共有させることは困難である。
【0009】
また、非特許文献3,4に記載の手法は、カメラの配置が平面に限定されるため、多視点の画像から自由視点映像を生成するような際に、任意のカメラ配置にすることができないという問題がある。
【0010】
本発明は、このような問題点に鑑みてなされたものであり、任意のカメラ配置で撮影した画像から、当該画像に写ったマーカの3次元座標位置を高速に推定することが可能な3次元座標位置推定装置、その方法、そのプログラムおよび3次元座標推定システム、ならびに、3次元座標位置推定装置を用いて複数のカメラの較正情報を生成するカメラ較正情報生成装置を提供することを課題とする。
【課題を解決するための手段】
【0011】
本発明は、前記課題を解決するために創案されたものであり、まず、請求項1に記載の3次元座標位置推定装置は、少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、前記マーカの3次元座標位置を推定する3次元座標位置推定装置であって、記憶手段と、画像入力手段と、マーカ検出手段と、マーカ方向算出手段と、距離最小位置算出手段と、を備える構成とした。
【0012】
かかる構成において、3次元座標位置推定装置は、記憶手段に、カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶しておく。ここで、内部パラメータとは、カメラ固有のパラメータであって、焦点距離、画像中心や、カメラ座標系と画像座標との関係を示すパラメータ等を指す。また、外部パラメータとは、カメラの配置を特定するパラメータであって、位置(光学中心)や向き(回転角)を指す。
実際のカメラでは、これらのカメラパラメータに誤差が含まれてしまうため、固有値(設定値)プラス誤差が個々のカメラのカメラパラメータになる。しかし、カメラの台数を十分な台数とすることで、誤差平均が十分に“0”に近似するため、以降の処理において、誤差を考慮する必要がない。後記するシミュレーションによれば、カメラの台数が30台以上であれば、誤差を考慮する必要がないことが分かっている。
【0013】
そして、3次元座標位置推定装置は、画像入力手段によって、カメラが撮影した画像を入力する。
そして、3次元座標位置推定装置は、マーカ検出手段によって、カメラごとに、画像入力手段で入力された画像において、点光源等のマーカの2次元座標位置を検出する。このマーカは、3次元空間上で位置を示すものであれば、何でもよいが、例えば、LED等の点光源、特定形状の図形等である。このマーカの位置を画像上で検出するには、例えば、マーカが点光源であれば、予め定めた輝度以上の画素を点光源の位置として検出したり、予め定めた点光源の色の画素を点光源の位置として検出したりすることができる。
また、マーカが図形であれば、画像認識処理によって、予め定めた形状の図形を検出すればよい。
【0014】
また、3次元座標位置推定装置は、マーカ方向算出手段によって、カメラパラメータに基づいて、全カメラ共通のワールド座標系において、カメラごとに、マーカ検出手段で検出された2次元座標位置と、ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出する。
なお、通常は、カメラパラメータに誤差が含まれているため、3次元座標位置を推定するのに十分な直線式を求めることはできないが、本発明においては、誤差平均が“0”となる条件で、直線式を求めることができる。
そして、3次元座標位置推定装置は、距離最小位置算出手段によって、マーカ方向算出手段で算出されたカメラごとの直線式との距離の総和が最小となる位置を、マーカのワールド座標系における3次元座標位置として算出する。
【0015】
また、請求項2に記載の3次元座標位置推定方法は、カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶する記憶手段を備えた3次元座標位置推定装置において、少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、前記マーカの3次元座標位置を推定する3次元座標位置推定方法であって、画像入力ステップと、マーカ検出ステップと、マーカ方向算出ステップと、距離最小位置算出ステップと、を含む手順とした。
【0016】
かかる手順において、3次元座標位置推定方法は、画像入力ステップで、カメラが撮影した画像を入力する。そして、3次元座標位置推定方法は、マーカ検出ステップで、カメラごとに、画像入力ステップで入力された画像において、マーカの2次元座標位置を検出する
【0017】
そして、3次元座標位置推定方法は、マーカ方向算出ステップで、カメラパラメータに基づいて、全カメラ共通のワールド座標系において、カメラごとに、マーカ検出ステップで検出された2次元座標位置と、ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出する。
そして、3次元座標位置推定方法は、距離最小位置算出ステップで、マーカ方向算出ステップで算出されたカメラごとの直線式との距離の総和が最小となる位置を、マーカのワールド座標系における3次元座標位置として算出する。
【0018】
また、請求項3に記載の3次元座標位置推定プログラムのように、カメラの配置を特定する外部パラメータ、および、前記カメラの撮影画像を特定する内部パラメータとをカメラパラメータとして記憶する記憶手段を備えた3次元座標位置推定装置において、少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、前記マーカの3次元座標位置を推定するために、コンピュータを、画像入力手段、マーカ検出手段、マーカ方向算出手段、距離最小位置算出手段、として機能させる構成としてもよい。
【0019】
また、請求項4に記載の3次元座標推定システムのように、マーカを撮影する少なくとも30台以上のカメラと、このカメラで撮影された画像から、マーカの3次元座標位置を推定する3次元座標位置推定装置と、を備える構成としてもよい。
【0020】
さらに、請求項5に記載のカメラ較正情報生成装置は、少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、それぞれのカメラの較正情報であるホモグラフィ行列を生成するカメラ較正情報生成装置であって、記憶手段と、画像入力手段と、マーカ検出手段と、マーカ方向算出手段と、距離最小位置算出手段と、ホモグラフィ行列算出手段と、を備える構成とした。
【0021】
かかる構成において、カメラ較正情報生成装置は、記憶手段に、カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶しておく。
そして、カメラ較正情報生成装置は、画像入力手段によって、カメラが撮影した画像を入力する。
そして、カメラ較正情報生成装置は、マーカ検出手段によって、カメラごとに、画像入力手段で入力された画像において、マーカの2次元座標位置を検出する。
また、カメラ較正情報生成装置は、マーカ方向算出手段によって、カメラパラメータに基づいて、全カメラ共通のワールド座標系において、カメラごとに、マーカ検出手段で検出された2次元座標位置と、ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出する。
そして、カメラ較正情報生成装置は、距離最小位置算出手段によって、マーカ方向算出手段で算出されたカメラごとの直線式との距離の総和が最小となる位置を、マーカのワールド座標系における3次元座標位置として算出する。
【0022】
そして、カメラ較正情報生成装置は、ホモグラフィ行列算出手段によって、カメラごとに、距離最小位置算出手段で算出された3次元座標位置をカメラの撮影画像に投影した2次元座標位置と、マーカ検出手段で検出された2次元座標位置との少なくとも4点以上の対応関係に基づいて、マーカ検出手段で検出された2次元座標位置を、距離最小位置算出手段で算出された3次元座標位置を画像上に投影した2次元座標位置に変換するホモグラフィ行列を算出する。
【発明の効果】
【0023】
本発明は、以下に示す優れた効果を奏するものである。
請求項1〜4に記載の発明によれば、マーカを撮影した画像からマーカの3次元位置を推定するため、任意のカメラ配置でマーカの3次元位置を推定することができる。
また、請求項1〜4に記載の発明によれば、多数のカメラ画像によって、誤差平均を零とみなすことができるため、未知のパラメータを適宜変化させて最適解を求める従来に手法に比べ、演算量を大幅に削減することができ、高速にマーカの3次元位置を推定することができる。
【0024】
また、請求項5に記載の発明によれば、任意のカメラ配置でカメラの較正情報を生成することができる。また、請求項5に記載の発明によれば、多数のカメラ画像によって、誤差平均を零とみなすことができるため、未知のパラメータを適宜変化させて最適解を求める従来に手法に比べ、演算量を大幅に削減することができ、高速にカメラの較正情報を生成することができる。
【図面の簡単な説明】
【0025】
【図1】本発明の第1実施形態に係る3次元座標位置推定装置を含んだ画像撮影システムの構成を示す全体構成図である。
【図2】本発明の第1実施形態に係る3次元座標位置推定装置を含んだ画像撮影システムのカメラ配置の例を示す全体構成図である。
【図3】本発明の第1実施形態に係る3次元座標位置推定装置の構成を示すブロック構成図である。
【図4】カメラパラメータを説明するための説明図である。
【図5】本発明の第1実施形態に係る3次元座標位置推定装置の動作を示すフローチャートである。
【図6】本発明の第1実施形態に係る3次元座標位置推定装置をシミュレーション評価した際のカメラ配置を示す図である。
【図7】本発明の第1実施形態に係る3次元座標位置推定装置をシミュレーション評価した際の評価結果を示すグラフ図である。
【図8】本発明の第2実施形態に係るカメラ較正情報生成装置の構成を示すブロック構成図である。
【図9】本発明の第2実施形態に係るカメラ較正情報生成装置の動作を示すフローチャートである。
【発明を実施するための形態】
【0026】
以下、本発明の実施形態について図面を参照して説明する。
[画像撮影システムの概要]
最初に、図1を参照して、本発明の実施形態に係る3次元座標位置推定装置を含んだ画像撮影システムの概要について説明する。
【0027】
画像撮影システム(3次元差表位置推定システム)Sは、光源装置LTと、複数のカメラC(k=1,…,N)と、3次元座標位置推定装置1とを備えている。
光源装置LTは、3次元空間上の位置を光によって指し示すものであって、点光源Pを備えている。この点光源Pは、例えば、LED(Light Emitting Diode)であって、光源装置LT内の電池等の電源(不図示)によって、発光する。
なお、ここでは、3次元空間上の位置を光によって指し示すこととするが、この位置には、点光源に限らず一般的なマーカを用いてもよい。
カメラCは、3次元空間上に配置された点光源Pを撮影するものであって、一般的は撮像装置である。
【0028】
3次元座標位置推定装置1は、複数のカメラCで撮影した画像内の点光源Pの位置(2次元座標)から、予め定めたグローバルな座標系(ワールド座標系)における点光源Pの位置(3次元座標)を推定するものである。
【0029】
なお、個々のカメラCのパラメータ(内部パラメータ、外部パラメータ)、例えば、焦点距離、カメラCの向き等には、固有値(設定値)に誤差が含まれてしまい、実際には固有値(設定値)プラス誤差が個々のカメラのパラメータになる。本発明においては、その誤差平均が“0”であるものとして、点光源Pの3次元座標を推定する。そのため、カメラCの数は、多ければ多いほうがよく、例えば、30台以上、好ましくは100台以上が望ましい。
すなわち、本発明は、個々のカメラCの誤差平均を“0”(零ベクトル)とみなすことができれば、カメラCを個別に較正することなく、大規模なカメラアレイにおいて、点光源Pの3次元座標を推定できることを明らかにし、それを実現した発明である。
【0030】
また、カメラCは任意の位置に配置することができるが、例えば、図2に示すように、円形ドーム内の内面に円環状に複数のカメラCを、点光源Pの方向に向けて配置する。
以下、本発明の実施形態に係る3次元座標位置推定装置1の構成および動作について詳細に説明する。
【0031】
[3次元座標位置推定装置の構成]
まず、図3を参照(適宜図1参照)して、3次元座標位置推定装置1の構成について説明する。図3に示すように、3次元座標位置推定装置1は、パラメータ設定手段10と、画像入力手段11、点光源検出手段12と、点光源方向算出手段13と、距離最小位置算出手段14と、記憶手段20と、を備えている。
【0032】
パラメータ設定手段10は、カメラC(k=1,…,N)のパラメータ(カメラパラメータ:内部パラメータ、外部パラメータ)を設定するものである。
このパラメータ設定手段10は、外部から、図示を省略した入力装置を介して、パラメータを入力し、記憶手段20に書き込む。
このパラメータ設定手段10において設定する内部パラメータは、撮影画像を特定する情報であって、焦点距離、画像中心およびカメラ座標系と画像座標との関係を示すパラメータである。また、このパラメータ設定手段10において設定する外部パラメータは、カメラの配置を特定する情報であって、光学中心および回転角である。
【0033】
ここで、図4を参照して、パラメータ設定手段10において設定する各パラメータについて説明する。
図4は、1台のカメラCをピンホールカメラモデルとしてモデル化し、カメラCと、点光源Pとの関係を示している。
図4に示すように、全カメラC共通の座標系であるワールド(世界)座標系を(X,Y,Z)、個々のカメラCごとの座標系であるカメラ座標系を(X,Y,Z)とする。
ここで、光学中心Tを通り、カメラCの撮像面(画像面)Iと直交する点が画像中心(u,v)である。また、このときの光学中心Tと撮像面Iとの距離が焦点距離fである。なお、光学中心Tは、ワールド座標系上の(T,T,T)に存在する。
また、ワールド座標系を基準としたとき、カメラ座標系は、それぞれ、X軸に対してθ、Y軸に対してθ、Z軸に対してθ回転している。
【0034】
このとき、焦点距離fおよび画像中心(u,v)は、個々のカメラCの内部パラメータである。なお、内部パラメータには、図示を省略するが、カメラ座標系のX座標と画像座標のu座標との関係を示すスケールファクタsや、カメラ座標系のY座標と画像座標のv座標との関係を示すスケールファクタsも存在する。これらの内部パラメータは、カメラC固有の値であり、同一のカメラであれば、誤差を考慮に入れなければ基本的に同一の値である。本実施形態においては、各カメラの内部パラメータは同一(誤差は除く)であるものとする。
また、光学中心Tおよび回転角θ,θ,θは、設置時に定まるカメラCごとに異なる外部パラメータである。
図3に戻って、3次元座標位置推定装置1の構成について説明を続ける。
【0035】
画像入力手段11は、複数のカメラCが撮影した画像を入力するものである。この画像入力手段11は、画像の入力元を、順次、カメラC,C,…,Cと切り替えて、画像を入力する。この入力された画像は、カメラCを特定する識別情報(例えば、識別子k)とともに点光源検出手段12に出力される。
なお、画像入力手段11は、すべての画像を入力し、記憶手段20に蓄積した後に、点光源検出手段12にすべての画像を入力したことを通知してもよいし、カメラCごとの個々の画像を入力する度に、点光源検出手段12に通知し、点光源検出手段12の処理の完了が通知された段階で、次の画像を入力することとしてもよい。
【0036】
点光源検出手段(マーカ検出手段)12は、画像入力手段11から入力されたカメラCごとの画像において、3次元位置を示すマーカである点光源Pを検出するものである。すなわち、点光源検出手段12は、カメラCの撮影画像において、点光源Pが写っている2次元座標(画像座標)の位置を特定するものである。
なお、この点光源検出手段12における点光源Pの位置検出は、一般的な手法を用いればよい。例えば、点光源Pの輝度をまわりの環境よりも明るい輝度にして、カメラCで撮影を行い、点光源検出手段12が、画像内において、最も輝度値が高い画素の位置を点光源Pの2次元座標位置として検出する。あるいは、点光源Pを予め定めた色(例えば、赤)で発光させ、点光源検出手段12が、画像内において、発光色と同じ色を探索し、該当する画素の位置を点光源Pの2次元座標位置として検出する。
また、点光源検出手段12は、点光源Pの位置が1画素ではなく、領域を持った大きさで検出された場合、当該領域の中心(重心)を点光源Pの2次元座標位置とする。
【0037】
なお、ここでは、マーカとして点光源を用いた例を説明するが、予め形状を定めた図形等であっても構わない。例えば、×印をマーカとした場合、3次元空間上の位置にマーカを貼付して、点光源検出手段(マーカ検出手段)12が、パターンマッチング等によって、画像上で×印を検索し、特定の位置(例えば×印が交差する点)をマーカの2次元座標位置とする。
また、マーカが丸印の形状であれば、点光源検出手段(マーカ検出手段)12は、画像上で円を検出し、その円の中心をマーカの2次元座標位置とする。あるいは、マーカが四角形の形状であれば、点光源検出手段(マーカ検出手段)12は、画像上で矩形を検出し、その対角線の交点をマーカの2次元座標位置とすればよい。
なお、このように、マーカとして図形を用いる場合、図2で示したような円環上のカメラ配置では、カメラCのすべてでマーカを撮影することはできない。そのため、このようなカメラ配置では、点光源が望ましい。
【0038】
この点光源検出手段12は、検出した点光源Pの2次元座標位置を、検出した画像を撮影したカメラCと対応付けて、点光源方向算出手段13に出力する。
ここでは、点光源検出手段12は、検出した点光源Pの2次元座標位置を、検出した画像を撮影したカメラCと対応付けて、記憶手段20に書き込み、その旨を点光源方向算出手段13に通知することとする。
【0039】
点光源方向算出手段(マーカ方向算出手段)13は、点光源検出手段12で検出された画像上の点光源Pの2次元座標位置と、カメラCのパラメータ(内部パラメータ、外部パラメータ)とに基づいて、全カメラ共通のワールド座標系において、カメラCの光学中心Tから、3次元空間における点光源Pへの方向を示す直線式を算出するものである。ここで、直線式を算出するとは、直線式を規定する係数(係数行列)を算出するということである。
具体的には、点光源方向算出手段13は、以下の式(1)を、光学中心Tと点光源Pとを結んだ直線式として算出する。なお、以下の式において、表記を簡略化するため、個々のカメラを特定する左上の添え字kを省略している。
【0040】
【数1】

【0041】
なお、λは任意の実数である。また、行列X,B ̄,C ̄は、以下の通りである。また、ここで、行列の右上の添え字tは、転置行列を示す。
【0042】
【数2】

【0043】
ここで、式(2)の行列Xは、点光源検出手段12で検出された画像上の点光源Pの2次元座標に対応する3次元空間中の点(実際には、λに応じて変化する点の集合、すなわち直線となる)の3次元座標である。
また、式(3)に含まれる行列xは、点光源検出手段12で検出された画像上の点光源Pの2次元座標である座標(u,v)を含んだ以下の式(5)に示す行列である。
【0044】
【数3】

【0045】
また、式(3)のB0X,B0Y,B0Zは、行列B ̄の成分であって、スカラ値である。同様に、式(4)のC0X,C0Y,C0Zは、行列C ̄の成分であって、スカラ値である。
また、式(3)および式(4)の行列R(−θ) ̄,R(−θ) ̄,R(−θ) ̄,A ̄−1,Tは、以下の通りである。
【0046】
【数4】

【0047】
ここで、式(6)〜式(8)のR ̄,R ̄,R ̄は、カメラCの回転角θ,θ,θから求められる外部パラメータの行列である。また、式(9)のA ̄−1は、カメラCの焦点距離f、画像中心u,vおよびスケールファクタs,sから求められる内部パラメータの行列である。また、式(10)のTは、ワールド座標系におけるカメラCの光学中心の3次元座標を示す外部パラメータの行列である。
なお、前記式(1)に示した直線を用いる理由については後で詳細に説明する。
【0048】
この点光源方向算出手段13は、それぞれのカメラCに対応して算出した直線式を距離最小位置算出手段14に出力する。すなわち、点光源方向算出手段13は、前記式(1)の直線式を規定する係数(係数行列)である前記式(3)および式(4)の行列B ̄および行列C ̄の成分を算出して、距離最小位置算出手段14に出力する。
ここでは、点光源方向算出手段13は、算出した直線式(係数行列)を、カメラCと対応付けて、記憶手段20に書き込み(図中、L〜L)、その旨を距離最小位置算出手段14に通知することとする。
【0049】
距離最小位置算出手段14は、点光源方向算出手段13で算出された複数の直線式で表される直線において、それらの直線との距離の総和が最小となる3次元空間上の点の位置を、点光源Pの3次元座標位置として算出するものである。
すなわち、距離最小位置算出手段14は、最小2乗法により、以下の式(11)に示すように、3次元空間上の点の座標をX^としたとき、カメラC(k=1,…,N)ごとに算出した前記式(1)において、X(すなわちX)との距離の2乗が最小となる座標X^を点光源Pの3次元座標位置として算出する。なお、行列の右上の添え字tは、転置行列を示す。
【0050】
【数5】

【0051】
具体的には、距離最小位置算出手段14は、前記式(1)の直線、すなわち、前記式(3)および式(4)の係数行列を用いて、以下の式(12)の値が最小となる座標X^を算出する。
【0052】
【数6】

【0053】
なお、ここで、X,Y,Zは、以下の式(13)に示すように、行列X^の成分である。
【0054】
【数7】

【0055】
ここで、前記式(12)が最小になるX^は、一般的な手法を用いて解けばよい。すなわち、距離最小位置算出手段14は、前記式(12)をXで偏微分し、値が“0”となる式を求める。また、同様に、距離最小位置算出手段14は、前記式(12)をYとZとでそれぞれ偏微分し、値が“0”となる式を求める。
そして、距離最小位置算出手段14は、偏微分によって得られた3つの方程式を解くことで、点光源Pの3次元座標位置となる座標X^を算出する。
【0056】
記憶手段20は、パラメータ設定手段10によって設定されるパラメータを記憶するもので、半導体メモリ等の一般的な記憶媒体である。
この記憶手段20には、パラメータ設定手段10によって設定されるパラメータ以外にも、点光源検出手段12が検出したカメラCごとの点光源Pの画像座標(2次元座標)や、点光源方向算出手段13が検出した直線式等が記憶される。
【0057】
以上説明したように、3次元座標位置推定装置1は、3次元空間上の任意の位置に配置された複数のカメラが撮影した点光源Pの画像から、点光源Pの3次元座標位置を求めることができる。
また、3次元座標位置推定装置1は、多数のカメラのパラメータ(内部パラメータ、外部パラメータ)の誤差平均が零ベクトルであると仮定することで、個々のカメラを個別にキャリブレーションする必要がない。また、従来のように未知のパラメータを変化させて最適解を求めるのではなく、パラメータから直接的に解を求めるため、演算に要する時間が短縮され、高速に点光源Pの3次元座標位置を算出することができる。
【0058】
なお、ここでは、すべてのカメラCを光源装置LT(点光源P)の方向に向けた構成で説明したが、これに限定されるものではない。すなわち、カメラCが任意の方向に向いている場合であっても、点光源Pを検出できたカメラCの画像から、3次元座標位置を算出すればよい。その場合、点光源検出手段12は、点光源Pを検出できなかったカメラCについては、点光源方向算出手段13に2次元座標を通知しない、あるいは、検出できなかった旨を通知し、点光源方向算出手段13が、点光源Pを検出できた2次元座標から、直線を算出すればよい。
【0059】
また、ここでは、1つのカメラ画像として、カメラCが点光源等のマーカを1つ撮影することとしたが、複数のマーカを一度に撮影することとしてもよい。例えば、マーカとして、チェスボードのような格子模様を用いた場合、点光源検出手段(マーカ検出手段)12は、直線が交差する複数の点(格子点)を検出し、例えば、左上の格子点から右下方向に順次、マーカの2次元座標位置として点光源方向算出手段(マーカ方向算出手段)13に出力する。そして、点光源方向算出手段(マーカ方向算出手段)13は、マーカ(格子点)ごとに、カメラCの光学中心Tから、3次元空間におけるマーカへの方向を示す直線式を算出する。また、距離最小位置算出手段14は、点光源方向算出手段(マーカ方向算出手段)13が算出した直線式を用いて、マーカ(格子点)ごとに3次元座標位置を算出する。
これによって、3次元座標位置推定装置1は、一度のカメラ撮影で、複数の3次元座標位置を推定することができる。
以上説明した3次元座標位置推定装置1は、コンピュータを、前記した各手段として機能させるプログラム(3次元座標位置推定プログラム)で動作させることができる。
【0060】
[3次元座標位置推定装置の動作]
次に、図5を参照(適宜図1,図3参照)して、3次元座標位置推定装置1の動作(3次元座標位置推定方法)について説明する。
まず、3次元座標位置推定装置1は、パラメータ設定手段10によって、カメラC固有のパラメータ(内部パラメータ)である焦点距離f、画像中心(u,v)およびスケールファクタs,sと、カメラCを設置した際のパラメータ(外部パラメータ)である光学中心Tおよび回転角θθθとを、外部から入力し、記憶手段20に設定(記憶)する(ステップS1)。
なお、ステップS1の動作は、カメラ配置を変更する必要がなければ、予め最初に1回だけ行えばよい。
【0061】
そして、3次元座標位置推定装置1は、画像入力手段11によって、複数のカメラCが撮影した画像を、切り替えて順次入力する(ステップS2)。ここでは、画像入力手段11は、逐次入力した画像を、カメラCの識別情報とともに、記憶手段20に書き込む。
【0062】
そして、3次元座標位置推定装置1は、点光源検出手段12によって、ステップS2で入力されたカメラCごとの画像(2次元画像)において、点光源Pを検出する(ステップS3)。この点光源検出手段12は、点光源Pの輝度あるいは色によって、画像上で点光源Pを検出し、その2次元座標の位置を点光源Pの画像上の位置として特定する。ここでは、点光源検出手段12は、特定した点光源Pの2次元座標を、カメラCに対応付けて記憶手段20に書き込む。
【0063】
その後、3次元座標位置推定装置1は、点光源方向算出手段13によって、ステップS3で検出された点光源Pの画像上の2次元座標位置と、ステップS1で設定されたカメラCのパラメータ(内部パラメータ、外部パラメータ)とに基づいて、カメラCの光学中心Tから、3次元空間における点光源Pへの方向を示す直線式を算出する(ステップS4)。
【0064】
ここでは、点光源方向算出手段13は、前記式(1)により、個々のカメラCごとに、光学中心から画像上の点光源Pの2次元座標を通って、3次元空間上の点光源Pに至る直線を算出する。理想的には、このステップS4で求められた個々のカメラCごとの直線の交点に点光源Pが存在することになる。
そこで、3次元座標位置推定装置1は、距離最小位置算出手段14によって、ステップS4で算出された複数の直線において、それらの直線との距離の総和が最小となる3次元空間上の点の位置を、点光源Pの3次元座標位置として算出する(ステップS5)。
ここでは、距離最小位置算出手段14は、最小2乗法により、前記式(12)において、直線との距離の2乗の総和が最小となる座標を点光源Pの3次元座標位置として算出する。
以上の動作によって、3次元座標位置推定装置1は、任意の位置に配置された複数のカメラが撮影した点光源Pの画像から、点光源Pの3次元座標位置を求めることができる。
【0065】
<光学中心と点光源とを結ぶ直線の算出について>
次に、点光源方向算出手段13において算出する直線が、前記式(1)により求められる理由について説明する。なお、以降の説明において、符号の左上の添え字kは、カメラC(k=1,…,N)のいずれかを示す識別子とする。
【0066】
〔前提条件〕
まず、本発明において、予め成立している前提条件について説明する。
(条件1)
各カメラCの光学中心Tは、所望の位置にあり既知である。この光学中心は、現状の技術において、製造時の精度が十分に確保されており、また、カメラCを配置する位置は既知であるため、誤差はないものとみなせる。
(条件2)
カメラCの焦点距離fは、誤差を含み以下の式(14)、式(15)の条件を満たすものとする。ここで、fは焦点距離の固有値(設定値)、Δfはカメラごとに異なる誤差である。
【0067】
【数8】

【0068】
(条件3)
カメラCの画像中心[は、誤差を含み以下の式(16)〜式(18)の条件を満たすものとする。ここで、uおよびvは画像中心の固有値(設定値)、ΔおよびΔはカメラごとに異なる誤差である。
【0069】
【数9】

【0070】
(条件4)
カメラCのワールド座標系からカメラ座標系への回転角θθθは、誤差を含み以下の式(19)〜式(24)の条件を満たすものとする。ここで、θ,θ,θは、カメラごとの回転角の設定値、Δθ,Δθ,Δθは、カメラごとの設置時における回転角の誤差である。
【0071】
【数10】

【数11】

【0072】
(条件5)
すべてのカメラCのせん断係数(画像平面上のu軸とv軸の傾き)は、“0”とする。また、レンズ歪は考慮しないものとする。現状の技術において、せん断係数およびスケールファクタは、製造時の精度が十分に確保されており、誤差はないものとみなせる。また、レンズ歪は一般的なレンズ歪補正技術を用いて補正すればよいため、ここでは考慮しない。この一般的なレンズ歪補正技術とは、例えばレンズの半径方向の歪を6次の多項式で補正する技術などである。
なお、前記した式(15),式(17),式(18),式(22)〜式(24)は、多数(例えば、30台以上)のカメラを用いた場合、誤差は“0”付近に確率的に分布し、その平均は“0”とみなしてよいという前提を示している。
【0073】
〔直線式の導出〕
次に、前記した条件1〜5により、カメラCで撮影された画像において検出された点光源Pの画像上の2次元座標から、前記式(1)に示した光学中心Tと点光源Pとを結んだ直線式が導き出せる理由について説明する。なお、以下の式において、表記を簡略化するため、個々のカメラを特定する左上の添え字kを省略している。
一般に、光学中心Tと、画像上の2次元座標xとは、以下の式(25)の関係を有する。
【0074】
【数12】

【0075】
なお、λは任意の実数である。また、行列x,A,R,X,Tは、以下の通りである。また、ここで、行列の右上の添え字tは、転置行列を示す。
この式(25)の行列xは、画像上の点光源Pの2次元座標である座標(u,v)を含んだ以下の式(26)に示す行列である。
【0076】
【数13】

【0077】
また、行列Aは、以下の式(27)に示す内部パラメータ行列である。
【0078】
【数14】

【0079】
また、行列Rは、以下の式(28)〜式(31)に示す回転角から求められる外部パラメータ行列である。
【0080】
【数15】

【0081】
また、行列Xは、以下の式(32)に示すように、前記式(26)の2次元座標に対応する3次元空間中の点(実際には、λに応じて変化する点の集合、すなわち直線となる)の3次元座標である。
また、行列Tは、以下の式(33)に示すように、外部パラメータである光学中心の3次元座標である。なお、行列の右上の添え字tは、転置行列を示す。
【0082】
【数16】

【0083】
ここで、前記式(25)を変形すると、以下の式(34)の直線式となる。
【0084】
【数17】

【0085】
行列A−1,R−1のそれぞれについて、以下でさらに展開する。
ここで、行列A,R(θ),R(θ),R(θ)の誤差を含まない行列を、以下の式(35)〜式(38)に示すように、A ̄,R(θ) ̄,R(θ) ̄,R(θ) ̄と定義する。
【0086】
【数18】

【数19】

【0087】
すると、前記式(35)〜式(38)の逆行列は、以下の式(39)〜式(42)となる。
【0088】
【数20】

【0089】
この式(40)〜式(42)から、誤差を含んだR(θ),R(θ),R(θ)の逆行列は、以下の式(43)〜式(45)で表すことができる。
【0090】
【数21】

【0091】
以上より、前記式(34)の直線式における行列A−1,R−1は、それぞれ以下の式(46)、式(47)となる。
【0092】
【数22】

【数23】

【0093】
以上より、前記式(34)の直線式は、以下のように変形することができる。
【0094】
【数24】

【0095】
この式(48)を展開し、誤差が2回以上乗算されたものを無視してまとめると、以下の式(49)となる。
【0096】
【数25】

【0097】
なお、行列B,B,B,B,B,Bu0,Bv0,C,C,C,Cは、以下の式(50)〜式(60)に示した3行1列の行列である。
【0098】
【数26】

【数27】

【0099】
このように、前記式(34)は、厳密には、前記式(49)で表すことができる。
ここで、前記式(49)によって、カメラCごとに算出された複数の直線式から、それらの直線との距離の総和が最小となる3次元空間上の点の位置を算出する場合を考える。なお、式(49)は、カメラを特定する添え字kを付加して表すと、以下の式(61)となる。
【0100】
【数28】

【0101】
そして、前記式(11)と同様に、3次元空間上の点の座標を前記式(13)に示したX^としたとき、カメラC(k=1,…,N)ごとの直線式である前記式(61)において、Xとの距離の2乗が最小となる座標X^を求めることとする。
なお、この式(61)は、未知の誤差であるΔθ,Δθ,Δθ,Δf,Δ,Δが存在するため、通常、当該式を用いた演算を行うことはできない。
ここで、前記式(11)内の行列の積を以下の式(62)のように変形する。
【0102】
【数29】

【0103】
なお、行列(Q=0,X,Y,Z,f,u,vを示す)は、[QX QY QZの成分からなり、前記式(62)では、例えば、行列の成分を[0X 0Y 0Zと記述している。また、同様に、行列(Q=0,X,Y,Zを示す)は、[QX QY QZの成分からなり、前記式(62)では、例えば、行列の成分を[ZX ZY ZZと記述している。
また、前記式(62)において、u0V0は、以下の式(63)〜式(68)をまとめたものである。
【0104】
【数30】

【0105】
よって、前記式(62)により、前記式(11)は、以下の式(69)のように変形することができる。
【0106】
【数31】

【0107】
これに、〔前提条件〕である前記式(15),式(17),式(18),式(22)〜式(23)を適用すると、式(69)は、以下の式(70)のように変形することができる。
【0108】
【数32】

【0109】
このように、〔前提条件〕を考慮すると、未知の誤差であるΔθ,Δθ,Δθ,Δf,Δ,Δの乗算項は、各直線から座標X^を求める際に必要がないことがわかる。
よって、前記式(61)は、以下の式(71)に示す直線式であればよいことになる。
【0110】
【数33】

【0111】
このように、多数のカメラCを用いて点光源Pの位置(3次元座標)を推定する3次元座標位置推定装置1では、点光源方向算出手段13において、前記式(1)の直線式を用いればよいことになる。
【0112】
<3次座標位置検出のシミュレーション評価>
次に、本発明の実施形態に係る3次元座標位置推定装置1をシミュレーションした評価結果について説明する。
【0113】
〔カメラの配置および設定〕
ここでは、図6に示すように、半径1500mmの円周上に均等にカメラCを配置してシミュレーションを行った。また、すべてのカメラCは、円の中心を向いている。
また、ワールド座標系の3次元空間中の位置X=[100[mm],0[mm],0[mm]]に点光源Pが存在しているものとする。
また、それぞれのカメラCの設定は、以下の〔表〕に示す通りである。
【0114】
【表1】

【0115】
また、ここでは、未知の誤差を以下の条件で含ませた2つの条件でシミュレーションを行った。
(条件A)
・焦点距離の誤差Δfは、標準偏差1[mm]の正規分布に従う乱数である。
・画像中心の誤差Δ,Δは、それぞれ標準偏差100[pixel]の正規分布に従う乱数である。
・回転角ΔθX,ΔθY,ΔθZは、それぞれ標準偏差0.5[degree]の正規分布に従う乱数である。
【0116】
(条件B)
・画像中心の誤差Δ,Δは、それぞれ標準偏差50[pixel]の正規分布に従う乱数である。
・焦点距離、回転角の条件は、条件Aと同じである
【0117】
このような条件の下、カメラCの台数を3台(N=3)、10台(N=10)、30台(N=30)、100台(N=100)、200台(N=200)、300台(N=300)で、点光源Pの位置X^(前記式(13))を推定した。
また、この推定をそれぞれの台数について100回行い、それぞれの台数ごとに、実際の点光源Pの位置Xと、推定した点光源Pの位置X^との距離(|X−X^|)、すなわち推定誤差について平均および標準偏差を算出した。
【0118】
〔シミュレーション結果〕
シミュレーション結果を図7に示す。図7は、横軸がカメラ数[台]、縦軸が推定誤差[mm]である。また、グラフ中の四角形は、それぞれのカメラ台数における|X−X^|の平均を示し、エラーバーは、標準偏差を示している。
【0119】
図7に示すように、カメラの台数を増やすほど、|X−X^|の平均が小さくなっていくことがわかる。例えば、カメラ台数が30台以上であれば、推定誤差を10mm以内に抑えることができる。また、カメラの台数を増やすほど、標準偏差が小さくなり、より精度が向上していることがわかる。
また、条件Aに比べて、未知の誤差が小さい条件Bの方が推定誤差が少なくなっており、本発明が、未知の誤差を考慮して推定を行っていることがわかる。
このように、本発明は、カメラの台数を多くすることで、例えば、30台以上、好ましくは100台以上とすることで、少ない推定誤差で、点光源Pの3次元座標位置を推定することができる。
なお、この推定誤差は、カメラの設置位置(点光源からの距離等)等の条件によっても変わるため、カメラ台数は、推定誤差の許容範囲等に応じて、適宜選択すればよい。
【0120】
以上、本発明に実施形態に係る3次元座標位置推定装置1の構成および動作、ならびに、その評価について説明したが、この3次元座標位置推定装置1を用いることで、カメラの較正情報を生成することが可能になる。
以下では、3次元座標位置推定装置1を構成として含んだカメラ較正情報生成装置について説明する。
【0121】
[カメラ較正情報生成装置の構成]
まず、図8を参照して、カメラ較正情報生成装置2の構成について説明する。なお、カメラ較正情報生成装置2への入力は、3次元座標位置推定装置1と同様のカメラ画像であって、図1(図2)で示した画像撮影システムSにおいて、3次元座標位置推定装置1と置き換えてシステムを構成することができる。以下、適宜図1を参照することとする。
【0122】
このカメラ較正情報生成装置2は、複数のカメラCで撮影した画像内の点光源Pの位置(2次元座標)から、個々のカメラCが撮影した画像を較正(キャリブレーション)するための較正情報(ホモグラフィ行列)を生成するものである。
ここで、ホモグラフィ行列とは、3次元空間上の点の位置Xが、カメラで撮影した画像内の位置xに写っていたとき、この位置xを、理想的な内部パラメータを持つカメラであれば写るはずの位置x′に変換する行列である。すなわち、このホモグラフィ行列は、複数のカメラが3次元空間上で撮影を行う際に、同一のワールド座標系を基準とした画像に変換するための較正情報である。
なお、カメラ較正情報生成装置2は、少なくとも点光源Pの位置を4回変えて、較正情報を生成する。その理由については後記する。
【0123】
ここでは、カメラ較正情報生成装置2は、パラメータ設定手段10と、画像入力手段11、点光源検出手段12と、点光源方向算出手段13と、距離最小位置算出手段14と、ホモグラフィ行列算出手段15と、記憶手段20と、を備えている。ここで、ホモグラフィ行列算出手段15以外の構成は、図2で説明した3次元座標位置推定装置1の構成と同一であるため、同一の符号を用いて説明を省略する。
【0124】
ただし、点光源検出手段12や点光源方向算出手段13は、点光源Pの位置を変えて撮影した画像から検出した点光源Pの画像座標(2次元座標)を、カメラCのそれぞれについて、複数、記憶手段20に記憶しておく。また、距離最小位置算出手段14は、算出した点光源Pの3次元座標をホモグラフィ行列算出手段15に出力する。ここでは、距離最小位置算出手段14は、算出した3次元座標を記憶手段20に書き込み(図中、X,X,…)、その旨をホモグラフィ行列算出手段15に通知することとする。
これによって、例えば、カメラCの画像において検出された点光源Pの画像座標(x11,x12,…)に対して、点光源Pの3次元座標(X,X,…)が対応付けられることになる。
【0125】
ホモグラフィ行列算出手段15は、距離最小位置算出手段14で算出された少なくとも4点以上の点光源Pの画像座標(2次元座標)および3次元座標に基づいて、カメラCごとのホモグラフィ行列を算出するものである。
【0126】
このホモグラフィ行列算出手段15は、まず、カメラCごとに、距離最小位置算出手段14で算出された3次元座標を、カメラ画像上に投影することで点光源Pの2次元座標を算出する。
すなわち、ホモグラフィ行列算出手段15は、距離最小位置算出手段14で算出された3次元座標と、パラメータ設定手段10で設定されたパラメータとに基づいて、点光源Pの3次元座標とカメラCの光学中心Tとを結ぶ直線と、焦点距離fにおけるカメラ画像の画像平面との交点を、理想的な内部パラメータを持つカメラであれば写るはずの位置x′として算出する。
なお、このとき、現実にカメラ画像上で検出された点光源Pの位置は、点光源検出手段12で検出された位置xである。
【0127】
そして、ホモグラフィ行列算出手段15は、現実の座標位置xから理想の座標位置x′への変換行列をホモグラフィ行列として算出する。
ここで、ホモグラフィ行列Hは、以下の式(72)に示す3行3列の行列である。
【0128】
【数34】

【0129】
すなわち、現実の座標位置xを(x,y)、理想の座標位置x′を(x′,y′)としたとき、以下の式(73)が成り立つ。なお、sは、スケールパラメータである。
【0130】
【数35】

【0131】
この式(73)を展開し、sを削除すると、以下の式(74)となる。
【0132】
【数36】

【0133】
この式(74)は、未知数(h11,h12,h13,h21,h22,h23,h31,h32)が8個で、線形方程式が2つである。よって、この式(74)の方程式について、4点の点関係がわかれば、未知数を求めることができる。
そこで、ホモグラフィ行列算出手段15は、3次元座標とパラメータとから求めた理想の2次元座標(理想の座標位置)と、点光源検出手段12で検出された2次元座標(現実の座標位置)とについて、4点の点関係から、前記式(74)の方程式(8個の方程式)を解くことで、ホモグラフィ行列Hを算出する。
【0134】
なお、ホモグラフィ行列算出手段15は、必ずしも4点の対応関係だけでホモグラフィ行列Hを算出する必要はなく、5点以上の対応関係でホモグラフィ行列Hを算出してもよい。その場合、方程式の数が未知数の数を上回るため、一意の解ではなく、それらの方程式を最も満たす解を求めればよい。このような解の探索は、擬似逆行列を用いて求めればよく、一般的な手法であるため、ここでは、説明を省略する。
【0135】
[カメラ較正情報生成装置の動作]
次に、図9を参照(適宜図1,図8参照)して、カメラ較正情報生成装置2の動作について説明する。
なお、図9中、ステップS1からステップS5までの動作は、図5で説明した3次元座標位置推定装置1の動作と同じであるため、説明を省略する。
カメラ較正情報生成装置2は、ステップS5の後、点光源Pの3次元座標が、N点(予め定めた4点以上の点数)算出されていない場合(ステップS6でNo)、操作者によって点光源Pの位置を変えた後、ステップS2に戻って、カメラ画像の入力を行う。
【0136】
そして、カメラ較正情報生成装置2は、点光源Pの3次元座標がN点算出された後(ステップS6でYes)、ホモグラフィ行列算出手段15によって、ホモグラフィ行列を算出する(ステップS7)。
すなわち、ホモグラフィ行列算出手段15は、ステップS1で設定されたパラメータと、ステップS5で算出された点光源Pの3次元座標とから、カメラ画像上の2次元座標を理想の座標位置として算出する。そして、ホモグラフィ行列算出手段15は、その理想の座標位置と、ステップS3で検出された点光源Pのカメラ画像上の現実の座標位置との4点以上の点関係に基づいて、ホモグラフィ行列を算出する。
【0137】
以上説明したように、カメラ較正情報生成装置2は、任意の位置に配置された複数のカメラが撮影した点光源Pの画像から、カメラごとの較正情報(ホモグラフィ行列)を生成することができる。
なお、カメラ較正情報生成装置2は、コンピュータを、前記した各手段として機能させるプログラム(カメラ較正情報生成プログラム)で動作させることができる。
【符号の説明】
【0138】
S 画像撮影システム(3次元座標推定システム)
1 3次元座標位置推定装置
2 カメラ較正情報生成装置
10 パラメータ設定手段
11 画像入力手段
12 点光源検出手段(マーカ検出手段)
13 点光源方向算出手段(マーカ方向算出手段)
14 距離最小位置算出手段
15 ホモグラフィ行列算出手段
20 記憶手段

【特許請求の範囲】
【請求項1】
少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、前記マーカの3次元座標位置を推定する3次元座標位置推定装置であって、
前記カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶する記憶手段と、
前記カメラが撮影した画像を入力する画像入力手段と、
前記カメラごとに、前記画像入力手段で入力された画像において、前記マーカの2次元座標位置を検出するマーカ検出手段と、
前記カメラパラメータに基づいて、全カメラ共通のワールド座標系において、前記カメラごとに、前記マーカ検出手段で検出された2次元座標位置と、前記ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出するマーカ方向算出手段と、
このマーカ方向算出手段で算出された前記カメラごとの直線式との距離の総和が最小となる位置を、前記マーカの前記ワールド座標系における3次元座標位置として算出する距離最小位置算出手段と、
を備えることを特徴とする3次元座標位置推定装置。
【請求項2】
カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶する記憶手段を備えた3次元座標位置推定装置において、少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、前記マーカの3次元座標位置を推定する3次元座標位置推定方法であって、
画像入力手段によって、前記カメラが撮影した画像を入力する画像入力ステップと、
マーカ検出手段によって、前記カメラごとに、前記画像入力ステップで入力された画像において、前記マーカの2次元座標位置を検出するマーカ検出ステップと、
マーカ方向算出手段によって、前記カメラパラメータに基づいて、全カメラ共通のワールド座標系において、前記カメラごとに、前記マーカ検出ステップで検出された2次元座標位置と、前記ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出するマーカ方向算出ステップと、
距離最小位置算出手段によって、前記マーカ方向算出ステップで算出された前記カメラごとの直線式との距離の総和が最小となる位置を、前記マーカの前記ワールド座標系における3次元座標位置として算出する距離最小位置算出ステップと、
を含むことを特徴とする3次元座標位置推定方法。
【請求項3】
カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶する記憶手段を備えた3次元座標位置推定装置において、少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、前記マーカの3次元座標位置を推定するために、コンピュータを、
前記カメラが撮影した画像を入力する画像入力手段、
前記カメラごとに、前記画像入力手段で入力された画像において、前記マーカの2次元座標位置を検出するマーカ検出手段、
前記カメラパラメータに基づいて、全カメラ共通のワールド座標系において、前記カメラごとに、前記マーカ検出手段で検出された2次元座標位置と、前記ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出するマーカ方向算出手段、
このマーカ方向算出手段で算出された前記カメラごとの直線式との距離の総和が最小となる位置を、前記マーカの前記ワールド座標系における3次元座標位置として算出する距離最小位置算出手段、
として機能させることを特徴とする3次元座標位置推定プログラム。
【請求項4】
3次元空間上に配置したマーカの3次元座標位置を推定する3次元座標推定システムであって、
前記マーカを撮影する少なくとも30台以上のカメラと、
このカメラで撮影された画像から、前記マーカの3次元座標位置を推定する3次元座標位置推定装置と、を備え、
前記3次元座標位置推定装置は、
前記カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶する記憶手段と、
前記カメラが撮影した画像を入力する画像入力手段と、
前記カメラごとに、前記画像入力手段で入力された画像において、前記マーカの2次元座標位置を検出するマーカ検出手段と、
前記カメラパラメータに基づいて、全カメラ共通のワールド座標系において、前記カメラごとに、前記マーカ検出手段で検出された2次元座標位置と、前記ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出するマーカ方向算出手段と、
このマーカ方向算出手段で算出された前記カメラごとの直線式との距離の総和が最小となる位置を、前記マーカの前記ワールド座標系における3次元座標位置として算出する距離最小位置算出手段と、
を備えることを特徴とする3次元座標推定システム。
【請求項5】
少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、それぞれのカメラの較正情報であるホモグラフィ行列を生成するカメラ較正情報生成装置であって、
前記カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶する記憶手段と、
前記カメラが撮影した画像を入力する画像入力手段と、
前記カメラごとに、前記画像入力手段で入力された画像において、前記マーカの2次元座標位置を検出するマーカ検出手段と、
前記カメラパラメータに基づいて、全カメラ共通のワールド座標系において、前記カメラごとに、前記マーカ検出手段で検出された2次元座標位置と、前記ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出するマーカ方向算出手段と、
このマーカ方向算出手段で算出された前記カメラごとの直線式との距離の総和が最小となる位置を、前記マーカの前記ワールド座標系における3次元座標位置として算出する距離最小位置算出手段と、
前記カメラごとに、前記距離最小位置算出手段で算出された3次元座標位置を前記画像上に投影した2次元座標位置と、前記マーカ検出手段で検出された2次元座標位置との少なくとも4点以上の対応関係に基づいて、前記マーカ検出手段で検出された2次元座標位置を、前記距離最小位置算出手段で算出された3次元座標位置を前記画像上に投影した2次元座標位置に変換する前記ホモグラフィ行列を算出するホモグラフィ行列算出手段と、
を備えることを特徴とするカメラ較正情報生成装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2013−83505(P2013−83505A)
【公開日】平成25年5月9日(2013.5.9)
【国際特許分類】
【出願番号】特願2011−222706(P2011−222706)
【出願日】平成23年10月7日(2011.10.7)
【出願人】(301022471)独立行政法人情報通信研究機構 (1,071)
【Fターム(参考)】