(57)【要約】【課題】キャリブレーション修正作業を簡易化する。【解決手段】実空間上に設置した世界座標とカメラが撮影した画像上に設置した画像座標との対応に基づいてカメラパラメータを求めるカメラキャリブレーション装置であって、前記世界座標の座標値が既知の指標点と前記指標点に対応する前記画像座標における対応点の座標組からカメラパラメータを求めるキャリブレーション部Ａ１１３と、前記指標点の世界座標値と前記対応点の画像座標値との対応誤りを検出するキャリブレーション修正部Ａ１１４と、検出された対応誤りを、前記指標点と前記対応点とを対応付けて映像表示装置に表示させる表示制御部Ａ１１２とを備える。【選択図】  図１
2006067272.tif 000002
【特許請求の範囲】
【請求項１】
実空間上に設置した世界座標とカメラが撮影した画像上に設置した画像座標との対応に基づいてカメラパラメータを求めるカメラキャリブレーション装置であって、
前記世界座標の座標値が既知の指標点と前記指標点に対応する前記画像座標における対応点の座標組からカメラパラメータを求めるキャリブレーション手段と、
前記指標点の世界座標値と前記対応点の画像座標値との対応誤りを検出する検出手段と、
検出された対応誤りを、前記指標点と前記対応点とを対応付けて映像表示装置に表示させる表示制御手段と、
を備えるカメラキャリブレーション装置。
【請求項２】
請求項１記載のカメラキャリブレーション装置であって、
前記表示制御手段は、検出された対応誤りを視覚的効果を施して表示させるカメラキャリブレーション装置。
【請求項３】
請求項１又は２記載のカメラキャリブレーション装置であって、
前記表示制御手段は、検出された対応誤りを、キャリブレーション誤差の計算結果に応じた表示形態で表示させるカメラキャリブレーション装置。
【請求項４】
請求項１ないし３のいずれか一項記載のカメラキャリブレーション装置であって、
前記表示制御手段は、対応誤りが検出された前記世界座標値の成分を強調して表示させるカメラキャリブレーション装置。
【請求項５】
請求項１ないし４のいずれか一項記載のカメラキャリブレーション装置であって、
前記表示制御手段は、検出された対応誤りが表示される領域を拡大して表示させるカメラキャリブレーション装置。
【請求項６】
請求項１ないし５のいずれか一項記載のカメラキャリブレーション装置であって、
前記表示制御手段は、対応誤りが検出される毎に、前記対応誤りを逐次表示させるカメラキャリブレーション装置。
【請求項７】
請求項１ないし６のいずれか一項記載のカメラキャリブレーション装置であって、
前記表示制御手段は、現状求めたカメラパラメータを使用して、指定された前記映像表示装置上の任意の点と入力された世界座標の一成分とから計算した残りの世界座標に基づいて、前記対応誤りを表示するカメラキャリブレーション装置。
【請求項８】
請求項１ないし７のいずれか一項記載のカメラキャリブレーション装置であって、
前記表示制御手段は、前記指標点を画像認識して求めた画像座標上の対応点に基づいて、前記対応誤りを表示するカメラキャリブレーション装置。
【請求項９】
請求項８記載のカメラキャリブレーション装置であって、
前記表示制御手段は、前記対応誤りを、キャリブレーション誤差の計算結果に応じた表示形態で表示させるカメラキャリブレーション装置。
【請求項１０】
実空間上に設置した世界座標とカメラが撮影した画像上に設置した画像座標との対応に基づいてカメラパラメータを求めるカメラキャリブレーション方法であって、
前記世界座標の座標値が既知の指標点と前記指標点に対応する前記画像座標における対応点の座標組からカメラパラメータを求め、
前記指標点の世界座標値と前記対応点の画像座標値との対応誤りを検出し、
検出された対応誤りを、前記指標点と前記対応点とを対応付けて映像表示装置に表示させるカメラキャリブレーション方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、実空間上に設置した世界座標とカメラが撮影した画像上に設置した画像座標との対応に基づいてカメラパラメータを求めるカメラキャリブレーション装置及びカメラキャリブレーション方法に関するものである。
【背景技術】
【０００２】
近年、監視分野では、カメラが撮影した監視画像内の不審箇所を画像処理などで自動検出する装置が登場している。更に、監視画像に設置した画像座標と、実空間上に設置した世界座標とを対応付けるカメラパラメータを求めることで、画像上の点から実空間上の位置を特定することが可能である。
【０００３】
このカメラパラメータを求める作業をカメラキャリブレーションと呼び、実空間上に設置した世界座標とカメラが撮影する画像上に設置した画像座標の対応から求めることが可能である。例えば、キャリブレーション用に設置した世界座標が既知の指標点をカメラで撮影し、撮影した画像上の対応点を求め、世界座標と画像座標が対応した同一平面状に存在しない６点以上の指標点からカメラパラメータを求める方法が基本的である。代表的な手法として非特許文献１がある。
【０００４】
図１０は、画像座標と世界座標の対応を説明するための図である。図１０によりカメラパラメータを求める方法を簡単に説明すると、画像座標上の点Ａ１０１（ｕ，ｖ）と世界座標上の点Ａ１０２（Ｘ＿ｗ，Ｙ＿ｗ，Ｚ＿ｗ）は、スケールｓを用いて（数１）の関係を満たす。
【数１】
2006067272.tif 000003
【０００５】
ここで、（数１）内の１２個のパラメータＣ＿１１〜Ｃ＿１４，Ｃ＿２１〜Ｃ＿２４，Ｃ＿３１〜Ｃ＿３４はカメラパラメータであり、以後は総称してカメラパラメータＣと呼ぶ。また、ｎ番目の指標点が画像座標（ｕ＿ｎ，ｖ＿ｎ）、世界座標（Ｘ＿ｎ，Ｙ＿ｎ，Ｚ＿ｎ）で表される場合、（数１）より（数２）を満たす。
【数２】
2006067272.tif 000004
【０００６】
さらに、１番目からｎ番目までの指標点に対し、（数２）を求め、行列化すると（数３）の行列式になる。
【数３】
2006067272.tif 000005
【０００７】
さらに、（数３）の２ｎ×１１で表す行列を行列Ａ、Ｃ＿１１〜Ｃ＿３３の１１行で表す行列を行列Ｃ、残りを行列Ｂとすれば、（数４）に従い行列を変形することで（数５）を導く事ができる。但し、Ａ-1は行列Ａの逆行列、ＡTは行列Ａの転置行列とする。
【数４】
2006067272.tif 000006
【数５】
2006067272.tif 000007
【０００８】
即ち、Ｃ＿３４＝１とし、２ｎ＞１１を満たすｎ＝６個以上の指標点の世界座標及び画像座標から行列Ａと行列Ｂが決まるので（数５）より行列Ｃが計算され、カメラパラメータＣを求めることができる。
【０００９】
カメラパラメータＣが求まると、画像座標と世界座標との変換が可能である。世界座標から画像座標に変換する場合は、（数１）の（Ｘ＿ｗ，Ｙ＿ｗ，Ｚ＿ｗ）に世界座標値を入力し、スケールｓを求めた後、画像座標（ｕ，ｖ）を求める。即ち、世界座標の３成分が決まると、画像座標が一意に決まる。
【００１０】
また、画像座標から世界座標に変換する場合は、画像座標は二次元、世界座標は三次元と次元数が足りないので、変換したい世界座標の一次元を固定して変換する。通常は変換対象の高さである世界座標のＺ＿ｗと画像座標からスケールｓを求め、ｓ，ｕ，ｖを用いてＸ＿ｗ，Ｙ＿ｗを求める。即ち、画像座標と世界座標の１成分が決まると、残りの世界座標の２成分が一意に決まる。
【００１１】
世界座標から画像座標の変換を利用し、簡単なキャリブレーション精度評価が可能である。例えば、ｎ番目の指標点が画像座標（ｕ＿ｎ，ｖ＿ｎ）、世界座標（Ｘ＿ｎ，Ｙ＿ｎ，Ｚ＿ｎ）、求めたカメラパラメータＣを利用し世界座標を画像座標に変換した値（ｕ’＿ｎ，ｖ’＿ｎ）で表わすと指標点α個の平均キャリブレーション誤差ｅ＿ａｖｅｒａｇｅは、（数６）になる。
【数６】
2006067272.tif 000008
【００１２】
広域監視等の広い空間において、実空間上の任意の点に原点を置いた一つの世界座標系で複数台のカメラをキャリブレーションする場合、指標点の世界座標を三角測量等で実測し、指標点の色や形状が特徴的な場合は画像処理により画像座標上の対応点を自動認識するのが一般的である。
【非特許文献１】Ｒ．Ｙ  Ｔｓａｉ，“Ａ  Ｖｅｒｓａｔｉｌｅ  Ｃａｍｅｒａ  Ｃａｌｉｂｒａｔｉｏｎ  Ｔｅｃｈｎｉｑｕｅ  ｆｏｒ  Ｈｉｇｈ−Ａｃｃｕｒａｃｙ  ３Ｄ  Ｍａｃｈｉｎｅ  Ｖｉｓｉｏｎ  Ｍｅｔｒｏｌｏｇｙ  Ｕｓｉｎｇ  Ｏｆｆ−ｔｈｅ−Ｓｈｅｌｆ  ＴＶ  Ｃａｍｅｒａｓ  ａｎｄ  Ｌｅｎｓｅｓ”，ＩＥＥＥ  Ｊ．Ｒｏｂｏｔｉｃｓ  ａｎｄ  Ａｕｔｏｍａｔｉｏｎ，ｖｏｌ  ＲＡ−３，ＮＯ．４，ｐｐ．３２３−３３１，Ａｕｇ．１９８７
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、上記従来の方法にあっては、屋外等でキャリブレーションを行う場合、背景や照明等の影響で画像認識が正しく動作せず、手動で世界座標と画像座標を対応付ける場合がある。手動で対応付ける場合は、複数の指標点が不規則に配置されるため選択した指標点の世界座標に間違った世界座標値を入力する世界座標入力ミスや、指標点が周辺の背景と区別できないため本来の画像座標とは異なった場所を指定する画像座標入力ミスなどの人為的入力ミスが発生する。
【００１４】
従来手法では、ユーザがキャリブレーション誤差数値を読み取ることで人為的入力ミスが発生した箇所を特定し、画像座標値を読み取ることで入力ミスが発生した指標点を画像中から確認し、正しい世界座標や画像座標を入力する作業を繰り返している。このため、人為的入力ミスにより生じるキャリブレーション誤りを修正する作業に大変な労力を伴った。
【００１５】
本発明は、上記従来の事情に鑑みてなされたものであって、キャリブレーション修正作業を簡易化することができるカメラキャリブレーション装置及びカメラキャリブレーション方法を提供することを目的としている。
【課題を解決するための手段】
【００１６】
本発明のカメラキャリブレーション装置は、実空間上に設置した世界座標とカメラが撮影した画像上に設置した画像座標との対応に基づいてカメラパラメータを求めるカメラキャリブレーション装置であって、前記世界座標の座標値が既知の指標点と前記指標点に対応する前記画像座標における対応点の座標組からカメラパラメータを求めるキャリブレーション手段と、前記指標点の世界座標値と前記対応点の画像座標値との対応誤りを検出する検出手段と、検出された対応誤りを、前記指標点と前記対応点とを対応付けて映像表示装置に表示させる表示制御手段と、を備える。
【００１７】
上記構成によれば、検出された対応誤りを、指標点と対応点とを対応付けて映像表示装置に表示させる表示制御手段を備えることにより、キャリブレーションの修正を行うべき指標点及び対応点を容易に特定できる為、キャリブレーション修正作業を簡易化できる。
【００１８】
また、本発明のカメラキャリブレーション装置は、前記表示制御手段が、検出された対応誤りを視覚的効果を施して表示させるものである。上記構成によれば、表示制御手段が、検出された対応誤りを視覚的効果を施して表示させることにより、キャリブレーションの修正を行うべき指標点及び対応点をより容易に特定できる為、キャリブレーション修正作業を一層簡易化できる。
【００１９】
また、本発明のカメラキャリブレーション装置は、前記表示制御手段が、検出された対応誤りを、キャリブレーション誤差の計算結果に応じた表示形態で表示させるものである。上記構成によれば、表示制御手段が、検出された対応誤りを、キャリブレーション誤差の計算結果に応じた表示形態で表示させることにより、キャリブレーション修正作業によってキャリブレーション誤差が減ったか否か等を把握することができる為、キャリブレーション修正作業を効率良く行うことができる。
【００２０】
また、本発明のカメラキャリブレーション装置は、前記表示制御手段が、対応誤りが検出された前記世界座標値の成分を強調して表示させるものである。上記構成によれば、表示制御手段が、対応誤りが検出された前記世界座標値の成分を強調して表示させることにより、修正すべき世界座標値の成分を容易に特定できる為、キャリブレーション修正作業を一層簡易化できる。
【００２１】
また、本発明のカメラキャリブレーション装置は、前記表示制御手段が、検出された対応誤りが表示される領域を拡大して表示させるものである。上記構成によれば、表示制御手段が、検出された対応誤りが表示される領域を拡大して表示させることにより、キャリブレーションの修正を行うべき指標点及び対応点をより容易に特定できる為、キャリブレーション修正作業を一層簡易化できる。
【００２２】
また、本発明のカメラキャリブレーション装置は、前記表示制御手段が、対応誤りが検出される毎に、前記対応誤りを逐次表示させるものである。上記構成によれば、表示制御手段が、対応誤りが検出される毎に、前記対応誤りを逐次表示させることにより、カメラから出力される画像の表示を見ながらリアルタイムでキャリブレーションの修正を行うことができる。
【００２３】
また、本発明のカメラキャリブレーション装置は、前記表示制御手段が、現状求めたカメラパラメータを使用して、指定された前記映像表示装置上の任意の点と入力された世界座標の一成分とから計算した残りの世界座標に基づいて、前記対応誤りを表示するものである。上記構成によれば、表示制御手段が、現状求めたカメラパラメータを使用して、指定された前記映像表示装置上の任意の点と入力された世界座標の一成分とから計算した残りの世界座標に基づいて、前記対応誤りを表示することにより、カメラパラメータの誤差を直感的に提示することができる為、カメラパラメータを求めたその場でキャリブレーション精度を確認することができる。
【００２４】
また、本発明のカメラキャリブレーション装置は、表示制御手段が、前記指標点を画像認識して求めた画像座標上の対応点に基づいて、前記対応誤りを表示するものである。上記構成によれば、表示制御手段が、前記指標点を画像認識して求めた画像座標上の対応点に基づいて、前記対応誤りを表示することにより、対応点の座標入力を手動で行う必要がなくなる為、人為的な入力ミスを低減することができる。
【００２５】
また、本発明のカメラキャリブレーション装置は、表示制御手段が、前記対応誤りを、キャリブレーション誤差の計算結果に応じた表示形態で表示させるものである。上記構成によれば、表示制御手段が、前記対応誤りを、キャリブレーション誤差の計算結果に応じた表示形態で表示させることにより、画像認識による指標点の入力が正しいか否かをユーザが容易に判断できる。
【００２６】
さらに、本発明のカメラキャリブレーション方法は、実空間上に設置した世界座標とカメラが撮影した画像上に設置した画像座標との対応に基づいてカメラパラメータを求めるカメラキャリブレーション方法であって、前記世界座標の座標値が既知の指標点と前記指標点に対応する前記画像座標における対応点の座標組からカメラパラメータを求め、前記指標点の世界座標値と前記対応点の画像座標値との対応誤りを検出し、検出された対応誤りを、前記指標点と前記対応点とを対応付けて映像表示装置に表示させるものである。
【発明の効果】
【００２７】
本発明によれば、検出された対応誤りを、指標点と対応点とを対応付けて映像表示装置に表示させることにより、キャリブレーションの修正を行うべき指標点及び対応点を容易に特定できる為、キャリブレーション修正作業を簡易化できる。
【発明を実施するための最良の形態】
【００２８】
以下、本発明の実施の形態を、図面を用いて説明する。なお、本発明はこれら実施の形態に何ら限定されるものではなく、その要旨を逸脱しない範囲において、種々なる態様で実施し得る。
【００２９】
本発明は、実空間上に設置した世界座標とカメラが撮影した画像上に設置した画像座標との対応に基づいてカメラパラメータを求めるカメラキャリブレーション装置及びカメラキャリブレーション方法に関するものであるが、本実施形態では、世界座標が既知の指標点を複数用意し、画像座標上の対応点を手動で求め、カメラパラメータを求める場合について説明する。
【００３０】
図１は、本発明の一実施形態におけるキャリブレーション装置を説明するための概略構成図である。図１において、カメラＡ１０１は撮影した画像をキャリブレーション装置Ａ１１１に出力するものであり、キャリブレーション装置Ａ１１１は、世界座標と画像座標との対応に基づいてカメラパラメータを求めるものであり、入力装置Ａ１２１はマウスやキーボード等によりキャリブレーション装置Ａ１１１へ情報を入力するものであり、モニタＡ１３１はキャリブレーション装置Ａ１１１から出力された画像を表示するものである。
【００３１】
キャリブレーション装置Ａ１１１は、映像情報とキャリブレーション結果を合成する表示制御部Ａ１１２と、世界座標の座標値が既知の指標点と前記指標点に対応する前記画像座標における対応点の座標組からカメラパラメータを求めるキャリブレーション部Ａ１１３と、キャリブレーション誤差を計算して指標点の世界座標値と対応点の画像座標値との対応誤りを検出し、修正処理を行うキャリブレーション修正部Ａ１１４とで構成される。
【００３２】
カメラＡ１０１は、レンズに映る映像を入力とし、映像データを表示制御部Ａ１１２へ出力する。表示制御部Ａ１１２は、カメラＡ１０１が出力する映像データとキャリブレーション修正部Ａ１１４が出力するキャリブレーション結果を入力とし、映像情報にキャリブレーション誤差結果を重畳した画像データをモニタＡ１３１に出力する。つまり、表示制御部Ａ１１２は、キャリブレーション修正部Ａ１１４で検出された対応誤りを、指標点と対応点とを対応付けてモニタＡ１３１に表示させる。
【００３３】
キャリブレーション部Ａ１１３は、入力装置Ａ１２１が出力するキーボードの数値入力とマウス操作を入力とし、指標点の管理番号と世界座標と画像座標を対応付けた指標点座標組を作成し、カメラパラメータと世界座標と画像座標をキャリブレーション修正部Ａ１１４に出力する。また、キャリブレーション修正部Ａ１１４が出力する指標点座標組を入力とし、カメラパラメータをキャリブレーション修正部Ａ１１４に出力する。
【００３４】
キャリブレーション修正部Ａ１１４は、キャリブレーション部Ａ１１３が出力するカメラパラメータと指標点座標組を入力とし、キャリブレーション結果を表示制御部Ａ１１２に出力する。また、キャリブレーション結果を計算する過程で、指標点座標組をキャリブレーション部Ａ１１３に出力する。入力装置Ａ１２１は、ユーザからの操作を入力とし、キーボードの数値入力やマウス操作をキャリブレーション部Ａ１１３に出力する。
【００３５】
図２は、キャリブレーションの手順を説明するためのフローチャートである。図２を用いて、キャリブレーションの方法を説明する。図２において、キャリブレーションが開始されると、ステップＳＡ２０１では、ユーザがカメラＡ１０１の撮影範囲内に指標点を設置し、指標点の世界座標を三角測量等で事前に測定する。
【００３６】
ステップＳＡ２０２では、ステップＳＡ２０１で設置した指標点が表示されるモニタＡ１３１の画面内からユーザが指標点を探索し、指標点の中心にマウスポインタを重ねクリック操作を行う事で指標点の画像座標を指定する。
【００３７】
ステップＳＡ２０３では、世界座標を入力するウインドウが自動的にモニタＡ１３１の画面上に表示されるので、ユーザが事前に測定した世界座標の座標値をキーボードにより入力する。
【００３８】
ステップＳＡ２０４では、キャリブレーション部Ａ１１３が、入力された世界座標及び画像座標から指標点座標組を作成する。次に、（指標点座標組の個数＜６）の条件を満たすか判定し、条件を満たす場合（Ｙｅｓ）はカメラパラメータを作成できないのでステップＳＡ２０２へ戻り、それ以外（Ｎｏ）はステップＳＡ２０５へ進む。
【００３９】
ステップＳＡ２０５では、キャリブレーション部Ａ１１３及びキャリブレーション修正部Ａ１１４がカメラパラメータ作成処理を行い、検出された指標点の世界座標値と対応点の画像座標値との対応誤りを、指標点と対応点とを対応付けて表示させる。カメラパラメータ作成処理については、図３のフローチャートで詳細に説明する。
【００４０】
ステップＳＡ２０６では、ステップＳＡ２０５の処理結果を判断し、処理結果にキャリブレーション誤りが有る場合（Ｙｅｓ）はステップＳＡ２０７へ進み、それ以外（Ｎｏ）はステップＳＡ２０８へ進む。ステップＳＡ２０７では、キャリブレーション誤りに対しユーザが誤り修正作業を行い、修正処理が終わるとステップＳＡ２０５へ戻る。
【００４１】
ステップＳＡ２０８では、キャリブレーション部Ａ１１３が、一定のキャリブレーション精度を保つために必要とする指標点座標組の個数ＡがステップＳＡ２０５の出力であるカメラパラメータ作成に利用した指標点座標組の個数Ｂより多いか判断し、Ｂ＜Ａの場合（Ｙｅｓ）はステップＳＡ２０２へ戻り、Ａ＜＝Ｂでカメラパラメータ算出に必要な指標点座標組が得られた場合（Ｎｏ）はステップＳＡ２０９へ進む。ステップＳＡ２０９では、カメラパラメータを出力し、キャリブレーションを終了する。
【００４２】
図３は、図２のステップＳＡ２０５におけるカメラパラメータ作成処理の流れを示すフローチャートである。カメラパラメータ作成処理が開始されると、ステップＳＡ３０１では、間違った指標点座標組の個数を表すループ変数Ｎを０とし、平均キャリブレーション誤差の最小値ｅ＿ｍｉｎに考えられる最大値以上を代入する。
【００４３】
ステップＳＡ３０２では、キャリブレーション修正部Ａ１１４が、カメラパラメータ作成処理時に与えられた指標点座標組の個数をＭ個として、カメラパラメータ作成に利用する指標点座標組の個数（Ｍ−Ｎ）個が６個より小さいか判定し、６個より少ない場合（Ｙｅｓ）はステップＳＡ３１１へ進み、６個以上の場合（Ｎｏ）はステップＳＡ３０３へ進む。
【００４４】
ステップＳＡ３０３では、Ｍ個の指標点座標組から（Ｍ−Ｎ）個を選択する。次に、ステップＳＡ３０４では、キャリブレーション修正部Ａ１１４がステップＳＡ３０３で選んだ指標点座標組の集合をキャリブレーション部Ａ１１３に出力し、カメラパラメータをキャリブレーション部Ａ１１３から受け取る。
【００４５】
ステップＳＡ３０５では、キャリブレーション修正部Ａ１１４が平均キャリブレーション誤差ｅ＿ａｖｅｒａｇｅを計算する。次に、ステップＳＡ３０６では、ｅ＿ｍｉｎとｅ＿ａｖｅｒａｇｅを比較し、ｅ＿ａｖｅｒａｇｅが最小値ならば更新を行い、現在の（Ｍ−Ｎ）個の指標点座標組とカメラパラメータを記憶する。
【００４６】
ステップＳＡ３０７では、ステップＳＡ３０３で実施したＭ個の指標点座標組から（Ｍ−Ｎ）個を選択する他の組合せが存在するか判定し、他の組合せが存在する場合（Ｙｅｓ）はステップＳＡ３０３へ戻り、すべての組合せを実施した場合（Ｎｏ）はステップＳＡ３０８へ進む。
【００４７】
ステップＳＡ３０８では、ｅ＿ｍｉｎと平均キャリブレーション誤差の閾値Ｔｈを比較し、ｅ＿ｍｉｎ＞Ｔｈを満たす（Ｙｅｓ）ならステップＳＡ３０９へ進み、それ以外（Ｎｏ）はステップＳＡ３１０へ進む。キャリブレーション誤差の閾値Ｔｈはユーザが自由に変更可能で、カメラパラメータ作成処理の結果に応じて変更してもよい。
【００４８】
ステップＳＡ３０９では、平均キャリブレーション誤差が閾値より大きいため、間違った指標点座標組が存在すると仮定し、間違った指標点座標組の個数を表すループ変数Ｎを一つ増やし、ステップＳＡ３０２へ戻る。
【００４９】
ステップＳＡ３１０では、Ｎ＝０か判定し、Ｎ＝０の場合（Ｙｅｓ）はキャリブレーション誤りが無いのでステップＳＡ３１２へ進み、それ以外（Ｎｏ）は誤りが存在するのでステップＳＡ３１１へ進む。
【００５０】
ステップＳＡ３１１では、ステップＳＡ３０６のｅ＿ｍｉｎを更新した際に記憶した指標点座標組の集合以外の、残りの指標点座標組の集合を、キャリブレーション誤りとして出力する。これは、ステップＳＡ３０６のｅ＿ｍｉｎを更新した際に記憶した指標点座標組の集合が、平均キャリブレーション誤差がＴｈ以下という一定の精度を保つため、それ以外の指標点座標組が世界座標入力ミス等のキャリブレーション誤りを含むという考えに基づくアルゴリズムである。
【００５１】
ステップＳＡ３１２では、ステップＳＡ３０６のｅ＿ｍｉｎを更新した際に記憶したカメラパラメータ及び（Ｍ−Ｎ）個の指標点座標組を出力し、カメラパラメータ作成処理を終了する。
【００５２】
図４から図９は、修正処理時の画面を表す図である。図４から図９を用いて、修正処理を説明する。図４は、修正処理時の画面を示し、Ａ４０１はカメラＡ１０１の映像画像、Ａ４０２はカメラパラメータ作成処理結果ウインドウ、Ａ４０３は指標点管理番号、Ａ４０４は画面上の指標点の場所を表す指標アイコン、Ａ４０５はキャリブレーション誤りが発生したと推測される指標点座標組を表す誤り表示枠、Ａ４０６は修正ウインドウ、Ａ４０７はマウスポインタである。
【００５３】
図５は、カメラパラメータ作成処理結果ウインドウＡ４０２を表す図であり、カメラパラメータ作成結果表Ａ５０１が示され、誤り表示枠Ａ５０２はキャリブレーション誤りが発生したと推測される指標点座標組を表わすものであり、選択表示枠Ａ５０３はマウスポインタが指し示す指標点座標組を表わすものである。
【００５４】
図６は、修正ウインドウＡ４０６を表す図であり、世界座標修正フォームＡ６０１ａ，Ａ６０１ｂ，Ａ６０１ｃ、画像座標修正フォームＡ６０２ａ，Ａ６０２ｂ、削除ボタンＡ６０３が示されている。
【００５５】
キャリブレーションが開始されると、モニタＡ１３１の画面上にはカメラＡ１０１が撮影する映像画面Ａ４０１（図４参照）が表示される。その後、指標点座標組が入力されると、指標点管理番号Ａ４０３及び指標点アイコンＡ４０４が画面上の対応する位置に表示される。ユーザは、指標点管理番号Ａ４０３及び指標点アイコンＡ４０４を見る事で、入力した指標点座標組の画面上の位置（画像座標）を容易に確認できる。
【００５６】
指標点座標組を数個入力しカメラパラメータ作成処理ＳＡ２０５が完了すると、カメラパラメータ作成結果ウインドウＡ４０２（図５参照）が表示される。カメラパラメータ作成結果ウインドウＡ４０２は、指標点管理番号、画像座標、世界座標とカメラパラメータにより変換した後の画像座標、画像座標と変換後の画像座標との誤差であるキャリブレーション誤差、世界座標、備考の各要素で構成されるカメラパラメータ作成結果表Ａ５０１を表示し、各指標点座標組の中身、キャリブレーション誤差を確認できる。この時、画面上に表示される指標点アイコンと、カメラパラメータ処理結果ウインドウＡ４０２内に表示される指標点アイコンの世界座標や画像座標及びキャリブレーション誤差等の対応付けが視覚的効果を施して行われる。
【００５７】
なお、カメラ作成結果ウインドウＡ４０２内に表示するカメラパラメータ作成結果表Ａ５０１は、すべての指標点座標組のデータを表示する必要は特に無く、例えば修正すべき指標点座標組を明確にするため、キャリブレーション誤り（対応誤り）が存在する指標点座標組（指標点管理番号「１」に該当する列）とマウスポインタＡ４０７が指し示す指標点アイコンの指標点座標組の情報のみを表示してもよく、これらに限定されるものでない。
【００５８】
ここで、他の情報を表示する理由は、修正時に他の指標点のデータを眺めながら修正する場合を想定したためである。例えば、画面上に指標点が等間隔で並び、それぞれの指標点の世界座標の高さが一定であるにもかかわらず、実際に入力した世界座標の高さが違う場合、他の指標点座標組の世界座標を参照することで容易に正確な値を入力することができる。
【００５９】
キャリブレーション誤りが存在する場合は、誤った指標点の指標点アイコン（指標点管理番号１）を中心に誤り表示枠Ａ４０５が、また誤った指標点に対応するカメラパラメータ作成結果ウインドウＡ４０２の列（指標点管理番号１の列）に誤り表示枠Ａ５０２が表示される。ユーザは、キャリブレーション誤り表示枠Ａ４０５を見ることで、画面上のどの指標点座標組が間違っているかを容易に確認できる。このように、対応誤りを、誤り表示枠Ａ４０５及びＡ５０２を用いて指標点と対応点とを対応付けて表示することにより、キャリブレーションの修正を行うべき指標点及び対応点を容易に特定できる為、キャリブレーション修正作業を簡易化できる。
【００６０】
また、誤り表示枠Ａ４０５及び誤り表示枠Ａ５０２は、枠の種類、色、太さ、形状が統一されており、画面上に表示される指標点アイコンと、カメラパラメータ処理結果ウインドウＡ４０２内に表示される指標点アイコンの世界座標や画像座標及びキャリブレーション誤差等の対応付けが明確になる為、キャリブレーションの修正を行うべき指標点及び対応点をより容易に特定でき、キャリブレーション修正作業を一層簡易化できる。
【００６１】
また、キャリブレーション誤り表示枠Ａ４０５、Ａ５０２は、キャリブレーション誤差に応じて枠の種類、色、太さ、形状等が決まる。例えば、図５の誤り表示枠Ａ５０２が指し示す指標点座標組の世界座標や画像座標を修正し、キャリブレーション誤差が２０から１０に減った場合、図４に示す画面上の誤り表示枠Ａ４０５は、誤差が半分に減ったので、円の半径も半分になり、図９に示すような誤り表示枠Ａ９０１になる。また、正しく修正され、キャリブレーション誤差が許容範囲内に収まると、誤り表示枠は消える。
【００６２】
これにより、画面上の誤り表示枠である円の半径から、キャリブレーション誤差の相対的な大きさが分かり修正作業の優先順位を決める材料になるだけでなく、キャリブレーション誤差の変化が誤り表示枠の直径の変化として反映され視覚的に表現されるため、数値の変化を見るよりも直感的に分かり易い。
【００６３】
誤り表示枠を手がかりに修正処理を行う方法は、二種類存在する。カメラパラメータ作成結果ウインドウＡ４０２内の世界座標や画像座標をマウスポインタＡ４０７で指定しキーボード等で数値入力を行い直接修正する場合と、マウスアイコンＡ４０７を画面上の修正する指標点アイコンに近づけ、ダブルクリック等の動作により選択し、修正ウインドウＡ４０６を表示して修正する場合とがある。
【００６４】
修正ウインドウＡ４０６を利用し画像座標を修正する場合は、指標点アイコンＡ４０４をマウスポインタＡ４０７でドラックし、画面上の正しい場所へ移動させるか、修正ウインドウＡ４０６内の画像座標修正フォームＡ６０２に修正値を入力する。世界座標を修正する場合は、修正ウインドウＡ４０６内の世界座標修正フォームＡ６０１に修正値を入力する。
【００６５】
本実施形態では、修正作業の効率化を行うために、修正すべき指標点座標組内のどの世界座標や画像座標成分が間違っているのかを提示する。画像座標が間違っている場合は、キャリブレーション時に設置した指標点の位置に指標点アイコンが存在するか確認することでユーザが判断する。
【００６６】
世界座標が間違っている場合は、図５に示す選択表示枠Ａ５０３や図６に示すＡ６０３の様に、間違いの箇所の色を反転するなどして、修正箇所を提示する。
【００６７】
誤った世界座標の成分を推定する方法として例えば、図７に示す世界座標において、カメラパラメータＣ、指標点座標組の画像座標（ｕ，ｖ）、世界座標Ａ７０１（Ｘ，Ｙ，Ｚ）とした場合、カメラパラメータＣと画像座標（ｕ，ｖ）とスケールｓを媒介変数として用いる事で世界座標上に直線Ａ７０２が描画できる。この直線は、画像座標（ｕ，ｖ）がカメラパラメータＣにより世界座標のどの位置へ変換されるかを表す直線である。
【００６８】
指標点座標組の世界座標Ａ７０１が正しい場合、直線Ａ７０２上に存在するが、世界座標Ａ７０１が間違っている場合は、直線から離れる。この原理を応用し、世界座標Ａ７０１と最も近い直線Ａ７０２上の点Ａ７０３（Ｘｐ，Ｙｐ，Ｚｐ）を求め、点Ａ７０３と世界座標Ａ７０１の各成分の差｜Ｘ−Ｘｐ｜，｜Ｙ−Ｙｐ｜，｜Ｚ−Ｚｐ｜が閾値以上であるかを判定し、閾値以上である成分の世界座標が間違っていると推定することが可能である。
【００６９】
また、推定結果を利用し、間違っていると推定した世界座標の成分に、その成分に対応する点Ａ７０３（Ｘｐ，Ｙｐ，Ｚｐ）の成分（例えば、世界座標のＸ成分が間違っていると推定された場合は、Ｘｐ）を代入し自動修正することも可能である。
【００７０】
さらに、実測した指標点の世界座標全体を表す世界座標一覧表を記憶し、指標点座標組内の世界座標や画像座標は正しいが、指標点座標組を入力する際に世界座標と画像座標の対応を間違えたと仮定して修正時に候補となる世界座標の値を提示してもよい。
【００７１】
例えば、修正する指標点座標組の画像座標（ｕ，ｖ）、世界座標一覧表内のＮ番目の世界座標（Ｘ＿Ｎ，Ｙ＿Ｎ，Ｚ＿Ｎ）、世界座標（Ｘ＿Ｎ，Ｙ＿Ｎ，Ｚ＿Ｎ）とカメラパラメータから変換した画像座標（ｕ＿Ｎ，ｖ＿Ｎ）で表わすと、画像座標（ｕ，ｖ）と画像座標（ｕ＿Ｎ，ｖ＿Ｎ）の距離の差が最も小さい時の世界座標（Ｘ＿Ｎ，Ｙ＿Ｎ，Ｚ＿Ｎ）が候補となる世界座標の値である。
【００７２】
また、マウス等で画像座標を入力、修正する際に、マウスポインタ周辺の映像画面を一時的に拡大表示してもよく、手動による画像座標の入力、修正時の誤りを減らす効果がある。
【００７３】
また、マウス操作が不慣れなため、手動による画像座標入力が少しずれていると仮定し、カメラパラメータを作成した際に用いた指標点座標組の画像座標に一定の幅を持たせカメラパラメータ計算を行い、最も平均キャリブレーション誤差が小さくなる時のカメラパラメータを自動的に求めてもよい。
【００７４】
また、事前に世界座標の一成分を与え、カメラパラメータを求めた画面上の任意の点をマウスのクリック操作により指定することで、現状求めたカメラパラメータから残り二成分の世界座標を計算し、計算結果をユーザに提示し、キャリブレーションの精度を確認しても良い。これにより、カメラパラメータの誤差を直感的に提示することができる。
【００７５】
例えば、図８で示すように、高さ２ｍの道路標識Ａ８０１〜Ａ８０３が世界座標のＹ軸方向Ａ８０４に６ｍ間隔で並んでいる場合、世界座標のＺ成分を２ｍと指定した後、マウスポインタＡ８０５を道路指標の各頂点に合わせ順次クリックすると、世界座標表示ウインドウＡ８０６内のＹ軸成分Ａ８０７のみが６ｍずつ変化し、Ｘ軸成分Ａ８０８，Ｚ軸成分Ａ８０９は変化しない場合は、正しいキャリブレーションが行えたと判断できる。
【００７６】
これにより、キャリブレーションを行ったその場で、簡単にかつ直感的にキャリブレーション精度を確認することが可能となる。なお、世界座標の一成分は、マウスをクリックした後修正してもよく、これらに限定されるものではない。
【００７７】
また、指標点と対応点との対応誤りが検出される毎に、対応誤りを逐次表示させても良い。これにより、カメラから出力される画像の表示を見ながらリアルタイムでキャリブレーションの修正を行うことができる。
【００７８】
また、本実施例では、指標点の画像座標や世界座標の入力を手動で行ったが、指標点の色、形状、周辺背景等からテンプレートマッチング等の画像認識技術により画像座標上の対応点を自動的に求めてもよい。この構成によれば、対応点の座標入力を手動で行う必要がなくなる為、人為的な入力ミスを低減することができる。このとき、表示する方法や表示するべき指標点の表示形態をカメラキャリブレーション誤差の値に応じて変えるとよい。例えば、明らかに正しいものは表示しない、誤差が大きい場合は検出結果や使用したテンプレート等を表示する、通常は検出結果のみ表示する等が考えられる。キャリブレーション誤差の値に応じて指標点の表示形態を変えることにより、画像認識による指標点の入力が正しいか否かをユーザが容易に判断できる。
【００７９】
その場合、指標点座標組の画像座標の対応誤りが発生するため、キャリブレーション修正時に、画像認識により指標点を認識した結果や、閾値等の画像認識の条件、用いた指標点のテンプレート等を画面上に提示し、画像処理による指標点の自動認識が正しいのかをユーザが容易に判断できるようにしてもよく、これらに限定されるものではない。これにより、指標点座標組の画像座標入力が自動化できる。
【００８０】
また、同様に指標点の色、形状、周辺背景等に世界座標を対応付けておくことで更に世界座標入力も自動化でき、カメラで指標点を写すだけでキャリブレーションが可能となる。
【００８１】
また、キャリブレーション誤差を判断する方法として、入力した指標点座標組の世界座標を求めたカメラパラメータにより画像座標に変換して画面上に指標点アイコンとは別の手段で表示してもよい。この時、キャリブレーション誤差が少ない場合は、画面上の指標点アイコンの位置（＝入力した指標点の画像座標）に近づき、誤差が多い場合は離れる。
【００８２】
本実施形態のキャリブレーション装置は、商店街や駅構内、街頭などに設置した監視カメラ等のキャリブレーションを実行する場合に有用である。また、空港や港湾や河川の監視といった広域監視用カメラのキャリブレーションにも応用できる。
【産業上の利用可能性】
【００８３】
本発明は、検出された対応誤りを、指標点と対応点とを対応付けて映像表示装置に表示させる表示制御手段を備えることにより、キャリブレーションの修正を行うべき指標点及び対応点を容易に特定できる為、キャリブレーション修正作業を簡易化できる効果を有し、実空間上に設置した世界座標とカメラが撮影した画像上に設置した画像座標との対応に基づいてカメラパラメータを求めるカメラキャリブレーション装置及びカメラキャリブレーション方法等に有用である。
【図面の簡単な説明】
【００８４】
【図１】本発明の一実施形態におけるキャリブレーション装置を説明するための概略構成図
【図２】本発明の一実施形態におけるキャリブレーションの手順を説明するためのフローチャート
【図３】本発明の一実施形態におけるカメラパラメータ作成処理手順を説明するためのフローチャート
【図４】本発明の一実施形態におけるキャリブレーション修正作業時の表示画面例を示す図
【図５】本発明の一実施形態におけるキャリブレーション修正作業時の表示画面例を示す図
【図６】本発明の一実施形態におけるキャリブレーション修正作業時の表示画面例を示す図
【図７】本発明の一実施形態におけるキャリブレーション修正作業時の表示画面例を示す図
【図８】本発明の一実施形態におけるキャリブレーション修正作業時の表示画面例を示す図
【図９】本発明の一実施形態におけるキャリブレーション修正作業時の表示画面例を示す図
【図１０】キャリブレーションにおける画像座標と世界座標の対応関係を示す図
【符号の説明】
【００８５】
Ａ１０１  カメラ
Ａ１１１  キャリブレーション装置
Ａ１１２  表示制御部
Ａ１１３  キャリブレーション部
Ａ１１４  キャリブレーション修正部
Ａ１２１  モニタ
Ａ１３１  入力装置
Ａ４０２  カメラパラメータ作成結果ウインドウ
Ａ４０３  指標点管理番号
Ａ４０４  指標アイコン
Ａ４０５  キャリブレーション誤り表示枠
Ａ４０６  修正ウインドウ
Ａ５０１  カメラパラメータ作成結果表
Ａ５０２  キャリブレーション誤り表示枠
【図１】
2006067272.tif 000009
【図２】
2006067272.tif 000010
【図３】
2006067272.tif 000011
【図４】
2006067272.tif 000012
【図５】
2006067272.tif 000013
【図６】
2006067272.tif 000014
【図７】
2006067272.tif 000015
【図８】
2006067272.tif 000016
【図９】
2006067272.tif 000017
【図１０】
2006067272.tif 000018