(57)【特許請求の範囲】
【請求項１】
カメラにより撮影された動画からホモグラフィ行列を求めるキャリブレーション装置であって、
前記動画内の複数のフレームの各フレームについて複数の特徴点を検出する検出手段と、
前記検出手段が検出した各フレームの複数の特徴点のうち、前記複数のフレームの総てにおいて検出された第１特徴点を複数判定する判定手段と、
前記複数のフレームそれぞれにおける前記第１特徴点の第１座標に基づき軌跡行列を生成する生成手段と、
前記軌跡行列を行列分解し、前記軌跡行列よりランクの低い低ランク行列を生成し、前記低ランク行列に基づき前記複数のフレームそれぞれにおける前記第１特徴点の前記第１座標を第２座標に更新し、前記複数のフレームの第１フレームの第２座標と、前記複数のフレームの第２フレームであって、前記第１フレームより時間的に後の前記第２フレームの第２座標とに基づき、前記第２フレームのホモグラフィ行列を算出する算出手段と、
を備えていることを特徴とするキャリブレーション装置。
【請求項２】
前記算出手段は、前記第１フレームのホモグラフィ行列と、前記第１フレームの第２座標と、前記第２フレームの第２座標とに基づき、前記第２フレームのホモグラフィ行列を算出することを特徴とする請求項１に記載のキャリブレーション装置。
【請求項３】
前記第２フレームは、前記第１フレームの次のフレームであることを特徴とする請求項１又は２に記載のキャリブレーション装置。
【請求項４】
前記複数のフレームは、時間的に連続するフレームであることを特徴とする請求項１から３のいずれか１項に記載のキャリブレーション装置。
【請求項５】
前記算出手段は、前記軌跡行列から前記低ランク行列を減じた行列のフロベニウスノルムが第１の値以下との条件の下、前記行列分解を行うことを特徴とする請求項１から４のいずれか１項に記載のキャリブレーション装置。
【請求項６】
前記算出手段は、前記低ランク行列の核ノルムが最小となる様に前記行列分解を行うことを特徴とする請求項５に記載のキャリブレーション装置。
【請求項７】
前記算出手段は、前記行列分解により前記低ランク行列とスパース行列を生成し、前記軌跡行列から前記低ランク行列及び前記スパース行列を減じた行列のフロベニウスノルムが第１の値以下との条件の下、前記行列分解を行うことを特徴とする請求項１から４のいずれか１項に記載のキャリブレーション装置。
【請求項８】
前記算出手段は、前記スパース行列のＬ１ノルムに第２の値を乗じた値と、前記低ランク行列の核ノルムとの和が最小となる様に前記行列分解を行うことを特徴とする請求項７に記載のキャリブレーション装置。
【請求項９】
前記算出手段は、基準位置の実空間座標を保持しており、算出した前記第２フレームのホモグラフィ行列を使用して前記基準位置の実空間座標を前記第２フレーム内の画素位置に変換し、前記変換した画素位置と、前記第２フレーム内の前記基準位置に対応する画素位置との距離が閾値以下であるか否かを判定することを特徴とする請求項１から８のいずれか１項に記載のキャリブレーション装置。
【請求項１０】
カメラにより撮影された動画からホモグラフィ行列を求めるキャリブレーション装置におけるキャリブレーション方法であって、
前記動画内の複数のフレームの各フレームについて複数の特徴点を検出する検出ステップと、
前記検出ステップで検出した各フレームの複数の特徴点のうち、前記複数のフレームの総てにおいて検出された第１特徴点を複数判定する判定ステップと、
前記複数のフレームそれぞれにおける前記第１特徴点の第１座標に基づき軌跡行列を生成する生成ステップと、
前記軌跡行列を行列分解し、前記軌跡行列よりランクの低い低ランク行列を生成し、前記低ランク行列に基づき前記複数のフレームそれぞれにおける前記第１特徴点の第１座標を第２座標に更新し、前記複数のフレームの第１フレームの第２座標と、前記複数のフレームの第２フレームであって、前記第１フレームより時間的に後の第２フレームの第２座標とに基づき、前記第２フレームのホモグラフィ行列を算出する算出ステップと、
を含むことを特徴とするキャリブレーション方法。
【請求項１１】
請求項１から９のいずれか１項に記載のキャリブレーション装置としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラのキャリブレーション技術に関する。
【背景技術】
【０００２】
カメラキャリブレーション（以下、単にキャリブレーションと呼ぶ）は、３Ｄコンピュータビジョンにおいて非常に重要な技術であり、現実シーンのワールド座標系（以下、実座標系と呼ぶ）とカメラ画像のピクセル座標系（以下、カメラ座標系と呼ぶ。）との関係は、カメラに固有の内部パラメータ及び外部パラメータ（あるいはホモグラフィ行列）に基づいて求められる。例えば、スポーツ映像における自由視点でのナビゲーションでは、実際のフィールド上での各選手の位置が重要であり、カメラ画像における各選手の座標をホモグラフィ行列で射影変換することで求められる。したがって、正確なキャリブレーションを自動で行える技術が、自由視点ナビゲーションやビデオ分析のリアルタイムアプリケーションにおいて必要とされる。
【０００３】
ここで、カメラを固定し、撮影方向を変化させることなく映像を撮影する場合には、予め求めたホモグラフィ行列により、実座標系とカメラ座標系との変換を行うことができる。しかしながら、カメラの撮影方向を変化させる場合、フレーム毎のホモグラフィ行列を求める必要がある。ここで、非特許文献１は、撮影開始時の、つまり、撮影する動画の最初のフレームに対するホモグラフィ行列については予め求めておき、その後のフレームに対するホモグラフィ行列については、対象フレームとその直前のフレーム（以下、単に直前フレームと呼ぶ。）における特徴点の対応関係に基づき算出する構成を開示している。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Ｈｉｒｏｓｈｉ  Ｓａｎｋｏｈ，ｅｔ  ａｌ．，"Ｄｙｎａｍｉｃ  Ｃａｍｅｒａ  Ｃａｌｉｂｒａｔｉｏｎ  Ｍｅｔｈｏｄ  ｆｏｒ  Ｆｒｅｅ−ｖｉｅｗｐｏｉｎｔ  Ｅｘｐｅｒｉｅｎｃｅ  ｉｎ  Ｓｐｏｒｔ  Ｖｉｄｅｏｓ"，Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  ２０ｔｈ  ＡＣＭ  ｉｎｔｅｒｎａｔｉｏｎａｌ  ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｍｕｌｔｉｍｅｄｉａ，２０１２年
【発明の概要】
【発明が解決しようとする課題】
【０００５】
非特許文献１の構成は、まず、対象フレームの特徴点と直前フレームの特徴点との対応関係に基づき、直前フレームに対する対象フレームのホモグラフィ行列Ｈｐｃを算出し、このホモグラフィ行列Ｈｐｃと直前フレームのホモグラフィ行列Ｈｐとを乗ずることで、対象フレームのホモグラフィ行列Ｈｃを算出するものである。しかしながら、特徴点の多くは、フィールドに対応する画素上ではなく、フィールドの選手に対応する画素、つまり動物体に対応する画素となる。ホモグラフィ行列Ｈｃを精度良く求めるには、ホモグラフィ行列Ｈｐｃを精度良く求める必要がある。ここで、ホモグラフィ行列Ｈｐｃを精度良く求めるには、動物体自体の移動に起因する、フレーム間における特徴点のカメラ座標系の変化・動きを抑え、カメラの撮影方向の変化に起因するフレーム間における特徴点の変化・動きを使用する必要がある。非特許文献１に記載の構成は、動物体の移動による特徴点の動きを考慮することなくホモグラフィ行列Ｈｐｃを算出しているため、ホモグラフィ行列の誤差が以後のフレーム伝搬し、その誤差が増大してゆく。
【０００６】
本発明は、カメラで撮影した動画からホモグラフィ行列を精度良く算出するキャリブレーション装置、方法及びプログラムを提供するものである。
【課題を解決するための手段】
【０００７】
本発明の一側面によると、カメラにより撮影された動画からホモグラフィ行列を求めるキャリブレーション装置であって、前記動画内の複数のフレームの各フレームについて複数の特徴点を検出する検出手段と、前記検出手段が検出した各フレームの複数の特徴点のうち、前記複数のフレームの総てにおいて検出された第１特徴点を複数判定する判定手段と、前記複数のフレームそれぞれにおける前記第１特徴点の第１座標に基づき軌跡行列を生成する生成手段と、前記軌跡行列を行列分解し、前記軌跡行列よりランクの低い低ランク行列を生成し、前記低ランク行列に基づき前記複数のフレームそれぞれにおける前記第１特徴点の前記第１座標を第２座標に更新し、前記複数のフレームの第１フレームの第２座標と、前記複数のフレームの第２フレームであって、前記第１フレームより時間的に後の前記第２フレームの第２座標とに基づき、前記第２フレームのホモグラフィ行列を算出する算出手段と、を備えていることを特徴とする。
【発明の効果】
【０００８】
本発明によると、カメラで撮影した動画からホモグラフィ行列を精度良く算出することができる。
【図面の簡単な説明】
【０００９】
【図１】一実施形態によるキャリブレーション方法のフローチャート。
【図２】一実施形態による処理単位を示す図。
【図３】一実施形態による軌跡行列を示す図。
【図４】本発明の原理の説明図。
【図５】一実施形態によるキャリブレーション装置の構成図。
【発明を実施するための形態】
【００１０】
以下、本発明の例示的な実施形態について図面を参照して説明する。なお、以下の実施形態において、カメラで撮影した動画は、スポーツの試合であるものとするが、本発明は、カメラの撮影方向を変化させて取得する、動物体が含まれる任意の動画に対するホモグラフィ行列の算出に適用できる。また、以下の各図においては、実施形態の説明に必要ではない構成要素については図から省略する。
【００１１】
＜第一実施形態＞
本実施形態では、カメラで撮影した動画内の時間的に連続するＫ個のフレームを単位として処理を行う。具体的には、図２に示す様に、１番目のフレームからＫ番目のフレーム（以後、ｐ番目のフレームをフレーム＃ｐと記す。）までの計Ｋ個のフレームを１つの処理単位（第１処理単位）とし、フレーム＃Ｋ〜フレーム＃２Ｋ−１までのＫ個のフレームを１つの処理単位（第２処理単位）とする。フレーム＃２Ｋ−１から開始する第３処理単位以降についても同様である。この様に、本実施形態では、ある処理単位の最後のフレームと、当該処理単位の時間的に次の処理単位の最初のフレームを重複させる。
【００１２】
キャリブレーション装置は、第１処理単位に含まれるフレーム＃１〜フレーム＃Ｋそれぞれの特徴点の対応関係に基づき第１処理単位に対する軌跡行列を求める。そして、第１処理単位に対する軌跡行列に基づき、フレーム＃２〜フレーム＃Ｋのホモグラフィ行列を求める。なお、フレーム＃１のホモグラフィ行列については予め求めておく。その後、キャリブレーション装置は、フレーム＃Ｋ〜フレーム＃２Ｋ−１それぞれの特徴点の対応関係に基づき第２処理単位に対する軌跡行列を求める。そして、第２処理単位に対する軌跡行列に基づき、フレーム＃Ｋ＋１〜フレーム＃２Ｋ−１のホモグラフィ行列を求める。第３処理単位以降についても同様である。
【００１３】
図１は、本実施形態によるキャリブレーション装置が実行するキャリブレーション方法のフローチャートである。なお、図１の処理は、各処理単位それぞれに対して行うが、以下では、図２の第１処理単位に対する処理として説明を行う。Ｓ１０において、キャリブレーション装置は、フレーム＃１〜フレーム＃Ｋそれぞれの特徴点を求め、Ｓ１１で特徴点の各フレームでの対応関係を求める。なお、特徴点の抽出には任意のアルゴリズムを使用できる。また、特徴点の対応関係は、カメラ座標系の距離により判定することができる。これは、フレーム間の時間差は短いため、カメラの撮影方向の変化や選手の移動による、特徴点のカメラ座標の変化は小さいからである。ここで、フレーム＃１〜フレーム＃Ｋの全フレームに渡り対応関係を判定できた特徴点がＭ個であったものとする。キャリブレーション装置は、Ｓ１２で、Ｍ個の特徴点からＮ個の特徴点を選択して、Ｎ個の特徴点についての軌跡行列Ｂを生成する。なお、Ｎは後述する様に４以上とする。通常、１つのフレームからは多数の特徴点が検出されるためＭは通常４以上あり、よって、検出したＭ個の特徴点から４つの特徴点を選択である。なお、Ｍ個の特徴点からのＮ個の特徴点の選択方は任意である。さらに、Ｍ個の特徴点の総てを使用して軌跡行列Ｂを求めても良い。軌跡行列Ｂは、図３に示す様に、２Ｎ行Ｋ列であり、各列は、処理単位内の１つのフレームに対応する。具体的には、第１列は処理単位内の最初のフレームであるフレーム＃１に対応し、第２列は処理単位内の２番目のフレームであるフレーム＃２に対応し、第Ｋ列は処理対象内の最後のフレームであるフレーム＃Ｋに対応する。また、第（２ｑ−１）行（ｑは１からＮ）は、ｑ番目の特徴点のｘ座標（カメラ座標系）であり、第（２ｑ）行は、ｑ番目の特徴点のｙ座標（カメラ座標系）である。つまり、図３において、（ｘ１１，ｙ１１）は、フレーム＃１のある特徴点のカメラ座標であり、（ｘ２１，ｙ２１）は、フレーム＃１の座標（ｘ１１，ｙ１１）の特徴点に対応する、フレーム＃２の特徴点の座標である。なお、行と列は逆であっても良い。
【００１４】
キャリブレーション装置は、Ｓ１３において、軌跡行列Ｂの行列分解を行って、低ランク行列Ｃとスパース行列Ｓを生成する。なお、低ランク行列Ｃのランクは、軌跡行列Ｂのランクより低いものとする。例えば、キャリブレーション装置は、行列（Ｂ−Ｃ）のフロベニウスノルムが所定値ε以下であるとの条件の下、低ランク行列Ｃの核ノルムを最小化する様に行列分解を行うことができる。例えば、軌跡行列Ｂから、以下の式を満たす２つの直交行列Ｕ及びＶと、１つの特異値行列Σを求める。
Ｂ＝ＵΣＶＴ
【００１５】
特異値行列Σは対角行列であり非零の要素の数が軌跡行列Ｂのランクに対応する。したがって、キャリブレーション装置は、この非零の要素の大きいものから順に、少なくとも１つの要素を零にする様に特異値行列ΣをΣ´に更新する。そして、ＵΣ´ＶＴにより低ランク行列Ｃを求めることができる。例えば、特異値行列Σの最も値の小さい要素以外の要素を零とすることでランク１の低ランク行列Ｃを得ることができる。しかしながら、このようにして得た低ランク行列Ｃについて、行列（Ｂ−Ｃ）のフロベニウスノルムが所定値εより大きいと、このランク１の低ランク行列Ｃは上記条件を満たさない。この場合、キャリブレーション装置は、例えば、ランク２の低ランク行列Ｃを求めて行列（Ｂ−Ｃ）のフロベニウスノルムが所定値ε以下であるか否かを判定する。この様に、例えば、行列（Ｂ−Ｃ）のフロベニウスノルムが所定値ε以下となるまで低ランク行列Ｃのランクを１から増加させることで、キャリブレーション装置は低ランク行列Ｃを求めることができる。また、キャリブレーション装置は、行列（Ｂ−Ｃ−Ｓ）のフロベニウスノルムが、所定値ε以下であるとの条件の下、スパース行列ＳのＬ１ノルムに所定値μを乗じた値と、低ランク行列Ｃの核ノルムの和が最小となる様に行列分解を行う構成とすることができる。
【００１６】
図４により、低ランク行列Ｃを求めることの意味について説明する。図４において参照符号５１〜５４は、処理単位内のフレームである。なお、フレーム５１が時間的に最も早く、フレーム５４が時間的に最も遅いものとする。各フレームの黒丸は、特徴点であり、参照符号６１は、ある特徴点のカメラ座標系における軌跡を示し、参照符号６２は、別の特徴点のカメラ座標系における軌跡を示している。なお、特徴点の軌跡６１は、軌跡行列Ｂの第１行及び第２行に対応し、別の特徴点の軌跡６２は、軌跡行列Ｂの第３行及び第４行に対応するものとする。図４の参照符号７１は、軌跡行列を行列分解して得た低ランク行列Ｃの第１行及び第２行が示す軌跡であり、図４の参照符号７２は、軌跡行列Ｂを行列分解して得た低ランク行列Ｃの第３行及び第４行が示す軌跡である。なお、図４においては、図の簡略化のため軌跡７１及び７２を直線で示しているが、必ず直線になるわけではない。
【００１７】
また、図４においては、２つの特徴点の軌跡のみを示しているが、上述した様にＮは４以上必要であり、実際には４つ以上の軌跡がある。そして、低ランク行列Ｃにおいて、各行のベクトルの線形独立な数は元の軌跡行列Ｂより少なくなっているため、低ランク行列Ｃが示す各行の軌跡は、特徴点に対応する動物体自体の移動による変動が、元の軌跡行列Ｂが示す軌跡より抑圧されたものとなっている。したがって、キャリブレーション装置は、Ｓ１４で、低ランク行列Ｃに基づき、各特徴点の対応関係を更新する。例えば、図４においては、フレーム５１の特徴点９１と、フレーム５２の特徴点９２が対応しているが、キャリブレーション装置は、これを、低ランク行列Ｃが示すフレーム５１の点８１と、フレーム５２の点８２が対応する特徴点であると更新する。
【００１８】
続いて、キャリブレーション装置は、処理単位内の更新した特徴点の対応関係に基づき処理単位内のフレームのホモグラフィ行列を求める。例えば、フレーム＃２に対するホモグラフィ行列Ｈ２を求めるものとする。この場合、キャリブレーション装置は、まず、フレーム＃１とフレーム＃２の対応する特徴点のカメラ座標に基づき、フレーム＃１に対するフレーム＃２のホモグラフィ行列Ｈ１２を求める。ホモグラフィ行列Ｈ１２は、
【００１９】
【数１】
0006489655.tif 000002
で表され、フレーム＃１の更新後の特徴点のカメラ座標を（ｐ１，ｐ２）とし、フレーム＃２の、対応する更新後の特徴点のカメラ座標を（ｃ１，ｃ２）とすると、これら２つの座標とホモグラフィ行列Ｈ１２との関係は、以下の式（１）で表される。
【００２０】
【数２】
0006489655.tif 000003
【００２１】
式（１）で得られる３つの方程式から、ｐ１及びｐ２は、それぞれ、以下に示す２つのベクトルの内積で表されることになる。
p1=(c1,c2,1,0,0,0,-p1*c1,-p1*c2)*(h11,h12,h13,h21,h22,h23,h31,h32)T
p2=(0,0,0,c1,c2,1,-p2*c1,-p2*c2)*(h11,h12,h13,h21,h22,h23,h31,h32)T
求めるべきホモグラフィ行列Ｈ１２の要素ｈ１１〜ｈ３２は８つであるため、フレーム間の対応関係が判定できる特徴点の数、つまり、Ｎが少なくとも４つあれば、要素ｈ１１〜ｈ３２を求めることができ、よってホモグラフィ行列Ｈ１２を求めることができる。そして、ホモグラフィ行列Ｈ１２とフレーム＃１のホモグラフィ行列をＨ１とに基づき、フレーム＃２のホモグラフィ行列Ｈ２を、Ｈ１２×Ｈ１で求めることができる。フレーム＃３以降についても同様である。そして、本実施形態では、第１処理単位に対する軌跡行列Ｂに基づき、フレーム＃２〜フレーム＃Ｋのホモグラフィ行列までを求めることができる。そして、第２処理単位に対する軌跡行列Ｂに基づき、フレーム＃Ｋとフレーム＃Ｋ＋１の更新後の特徴点の対応関係を求め、これにより、フレーム＃Ｋに対するフレーム＃Ｋ＋１のホモグラフィ行列を求め、これと既に求めた、フレーム＃Ｋのホモグラフィ行列により、フレーム＃Ｋ＋１のホモグラフィ行列を求めることができる。以後のフレームについても同様にし、第２処理単位に対する軌跡行列Ｂに基づきフレーム＃２Ｋ−１までのホモグラフィ行列を求めることができる。第３処理単位以降についても同様である。
【００２２】
図５は、本実施形態によるキャリブレーション装置の構成図である。特徴点検出部１は、処理単位内の各フレームの特徴点を検出する。対応関係判定部２は、処理単位内の各フレームの特徴点の対応関係を判定し、さらに、処理単位内の総てのフレームにおいて対応関係が判定できる特徴点を判定する。軌跡行列生成部３は、処理単位内の総てのフレームに渡り存在する特徴点に基づき軌跡行列Ｂを算出する。算出部４は、軌跡行列Ｂを行列分解して低ランク行列Ｃを算出する。なお、低ランク行列Ｃのランクは、軌跡行列Ｂのランクより小さい。そして、算出部４は、低ランク行列Ｃに基づき、上述した様に、処理単位内の各フレームのホモグラフィ行列を算出し、保持部５は、算出部４が算出したホモグラフィ行列を保持する。算出部４は、ホモグラフィ行列の算出の際、ホモグラフィ行列を求めるフレームの１つ前のフレームのホモグラフィ行列を保持部５から取得する。なお、フレーム＃１のホモグラフィ行列は、予め求めて保持部５に保存しておく。
【００２３】
以上、本実施形態では、軌跡行列Ｂを行列分解することで、特徴点が動物体に対応する画素であったとしても、動物体自体の移動による軌跡変動を抑圧し、これにより精度良く各フレームのホモグラフィ行列を求めることができる。なお、本実施形態においては、軌跡行列の算出に処理単位内の全フレームを使用したが、一部のフレームを除いて軌跡行列を求める構成であっても良い。例えば、処理単位内の奇数番目又は偶数番目のフレームだけを使用して軌跡行列Ｂを求める構成であっても良い。さらには、連続する３フレームから１つのフレームを選択して軌跡行列Ｂを求める構成であっても良い。
【００２４】
また、本実施形態において、時間的に連続する２つの処理単位において１つのフレームのみが重複するものとしたが、２つ以上のフレームを重複させる構成であっても良い。例えば、第１処理単位をフレーム＃１〜フレーム＃Ｋとし、第２処理単位をフレーム＃Ｋ−ｒ〜フレーム＃２Ｋ−ｒ−１（ｒは０〜Ｋ−２）とすることができる。この場合、第１処理単位の軌跡行列Ｂに基づきフレーム＃１〜フレーム＃Ｋ−ｒまでのホモグラフィ行列を求め、第２処理単位の軌跡行列Ｂに基づきフレーム＃Ｋ−ｒ＋１からフレーム＃２Ｋ−２ｒまでのホモグラフィ行列を求める。さらに、各処理単位のフレーム数については一定値ではなく、処理単位毎に可変であっても良い。
【００２５】
＜第二実施形態＞
続いて、第二実施形態について第一実施形態との相違点を中心に説明する。第一実施形態においては、行列分解の際の所定値ε及び所定値μを固定値としていた。本実施形態では、あるフレームのホモグラフィ行列を求めると、このホモグラフィ行列の精度を判定する。そして、精度が所定条件を満たさないと、行列分解の際の所定値ε及び所定値μを調整して再度ホモグラフィ行列を求めることを、求めたホモグラフィ行列の精度が当該所定条件を満たすまで繰り返す。そして、求めたホモグラフィ行列の精度が当該所定条件を満たすと、次のフレームのホモグラフィ行列を求める。なお、行列分解の際の所定値ε及び所定値μの調整手順は任意である。
【００２６】
以下では、求めたホモグラフィ行列の精度が所定条件を満たしているか否かをどの様に判定するかについて説明する。例えば、スポーツのフィールドには、ラインや、ゴール等、固定されており、かつ、フィールドの色とは異なる色のオブジェクトが存在する。本実施形態ではこの様な、固定され、かつ、フィールドとは異なる色のオブジェクトを基準オブジェクトとし、この基準オブジェクトの位置を基準位置とし、この基準位置の実空間座標を算出部４に予め設定しておく。そして、算出部４は、あるフレームのホモグラフィ行列を求めると、この基準位置の実空間座標をカメラ座標、つまり、画素位置に変換する。以下では、この基準位置の実空間座標を、求めたホモグラフィ行列で変換したカメラ座標を第１座標とする。そして、算出部４は、色値に基づき、当該フレーム内の第１座標を基準に基準オブジェクトに対応する画素を探索する。ここで、当該フレームにおける基準オブジェクトに対応する画素の位置を第２座標とする。算出部４は、第１座標と第２座標の距離が閾値以下であると精度が所定条件を満たしていると判定する。一方、第１座標と第２座標の距離が閾値より大きいと、算出部４は求めたホモグラフィ行列の精度が所定条件を満たしていないとし、所定値ε及び所定値μの両方、或いは、一方を調整して再度ホモグラフィ行列を求める。
【００２７】
なお、基準オブジェクトは複数設けることができる。この場合、例えば、基準オブジェクト毎に距離を求め、その平均値と閾値を比較する構成とすることができる。
【００２８】
以上、本実施形態において、算出部４は、各フレームのホモグラフィ行列の精度を判定し、当該精度を閾値以内とする。したがって、算出するホモグラフィ行列の精度を高くすることができる。
【００２９】
なお、上記実施形態においては、低ランク行列Ｃの各行の軌跡により特徴点のカメラ座標を更新していた。しかしながら、低ランク行列Ｃの各行の軌跡に基づき、カメラの撮影方向の変化を求める構成であっても良い。キャリブレーション装置は、カメラの撮影方向の変化を求めることで、連続するフレーム間における座標の対応関係を判定することができ、これにより、処理単位内のフレームのホモグラフィ行列を算出することができる。この場合、少なくとも２つの特徴点の軌跡に基づきカメラの撮影方向の変化を求めることができる。なお、処理単位内の全フレームの内、ホモグラフィ行列を求めるフレームは、上述した様に、処理単位間において重複するフレームの数に依存する。
【００３０】
なお、本発明によるキャリブレーション装置は、コンピュータを上記キャリブレーション装置として動作させるプログラムにより実現することができる。これらコンピュータプログラムは、コンピュータが読み取り可能な記憶媒体に記憶されて、又は、ネットワーク経由で配布が可能なものである。
【符号の説明】
【００３１】
１：特徴点検出部、２：対応関係判定部、３：軌跡行列生成部、４：算出部、５：保持部
【図１】
0006489655.tif 000004
【図２】
0006489655.tif 000005
【図３】
0006489655.tif 000006
【図４】
0006489655.tif 000007
【図５】
0006489655.tif 000008