"少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、前記マーカの3次元座標位置を推定する3次元座標位置推定装置であって、前記カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶する記憶手段と、前記カメラが撮影した画像を入力する画像入力手段と、前記カメラごとに、前記画像入力手段で入力された画像において、前記マーカの2次元座標位置を検出するマーカ検出手段と、前記カメラパラメータに基づいて、全カメラ共通のワールド座標系において、前記カメラごとに、前記マーカ検出手段で検出された2次元座標位置と、前記ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出するマーカ方向算出手段と、このマーカ方向算出手段で算出された前記カメラごとの直線式との距離の総和が最小となる位置を、前記マーカの前記ワールド座標系における3次元座標位置として算出する距離最小位置算出手段と、を備えることを特徴とする3次元座標位置推定装置。カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶する記憶手段を備えた3次元座標位置推定装置において、少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、前記マーカの3次元座標位置を推定する3次元座標位置推定方法であって、画像入力手段によって、前記カメラが撮影した画像を入力する画像入力ステップと、マーカ検出手段によって、前記カメラごとに、前記画像入力ステップで入力された画像において、前記マーカの2次元座標位置を検出するマーカ検出ステップと、マーカ方向算出手段によって、前記カメラパラメータに基づいて、全カメラ共通のワールド座標系において、前記カメラごとに、前記マーカ検出ステップで検出された2次元座標位置と、前記ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出するマーカ方向算出ステップと、距離最小位置算出手段によって、前記マーカ方向算出ステップで算出された前記カメラごとの直線式との距離の総和が最小となる位置を、前記マーカの前記ワールド座標系における3次元座標位置として算出する距離最小位置算出ステップと、を含むことを特徴とする3次元座標位置推定方法。カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶する記憶手段を備えた3次元座標位置推定装置において、少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、前記マーカの3次元座標位置を推定するために、コンピュータを、前記カメラが撮影した画像を入力する画像入力手段、前記カメラごとに、前記画像入力手段で入力された画像において、前記マーカの2次元座標位置を検出するマーカ検出手段、前記カメラパラメータに基づいて、全カメラ共通のワールド座標系において、前記カメラごとに、前記マーカ検出手段で検出された2次元座標位置と、前記ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出するマーカ方向算出手段、このマーカ方向算出手段で算出された前記カメラごとの直線式との距離の総和が最小となる位置を、前記マーカの前記ワールド座標系における3次元座標位置として算出する距離最小位置算出手段、として機能させることを特徴とする3次元座標位置推定プログラム。3次元空間上に配置したマーカの3次元座標位置を推定する3次元座標推定システムであって、前記マーカを撮影する少なくとも30台以上のカメラと、このカメラで撮影された画像から、前記マーカの3次元座標位置を推定する3次元座標位置推定装置と、を備え、前記3次元座標位置推定装置は、前記カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶する記憶手段と、前記カメラが撮影した画像を入力する画像入力手段と、前記カメラごとに、前記画像入力手段で入力された画像において、前記マーカの2次元座標位置を検出するマーカ検出手段と、前記カメラパラメータに基づいて、全カメラ共通のワールド座標系において、前記カメラごとに、前記マーカ検出手段で検出された2次元座標位置と、前記ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出するマーカ方向算出手段と、このマーカ方向算出手段で算出された前記カメラごとの直線式との距離の総和が最小となる位置を、前記マーカの前記ワールド座標系における3次元座標位置として算出する距離最小位置算出手段と、を備えることを特徴とする3次元座標推定システム。少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、それぞれのカメラの較正情報であるホモグラフィ行列を生成するカメラ較正情報生成装置であって、前記カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶する記憶手段と、前記カメラが撮影した画像を入力する画像入力手段と、前記カメラごとに、前記画像入力手段で入力された画像において、前記マーカの2次元座標位置を検出するマーカ検出手段と、前記カメラパラメータに基づいて、全カメラ共通のワールド座標系において、前記カメラごとに、前記マーカ検出手段で検出された2次元座標位置と、前記ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出するマーカ方向算出手段と、このマーカ方向算出手段で算出された前記カメラごとの直線式との距離の総和が最小となる位置を、前記マーカの前記ワールド座標系における3次元座標位置として算出する距離最小位置算出手段と、前記カメラごとに、前記距離最小位置算出手段で算出された3次元座標位置を前記画像上に投影した2次元座標位置と、前記マーカ検出手段で検出された2次元座標位置との少なくとも4点以上の対応関係に基づいて、前記マーカ検出手段で検出された2次元座標位置を、前記距離最小位置算出手段で算出された3次元座標位置を前記画像上に投影した2次元座標位置に変換する前記ホモグラフィ行列を算出するホモグラフィ行列算出手段と、を備えることを特徴とするカメラ較正情報生成装置。しかし、非特許文献1に記載の手法は、複数の誤差を含んだ未知のパラメータを適宜変化させて最適解を求めるため、その演算に時間がかかり、非特許文献1にも記載されているように、16台のカメラを用いた場合、30分程度の時間を要してしまう。これは、100台、300台等、多数のカメラを用いる場合、キャリブレーションに膨大な時間がかかってしまうという問題がある。また、非特許文献2に記載の手法は、1台のカメラごとにキャリブレーションを行う必要があるため、非特許文献1に記載の手法と同様に、多数のカメラを用いる場合、膨大な時間がかかってしまうという問題がある。さらに、この手法は、1台のカメラごとにキャリブレーションを行うため、複数のカメラ全体で、グローバルな座標を共有させることは困難である。また、非特許文献3,4に記載の手法は、カメラの配置が平面に限定されるため、多視点の画像から自由視点映像を生成するような際に、任意のカメラ配置にすることができないという問題がある。本発明は、このような問題点に鑑みてなされたものであり、任意のカメラ配置で撮影した画像から、当該画像に写ったマーカの3次元座標位置を高速に推定することが可能な3次元座標位置推定装置、その方法、そのプログラムおよび3次元座標推定システム、ならびに、3次元座標位置推定装置を用いて複数のカメラの較正情報を生成するカメラ較正情報生成装置を提供することを課題とする。本発明は、前記課題を解決するために創案されたものであり、まず、請求項1に記載の3次元座標位置推定装置は、少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、前記マーカの3次元座標位置を推定する3次元座標位置推定装置であって、記憶手段と、画像入力手段と、マーカ検出手段と、マーカ方向算出手段と、距離最小位置算出手段と、を備える構成とした。かかる構成において、3次元座標位置推定装置は、記憶手段に、カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶しておく。ここで、内部パラメータとは、カメラ固有のパラメータであって、焦点距離、画像中心や、カメラ座標系と画像座標との関係を示すパラメータ等を指す。また、外部パラメータとは、カメラの配置を特定するパラメータであって、位置光学中心や向き回転角を指す。実際のカメラでは、これらのカメラパラメータに誤差が含まれてしまうため、固有値設定値プラス誤差が個々のカメラのカメラパラメータになる。しかし、カメラの台数を十分な台数とすることで、誤差平均が十分に0に近似するため、以降の処理において、誤差を考慮する必要がない。後記するシミュレーションによれば、カメラの台数が30台以上であれば、誤差を考慮する必要がないことが分かっている。そして、3次元座標位置推定装置は、画像入力手段によって、カメラが撮影した画像を入力する。そして、3次元座標位置推定装置は、マーカ検出手段によって、カメラごとに、画像入力手段で入力された画像において、点光源等のマーカの2次元座標位置を検出する。このマーカは、3次元空間上で位置を示すものであれば、何でもよいが、例えば、LED等の点光源、特定形状の図形等である。このマーカの位置を画像上で検出するには、例えば、マーカが点光源であれば、予め定めた輝度以上の画素を点光源の位置として検出したり、予め定めた点光源の色の画素を点光源の位置として検出したりすることができる。また、マーカが図形であれば、画像認識処理によって、予め定めた形状の図形を検出すればよい。また、3次元座標位置推定装置は、マーカ方向算出手段によって、カメラパラメータに基づいて、全カメラ共通のワールド座標系において、カメラごとに、マーカ検出手段で検出された2次元座標位置と、ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出する。なお、通常は、カメラパラメータに誤差が含まれているため、3次元座標位置を推定するのに十分な直線式を求めることはできないが、本発明においては、誤差平均が0となる条件で、直線式を求めることができる。そして、3次元座標位置推定装置は、距離最小位置算出手段によって、マーカ方向算出手段で算出されたカメラごとの直線式との距離の総和が最小となる位置を、マーカのワールド座標系における3次元座標位置として算出する。また、請求項2に記載の3次元座標位置推定方法は、カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶する記憶手段を備えた3次元座標位置推定装置において、少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、前記マーカの3次元座標位置を推定する3次元座標位置推定方法であって、画像入力ステップと、マーカ検出ステップと、マーカ方向算出ステップと、距離最小位置算出ステップと、を含む手順とした。かかる手順において、3次元座標位置推定方法は、画像入力ステップで、カメラが撮影した画像を入力する。そして、3次元座標位置推定方法は、マーカ検出ステップで、カメラごとに、画像入力ステップで入力された画像において、マーカの2次元座標位置を検出するそして、3次元座標位置推定方法は、マーカ方向算出ステップで、カメラパラメータに基づいて、全カメラ共通のワールド座標系において、カメラごとに、マーカ検出ステップで検出された2次元座標位置と、ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出する。そして、3次元座標位置推定方法は、距離最小位置算出ステップで、マーカ方向算出ステップで算出されたカメラごとの直線式との距離の総和が最小となる位置を、マーカのワールド座標系における3次元座標位置として算出する。また、請求項3に記載の3次元座標位置推定プログラムのように、カメラの配置を特定する外部パラメータ、および、前記カメラの撮影画像を特定する内部パラメータとをカメラパラメータとして記憶する記憶手段を備えた3次元座標位置推定装置において、少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、前記マーカの3次元座標位置を推定するために、コンピュータを、画像入力手段、マーカ検出手段、マーカ方向算出手段、距離最小位置算出手段、として機能させる構成としてもよい。また、請求項4に記載の3次元座標推定システムのように、マーカを撮影する少なくとも30台以上のカメラと、このカメラで撮影された画像から、マーカの3次元座標位置を推定する3次元座標位置推定装置と、を備える構成としてもよい。さらに、請求項5に記載のカメラ較正情報生成装置は、少なくとも30台以上のカメラによってマーカを撮影した複数の画像から、それぞれのカメラの較正情報であるホモグラフィ行列を生成するカメラ較正情報生成装置であって、記憶手段と、画像入力手段と、マーカ検出手段と、マーカ方向算出手段と、距離最小位置算出手段と、ホモグラフィ行列算出手段と、を備える構成とした。かかる構成において、カメラ較正情報生成装置は、記憶手段に、カメラの内部パラメータおよび外部パラメータをカメラパラメータとして記憶しておく。そして、カメラ較正情報生成装置は、画像入力手段によって、カメラが撮影した画像を入力する。そして、カメラ較正情報生成装置は、マーカ検出手段によって、カメラごとに、画像入力手段で入力された画像において、マーカの2次元座標位置を検出する。また、カメラ較正情報生成装置は、マーカ方向算出手段によって、カメラパラメータに基づいて、全カメラ共通のワールド座標系において、カメラごとに、マーカ検出手段で検出された2次元座標位置と、ワールド座標系における当該カメラの位置である光学中心とを結ぶ直線式を算出する。そして、カメラ較正情報生成装置は、距離最小位置算出手段によって、マーカ方向算出手段で算出されたカメラごとの直線式との距離の総和が最小となる位置を、マーカのワールド座標系における3次元座標位置として算出する。そして、カメラ較正情報生成装置は、ホモグラフィ行列算出手段によって、カメラごとに、距離最小位置算出手段で算出された3次元座標位置をカメラの撮影画像に投影した2次元座標位置と、マーカ検出手段で検出された2次元座標位置との少なくとも4点以上の対応関係に基づいて、マーカ検出手段で検出された2次元座標位置を、距離最小位置算出手段で算出された3次元座標位置を画像上に投影した2次元座標位置に変換するホモグラフィ行列を算出する。本発明は、以下に示す優れた効果を奏するものである。請求項1~4に記載の発明によれば、マーカを撮影した画像からマーカの3次元位置を推定するため、任意のカメラ配置でマーカの3次元位置を推定することができる。また、請求項1~4に記載の発明によれば、多数のカメラ画像によって、誤差平均を零とみなすことができるため、未知のパラメータを適宜変化させて最適解を求める従来に手法に比べ、演算量を大幅に削減することができ、高速にマーカの3次元位置を推定することができる。また、請求項5に記載の発明によれば、任意のカメラ配置でカメラの較正情報を生成することができる。また、請求項5に記載の発明によれば、多数のカメラ画像によって、誤差平均を零とみなすことができるため、未知のパラメータを適宜変化させて最適解を求める従来に手法に比べ、演算量を大幅に削減することができ、高速にカメラの較正情報を生成することができる。以下、本発明の実施形態について図面を参照して説明する。[画像撮影システムの概要]最初に、図1を参照して、本発明の実施形態に係る3次元座標位置推定装置を含んだ画像撮影システムの概要について説明する。画像撮影システム3次元差表位置推定システムSは、光源装置LTと、複数のカメラkCk=1,...,Nと、3次元座標位置推定装置1とを備えている。光源装置LTは、3次元空間上の位置を光によって指し示すものであって、点光源Pを備えている。この点光源Pは、例えば、LEDLightEmittingDiodeであって、光源装置LT内の電池等の電源不図示によって、発光する。なお、ここでは、3次元空間上の位置を光によって指し示すこととするが、この位置には、点光源に限らず一般的なマーカを用いてもよい。カメラkCは、3次元空間上に配置された点光源Pを撮影するものであって、一般的は撮像装置である。3次元座標位置推定装置1は、複数のカメラkCで撮影した画像内の点光源Pの位置2次元座標から、予め定めたグローバルな座標系ワールド座標系における点光源Pの位置3次元座標を推定するものである。なお、個々のカメラkCのパラメータ内部パラメータ、外部パラメータ、例えば、焦点距離、カメラkCの向き等には、固有値設定値に誤差が含まれてしまい、実際には固有値設定値プラス誤差が個々のカメラのパラメータになる。本発明においては、その誤差平均が0であるものとして、点光源Pの3次元座標を推定する。そのため、カメラkCの数は、多ければ多いほうがよく、例えば、30台以上、好ましくは100台以上が望ましい。すなわち、本発明は、個々のカメラkCの誤差平均を0零ベクトルとみなすことができれば、カメラkCを個別に較正することなく、大規模なカメラアレイにおいて、点光源Pの3次元座標を推定できることを明らかにし、それを実現した発明である。また、カメラkCは任意の位置に配置することができるが、例えば、図2に示すように、円形ドーム内の内面に円環状に複数のカメラkCを、点光源Pの方向に向けて配置する。以下、本発明の実施形態に係る3次元座標位置推定装置1の構成および動作について詳細に説明する。[3次元座標位置推定装置の構成]まず、図3を参照適宜図1参照して、3次元座標位置推定装置1の構成について説明する。図3に示すように、3次元座標位置推定装置1は、パラメータ設定手段10と、画像入力手段11、点光源検出手段12と、点光源方向算出手段13と、距離最小位置算出手段14と、記憶手段20と、を備えている。パラメータ設定手段10は、カメラkCk=1,...,Nのパラメータカメラパラメータ:内部パラメータ、外部パラメータを設定するものである。このパラメータ設定手段10は、外部から、図示を省略した入力装置を介して、パラメータを入力し、記憶手段20に書き込む。このパラメータ設定手段10において設定する内部パラメータは、撮影画像を特定する情報であって、焦点距離、画像中心およびカメラ座標系と画像座標との関係を示すパラメータである。また、このパラメータ設定手段10において設定する外部パラメータは、カメラの配置を特定する情報であって、光学中心および回転角である。ここで、図4を参照して、パラメータ設定手段10において設定する各パラメータについて説明する。図4は、1台のカメラkCをピンホールカメラモデルとしてモデル化し、カメラkCと、点光源Pとの関係を示している。図4に示すように、全カメラkC共通の座標系であるワールド世界座標系をXW,YW,ZW、個々のカメラkCごとの座標系であるカメラ座標系をXC,YC,ZCとする。ここで、光学中心Tを通り、カメラkCの撮像面画像面Iと直交する点が画像中心u0,v0である。また、このときの光学中心Tと撮像面Iとの距離が焦点距離fである。なお、光学中心Tは、ワールド座標系上のTX,TY,TZに存在する。また、ワールド座標系を基準としたとき、カメラ座標系は、それぞれ、XW軸に対してθX、YW軸に対してθY、ZW軸に対してθZ回転している。このとき、焦点距離fおよび画像中心u0,v0は、個々のカメラkCの内部パラメータである。なお、内部パラメータには、図示を省略するが、カメラ座標系のX座標と画像座標のu座標との関係を示すスケールファクタsuや、カメラ座標系のY座標と画像座標のv座標との関係を示すスケールファクタsvも存在する。これらの内部パラメータは、カメラkC固有の値であり、同一のカメラであれば、誤差を考慮に入れなければ基本的に同一の値である。本実施形態においては、各カメラの内部パラメータは同一誤差は除くであるものとする。また、光学中心Tおよび回転角θX,θY,θZは、設置時に定まるカメラkCごとに異なる外部パラメータである。図3に戻って、3次元座標位置推定装置1の構成について説明を続ける。画像入力手段11は、複数のカメラkCが撮影した画像を入力するものである。この画像入力手段11は、画像の入力元を、順次、カメラ1C,2C,...,NCと切り替えて、画像を入力する。この入力された画像は、カメラkCを特定する識別情報例えば、識別子kとともに点光源検出手段12に出力される。なお、画像入力手段11は、すべての画像を入力し、記憶手段20に蓄積した後に、点光源検出手段12にすべての画像を入力したことを通知してもよいし、カメラkCごとの個々の画像を入力する度に、点光源検出手段12に通知し、点光源検出手段12の処理の完了が通知された段階で、次の画像を入力することとしてもよい。点光源検出手段マーカ検出手段12は、画像入力手段11から入力されたカメラkCごとの画像において、3次元位置を示すマーカである点光源Pを検出するものである。すなわち、点光源検出手段12は、カメラkCの撮影画像において、点光源Pが写っている2次元座標画像座標の位置を特定するものである。なお、この点光源検出手段12における点光源Pの位置検出は、一般的な手法を用いればよい。例えば、点光源Pの輝度をまわりの環境よりも明るい輝度にして、カメラkCで撮影を行い、点光源検出手段12が、画像内において、最も輝度値が高い画素の位置を点光源Pの2次元座標位置として検出する。あるいは、点光源Pを予め定めた色例えば、赤で発光させ、点光源検出手段12が、画像内において、発光色と同じ色を探索し、該当する画素の位置を点光源Pの2次元座標位置として検出する。また、点光源検出手段12は、点光源Pの位置が1画素ではなく、領域を持った大きさで検出された場合、当該領域の中心重心を点光源Pの2次元座標位置とする。なお、ここでは、マーカとして点光源を用いた例を説明するが、予め形状を定めた図形等であっても構わない。例えば、×印をマーカとした場合、3次元空間上の位置にマーカを貼付して、点光源検出手段マーカ検出手段12が、パターンマッチング等によって、画像上で×印を検索し、特定の位置例えば×印が交差する点をマーカの2次元座標位置とする。また、マーカが丸印の形状であれば、点光源検出手段マーカ検出手段12は、画像上で円を検出し、その円の中心をマーカの2次元座標位置とする。あるいは、マーカが四角形の形状であれば、点光源検出手段マーカ検出手段12は、画像上で矩形を検出し、その対角線の交点をマーカの2次元座標位置とすればよい。なお、このように、マーカとして図形を用いる場合、図2で示したような円環上のカメラ配置では、カメラkCのすべてでマーカを撮影することはできない。そのため、このようなカメラ配置では、点光源が望ましい。この点光源検出手段12は、検出した点光源Pの2次元座標位置を、検出した画像を撮影したカメラkCと対応付けて、点光源方向算出手段13に出力する。ここでは、点光源検出手段12は、検出した点光源Pの2次元座標位置を、検出した画像を撮影したカメラkCと対応付けて、記憶手段20に書き込み、その旨を点光源方向算出手段13に通知することとする。点光源方向算出手段マーカ方向算出手段13は、点光源検出手段12で検出された画像上の点光源Pの2次元座標位置と、カメラkCのパラメータ内部パラメータ、外部パラメータとに基づいて、全カメラ共通のワールド座標系において、カメラkCの光学中心Tから、3次元空間における点光源Pへの方向を示す直線式を算出するものである。ここで、直線式を算出するとは、直線式を規定する係数係数行列を算出するということである。具体的には、点光源方向算出手段13は、以下の式1を、光学中心Tと点光源Pとを結んだ直線式として算出する。なお、以下の式において、表記を簡略化するため、個々のカメラを特定する左上の添え字kを省略している。なお、λは任意の実数である。また、行列X,B0 ̄,C0 ̄は、以下の通りである。また、ここで、行列の右上の添え字tは、転置行列を示す。ここで、式2の行列Xは、点光源検出手段12で検出された画像上の点光源Pの2次元座標に対応する3次元空間中の点実際には、λに応じて変化する点の集合、すなわち直線となるの3次元座標である。また、式3に含まれる行列xは、点光源検出手段12で検出された画像上の点光源Pの2次元座標である座標u,vを含んだ以下の式5に示す行列である。また、式3のB0X,B0Y,B0Zは、行列B0 ̄の成分であって、スカラ値である。同様に、式4のC0X,C0Y,C0Zは、行列C0 ̄の成分であって、スカラ値である。また、式3および式4の行列RX-θX ̄,RY-θY ̄,RZ-θZ ̄,A ̄-1,Tは、以下の通りである。ここで、式6~式8のRX ̄,RY ̄,RZ ̄は、カメラkCの回転角θX,θY,θZから求められる外部パラメータの行列である。また、式9のA ̄-1は、カメラkCの焦点距離f、画像中心u0,v0およびスケールファクタsu,svから求められる内部パラメータの行列である。また、式10のTは、ワールド座標系におけるカメラkCの光学中心の3次元座標を示す外部パラメータの行列である。なお、前記式1に示した直線を用いる理由については後で詳細に説明する。この点光源方向算出手段13は、それぞれのカメラkCに対応して算出した直線式を距離最小位置算出手段14に出力する。すなわち、点光源方向算出手段13は、前記式1の直線式を規定する係数係数行列である前記式3および式4の行列B0 ̄および行列C0 ̄の成分を算出して、距離最小位置算出手段14に出力する。ここでは、点光源方向算出手段13は、算出した直線式係数行列を、カメラkCと対応付けて、記憶手段20に書き込み図中、L1~LN、その旨を距離最小位置算出手段14に通知することとする。距離最小位置算出手段14は、点光源方向算出手段13で算出された複数の直線式で表される直線において、それらの直線との距離の総和が最小となる3次元空間上の点の位置を、点光源Pの3次元座標位置として算出するものである。すなわち、距離最小位置算出手段14は、最小2乗法により、以下の式11に示すように、3次元空間上の点の座標をX^としたとき、カメラkCk=1,...,Nごとに算出した前記式1において、XすなわちkXとの距離の2乗が最小となる座標X^を点光源Pの3次元座標位置として算出する。なお、行列の右上の添え字tは、転置行列を示す。具体的には、距離最小位置算出手段14は、前記式1の直線、すなわち、前記式3および式4の係数行列を用いて、以下の式12の値が最小となる座標X^を算出する。なお、ここで、X~,Y~,Z~は、以下の式13に示すように、行列X^の成分である。ここで、前記式12が最小になるX^は、一般的な手法を用いて解けばよい。すなわち、距離最小位置算出手段14は、前記式12をX~で偏微分し、値が0となる式を求める。また、同様に、距離最小位置算出手段14は、前記式12をY~とZ~とでそれぞれ偏微分し、値が0となる式を求める。そして、距離最小位置算出手段14は、偏微分によって得られた3つの方程式を解くことで、点光源Pの3次元座標位置となる座標X^を算出する。記憶手段20は、パラメータ設定手段10によって設定されるパラメータを記憶するもので、半導体メモリ等の一般的な記憶媒体である。この記憶手段20には、パラメータ設定手段10によって設定されるパラメータ以外にも、点光源検出手段12が検出したカメラkCごとの点光源Pの画像座標2次元座標や、点光源方向算出手段13が検出した直線式等が記憶される。以上説明したように、3次元座標位置推定装置1は、3次元空間上の任意の位置に配置された複数のカメラが撮影した点光源Pの画像から、点光源Pの3次元座標位置を求めることができる。また、3次元座標位置推定装置1は、多数のカメラのパラメータ内部パラメータ、外部パラメータの誤差平均が零ベクトルであると仮定することで、個々のカメラを個別にキャリブレーションする必要がない。また、従来のように未知のパラメータを変化させて最適解を求めるのではなく、パラメータから直接的に解を求めるため、演算に要する時間が短縮され、高速に点光源Pの3次元座標位置を算出することができる。なお、ここでは、すべてのカメラkCを光源装置LT点光源Pの方向に向けた構成で説明したが、これに限定されるものではない。すなわち、カメラkCが任意の方向に向いている場合であっても、点光源Pを検出できたカメラkCの画像から、3次元座標位置を算出すればよい。その場合、点光源検出手段12は、点光源Pを検出できなかったカメラkCについては、点光源方向算出手段13に2次元座標を通知しない、あるいは、検出できなかった旨を通知し、点光源方向算出手段13が、点光源Pを検出できた2次元座標から、直線を算出すればよい。また、ここでは、1つのカメラ画像として、カメラkCが点光源等のマーカを1つ撮影することとしたが、複数のマーカを一度に撮影することとしてもよい。例えば、マーカとして、チェスボードのような格子模様を用いた場合、点光源検出手段マーカ検出手段12は、直線が交差する複数の点格子点を検出し、例えば、左上の格子点から右下方向に順次、マーカの2次元座標位置として点光源方向算出手段マーカ方向算出手段13に出力する。そして、点光源方向算出手段マーカ方向算出手段13は、マーカ格子点ごとに、カメラkCの光学中心Tから、3次元空間におけるマーカへの方向を示す直線式を算出する。また、距離最小位置算出手段14は、点光源方向算出手段マーカ方向算出手段13が算出した直線式を用いて、マーカ格子点ごとに3次元座標位置を算出する。これによって、3次元座標位置推定装置1は、一度のカメラ撮影で、複数の3次元座標位置を推定することができる。以上説明した3次元座標位置推定装置1は、コンピュータを、前記した各手段として機能させるプログラム3次元座標位置推定プログラムで動作させることができる。[3次元座標位置推定装置の動作]次に、図5を参照適宜図1,図3参照して、3次元座標位置推定装置1の動作3次元座標位置推定方法について説明する。まず、3次元座標位置推定装置1は、パラメータ設定手段10によって、カメラkC固有のパラメータ内部パラメータである焦点距離f、画像中心u0,v0およびスケールファクタsu,svと、カメラkCを設置した際のパラメータ外部パラメータである光学中心kTおよび回転角kθX,kθY,kθZとを、外部から入力し、記憶手段20に設定記憶するステップS1。なお、ステップS1の動作は、カメラ配置を変更する必要がなければ、予め最初に1回だけ行えばよい。そして、3次元座標位置推定装置1は、画像入力手段11によって、複数のカメラkCが撮影した画像を、切り替えて順次入力するステップS2。ここでは、画像入力手段11は、逐次入力した画像を、カメラkCの識別情報とともに、記憶手段20に書き込む。そして、3次元座標位置推定装置1は、点光源検出手段12によって、ステップS2で入力されたカメラkCごとの画像2次元画像において、点光源Pを検出するステップS3。この点光源検出手段12は、点光源Pの輝度あるいは色によって、画像上で点光源Pを検出し、その2次元座標の位置を点光源Pの画像上の位置として特定する。ここでは、点光源検出手段12は、特定した点光源Pの2次元座標を、カメラkCに対応付けて記憶手段20に書き込む。その後、3次元座標位置推定装置1は、点光源方向算出手段13によって、ステップS3で検出された点光源Pの画像上の2次元座標位置と、ステップS1で設定されたカメラkCのパラメータ内部パラメータ、外部パラメータとに基づいて、カメラkCの光学中心Tから、3次元空間における点光源Pへの方向を示す直線式を算出するステップS4。ここでは、点光源方向算出手段13は、前記式1により、個々のカメラkCごとに、光学中心から画像上の点光源Pの2次元座標を通って、3次元空間上の点光源Pに至る直線を算出する。理想的には、このステップS4で求められた個々のカメラkCごとの直線の交点に点光源Pが存在することになる。そこで、3次元座標位置推定装置1は、距離最小位置算出手段14によって、ステップS4で算出された複数の直線において、それらの直線との距離の総和が最小となる3次元空間上の点の位置を、点光源Pの3次元座標位置として算出するステップS5。ここでは、距離最小位置算出手段14は、最小2乗法により、前記式12において、直線との距離の2乗の総和が最小となる座標を点光源Pの3次元座標位置として算出する。以上の動作によって、3次元座標位置推定装置1は、任意の位置に配置された複数のカメラが撮影した点光源Pの画像から、点光源Pの3次元座標位置を求めることができる。<光学中心と点光源とを結ぶ直線の算出について>次に、点光源方向算出手段13において算出する直線が、前記式1により求められる理由について説明する。なお、以降の説明において、符号の左上の添え字kは、カメラkCk=1,...,Nのいずれかを示す識別子とする。前提条件まず、本発明において、予め成立している前提条件について説明する。条件1各カメラkCの光学中心kTは、所望の位置にあり既知である。この光学中心は、現状の技術において、製造時の精度が十分に確保されており、また、カメラkCを配置する位置は既知であるため、誤差はないものとみなせる。条件2カメラkCの焦点距離kfは、誤差を含み以下の式14、式15の条件を満たすものとする。ここで、fは焦点距離の固有値設定値、Δkfはカメラごとに異なる誤差である。条件3カメラkCの画像中心[ku0,kv0]tは、誤差を含み以下の式16~式18の条件を満たすものとする。ここで、u0およびv0は画像中心の固有値設定値、Δku0およびΔkv0はカメラごとに異なる誤差である。条件4カメラkCのワールド座標系からカメラ座標系への回転角kθX,kθY,kθZは、誤差を含み以下の式19~式24の条件を満たすものとする。ここで、θX,θY,θZは、カメラごとの回転角の設定値、ΔkθX,ΔkθY,ΔkθZは、カメラごとの設置時における回転角の誤差である。条件5すべてのカメラkCのせん断係数画像平面上のu軸とv軸の傾きは、0とする。また、レンズ歪は考慮しないものとする。現状の技術において、せん断係数およびスケールファクタは、製造時の精度が十分に確保されており、誤差はないものとみなせる。また、レンズ歪は一般的なレンズ歪補正技術を用いて補正すればよいため、ここでは考慮しない。この一般的なレンズ歪補正技術とは、例えばレンズの半径方向の歪を6次の多項式で補正する技術などである。なお、前記した式15,式17,式18,式22~式24は、多数例えば、30台以上のカメラを用いた場合、誤差は0付近に確率的に分布し、その平均は0とみなしてよいという前提を示している。直線式の導出次に、前記した条件1~5により、カメラkCで撮影された画像において検出された点光源Pの画像上の2次元座標から、前記式1に示した光学中心Tと点光源Pとを結んだ直線式が導き出せる理由について説明する。なお、以下の式において、表記を簡略化するため、個々のカメラを特定する左上の添え字kを省略している。一般に、光学中心Tと、画像上の2次元座標xとは、以下の式25の関係を有する。なお、λは任意の実数である。また、行列x,A,R,X,Tは、以下の通りである。また、ここで、行列の右上の添え字tは、転置行列を示す。この式25の行列xは、画像上の点光源Pの2次元座標である座標u,vを含んだ以下の式26に示す行列である。また、行列Aは、以下の式27に示す内部パラメータ行列である。また、行列Rは、以下の式28~式31に示す回転角から求められる外部パラメータ行列である。また、行列Xは、以下の式32に示すように、前記式26の2次元座標に対応する3次元空間中の点実際には、λに応じて変化する点の集合、すなわち直線となるの3次元座標である。また、行列Tは、以下の式33に示すように、外部パラメータである光学中心の3次元座標である。なお、行列の右上の添え字tは、転置行列を示す。ここで、前記式25を変形すると、以下の式34の直線式となる。行列A-1,R-1のそれぞれについて、以下でさらに展開する。ここで、行列A,RXθX,RYθY,RZθZの誤差を含まない行列を、以下の式35~式38に示すように、A ̄,RXθX ̄,RYθY ̄,RZθZ ̄と定義する。すると、前記式35~式38の逆行列は、以下の式39~式42となる。この式40~式42から、誤差を含んだRXθX,RYθY,RZθZの逆行列は、以下の式43~式45で表すことができる。以上より、前記式34の直線式における行列A-1,R-1は、それぞれ以下の式46、式47となる。以上より、前記式34の直線式は、以下のように変形することができる。この式48を展開し、誤差が2回以上乗算されたものを無視してまとめると、以下の式49となる。なお、行列B0,BX,BY,BZ,BF,Bu0,Bv0,C0,CX,CY,CZは、以下の式50~式60に示した3行1列の行列である。このように、前記式34は、厳密には、前記式49で表すことができる。ここで、前記式49によって、カメラkCごとに算出された複数の直線式から、それらの直線との距離の総和が最小となる3次元空間上の点の位置を算出する場合を考える。なお、式49は、カメラを特定する添え字kを付加して表すと、以下の式61となる。そして、前記式11と同様に、3次元空間上の点の座標を前記式13に示したX^としたとき、カメラkCk=1,...,Nごとの直線式である前記式61において、kXとの距離の2乗が最小となる座標X^を求めることとする。なお、この式61は、未知の誤差であるΔkθX,ΔkθY,ΔkθZ,Δkf,Δku0,Δkv0が存在するため、通常、当該式を用いた演算を行うことはできない。ここで、前記式11内の行列の積を以下の式62のように変形する。なお、行列kBQQ=0,X,Y,Z,f,u0,v0を示すは、[kBQXkBQYkBQZ]tの成分からなり、前記式62では、例えば、行列kB0の成分を[kB0XkB0YkB0Z]tと記述している。また、同様に、行列kCQQ=0,X,Y,Zを示すは、[kCQXkCQYkCQZ]tの成分からなり、前記式62では、例えば、行列kCZの成分を[kCZXkCZYkCZZ]tと記述している。また、前記式62において、kDX,kDY,kDZ,kDf,kDu0,kDV0は、以下の式63~式68をまとめたものである。よって、前記式62により、前記式11は、以下の式69のように変形することができる。これに、前提条件である前記式15,式17,式18,式22~式23を適用すると、式69は、以下の式70のように変形することができる。このように、前提条件を考慮すると、未知の誤差であるΔkθX,ΔkθY,ΔkθZ,Δkf,Δku0,Δkv0の乗算項は、各直線から座標X^を求める際に必要がないことがわかる。よって、前記式61は、以下の式71に示す直線式であればよいことになる。このように、多数のカメラkCを用いて点光源Pの位置3次元座標を推定する3次元座標位置推定装置1では、点光源方向算出手段13において、前記式1の直線式を用いればよいことになる。<3次座標位置検出のシミュレーション評価>次に、本発明の実施形態に係る3次元座標位置推定装置1をシミュレーションした評価結果について説明する。カメラの配置および設定ここでは、図6に示すように、半径1500mmの円周上に均等にカメラkCを配置してシミュレーションを行った。また、すべてのカメラkCは、円の中心を向いている。また、ワールド座標系の3次元空間中の位置X=[100[mm],0[mm],0[mm]]に点光源Pが存在しているものとする。また、それぞれのカメラkCの設定は、以下の表に示す通りである。また、ここでは、未知の誤差を以下の条件で含ませた2つの条件でシミュレーションを行った。条件A焦点距離の誤差Δkfは、標準偏差1[mm]の正規分布に従う乱数である。画像中心の誤差Δku0,Δkv0は、それぞれ標準偏差100[pixel]の正規分布に従う乱数である。回転角ΔθX,ΔθY,ΔθZは、それぞれ標準偏差0.5[degree]の正規分布に従う乱数である。条件B画像中心の誤差Δku0,Δkv0は、それぞれ標準偏差50[pixel]の正規分布に従う乱数である。焦点距離、回転角の条件は、条件Aと同じであるこのような条件の下、カメラkCの台数を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^|、すなわち推定誤差について平均および標準偏差を算出した。シミュレーション結果シミュレーション結果を図7に示す。図7は、横軸がカメラ数[台]、縦軸が推定誤差[mm]である。また、グラフ中の四角形は、それぞれのカメラ台数における|X-X^|の平均を示し、エラーバーは、標準偏差を示している。図7に示すように、カメラの台数を増やすほど、|X-X^|の平均が小さくなっていくことがわかる。例えば、カメラ台数が30台以上であれば、推定誤差を10mm以内に抑えることができる。また、カメラの台数を増やすほど、標準偏差が小さくなり、より精度が向上していることがわかる。また、条件Aに比べて、未知の誤差が小さい条件Bの方が推定誤差が少なくなっており、本発明が、未知の誤差を考慮して推定を行っていることがわかる。このように、本発明は、カメラの台数を多くすることで、例えば、30台以上、好ましくは100台以上とすることで、少ない推定誤差で、点光源Pの3次元座標位置を推定することができる。なお、この推定誤差は、カメラの設置位置点光源からの距離等等の条件によっても変わるため、カメラ台数は、推定誤差の許容範囲等に応じて、適宜選択すればよい。以上、本発明に実施形態に係る3次元座標位置推定装置1の構成および動作、ならびに、その評価について説明したが、この3次元座標位置推定装置1を用いることで、カメラの較正情報を生成することが可能になる。以下では、3次元座標位置推定装置1を構成として含んだカメラ較正情報生成装置について説明する。[カメラ較正情報生成装置の構成]まず、図8を参照して、カメラ較正情報生成装置2の構成について説明する。なお、カメラ較正情報生成装置2への入力は、3次元座標位置推定装置1と同様のカメラ画像であって、図1図2で示した画像撮影システムSにおいて、3次元座標位置推定装置1と置き換えてシステムを構成することができる。以下、適宜図1を参照することとする。このカメラ較正情報生成装置2は、複数のカメラkCで撮影した画像内の点光源Pの位置2次元座標から、個々のカメラkCが撮影した画像を較正キャリブレーションするための較正情報ホモグラフィ行列を生成するものである。ここで、ホモグラフィ行列とは、3次元空間上の点の位置X0が、カメラで撮影した画像内の位置x0に写っていたとき、この位置x0を、理想的な内部パラメータを持つカメラであれば写るはずの位置x0′に変換する行列である。すなわち、このホモグラフィ行列は、複数のカメラが3次元空間上で撮影を行う際に、同一のワールド座標系を基準とした画像に変換するための較正情報である。なお、カメラ較正情報生成装置2は、少なくとも点光源Pの位置を4回変えて、較正情報を生成する。その理由については後記する。ここでは、カメラ較正情報生成装置2は、パラメータ設定手段10と、画像入力手段11、点光源検出手段12と、点光源方向算出手段13と、距離最小位置算出手段14と、ホモグラフィ行列算出手段15と、記憶手段20と、を備えている。ここで、ホモグラフィ行列算出手段15以外の構成は、図2で説明した3次元座標位置推定装置1の構成と同一であるため、同一の符号を用いて説明を省略する。ただし、点光源検出手段12や点光源方向算出手段13は、点光源Pの位置を変えて撮影した画像から検出した点光源Pの画像座標2次元座標を、カメラkCのそれぞれについて、複数、記憶手段20に記憶しておく。また、距離最小位置算出手段14は、算出した点光源Pの3次元座標をホモグラフィ行列算出手段15に出力する。ここでは、距離最小位置算出手段14は、算出した3次元座標を記憶手段20に書き込み図中、X1,X2,...、その旨をホモグラフィ行列算出手段15に通知することとする。これによって、例えば、カメラ1Cの画像において検出された点光源Pの画像座標x11,x12,...に対して、点光源Pの3次元座標X1,X2,...が対応付けられることになる。ホモグラフィ行列算出手段15は、距離最小位置算出手段14で算出された少なくとも4点以上の点光源Pの画像座標2次元座標および3次元座標に基づいて、カメラkCごとのホモグラフィ行列を算出するものである。このホモグラフィ行列算出手段15は、まず、カメラkCごとに、距離最小位置算出手段14で算出された3次元座標を、カメラ画像上に投影することで点光源Pの2次元座標を算出する。すなわち、ホモグラフィ行列算出手段15は、距離最小位置算出手段14で算出された3次元座標と、パラメータ設定手段10で設定されたパラメータとに基づいて、点光源Pの3次元座標とカメラkCの光学中心Tとを結ぶ直線と、焦点距離fにおけるカメラ画像の画像平面との交点を、理想的な内部パラメータを持つカメラであれば写るはずの位置x0′として算出する。なお、このとき、現実にカメラ画像上で検出された点光源Pの位置は、点光源検出手段12で検出された位置x0である。そして、ホモグラフィ行列算出手段15は、現実の座標位置x0から理想の座標位置x0′への変換行列をホモグラフィ行列として算出する。ここで、ホモグラフィ行列Hは、以下の式72に示す3行3列の行列である。すなわち、現実の座標位置x0をx,yt、理想の座標位置x0′をx′,y′tとしたとき、以下の式73が成り立つ。なお、sは、スケールパラメータである。この式73を展開し、sを削除すると、以下の式74となる。この式74は、未知数h11,h12,h13,h21,h22,h23,h31,h32が8個で、線形方程式が2つである。よって、この式74の方程式について、4点の点関係がわかれば、未知数を求めることができる。そこで、ホモグラフィ行列算出手段15は、3次元座標とパラメータとから求めた理想の2次元座標理想の座標位置と、点光源検出手段12で検出された2次元座標現実の座標位置とについて、4点の点関係から、前記式74の方程式8個の方程式を解くことで、ホモグラフィ行列Hを算出する。なお、ホモグラフィ行列算出手段15は、必ずしも4点の対応関係だけでホモグラフィ行列Hを算出する必要はなく、5点以上の対応関係でホモグラフィ行列Hを算出してもよい。その場合、方程式の数が未知数の数を上回るため、一意の解ではなく、それらの方程式を最も満たす解を求めればよい。このような解の探索は、擬似逆行列を用いて求めればよく、一般的な手法であるため、ここでは、説明を省略する。[カメラ較正情報生成装置の動作]次に、図9を参照適宜図1,図8参照して、カメラ較正情報生成装置2の動作について説明する。なお、図9中、ステップS1からステップS5までの動作は、図5で説明した3次元座標位置推定装置1の動作と同じであるため、説明を省略する。カメラ較正情報生成装置2は、ステップS5の後、点光源Pの3次元座標が、N点予め定めた4点以上の点数算出されていない場合ステップS6でNo、操作者によって点光源Pの位置を変えた後、ステップS2に戻って、カメラ画像の入力を行う。そして、カメラ較正情報生成装置2は、点光源Pの3次元座標がN点算出された後ステップS6でYes、ホモグラフィ行列算出手段15によって、ホモグラフィ行列を算出するステップS7。すなわち、ホモグラフィ行列算出手段15は、ステップS1で設定されたパラメータと、ステップS5で算出された点光源Pの3次元座標とから、カメラ画像上の2次元座標を理想の座標位置として算出する。そして、ホモグラフィ行列算出手段15は、その理想の座標位置と、ステップS3で検出された点光源Pのカメラ画像上の現実の座標位置との4点以上の点関係に基づいて、ホモグラフィ行列を算出する。以上説明したように、カメラ較正情報生成装置2は、任意の位置に配置された複数のカメラが撮影した点光源Pの画像から、カメラごとの較正情報ホモグラフィ行列を生成することができる。なお、カメラ較正情報生成装置2は、コンピュータを、前記した各手段として機能させるプログラムカメラ較正情報生成プログラムで動作させることができる。"