(57)【特許請求の範囲】
【請求項１】
測定対象物を異なるアングルから撮像して得られた複数の画像データを読み込むステップと、
読み込まれた複数の画像データに対してカメラ校正パラメータに基づいて歪み補正を施すステップと、
このステップで歪み補正された複数の画像データのそれぞれから画像の特徴データを抽出するステップと、
このステップで抽出された特徴データに基づいて画像データ間の拘束条件を算出し、この拘束条件を満たすような前記特徴データの対応付けを行うステップと、
前記画像データ中の一個所の長さのデータを与えるステップと、
前記対応付けされた特徴データと画像データ間の拘束条件とから前記測定対象物が配置されている三次元空間と前記各画像データの画像面との間の透視投影変換行列を算出し、この透視投影変換行列と前記与えられた一個所の長さのデータとから前記測定対象物の三次元形状を復元するステップと、
前記読み込まれた複数の画像データから前記カメラ校正パラメータを算出するステップとを備え、
前記カメラ校正パラメータを算出するステップは、
前記読み込まれた複数の画像データから画像の特徴データを抽出するステップと、
このステップで抽出された特徴データのうち画像データの中心付近の特徴データに基づいて画像データ間の拘束条件を算出し、この拘束条件を満たすような前記特徴データの対応付けを行うステップと、
前記拘束条件からカメラ内部パラメータを算出し、光学中心と前記対応付けられた特徴データとから各画像データについての透視投影変換行列を求め、この透視投影変換行列と光学中心付近以外の部分も含む対応付けされた特徴データとからレンズ歪み補正係数を算出するステップと
を備えたことを特徴とする三次元形状復元方法。
【請求項２】
前記画像データから抽出される特徴データは、前記画像データの濃淡が急激に変化するエッジの交差部分またはコーナー部分を示す特徴点データと前記画像データの濃淡が急激に変化するエッジを示す特徴線分データである
ことを特徴とする請求項１記載の三次元形状復元方法。
【請求項３】
前記特徴データの対応付けを行うステップは、前記抽出された特徴データについて前記複数の画像データ間で初期の対応付けを行った後、画像データ間の拘束条件を算出し、前記画像間の拘束条件を満たすような前記特徴データの対応付けを再度行い、前記拘束条件から求まる対応データの位置と前記拘束条件によって対応付けられた特徴データの位置とから画像間の対応の精度を評価し、所定の精度が得られるまで前記拘束条件の算出と前記拘束条件に基づく特徴データの対応付けとを繰り返すステップであることを特徴とする請求項１又は２記載の三次元形状復元方法。
【請求項４】
測定対象物を異なるアングルから撮像する１又は複数の撮像手段と、
この撮像手段からの複数の画像データを読み込んで記憶する画像記憶手段と、
前記画像データ中の一個所の長さのデータを与える入力手段と、
前記画像記憶手段に記憶された複数の画像データに対してカメラ校正パラメータに基づいて歪み補正を施す機能と、前記歪み補正された複数の画像データのそれぞれから画像の特徴データを抽出する機能と、前記抽出された特徴データに基づいて画像データ間の拘束条件を算出し、この拘束条件を満たすような前記特徴データの対応付けを行う機能と、前記対応付けされた特徴データと画像データ間の拘束条件とから前記測定対象物が配置されている三次元空間と前記各画像データの画像面との間の透視投影変換行列を算出し、この透視投影変換行列と前記与えられた一個所の長さのデータとから前記測定対象物の三次元形状を復元する機能とを有する演算処理手段と
を備え、
前記演算処理手段は、
前記画像記憶手段に記憶された複数の画像データから前記カメラ校正パラメータを算出する機能を更に有し、
前記カメラ校正パラメータを算出する機能は、
前記画像記憶手段に記憶された複数の画像データから画像の特徴データを抽出する処理と、前記抽出された特徴データのうち画像データの中心付近の特徴データに基づいて画像データ間の拘束条件を算出し、この拘束条件を満たすような前記特徴データの対応付けを行う処理と、前記拘束条件からカメラ内部パラメータを算出し、光学中心と前記対応付けられた特徴データとから各画像データについての透視投影変換行列を求め、この透視投影変換行列と光学中心付近以外の部分も含む対応付けされた特徴データとからレンズ歪み補正係数を算出する処理とを実行することにより発揮される
ことを特徴とする三次元形状復元システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、複数枚の静止画像又は動画像から測定対象物の三次元形状を計測する三次元形状復元システム及び方法に関する。
【０００２】
【従来の技術】
画像計測は、ビル・プラント等の大型構造物の寸法、形状、変位測定、工業部品の非接触測定やコンピュータグラフィックスを用いて仮想的な映像を作成する上でのモデルデータの入力等、その応用分野は多岐にわたる。
近年、複数枚の画像或いは動画像から物体形状を復元するシステムが種々提案されている。例えば、特開平９−２１２６４３号では、入力画像から得られる対象物体の輪郭、凹凸、模様等の特徴を直線、円弧等で近似したステレオ計測による三次元位置データを有する特徴パターンと、対象物体のモデルの特徴データとのマッチングをとることで、対象物体の三次元形状を認識する三次元物体認識方法が開示されている。この方法では、測定対象のモデルのデータを予め用意しておかなくてはならないため、測定対象が予め既知のものに特定される。
【０００３】
特開平１０−２２８５４２号に開示された三次元計測方法は、複数の部位から撮影された画像の輪郭の特徴を用いて特徴点のマッチング処理を行って測定対象の三次元形状を推定する。この方法は、互いに平行な光軸を持ち、カメラの相対位置方向が水平方向及び垂直方向に並設された少なくとも３台のカメラを用いなくてはならず、カメラを正確に位置決めするための器具が必要となる。
また、特開平１０−３１８７１５号及び特開平３１８７３２号に開示された三次元計測装置では、予め位置関係が分かっている特徴パターン像に基づいて複数の画像データの対応付けを行う。このため、特徴パターンを生成するための手段を必要とする。
【０００４】
一方、この種の画像計測では、撮像手段であるカメラのレンズ歪みが計測精度に影響を与える。レンズ歪みの補正に関しては、特開平１１−２３０７４５号に記載があるが、歪み補正のための補正係数は、予めレンズメーカにより入手するか別途計測する必要がある。
これに対し、キャリブレーションされていない市販のカメラやビデオカメラを用い、任意の位置から撮像して得られた複数の画像データから、画像上の２点間の距離を指定するだけで、物体の三次元形状を復元することができるシステムも種々提案されている（Q-T Luong and T.Vieville, Canonic Representation for the Geometries of Multiple Projective Views, Technical Report UCB/CSD 93/772, EECS, U.C.Berkeley, 1993 その他）。
【０００５】
【発明が解決しようとする課題】
上述した従来の三次元形状復元システムでは、複数の画像データ間で対応する特徴データを対応データとして関連付け、この関連を元に三次元形状を復元していくことを基本としている。特徴データは、手動で対応付けるか、特徴データ間の類似性に基づいてシステムが自動で対応付ける。しかし、このような従来のシステムでは、特徴データの抽出精度や誤った対応付けの発生により、三次元形状の推定精度を低下させるという問題がある。例えば、特開２０００−７４６４１号に開示されたものは、撮像時の撮像装置に関する情報がない画像から撮像シーンの三次元形状を抽出する手法を開示しているが、特徴点の対応付けに関する精度向上について何等言及されていない。
【０００６】
この発明は、このような点に鑑みなされたもので、特徴データ間の誤対応等に基づく推定精度の低下を防止して、正確な三次元形状の復元が可能な三次元形状復元方法及びシステムを提供することを目的とする。
【０００７】
【課題を解決するための手段】
この発明に係る三次元形状復元方法は、測定対象物を異なるアングルから撮像して得られた複数の画像データを読み込むステップと、読み込まれた複数の画像データに対してカメラ校正パラメータに基づいて歪み補正を施すステップと、このステップで歪み補正された複数の画像データのそれぞれから画像の特徴データを抽出するステップと、このステップで抽出された特徴データに基づいて画像データ間の拘束条件を算出し、この拘束条件を満たすような前記特徴データの対応付けを行うステップと、前記画像データ中の一個所の長さのデータを与えるステップと、前記対応付けされた特徴データと画像データ間の拘束条件とから前記測定対象物が配置されている三次元空間と前記各画像データの画像面との間の透視投影変換行列を算出し、この透視投影変換行列と前記与えられた一個所の長さのデータとから前記測定対象物の三次元形状を復元するステップと、前記読み込まれた複数の画像データから前記カメラ校正パラメータを算出するステップとを備え、前記カメラ校正パラメータを算出するステップは、前記読み込まれた複数の画像データから画像の特徴データを抽出するステップと、このステップで抽出された特徴データのうち画像データの中心付近の特徴データに基づいて画像データ間の拘束条件を算出し、この拘束条件を満たすような前記特徴データの対応付けを行うステップと、前記拘束条件からカメラ内部パラメータを算出し、光学中心と前記対応付けられた特徴データとから各画像データについての透視投影変換行列を求め、この透視投影変換行列と光学中心付近以外の部分も含む対応付けされた特徴データとからレンズ歪み補正係数を算出するステップとを備えたことを特徴とする。
【０００８】
また、この発明に係る三次元形状復元システムは、測定対象物を異なるアングルから撮像する１又は複数の撮像手段と、この撮像手段からの複数の画像データを読み込んで記憶する画像記憶手段と、前記画像データ中の一個所の長さのデータを与える入力手段と、前記画像記憶手段に記憶された複数の画像データに対してカメラ校正パラメータに基づいて歪み補正を施す機能と、前記歪み補正された複数の画像データのそれぞれから画像の特徴データを抽出する機能と、前記抽出された特徴データに基づいて画像データ間の拘束条件を算出し、この拘束条件を満たすような前記特徴データの対応付けを行う機能と、前記対応付けされた特徴データと画像データ間の拘束条件とから前記測定対象物が配置されている三次元空間と前記各画像データの画像面との間の透視投影変換行列を算出し、この透視投影変換行列と前記与えられた一個所の長さのデータとから前記測定対象物の三次元形状を復元する機能とを有する演算処理手段とを備え、前記演算処理手段は、前記画像記憶手段に記憶された複数の画像データから前記カメラ校正パラメータを算出する機能を更に有し、前記カメラ校正パラメータを算出する機能は、前記画像記憶手段に記憶された複数の画像データから画像の特徴データを抽出する処理と、前記抽出された特徴データのうち画像データの中心付近の特徴データに基づいて画像データ間の拘束条件を算出し、この拘束条件を満たすような前記特徴データの対応付けを行う処理と、前記拘束条件からカメラ内部パラメータを算出し、光学中心と前記対応付けられた特徴データとから各画像データについての透視投影変換行列を求め、この透視投影変換行列と光学中心付近以外の部分も含む対応付けされた特徴データとからレンズ歪み補正係数を算出する処理とを実行することにより発揮されることを特徴とする。
【０００９】
本発明によれば、異なるアングルから撮像された複数の画像データから抽出された特徴データに基づいて画像データ間の拘束条件を算出し、この拘束条件を満たすような前記特徴データの対応付けを行う。拘束条件は、例えば安定した結果が得られるまで繰り返し計算して求める。これにより、誤対応や精度の低い特徴データ間の対応付けを防止して、対応付けの精度を向上させることができる。そして、画像データ中の一個所の長さのデータを与え、前記対応付けされた特徴データと画像データ間の拘束条件とから前記測定対象物が配置されている三次元空間と前記各画像データの画像面との間の透視投影変換行列を算出し、この透視投影変換行列と前記与えられた一個所の長さのデータとから前記測定対象物の三次元形状を復元することで、精度良く三次元形状を復元することができる。
【００１０】
本発明の好ましい実施形態によれば、前記読み込まれた複数の画像データに対してカメラ校正パラメータに基づいて歪み補正を施すステップを備え、このステップで歪み補正された複数の画像データのそれぞれから画像の特徴データを抽出する。カメラ校正パラメータが未知の場合には、前記読み込まれた複数の画像データから前記カメラ校正パラメータを算出するステップを更に備えればよい。カメラ校正パラメータを算出するステップとしては、例えば前記読み込まれた複数の画像データから画像の特徴データを抽出するステップと、このステップで抽出された特徴データのうち画像データの中心付近の特徴データに基づいて画像データ間の拘束条件を算出し、この拘束条件を満たすような前記特徴データの対応付けを行うステップと、前記拘束条件からカメラ内部パラメータを算出し、光学中心と前記対応付けられた特徴データとから各画像データについての透視投影変換行列を求め、この透視投影変換行列と光学中心付近以外の部分も含む対応付けされた特徴データとからレンズ歪み補正係数を算出するステップとを備えるようにすればよい。
【００１１】
また、前記画像データから抽出される特徴データとしては、誤った特徴点を抽出しないように、好ましくは前記画像データの濃淡が急激に変化するエッジの交差部分又はコーナー部分を示す特徴点データに加え、前記画像データの濃淡が急激に変化するエッジを示す特徴線分データを使用する。
【００１２】
本発明の更に好ましい実施態様によれば、前記特徴データの対応付けを行うステップは、前記抽出された特徴データについて前記複数の画像データ間で初期の対応付けを行った後、画像データ間の拘束条件を算出し、前記画像間の拘束条件を満たすような前記特徴データの対応付けを再度行い、前記拘束条件から求まる対応データの位置と前記拘束条件によって対応付けられた特徴データの位置とから画像間の対応の精度を評価し、所定の精度が得られるまで前記拘束条件の算出と前記拘束条件に基づく特徴データの対応付けとを繰り返すステップである。
【００１３】
【発明の実施の形態】
以下、図面を参照して、この発明の実施例に係る三次元形状復元システムについて説明する。
図１は、本発明の一実施例に係る三次元形状復元システムの構成を示すブロック図である。
測定対象物１は、カメラ２によって異なるアングルから撮像される。最も典型的には複数台のカメラ２1，２2，…によって測定対象物１を別の方向から撮像して複数の静止画像を得る。但し１台のカメラ２1を複数の位置に動かして測定対象物１を異なるアングルから撮像して複数の静止画像を得るようにしても良いし、測定対象物１自体が動く場合には、１台のビデオカメラ２1によって、測定対象物１の動画像を得るようにしても良い。いずれにしても、測定対象物１を異なるアングルから捉えた複数の画像が得られれば良く、撮影形態としては種々の形態をとり得る。このようにして得られた複数の静止画像又は動画像（以下、これらをまとめて「複数の画像」と呼ぶ）は、画像メモリ３に格納される。
【００１４】
演算処理装置４は、画像メモリ３から複数の画像を読み込み、これら画像からカメラ校正パラメータに基づいてカメラ２の歪みを除去した校正後画像を生成し、この校正後画像から特徴点抽出、特徴間の対応付け及び三次元形状の算出処理を実行する。ワークメモリ５は、これらの処理の途中で得られる特徴点、線分、対応点、対応線分等の中間的なデータを一時的に記憶するのに使用される。外部記憶装置６は、カメラ校正パラメータファイルや計測結果のファイル等を記憶する。入力装置７は、三次元形状の算出処理に際して、画像中の一個所の長さ等、必要なデータを入力するのに用いられる。表示装置８は、必要なデータの入力のため、読み込まれた画像、抽出された特徴点及び対応付けされた特徴点等を表示する。出力装置９は、計測結果等をプリントアウトするのに使用される。
【００１５】
次に、上記システムを用いた三次元形状復元方法について説明する。
いま、図２に示すように、測定対象物１上の点の三次元空間における位置を、
【００１６】
【数１】
0004372328.tif 000002
【００１７】
とし、カメラ２1の画像面Ｓ上における測定対象物１の結像位置を、
【００１８】
【数２】
0004372328.tif 000003
【００１９】
とすると、ピンホールカメラモデルによる両座標間の関係は、斉次座標を用いて次式のように表現することができる。
【００２０】
【数３】
0004372328.tif 000004
【００２１】
但し、ｋは０でないスケールファクタ、Ｐはカメラ２1を表現する３×４の透視投影変化行列である。ここで、三次元空間上のカメラ２の姿勢をＲ、位置をｔ、光軸Ｃが画像面Ｓを横切る点の画像面上での位置を、
【００２２】
【数４】
0004372328.tif 000005
【００２３】
画像面Ｓ上の２軸ｕ，νが空間上なす角をθ、２軸方向の縮尺をｋu，ｋv、焦点距離をｆとすると、透視変換行列Ｐは次のように表すことが出来る。
【００２４】
【数５】
0004372328.tif 000006
【００２５】
ここで、透視変換行列Ｐを表すｆ，ｋu，ｋv，θ，ｕ0，ν0をカメラの内部パラメータと呼ぶ。
【００２６】
（１）２枚の画像間から求まる拘束条件（epipolar拘束）
いま、第１のカメラ２1の透視変換行列Ｐの第ｉ行目をａiとし、ｋを０でないスケールファクタとして、図３に示すように、第１のカメラ２1により空間上の点ｘが画像面Ｓ1上に、次のように写っているとする。
【００２７】
【数６】
0004372328.tif 000007
【００２８】
同様に、第２のカメラ２2の透視変換行列Ｐの第ｉ行目をｂiとし、ｋ′を０でないスケールファクタとして、第２のカメラ２2により空間上の点ｘが画像面Ｓ2上に、次のように写っているとする。
【００２９】
【数７】
0004372328.tif 000008
【００３０】
この２式をまとめると、
【００３１】
【数８】
0004372328.tif 000009
【００３２】
となり、これが自明でない解を持つためには左辺の６×６行列の行列式が０でなくてはならない。この行列を計算し、画素位置についてまとめると、次の式を得る。
【００３３】
【数９】
0004372328.tif 000010
【００３４】
この式において行列Ｆをfundamental matrixと呼ぶ。
【００３５】
（２）３枚の画像間から求まる拘束条件（trilinear拘束）
上述した第１及び第２のカメラ２1，２2に加えて第３のカメラ２3の透視変換行列Ｐの第ｉ行目をｃiとし、ｋ″を０でないスケールファクタとして、第３のカメラ２3により空間上の点ｘが画像面Ｓ上に、次のように写っているとする。
【００３６】
【数１０】
0004372328.tif 000011
【００３７】
３つの式をまとめると、
【００３８】
【数１１】
0004372328.tif 000012
【００３９】
となり、これが自明でない解を持つためには左辺の６×７行列の階級（rank）は、高々６でなくてはならない。よって、全ての７×７小行列の行列式は０となる。ここで、小行列のとり方は全部で３６通り存在するが、その内訳は以下の通りである。
【００４０】
▲１▼２つのカメラの透視投影変換行列Ｐより３行をとり、残りのカメラの透視投影変換行列Ｐより１行とる（９通り）。
▲２▼１つのカメラの透視投影変換行列Ｐより３行をとり、残りのカメラの透視投影変換行列Ｐより２行ずつとる（２７通り）。
【００４１】
▲１▼の場合は２枚の画像間から求まる拘束条件となる。また、３枚の画像間から新たに求まる拘束条件は▲２▼による小行列の行列式で、これをtrilinear tensorと呼ぶ。
いま、７×７の小行列を、
【００４２】
【数１２】
0004372328.tif 000013
【００４３】
にとったとする。これを展開すると次のようになる。
【００４４】
【数１３】
0004372328.tif 000014
【００４５】
但し、εijkは（ｉ，ｊ，ｋ）が（１，２，３）の偶置換により与えられるとき＋１、奇置換により与えられるとき−１、それ以外は０、添え字ｘ，ｙは小行列を構成する際に取り込まれなかったカメラの透視投影変換行列Ｐの行ｂx，ｃyを表す。これを、
【００４６】
【数１４】
0004372328.tif 000015
【００４７】
と表すと、trilinear拘束は、次のように表すことができる。
【００４８】
【数１５】
0004372328.tif 000016
【００４９】
同様の方法で拘束条件を求めていこうとすると、容易に分かるように、５枚以上の画像からはもはや新しい拘束条件が得られない。また、４枚の画像から求まる拘束条件は、２枚及び３枚の画像から求まる拘束条件で表せる。
【００５０】
三次元形状の復元の精度は、三次元空間に配置された測定対象物１に含まれる特徴の、画像面Ｓ上での結像位置を満たすべき拘束を与えるfundamental matrix又はtrilinear tensorを如何に精度良く推定するかにかかっている。精度に影響を及ぼす要因としては、▲１▼特徴の抽出位置精度、▲２▼特徴間の誤対応、▲３▼解法の安定性、▲４▼カメラのレンズの歪みによる影響等が挙げられる。そこで、これらを考慮して次のような処理を実行する。
【００５１】
図４は、この三次元形状復元処理のメインフローチャートである。
まず、測定対象物１をカメラ２で撮像した複数の画像を読み込む（Ｓ１）。読み込まれた画像の撮影に用いたカメラ２が過去に校正済みのカメラかどうかを外部記憶装置６に格納されているカメラ校正パラメータファイルを参照して判断し（Ｓ２）、もし校正済みであれば、カメラ校正パラメータをファイルから読み込む（Ｓ３）。また、校正済みでなければ、後述する特徴抽出（Ｓ４）、画像間の対応付け（Ｓ５）及びカメラ校正パラメータの算出（Ｓ６）を順次実行し、入力画像を用いてカメラ校正パラメータを算出する。一度算出したカメラ校正用パラメータは、コメント等と一緒にファイルにして外部記憶装置６に保存しておけば、再利用可能となる。よって、ステップＳ４〜Ｓ６は毎回行う必要はない。
【００５２】
カメラの校正パラメータが求められたら、次に入力画像とカメラ校正パラメータとからレンズ歪みを取り除いた校正後画像データを作成する（Ｓ７）。この歪みのない校正後画像データを用いて、画像上の特徴を抽出し（Ｓ８）、画像間の対応付けを行う（Ｓ９）。そして、カメラ校正パラメータと画像間の対応から、物体の三次元形状を復元する（Ｓ１０）。但し、この時点では三次元空間上の位置関係が求まるだけで、実際の長さを算出するには、画像中一個所の長さを入力する必要がある。表示装置８に表示された画像中の一個所を入力装置７から指定することにより、三次元形状を復元する。
【００５３】
次に、上記メインフローチャートにおける主要な処理の詳細について説明する。
図５は、図４のメインフローチャートにおける特徴抽出処理（Ｓ４）の詳細を示すフローチャートである。
まず、画像データから画像濃淡値が急激に変化する方向が複数ある点をコーナーとして検出する。これを特徴点データとして記憶する（Ｓ１１）。特徴点の抽出誤差は、量子化誤差や特徴抽出アルゴリズムの性能に依存するが、抽出位置ずれがあると、三次元形状を復元したときに大きな誤差となって現れる。このため、例えば複数の特徴抽出アルゴリズムを並列実行させて、明瞭な特徴のみを取り出すことが望ましい。また、コーナー又は交差のみでは、オクルージョン境界で見かけ上の特徴点を生ずることがあり問題がある。そこで、特徴点の抽出と並行して特徴線分も抽出する。すなわち、画像データから画像濃淡値が急激に変化する点列をエッジとして検出し（Ｓ１２）、この中から線分を検出し、これを線分データとして記憶する（Ｓ１３）。
【００５４】
図６は、図４のメインフローチャートにおける画像間の対応付け（Ｓ５）の詳細を示すフローチャートである。
特徴点の誤対応は、異常データを生成してfundamental matrix又はtrilinear tensorの推定に悪影響を及ぼすため、極力をこれを減らす必要がある。このため、まず、抽出された特徴点データより、初期対応として、特徴点近傍の画像の類似性と、隣接する特徴点間ではその対応点も似たような位置にあるという類似性とから、特徴点間の対応付けを行う（Ｓ２１）。これと並行して、線分データについても、線分パラメータの類似性をもとに線分間の初期の対応付けを行う（Ｓ２２）。続いて、特徴点間又は線分間の対応から、画像間で満たすべき拘束条件を算出する（Ｓ２３）。この拘束条件は、前述したように、２枚の画像間ではepipolar拘束、３枚の画像間では、trilinear拘束を利用することができる。
【００５５】
次に、各画像で抽出された特徴点データのうち、算出された拘束条件を満たすような位置関係にある特徴点データの組を対応点データとして選び出す（Ｓ２４）。同様に、線分データのうち拘束条件を満たすような位置関係にある特徴線分データの組を対応線分データとして選び出す（Ｓ２５）。ステップＳ２３にて算出した拘束条件から求まる対応データの位置と、これと対応する画像上の特徴データの位置とが充分良く一致しているか、及び、特徴データのパラメータに類似性が見られるかをもとに、画像間の対応の精度を評価する（Ｓ２６）。この評価結果が所定値を超えるような充分に良い精度で求まっていれば、対応点データ及び対応線分データとしてこの結果を記憶する。そうでなければ、この結果を用いて再度、拘束条件を算出し（Ｓ２３）、評価結果が所定値を超えるまでこれを繰り返す。
【００５６】
次に、カメラ校正パラメータの算出について説明する。
図２の画像面Ｓ上で実際に得られる点を
【００５７】
【数１６】
0004372328.tif 000017
【００５８】
とすると、この点は、カメラ２のレンズ収差歪みの影響を受けている。ここで補正分を、
【００５９】
【数１７】
0004372328.tif 000018
【００６０】
とすると、歪み補正後の点は、
【００６１】
【数１８】
0004372328.tif 000019
【００６２】
と表すことができる。ここで、
【００６３】
【数１９】
0004372328.tif 000020
【００６４】
とすると、補正分は次のように表すことが出来る。
【００６５】
【数２０】
0004372328.tif 000021
【００６６】
ｋ1，ｐ1，ｐ2，ｓ1，ｓ2をレンズ歪み補正係数と呼び、これをこれを先のカメラ内部パラメータと合わせてカメラ校正パラメータと呼ぶ。
【００６７】
図７は、図４のメインフローチャートにおけるカメラ校正パラメータの算出処理（Ｓ６）の詳細を示すフローチャートである。
一般に、レンズの歪みは、光学中心（カメラの光軸と画像面の交点）から離れるほど大きくなる。そこで、光学中心と画像面の中心があまり離れていないと仮定し、画像の中心付近にある対応データのみを用いて、画像間の拘束条件を算出する（Ｓ３１）。これは図６のステップＳ２３にて計算したものと同じである。
次に、画像間の拘束条件より、光学中心や焦点距離などのカメラ内部パラメータに関する方程式が導ける。Kruppaの方程式として知られる方程式は、その一つである。このような方程式を解いてカメラ内部パラメータを算出する（Ｓ３２）。続いて算出した光学中心と対応データとから前述した数５よって計算できる透視投影変換行列Ｐを求め、この透視投影変換行列Ｐと光学中心付近以外の部分も含む対応データとからレンズ歪み補正係数を算出する（Ｓ３３）。このステップＳ３３で算出されたレンズ歪み補正係数から、レンズ歪みのない対応データを算出し（Ｓ３４）、これを用いて画像間の拘束条件を算出する（Ｓ３５）。この拘束条件から解くべき方程式を求め、カメラの内部パラメータを算出する（Ｓ３６）。そして、レンズ歪み補正係数及びカメラの内部パラメータが充分良い精度で求まったかどうかを評価し、求まったのであればこれをカメラ校正パラメータとして記憶する。また、求まらなかったらステップＳ３３に戻ってレンズ歪み補正係数の算出以降の処理を繰り返す（Ｓ３７）。
【００６８】
図４のメインフローチャートにおける歪みなし画像データの生成ステップ（Ｓ７）では、図８に示すように、カメラ校正パラメータを用いて画像データのレンズ歪み補正（Ｓ４１）を行い、歪みのない画像データを作成する。
図４のメインフローチャートにおける三次元形状の算出処理（Ｓ１０）では、図９のような処理を実行する。対応点データ及び対応線データより算出される画像間の拘束条件とカメラ内部パラメータとからスケールの不定性を残して、透視投影変換行列Ｐを算出することができる。そこで、まずこの透視投影変換行列Ｐを算出し（Ｓ５１）、画像中、１個所の長さを入力装置７から入力する（Ｓ５２）。そして、この１個所の長さと透視投影変換行列Ｐとから物体の三次元形状を復元する（Ｓ５３）。以上の処理により、精度良く三次元形状を復元することができる。
【００６９】
【発明の効果】
以上述べたようにこの発明によれば、異なるアングルから撮像された複数の画像データから抽出された特徴データに基づいて画像データ間の拘束条件を算出し、この拘束条件を満たすような前記特徴データの対応付けを行い、画像データ中の一個所の長さのデータを与え、前記対応付けされた特徴データと画像データ間の拘束条件とから前記測定対象物が配置されている三次元空間と前記各画像データの画像面との間の透視投影変換行列を算出し、この透視投影変換行列と前記与えられた一個所の長さのデータとから前記測定対象物の三次元形状を復元するようにしているので、誤対応や精度の低い特徴データ間の対応付けを防止して、対応付けの精度を向上させることができ、精度良く三次元形状を復元することができるという効果を奏する。
【図面の簡単な説明】
【図１】  この発明の一実施例に係る三次元形状復元システムの構成を示すブロック図である。
【図２】  本発明に係る三次元形状復元方法におけるカメラの透視投影変換行列を説明するための図である。
【図３】  同復元方法における特徴点の対応付けを説明するための図である。
【図４】  同復元方法の一実施例を示すメインフローチャートである。
【図５】  同メインフローチャートにおける特徴抽出処理のフローチャートである。
【図６】  同メインフローチャートにおける画像間の対応付け処理を示すフローチャートである。
【図７】  同メインフローチャートにおけるカメラ校正パラメータの算出処理のフローチャートである。
【図８】  同メインフローチャートにおけるレンズ歪み補正処理のフローチャートである。
【図９】  同メインフローチャートにおける三次元形状算出処理のフローチャートである。
【符号の説明】
１…測定対象物、２1，２2…カメラ、３…画像メモリ、４…演算処理装置、５…ワークメモリ、６…外部記憶装置、７…入力装置、８…表示装置、９…出力装置。
【図１】
0004372328.tif 000022
【図２】
0004372328.tif 000023
【図３】
0004372328.tif 000024
【図４】
0004372328.tif 000025
【図５】
0004372328.tif 000026
【図６】
0004372328.tif 000027
【図７】
0004372328.tif 000028
【図８】
0004372328.tif 000029
【図９】
0004372328.tif 000030