JP4006657B2 - 画像処理装置および画像処理方法 - Google Patents
画像処理装置および画像処理方法 Download PDFInfo
- Publication number
- JP4006657B2 JP4006657B2 JP20794897A JP20794897A JP4006657B2 JP 4006657 B2 JP4006657 B2 JP 4006657B2 JP 20794897 A JP20794897 A JP 20794897A JP 20794897 A JP20794897 A JP 20794897A JP 4006657 B2 JP4006657 B2 JP 4006657B2
- Authority
- JP
- Japan
- Prior art keywords
- reference image
- point
- image
- projective transformation
- transformation matrix
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Analysis (AREA)
- Length Measuring Devices By Optical Means (AREA)
- Measurement Of Optical Distance (AREA)
- Image Processing (AREA)
Description
【発明の属する技術分野】
本発明は、画像処理装置、画像処理方法、および、伝送媒体に関し、特に、ステレオ法に基づいて距離測定を行う画像処理装置、画像処理方法、および、伝送媒体に関する。
【0002】
【従来の技術】
複数のカメラを用いて、対象までの距離を測定する方法としては、ステレオ法が知られている。ステレオ法は、複数の視点から撮影した画像を用いて、シーン内の各点までの距離を三角測量の原理により測定する方法である。
【0003】
図12は、ステレオ法の概略を説明する図である。この図に示すように、ステレオ法では、基準カメラと参照カメラの2台のカメラによって3次元シーンを観察し、測定しようとする対象の3次元空間における位置(基準点からの距離)を求める。
【0004】
即ち、図12に示す例では、3次元シーン中の対象点Pが基準カメラによって観察される観察点nbと、参照カメラによって観察される観察点nrとを求める。そして、これらの観察点nb,nrから対象点Pの三次元空間内の位置を求めることができる。
【0005】
観察点nbに対応する観察点nrを検出する方法としては、エピポーラライン(Epipolar line)を用いた方法がある。即ち、図12に示すように、参照カメラの観察点nrは、両カメラの光学中心(光軸)と基準カメラの観察点nbによって決まる平面と、参照カメラの画像面が交わる直線上に存在する。この直線をエピポーララインと呼ぶ。基準カメラと参照カメラの位置関係が既知であれば、基準カメラの各観察点毎に参照カメラの画像面上のエピポーララインを求めることができるので、このエピポーラライン上で対応点検索を行うことにより、所望の対応点を検出することができる。
【0006】
一般的には、内部パラメータが等しい2台のカメラを、お互いの光軸が平行でかつ画像面が同一面上に存在するように配置すると、各カメラがラスタ走査する際の走査線とエピポーララインとを一致させることができるので、結果として、アドレス変換などに必要な計算を削減することが可能となる。
【0007】
【発明が解決しようとする課題】
ところで、前述のように、基準カメラと参照カメラを高精度に位置決めして配置することは極めて困難であるという課題があった。
【0008】
また、基準カメラと参照カメラの撮影画像の双方に含まれている範囲(どちらのカメラからでも観察できる範囲)を広くするために輻輳をつけた場合(2台のカメラの光軸が平行ではない場合)、エピポーララインと走査線とが一致しなくなるので、カメラの内部パラメータと外部パラメータを正確に求めなければならないという課題があった。
【0009】
更に、基準カメラと参照カメラの内部パラメータが相互に異なっている場合においても、エピポーララインと走査線が一致しなくなるため、上述の場合と同様にカメラの内部パラメータと外部パラメータとを求めなければならないという課題があった。
【0010】
なお、内部パラメータと外部パラメータには以下のようなものである。
【0011】
内部パラメータ
f(focal length)、Cx,Cy(center of image plane)、sx(digital scale factor)
【0012】
外部パラメータ
Rx,Ry,Rz(rotational angle)、Tx,Ty,Tz(translational components)
【0013】
従って、内部パラメータは個々のカメラ固有の特性を示しており、また、外部パラメータは、3次元空間内における2台のカメラの位置を示しているということができる。
【0014】
ところで、これらの内部パラメータを正確に求める方法としては、Tsaiの方法(「R.Y.Tsai,A versatile camera calibration technique for high accuracy 3D machine vision metrology using off-the shelf TV cameras and lenses, IEEE journal of Robotics and Automation, Vol.RA-3, no.4,pp.323-344, Aug. 1987」参照)が有名である。
【0015】
しかしながら、この方法を実際に実行するためには、参照点が正確な位置に描かれた校正パターンや参照点を正確に位置決めするための機構が必要になるという課題があった。
【0016】
本発明は、以上のような状況に鑑みてなされたものであり、ステレオ法により対象点の位置を測定する場合に、基準カメラと参照カメラの内部または外部パラメータに影響されることなく、また、特殊な校正パターンを用いることなくキャリブレーションを行うことを可能とする。
【0017】
【課題を解決するための手段】
請求項1に記載の画像処理装置は、撮像装置により撮像された画像のうちの少なくとも1つを基準画像として入力する基準画像入力手段と、撮像装置により入力された画像のうちの少なくとも1つを参照画像として入力する参照画像入力手段と、基準点から所定の距離だけ離れた位置の被写体を撮像して得られる基準画像および参照画像を用いて、基準画像と、射影変換行列に基づく変換後の参照画像との輝度誤差が最小となるような射影変換を行う射影変換行列を算出する射影変換行列算出手段と、基準画像上の点を、射影変換行列を用いて変換し、その点に対応する参照画像上の点を算出する点算出手段と、点算出手段によって算出される参照画像上の点から生成されるエピポーララインに応じて、対象点までの距離を算出する算出手段とを備えることを特徴とする。
【0018】
請求項4に記載の画像処理方法は、撮像装置により撮像された画像のうちの少なくとも1つを基準画像として入力する基準画像入力ステップと、撮像装置により入力された画像のうちの少なくとも1つを参照画像として入力する参照画像入力ステップと、基準点から所定の距離だけ離れた位置の被写体を撮像して得られる基準画像および参照画像を用いて、基準画像と、射影変換行列に基づく変換後の参照画像との輝度誤差が最小となるような射影変換を行う射影変換行列を算出する射影変換行列算出ステップと、基準画像上の点を、射影変換行列を用いて変換し、その点に対応する参照画像上の点を算出する点算出ステップと、点算出手段によって算出される参照画像上の点から生成されるエピポーララインに応じて、対象点までの距離を算出する算出ステップとを備えることを特徴とする。
【0019】
請求項5に記載の画像処理装置は、撮像装置により撮像された画像のうちの少なくとも1つを基準画像として入力する基準画像入力手段と、撮像装置により入力された画像のうちの少なくとも1つを参照画像として入力する参照画像入力手段と、参照画像上の点から生成されるエピポーララインに応じて、対象点までの距離を算出する算出手段を備えることを特徴とし、エピポーララインは、基準点から所定の距離だけ離れた位置の被写体を撮像して得られる基準画像および参照画像を用いて、基準画像と、射影変換行列に基づく変換後の参照画像との輝度誤差が最小となるような射影変換を行う射影変換行列を算出し、基準画像上の点を、射影変換行列を用いて変換し、その点に対応する参照画像上の点を算出し、その参照画像上の点から生成されたものである。
【0020】
請求項1に記載の画像処理装置、および請求項4に記載の画像処理方法においては、撮像装置により撮像された画像のうちの少なくとも1つを基準画像として入力し、撮像装置により入力された画像のうちの少なくとも1つを参照画像として入力し、基準点から所定の距離だけ離れた位置の被写体を撮像して得られる基準画像および参照画像を用いて、基準画像と、射影変換行列に基づく変換後の参照画像との輝度誤差が最小となるような射影変換を行う射影変換行列を算出し、基準画像上の点を、射影変換行列を用いて変換し、その点に対応する参照画像上の点を算出し、点算出手段によって算出される参照画像上の点から生成されるエピポーララインに応じて、対象点までの距離を算出する。
請求項5に記載の画像処理装置においては、撮像装置により撮像された画像のうちの少なくとも1つを基準画像として入力し、撮像装置により入力された画像のうちの少なくとも1つを参照画像として入力し、参照画像上の点から生成されるエピポーララインに応じて、対象点までの距離を算出し、エピポーララインは、基準点から所定の距離だけ離れた位置の被写体を撮像して得られる基準画像および参照画像を用いて、基準画像と、射影変換行列に基づく変換後の参照画像との輝度誤差が最小となるような射影変換を行う射影変換行列を算出し、基準画像上の点を、射影変換行列を用いて変換し、その点に対応する参照画像上の点を算出し、その参照画像上の点から生成される。
【0021】
【発明の実施の形態】
図1は、本発明の実施の形態の構成例について説明する図である。この図において、ワークステーション10は、CPU10a(変換手段、算定手段、算出手段)、ROM10b、RAM10c、および、IF10d(基準画像入力手段、参照画像入力手段)により構成されており、基準カメラ30および参照カメラ31から出力された画像信号に対して所定の処理を施すようになされている。
【0022】
CPU10aは、装置の各部を制御するとともに、プログラムに応じて所定の演算を行うようになされている。ROM10bは、CPU10aが実行するプログラムや各種データなどを格納している。RAM10cは、CPU10aが各種処理を実行する際の演算途中のデータやプログラムなどを格納するようになされている。IF10dは、外部装置との間でデータを授受する場合において、データの表現形式を適宜変換するようになされている。
【0023】
CRTモニタ20は、ワークステーション10から出力された画像を表示出力するようになされている。HDD21は、基準カメラ30および参照カメラ31から出力された画像信号や各種プログラム等を記録または再生するようになされている。
【0024】
基準カメラ30と参照カメラ31は、被写体の光画像を対応する電気信号(画像信号)に変換して出力するようになされている。
【0025】
なお、複数の参照カメラを設け、その中から所望の画像のみを選択して用いるようにしてもよい。
【0026】
以下では、以上の実施の形態の動作について説明する前に、本実施の形態の動作原理について説明する。
【0027】
図2は、本発明の動作原理を説明する図である。
【0028】
本発明では、射影変換を用いて、参照画像を基準画像に変換した後、双方の画像の対応する位置から対象点までの距離を算出するようになされている。
【0029】
即ち、3次元空間に置かれた平面を2台のカメラ(ステレオペアカメラ)で観察した場合、対応点のカメラ座標は射影変換により相互に変換可能である(「金谷,“画像理解,”森北出版,1990」参照)。つまり、図2に示すように、3次元空間に置かれた平面上の点Pが基準カメラ30の画像(以下、基準画像と適宜略記する)でnbに観察され、参照カメラ31の画像(以下、参照画像と適宜略記する)でnrに観察されたとすると、nbからnrへの変換を3×3の射影変換行列をHとすると、以下のように示すことができる。
【0030】
【数1】
【0031】
ここでは、射影幾何における斉次座標系を用いているので、画像平面上の2次元の点は(x,y,w)と表され、画像面上の直交座標系では(x/w,y/w)と表される。従って、式(1)は、以下のように表すことができる。
【0032】
【数2】
【0033】
また、画像座標では、射影変換は以下のように表すことができる。
【0034】
【数3】
【0035】
【数4】
【0036】
ここで、iは、画像を構成する画素の番号を示しており、例えば、1画面が640×480個の画素から構成されている画像では、iは0乃至640×480の値を取る。
【0037】
射影変換行列Hは、m0乃至m8の合計9個のパラメータより構成されている。しかしながら、スケール因子に自由度が残るので、自由度は8となる。また、射影変換行列Hは、カメラの内部パラメータ、外部パラメータ、および、平面の方程式を暗黙的に含んだ行列である。
【0038】
図3は、射影変換を施す対象となるテキスチャとカメラとの関係を示す図である。この図においては、基準点(所定の位置に選んでよい)からある距離Z0だけ離れた位置に設置した1枚の平面を、相互に位置関係が固定された複数のカメラにより撮像するようになされている。なお、平面のカメラ側の面には、所定のテキスチャが形成されている。
【0039】
中央のカメラを基準カメラ、その他を参照カメラとし、参照カメラのうちの何れか1つの画像と、基準カメラの画像とを組み合わせてステレオペアを形成する。
【0040】
このとき、基準カメラの画像(基準画像)と、例えば、右端の参照カメラの画像(参照画像)は、図4(A)のようになる。
【0041】
このとき、参照画像に対して所定の射影変換を施し、これらの画像間の輝度の誤差が最初となるような射影変換行列Hを算出する。このような射影変換行列Hを求めることにより、基準画像の任意の点に対応する対応点を参照画像上から検索することが可能となる。なお、本実施の形態においては、変換後の参照画像と、基準画像とが正確に一致する射影変換行列Hを求める方法(画像合わせ込み方法)としては、Levenberg-Marquardt最小化法(以下、L−M法と略記する)を用いている。以下にその詳細について説明する。
【0042】
基準画像をI、参照画像をI’とし、基準画像I上の座標x,yにおける第i番目の画素をI(xi,yi)、また、参照画像I’上の座標x’,y’における第i番目の画素をI’(x’i,y’i)とする。このとき、第i番目の画素の輝度誤差をeiとすると、画像全体の輝度誤差Eは、次の式(5)により表すことができる。
【0043】
【数5】
【0044】
このEを最小化する射影変換行列を求めれば、画像の合わせ込み、即ち、基準画像と参照画像との関係式を導出することができる。
【0045】
即ち、画像全体の輝度誤差Eは、未知パラメータ{m0,m1,・・・,m7}によるeiの偏微分を用いて導出する。前述したように、射影行列Hの自由度は8であるから、ここではm8=1とする。すると、第k番目のパラメータmkによるeiの偏微分は、以下の式により表すことができる。
【0046】
【数6】
【0047】
この式を、それぞれの未知パラメータにより実際に偏微分を行ったものを以下の式(7)乃至(14)に示す。
【0048】
【数7】
【0049】
【数8】
【0050】
【数9】
【0051】
【数10】
【0052】
【数11】
【0053】
【数12】
【0054】
【数13】
【0055】
【数14】
【0056】
但し、Di=m6・xi+m7・yi+1において、( I’/ x’, I’/y’)は、I’の(x’i,y’i)における輝度値の勾配(Gradient)である。これらの偏微分から、L−M法では近似Hessian Matrix A(以下、行列Aと略記する)と、Weighted gradient vector b(以下、ベクトルbと略記する)を計算する。なお、行列Aとベクトルbのそれぞれの構成要素は、次のように表すことができる。
【0057】
【数15】
【0058】
【数16】
【0059】
そして、画像全体の輝度誤差Eの値が減少したか否かに応じて、行列Aとベクトルbを用いた次式に示すΔmだけ未知パラメータmの値を更新する。
【0060】
【数17】
【0061】
ここで、λは、time-varying stabilization parameterである。
【0062】
以上のような処理を誤差の変化がなくなる(実際には、誤差の減少分が所定の閾値以下になる)まで繰り返すことにより、射影変換行列Hの未知のパラメータm0乃至m7を求めることができる。
【0063】
以上のようにして求めた射影変換行列Hを用いて、次に、エピポーララインを求める。
【0064】
図5は、エピポーララインを求める方法を説明する図である。射影変換行列H0が決まると、距離Z0における基準画像上の点nbに対応する参照画像上の点nr 0が決定できる。点nbは任意であるので、その結果、基準画像上の全ての点に対応する対応点を算出することができる。
【0065】
同様にして、観察する平面を距離Z1の位置に、距離Z0の位置に置かれていた平面と平行になるように置いた場合の射影変換行列H1を求める。
【0066】
求めた射影変換行列H0,H1により、基準画像上の観察点nbは、対象が距離Z0または距離Z1にある場合には、参照画像上のnr0,nr1にそれぞれ射影されることが分かる。従って、参照画像上の2点nr0,nr1を結んだ線分がエピポーララインとなる。
【0067】
ところで、実際の対象物の距離を測定する場合においては、基準画像上の所定の点に対応する点(対応点)をエピポーラライン上で探索し、検出された対応点の位置(視差)を、3次元空間における実際の距離に変換する必要がある。しかし、本実施の形態においては射影変換を用いているので、視差と実際の距離とは正比例しない。従って、この視差を距離に変換する変換式を求めるために、本実施の形態においては、距離Z0,Z1とは異なる距離Z2に前述の平面を再度設置してnr2を求め、これらnr0,nr1,nr2から複比を用いて視差と距離の変換を行うようにしている。
【0068】
以下では、複比について説明する。
【0069】
図6は、複比を説明するための図である。この図に示すように、3次元空間内の線分Lが画像面上の線分L’に投影されているとする。このとき、線分L上の4点A,B,C,Dは、それぞれ、線分L’上のA’,B’,C’,D’に投影されているものとする。また、これらの線分L,L’を観察する視点Oと、線分L,L’とは同一平面上に配置されている。換言すると、点A,B,C,D,A’,B’,C’,D’と視点Oとは、同一の平面上に配置されている。これらの平面上における位置関係を書き直すと、図7のようになる。
【0070】
この図において、OA=a,OB=b,OC=c,OD=dとおき、更に AOC=α, BOC=β, AOD=γ, BOD=δとおくと、これらの間の関係は、以下の式により表すことができる。
【0071】
【数18】
【0072】
【数19】
【0073】
【数20】
【0074】
従って、式(19)と式(20)を式(18)に代入すると、以下の式を得る。
【0075】
【数21】
【0076】
同様の計算をADとBDに対して施すと、以下の式を得る。
【0077】
【数22】
【0078】
式(21)を式(22)により除算することにより、以下の式(23)を得る。
【0079】
【数23】
【0080】
以上の式(18)乃至式(23)の計算と同様の計算を、A’C’,B’C’,A’D’,B’D’に対して行うことにより、以下の式を得る。
【0081】
【数24】
【0082】
これら、式(23)と式(24)とから、以下の式を得る。
【0083】
【数25】
【0084】
以上の複比を用いて、以下のような手順により、所望の対象点の3次元空間内における基準点からの距離を求める。
【0085】
いま、図7において、線分Lを基準画像上の点nbの視線に対応させ、また、線分L’をエピポーララインに対応させるとする。更に、点A,B,Dをそれぞれ距離Z0,Z2,Z1の3次元空間内の点に対応させ、また、点A’,B’,D’を、射影変換行列H0,H2,H1でそれぞれ求めることができる参照画像上の点nr0,nr2,nr1に対応させるとする。これらの関係を改めて作図しなおしたのが図8である。
【0086】
いま、距離Zsだけ離れた位置に、対象点Cが配置されているとする。このとき、エピポーララインL’上を探索して得られた対応点がnrsであるとすると、式(25)の各線分の値は、以下のようになる。
【0087】
【数26】
【0088】
従って、式(26)を式(25)に代入することにより、基準点から対象点Cまでの距離Z3を求めることができる。ところで、実際の距離は線分Lに沿ったものではないが、別の線分に正射影されているので、各距離の比は正比例の関係となるので大きな問題は生じない。例えば、図8においては、ADは光軸に正射影したAcDcの長さである。
【0089】
また、以上の例では、AD間の内挿の場合(対象点CがADの内側に存在する場合)について説明したが、外挿の場合(対象点がADの外側に存在する場合)においても可能であることはいうまでもない。
【0090】
次に、以上の説明を踏まえたうえで、図1に示す本発明の実施の形態の動作について図8に示すフローチャートを参照して説明する。
【0091】
この処理は、図1に示す実施の形態において実行される処理の一例を説明するフローチャートである。この処理が実行されると、ステップS1において、CPU10aは、距離Z0における基準画像と参照画像を基準カメラ30と参照カメラ31からそれぞれ入力する。即ち、CPU10aは、図8に示す距離Z0の位置に、基準カメラ30の光軸と垂直となるように配置された平面を、基準カメラ30と参照カメラ31により撮影させ、得られた画像をIF10dを介して読み込む。
【0092】
ステップS2では、前述した式(5)乃至(17)を用いて、得られた基準カメラ30の画像と、参照カメラ31の画像を処理し、射影変換行列H0を求める。なお、この処理の詳細については、図10を参照して後述する。
【0093】
ステップS3では、CPU10aは、図8に示す距離Z1の位置に、基準カメラ30の光軸と垂直となるように配置された平面を、基準カメラ30と参照カメラ31により撮影させ、得られた画像をIF10dを介して読み込む。
【0094】
ステップS4では、射影変換行列H1が算出される。そして、ステップS5に進む。
【0095】
ステップS5では、CPU10aは、図8に示す距離Z2の位置に、基準カメラ30の光軸と垂直となるように配置された平面を、基準カメラ30と参照カメラ31により撮影させ、得られた画像をIF10dを介して読み込む。
【0096】
そして、ステップS6において、射影変換行列H2を算出し、処理を終了する(エンド)。
【0097】
次に、図10を参照して、ステップS2,S4,S6に示す射影変換行列を求める処理の詳細について説明する。
【0098】
この処理が実行(コール)されると、CPU10aは、ステップS19において、変数tを値0に初期設定する。そして、ステップS20において、変数jと変数kを値0にそれぞれ初期設定し、また、変数λを値1に初期設定する。そして、ステップS21に進む。
【0099】
ステップS21では、CPU10aは、変数iと変数Eを値0にそれぞれ初期設定する。そして、ステップS22に進む。
【0100】
ステップS22では、CPU10aは、第i番目の画素の輝度誤差eiを算出する。即ち、式(5)に示すように、参照画像I’の第i番目の画素の値(画素値)から、基準画像Iの第i番目の画素値を減算してeiを求める。
【0101】
続くステップS23では、CPU10aは、参照画像I’をxとyにより偏微分した結果である( I’/ x)と( I’/ y)をそれぞれ求める。そして、ステップS24に進む。
【0102】
ステップS24では、CPU10aは( ei/ mk)(k=0,1,・・・,7)を算出する。即ち、CPU10aは、ステップS24において算出した(I’/ x)と( I’/ y)を、式(7)乃至式(14)に代入することにより、 ei/ mkを算出する。
【0103】
続くステップS25では、CPU10aは、マトリクスAとベクトルbとをそれぞれ計算する。即ち、CPU10aは、式(15)と式(16)に応じて、式(7)乃至式(14)の結果を累積加算する。そして、ステップS26に進む。
【0104】
ステップS26では、CPU10aは、変数Eに対して、第i番目の画素の輝度誤差を2乗した値を加算する。その結果、変数Eには各画素の輝度誤差を2乗した値が累積加算されていくことになるので、最終的には変数Eには全画素の輝度誤差の2乗和が格納されることになる。
【0105】
ステップS27では、CPU10aは、変数iの値を1だけインクリメントし、ステップS28に進む。
【0106】
ステップS28では、CPU10aは、変数iの値が画素の総数である640×480と等しくなったか否かを判定する。その結果、変数iの値が640×480と等しくない(NO)と判定した場合には、ステップS22に戻り、前述の場合と同様の処理を繰り返す。また、変数iの値が640×480と等しい(YES)と判定した場合にはステップS29に進む。
【0107】
ステップS29では、CPU10aは、行列Aとベクトルbを含む方程式(A+λI)Δm=bを解き、Δmを求める。ここで、λはtime-varying stabilizing parameterである。そして、ステップS30に進み、現在のm(t)の値に対して、Δmを加算して、新たなm(t+1)を生成し、ステップS31に進む。
【0108】
ステップS31では、CPU10aは、ステップS30において得られたm(t+1)を用いて、画像全体の輝度誤差E’を算出する。そして、ステップS32に進み、E’がEよりも小さいか否かを判定する。即ち、新たなm(t+1)により生成された画素全体の輝度誤差E’が、前回の画素全体の輝度誤差Eよりも小さいか否かを判定する。その結果、E’がEよりも小さい(YES)と判定した場合には、ステップS36に進み、変数tの値を1だけインクリメントし、ステップS20に戻り、前述の場合と同様の処理を繰り返す。また、E’がE以上である(NO)と判定した場合にはステップS33に進む。
【0109】
ステップS33では、CPU10aは、変数jの値を1だけインクリメントし、ステップS34に進む。ステップS34では、CPU10aは、変数jの値が30であるか否かを判定する。その結果、変数jの値が30である(YES)と判定した場合には元の処理に復帰する。また、変数jの値が30ではない(NO)と判定した場合には、ステップS35に進む。
【0110】
ステップS35では、CPU10aは、変数λの値を10倍して、ステップS29に戻り、前述の場合と同様の処理を繰り返すことになる。
【0111】
以上の処理により、射影変換行列Hを求めることができる。
【0112】
なお、以上の実施の形態においては、画像全体に対して処理を行う場合について説明したが、例えば、画像の一部の領域のみに対して前述の処理を行うことも可能である。また、変換の結果、対象となるテキスチャが画面からはみ出した場合には、処理の繰り返し回数が全画素数よりも少ない回数に設定される。
【0113】
次に、このようにして得られた射影変換行列H0乃至H2を用いて、対象点までの距離を求める処理について図11を参照して以下に説明する。
【0114】
図11は、図8に示す対象点Cまでの距離を測定するための処理の一例を説明するフローチャートである。
【0115】
この処理が実行されると、ステップS50において、CPU10aは、基準画像上の対象点nb(画像上の対象点C)を入力する。
【0116】
続くステップS51では、CPU10aは、図9の処理において求めた射影変換行列H0乃至H2を用いて、参照画像上の対応点nr0乃至nr2を算出する。そして、ステップS52に進む。
【0117】
ステップS52では、CPU10aは、ステップS51において求めたnr0とnr1とを直線で結ぶことにより、エピポーララインを生成する。即ち、CPU10aは、エピポーララインが通過する画素のアドレス値を生成し、RAM10cに格納する。
【0118】
ステップS53では、CPU10aは、基準カメラ30から出力される画像をRAM10cに一旦格納し、格納されている画像の点nbの近傍の画素群を抽出する。
【0119】
続くステップS54では、CPU10aは、抽出した画素群をテンプレートとし、マッチ度の高い点nrsをエピポーララインに沿って検索する。即ち、CPU10aは、ステップS52において生成され、RAM10cに格納されているエピポーララインに対応するアドレスに応じて、参照カメラ31から出力される画像から画素群を読み出し、テンプレートと照合する。そして、最も近しい(誤差の少ない)画素群が存在する領域の中心を点nrsとする。
【0120】
ステップS55では、CPU10aは、ステップS54で求めたnrsと、nr0乃至nr2、および、Z0乃至Z2から、複比を用いて、nrsに対応する距離Zsを算出する。即ち、CPU10aは、式(25)および式(26)に対して、以上の処理により得られたnrsと、nr0乃至nr2、および、Z0乃至Z2を代入し、点nrsに対応する距離Zsを算出する。そして、処理を終了する(エンド)。
【0121】
このような処理により、対象点Cまでの距離Zsを算出することができる。
【0122】
以上の実施の形態によれば、特殊な校正パターンなどを必要としないため簡便な装置によりキャリブレーションを行うことが可能となる。また、画像合わせ込みを行うため、各カメラの光軸が任意の方向を向いている場合や、各カメラの間に輻輳がある場合においても、距離の計測が可能となる。
【0123】
なお、明細書中において、伝送媒体は、FD,CD−ROMなどの情報記録媒体の他、インターネット、ディジタル衛星などのネットワーク伝送媒体も含まれる。
【0124】
【発明の効果】
請求項1に記載の画像処理装置および請求項4に記載の画像処理方法によれば、撮像装置により撮像された画像のうちの少なくとも1つを基準画像として入力し、撮像装置により入力された画像のうちの少なくとも1つを参照画像として入力し、基準点から所定の距離だけ離れた位置の被写体を撮像して得られる基準画像および参照画像を用いて、基準画像と、射影変換行列に基づく変換後の参照画像との輝度誤差が最小となるような射影変換を行う射影変換行列を算出し、基準画像上の点を、射影変換行列を用いて変換し、その点に対応する参照画像上の点を算出し、点算出手段によって算出される参照画像上の点から生成されるエピポーララインに応じて、対象点までの距離を算出するようにしたので、キャリブレーションに必要な時間と手間を短縮することが可能となる。
請求項5に記載の画像処理装置によれば、撮像装置により撮像された画像のうちの少なくとも1つを基準画像として入力し、撮像装置により入力された画像のうちの少なくとも1つを参照画像として入力し、参照画像上の点から生成されるエピポーララインに応じて、対象点までの距離を算出し、エピポーララインは、基準点から所定の距離だけ離れた位置の被写体を撮像して得られる基準画像および参照画像を用いて、基準画像と、射影変換行列に基づく変換後の参照画像との輝度誤差が最小となるような射影変換を行う射影変換行列を算出し、基準画像上の点を、射影変換行列を用いて変換し、その点に対応する参照画像上の点を算出し、その参照画像上の点から生成されるようにしたので、必要な時間と手間を短縮するようにしたキャリブレーションで、対象点までの距離を求めることができる。
【図面の簡単な説明】
【図1】本実施の形態の構成例を示すブロック図である。
【図2】基準カメラと参照カメラの画像面に平面上の対象点Pが観察される様子を示す図である。
【図3】基準カメラ、参照カメラ、および、平面の配置例を示す図である。
【図4】参照カメラの画像が射影変換され、基準カメラの画像と重ね合わされた様子を示す図である。
【図5】対象物が距離Z0とZ1に存在する場合に参照カメラの画像面に観察される観察点nr0とnr1を示す図である。
【図6】線分Lが画像面に投影されている場合の様子を説明する図である。
【図7】図6に示す線分L、線分L’、および、視点Oを1つの平面上に表した図である。
【図8】図7に示す図を本実施の形態に対応させて書き直した場合の図である。
【図9】射影変換行列H0乃至H2を求める処理の一例を説明するフローチャートである。
【図10】図8に示すステップS2,4,6の処理の詳細を説明するフローチャートである。
【図11】対象点Cまでの距離を算出する処理の一例を説明するフローチャートである。
【図12】基準カメラと参照カメラの画像、対象点P、および、エピポーララインの関係を示す図である。
【符号の説明】
10a CPU(変換手段、算定手段、算出手段), 10d IF(基準画像入力手段、参照画像入力手段)
Claims (5)
- 複数の撮像装置によって撮像された画像に対して所定の画像処理を施す画像処理装置において、
前記撮像装置により撮像された画像のうちの少なくとも1つを基準画像として入力する基準画像入力手段と、
前記撮像装置により入力された画像のうちの少なくとも1つを参照画像として入力する参照画像入力手段と、
基準点から所定の距離だけ離れた位置の被写体を撮像して得られる前記基準画像および前記参照画像を用いて、前記基準画像と、射影変換行列に基づく変換後の前記参照画像との輝度誤差が最小となるような射影変換を行う前記射影変換行列を算出する射影変換行列算出手段と、
前記基準画像上の点を、前記射影変換行列を用いて変換し、その点に対応する前記参照画像上の点を算出する点算出手段と、
前記点算出手段によって算出される前記参照画像上の点から生成されるエピポーララインに応じて、対象点までの距離を算出する算出手段と
を備えることを特徴とする画像処理装置。 - 前記算出手段は、前記射影変換行列の算出に用いられた前記基準画像とは別の基準画像上の前記対象点までの距離を算出する
ことを特徴とする請求項1に記載の画像処理装置。 - 前記算出手段は、前記エピポーララインに沿って検索された、前記基準画像上の対称点に対応する前記参照画像上の対応点に基づいて、前記対象点までの距離を算出する
ことを特徴とする請求項1に記載の画像処理装置。 - 複数の撮像装置によって撮像された画像に対して所定の画像処理を施す画像処理方法において、
前記撮像装置により撮像された画像のうちの少なくとも1つを基準画像として入力する基準画像入力ステップと、
前記撮像装置により入力された画像のうちの少なくとも1つを参照画像として入力する参照画像入力ステップと、
基準点から所定の距離だけ離れた位置の被写体を撮像して得られる前記基準画像および前記参照画像を用いて、前記基準画像と、射影変換行列に基づく変換後の前記参照画像との輝度誤差が最小となるような射影変換を行う前記射影変換行列を算出する射影変換行列算出ステップと、
前記基準画像上の点を、前記射影変換行列を用いて変換し、その点に対応する前記参照画像上の点を算出する点算出ステップと、
前記点算出手段によって算出される前記参照画像上の点から生成されるエピポーララインに応じて、対象点までの距離を算出する算出ステップと
を備えることを特徴とする画像処理方法。 - 複数の撮像装置によって撮像された画像に対して所定の画像処理を施す画像処理装置において、
前記撮像装置により撮像された画像のうちの少なくとも1つを基準画像として入力する基準画像入力手段と、
前記撮像装置により入力された画像のうちの少なくとも1つを参照画像として入力する参照画像入力手段と、
前記参照画像上の点から生成されるエピポーララインに応じて、対象点までの距離を算出する算出手段
を備え、
前記エピポーララインは、
基準点から所定の距離だけ離れた位置の被写体を撮像して得られる前記基準画像および前記参照画像を用いて、前記基準画像と、射影変換行列に基づく変換後の前記参照画像と の輝度誤差が最小となるような射影変換を行う前記射影変換行列を算出し、
前記基準画像上の点を、前記射影変換行列を用いて変換し、その点に対応する前記参照画像上の点を算出し、その参照画像上の点から生成されたものである。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20794897A JP4006657B2 (ja) | 1997-08-01 | 1997-08-01 | 画像処理装置および画像処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20794897A JP4006657B2 (ja) | 1997-08-01 | 1997-08-01 | 画像処理装置および画像処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1153548A JPH1153548A (ja) | 1999-02-26 |
JP4006657B2 true JP4006657B2 (ja) | 2007-11-14 |
Family
ID=16548199
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20794897A Expired - Fee Related JP4006657B2 (ja) | 1997-08-01 | 1997-08-01 | 画像処理装置および画像処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4006657B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180073929A1 (en) * | 2016-09-13 | 2018-03-15 | Safe-Fire Technology LLC | System and Method for Measuring Coal Burner Flame Temperature Profile Using Optical Device |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4524514B2 (ja) * | 1999-08-05 | 2010-08-18 | ソニー株式会社 | 画像処理装置、画像処理方法、および記録媒体 |
JP4501239B2 (ja) * | 2000-07-13 | 2010-07-14 | ソニー株式会社 | カメラ・キャリブレーション装置及び方法、並びに、記憶媒体 |
GB2372659A (en) * | 2001-02-23 | 2002-08-28 | Sharp Kk | A method of rectifying a stereoscopic image |
JP3945430B2 (ja) | 2003-03-19 | 2007-07-18 | コニカミノルタホールディングス株式会社 | 画像による対象物の計測方法および撮像装置 |
JP4540322B2 (ja) * | 2003-09-29 | 2010-09-08 | Hoya株式会社 | 画像間対応点検出装置および画像間対応点検出方法 |
JP2006250722A (ja) * | 2005-03-10 | 2006-09-21 | Toshiba Corp | キャリブレーション装置及びその方法、キャリブレーション用プログラム |
JP5210203B2 (ja) * | 2009-02-25 | 2013-06-12 | ローランドディー.ジー.株式会社 | 画像の差分による高精度ステレオカメラキャリブレーション |
CN105719309B (zh) * | 2016-01-27 | 2018-08-14 | 大连理工大学 | 一种基于射影不变量的直线匹配方法 |
US10909708B2 (en) * | 2016-12-09 | 2021-02-02 | Hand Held Products, Inc. | Calibrating a dimensioner using ratios of measurable parameters of optic ally-perceptible geometric elements |
CN109115185B (zh) * | 2018-07-14 | 2021-04-02 | 武汉华宇世纪科技发展有限公司 | 近景摄影测量方法 |
RU2769453C1 (ru) * | 2021-07-19 | 2022-03-31 | Федеральное государственное бюджетное образовательное учреждение высшего образования "Рязанский государственный радиотехнический университет имени В.Ф. Уткина" | Способ измерения дальности до вагона на прямолинейном участке железнодорожного пути |
-
1997
- 1997-08-01 JP JP20794897A patent/JP4006657B2/ja not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180073929A1 (en) * | 2016-09-13 | 2018-03-15 | Safe-Fire Technology LLC | System and Method for Measuring Coal Burner Flame Temperature Profile Using Optical Device |
US10378957B2 (en) * | 2016-09-13 | 2019-08-13 | Safe-Fire Technology LLC | System and method for measuring coal burner flame temperature profile using optical device |
Also Published As
Publication number | Publication date |
---|---|
JPH1153548A (ja) | 1999-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200096317A1 (en) | Three-dimensional measurement apparatus, processing method, and non-transitory computer-readable storage medium | |
US6816187B1 (en) | Camera calibration apparatus and method, image processing apparatus and method, program providing medium, and camera | |
Raposo et al. | Fast and accurate calibration of a kinect sensor | |
JP4006657B2 (ja) | 画像処理装置および画像処理方法 | |
JP5210203B2 (ja) | 画像の差分による高精度ステレオカメラキャリブレーション | |
GB2372659A (en) | A method of rectifying a stereoscopic image | |
US20110064298A1 (en) | Apparatus for evaluating images from a multi camera system, multi camera system and process for evaluating | |
JP2011086111A (ja) | 撮像装置校正方法及び画像合成装置 | |
JP4887376B2 (ja) | ステレオビジョンにおいて密な視差場を求める方法 | |
JPH10307352A (ja) | ステレオカメラの調整装置 | |
CN107610183A (zh) | 新型条纹投影相位高度转换映射模型及其标定方法 | |
EP3332387A1 (en) | Method for calibration of a stereo camera | |
CN110738608A (zh) | 一种平面图像校正方法及*** | |
CN113048888A (zh) | 基于双目视觉的远距离三维位移测量方法及*** | |
JP4102386B2 (ja) | 3次元情報復元装置 | |
JP3842988B2 (ja) | 両眼立体視によって物体の3次元情報を計測する画像処理装置およびその方法又は計測のプログラムを記録した記録媒体 | |
JP2020190411A (ja) | 撮像装置、画像処理装置、画像処理方法、撮像装置の校正方法、ロボット装置、ロボット装置を用いた物品の製造方法、制御プログラムおよび記録媒体 | |
JPH10122819A (ja) | キャリブレーション方法およびその装置 | |
JPH1153549A (ja) | 画像処理装置、画像処理方法、および、伝送媒体 | |
WO2021020062A1 (ja) | 三次元変位計測方法及び三次元変位計測装置 | |
WO2019087253A1 (ja) | ステレオカメラのキャリブレーション方法 | |
JP5925109B2 (ja) | 画像処理装置、その制御方法、および制御プログラム | |
JP5901379B2 (ja) | 撮像装置校正方法および画像合成装置 | |
CN115880369A (zh) | 线结构光3d相机和线阵相机联合标定的装置、***及方法 | |
CN110232715B (zh) | 一种多深度相机自校准的方法、装置及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040428 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070223 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070301 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070501 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070803 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070816 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100907 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100907 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110907 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120907 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |