(57)【特許請求の範囲】
【請求項１】
複数の画素を有する２次元の画像変換素子と、該画像変換素子と３次元のワールド座標空間との間で結像関係を形成する光学系とを備える光学装置の較正装置であって、
前記画像変換素子の２次元の画素座標と、前記ワールド座標空間の３次元のワールド座標との対応を示す較正データを取得する較正データ取得部と、
該較正データ取得部により取得された前記較正データに、前記画素座標に対応する前記ワールド座標空間の主光線の方向を前記画素座標の関数として表したカメラモデルを当てはめて、該カメラモデルのパラメータを算出するパラメータ算出部とを備える較正装置。
【請求項２】
前記光学系の画角θと像高ｙの射影関係が、射影の焦点距離ｆを用いて、概ね射影式
ｙ＝ｆＰ（θ）で表されるとき、
前記パラメータ算出部が、前記較正データ取得部により取得された前記較正データの３次元のワールド座標（ｘ，ｙ，ｚ）を、該ワールド座標に等しい３次元の球座標（ｒ，θ，φ）に基づいて変換した２次元の座標（Ｐ（θ）ｃｏｓφ，Ｐ（θ）ｓｉｎφ）を、前記画素座標の関数として表した前記カメラモデルを当てはめる請求項１に記載の較正装置。
【請求項３】
前記パラメータ算出部は、前記主光線の方向および前記主光線が通る１点の座標を前記画素座標の関数として表した前記カメラモデルを当てはめる請求項１に記載の較正装置。
【請求項４】
前記パラメータ算出部が、前記主光線の方向と直交する平面と該主光線の交点の前記平面上の２次元の座標で規定される前記主光線が通る１点の座標を前記画素座標の関数として表した前記カメラモデルを当てはめる請求項３に記載の較正装置。
【請求項５】
前記平面が、前記光学系の入射瞳の中心を通る請求項４に記載の較正装置。
【請求項６】
前記パラメータ算出部が、前記主光線の方向を前記画素座標の関数として表したモデルと、前記主光線が通る１点の座標を前記画素座標の関数として表したモデルを交互に更新することにより、前記較正データに前記カメラモデルを当てはめる請求項３に記載の較正装置。
【請求項７】
前記パラメータ算出部が、前記カメラモデルに対する前記較正データの残差の分布に、前記画素座標の関数として表した直線のモデルを当てはめて、該直線のモデルの切片のパラメータに基づいて、前記主光線が通る１点の座標を前記画素座標の関数として表したモデルのパラメータを更新する請求項６に記載の較正装置。
【請求項８】
前記パラメータ算出部が、前記較正データの画素座標から前記カメラモデルで求めた前記主光線が通る１点の座標に対する、前記較正データのワールド座標の方向を表すデータを求め、そのデータに前記主光線の方向を前記画素座標の関数として表したモデルを当てはめて、そのモデルのパラメータを更新する請求項６に記載の較正装置。
【請求項９】
前記光学系の画角θと像高ｙとの射影関係が、射影の焦点距離ｆを用いて、概ね射影式ｙ＝ｆＰ（θ）で表されるとき、
前記パラメータ算出部が、前記較正データ取得部により取得された前記較正データの３次元のワールド座標（ｘ，ｙ，ｚ）を、該ワールド座標に等しい３次元の球座標（ｒ，θ，φ）に基づいて３次元の座標（ｒＰ（θ）ｃｏｓφ，ｒＰ（θ）ｓｉｎφ，ｒ）に変換してから、変換した座標系における直線を前記画素座標の関数として表したカメラモデルを当てはめる請求項１に記載の較正装置。
【請求項１０】
前記パラメータ算出部が、前記変換した座標系のｒ軸に対する傾きとｒ軸に垂直な面との交点である切片で規定される前記直線の前記傾きおよび前記切片をそれぞれ前記画素座標の２次元の関数として表したカメラモデルを当てはめる請求項９に記載の較正装置。
【請求項１１】
前記画素座標の関数が、２次元の平面間の結像関係を表す関数と同じ形式である請求項２、請求項４または請求項１０のいずれかに記載の較正装置。
【請求項１２】
前記２次元の平面間の結像関係を表す関数が、前記画素座標の複数の２次元ベクトル関数の線形和で表される請求項１１に記載の較正装置。
【請求項１３】
前記パラメータ算出部が、前記カメラモデルを線形の最小二乗法で前記較正データに当てはめる請求項２または請求項９に記載の較正装置。
【請求項１４】
前記パラメータ算出部が、前記変換した座標系（ｒＰ（θ）ｃｏｓφ，ｒＰ（θ）ｓｉｎφ，ｒ）における前記直線を前記画素座標の関数として表したカメラモデルを当てはめて求めたパラメータに基づいて、前記主光線の方向および前記主光線が通る１点の座標のそれぞれを前記画素座標の関数として表したカメラモデルのパラメータの初期値を設定してから、該カメラモデルを繰り返し最適化して、該カメラモデルのパラメータを算出するパラメータ算出部とを備える請求項９に記載の較正装置。
【請求項１５】
前記パラメータ算出部が、前記較正データ取得部により取得された前記較正データの内、３次元のワールド座標を、該ワールド座標の回転を表す３つの回転角の一以上の回転角で回転したワールド座標に変換した較正データに、前記カメラモデルを当てはめて、該カメラモデルの残差が最小になる一以上の回転角を求める請求項１に記載の較正装置。
【請求項１６】
前記パラメータ算出部が、前記較正データ取得部により取得された前記較正データの内、３次元のワールド座標を、該ワールド座標の平行移動を表す３つの平行移動成分の一以上の成分で平行移動したワールド座標に変換した較正データに、前記カメラモデルを当てはめて、該カメラモデルの残差が最小になる一以上の平行移動成分を求める請求項１または請求項１５に記載の較正装置。
【請求項１７】
前記光学装置が、複数の画像変換素子および該画像変換素子と３次元のワールド座標空間との間で結像関係を形成する光学系を備え、
前記較正データ取得部が各前記画像変換素子および前記光学系の前記較正データを取得し、
前記パラメータ算出部が、各前記画像変換素子および前記光学系の前記較正データに、各該画像変換素子の２次元の画素座標の関数として表した前記カメラモデルを当てはめる請求項１から請求項１６のいずれかに記載の較正装置。
【請求項１８】
前記光学装置が撮影装置であり、
前記画像変換素子が撮像素子であり、
前記光学系が撮像光学系である請求項１から請求項１７のいずれかに記載の較正装置。
【請求項１９】
前記光学装置が投影装置であり、
前記画像変換素子が画像形成素子であり、
前記光学系が投影光学系である請求項１から請求項１７のいずれかに記載の較正装置。
【請求項２０】
請求項１から請求項１９のいずれかに記載の較正装置により算出されたパラメータが設定された前記カメラモデルを搭載した光学装置。
【請求項２１】
前記カメラモデルを、複数の画素座標と２つの平面あるいは曲面上のワールド座標との対応を表す離散データとして保持する請求項２０に記載の光学装置。
【請求項２２】
前記カメラモデルを、複数の画素座標とワールド座標空間の主光線の方向および切片の対応を表す離散データとして保持する請求項２０に記載の光学装置。
【請求項２３】
前記カメラモデルにより、前記画素座標の２つの座標値から、該画素座標に対応するワールド座標空間の主光線を求める主光線算出部を備える請求項２０から請求項２２のいずれかに記載の光学装置。
【請求項２４】
前記カメラモデルにより求めた、前記画素座標に対応するワールド座標空間の主光線と、前記３次元のワールド座標空間に与えられた平面あるいは曲面の交点として、ワールド座標の３つの座標値を求めるワールド座標算出部を備える請求項２０から請求項２３のいずれかに記載の光学装置。
【請求項２５】
前記カメラモデルにより、前記画像変換素子により取得あるいは形成された画像の画素座標に対応する前記ワールド座標を求め、歪みを補正した画像を生成する歪み補正画像生成部を備える請求項２０から請求項２４のいずれかに記載の光学装置。
【請求項２６】
請求項１５に記載の較正装置により取得された回転角がカメラパラメータとして設定されたカメラモデルを搭載した光学装置。
【請求項２７】
請求項１６に記載の較正装置により取得された平行移動成分がカメラパラメータとして設定されたカメラモデルを搭載した光学装置。
【請求項２８】
前記回転角により、カメラ座標とワールド座標とを相互に変換する座標変換部を備える請求項２６に記載の光学装置。
【請求項２９】
前記平行移動成分により、カメラ座標とワールド座標とを相互に変換する座標変換部を備える請求項２７に記載の光学装置。
【請求項３０】
請求項２０から請求項２９のいずれかに記載の光学装置からなる撮影装置。
【請求項３１】
請求項２０から請求項２９のいずれかに記載の光学装置からなる投影装置。
【請求項３２】
請求項１に記載の較正装置と、
一以上の撮影装置と、
該撮影装置により取得された複数の視点での画像の画素座標から被写体の注目点の３次元座標を計算する３次元座標計算処理部とを備え、
該３次元座標計算処理部が、前記較正装置において用いられた前記カメラモデルと、前記較正装置により算出された前記撮影装置の前記カメラモデルの前記パラメータと、前記撮影装置の回転角および／あるいは平行移動成分とを用いる計測システム。
【請求項３３】
請求項１に記載の較正装置と、
一以上の撮影装置と、
一以上の投影装置と、
前記投影装置からの構造化光が投影された被写体を前記撮影装置で撮影した画像の画素座標から前記被写体の注目点の３次元座標を計算する３次元座標計算処理部とを備え、
該３次元座標計算処理部が、前記較正装置において用いられた前記カメラモデルと、前記較正装置により算出された前記撮影装置の前記カメラモデルの前記パラメータと、前記撮影装置の回転角および／あるいは平行移動成分と、前記較正装置により算出された前記投影装置の前記カメラモデルの前記パラメータと、前記投影装置の回転角および／あるいは平行移動成分とを用いる計測システム。
【請求項３４】
複数の画素を有する２次元の画像変換素子と、該画像変換素子と３次元のワールド座標空間との間で結像関係を形成する光学系とを備える光学装置の前記画像変換素子の２次元の画素座標と、前記ワールド座標空間の３次元のワールド座標との対応を示す較正データを取得するステップと、
取得された前記較正データに基づいて、前記画素座標に対応する前記ワールド座標空間の主光線の方向を前記画素座標の関数として表したカメラモデルを当てはめて、該カメラモデルのパラメータを算出するステップとを含む較正方法。
【請求項３５】
複数の画素を有する２次元の画像変換素子と、該画像変換素子と３次元のワールド座標空間との間で結像関係を形成する光学系とを備える撮影装置の前記画像変換素子の２次元の画素座標と、前記ワールド座標空間の３次元のワールド座標との対応を示す較正データを取得するステップと、
取得された前記較正データに基づいて、前記画素座標に対応する前記ワールド座標空間の主光線の方向を前記画素座標の関数として表したカメラモデルを当てはめて、該カメラモデルのパラメータを算出するステップと、
算出された前記パラメータと、該パラメータの算出に用いられた前記カメラモデルと、前記撮影装置の回転角および／あるいは平行移動成分とを用いて、複数の視点での画像の画素座標から被写体の注目点の３次元座標を算出するステップとを含む計測方法。
【請求項３６】
複数の画素を有する２次元の画像変換素子と、該画像変換素子と３次元のワールド座標空間との間で結像関係を形成する光学系とを備える撮影装置および投影装置の前記画像変換素子の２次元の画素座標と、前記ワールド座標空間の３次元のワールド座標との対応を示す較正データを取得するステップと、
取得された前記較正データに基づいて、前記画素座標に対応する前記ワールド座標空間の主光線の方向を前記画素座標の関数として表したカメラモデルを当てはめて、該カメラモデルのパラメータを算出するステップと、
算出された前記パラメータと、該パラメータの算出に用いられた前記カメラモデルと、前記撮影装置の回転角および／あるいは平行移動成分とを用いて、前記投影装置からの構造化光が投影された被写体を前記撮影装置で撮影した画像の複数の視点での画素座標から被写体の注目点の３次元座標を算出するステップとを含む計測方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、較正装置、較正方法、光学装置、撮影装置、投影装置、計測システムおよび計測方法に関する。
【背景技術】
【０００２】
従来、撮影装置や投影装置のカメラ較正を行う較正装置が知られている（例えば、特許文献１、非特許文献１および非特許文献２参照。）。カメラモデルには複数の未知のパラメータ（カメラパラメータ）が含まれており、較正装置によってそれらのカメラパラメータを求めておくことにより、画像の２次元座標（画素座標）に対応する実世界の主光線を数学的に得ることができる。なお、この主光線は、画素座標に対応する逆投影直線あるいは視線とも呼ばれる。【０００３】
ここで、特許文献１および非特許文献１に開示されている従来のカメラ較正について説明する。カメラ較正は、実世界の３次元座標がカメラで撮像されて画像の２次元座標に変換される過程を表現した数学的なカメラモデルを用いて以下の手順により行われる。初めに、数１を用いて実世界の３次元座標（以下、ワールド座標という。）（ｘ，ｙ，ｚ）を正規化像面座標（ｕｐ，ｖｐ）に投影する。【０００４】
【数１】
0006675478.tif 000002
【数２】
0006675478.tif 000003
【０００５】
ただし、数２の回転行列Ｒと平行移動ベクトルＴは、ワールド座標からカメラ座標への３次元の座標変換を表している。これらはワールド座標に対するカメラの位置と姿勢を表す値であり、外部パラメータと呼ばれる。  
なお、数１は、全ての主光線がカメラの光学中心で交わるという想定に基づいた式である。次に、数３を用いて、正規化像面座標（ｕｐ，ｖｐ）に歪曲収差を加えた（ｕｄ，ｖｄ）を求める。【０００６】
【数３】
0006675478.tif 000004
ただし、（ｇ１，ｇ２，ｇ３，ｇ４，ｋ１）は歪曲パラメータである。さらに、数４を用いて、歪曲収差を加えた正規化像面座標（ｕｄ，ｖｄ）をピクセル単位の画素座標（ｕ，ｖ）に変換する。【０００７】
【数４】
0006675478.tif 000005
【０００８】
このように、カメラの撮像によるワールド座標（ｘ，ｙ，ｚ）から画素座標（ｕ，ｖ）への変換を数１から数４で表すのが標準的なカメラモデルである。なお、数３および数４のパラメータ（αｕ，αｖ，ｕ０，ｖ０，ｇ１，ｇ２，ｇ３，ｇ４，ｋ１）は、カメラ自体の性質を表すので、内部パラメータと呼ばれる。【０００９】
歪曲パラメータは、用途によって様々に定義される。例えば、数３は、３次までの歪曲収差を考慮したモデルであるが、さらに５次、７次…という高次の項を追加したモデルも用いられる。それらの中で代表的な歪曲モデルが数５に示される非特許文献２のブラウンのモデルである。【００１０】
【数５】
0006675478.tif 000006
【００１１】
ブラウンのモデルでは、歪曲収差を、回転対称な動径歪曲のパラメータ（ｋ１，ｋ２，ｋ３，…）および回転非対称な接線歪曲のパラメータ（ｐ１，ｐ２，ｐ３，…）で表している。
カメラ較正では一般に、ワールド座標（ｘ，ｙ，ｚ）が既知の特徴点を複数備えた較正チャートをカメラで撮像する。その後、画像処理で特徴点が撮像された画素座標（ｕ，ｖ）を取得する。このようにして、ワールド座標（ｘ，ｙ，ｚ）と画素座標（ｕ，ｖ）との対応を表す複数の測定データを得て、カメラパラメータを求めている。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特許第３７３５３４４号公報
【非特許文献】
【００１３】
【非特許文献１】ディジタル画像処理 [改訂新版]、（ＣＧ−ＡＲＴＳ協会，２０１５）、ｐ．３０８−３１７
【非特許文献２】Ｄ．  Ｃ．  Ｂｒｏｗｎ，“Ｃｌｏｓｅ−ｒａｎｇｅ  ｃａｍｅｒａ  ｃａｌｉｂｒａｔｉｏｎ”，ＰｈｏｔｏＧｒａｍｍ．  Ｅｎｇ．  ３７，  ８５５−８６６  （１９７１）
【発明の概要】
【発明が解決しようとする課題】
【００１４】
特許文献１および非特許文献１の較正装置では、全ての主光線がカメラの光学中心で交わるという想定に基づいたカメラモデルを用いている。
しかしながら、一般には光学系は瞳収差を伴うために、全ての主光線が入射瞳上の１点では交わらない。【００１５】
特に、画角が大きな広角レンズを用いている場合には、瞳収差が顕著である。また、画角が大きな広角レンズは一般に歪曲収差が大きいので、数５の高次の項が必要になる。それにより、カメラモデルのパラメータ数が増加するので、その最適化が困難になる。さらに、数１のカメラモデルは透視投影に基づいているので、半画角９０°以上の広角レンズを原理的に較正することができない。【００１６】
また、特許文献１のカメラモデルを初めとする従来の標準的なカメラモデルは、数１から数４に示される複数の数式からなる非線形モデルであり、測定データからカメラパラメータを求める過程で、最終的に全てのカメラパラメータを繰り返し最適化する必要がある。そのため、次の２つの問題が生じる。【００１７】
第１に、非線形モデルの最適化の評価関数には複数の極小値が存在する可能性があり、適切な初期値を設定しないと誤った最小値に収束するという問題がある。第２に、複数のカメラパラメータの最適化演算を繰り返し行う必要があるため、膨大な計算時間が必要となる場合があるという問題がある。【００１８】
本発明は上述した事情に鑑みてなされたものであって、画角が大きなカメラのカメラパラメータを短時間に精度よく求めることができる較正装置、較正方法、光学装置、撮影装置、投影装置、計測システムおよび計測方法を提供することを目的としている。
【課題を解決するための手段】
【００１９】
上記目的を達成するために、本発明は以下の手段を提供する。
本発明の一態様は、複数の画素を有する２次元の画像変換素子と、該画像変換素子と３次元のワールド座標空間との間で結像関係を形成する光学系とを備える光学装置の較正装置であって、前記画像変換素子の２次元の画素座標と、前記ワールド座標空間の３次元のワールド座標との対応を示す較正データを取得する較正データ取得部と、該較正データ取得部により取得された前記較正データに、前記画素座標に対応する前記ワールド座標空間の主光線の方向を前記画素座標の関数として表したカメラモデルを当てはめて、該カメラモデルのパラメータを算出するパラメータ算出部とを備える較正装置を提供する。
【００２０】
上記態様においては、前記光学系の画角θと像高ｙの射影関係が、射影の焦点距離ｆを用いて、概ね射影式ｙ＝ｆP（θ）で表されるとき、前記パラメータ算出部が、前記較正データ取得部により取得された前記較正データの３次元のワールド座標（ｘ，ｙ，ｚ）を、該ワールド座標に等しい３次元の球座標（ｒ，θ，φ）に基づいて変換した２次元の座標（Ｐ（θ）ｃｏｓφ，P（θ）ｓｉｎφ）を、前記画素座標の関数として表した前記カメラモデルを当てはめてもよい。【００２１】
また、上記態様においては、前記パラメータ算出部は、前記主光線の方向および前記主光線が通る１点の座標を前記画素座標の関数として表した前記カメラモデルを当てはめてもよい。
また、上記態様においては、前記パラメータ算出部が、前記主光線の方向と直交する平面と該主光線の交点の前記平面上の２次元の座標で規定される前記主光線が通る１点の座標を前記画素座標の関数として表した前記カメラモデルを当てはめてもよい。
また、上記態様においては、前記平面が、前記光学系の入射瞳の中心を通ってもよい。【００２２】
また、上記態様においては、前記パラメータ算出部が、前記主光線の方向を前記画素座標の関数として表したモデルと、前記主光線が通る１点の座標を前記画素座標の関数として表したモデルを交互に更新することにより、前記較正データに前記カメラモデルを当てはめてもよい。【００２３】
また、上記態様においては、前記パラメータ算出部が、前記カメラモデルに対する前記較正データの残差の分布に、前記画素座標の関数として表した直線のモデルを当てはめて、該直線のモデルの切片のパラメータに基づいて、前記主光線が通る１点の座標を前記画素座標の関数として表したモデルのパラメータを更新してもよい。【００２４】
また、上記態様においては、前記パラメータ算出部が、前記較正データの画素座標から前記カメラモデルで求めた前記主光線が通る１点の座標に対する、前記較正データのワールド座標の方向を表すデータを求め、そのデータに前記主光線の方向を前記画素座標の関数として表したモデルを当てはめて、そのモデルのパラメータを更新してもよい。【００２５】
また、上記態様においては、前記光学系の画角θと像高ｙとの射影関係が、射影の焦点距離ｆを用いて、概ね射影式ｙ＝ｆP（θ）で表されるとき、前記パラメータ算出部が、前記較正データ取得部により取得された較正データの３次元のワールド座標（ｘ，ｙ，ｚ）を、該ワールド座標に等しい３次元の球座標（ｒ，θ，φ）に基づいて３次元の座標（ｒP（θ）ｃｏｓφ，ｒP（θ）ｓｉｎφ，ｒ）に変換してから、変換した座標系における直線を前記画素座標の関数として表したカメラモデルを当てはめてもよい。【００２６】
また、上記態様においては、前記パラメータ算出部が、前記変換した座標系のｒ軸に対する傾きとｒ軸に垂直な面との交点である切片で規定される前記直線の前記傾きおよび前記切片をそれぞれ前記画素座標の２次元の関数として表したカメラモデルを当てはめてもよい。【００２７】
また、上記態様においては、前記画素座標の関数が、２次元の平面間の結像関係を表す関数と同じ形式であってもよい。
また、上記態様においては、前記２次元の平面間の結像関係を表す関数が、前記画素座標の複数の２次元ベクトル関数の線形和で表されてもよい。
また、上記態様においては、前記パラメータ算出部が、前記カメラモデルを線形の最小二乗法で前記較正データに当てはめてもよい。
【００２８】
また、上記態様においては、前記パラメータ算出部が、前記変換した座標系（ｒP（θ）ｃｏｓφ，ｒP（θ）ｓｉｎφ，ｒ）における前記直線を前記画素座標の関数として表したカメラモデルを当てはめて求めたパラメータに基づいて、前記主光線の方向および前記主光線が通る１点の座標のそれぞれを前記画素座標の関数として表したカメラモデルのパラメータの初期値を設定してから、該カメラモデルを繰り返し最適化して、該カメラモデルのパラメータを算出するパラメータ算出部とを備えていてもよい。【００２９】
また、上記態様においては、前記パラメータ算出部が、前記較正データ取得部により取得された前記較正データの内、３次元のワールド座標を、該ワールド座標の回転を表す３つの回転角の一以上の回転角で回転したワールド座標に変換した較正データに、前記カメラモデルを当てはめて、該カメラモデルの残差が最小になる一以上の回転角を求めてもよい。【００３０】
また、上記態様においては、前記パラメータ算出部が、前記較正データ取得部により取得された前記較正データの内、３次元のワールド座標を、該ワールド座標の平行移動を表す３つの平行移動成分の一以上の成分で平行移動したワールド座標に変換した較正データに、前記カメラモデルを当てはめて、該カメラモデルの残差が最小になる一以上の平行移動成分を求めてもよい。【００３１】
また、上記態様においては、前記光学装置が、複数の画像変換素子および該画像変換素子と３次元のワールド座標空間との間で結像関係を形成する光学系を備え、前記較正データ取得部が各前記画像変換素子および前記光学系の前記較正データを取得し、前記パラメータ算出部が、各前記画像変換素子および前記光学系の前記較正データに、各該画像変換素子の２次元の画素座標の関数として表した前記カメラモデルを当てはめてもよい。【００３２】
また，上記態様においては、前記光学装置が撮影装置であり、前記画像変換素子が撮像素子であり、前記光学系が撮像光学系であってもよい。
また、上記態様においては、前記光学装置が投影装置であり、前記画像変換素子が画像形成素子であり、前記光学系が投影光学系であってもよい。【００３３】
また、本発明の他の態様は、上記いずれかの較正装置により算出されたパラメータが設定された前記カメラモデルを搭載した光学装置を提供する。
上記態様においては、前記カメラモデルを、複数の画素座標と２つの平面あるいは曲面上のワールド座標との対応を表す離散データとして保持してもよい。
また、上記態様においては、前記カメラモデルを、複数の画素座標とワールド座標空間の主光線の方向および切片の対応を表す離散データとして保持してもよい。
また、上記態様においては、前記カメラモデルにより、前記画素座標の２つの座標値から、該画素座標に対応するワールド座標空間の主光線を求める主光線算出部を備えていてもよい。【００３４】
また、上記態様においては、前記カメラモデルにより求めた、前記画素座標に対応するワールド座標空間の主光線と、前記３次元のワールド座標空間に与えられた平面あるいは曲面の交点として、ワールド座標の３つの座標値を求めるワールド座標算出部を備えていてもよい。【００３５】
また、上記態様においては、前記カメラモデルにより、前記画像変換素子により取得あるいは形成された画像の画素座標に対応する前記ワールド座標を求め、歪みを補正した画像を生成する歪み補正画像生成部を備えていてもよい。【００３６】
また、本発明の他の態様は、上記較正装置により取得された回転角がカメラパラメータとして設定されたカメラモデルを搭載した光学装置を提供する。
また、本発明の他の態様は、上記較正装置により取得された平行移動成分がカメラパラメータとして設定されたカメラモデルを搭載した光学装置を提供する。
上記態様においては、前記回転角により、カメラ座標とワールド座標とを相互に変換する座標変換部を備えていてもよい。
上記態様においては、前記平行移動成分により、カメラ座標とワールド座標とを相互に変換する座標変換部を備えていてもよい。
【００３７】
また、本発明の他の態様は、上記いずれかの光学装置からなる撮影装置を提供する。
また、本発明の他の態様は、上記いずれかの光学装置からなる投影装置を提供する。【００３８】
また、本発明の他の態様は、上記較正装置と、一以上の撮影装置と、該撮影装置により取得された複数の視点での画像の画素座標から被写体の注目点の３次元座標を計算する３次元座標計算処理部とを備え、該３次元座標計算処理部が、前記較正装置において用いられた前記カメラモデルと、前記較正装置により算出された前記撮影装置の前記カメラモデルの前記パラメータと、前記撮影装置の回転角および／あるいは平行移動成分とを用いる計測システムを提供する。【００３９】
また、本発明の他の態様は、上記較正装置と、一以上の撮影装置と、一以上の投影装置と、前記投影装置からの構造化光が投影された被写体を前記撮影装置で撮影した画像の画素座標から前記被写体の注目点の３次元座標を計算する３次元座標計算処理部とを備え、該３次元座標計算処理部が、前記較正装置において用いられた前記カメラモデルと、前記較正装置により算出された前記撮影装置の前記カメラモデルの前記パラメータと、前記撮影装置の回転角および／あるいは平行移動成分と、前記較正装置により算出された前記投影装置の前記カメラモデルの前記パラメータと、前記投影装置の回転角および／あるいは平行移動成分とを用いる計測システムを提供する。【００４０】
また、本発明の他の態様は、複数の画素を有する２次元の画像変換素子と、該画像変換素子と３次元のワールド座標空間との間で結像関係を形成する光学系とを備える光学装置の前記画像変換素子の２次元の画素座標と、前記ワールド座標空間の３次元のワールド座標との対応を示す較正データを取得するステップと、取得された前記較正データに基づいて、前記画素座標に対応する前記ワールド座標空間の主光線の方向を前記画素座標の関数として表したカメラモデルを当てはめて、該カメラモデルのパラメータを算出するステップとを含む較正方法を提供する。【００４１】
また、本発明の他の態様は、複数の画素を有する２次元の画像変換素子と、該画像変換素子と３次元のワールド座標空間との間で結像関係を形成する光学系とを備える撮影装置の前記画像変換素子の２次元の画素座標と、前記ワールド座標空間の３次元のワールド座標との対応を示す較正データを取得するステップと、取得された前記較正データに基づいて、前記画素座標に対応する前記ワールド座標空間の主光線の方向を前記画素座標の関数として表したカメラモデルを当てはめて、該カメラモデルのパラメータを算出するステップと、算出された前記パラメータと、該パラメータの算出に用いられた前記カメラモデルと、前記撮影装置の回転角および／あるいは平行移動成分とを用いて、複数の視点での画像の画素座標から被写体の注目点の３次元座標を算出するステップとを含む計測方法を提供する。【００４２】
また、本発明の他の態様は、複数の画素を有する２次元の画像変換素子と、該画像変換素子と３次元のワールド座標空間との間で結像関係を形成する光学系とを備える撮影装置および投影装置の前記画像変換素子の２次元の画素座標と、前記ワールド座標空間の３次元のワールド座標との対応を示す較正データを取得するステップと、取得された前記較正データに基づいて、前記画素座標に対応する前記ワールド座標空間の主光線の方向を前記画素座標の関数として表したカメラモデルを当てはめて、該カメラモデルのパラメータを算出するステップと、算出された前記パラメータと、該パラメータの算出に用いられた前記カメラモデルと、前記撮影装置の回転角および／あるいは平行移動成分とを用いて、前記投影装置からの構造化光が投影された被写体を前記撮影装置で撮影した画像の複数の視点での画素座標から被写体の注目点の３次元座標を算出するステップとを含む計測方法を提供する。
【発明の効果】
【００４３】
本発明によれば、画角が大きなカメラのカメラパラメータを短時間に精度よく求めることができるという効果を奏する。
【図面の簡単な説明】
【００４４】
【図１】本発明の第１の実施形態に係る較正装置を模式的に示す全体構成図である。
【図２】図１の較正装置の較正チャートのパターンを示す図である。
【図３】図１の較正装置による較正方法を説明するフローチャートを示す図である。
【図４Ａ】図１の較正装置において用いられるカメラモデルの説明図であり、カメラの画素座標に対応する物体側の主光線を説明するカメラの断面を示す図である。
【図４Ｂ】図１の較正装置において用いられるカメラモデルの説明図であり、各画素に対応する主光線の方向を示す図である。
【図４Ｃ】図１の較正装置において用いられるカメラモデルの説明図であり、各画素に対応する主光線の切片を示す図である。
【図５Ａ】図４Ａから図４Ｃのカメラモデルの射影された空間の説明図であり、カメラの撮像光学系と撮像素子およびカメラ座標の断面図を示す図である。
【図５Ｂ】図４Ａから図４Ｃのカメラモデルの射影された空間の説明図であり、射影された座標空間を示す図である。
【図６】図１の較正装置によりカメラを較正する手順のフローチャートを示す図である。
【図７】歪補正のフローチャートを示す図である。
【図８】本発明の第２の実施形態に係る較正装置によりカメラを較正する手順のフローチャートを示す図である。
【図９】本発明の第３の実施形態に係る較正装置を模式的に示す平面図である。
【図１０】本発明の第４の実施形態に係る較正装置を模式的に示す平面図である。
【図１１】本発明の一実施形態に係る計測方法のフローチャートを示す図である。
【図１２】本発明の他の実施形態に係る計測方法のフローチャートを示す図である。
【発明を実施するための形態】
【００４５】
本発明の第１の実施形態に係る較正装置およびカメラ較正方法について、図面を参照して以下に説明する。
本実施形態に係る較正装置は、カメラ較正装置１であって、撮像した画像を所定のフォーマットの画像ファイルとして外部に転送するカメラ（撮影装置、光学装置）２を較正対象としている。本実施形態においては、光学装置の一例として、カメラ２を用いている。
【００４６】
本実施形態に係るカメラ較正装置１は、図１に示されるように、較正対象であるカメラ２を固定するベース３と、該ベース３に設けられたｚ軸移動ステージ４と、該ｚ軸移動ステージ４によって移動させられる可動部５に固定された較正チャート６と、カメラ２およびｚ軸移動ステージ４に接続されたコンピュータ７とを備えている。カメラ較正装置１の３次元の座標軸は図１のように定義されている。カメラ２を固定するベース３、較正チャート６およびｚ軸移動ステージ４により、較正データ取得部８が構成されている。
【００４７】
ｚ軸移動ステージ４は、モータ４ａにより駆動され可動部５を直線的に移動させる直線駆動機構である。カメラ較正装置１においては、可動部５の移動方向をｚ軸とし、ｚ軸に垂直な面内の水平方向および垂直方向をｘ軸およびｙ軸と定義している。
【００４８】
本実施形態において座標原点の位置はカメラレンズ９の入射瞳付近に定義されている。
カメラ２は、その光軸がｚ軸に平行になるように、かつ、撮像面の水平方向および垂直方向がｘ軸およびｙ軸に平行になるように、かつ、座標原点がカメラ２の所定の位置と一致するように、ベース３に取り付けられるようになっている。
【００４９】
較正チャート６は、カメラ較正で広く利用されている図２のチェスボード１０であり、ベース３に固定されたカメラ２と正対するように、すなわち、ｚ軸に垂直な面内に配置されるように可動部５に固定されている。較正チャート６は複数の特徴点を備えた図表であればどのようなものでも構わない。
【００５０】
較正チャート６は、ｚ軸移動ステージ４によってｚ軸方向の任意の位置に移動可能になっている。ｚ軸移動ステージ４の可動部５の移動範囲は、カメラ較正が必要な物体距離（＝カメラ２と撮像対象との距離）の範囲を包含している。
【００５１】
コンピュータ７は、カメラ２の撮像を制御して、撮像された画像を所定のフォーマットの画像ファイルとして読み込むように機能する。また、コンピュータ７はｚ軸移動ステージ４を制御して、較正チャート６をｚ軸方向の所定の位置に移動するように機能する。さらにコンピュータ７は、取得された構成データにカメラモデルを当てはめてカメラパラメータを算出するパラメータ算出部としても機能する。
【００５２】
ここで、図２を参照して、較正チャート６として使用されるチェスボード１０について説明する。
チェスボード１０は、平面上に黒と白の正方形が正方格子を成すように並んだ市松模様のパターンを有する平板状部材であり、各正方形の頂点に相当する交点をカメラ較正の特徴点として利用するようになっている（以下、これらの特徴点を格子点１１と呼ぶ。）。
【００５３】
チェスボード１０としては、カメラ較正に十分な数の格子点１１がカメラ２の撮像範囲内に入るものが使用される。撮像されるチェスボード１０の範囲は物体距離によって変化するが、各物体距離で少なくとも１０×１０個程度の格子点１１が撮像されることが好ましい。また、撮像された格子点１１の画素座標と較正チャート６上での格子点１１のワールド座標との対応をとるために、較正チャート６の中央付近に１つの基準位置マーク１２を設けている。
【００５４】
この基準位置マーク１２の右下最近傍の格子点（中央の格子点１３）がｚ軸上に位置し、同時にチェスボード１０の縦横がｘ軸およびｙ軸に平行になるように、チェスボード１０をカメラ較正装置１に設置する。これにより、チェスボード１０の正方格子の格子間隔とｚ軸移動ステージ４の移動位置とから、各格子点１１，１３のワールド座標（ｘ，ｙ，ｚ）が既知の値として確定する。
【００５５】
このように構成された本実施形態に係るカメラ較正装置１を用いたカメラ較正方法について以下に説明する。
本実施形態に係るカメラ較正装置１を用いてカメラ２を較正するには、操作者は、初めに較正対象のカメラ２を座標軸の定義に従ってカメラ較正装置１に取り付け、コンピュータ７に接続する。その後に、コンピュータ７内部の測定プログラムを開始する。
【００５６】
以下、測定プログラムにより、自動的に複数の物体距離の較正チャート６の画像がカメラ２によって撮像され、それらの画像から格子点１１の画素座標が取得される。測定プログラムについて、図３のフローチャートを参照して説明する。
【００５７】
測定が開始されると、まず、カメラ２を較正する物体距離の範囲のカメラ２に近い側の端に較正チャート６が位置するように、ｚ軸移動ステージ４が移動される（ステップＳ１）。次に、カメラ２により較正チャート６が撮像され、その画像ファイルがコンピュータ７に転送される（ステップＳ２）。そして、所定回数の撮像が行われるまで、これらのステップＳ１，Ｓ２が繰り返される（ステップＳ３）。所定回数としては、例えば、５回以上の回数が設定されている。
【００５８】
このとき、ステップＳ１では１回の繰り返しごとに、カメラ２から較正チャート６までの物体距離が所定の間隔で大きくなるようにｚ軸移動ステージ４により可動部５を移動させる。可動部５の移動量は等間隔でなくてもよいが、カメラ２を較正する物体距離の範囲内で少なくとも５カ所程度の異なる物体距離で較正チャート６を撮像することが好ましい。そして、所定の撮像枚数に達したら、次のステップＳ４に進む。
【００５９】
ステップＳ１からＳ３でコンピュータ７に転送された複数の画像ファイルが画像処理されることにより、撮像範囲内の各格子点１１の画素座標が求められ、各画像ファイルの基準位置マーク１２の重心の画素座標が求められる（ステップＳ４）。なお、チェスボード１０の格子点１１の画素座標をサブピクセルで求める方法は公知なので、ここでの説明は省略する。
【００６０】
次いで、ステップＳ４で求めた各格子点１１の画素座標が、較正チャート６上の格子点１１のワールド座標に対応付けられる（ステップＳ５）。上述したように基準位置マーク１２の右下最近傍の中央の格子点１３はワールド座標のｚ軸上にあるので、それを基準にして各格子点１１，１３の画素座標とワールド座標とを対応付けることができる。最後に、対応付けられた全ての画素座標およびワールド座標が測定データファイルに書き出されて、測定が終了する。上記手順でカメラパラメータの最適化に必要な測定データが得られる。
【００６１】
ここで、本実施形態において用いられるカメラモデルについて図４Ａから図４Ｃを参照して説明する。
図４Ａは、カメラ２の画素座標に対応する物体側の主光線を説明するカメラ２の断面図である。カメラ２は、撮像光学系（光学系）１４と、撮像素子（画像変換素子）１８とを備えている。
【００６２】
それから、カメラ座標（ｘｃ，ｙｃ，ｚｃ）を図４Ａのように定義する。カメラ座標の原点は撮像光学系１４の入射瞳の中心４０４であり、ｚｃ軸は光軸４０３に一致する。また、撮像素子１８の撮像面に、撮像素子１８の横方向および縦方向と平行に画素座標のｕ軸およびｖ軸を定義する。それらと、カメラ座標のｘｃ軸とｙｃ軸はそれぞれ平行である。なお、本実施形態において、ワールド座標とカメラ座標はほぼ一致している。図４Ａには、撮像光学系１４を通して撮像素子１８の各画素の中央に入射する物体側の主光線１９が描かれている。
【００６３】
主光線１９とは、撮像光学系１４の開口絞り（図示省略）の中心を通る光線である。そのため、主光線１９上の物点に対応する撮像素子１８上のボケ像は、主光線１９と撮像素子１８の交点を中心に広がるので、ボケた像点の光強度の重心を取って像位置とするならば、像点の位置は変わらない。したがって、物体側の主光線１９上にある全ての物点は、１つの像点に結像する。言い換えると、物体側の主光線１９はその像点の逆投影直線である。
【００６４】
主光線１９の方向とそれに対応する像位置の関係は、射影式で表される。例えば、撮像光学系１４が中心射影で設計されているとき、物体側の主光線１９の画角θとそれに対応する像点の高さｙは、ｙ＝ｆｔａｎθの関係にある。ただし、f は、射影の焦点距離である。それ以外の代表的な射影式として、等距離射影ｙ＝ｆθ、等立体角射影ｙ＝２ｆｓｉｎ（θ／２）、立体射影ｙ＝２ｆｔａｎ（θ／２）、正射影ｙ＝ｆｓｉｎθなどがある。
【００６５】
これらの射影式はカメラ２の使用目的によって選択される。例えば、等立体角射影は物体側の立体角、すなわち見かけの大きさが像の面積として保存される。したがって、全天の雲量の割合を計測するような用途に適している。他の射影式にも各々特長がある。一方、一般的な写真撮影用の撮像光学系１４は必ずしも前記の特定の射影式に依拠していない。そこで、前記の特定の射影式を含む、任意の射影式をｙ＝ｆＰ（θ）と表すことにする。P（θ）は画角θの関数であり、例えば、等距離射影のときＰ（θ）＝θ、等立体角射影のときＰ（θ）＝２ｓｉｎ（θ／２）である。さらに、一般に任意の射影式を数６のベキ多項式の係数で指定することができる。
【００６６】
【数６】
0006675478.tif 000007
【００６７】
次に、瞳収差について説明する。開口絞りをそれより物体側の光学系で結像した仮想的な開口が入射瞳である。図４Ａに示されるように、物体側の主光線群は入射瞳の中心４０４付近を通過するが、開口絞りの場合と異なり、入射瞳の中心４０４の１点では交わらない。
【００６８】
それは、開口絞りと入射瞳の結像関係に前記光学系の収差が介在するからである。これが瞳収差である。したがって、撮像素子１８上の画素に対応する物体側の主光線１９を規定するためには、主光線の方向と瞳収差による主光線の移動を正確にモデル化する必要がある。
【００６９】
このような状況に適合するように作成した、本発明のカメラモデルを説明する。初めに、主光線の方向のモデルを図４Ｂで説明する。なお、これ以降、各画素が正方格子状に並んだ撮像素子１８を例に説明するが、本実施形態はそれに限定されるものではない。    
【００７０】
さらに、球座標で表したカメラ座標（ｒ，θ，φ）を新たに導入する。その極角θは主光線１９と光軸４０３が成す角、すなわち、画角に等しい。また、方位角φは光軸４０３回りの方向を表す角度である。直交座標のカメラ座標（ｘｃ，ｙｃ，ｚｃ）との関係は数７で表される。
【００７１】
【数７】
0006675478.tif 000008
【００７２】
撮像光学系１４が射影式ｙ＝ｆＰ（θ）で設計されているとき、撮像素子１８上各画素に対応する主光線の方向をＰ（θ）ｃｏｓφ−Ｐ（θ）ｓｉｎφ平面４１１にプロットすると、画素の配列と相似な正方格子４１２に並ぶ。しかし、実際の撮像光学系１４には製造誤差があるので、主光線の方向は正方格子４１２と異なる方向４１３に変位する。
【００７３】
本発明は、設計どおりの方向４１２から実際の方向４１３への変位を、歪曲収差による像位置の歪みと同様の現象と捉える。すなわち、本実施形態では、数５のブラウンのモデルを基に、撮像素子１８上の画素座標（ｕ，ｖ）に対応する主光線の方向（θ，φ）を、数８でモデル化する。
【００７４】
【数８】
0006675478.tif 000009
【００７５】
ここで、数５のブラウンのモデルから数８の方向のモデルへの変更箇所は次のとおりである。
（１）横倍率に相当する係数ｋ０の項を追加した。
（２）３次の動径歪曲ｋ１と２次の接線歪曲（ｐ１，ｐ２）のみを考慮した。
（３）方向の分布の横移動（Δｕ，Δｖ）を追加した。
【００７６】
次に、主光線の切片のモデルを図４Ａと図４Ｃで説明する。初めに、ｚｃ軸に垂直で入射瞳の中心４０４を通るｘｃ−ｙｃ平面を、注目する主光線１９と垂直になるように回転したｘ0′−ｙ0′平面４０６を考える。そして、主光線１９とその平面４０６の交点４０７を「主光線の切片」と定義する。このような操作をすべての主光線について実施すると、各主光線の切片がプロットされた１枚の平面４２１を得る。
【００７７】
撮像光学系１４に瞳収差が無いとき、すべての主光線の切片は原点４２２に位置する。しかし、実際の撮像光学系１４では多くの場合、画角が大きくなるとともに瞳収差が増大するので、切片の分布４２３は糸巻き歪曲状に分布する。本発明は、この切片の分布４２３を、歪曲収差による像位置の歪みと同様の現象と捉える。すなわち、本実施形態では平面４２１上の切片の座標（ｘ0′, ｙ0′）を、数８と同様に、数９でモデル化する。なお、切片の各係数にプライムを付けた。
【００７８】
【数９】
0006675478.tif 000010
【００７９】
撮像素子１８上の画素座標（ｕ，ｖ）に対応する数８の主光線の方向（θ，φ）のモデルと数９の切片（ｘ0′，ｙ0′）のモデルより、本発明のカメラモデル、すなわち主光線の直線方程式は数１０のように表される。
【００８０】
【数１０】
0006675478.tif 000011
ただし、（ｌ，ｍ，ｎ）は主光線の方向を表す方向余弦であり、数８の（θ，φ）と数１１の関係にある。
【００８１】
【数１１】
0006675478.tif 000012
【００８２】
また、Ｒｓはｚｃ軸を（ｌ，ｍ，ｎ）の方向へ回転する３次元の回転行列、μは直線の媒介変数である。なお、Ｒｓも画素座標（ｕ，ｖ）に依存するので、数１１は非線形モデルである。それを線形モデルに変換して求める方法を図５Ａおよび図５Ｂで説明する。
【００８３】
図５Ａは、図４Ａと同様に、カメラ２の撮像光学系１４と撮像素子１８、およびカメラ座標（ｘｃ，ｙｃ，ｚｃ）の断面図である。本発明は、図５Ａのカメラ座標空間を射影式で、図５Ｂの射影された座標空間（ξ，η，ｒ）に変換する。すなわち、図５Ａの半径ｒの球面５１１上の物点（ｘｃ，ｙｃ，ｚｃ）を、数７の球座標（ｒ，θ，φ）を介して、数１２で図５Ｂの平面５２１上に変換する。
【００８４】
【数１２】
0006675478.tif 000013
【００８５】
同様に、図５Ａの球面５１２，５１３も、それぞれ図５Ｂの平面５２２，５２３に変換される。そのようにして、図５Ａの入射瞳の中心４０４を中心とする全空間は、図５Ｂの破線５２４で囲まれた円錐内部に変換される。
【００８６】
カメラ座標の主光線１９は、射影された座標空間（ξ，η，ｒ）の直線５２５に対応する。その直線５２５は、ｒ軸に対する直線の傾き（ａ，ｃ）とｒ＝０平面との交点、すなわち切片（ｂ，ｄ）により、数１３で表される。
【００８７】
【数１３】
0006675478.tif 000014
【００８８】
ただし、数１３の直線５２５を元の図５Ａのカメラ座標に逆変換すると、直線ではなく曲線になる。一方で、入射瞳の中心４０４からの距離ｒが十分に大きいとき、数１２と数１３より、傾き（ａ，ｃ）は数８の主光線の方向のモデルに一致する。したがって、図５Ａの主光線１９は、カメラ座標に逆変換した曲線の漸近線になっており、その方向を数１３の傾き（ａ，ｃ）より求めることができる。
【００８９】
一方、数１３の切片（ｂ，ｄ）は、数９の切片（ｘ0′，ｙ0′）と数１４の関係にある。
【００９０】
【数１４】
0006675478.tif 000015
【００９１】
ただし、Ｒｚはｘ0′−ｙ0′平面の原点周りの回転行列数１５である。
【数１５】
0006675478.tif 000016
【００９２】
Ｍは射影による拡大を表す行列、数１６である。
【数１６】
0006675478.tif 000017
【００９３】
数１４の関係を、再び図５Ａと図５Ｂを参照して説明する。初めに、図５Ａの主光線１９と平行で入射瞳の中心４０４を通る直線５１４を中心軸として、主光線１９を含む円筒面を考える。その円筒面と球面５１１，５１２，５１３の交線はそれぞれ同じ半径の円になる。
【００９４】
それと同様に図５Ｂでも、直線５２５と平行で座標原点を通る直線５２６を考える。なお、直線５１４を数１２で変換すると、直線５２６に一致する。そのとき、図５Ａの円筒面に対応する、図５Ｂの直線５２５を含む面は、直線５２６を中心とした楕円筒になる。なぜなら、球面５１１，５１２，５１３上の前記の円を、ξ−η平面に射影すると、球座標のθ方向がｍθ倍、それに直交するφ方向がｍφ倍に拡大された楕円になるからである。
【００９５】
したがって、数１４の関係が成立する。
以上のように、カメラ座標の物点（ｘｃ，ｙｃ，ｚｃ）を数１２で（ξ，η，ｒ）座標に変換してから、数１３の直線群モデルを当てはめることにより、数８の主光線１９の方向のモデルと数９の切片のモデルを求めることができる。
【００９６】
なお、本実施形態では数１３の切片（ｂ，ｄ）のモデルとして、数９と同形のモデルを適用する。すなわち、数８，数９，数１３より、（ξ，η，ｒ）座標空間の直線５２５のモデルとして数１７を使う。
【００９７】
【数１７】
0006675478.tif 000018
【００９８】
カメラ較正の対象となる範囲の距離ｒが十分に大きいとき、数１７のモデルから主光線１９の方向と切片を高精度に求めることができる。一方、距離ｒが十分に大きくないときは、前述のように数１７から求めた主光線１９の方向と切片が実際の主光線と乖離する。
【００９９】
その場合は、図５Ａの元のカメラ座標において、主光線の直線方程式数１０のパラメータ、すなわち数８と数９の係数を繰り返し最適化すればよい。
その繰返し最適化は、一般的な最適化アルゴリズムで実現できる。ただし、パラメータ数が多いときは、収束までに時間がかかる可能性がある。その場合、数８の主光線の方向のモデルと数９の切片のモデルを交互に最適化する方法が効果的である。それを以下に説明する。
【０１００】
前記の数１０の主光線のモデルが、実際の主光線と乖離している状態は数１８で表される。
【０１０１】
【数１８】
0006675478.tif 000019
【０１０２】
ただし、最適化が不十分なパラメータにチルダを付けた。このとき、測定データのカメラ座標（ｘｃ，ｙｃ，ｚｃ）から主光線の直線モデルに下ろした垂線の成分が残差（εｘ，εｙ，εｚ）である。さらに、数１８の両辺を回転行列Ｒｓで逆回転して、数１９を得る（逆回転後のカメラ座標と残差にプライムを付けた。）。
【０１０３】
【数１９】
0006675478.tif 000020
【０１０４】
数１９により、測定データのカメラ座標（ｘｃ，ｙｃ，ｚｃ）から残差の分布（εx′，εy′，μ）を求めることができる。
次に、数１８の不適切なパラメータを、数１０の適切なパラメータに更新するための更新式を用意する。そのために、数１０の両辺も回転行列Ｒｓで逆回転してから、数１９の両辺との差分を取って、数２０を得る。
【０１０５】
【数２０】
0006675478.tif 000021
【０１０６】
このように、不適切なパラメータによる残差は、（εｘ′，εｙ′，μ）空間で、傾き（Δｌ′，Δｍ′）および切片（Δｘ０′，Δｙ０′）の直線群を成す。従って、これらの残差に、数１７の（ξ，η，ｒ）を（εｘ′，εｙ′，μ）に置き換えた数２１の直線群のモデルを当てはめたときの切片の各係数（ｋ０″，ｋ１″，ｐ１″，ｐ２″，Δｕ″，Δｖ″）を、数９の切片のモデルの対応する各係数にそれぞれ加えることにより、数９の切片のモデルの各係数を更新することができる。
【０１０７】
【数２１】
0006675478.tif 000022
【０１０８】
続いて、更新された数９の切片のモデルに基づいて、数８の方向のモデルを更新する。すなわち、測定データのカメラ座標（ｘｃ，ｙｃ，ｚｃ）と更新された切片から数１０の方向余弦（ｌ，ｍ，ｎ）を求める。それを数１１および数６で数８の左辺の形に変換してから、数８の方向のモデルを当てはめて、その各係数を更新する。
【０１０９】
以上の手順を繰り返して、数８の主光線の方向のモデルと数９の切片のモデルを交互に最適化する。その結果として、適切な数１０の主光線のモデルを求めることができる。
このように、数８、数９および数１７に示される本実施形態のカメラ較正装置１に用いられるカメラモデルは、画素座標に対応する物体側の主光線をモデル化したものである。それらは、歪曲収差を含む物体座標と画素座標の結像関係を表す数５の線形モデルを基に構築される。特に、数１７の射影式で変換された座標系のモデルは、歪曲を含む結像関係を表す数５の線形モデルを基に、その各係数を距離ｒの１次式で置き換えた形になっているという特徴がある。
【０１１０】
また、本実施形態のカメラ較正装置１に用いられる数１７のカメラモデルのもう１つの特徴は、変数（ｕ，ｖ，ｒ）からなる線形独立な２次元の基底関数ベクトルの線形和で射影された物体座標ベクトル（ξ，η）を表すことにある。基底関数ベクトルの線形和なので、ξ座標とη座標を表すモデルの係数は共通である。そのため、各基底関数ベクトルの係数を全ての測定データから線形の最小二乗法で求めることができる。
【０１１１】
次に、本実施形態のカメラ較正装置１でカメラを較正する手順を、図６を参照して説明する。まず、図３に示される上記測定プログラムにおいて、ワールド座標（ｘ，ｙ，ｚ）と画素座標（ｕ，ｖ）の対応を表す測定データを求める（ステップＳ６０２）。次に、数７および数１２で、ワールド座標（ｘ，ｙ，ｚ）を射影された座標（ξ，η，ｒ）に変換する（ステップＳ６０３）。続いて、測定データのすべての画素座標（ｕ，ｖ）と射影された座標（ξ，η，ｒ）に、数１７に示されるカメラモデルを線形の最小二乗法で当てはめて、数１７のカメラモデルの各係数（カメラパラメータ）を求める（ステップＳ６０４）。
【０１１２】
さらに、求められた数１７の係数（ｋ０，ｋ１，ｐ１，ｐ２，Δｕ，Δｖ）および（ｋ０″，ｋ１″，ｐ１″，ｐ２″，Δｕ″，Δｖ″）で、数８の係数（ｋ０，ｋ１，ｐ１，ｐ２，Δｕ，Δｖ）と数９の係数（ｋ０′，ｋ１′，ｐ１′，ｐ２′，Δｕ′，Δｖ′）をそれぞれ初期化する（ステップＳ６０５）。なお、数９の係数（ｋ０′，ｋ１′，ｐ１′，ｐ２′，Δｕ′，Δｖ′）の初期値として、数１７の係数（ｋ０″，ｋ１″，ｐ１″，ｐ２″，Δｕ″，Δｖ″）を用いることは、数１４の射影による拡大の作用Ｍを無視していることになる。しかし、画角が大きくないとき、行列Ｍは単位行列に近くなるので、このような初期値の設定は有効に作用する。
【０１１３】
続いて、画素座標（ｕ，ｖ）に対応する数１０の主光線とワールド座標（ｘ，ｙ，ｚ）の距離を、すべての測定データについて計算して、それらの２乗和を求める（ステップＳ６０６）。そのときの２乗和が所定の値より小さいときには、カメラの較正を終了する。それ以外のときには、数８の係数（ｋ０，ｋ１，ｐ１，ｐ２，Δｕ，Δｖ）と数９の係数（ｋ０′，ｋ１′，ｐ１′，ｐ２′，Δｕ′，Δｖ′）を更新するステップＳ６０８を経て、ステップＳ６０６に戻る（ステップＳ６０７）。
【０１１４】
この繰り返し最適化は、滑降シンプレックス法などの一般的な最適化アルゴリズム、あるいは前述の交互最適化アルゴリズムで実行される。交互最適化の場合、ステップＳ６０８は次の手順である。
（１）数１９で、測定データのカメラ座標（ｘｃ，ｙｃ，ｚｃ）と現在の主光線モデルのパラメータから残差の分布（εｘ′，εｙ′，μ）を求める。
（２）その残差の分布に数２１の直線群のモデルを当てはめる。
（３）当てはめた数２１のモデルの切片の各係数（ｋ０″，ｋ１″，ｐ１″，ｐ２″，Δｕ″，Δｖ″）を、切片の数９のモデルの対応する各係数にそれぞれ加える。
（４）測定データのカメラ座標（ｘｃ，ｙｃ，ｚｃ）と（３）で更新された切片から数１０の方向余弦（ｌ，ｍ，ｎ）を求める。
（５）それらの方向余弦を数１１および数６で数８の左辺の形に変換する。
（６）それらのデータに数８の方向のモデルを当てはめて、その各係数を更新する。
【０１１５】
以上のように、カメラモデルの各係数を取得して、本実施形態のカメラの較正を終了する。
本実施形態で求めたカメラパラメータが設定されたカメラモデルを、それを搭載したカメラ２を含む撮影装置で次のように使うことができる。なお、撮影装置は、画素座標に対応するワールド座標空間の直線を算出する直線算出部（主光線算出部：図示省略）と、３次元のワールド座標を算出するワールド座標算出部（図示省略）と、歪みを補正した画像を生成する歪み補正画像生成部（図示省略）とをさらに備えている。
【０１１６】
第１に、ワールド座標での主光線を求めたいときには、直線算出部において、注目する画素座標（ｕ，ｖ）を数８および数９に代入することにより、主光線の方向（θ，φ）と切片（ｘ０′, ｙ０′）を求めることができる。さらに、数１０で主光線の方程式が得られる。
【０１１７】
第２に、画素座標（ｕ，ｖ）に対応する、所定の平面あるいは曲面上ワールド座標を求めるときは、ワールド座標算出部において、上記の方程式で表される主光線と所定の平面あるいは曲面の交点を計算することにより、目的のワールド座標（ｘ，ｙ，ｚ）を求めることができる。
【０１１８】
第３に、較正されたカメラ２で撮像した画像の歪みを歪み補正画像生成部によって補正することができる。その方法を説明する。ワールド座標で表される物体は、カメラ２で撮像されて歪んだ画像になる。したがって、得られた画像を上述したカメラモデルでワールド座標に投影すれば、歪みを補正することができる。既知の物体距離ｚの平面上にある物体を撮像したときは、前記のワールド座標算出部で画素座標（ｕ，ｖ）の主光線と物体距離ｚの平面の交点を計算することにより、画素座標（ｕ，ｖ）をワールド座標（ｘ，ｙ）に投影できる。
【０１１９】
一方、そのような平面上にない物体を撮像した画像では、歪補正の基準物体距離を定義して、その物体距離ｚのワールド座標（ｘ，ｙ）に投影する。物体距離による歪曲収差の変化が小さければ、このような歪補正で十分である。ただし、ワールド座標に投影すると、画像が拡大あるいは縮小してしまう。そこで、投影したワールド座標を数８の横倍率ｋ０ｚで規格化する。これにより、元の画像とほぼ等倍の歪補正画像を得ることができる。
【０１２０】
歪補正画像の作成は、歪補正後の画像の画素座標（整数）に対応する元の画像の画素値を、歪補正後の画素座標に代入する一連の手続きである。その手順を図７のフローチャートを参照して説明する。歪補正が開始されると、最初の歪補正後の画素座標（ｕｃ，ｖｃ）が決定される（ステップＳ１１）。
【０１２１】
次いで、歪補正前の画素座標（ｕ，ｖ）に初期値（０，０）を与える（ステップＳ１２）。なお、何らかの方法で歪補正後の画素座標（ｕｃ，ｖｃ）に対応する歪補正前の画素座標（ｕ，ｖ）を推定できるときは、それを初期値にしてもよい。
【０１２２】
歪補正前の画素座標（ｕ，ｖ）の主光線と歪補正の基準物体距離ｚの平面の交点を計算して、ワールド座標（ｘ，ｙ）を求める（ステップＳ１３）。そして、求められたワールド座標（ｘ，ｙ）を横倍率ｋ０ｚで規格化して、画素座標（ｕ′，ｖ′）を求める（ステップＳ１４）。
【０１２３】
求められた画素座標（ｕ′，ｖ′）と歪補正後の画素座標（ｕｃ，ｖｃ）の距離を求める（ステップＳ１５）。求められた距離が所定の値より小さいときには、ステップＳ１８に進む。それ以外のときには、歪補正前の画素座標（ｕ，ｖ）の更新（ステップＳ１７）を経て、ステップＳ１３に戻る（ステップＳ１６）。
【０１２４】
繰り返し最適化のステップＳ１３からＳ１７は、滑降シンプレックス法などの一般的なアルゴリズムで実行できる。画素座標（ｕ，ｖ）の更新方法は、そのアルゴリズムに従う。
【０１２５】
繰り返し最適化が収束したときの歪補正前の画素座標（ｕ，ｖ）は、数１０のカメラモデルを介して歪補正後の画素座標（ｕｃ，ｖｃ）に対応している。その画素座標（ｕ，ｖ）は一般に非整数である。そこで、その画素座標に近接する４つの画素の画素値からバイリニア補間で画素座標（ｕ，ｖ）の画素値を求める。そして、それを歪補正後の画素座標（ｕｃ，ｖｃ）の画素値とする（ステップＳ１８）。なお、画素値の補間にはバイキュービック補間などの他の手法を採用してもよい。全ての歪補正後の画素座標（ｕｃ，ｖｃ）について、上記Ｓ１１からＳ１８を繰り返し（ステップＳ１９）、歪補正を終了する。
【０１２６】
なお、上記の歪補正では、物体距離ｚの平面を基準とする例を説明した。しかし、それ以外のワールド座標空間の平面あるいは曲面を基準として歪補正を実施するように変更することもできる。例えば、等距離射影を意図して設計されたカメラ２で撮像した画像は、カメラ２の製造誤差などにより、必ずしも正確な等距離射影の画像にならないことがある。その場合、等距離射影の射影式ｙ＝ｆθに基づいて、画素座標と基準半径の球面上のワールド座標の対応を規定し、それに基づいて上記と同様の手順で歪補正を実施すれば、意図した等距離射影の画像になるように歪補正することができる。他の射影方式でも同様である。
【０１２７】
上述した第１から第３のカメラモデルの利用例では、画素座標に対応するワールド座標を数１０のカメラモデルでその度に計算した。一方、それらを予め計算してデータ配列として保持しておくことにより、計算の高速化を図ることもできる。
【０１２８】
例えば、第１の利用例では、各画素座標に対応する主光線の方向と切片をそれぞれデータ配列として予め計算しておく。あるいは、ワールド座標の２つの平面あるいは球面などの曲面と各画素座標に対応する主光線の交点をデータ配列として予め計算しておく。そして、それらのデータ配列を補間して、注目する画素の主光線を求めるようにしてもよい。他の利用例でも同様である。
【０１２９】
本実施形態では、平面のチェスボード１０上に正方格子で並んだ格子点１１，１３の測定データでカメラ較正を実施した。しかし、較正チャート６上の特徴点は、格子点１１，１３以外のパターンでもよい。
【０１３０】
例えば、平面上に分布したドットマークを撮像して、その重心位置を画素座標とするような測定データの作成方法でもよい。さらに、本発明のカメラ較正で用いる特徴点は、ワールド座標空間に規則的に配列されている必要もない。特徴点の配置がランダムであっても、そのワールド座標と画素座標の対応を測定あるいはシミュレーション等で知ることができれば、それらに本発明のカメラモデルを当てはめることができる。
【０１３１】
このように、本実施形態のカメラ較正の測定データに要求される条件は、ワールド座標と画素座標との対応が明らかになっていることのみである。そのような測定データは、例えば、次のような方法でも取得可能である。まず、ワールド座標側にｘ，ｙ，ｚ軸方向に移動可能な点光源を用意する。それから、その点光源をカメラ２で撮像した画像の注目する画素座標に点光源の像が位置するように、点光源をｘ，ｙ，ｚ軸方向に移動する。そのような測定を繰り返すことによってもワールド座標と画素座標との対応を求めることができる。
【０１３２】
あるいは、カメラの画角が大きいために、１枚の較正チャート６で全画角を包含することができないときは、較正チャート６を複数の画角に設置して、カメラの全画角を包含するようにしてもよい。このときも、較正チャート６上の特徴点のワールド座標と画素座標との対応が明らかであれば、本実施形態のカメラ較正方法を適用することができる。
【０１３３】
本実施形態では、３次の動径歪曲と２次の接線歪曲のみを考慮したカメラモデルを採用した。しかし、歪曲収差がさらに大きいカメラ２を較正するときは、より高次の歪曲収差や回転非対称の歪曲の項を追加したカメラモデルも採用できる。その場合、撮像素子１８の撮像面とそれと共役な平面との結像関係を表す数５の結像式のような線形モデルを用意する。
【０１３４】
それから、この線形モデルを数８および数９に適用することにより、主光線の方向と切片の新たなモデルを構築することができる。あるいは、その線形モデルの各係数を数１７のカメラモデルのように、距離ｒの１次式で置き換えることにより、射影された座標空間の新たなカメラモデルを構築することができる。各係数を求める最適化の方法は本実施形態と同様である。
【０１３５】
逆に、カメラモデルから不要な項を省略することもできる。例えば、回転非対称な歪曲成分が常に無視できるほど小さいカメラ２を較正するときは、カメラモデルの接線歪曲の項を省略した方がよい。それにより、格子点１１の測定誤差によって、カメラモデルが無意味に変形して不正確になることを防止できる。他の項についても同様である。
【０１３６】
本実施形態では、数１７の射影された座標空間のカメラモデルを当てはめて求めたカメラパラメータを初期値として、数１０のカメラ座標のカメラモデルのカメラパラメータを繰り返し最適化する手順を採用した。しかし、この手順の一方を省略することも可能である。
【０１３７】
前述のように、カメラ較正の対象となる範囲の距離ｒが十分に大きいとき、数１０のモデルの繰り返し最適化を省略しても、数１７のモデルから主光線１９の方向と切片を高精度に求めることができる。数１７のカメラモデルを、カメラ２を含む撮影装置で使うときは、数１３と数１７との関係から、前者の傾き（ａ，ｃ）と切片（ｂ，ｄ）を求める。その傾き（ａ，ｃ）は、前述のように、数８の主光線の方向のモデルに一致する。一方、切片（ｂ，ｄ）は数１４で切片（ｘ0′, ｙ0′）に変換できる。このようにして、数１０の主光線の直線方程式を求めることができる。
【０１３８】
一方、数１７の射影された座標空間のカメラモデルによるカメラパラメータの初期化を省略すると、数１０のカメラ座標のカメラモデルの繰り返し最適化において、誤った収束値あるいは膨大な計算時間、という問題が生じる可能性が高くなる。しかし、較正対象のカメラ２の歪曲収差および瞳収差が小さいとき、あるいは、カメラ２の設計データなどからカメラパラメータの初期値を推定できるときは、そのような問題の発生を回避することができる。
【０１３９】
このように、本実施形態に係るカメラ較正装置１およびカメラ較正方法によれば、本実施形態のカメラモデルによって、撮像光学系１４の瞳収差を的確にモデル化することができる。さらに、回転非対称な歪曲収差と瞳収差もモデル化できる。それにより、主光線群を正確に表現でき、カメラモデルの精度を向上させることができる。
【０１４０】
また、本実施形態のカメラ較正装置１およびカメラ較正方法は、較正対象のカメラ２の射影式に基いたカメラモデルを使用するので、モデルに必要な最大次数を抑制することができる。同時に、従来例と異なり、半画角９０°以上のカメラも較正することができる。
【０１４１】
また、本実施形態のカメラ較正装置１およびカメラ較正方法は、線形のカメラモデルを使用するので、線形の最小二乗法で測定データに当てはめることができる。したがって、従来例と異なり、最適化の失敗が無く、かつ計算時間を大幅に短縮することができる。
【０１４２】
また、本実施形態のカメラ較正装置１およびカメラ較正方法に用いる特徴点は規則的に配列している必要がない。したがって、ワールド座標と画素座標の対応さえ明確にできれば、較正されるカメラ２に適した任意の測定あるいは計算による取得方法を選択することが可能になる。
【０１４３】
次に、本発明の第２の実施形態に係るカメラ較正方法について、図面を参照して以下に説明する。第１の実施形態においては、図１のように較正されるカメラ２の入射瞳がワールド座標の原点とほぼ一致し、かつ光軸がカメラ較正装置１のｚ軸と平行であり、撮像面の水平方向と垂直方向がｘ軸とｙ軸と平行であるときのカメラ較正の方法を説明した。本実施形態では、その条件を満たさないとき、すなわちワールド座標とカメラ座標が一致しないときのカメラ較正の方法を説明する。
【０１４４】
第１の実施形態で使用したカメラモデルは、較正対象のカメラ２の撮像光学系１４の入射瞳の中心４０４を原点としたカメラ座標で成立している。したがって、図１のカメラ較正装置１における較正チャート６上の格子点１１のワールド座標をカメラ座標に変換すると、前記のカメラモデルが当てはまるようになる。ワールド座標（ｘ，ｙ，ｚ）からカメラ座標（ｘｃ，ｙｃ，ｚｃ）への変換は、数２の３軸の回転行列Ｒと平行移動ベクトルＴにより、数２２で表される。
【０１４５】
【数２２】
0006675478.tif 000023
【０１４６】
そこで、第２の実施形態では、測定した複数の格子点１１のワールド座標（ｘ，ｙ，ｚ）と画素座標（ｕ，ｖ）の対応を表す測定データのうち、ワールド座標のみを、数２２でカメラ座標（ｘｃ，ｙｃ，ｚｃ）に変換してから、第１の実施形態のカメラモデルを当てはめる。
【０１４７】
そして、その残差が最小になるように、回転行列Ｒの３軸の回転角θｘ，θｙ，θｚと平行移動ベクトルＴの３つの成分（ｔｘ，ｔｙ，ｔｚ）を最適化する。一般に、数２２で変換したワールド座標がカメラ座標と一致したとき、カメラモデルの残差が最小になる。
【０１４８】
次に、第２の実施形態に係るカメラ較正方法を用いてカメラを較正する手順を、図８を参照して説明する。初めに、第１の実施形態と同様にして、ワールド座標（ｘ，ｙ，ｚ）と画素座標（ｕ，ｖ）との対応を表す測定データを求める（ステップＳ８０２）。
【０１４９】
次に、数２２に含まれる回転角θｘ，θｙ，θｚと平行移動の成分ｔｘ，ｔｙ，ｔｚを初期化する（ステップＳ８０３）。それらの初期値はゼロでよい。あるいは、何らかの方法でカメラ２の回転角と平行移動を推定できるときは、それを初期値にしてもよい。
【０１５０】
次に、測定データのワールド座標（ｘ，ｙ，ｚ）を、数２２でカメラ座標（ｘｃ，ｙｃ，ｚｃ）に変換する（ステップＳ８０４）。さらに、そのカメラ座標（ｘｃ，ｙｃ，ｚｃ）を、数７および数１２で、射影された座標（ξ，η，ｒ）に変換する（ステップＳ８０５）。それから、測定データのすべての画素座標（ｕ，ｖ）と射影された座標（ξ，η，ｒ）に、数１７のカメラモデルを線形の最小二乗法で当てはめる（ステップＳ８０６）。そのときの残差の標準偏差が所定の値より小さいときには、ステップＳ８０９に進む。それ以外のときには、回転角θｘ，θｙ，θｚと平行移動の成分ｔｘ，ｔｙ，ｔｚの更新（ステップＳ８０８）を経て、ステップＳ８０４に戻る（ステップＳ８０７）。
【０１５１】
この繰り返し最適化は、滑降シンプレックス法などの一般的な最適化アルゴリズムで実行される。評価関数である残差が最小値に収束したときの回転角θｘ，θｙ，θｚと平行移動の成分ｔｘ，ｔｙ，ｔｚが最適な回転角と平行移動である。
【０１５２】
次に、測定データのすべてのワールド座標（ｘ，ｙ，ｚ）を、上記の最適な回転角θｘ，θｙ，θｚと平行移動の成分ｔｘ，ｔｙ，ｔｚを適用した数２２で、カメラ座標（ｘｃ，ｙｃ，ｚｃ）に変換する（ステップＳ８０９）。さらに、最適な回転角と平行移動における、上記の数１７の係数（ｋ０，ｋ１，ｐ１，ｐ２，Δｕ，Δｖ）および（ｋ０″，ｋ１″，ｐ１″，ｐ２″，Δｕ″，Δｖ″）で、数８の係数（ｋ０，ｋ１，ｐ１，ｐ２，Δｕ，Δｖ）と数９の係数（ｋ０′，ｋ１′，ｐ１′，ｐ２′，Δｕ′，Δｖ′）をそれぞれ初期化する（ステップＳ８１０）。
【０１５３】
続いて、画素座標（ｕ，ｖ）に対応する数１０の主光線と前記のカメラ座標（ｘｃ，ｙｃ，ｚｃ）の距離を、すべての測定データについて計算して、それらの２乗和を求める（ステップＳ８１１）。そのときの２乗和が所定の値より小さいときには、カメラの較正を終了する。それ以外のときには、数８の係数（ｋ０，ｋ１，ｐ１，ｐ２，Δｕ，Δｖ）と数９の係数（ｋ０′，ｋ１′，ｐ１′，ｐ２′，Δｕ′，Δｖ′）を更新するステップＳ８１３を経て、ステップＳ８１１に戻る（ステップＳ８１２）。
【０１５４】
この繰り返し最適化は、滑降シンプレックス法、あるいは前述の交互最適化アルゴリズムで実行される。以上のように、最適な回転角θｘ，θｙ，θｚ、平行移動の成分ｔｘ，ｔｙ，ｔｚとその回転角と平行移動におけるカメラモデルの各係数を取得して、カメラ較正を終了する。
【０１５５】
本実施形態に係るカメラ較正方法を用いて求めたカメラパラメータが設定されたカメラモデルを、それを搭載したカメラ２を含む撮影装置で第１の実施形態と同様に利用することができる。ただし、注目する画素座標から数１０で得られる主光線は、カメラ座標（ｘｃ，ｙｃ，ｚｃ）での方程式である。用途によっては、注目する画素座標に対応するワールド座標の主光線を求めたい場合もある。この場合には、カメラ２を含む撮影装置が、カメラ座標（ｘｃ，ｙｃ，ｚｃ）をワールド座標（ｘ，ｙ，ｚ）に変換する座標変換部（図示略）を備えている。
【０１５６】
これは、例えば、以下の手順で実現できる。初めに、カメラ座標の適当な２つの物体距離ｚc１とｚc２で画素座標に対応するカメラ座標（ｘc１，ｙc１）と（ｘc２，ｙc２）を求める。それは、第１の実施形態で述べたとおり、数１０で表される主光線と、物体距離ｚc１およびｚc２の平面の交点として求められる。次に、それら２つのカメラ座標（ｘc１，ｙc１，ｚc１）と（ｘc２，ｙc２，ｚc２）を、座標変換部によって、最適な回転角θｘ，θｙ，θｚと平行移動の成分ｔｘ，ｔｙ，ｔｚによる数２２の逆変換でワールド座標（ｘ１，ｙ１，ｚ１）と（ｘ２，ｙ２，ｚ２）に変換する。
【０１５７】
変換により求められた２点を通る直線がワールド座標の主光線である。
本実施形態では、３つの回転角θｘ，θｙ，θｚと３つの平行移動の成分ｔｘ，ｔｙ，ｔｚを最適化した。しかし、それらの中のいくつかが既知のときは、それらを既知の値で固定して、最適化パラメータから外してもよい。そのときは、残りの未知の１つあるいは複数のパラメータのみを最適化すればよい。このようにすると最適化パラメータの数が減るので、計算時間を短縮することができる。
【０１５８】
なお、３次元座標の３つの回転角の定義には任意性がある。本実施形態ではｘ，ｙ，ｚ軸周りの回転角という定義を採用して説明した。しかし、それ以外の定義であっても本発明を適用できることは言うまでもない。
【０１５９】
また、本実施形態では、数１７の射影された座標空間のカメラモデルを当てはめて求めたカメラパラメータを初期値として、数１０のカメラ座標のカメラモデルのカメラパラメータを繰り返し最適化する手順を採用した。しかし、第１の実施形態と同様に、この手順の一方を省略することも可能である。
【０１６０】
前述のように、カメラ較正の対象となる範囲の距離ｒが十分に大きいとき、数１０のモデルの繰り返し最適化を省略しても、数１７のモデルから主光線１９の方向と切片を高精度に求めることができる。
【０１６１】
一方、本実施形態で、数１７の射影された座標空間のカメラモデルによるカメラパラメータの初期化を省略した手順は、次のようになる。まず、測定データのワールド座標（ｘ，ｙ，ｚ）を、数２２でカメラ座標（ｘｃ，ｙｃ，ｚｃ）に変換する。続いて、測定データの画素座標（ｕ，ｖ）に対応する数１０の主光線と、前記のカメラ座標（ｘｃ，ｙｃ，ｚｃ）の距離の２乗和が最小になるように、前記の数２２に含まれる回転角θｘ，θｙ，θｚおよび平行移動の成分ｔｘ，ｔｙ，ｔｚと、数８および数９の各係数を繰り返し最適化する。
【０１６２】
この手順によると、同時に繰り返し最適化するパラメータの数が増えるので、誤った収束値あるいは膨大な計算時間、という問題が生じる可能性が高くなる。しかし、回転角θｘ，θｙ，θｚおよび平行移動の成分ｔｘ，ｔｙ，ｔｚと、較正対象のカメラの歪曲収差および瞳収差が小さいとき、あるいは、カメラの設計データなどから各パラメータの初期値を推定できるときは、そのような問題の発生を回避することができる。
【０１６３】
このように、本実施形態に係るカメラ較正方法によれば、ワールド座標に対するカメラ２の位置と姿勢が適切にアライメントされていない場合でも、高精度なカメラモデルを取得することができる。また、歪曲収差などの多くのカメラパラメータが必要な場合でも、繰り返し最適化は、３つ以下の回転角および３つ以下の平行移動の成分を最適化する手順と、主光線の方程式の各係数のみを最適化する手順に分割して実行されるので、カメラモデルの最適化の失敗が無く、かつ計算時間を大幅に短縮することができる。
【０１６４】
次に、本発明の第３の実施の形態に係るカメラ較正装置３２およびカメラ較正方法について、図面を参照して以下に説明する。本実施形態に係るカメラ較正装置３２は、３次元形状復元を目的とした多視点カメラ３３，３４，３５の較正に適用するものである。以下、３台からなる多視点カメラの較正を例示して説明するが、それ以外の台数のカメラの較正にも適用できる。
【０１６５】
本実施形態に係るカメラ較正装置３２においては、図９に示されるように、較正対象の３台のカメラ（撮影装置、光学装置）３３，３４，３５が、多視点カメラの使用条件と同じ配置でカメラ固定台３６に固定される。そして、各々のカメラ３３，３４，３５が較正チャート６を撮像できるように、カメラ固定台３６がカメラ較正装置３２に取り付けられるようになっている。較正チャート６とｚ軸移動ステージ４、コンピュータ７など、それ以外の構成は図１と同様であり、説明を省略する。
【０１６６】
このように構成された本実施形態に係るカメラ較正装置３２の作用について、以下に説明する。本実施形態に係るカメラ較正装置３２の動作は、第１の実施形態に係るカメラ較正装置１と同様である。初めに、図３のフローチャートの測定プログラムにより、自動的に複数の物体距離の較正チャート６の画像がカメラ３３，３４，３５によって撮像され、その画像から較正チャート６の格子点１１の画素座標が取得される。ただし、図３のフローチャートのステップＳ２，Ｓ４，Ｓ５は３台のカメラ３３，３４，３５に対してそれぞれ実行される。
【０１６７】
続いて、各カメラ３３，３４，３５の上記の測定データから、各カメラ３３，３４，３５のカメラモデルを求める。その手順は、第２の実施形態と同様である。
本実施形態に係るカメラ較正装置３２で求めたカメラパラメータを設定した各カメラモデルを、それらを搭載した各カメラ３３，３４，３５を含む撮影装置で第１および第２の実施形態と同様に利用することができる。特に、各カメラ３３，３４，３５の各画素座標に対応する各主光線を１つの共通なワールド座標で扱いたい用途では、第２の実施形態で述べた座標変換部の手順を適用すればよい。
【０１６８】
なお、多視点の各カメラ３３，３４，３５の測定データを必ずしも同時に測定する必要は無い。例えば、図３のフローチャートの測定プログラムを各カメラに対して個別に順次、実行してもよい。さらに、各カメラ３３，３４，３５の測定データを測定するときに、較正チャート６が測定対象の各カメラに正対するようにｚ軸移動ステージ４の設置位置をカメラ較正装置３２上で変更してもよい。
【０１６９】
ただし、その設置位置の変更量を把握して、それを較正チャート６の格子点１１のワールド座標に反映した測定データを作成する必要がある。このようなカメラ較正方法は、多視点カメラ３３，３４，３５が観察領域を取り囲むように配置されているために、１方向に固定された較正チャート６を撮像できないカメラが存在する場合に有効である。
【０１７０】
このように本実施形態に係るカメラ較正装置３２およびカメラ較正方法によれば、多視点カメラ３３，３４，３５を使用条件と同じ配置でカメラ較正できる。そして、各カメラ３３，３４，３５の画素座標に対応するワールド座標あるいは主光線を、１つの共通なワールド座標で取り扱うことができるという利点がある。
【０１７１】
次に、本発明の一実施形態に係る計測システムおよび計測方法について、図面を参照して説明する。
本実施形態に係る計測システムは、図９に示されるように、第３の実施形態に係るカメラ較正装置３２と、多視点カメラ３３，３４，３５と、３次元座標計算処理部（コンピュータ７）とを備えている。
【０１７２】
カメラ較正装置３２を用いてカメラ較正を実行することで、多視点カメラ３３，３４，３５のそれぞれのカメラパラメータを設定した各カメラモデルが求められている。
コンピュータ７に内蔵された３次元座標計算処理部は、下記のステップの計算処理で多視点カメラ３３，３４，３５によって撮影された被写体の表面上の注目点のワールド座標を計算する。その手順は、図１１に示す通りとなる。
【０１７３】
ステップＳ１０１：多視点カメラ３３，３４，３５によって撮影された３枚の被写体画像Ｉ３３，Ｉ３４，Ｉ３５を取り込む。
ステップＳ１０２：ユーザが画像Ｉ３４上で指定した各画素の画素座標に対応する画像Ｉ３３の画素の画素座標を対応点探索処理で求める。
【０１７４】
ステップＳ１０３：Ｉ３４で指定した画素座標に対応する主光線と、ステップＳ１０２で求めたＩ３３の画素座標に対応する主光線の連立方程式を解き、画像Ｉ３４の各画素に対応する被写体表面上の注目点のワールド座標Ａを求める
ステップＳ１０４：画像Ｉ３４の各画素に対応する画像Ｉ３５の画素の画素座標を対応点探索処理で求める。
【０１７５】
ステップＳ１０５：Ｉ３４で指定した画素座標に対応する主光線と、ステップＳ１０４で求めたＩ３５の画素座標に対応する主光線の連立方程式を解き、画像Ｉ３４の各画素に対応する被写体表面上の注目点のワールド座標Ｂを求める。
ステップＳ１０６：画像Ｉ３４の各画素について、ワールド座標Ａ，Ｂの２点間距離Ｄ１を求める。
【０１７６】
ステップＳ１０７：画像Ｉ３４の各画素について、２点間距離Ｄ１が所定の閾値以下あるか否かを判定する。
ステップＳ１０８：閾値以下であれば、ワールド座標Ａ，Ｂは、どちらもその誤差が小さいとみなし、２つのワールド座標Ａ，Ｂの中点の座標を対応する被写体の表面上の注目点のワールド座標とする。
ステップＳ１０９：閾値より大きい場合には対応する被写体の表面状の注目点は「結果なし」とするか、誤差が大きいとの警告情報つきのワールド座標とする。
【０１７７】
画像間の対応点探索処理にはブロックマッチングに代表される画像の輝度値の分布の類似度を評価するアルゴリズムを用いる。類似度の計算方法は計算速度と計算精度の要求に合わせて差の２乗和ＳＳＤ、差の絶対値の和ＳＡＤ、正規化相互相関ＮＣＣ、ゼロ平均正規化相互相関ＺＮＣＣ等の複数の計算手法を用いることができる。カメラ３３，３４，３５毎の撮影される画像の明るさの差に対するロバスト性を考慮すると、ＺＮＣＣが望ましい。また、計算時間とのバランスからこれら複数の類似度計算手法から選択できるようにしてもよい。
【０１７８】
また、対応点探索処理に用いる画像Ｉ３３，Ｉ３４，Ｉ３５には第１の実施例で示した歪補正処理を適用することが望ましい。歪補正処理を適用した画像上で対応点探索処理を行うことで、カメラ３３，３４，３５間の光学特性の差の影響を低減したより精度の高い対応点座標を求めることができる。
【０１７９】
ステップＳ１０５においては、連立方程式は、まず主光線のｘ成分とｚ成分の式で解き、求めたｚを用いてｙを求める。ｙを求める式は、画素の指定に用いる画像Ｉ３４の主光線を用いる。
ステップＳ１０８においては、２つのワールド座標Ａ，Ｂの中点のワールド座標を用いることで、求めるワールド座標の誤差をさらに小さくする効果がある。
【０１８０】
ここでは、３視点のカメラを例として挙げたが、２視点のカメラであってもよい。その場合、上記のステップＳ１０４以降の処理は不要となる。
なお、各ステップの説明ではユーザが画像Ｉ３４上で指定した画素についてワールド座標を計算しているが、画像Ｉ３４に対して実行される特徴点抽出処理によって特徴があると判定された複数の画素について自動的にワールド座標を計算するようにしてもよいし、計算資源の制約が小さい場合には画像Ｉ３４の全ての画素について計算するようにしてもよい。
【０１８１】
次に、本発明の第４の実施形態に係る較正装置について、図１０を参照して以下に説明する。本実施形態に係る較正装置は、プロジェクタ較正装置３７であって、その内部に液晶素子などの画像形成素子（画像変換素子：図示省略）と、投影光学系（光学系：図示省略）とを備えており、その画像を外部へ投影するプロジェクタ（投影装置）３８を較正するための装置である。本実施形態においては、光学装置の一例として、プロジェクタ３８を用いている。
【０１８２】
プロジェクタ較正装置３７は、較正対象のプロジェクタ３８を固定するベース３９と、該ベース３９に設けられたｚ軸移動ステージ４と、該ｚ軸移動ステージ４の可動部５に固定された較正チャート６と、プロジェクタ３８と隣接する位置に配置され、較正チャート６の像を撮影するカメラ２とを備えている。カメラ２とプロジェクタ３８とは、それらの光軸がプロジェクタ較正装置３７のｚ軸と平行になるように、かつ、プロジェクタ３８の所定の位置が座標原点と一致するように、プロジェクタ較正装置３７に取り付けられるようになっている。
【０１８３】
なお、カメラ２の撮像範囲はプロジェクタ３８の画像投影範囲を包含していることが好ましい。較正チャート６とｚ軸移動ステージ４、コンピュータ７など、それ以外の構成は図１と同様である。ただし、本実施形態において使用される較正チャート６としては、図２のチェスボード１０と無地のスクリーンとを交換可能になっている。また、コンピュータ７は、プロジェクタ３８を制御して、所定の画像をプロジェクタ３８に投影させる機能を併せ持っている。
【０１８４】
このように構成された本実施形態に係るプロジェクタ較正装置３７を用いてプロジェクタ３８を較正するには、初めに、図２のチェスボード１０を較正チャート６として設置した状態で、カメラ２を較正する。その手順は第１あるいは第２の実施形態と同様である。
【０１８５】
続いて、較正チャート６を無地のスクリーンに交換する。そして、プロジェクタ３８から、投影光学系を通して図２のチェスボード１０のパターンを較正チャート６に投影する。このとき、プロジェクタ３８内部の画像形成素子（図示省略）上で定義される画素座標において、チェスボード１０の各格子点１１，１３の画素座標は既知である。
【０１８６】
この状態で、第１の実施形態と同様に、図３のフローチャートの測定プログラムにより、自動的に複数の物体距離でチェスボード１０のパターンが投影された較正チャート６の画像がカメラ２によって撮像され、その画像からチェスボード１０のパターンの格子点１１の画素座標が取得される。
【０１８７】
この後に、取得された画素座標（ｕ，ｖ）と較正チャート６の物体距離ｚとから、前記の手順で較正されたカメラ２のカメラモデルで、較正チャート６上に投影されたチェスボード１０のパターンの格子点１１のワールド座標（ｘ，ｙ）を求める。以上の手順で、プロジェクタ３８の画素座標（ｕ，ｖ）とワールド座標（ｘ，ｙ，ｚ）との対応を表す測定データが得られる。その測定データから、プロジェクタ３８のカメラパラメータを求める方法は第１あるいは第２の実施形態と同様である。
【０１８８】
このようにして求められたプロジェクタ３８のカメラパラメータを設定したカメラモデルを、それを搭載したプロジェクタ３８で第１および第２の実施形態と同様に利用することができる。
特に、歪みが無い画像を投影したいときは、プロジェクタ３８の画像形成素子で形成する画像に、投影で生じる歪みを相殺するような画像歪みを予め加えておけばよい。そのような歪補正画像の画素座標を求める手順は、図７に示される第１の実施形態のフローチャートと同様である。
【０１８９】
なお、プロジェクタ３８で投影するパターンはチェスボード１０に限らない。カメラ２で撮像した画像から特徴点の画素座標を算出できる、ドットマークなどのパターンも適用可能である。あるいは、プロジェクタ３８の離散した各画素を点灯する方法でもよい。
【０１９０】
また、本実施形態では、プロジェクタ３８で投影された特徴点のワールド座標（ｘ，ｙ）を、予め較正したカメラ２で測定した。その測定は、較正チャート６の代わりに撮像素子１８を設置して、投影されたパターンを直接撮像する、という方法でも実現可能である。さらに、ワールド座標と画素座標の対応さえ明確にできれば、それ以外の取得方法も選択可能である。このように、本実施形態に係るプロジェクタ較正装置３７によれば、プロジェクタ３８をカメラモデルによって較正することができる。
【０１９１】
次に、本発明の一実施形態に係る計測システムおよび計測方法について、図面を参照して説明する。
本実施形態に係る計測システムは、第４の実施形態に係るプロジェクタ較正装置３７と、プロジェクタ３８と、３次元座標計算処理部（コンピュータ７）とを備えている。
【０１９２】
プロジェクタ較正装置３７を用いてプロジェクタ３８の較正を実行することで、プロジェクタ３８のカメラパラメータを設定したカメラモデルが求められる。第４の実施形態のカメラ２に対して第１あるいは第２の実施形態のカメラ較正を実行することで、カメラ２のカメラパラメータを設定したカメラモデルが求められる。
【０１９３】
プロジェクタ３８が投影するパターンはランダムドットパターン画像Ｉ３８とする。コンピュータ７に内蔵された３次元計算処理部は、下記のステップの計算処理でカメラ２によって撮影された被写体の表面上の注目点のワールド座標を計算する。ランダムドットパターンは、公知の方法で生成できる。また、Ｍ系列に代表される疑似乱数系列を２次元に配列することで作成してもよい。
【０１９４】
その計測方法は図１２に示す通りである。
ステップＳ１１１：プロジェクタ３８によってパターン（構造化光）を投影された被写体をカメラ２で撮影した被写体画像Ｉ２を取り込む。
ステップＳ１１２：ユーザが画像Ｉ２上で指定した各画素に対応する画像Ｉ３８の画素の画素座標を対応点探索処理で求める。
【０１９５】
ステップＳ１１３：Ｉ２で指定した画素座標に対応する主光線と、ステップＳ１１２で求めたＩ３８の画素座標に対応する主光線の連立方程式を解き、画像Ｉ２の各画素に対応する被写体表面上の注目点のワールド座標を求める。
ステップＳ１１３においては、連立方程式は、まず主光線のｘ成分とｚ成分の式で解き、求めたｚを用いてｙを求める。ｙを求める式は画素の指定に用いるＩ２の主光線を用いる。
【０１９６】
ここでは、プロジェクタ３８はパターンとして一種類の疑似ランダムパターンを投影する例を挙げたが、位相をずらした複数の縞を時間差で投影した複数枚の被写体画像を用いる位相シフト方式や、複数の解像度の2値パターンを投影した複数枚の画像を用いる空間コード化方式であってもよい。また、プロジェクタ３８が１台の例を挙げたが、ひとつのカメラ２に対して複数のプロジェクタ３８、あるいは複数のカメラ２に対して複数のプロジェクタ３８があってもよい。
【０１９７】
なお、各ステップの説明ではユーザが画像Ｉ２上で指定した各画素についてワールド座標を計算しているが、画像Ｉ２に対して実行される特徴点抽出処理によって特徴があると判定された複数の画素について自動的に３次元座標を計算するようにしてもよいし、計算資源の制約が小さい場合には画像Ｉ２の全ての画素について計算するようにしてもよい。
【０１９８】
次に、本発明の第５の実施形態に係るカメラ較正方法について、図１、図４Ａから図４Ｃならびに図５Ａおよび図５Ｂを参照して以下に説明する。
第１から第４の実施形態においては、較正されるカメラ２の瞳収差を無視できないときのカメラ較正の方法を説明した。本実施形態では、瞳収差を無視できるときのカメラ較正の方法を説明する。
【０１９９】
カメラ２の瞳収差を無視できることは、全ての主光線が入射瞳の中心４０４の１点で交わることと等価である。従って、数８の主光線の方向のモデルのみで、カメラ２を較正できる。すなわち、格子点１１のカメラ座標（ｘｃ，ｙｃ，ｚｃ）を、数７の球座標（ｒ，θ，φ）を介して、数２３の射影された座標（ξ′，η′）に変換すると、数２４のカメラモデルが成立する。
【０２００】
【数２３】
0006675478.tif 000024
【０２０１】
【数２４】
0006675478.tif 000025
【０２０２】
次に、第５の実施形態に係るカメラ較正方法を用いてカメラモデルを最適化する手順を説明する。
【０２０３】
初めに、第１の実施形態と同様にして、ワールド座標（ｘ，ｙ，ｚ）と画素座標（ｕ，ｖ）との対応を表す測定データを求める。次に、測定データのワールド座標（ｘ，ｙ，ｚ）を、数２２でカメラ座標（ｘｃ，ｙｃ，ｚｃ）に変換する。さらに、そのカメラ座標（ｘｃ，ｙｃ，ｚｃ）を、数７および数２３で、射影された座標（ξ′，η′）に変換する。
【０２０４】
それから、測定データのすべての画素座標（ｕ，ｖ）と射影された座標（ξ′，η′）に、数２４のカメラモデルを線形の最小二乗法で当てはめる。そのときの残差の標準偏差を評価関数として、前記の数２２に含まれる回転角θｘ，θｙ，θｚと平行移動の成分ｔｘ，ｔｙ，ｔｚを繰り返し最適化する。最適化パラメータである回転角θｘ，θｙ，θｚおよび平行移動の成分ｔｘ，ｔｙ，ｔｚの初期値はゼロでよい。あるいは、何らかの方法でカメラ２の回転角と平行移動を推定できるときは、それを初期値にしてもよい。
【０２０５】
この繰り返し最適化は、滑降シンプレックス法などの一般的な最適化アルゴリズムで実行される。評価関数が最小値に収束したときの回転角θｘ，θｙ，θｚと平行移動の成分ｔｘ，ｔｙ，ｔｚが最適な回転角と平行移動であり、そのときの数２４のカメラモデルの各係数がカメラパラメータである。以上で、カメラ較正を終了する。
【０２０６】
本実施形態に係るカメラ較正方法を用いて求めたカメラパラメータが設定されたカメラモデルを、それを搭載したカメラ２を含む撮影装置あるいはプロジェクタ３８で第１から第４の実施形態と同様に利用することができる。
【０２０７】
このように、本実施形態に係るカメラ較正方法によれば、瞳収差を無視できるカメラ２あるいはプロジェクタ３８を較正する場合に、カメラパラメータの数を減らすことができる。また、歪曲収差などの多くのカメラパラメータが必要な場合でも、繰り返し最適化のパラメータ数は３つ以下の回転角および３つ以下の平行移動成分に限定されるので、カメラモデルの最適化の失敗が無く、かつ計算時間を大幅に短縮することができる。
【０２０８】
また、本発明の第１から第５の実施形態において、カメラ２あるいはプロジェクタ３８は屈折光学系に限定されない。反射屈折光学系であっても、反射に伴う座標系の反転などの変換を考慮すれば、本発明を適用できることは自明である。
また、カメラ２あるいはプロジェクタ３８のフォーカス、ズーム、絞りなどの設定変更にそれぞれ対応した、複数のカメラ較正を実施することにしてもよい。また、それらのカメラモデルを補間して、任意の設定に対応したカメラモデルを求めることにしてもよい。
【０２０９】
さらに、光源の複数の波長の下で、カメラ較正を実施することにしてもよい。また、波長別の画像を撮影するカメラで、波長別のカメラモデルを使用することにしてもよい。また、本発明の第１から第５の実施形態に記載の光学装置２，３３，３４，３５，３８において、画像変換素子の一例として、撮像素子１８や画像形成素子を用いたが、これに限られるものではなく、画像と映像信号とを相互に変換するものであればよい。
【符号の説明】
【０２１０】
１，３２  カメラ較正装置（較正装置）
２，３３，３４，３５  カメラ（撮影装置、光学装置）
７  コンピュータ（パラメータ算出部、３次元座標計算処理部）
８  較正データ取得部
１４  撮像光学系（光学系）
１８  撮像素子（画像変換素子）
３７  プロジェクタ較正装置（較正装置）
３８  プロジェクタ（投影装置、光学装置）
【図１】
0006675478.tif 000026
【図２】
0006675478.tif 000027
【図３】
0006675478.tif 000028
【図４Ａ】
0006675478.tif 000029
【図４Ｂ】
0006675478.tif 000030
【図４Ｃ】
0006675478.tif 000031
【図５Ａ】
0006675478.tif 000032
【図５Ｂ】
0006675478.tif 000033
【図６】
0006675478.tif 000034
【図７】
0006675478.tif 000035
【図８】
0006675478.tif 000036
【図９】
0006675478.tif 000037
【図１０】
0006675478.tif 000038
【図１１】
0006675478.tif 000039
【図１２】
0006675478.tif 000040