最初に、本発明の測距カメラにおいて用いられている、被写体像間の像倍比に基づいて被写体までの距離を算出するための原理について説明する。なお、各図において、同様または類似した機能を発揮するコンポーネントには、同一の参照符号を付す。
光学系により形成される被写体像の倍率mODは、光学系の前側主点(前側主面)から被写体までの距離(被写体距離)a、光学系の後側主点(後側主面)から被写体像の結像位置までの距離bOD、および光学系の焦点距離fによって、レンズの公式から下記式(1)のように表すことができる。
また、被写体像のサイズYODは、被写体像の倍率mODと、被写体の実際のサイズszから、下記式(2)のように表すことができる。
センサー等の撮像素子の撮像面が被写体像の結像位置にある場合、すなわち、ベストピントである場合、被写体像のサイズYODは、上記式(2)で表すことができる。光学系がオートフォーカス機能を有しており、常にベストピントで撮像を行う場合には、上記式(2)を用いて被写体像のサイズYODを求めることができる。
しかしながら、光学系がオートフォーカス機能を有さない固定焦点系であり、センサー等の撮像素子の撮像面が被写体像の結像位置にない場合、すなわち、デフォーカスが存在する場合、撮像素子の撮像面上に形成される被写体像のサイズYFDを求めるためには、デフォーカス量、すなわち、被写体像の結像位置と撮像素子の撮像面の位置の奥行方向(光軸方向)の差(シフト量)を考慮する必要がある。
図1に示すように、光学系の射出瞳から、被写体が無限遠に存在する場合の被写体像の結像位置までの距離をEPとし、光学系の射出瞳から、被写体が任意の距離aに存在する場合の被写体像の結像位置までの距離をEPODとし、光学系の射出瞳から撮像素子の撮像面までの距離(フォーカス距離:Focus Distance)をEPFDとする。また、光学系の後側主点から、被写体が任意の距離aに存在する場合の被写体像の結像位置までの距離をbODとし、光学系の後側主点から撮像素子の撮像面までの距離をbFDとする。なお、図示の形態では、説明の簡略化のため、光学系は、光学系の後側主点が、光学系の中心位置にあるものとして概略的に示されている。
光学系の後側主点から、任意の距離aに被写体が存在する場合の被写体像の結像位置までの距離bODは、レンズの公式から下記式(3)によって求めることができる。
したがって、焦点距離fと距離bODとの差ΔbODは、下記式(4)によって求めることができる。
また、光学系の後側主点から撮像素子の撮像面までの距離bFDは、撮像素子の撮像面で被写体像がベストピントとなる場合の光学系の前側主点から被写体までの距離aFDを用いて、レンズの公式から下記式(5)によって求めることができる。
よって、焦点距離fと距離bFDとの差ΔbFDは、下記式(6)によって求めることができる。
また、図1から明らかなように、光軸と光学系の射出瞳との交点を頂点の一つとし、任意の距離aに被写体が存在する場合の被写体像の結像位置における被写体像のサイズYODを1つの辺とする直角三角形と、光軸と光学系の射出瞳との交点を頂点の一つとし、撮像素子の撮像面における被写体像のサイズYFDを1つの辺とする直角三角形とは相似関係にある。そのため、相似関係から、EPOD:EPFD=YOD:YFDが成立し、下記式(7)から撮像素子の撮像面における被写体像のサイズYFDを求めることができる。
上記式(7)から明らかなように、撮像素子の撮像面における被写体像のサイズYFDは、被写体の実際のサイズsz、光学系の焦点距離f、光学系の射出瞳から、被写体が無限遠に存在する場合の被写体像の結像位置までの距離EP、光学系の射出瞳から被写体までの距離(被写体距離)a、および撮像素子の撮像面で被写体像がベストピントとなる場合の光学系の前側主点から被写体までの距離(フォーカス距離)aFDの関数として表すことができる。
次に、図2に示すように、同じ被写体100を、2つの撮像系IS1、IS2を用いて撮像した場合を想定する。第1の撮像系IS1は、被写体100からの光を集光し、第1の被写体像を形成する第1の光学系OS1と、第1の光学系OS1によって形成された第1の被写体像を撮像するための第1の撮像素子S1とを有している。第2の撮像系IS2は、被写体100からの光を集光し、第2の被写体像を形成する第2の光学系OS2と、第2の光学系OS2によって形成された第2の被写体像を撮像するための第2の撮像素子S2とを有している。なお、第1の撮像素子S1の画素サイズ(画素1つ当たりのサイズ)はPS1であり、第2の撮像素子S2の画素サイズはPS2である。
また、図2から明らかなように、第1の撮像系IS1の第1の光学系OS1の光軸と、第2の撮像系IS2の第2の光学系OS2の光軸は、平行であるが一致していない。また、第2の光学系OS2は、第1の光学系OS1の光軸方向に対して垂直な方向に、距離Pだけ離間して配置されている。
なお、図示の構成では、第1の光学系OS1の光軸と第2の光学系OS2の光軸は平行であるが、本発明はこれに限られない。例えば、第1の光学系OS1の光軸の角度(3次元極座標の角度パラメーターθ、φ)および第2の光学系OS2の光軸の角度が互いに異なるように、第1の光学系OS1および第2の光学系OS2が配置されていてもよい。しかしながら、説明の簡略化のため、第1の光学系OS1および第2の光学系OS2は、図2に示すように、第1の光学系OS1の光軸と第2の光学系OS2の光軸が平行であるが一致せず、互いに距離Pだけ離間するよう、配置されているものとする。
第1の光学系OS1および第2の光学系OS2は、それぞれ焦点距離f1、f2を有する固定焦点の光学系である。第1の撮像系IS1が構成される際において、第1の光学系OS1の位置(レンズ位置)、すなわち、第1の光学系OS1と第1の撮像素子S1の離間距離は、任意の距離(フォーカス距離)aFD1にある被写体100の第1の被写体像が第1の撮像素子S1の撮像面上に形成される、すなわち、任意の距離aFD1にある被写体100がベストピントとなるように調整されている。同様に、第2の撮像系IS2が構成される際において、第2の光学系OS2の位置(レンズ位置)、すなわち、第2の光学系OS2と第2の撮像素子S2の離間距離は、任意の距離(フォーカス距離)aFD2にある被写体100の第2の被写体像が第2の撮像素子S2の撮像面上に形成される、すなわち、任意の距離aFD2にある被写体100がベストピントとなるように調整されている。
また、第1の光学系OS1の射出瞳から、被写体100が無限遠に存在する場合の第1の被写体像の結像位置までの距離はEP1であり、第2の光学系OS2の射出瞳から、被写体100が無限遠に存在する場合の第2の被写体像の結像位置までの距離はEP2である。
第1の光学系OS1および第2の光学系OS2は、第1の光学系OS1の前側主点(前側主面)と、第2の光学系OS2の前側主点(前側主面)との間に、奥行方向(光軸方向)の差(奥行視差)Dが存在するよう構成および配置されている。すなわち、第1の光学系OS1の前側主点から被写体100までの距離(被写体距離)をaとすると、第2の光学系OS2の前側主点から被写体100までの距離は、a+Dとなる。
図1を参照して説明した相似関係を利用することにより、第1の光学系OS1によって第1の撮像素子S1の撮像面上に形成される第1の被写体像の倍率m1は、下記式(8)で表すことができる。
ここで、EPOD1は、第1の光学系OS1の射出瞳から、距離aに被写体100が存在する場合の第1の被写体像の結像位置までの距離であり、EPFD1は、第1の光学系OS1の射出瞳から、第1の撮像素子S1の撮像面までの距離である。これら距離EPOD1および距離EPFD1の位置関係は、第1の撮像系IS1が構成される際において、任意の距離aFD1にある被写体100がベストピントとなるように第1の光学系OS1の位置(レンズ位置)を調整することにより決定される。また、ΔbOD1は、焦点距離f1と、第1の光学系OS1の後側主点から、距離aに被写体100が存在する場合の第1の被写体像の結像位置までの距離bOD1との差であり、ΔbFD1は、焦点距離f1と、第1の光学系OS1の後側主点から第1の撮像素子S1の撮像面までの距離bFD1との差であり、mOD1は、距離aに被写体100が存在する場合の第1の被写体像の結像位置における第1の被写体像の倍率である。
上記式(1)、(4)および(6)が第1の光学系OS1による結像にも適用できるので、上記式(8)は、下記式(9)で表すことができる。
ここで、aFD1は、第1の撮像素子S1の撮像面で第1の被写体像がベストピントとなる場合の第1の光学系OS1の前側主点から被写体100までの距離である。
同様に、第2の光学系OS2によって第2の撮像素子S2の撮像面上に形成される第2の被写体像の倍率m2は、下記式(10)で表すことができる。
ここで、EPOD2は、第2の光学系OS2の射出瞳から、距離a+Dに被写体100が存在する場合の第2の被写体像の結像位置までの距離であり、EPFD2は、第2の光学系OS2の射出瞳から第2の撮像素子S2の撮像面までの距離である。これら距離EPOD2および距離EPFD2の位置関係は、第2の撮像系IS2が構成される際において、任意の距離aFD2にある被写体100がベストピントとなるように第2の光学系OS2の位置(レンズ位置)を調整することにより決定される。また、ΔbOD2は、焦点距離f2と、第2の光学系OS2の後側主点から、距離a+Dに被写体100が存在する場合の第2の被写体像の結像位置までの距離bOD2との差であり、ΔbFD2は、焦点距離f2と、第2の光学系OS2の後側主点から第2の撮像素子S2の撮像面までの距離bFD2との差であり、mOD2は、距離a+Dに被写体100が存在する場合の第2の被写体像の結像位置における第2の被写体像の倍率であり、aFD2は、第2の撮像素子S2の撮像面で第2の被写体像がベストピントとなる場合の第2の光学系OS2の前側主点から被写体100までの距離である。
したがって、第1の光学系OS1によって第1の撮像素子S1の撮像面上に形成される第1の被写体像の倍率m1と、第2の光学系OS2によって第2の撮像素子S2の撮像面上に形成される第2の被写体像の倍率m2との像倍比MRは、下記式(11)で表すことができる。
ここで、Kは、係数であり、第1の撮像系IS1および第2の撮像系IS2の構成により決定される固定値f1、f2、EP1、EP2、aFD1、およびaFD2から構成される下記式(12)で表される。
上記式(11)から明らかなように、第1の光学系OS1によって第1の撮像素子S1の撮像面上に形成される第1の被写体像の倍率m1と、第2の光学系OS2によって第2の撮像素子S2の撮像面上に形成される第2の被写体像の倍率m2との像倍比MRは、被写体100から第1の光学系OS1の前側主点までの距離aに応じて変化することがわかる。
また、上記式(11)を距離aについて解くと、被写体100までの距離aについての一般式(13)を得ることができる。
上記式(13)中において、f1、f2、EP1、EP2、DおよびKは、第1の撮像系IS1および第2の撮像系IS2の構成および配置により決定される固定値なので、像倍比MRを得ることができれば、被写体100から第1の光学系OS1の前側主点までの距離aを算出することができる。
図3には、上記式(13)に基づいて算出された、第1の光学系OS1によって第1の撮像素子S1の撮像面上に形成される第1の被写体像の倍率m1と、第2の光学系OS2によって第2の撮像素子S2の撮像面上に形成される第2の被写体像の倍率m2との像倍比MRと、被写体100までの距離aとの関係の一例が示されている。図3から明らかなように、像倍比MRの値と、被写体100までの距離aとの間には、一対一関係が成立している。
一方、像倍比MRは、下記式(14)によって算出することができる。
ここで、szは、被写体100の実際のサイズ(高さまたは幅)、YFD1は、第1の光学系OS1によって第1の撮像素子S1の撮像面上に形成される第1の被写体像のサイズ(像高または像幅)、YFD2は、第2の光学系OS2によって第2の撮像素子S2の撮像面上に形成される第2の被写体像のサイズ(像高または像幅)である。
第1の被写体像のサイズYFD1は、第1の撮像素子S1が第1の被写体像を撮像することにより得られる第1の画像から実測することができる。同様に、第2の被写体像のサイズYFD2は、第2の撮像素子S2が第2の被写体像を撮像することにより取得される第2の画像から実測することができる。
具体的には、第1の被写体像のサイズYFD1は、第1の画像内に含まれる第1の被写体像の複数の特徴点(例えば、高さ方向または幅方向の両端部)を検出し、検出された該複数の特徴点間の距離を測定することにより取得される。一方、第2の被写体像のサイズYFD2は、検出された第1の被写体像の複数の特徴点にそれぞれ対応する第2の画像中の第2の被写体像の複数の特徴点を検出し、検出された該特徴点間の距離を測定することにより取得される。なお、以下の説明では、検出された第1の被写体像の複数の特徴点にそれぞれ対応する第2の画像中の第2の被写体像の複数の特徴点を検出するための処理を、対応特徴点検出処理という。本発明の測距カメラでは、対応特徴点検出処理において、エピポーラ幾何に基づくエピポーラ線を利用することにより、対応特徴点検出処理に必要な処理時間を大幅に短縮している。
図4および図5には、本発明の測距カメラにおいて用いられるエピポーラ線を導出するためのモデルが示されている。図4は、エピポーラ線を導出するためのモデルにおける第1の撮像系IS1および第2の撮像系IS2の配置を示すX-Z平面図である。図5は、エピポーラ線を導出するためのモデルにおける第1の撮像系IS1および第2の撮像系IS2の配置を示すY-Z平面図である。
図4および図5に示すように、第1の撮像系IS1および第2の撮像系IS2は、第1の撮像系IS1の第1の光学系OS1の光軸と第2の撮像系IS2の第2の光学系OS2の光軸が一致しないよう、配置されている。そのため、第1の光学系OS1によって形成される第1の被写体像と、第2の光学系OS2によって形成される第2の被写体像との間には、並進視差が発生することになる。本発明の測距カメラにおいては、第1の被写体像の倍率m1と第2の被写体像の倍率m2との比である像倍比MRが被写体100までの距離aを算出するために利用され、第1の被写体像と第2の被写体像との間の並進視差は被写体100までの距離aを算出するために利用されない。しかしながら、第1の被写体像と第2の被写体像との間に並進視差は存在しているので、ステレオカメラ方式の測距カメラにおいて用いられるような、エピポーラ幾何に基づくエピポーラ線の原理を、本発明の測距カメラにおいて得られる第1の被写体像と第2の被写体像にも適用することができる。
一般に、エピポーラ線を導出するためのモデルとしては、第1の撮像系IS1および第2の撮像系IS2の配置(視差に関するパラメーターPx、Py、D)のみを考慮し、第1の撮像系IS1および第2の撮像系IS2の特性(上述のパラメーターf1、f2、EP1、EP2、aFD1、aFD2、PS1、PS2)を考慮しないピンホールモデルが用いられることが多い。しかしながら、実際の撮像系IS1、IS2は、光学系OS1、OS2や撮像素子S1、S2等の撮像に関する多くの要因を有している。そのため、このような要因を無視したピンホールモデルと現実との間に乖離が発生してしまい、正確にエピポーラ線を導出することができない。一方、本発明の測距カメラでは、図4および図5に示す第1の撮像系IS1および第2の撮像系IS2の特性および配置を考慮したモデルを用いて、エピポーラ線を導出することにより、より正確にエピポーラ線を導出することを可能としている。なお、図4および図5に示すモデルにおける第1の撮像系IS1および第2の撮像系IS2の特性および配置は、図2を参照して説明したように、以下の表のとおりである。
図4および図5に示すモデルでは、第1の撮像系IS1の第1の光学系OS1の前側主点の座標が原点(0,0,0)となっており、第2の撮像系IS2の第2の光学系OS2の前側主点の座標は、(Px,Py,-D)となっている。そのため、第1の光学系OS1または第2の光学系OS2の光軸方向に対して垂直な方向における第1の光学系OS1の光軸と第2の光学系OS2の光軸との間の離間距離Pは、P=(Px
2+Py
2)1/2で表される。なお、第1の光学系OS1の前側主点と第2の光学系OS2の前側主点とのx軸方向の離間距離Pxをx軸方向の並進視差といい、第1の光学系OS1の前側主点と第2の光学系OS2の前側主点とのy軸方向の離間距離Pyをy軸方向の並進視差という。また、上述のように、第1の光学系OS1の前側主点と第2の光学系OS2の前側主点とのz軸方向の離間距離Dを奥行視差という。また、第1の撮像系IS1に対する第2の撮像系IS2のx軸周り、y軸周り、z軸周りの回転をそれぞれ、θx、θy、θzとする。
また、第1の撮像系IS1において、第1の光学系OS1の光軸は、理想的には、第1の撮像素子S1の撮像面の中心に位置している。しかしながら、第1の撮像系IS1の組み立て時の誤差や精度等の要因により、第1の光学系OS1の光軸が、第1の撮像素子S1の撮像面の中心に位置していない場合がある。この場合、第1の撮像系IS1によって取得される第1の画像において、第1の光学系OS1の光軸が第1の画像の中心、すなわち、第1の画像の原点(0,0)に位置しない。上記表1に示した第1の撮像系IS1の特性における光軸位置(u1,v1)は、第1の画像における第1の光学系OS1の光軸の位置のx座標およびy座標を表す。同様に、上記表1に示した第2の撮像系IS2の特性における光軸位置(u2,v2)は、第2の画像における第2の光学系OS2の光軸の位置のx座標およびy座標を表す。エピポーラ線の導出のために用いるモデルにおいて、このような第1の光学系OS1および第2の光学系OS2の光軸位置のズレを考慮することにより、エピポーラ線をより正確に導出することが可能となる。
このようなモデルにおいて、座標(X、Y、a)に位置する被写体100の特徴点Sを第1の撮像系IS1および第2の撮像系IS2を用いて撮像するものとする。この時、第1の撮像系IS1によって取得された第1の画像中における特徴点Sの座標を(x1,y1)とし、第2の撮像系IS2によって取得された第2の画像中における特徴点Sの座標を(x2,y2)とする。
なお、以下の説明において、任意の基準点を原点とする座標をワールド座標といい、第1の撮像系IS1の第1の光学系OS1の前側主点を原点とする座標を第1の撮像系IS1のカメラ座標といい、第2の撮像系IS2の第2の光学系OS2の前側主点を原点とする座標を第2の撮像系IS2のカメラ座標といい、第1の画像中の座標(例えば、x1、y1)を第1の画像の画像座標といい、第2の画像中の座標(例えば、x2、y2)を第2の画像の画像座標という。図4および図5に示すモデルでは、ワールド座標の原点は、第1の撮像系IS1の第1の光学系OS1の前側主点である。したがって、図4および図5に示すモデルにおいて、ワールド座標の原点は、第1の撮像系IS1のカメラ座標の原点に一致している。
ワールド座標は、撮像系の外部行列によりカメラ座標に変換される。さらに、カメラ座標は、撮像系の内部行列により画像座標に変換される。したがって、特徴点Sのワールド座標(X,Y,a)は、第1の撮像系IS1の外部行列および内部行列によって、第1の画像の画像座標(x1,y1)に変換される。同様に、特徴点Sのワールド座標(X,Y,a)は、第2の撮像系IS2の外部行列および内部行列によって、第2の画像の画像座標(x2,y2)に変換される。
最初に、第1の撮像系IS1によって取得される第1の画像の画像座標(x1,y1)について検討する。特徴点Sを第1の撮像系IS1で撮像した場合、特徴点Sのワールド座標(X,Y,a)は、第1の撮像系IS1の外部行列により、第1の撮像系IS1のカメラ座標(x’1,y’1,a’)に変換される。しかしながら、上述のように、図4および図5に示すモデルにおけるワールド座標は、第1の撮像系IS1の第1の光学系OS1の前側主点を原点(基準点)としているので、図4および図5に示すモデルにおけるワールド座標と第1の撮像系IS1のカメラ座標との間には回転や位置シフトは存在しない。この状態は、下記式(15)で表すことができる。下記式(15)中の4行4列の行列が第1の撮像系IS1の外部行列である。図4および図5に示すモデルにおけるワールド座標と第1の撮像系IS1のカメラ座標との間には回転や位置シフトは存在しないため、第1の撮像系IS1の外部行列は単位行列となる。
次に、特徴点Sの第1の撮像系IS1のカメラ座標(x’1,y’1,a’)は、第1の撮像系IS1の内部行列により、第1の画像の画像座標(x1,y1)に変換される。この第1の撮像系IS1の内部行列は、図2を参照して上述した、上記式(7)で表される被写体100のサイズszと第1の被写体像のサイズYFD1との関係と同様に導出することができる。ただし、図4および図5に示すモデルでは、第1の光学系OS1の光軸位置のズレが考慮されており、第1の光学系OS1の光軸は、第1の画像の原点(0,0)ではなく、第1の画像の座標(u1,v1)に位置している。第1の光学系OS1の光軸位置のズレを考慮すると、下記式(16)を得ることができる。なお、上記式(7)では、被写体100のサイズszおよび第1の被写体像のサイズYFD1は、mm単位で表していたが、下記式(16)は第1の画像の画像座標x1を表すので、ピクセル単位となる。
同様に、第1の画像の画像座標y1を求めると、下記式(17)を得ることができる。
ここで、上記式(16)および(17)中のK1およびL1は、第1の撮像系IS1の構成により決定される固定値f1、EP1、aFD1、PS1によって決定される。そのため、上記式(16)および(17)中のK1およびL1は、第1の撮像系IS1の構成により一意に定まる固定値である。
上記式(16)および(17)から、特徴点Sの第1の画像の画像座標(x1,y1)を表す下記式(18)を得ることができる。なお、下記式(18)中の3行4列の行列が、第1の撮像系IS1の内部行列となる。
上記式(18)から、第1の撮像系IS1によって取得される第1の画像中の被写体100の特徴点Sの座標(x1,y1)を特定することができる。以下、第1の画像の画像座標(x1,y1)において観測される被写体100の特徴点Sを、第1の被写体像の特徴点という。
上記式(18)中における4行4列の第1の撮像系IS1の外部行列が、第1の撮像系IS1の配置(ワールド座標の基準点に対する第1の撮像系IS1の配置)を反映しており、上記式(18)中における3行4列の第1の撮像系IS1の内部行列が、第1の撮像系IS1の特性(固定値f1、EP1、aFD1、PS1、u1、v1)を反映している。
次に、第2の撮像系IS2によって取得される第2の画像の画像座標(x2,y2)について検討する。特徴点Sのワールド座標(X,Y,a)は、第2の撮像系IS2の外部行列により、第2の撮像系IS2のカメラ座標(x’2,y’2,a’)に変換される。この際、ワールド座標の原点となっている第1の撮像系IS1の第1の光学系OS1の前側主点に対する、第2の撮像系IS2の回転や位置ズレが存在し得る。
x軸周りの回転についての回転行列Rx、y軸周りの回転についての回転行列Ry、およびz軸周りの回転についての回転行列Rzは、下記式(19)によって表される。
第2の撮像系IS2のx軸、y軸、およびz軸の全ては、第1の撮像系IS1に対して、回転する可能性を有するため、回転行列Rx、回転行列Ry、および回転行列Rzを掛け合わせたものが第2の撮像系IS2の回転行列Rとなる。したがって、第2の撮像系IS2の回転行列Rは、下記式(20)で表される。なお、下記式(20)では、回転行列Rは、Rx・Ry・Rzで表されているが、回転行列Rを得るための回転行列Rx、回転行列Ry、および回転行列Rzの掛け合わせの順番はこれに限定されない。例えば、回転行列Rは、Rz・Ry・RxやRy・Rx・Rz等で表されてもよい。また、下記式(20)中のR11、R12、R13、R21、R22、R23、R31、R32、R33は、第1の撮像系IS1に対する第2の撮像系IS2の回転行列Rの成分である。
また、上述のように、第2の撮像系IS2は、第1の撮像系IS1に対して、並進方向の並進視差Px、Pyおよび奥行方向の奥行視差Dを有している。これらの視差は、下式(21)の並進行列tで表すことができる。
第2の撮像系IS2の外部行列は、上記式(20)の回転行列Rと上記式(21)の並進行列の組み合わせで表現され、特徴点Sの第2の撮像系IS2のカメラ座標(x’2,y’2,a’)は、下記式(22)で表すことができる。下記式(22)中の4行4列の行列が第2の撮像系IS2の外部行列である。
次に、特徴点Sの第2の撮像系IS2のカメラ座標(x’2,y’2,a’)は、第2の撮像系IS2の内部行列により、第2の画像の画像座標(x2,y2)に変換される。上記式(16)および(17)と同様の理由により、特徴点Sの第2の画像の画像座標(x2,y2)は、下記式(23)および(24)によって表される。
ここで、上記式(23)および(24)中のK2およびL2は、第2の撮像系IS2の構成により決定される固定値f2、EP2、aFD2、PS2によって決定される。そのため、上記式(23)および(24)中のK2およびL2は、第2の撮像系IS2の構成により一意に定まる固定値である。
上記式(23)および(24)から、特徴点Sの第2の画像の画像座標(x2,y2)は、下記式(25)で表すことができる。なお、下記式(25)中の3行4列の行列が、第2の撮像系IS2の内部行列となる。
上記式(25)から、第2の撮像系IS2によって取得される第2の画像中の被写体100の特徴点Sの座標(x2,y2)を特定することができる。以下、第2の画像の画像座標(x2,y2)において観測される被写体100の特徴点Sを、第2の被写体像の特徴点という。
上記式(25)中における4行4列の第2の撮像系IS2の外部行列が、第2の撮像系IS2の配置(ワールド座標の基準点に対する第2の撮像系IS2の配置)を反映しており、上記式(25)中における3行4列の第2の撮像系IS2の内部行列が、第2の撮像系IS2の特性(固定値f2、EP2、aFD2、PS1、u2、v2)を反映している。
さらに、上記式(18)のXおよび上記式(25)のXが同一であるので、上記式(18)および上記式(25)から、距離aについての下記式(26)が得られる。同様に、上記式(18)のYおよび上記式(25)のYが同一であるので、上記式(18)および上記式(25)から、距離aについての下記式(27)が得られる。
上記式(26)および(27)は等価であるため、第2の画像中の第2の被写体像の特徴点の座標x2およびy2についてまとめると、下に示すエピポーラ線についての一般式(28)を得ることができる。
上記一般式(28)中のG1、G2、G3、G4、G5、G6は、第1の撮像系IS1および第2の撮像系IS2の構成および配置により決定される固定値f1、f2、EP1、EP2、PS1、PS2、aFD1、aFD2、Px、Py、D、u1、v1、u2、v2、θx、θy、θz、R11、R12、R13、R21、R22、R23、R31、R32、R33により決定される。そのため、上記式(28)中のG1、G2、G3、G4、G5、G6は、第1の撮像系IS1および第2の撮像系IS2の構成および配置により一意に定まる固定値である。
上記式(28)により表される第2の画像中の第2の被写体像の特徴点の座標x2およびy2に関する1次方程式は、第1の画像中の座標(x1,y1)に位置する第1の被写体像の特徴点に対応する第2の画像中のエピポーラ線を表す。すなわち、第1の画像中において第1の被写体像の任意の特徴点が座標(x1,y1)で検出された場合、第2の画像中において、第1の被写体像の任意の特徴点に対応する第2の被写体像の特徴点は、上記式(28)で表されるエピポーラ線上に必ず存在していることになる。
図6には、上述のようにして算出されたエピポーラ線の一例が示されている。図6中に示されている第1の撮像系IS1および第2の撮像系IS2の特性および配置で被写体100を撮像した場合、図6に示されているような第1の画像および第2の画像が取得される。図6の例では、第1の画像および第2の画像中に含まれる三角形の上側の頂点を被写体100の任意の特徴点Sとしている。各画像中において中心点を原点(座標(0,0))とする座標が各画像の画像座標となる。
第1の画像中において(x1,y1)=(972.0,-549.0)の位置に第1の被写体像の特徴点(第1の画像中における三角形の上側頂点)が検出された場合、上記式(28)で表される第2の画像中のエピポーラ線上に、第1の被写体像の特徴点に対応する第2の被写体の特徴点が必ず存在する。図示の例では、第1の被写体像の特徴点に対応する第2の被写体の特徴点は、第2の画像中の座標(x2,y2)=(568.7,-229.5)に存在している。
このように、上記式(28)を用いて、第2の画像中のエピポーラ線を導出することにより、第2の画像の全領域を探索せずとも、該エピポーラ線上を探索することにより、第1の被写体像の任意の特徴点に対応する第2の被写体像の特徴点を検出することができる。第1の被写体像の複数の特徴点にそれぞれ対応する第2の画像中の第2の被写体像の特徴点を検出するための対応特徴点検出処理において、上述のようなエピポーラ幾何に基づくエピポーラ線を利用した特徴点の探索を実行することによって、対応特徴点検出処理に要する処理時間を大幅に短縮することができる。このような理由により、本発明の測距カメラでは、被写体像間の像倍比MRに基づいて被写体100までの距離aを算出するための処理時間の大幅な短縮を実現している。
さらに、上述のようにエピポーラ線を導出するために用いられることが多いピンポールモデルと比較して、図4および図5に示したモデルは、第1の撮像系IS1および第2の撮像系IS2の特性および配置の双方が考慮されている点に特徴がある。特に、上記式(18)中における3行4列の第1の撮像系IS1の内部行列に第1の撮像系IS1の特性(固定値f1、EP1、aFD1、PS1、u1、v1)が反映されており、上記式(25)中における3行4列の第2の撮像系IS2の内部行列に第2の撮像系IS2の特性(固定値f2、EP2、aFD2、PS2、u2、v2)が反映されている。そのため、従来のピンホールモデルを用いる場合と比較して、より正確に第2の画像中の第2の被写体像の複数の特徴点を検出することができる。
本発明の測距カメラは、対応特徴点検出処理において、上述のようなエピポーラ幾何に基づくエピポーラ線を利用し、第1の被写体像のサイズYFD1を測定するために検出された第1の被写体像の複数の特徴点にそれぞれ対応する第2の画像中の第2の被写体像の複数の特徴点を検出している。検出された第2の被写体像の複数の特徴点間の距離が測定され、第2の被写体像のサイズYFD2が取得される。取得された第1の被写体像のサイズYFD1および第2の被写体像のサイズYFD2は、第1の被写体像の倍率m1と第2の被写体像の倍率m2との像倍比MRを取得するために用いられ、像倍比MRに基づいて、被写体100までの距離aが算出される。
このように、本発明の測距カメラは、実際に被写体100を第1の撮像系IS1および第2の撮像系IS2を用いて撮像することにより得られた第1の被写体像を含む第1の画像および第2の被写体像を含む第2の画像から、第1の被写体像のサイズYFD1および第2の被写体像のサイズYFD2を実測し、上記式(14)MR=YFD2/YFD1に基づいて、第1の被写体像の倍率m1と第2の被写体像の倍率m2との像倍比MRを得ることができる。
なお、上記式(11)から明らかなように、第1の光学系OS1の焦点距離f1が第1の光学系OS1の焦点距離f2と等しく(f1=f2)、第1の光学系OS1の射出瞳から、被写体100が無限遠にある場合の第1の被写体像の結像位置までの距離EP1が、第2の光学系OS2の射出瞳から、被写体100が無限遠にある場合の第2の被写体像の結像位置までの距離EP2と等しく(EP1=EP2)、かつ、第1の光学系OS1の前側主点と、第2の光学系OS2の前側主点との間の奥行方向(光軸方向)の奥行視差Dが存在しない(D=0)場合、像倍比MRが距離aの関数として成立せず、像倍比MRは定数となる。この場合、被写体100までの距離aに応じた第1の被写体像の倍率m1の変化が、被写体100までの距離aに応じた第2の被写体像の倍率m2の変化と同一になってしまい、像倍比MRに基づいて第1の光学系OS1から被写体までの距離aを算出することが不可能となる。
また、特別な条件として、f1≠f2、EP1≠EP2、かつD=0の場合であっても、f1=EP1かつf2=EP2の場合、像倍比MRが距離aの関数として成立せず、像倍比MRは定数となる。このような特別な場合にも、像倍比MRに基づいて第1の光学系OS1から被写体までの距離aを算出することが不可能となる。
したがって、本発明の測距カメラでは、以下の3つの条件の少なくとも1つが満たされるよう、第1の光学系OS1および第2の光学系OS2が構成および配置され、これにより、被写体100までの距離aに応じた第1の被写体像の倍率m1の変化が、被写体100までの距離aに応じた第2の被写体像の倍率m2の変化と異なるようになっている。
(第1の条件)第1の光学系OS1の焦点距離f1と、第2の光学系OS2の焦点距離f2とが、互いに異なる(f1≠f2)
(第2の条件)第1の光学系OS1の射出瞳から、被写体100が無限遠にある場合の第1の被写体像の結像位置までの距離EP1と、第2の光学系OS2の射出瞳から、被写体100が無限遠にある場合の第2の被写体像の結像位置までの距離EP2とが、互いに異なる(EP1≠EP2)
(第3の条件)第1の光学系OS1の前側主点と、第2の光学系OS2の前側主点との間に奥行方向(光軸方向)の差Dが存在する(D≠0)
加えて、上記第1~第3の条件の少なくとも1つを満たしていたとしても、上述したような特別な場合(f1≠f2、EP1≠EP2、D=0、f1=EP1かつf2=EP2)には、像倍比MRが距離aの関数として成立せず、像倍比MRに基づいて、第1の光学系OS1から被写体100までの距離aを算出することが不可能となる。したがって、像倍比MRに基づいて第1の光学系OS1から被写体100までの距離aを算出するために、本発明の測距カメラは、像倍比MRが距離aの関数として成立しているという第4の条件をさらに満たすよう構成されている。
そのため、本発明の測距カメラを用いて取得された第1の画像および第2の画像から実測される第1の被写体像のサイズYFD1および第2の被写体像のサイズYFD2から像倍比MRを算出することにより、第1の光学系OS1の前側主点から被写体100までの距離aを算出することができる。
以下、第1の被写体像の倍率m1と第2の被写体像の倍率m2との像倍比MRに基づいて被写体100までの距離aを算出する本発明の測距カメラを、添付図面に示す好適な実施形態に基づいて詳述する。
<第1実施形態>
最初に、図7を参照して本発明の測距カメラの第1実施形態を説明する。図7は、本発明の第1実施形態に係る測距カメラを概略的に示すブロック図である。
図7に示す測距カメラ1は、測距カメラ1の制御を行う制御部2と、被写体100からの光を集光し、第1の被写体像を形成するための第1の光学系OS1と、第1の被写体像を撮像し、第1の被写体像を含む第1の画像を取得するための第1の撮像素子S1とを有する第1の撮像系IS1と、第1の光学系OS1に対して、第1の光学系OS1の光軸方向に対して垂直な方向に距離Pだけシフトして配置され、被写体100からの光を集光し、第2の被写体像を形成するための第2の光学系OS2と、第2の被写体像を撮像し、第2の被写体像を含む第2の画像を取得するための第2の撮像素子S2とを有する第2の撮像系IS2と、第1の被写体像のサイズYFD1および第2の被写体像のサイズYFD2を取得するためのサイズ取得部3と、第1の被写体像の倍率m1と第2の被写体像の倍率m2との像倍比MRと、被写体100までの距離aとを関連付ける関連付情報を記憶している関連付情報記憶部4と、サイズ取得部3によって取得された第1の被写体像のサイズYFD1および第2の被写体像のサイズYFD2の比として得られる第1の被写体像の倍率m1と第2の被写体像の倍率m2との像倍比MRに基づいて、被写体100までの距離aを算出するための距離算出部5と、第1の撮像素子S1によって取得された第1の画像または第2の撮像素子S2によって取得された第2の画像と、距離算出部5によって算出された被写体100までの距離aとに基づいて、被写体100の3次元画像を生成するための3次元画像生成部6と、液晶パネル等の任意の情報を表示するための表示部7と、使用者による操作を入力するための操作部8と、外部デバイスとの通信を実行するための通信部9と、測距カメラ1の各コンポーネント間のデータの授受を実行するためのデータバス10と、を備えている。
本実施形態の測距カメラ1は、像倍比MRに基づいて被写体100までの距離aを算出するために要求される上述の3つの条件の内、第1の光学系OS1の焦点距離f1と、第2の光学系OS2の焦点距離f2とが、互いに異なる(f1≠f2)という第1の条件が満たされるよう、第1の光学系OS1および第2の光学系OS2が構成されていることを特徴とする。一方、本実施形態では、第1の光学系OS1および第2の光学系OS2は、上述の3つの条件の内、その他の2つの条件(EP1≠EP2およびD≠0)を満たすように構成および配置されていない。さらに、本実施形態の測距カメラ1は、像倍比MRが距離aの関数として成立しているという第4の条件が満たされるよう構成されている。
そのため、像倍比MRを用いて被写体100までの距離aを算出するための上記一般式(13)は、EP1=EP2=EPおよびD=0の条件により単純化され、下記式(29)で表すことができる。
本実施形態の測距カメラ1は、第1の撮像系IS1および第2の撮像系IS2によって被写体100を撮像することにより第1の被写体像の倍率m1と第2の被写体像の倍率m2との像倍比MRを算出し、さらに、上記式(29)を用いて、被写体100までの距離aを算出する。
また、本実施形態の測距カメラ1では、サイズ取得部3は、第1の撮像素子S1によって取得された第1の画像中の第1の被写体像の複数の特徴点(例えば、高さ方向または幅方向の両端部)を検出し、さらに、該複数の特徴点間の距離を測定することにより、第1の被写体像のサイズYFD1を取得する。さらに、サイズ取得部3は、検出された第1の被写体像の複数の特徴点にそれぞれ対応する第2の画像中の第2の被写体像の複数の特徴点を検出し、該複数の特徴点間の距離を測定することにより、第2の被写体像のサイズYFD2を取得する。
また、本実施形態の測距カメラ1では、第1の被写体像の複数の特徴点にそれぞれ対応する第2の画像中の第2の被写体像の複数の特徴点を検出するための対応特徴点検出処理において、エピポーラ幾何に基づくエピポーラ線が用いられている。エピポーラ線を表す上記一般式(28)は、EP1=EP2=EPおよびD=0の条件により単純化され、下記式(30)で表すことができる。
本実施形態の測距カメラ1では、上記式(30)によって表される第2の画像中のエピポーラ線上を探索することにより、第1の被写体像の複数の特徴点にそれぞれ対応する第2の画像中の第2の被写体像の複数の特徴点を検出することができる。これにより、第2の画像の全領域を探索せずとも、第2の被写体像の複数の特徴点を検出することができ、対応特徴点検出処理に要する処理時間を大幅に短縮することができる。その結果、被写体像間の像倍比MRに基づいて被写体100までの距離aを算出するための処理時間を大幅に短縮することができる。
以下、測距カメラ1の各コンポーネントについて詳述する。制御部2は、データバス10を介して、各コンポーネントとの間の各種データや各種指示の授受を行い、測距カメラ1の制御を実行する。制御部2は、演算処理を実行するためのプロセッサーと、測距カメラ1の制御を行うために必要なデータ、プログラム、モジュール等を保存しているメモリーとを備えており、制御部2のプロセッサーは、メモリー内に保存されているデータ、プログラム、モジュール等を用いることにより、測距カメラ1の制御を実行する。また、制御部2のプロセッサーは、測距カメラ1の各コンポーネントを用いることにより、所望の機能を提供することができる。例えば、制御部2のプロセッサーは、距離算出部5を用いることにより、第1の被写体像の倍率m1と第2の被写体像の倍率m2との像倍比MRに基づいて、被写体100までの距離aを算出するための処理を実行することができる。
制御部2のプロセッサーは、例えば、1つ以上のマイクロプロセッサー、マイクロコンピューター、マイクロコントローラー、デジタル信号プロセッサー(DSP)、中央演算処理装置(CPU)、メモリーコントロールユニット(MCU)、画像処理用演算処理装置(GPU)、状態機械、論理回路、特定用途向け集積回路(ASIC)、またはこれらの組み合わせ等のコンピューター可読命令に基づいて信号操作等の演算処理を実行する演算ユニットである。特に、制御部2のプロセッサーは、制御部2のメモリー内に保存されているコンピューター可読命令(例えば、データ、プログラム、モジュール等)をフェッチし、演算、信号操作および制御を実行するよう構成されている。
制御部2のメモリーは、揮発性記憶媒体(例えば、RAM、SRAM、DRAM)、不揮発性記憶媒体(例えば、ROM、EPROM、EEPROM、フラッシュメモリー、ハードディスク、光ディスク、CD-ROM、デジタル多用途ディスク(DVD)、磁気カセット、磁気テープ、磁気ディスク)、またはこれらの組み合わせを含む着脱式または非着脱式のコンピューター可読媒体である。
また、制御部2のメモリー内には、第1の撮像系IS1および第2の撮像系IS2の構成および配置によって決定される固定値f1、f2、EP1、EP2、aFD1、aFD2、PS1、PS2、Px、Py、D、u1、v1、u2、v2、θx、θy、θz、R11、R12、R13、R21、R22、R23、R31、R32、R33、並びに、これら固定値から導出され、被写体100までの距離aを算出するための上記一般式(13)(または、簡略化された上記式(29))および第2の画像中のエピポーラ線についての上記一般式(28)(または、簡略化された上記式(30))で使用される固定値L1、L2、K、K1、K2、G1、G2、G3、G4、G5、G6が事前に保存されている。
第1の撮像系IS1は、第1の光学系OS1と、第1の撮像素子S1と有している。第1の光学系OS1は、被写体100からの光を集光し、第1の撮像素子S1の撮像面上に第1の被写体像を形成する機能を有する。第1の撮像素子S1は、撮像面上に形成された第1の被写体像を撮像し、第1の被写体像を含む第1の画像を取得する機能を有している。第2の撮像系IS2は、第2の光学系OS2と、第2の撮像素子S2とを有している。第2の光学系OS2は、被写体100からの光を集光し、第2の撮像素子S2の撮像面上に第2の被写体像を形成する機能を有する。第2の撮像素子S2は、撮像面上に形成された第2の被写体像を撮像し、第2の被写体像を含む第2の画像を取得する機能を有している。
なお、図示の形態では、第1の撮像系IS1を構成する第1の撮像素子S1および第1の光学系OS1が、同一の筐体内に設けられており、第2の撮像系IS2を構成する第2の撮像素子S2および第2の光学系OS2が、別の同一の筐体内に設けられているが、本発明はこれに限られない。第1の光学系OS1、第2の光学系OS2、第1の撮像素子S1、および第2の撮像素子S2がすべて同一の筐体内に設けられているような様態も、本発明の範囲内である。
第1の光学系OS1および第2の光学系OS2は、1つ以上のレンズと絞り等の光学素子から構成されている。上述のように、第1の光学系OS1および第2の光学系OS2は、第1の光学系OS1の焦点距離f1と第2の光学系OS2の焦点距離f2とが、互いに異なるよう(f1≠f2)、構成されている。これにより、第1の光学系OS1によって形成される第1の被写体像の倍率m1の被写体100までの距離aに応じた変化が、第2の光学系OS2によって形成される第2の被写体像の倍率m2の被写体100までの距離に応じた変化と異なるようになっている。このような第1の光学系OS1および第2の光学系OS2の構成によって得られる第1の被写体像の倍率m1と第2の被写体像の倍率m2との比である像倍比MRは、被写体100までの距離aを算出するために用いられる。
また、図示のように、第1の光学系OS1の光軸と、第2の光学系OS2の光軸は、平行であるが、一致していない。さらに、第2の光学系OS2は、第1の光学系OS1の光軸方向に対して垂直な方向に距離Pだけシフトして配置されている。
第1の撮像素子S1および第2の撮像素子S2のそれぞれは、ベイヤー配列等の任意のパターンで配列されたRGB原色系カラーフィルターやCMY補色系カラーフィルターのようなカラーフィルターを有するCMOS画像センサーやCCD画像センサー等のカラー撮像素子であってもよいし、そのようなカラーフィルターを有さない白黒撮像素子であってもよい。この場合、第1の撮像素子S1によって得られる第1の画像および第2の撮像素子S2によって得られる第2の画像は、被写体100のカラーまたは白黒の輝度情報である。
また、第1の撮像素子S1および第2の撮像素子S2のそれぞれは、被写体100の位相情報を取得する位相センサーであってもよい。この場合、第1の撮像素子S1によって得られる第1の画像および第2の撮像素子S2によって得られる第2の画像は、被写体100の位相情報である。
第1の光学系OS1によって、第1の撮像素子S1の撮像面上に第1の被写体像が形成され、第1の撮像素子S1によって第1の被写体像を含む第1の画像が取得される。取得された第1の画像は、データバス10を介して、制御部2およびサイズ取得部3に送られる。同様に、第2の光学系OS2によって、第2の撮像素子S2の撮像面上に第2の被写体像が形成され、第2の撮像素子S2によって第2の被写体像を含む第2の画像が取得される。取得された第2の画像は、データバス10を介して、制御部2およびサイズ取得部3に送られる。
サイズ取得部3に送られた第1の画像および第2の画像は、第1の被写体のサイズYFD1および第2の被写体のサイズYFD2を取得するために用いられる。一方、制御部2に送られた第1の画像および第2の画像は、表示部7による画像表示や通信部9による画像信号の通信のために用いられる。
サイズ取得部3は、第1の被写体像を含む第1の画像および第2の被写体像を含む第2の画像から、第1の被写体のサイズYFD1および第2の被写体のサイズYFD2を取得する機能を有している。具体的には、サイズ取得部3は、第1の画像中の第1の被写体像の複数の特徴点を検出し、検出された第1の被写体像の複数の特徴点間の距離を測定することにより、第1の被写体像のサイズYFD1を取得する。さらに、サイズ取得部3は、検出された第1の被写体像の複数の特徴点にそれぞれ対応する第2の画像中の第2の被写体像の複数の特徴点を検出し、検出された第2の被写体像の複数の特徴点間の距離を測定することにより、第2の被写体像のサイズYFD2を取得する。
具体的には、サイズ取得部3は、第1の撮像素子S1から第1の画像を受信し、さらに、第2の撮像素子S2から第2の画像を受信する。その後、サイズ取得部3は、第1の画像中における第1の被写体像の任意の複数の特徴点を検出する。サイズ取得部3が第1の画像中における第1の被写体像の任意の複数の特徴点を検出する方法は特に限定されず、サイズ取得部3は、本分野において既知の種々の方法を用いて、第1の画像中における第1の被写体像の任意の複数の特徴点を検出することができる。サイズ取得部3によって検出された複数の特徴点のそれぞれの座標(x1,y1)は、制御部2のメモリー内に一時保存される。
1つの例において、サイズ取得部3は、第1の画像に対し、Cannyのようなフィルター処理を施し、第1の画像内における第1の被写体像のエッジ部を抽出する。その後、サイズ取得部3は、抽出した第1の被写体像のエッジ部の任意のいくつかを第1の被写体像の複数の特徴点として検出し、該複数の特徴点間の離間距離を測定することにより第1の被写体像のサイズYFD1を取得する。この場合、サイズ取得部3は、第1の被写体像の高さ方向の両端部に相当するエッジ部を第1の被写体像の複数の特徴点として検出し、該特徴点間の離間距離を第1の被写体像のサイズ(像高)YFD1としてもよいし、第1の被写体像の幅方向の両端部に相当するエッジ部を第1の被写体像の複数の特徴点として検出し、該特徴点間の離間距離を第1の被写体像のサイズ(像幅)YFD2としてもよい。
第1の被写体像のサイズYFD1を取得した後、サイズ取得部3は、検出された第1の被写体像の複数の特徴点にそれぞれ対応する第2の画像中の第2の被写体像の複数の特徴点を検出するための対応特徴点検出処理を実行する。
具体的には、サイズ取得部3は、最初に、制御部2のメモリー内に保存されている第1の被写体像の複数の特徴点の座標(x1,y1)を参照し、検出された第1の被写体像の複数の特徴点のいずれか1つを選択する。その後、サイズ取得部3は、第1の画像中の選択された特徴点を中心とする所定のサイズの領域(例えば、選択された特徴点を中心とする5×5ピクセルの領域、7×7ピクセルの領域等)を切り出し、選択された特徴点用の探索ブロックを取得する。この探索ブロックは、選択された第1の被写体の特徴点に対応する第2の画像中の第2の被写体像の特徴点を探索するために用いられる。取得された探索ブロックは、制御部2のメモリー内に一時保存される。
その後、サイズ取得部3は、制御部2のメモリー内に保存されている固定値を用いて、選択された第1の被写体像の特徴点に対応するエピポーラ線を、上記式(30)(または、一般式(28))に基づいて導出する。その後、サイズ取得部3は、導出されたエピポーラ線上を探索することにより、選択された第1の被写体像の特徴点に対応する第2の画像中の第2の被写体像の特徴点を検出する。
具体的には、サイズ取得部3は、制御部2のメモリー内に保存されている選択された第1の被写体像の特徴点用の探索ブロックと、第2の画像中のエピポーラ線上の画素を中心とし、探索ブロックと同じサイズを有するエピポーラ線周辺領域との間のコンボリューション演算(畳み込み積分)を実行し、探索ブロックとエピポーラ線周辺領域との間の相関値を算出する。この相関値の算出は、第2の画像中の導出されたエピポーラ線に沿って実行される。サイズ取得部3は、相関値が最も高かったエピポーラ線周辺領域の中心画素(すなわち、エピポーラ線上の画素)を、選択された第1の被写体像の特徴点に対応する第2の画像中の第2の被写体像の特徴点として検出する。算出された第2の被写体像の特徴点の座標(x2,y2)は、制御部2のメモリー内に一時保存される。
なお、探索ブロックとエピポーラ線周辺領域とのコンボリューション演算を実行する際に、探索ブロックまたは第2の画像に対する画素の補間が実行されてもよい。このような2つの領域間の相関値を正確に取得するために本分野において既知の任意の手法が、対応特徴点検出処理において用いられてもよい。
このような処理は、検出された第1の被写体像の特徴点の全てに対応する第2の画像中の第2の被写体像の特徴点が検出されるまで、選択された第1の被写体像の特徴点を変更して、繰り返し実行される。したがって、サイズ取得部3は、検出された第1の被写体像の複数の特徴点にそれぞれ対応する複数のエピポーラ線を上記式(30)(または、一般式(28))に基づいて導出し、該複数のエピポーラ線のそれぞれ上を上述のように探索することにより、検出された第1の被写体像の複数の特徴点にそれぞれ対応する第2の画像中の第2の被写体像の複数の特徴点を検出する。検出された第1の被写体像の特徴点の全てに対応する第2の画像中の第2の被写体像の特徴点が検出されると、サイズ取得部3による対応特徴点検出処理が終了する。
対応特徴点検出処理を実行した後、サイズ取得部3は、制御部2のメモリー内に一時保存されている第2の被写体像の複数の特徴点の座標(x2,y2)から、検出された第2の被写体像の複数の特徴点間の離間距離を測定することにより、第2の被写体像のサイズYFD2を取得する。
なお、上述したように、上記式(30)(または、一般式(28))で表されるエピポーラ線は、従来技術において一般に用いられている第1の撮像系IS1および第2の撮像系IS2の特性を考慮しないピンホールモデルではなく、図4および図5に示すような第1の撮像系IS1および第2の撮像系IS2の特性および配置を考慮したモデルを用いて導出されている。
そのため、サイズ取得部3は、従来のピンホールモデルを用いて第2の画像中の複数のエピポーラ線を導出し、第2の画像中の第2の被写体像の複数の特徴点を検出する場合と比較して、より正確に第2の画像中の第2の被写体像の複数の特徴点を検出することができる。これにより、被写体100までの距離aをより正確に測定することができる。
関連付情報記憶部4は、第1の被写体像の倍率m1と第2の被写体像の倍率m2との像倍比MR(m2/m1)と、第1の光学系OS1の前側主点から被写体100までの距離(被写体距離)aとを関連付ける関連付情報を記憶するための任意の不揮発性記録媒体(例えば、ハードディスク、フラッシュメモリー)である。関連付情報記憶部4に保存されている関連付情報は、第1の被写体像の倍率m1と第2の被写体像の倍率m2との像倍比MR(m2/m1)から、被写体100までの距離aを算出するための情報である。
典型的には、関連付情報記憶部4に保存されている関連付情報は、像倍比MRに基づいて被写体100までの距離aを算出するための上記式(29)(または、一般式(13))である。代替的に、関連付情報記憶部4に保存されている関連付情報は、像倍比MRと被写体100までの距離aとを一意に対応づけたルックアップテーブルであってもよい。関連付情報記憶部4に保存されているこのような関連付情報を参照することにより、像倍比MRに基づいて被写体100までの距離aを算出することが可能となる。なお、関連付情報が被写体100までの距離aを算出するための前述の式である場合には、関連付情報に加え、制御部2のメモリー内に保存されている固定値も参照され、被写体100までの距離aが算出される。
距離算出部5は、サイズ取得部3によって取得された第1の被写体像のサイズYFD1と第2の被写体像のサイズYFD2との比として得られる第1の被写体像の倍率m1と第2の被写体像の倍率m2との像倍比MRに基づいて、被写体100までの距離aを算出する機能を有している。具体的には、距離算出部5は、サイズ取得部3によって取得された第1の被写体像のサイズYFD1および第2の被写体像のサイズYFD2に基づき、上記式(14)MR=YFD2/YFD1によって、第1の被写体像の倍率m1と第2の被写体像の倍率m2との像倍比MRを算出する。その後、距離算出部5は、関連付情報記憶部4に保存されている関連付情報を参照し(関連付情報が被写体100までの距離aを算出するための前述の式である場合には、制御部2のメモリー内に保存されている固定値も参照される)、像倍比MRに基づいて、被写体100までの距離aを算出(特定)する。
3次元画像生成部6は、距離算出部5によって算出された被写体100までの距離aおよび第1の撮像系IS1または第2の撮像系IS2が取得した被写体100のカラーまたは白黒の輝度情報(第1の画像または第2の画像)に基づいて、被写体100の3次元画像を生成する機能を有している。ここで言う「被写体100の3次元画像」とは、通常の被写体100のカラーまたは白黒の輝度情報を表す2次元画像の各ピクセルに対して、算出された被写体100までの距離aが関連付けられているデータを意味する。なお、第1の撮像系IS1の第1の撮像素子S1および第2の撮像系IS2の第2の撮像素子S2が、被写体100の位相情報を取得する位相センサーである場合には、3次元画像生成部6は省略される。
表示部7は、液晶表示部等のパネル型表示部であり、制御部2のプロセッサーからの信号に応じて、第1の撮像系IS1または第2の撮像系IS2によって取得された被写体100のカラーまたは白黒の輝度情報または被写体100の位相情報(第1の画像または第2の画像)、距離算出部5によって算出された被写体100までの距離a、3次元画像生成部6によって生成された被写体100の3次元画像、測距カメラ1を操作するための情報等が文字または画像の形態で表示部7に表示される。
操作部8は、測距カメラ1の使用者が操作を実行するために用いられる。操作部8は、測距カメラ1の使用者が操作を実行することができれば特に限定されず、例えば、マウス、キーボード、テンキー、ボタン、ダイヤル、レバー、タッチパネル等を操作部8として用いることができる。操作部8は、測距カメラ1の使用者による操作に応じた信号を制御部2のプロセッサーに送信する。
通信部9は、測距カメラ1に対するデータの入力または測距カメラ1から外部デバイスへのデータの出力を行う機能を有している。通信部9は、インターネットのようなネットワークに接続可能に構成されていてもよい。この場合、測距カメラ1は、通信部9を用いることにより、外部に設けられたウェブサーバーやデータサーバーのような外部デバイスと通信を行うことができる。
このように、本実施形態の測距カメラ1では、第1の光学系OS1および第2の光学系OS2が、第1の光学系OS1の焦点距離f1と第2の光学系OS2の焦点距離f2とが、互いに異なるよう(f1≠f2)、構成されており、これにより、被写体100までの距離aに対する第1の被写体像の倍率m1の変化と、被写体100までの距離aに対する第2の被写体像の倍率m2の変化とが、互いに異なるようになっている。そのため、本発明の測距カメラ1は、第1の被写体像の倍率m1と第2の被写体像の倍率m2との像倍比MR(m2/m1)に基づいて、被写体100までの距離aを一意に算出することができる。
また、本実施形態の測距カメラ1では、サイズ取得部3によって実行される対応特徴点検出処理において、エピポーラ幾何に基づくエピポーラ線が利用されている。そのため、対応特徴点検出処理に必要な処理時間を大幅に短縮することができ、被写体100までの距離aを算出するために必要な処理時間を大幅に短縮することができる。
さらに、上記式(30)(または、一般式(28))で表されるエピポーラ線は、従来技術において一般に用いられている第1の撮像系IS1および第2の撮像系IS2の特性を考慮しないピンホールモデルではなく、図4および図5に示す第1の撮像系IS1および第2の撮像系IS2の特性および配置の双方を考慮したモデルを用いて導出されている。そのため、従来のピンホールモデルを用いて第2の画像中の複数のエピポーラ線を導出し、第2の画像中の第2の被写体像の複数の特徴点を検出する場合と比較して、より正確に第2の画像中の第2の被写体像の複数の特徴点を検出することができる。これにより、測距カメラ1による被写体100までの距離aの測定の精度を高めることができる。
<第2実施形態>
次に、図8を参照して、本発明の第2実施形態に係る測距カメラ1について詳述する。図8は、本発明の第2実施形態に係る測距カメラを概略的に示すブロック図である。
以下、第2実施形態の測距カメラ1について、第1実施形態の測距カメラ1との相違点を中心に説明し、同様の事項については、その説明を省略する。本実施形態の測距カメラ1は、第1の光学系OS1および第2の光学系OS2の構成が変更されている点を除き、第1実施形態の測距カメラ1と同様である。
本実施形態の測距カメラ1は、像倍比MRに基づいて被写体100までの距離aを算出するために要求される上述の3つの条件の内、第1の光学系OS1の射出瞳から、被写体100が無限遠にある場合の第1の被写体像の結像位置までの距離EP1と、第2の光学系OS2の射出瞳から、被写体100が無限遠にある場合の第2の被写体像の結像位置までの距離EP2とが、互いに異なる(EP1≠EP2)という第2の条件が満たされるよう、第1の光学系OS1および第2の光学系OS2が構成されていることを特徴とする。一方、本実施形態では、第1の光学系OS1および第2の光学系OS2は、上述の3つの条件の内、その他の2つの条件(f1≠f2およびD≠0)を満たすように構成および配置されていない。さらに、本実施形態の測距カメラ1は、像倍比MRが距離aの関数として成立しているという第4の条件が満たされるよう構成されている。
像倍比MRに基づいて被写体100までの距離aを算出するための上記一般式(13)は、f1=f2=fおよびD=0の条件により単純化され、下記式(31)で表すことができる。
また、エピポーラ線を表す上記一般式(28)は、f1=f2=fおよびD=0の条件により単純化され、下記式(32)で表すことができる。
このように、本実施形態の測距カメラ1では、第1の光学系OS1の射出瞳から、被写体100が無限遠にある場合の第1の被写体像の結像位置までの距離EP1と、第2の光学系OS2の射出瞳から、被写体100が無限遠にある場合の第2の被写体像の結像位置までの距離EP2とが、互いに異なるよう(EP1≠EP2)、第1の光学系OS1および第2の光学系OS2が構成されており、これにより、被写体100までの距離aに対する第1の被写体像の倍率m1の変化と、被写体100までの距離aに対する第2の被写体像の倍率m2の変化とが、互いに異なるようになっている。そのため、本実施形態の測距カメラ1は、第1の被写体像の倍率m1と第2の被写体像の倍率m2との像倍比MR(m2/m1)に基づいて、被写体100までの距離aを一意に算出することができる。
さらに、本実施形態の測距カメラ1では、上記式(32)によって表される第2の画像中のエピポーラ線上を探索することにより、第1の被写体像の複数の特徴点にそれぞれ対応する第2の画像中の第2の被写体像の複数の特徴点を検出することができる。これにより、第2の画像の全領域を探索せずとも、第2の被写体像の複数の特徴点を検出することができ、対応特徴点検出処理に要する処理時間を大幅に短縮することができる。その結果、被写体像間の像倍比MRに基づいて被写体100までの距離aを算出するための処理時間を大幅に短縮することができる。このように、本実施形態によっても、上述の第1の実施形態と同様の効果を発揮することができる。
<第3実施形態>
次に、図9を参照して、本発明の第3実施形態に係る測距カメラ1について詳述する。図9は、本発明の第3実施形態に係る測距カメラを概略的に示すブロック図である。
以下、第3実施形態の測距カメラ1について、第1実施形態の測距カメラ1との相違点を中心に説明し、同様の事項については、その説明を省略する。本実施形態の測距カメラ1は、第1の光学系OS1および第2の光学系OS2の構成が変更されている点を除き、第1実施形態の測距カメラ1と同様である。
本実施形態の測距カメラ1は、像倍比MRに基づいて被写体100までの距離aを算出するために要求される上述の3つの条件の内、第1の光学系OS1の前側主点と、第2の光学系OS2の前側主点との間に奥行方向(光軸方向)の差Dが存在する(D≠0)という第3の条件が満たされるよう、第1の光学系OS1および第2の光学系OS2が構成および配置されていることを特徴とする。一方、本実施形態では、第1の光学系OS1および第2の光学系OS2は、上述の3つの条件の内、その他の2つの条件(f1≠f2およびEP1≠EP2)を満たすように構成されていない。さらに、本実施形態の測距カメラ1は、像倍比MRが距離aの関数として成立しているという第4の条件が満たされるよう構成されている。
像倍比MRに基づいて被写体100までの距離aを算出するための上記一般式(13)は、f1=f2=fおよびEP1=EP2=EPの条件により単純化され、下記式(33)で表すことができる。
また、エピポーラ線を表す上記一般式(28)は、f1=f2=fおよびEP1=EP2=EPの条件により単純化され、下記式(34)で表すことができる。
このように、本実施形態の測距カメラ1では、第1の光学系OS1の前側主点と、第2の光学系OS2の前側主点との間に奥行方向(光軸方向)の差Dが存在するよう(D≠0)、構成および配置されており、これにより、被写体100までの距離aに対する第1の被写体像の倍率m1の変化と、被写体100までの距離aに対する第2の被写体像の倍率m2の変化とが、互いに異なるようになっている。そのため、本実施形態の測距カメラ1は、第1の被写体像の倍率m1と第2の被写体像の倍率m2との像倍比MR(m2/m1)に基づいて、被写体100までの距離aを一意に算出することができる。
さらに、本実施形態の測距カメラ1では、上記式(34)によって表される第2の画像中のエピポーラ線上を探索することにより、第1の被写体像の複数の特徴点にそれぞれ対応する第2の画像中の第2の被写体像の複数の特徴点を検出することができる。これにより、第2の画像の全領域を探索せずとも、第2の被写体像の複数の特徴点を検出することができ、対応特徴点検出処理に要する処理時間を大幅に短縮することができる。その結果、被写体像間の像倍比MRに基づいて被写体100までの距離aを算出するための処理時間を大幅に短縮することができる。このように、本実施形態によっても、上述の第1の実施形態と同様の効果を発揮することができる。
ここまで各実施形態を参照して詳述したように、本発明の測距カメラ1は、第1の撮像系IS1を用いて取得された第1の画像および第2の撮像系IS2を用いて取得された第2の画像から実測される第1の被写体像のサイズYFD1および第2の被写体像のサイズYFD2から像倍比MRを算出することにより、第1の光学系OS1の前側主点から被写体100までの距離aを算出することができる。
また、第2の被写体像のサイズYFD2を測定するための対応特徴点検出処理において、エピポーラ幾何に基づくエピポーラ線が用いられている。そのため、第2の画像の全領域を探索せずとも、第2の被写体像の複数の特徴点を検出することができ、対応特徴点検出処理に要する処理時間を大幅に短縮することができる。その結果、被写体像間の像倍比MRに基づいて被写体100までの距離aを算出するための処理時間を大幅に短縮することができる。
また、上記各実施形態では、第1の光学系OS1および第2の光学系OS2の2つの光学系が用いられているが、用いられる光学系の数はこれに限られない。例えば、第1の光学系OS1および第2の光学系OS2に加え、追加的な光学系をさらに備えるような態様もまた本発明の範囲内である。この場合、追加的な光学系は、追加的な光学系によって形成される被写体像の倍率の被写体100までの距離aに対する変化が、第1の被写体像の倍率m1の被写体までの距離aに対する変化および第2の被写体像の倍率m2の被写体までの距離aに対する変化と異なるように構成および配置されている。
なお、上述した第1~第3実施形態は、像倍比MRに基づいて被写体100までの距離aを算出するために要求される上述の3つの条件の内のいずれか1つを満たすよう第1の光学系OS1および第2の光学系OS2が構成および配置されているが、上述の3つの条件の内の少なくとも1つが満たされるよう、第1の光学系OS1および第2の光学系OS2が構成および配置されていれば、本発明はこれに限られない。例えば、上述の3つの条件の内の全てまたは任意の組み合わせが満たされるよう、第1の光学系OS1および第2の光学系OS2が構成および配置されている態様も、本発明の範囲内である。
<測距方法>
次に図10および図11を参照して、本発明の測距カメラ1によって実行される測距方法について説明する。図10は、本発明の測距カメラによって実行される測距方法を説明するためのフローチャートである。図11は、図10に示す測距方法において実行される対応特徴点検出処理の詳細を示すフローチャートである。
なお、以下に詳述する測距方法は、上述した本発明の第1~第3実施形態に係る測距カメラ1および測距カメラ1と同等の機能を有する任意の装置を用いて実行することができるが、第1実施形態に係る測距カメラ1を用いて実行されるものとして説明する。
図10に示す測距方法S100は、測距カメラ1の使用者が操作部8を用いて、被写体100までの距離aを測定するための操作を実行することにより開始される。工程S110において、第1の撮像系IS1の第1の撮像素子S1によって、第1の光学系OS1によって形成された第1の被写体像が撮像され、第1の被写体像を含む第1の画像が取得される。第1の画像は、データバス10を介して、制御部2およびサイズ取得部3に送られる。同様に、工程S120において、第2の撮像系IS2の第2の撮像素子S2によって、第2の光学系OS2によって形成された第2の被写体像が撮像され、第2の被写体像を含む第2の画像が取得される。第2の画像は、データバス10を介して、制御部2およびサイズ取得部3に送られる。S110における第1の画像の取得と、S120における第2の画像の取得は、同時に実行されてもよいし、別々に実行されてもよい。
工程S110における第1の画像の取得および工程S120における第2の画像の取得の後、測距方法S100は、工程S130に移行する。工程S130において、サイズ取得部3は、第1の画像中の第1の被写体像の任意の複数の特徴点を検出する。工程S130においてサイズ取得部3によって検出される第1の被写体像の任意の複数の特徴点は、例えば、第1の被写体像の高さ方向の両端部または第1の被写体像の幅方向の両端部である。サイズ取得部3によって検出された第1の被写体像の複数の特徴点のそれぞれの座標(x1,y1)は、制御部2のメモリー内に一時保存される。
工程S140において、サイズ取得部3は、制御部2のメモリー内に一時保存されている第1の被写体像の複数の特徴点のそれぞれの座標(x1,y1)を参照し、検出された第1の被写体像の複数の特徴点間の距離を測定することにより、第1の被写体像のサイズYFD1を取得する。工程S140において取得された第1の被写体像のサイズYFD1は、制御部2のメモリー内に一時保存される。
その後、工程S150において、サイズ取得部3は、工程S130において検出された第1の被写体像の複数の特徴点にそれぞれ対応する第2の画像中の第2の被写体像の複数の特徴点を検出するための対応特徴点検出処理を実行する。図11には、工程S150において実行される対応特徴点検出処理の詳細を示すフローチャートが示されている。
工程S151において、サイズ取得部3は、制御部2のメモリー内に保存されている第1の被写体像の複数の特徴点のそれぞれの座標(x1,y1)を参照し、検出された第1の被写体像の複数の特徴点のいずれか1つを選択する。次に、工程S152において、サイズ取得部3は、第1の画像中の選択された第1の被写体像の特徴点を中心とする所定のサイズの領域(例えば、特徴点を中心とする5×5ピクセルの領域、7×7ピクセルの領域等)を切り出し、選択された特徴点用の探索ブロックを取得する。取得された探索ブロックは、制御部2のメモリー内に一時保存される。
次に、工程S153において、サイズ取得部3は、制御部2のメモリー内に保存されている固定値を用いて、工程S151において選択された第1の被写体像の特徴点に対応する第2の画像中のエピポーラ線を、上述の一般式(28)(または、各実施形態における簡略化されたエピポーラ線を表す式)に基づいて導出する。その後、工程S154において、サイズ取得部3は、制御部2のメモリー内に保存されている選択された第1の被写体像の特徴点用の探索ブロックと、第2の画像中の導出されたエピポーラ線上の画素を中心とし、探索ブロックと同じサイズを有するエピポーラ線周辺領域との間のコンボリューション演算(畳み込み積分)を実行し、探索ブロックとエピポーラ線周辺領域との間の相関値を算出する。算出された相関値は、制御部2のメモリー内に一時保存される。この相関値の算出は、ブロックマッチングとも称され、第2の画像中の導出されたエピポーラ線に沿って実行される。
第2の画像中のエピポーラ線に沿った相関値の算出が終了すると、工程S150の処理は、工程S155に移行する。工程S155において、サイズ取得部3は、相関値が最も高かったエピポーラ線周辺領域の中心画素(すなわち、エピポーラ線上の画素)を、選択された第1の被写体像の特徴点に対応する第2の画像中の第2の被写体像の特徴点として検出する。算出された第2の被写体像の特徴点の座標(x2,y2)は、制御部2のメモリー内に一時保存される。
その後、工程S156において、工程S130において検出された第1の被写体像の複数の特徴点の全てが、工程S151において選択済みか否かが判別される。工程S130において検出された第1の被写体像の複数の特徴点の全てが、工程S151において選択済みではない場合(工程S156=No)、工程S150の処理は、工程S151に戻る。工程S151において、第1の被写体像の複数の特徴点のうち、未選択の1つが新たに選択され、選択された第1の被写体像の特徴点が変更される。工程S151~工程S155の処理は、検出された第1の被写体像の特徴点の全てに対応する第2の画像中の第2の被写体像の特徴点が検出されるまで、選択された第1の被写体像の特徴点を変更して、繰り返し実行される。
工程S130において検出された第1の被写体像の複数の特徴点の全てが、工程S151において選択済みである場合(工程S156=Yes)、工程S150の処理は終了する。工程S150の処理が終了すると、測距方法S100は、工程S160に移行する。
図10に戻り、工程S160において、サイズ取得部3は、検出された第2の被写体像の複数の特徴点間の距離を測定することにより、第2の被写体像のサイズYFD2を取得する。工程S160において取得された第2の被写体像のサイズYFD2は、制御部2のメモリー内に一時保存される。
サイズ取得部3によって第1の被写体像のサイズYFD1および第2の被写体像のサイズYFD2が取得されると、測距方法S100は、工程S170に移行する。工程S170において、距離算出部5は、制御部2のメモリー内に一時保存されている第1の被写体像のサイズYFD1および第2の被写体像のサイズYFD2から、上記式(14)MR=YFD2/YFD1に基づいて、第1の被写体像の倍率m1と第2の被写体像の倍率m2との像倍比MRを算出する。次に、工程S180において、距離算出部5は、関連付情報記憶部4に保存されている関連付情報を参照し、算出した像倍比MRに基づいて、被写体100までの距離aを算出する。なお、関連付情報が被写体100までの距離aを算出するための前述の式である場合には、距離算出部5は、関連付情報に加え、制御部2のメモリー内に保存されている固定値も参照し、被写体100までの距離aを算出する。
工程S180において、距離算出部5が、被写体100までの距離aを算出すると、測距方法S100は、工程S190に移行する。工程S190において、3次元画像生成部6が、距離算出部5によって算出された被写体100までの距離aおよび第1の撮像系IS1または第2の撮像系IS2が取得した被写体100のカラーまたは白黒の輝度情報(第1の画像または第2の画像)に基づいて、被写体100の3次元画像を生成する。なお、第1の撮像系IS1の第1の撮像素子S1および第2の撮像系IS2の第2の撮像素子S2が、被写体100の位相情報を取得する位相センサーである場合には、工程S190は省略される。
その後、ここまでの工程において取得された被写体100のカラー若しくは白黒の輝度情報または位相情報(第1の画像および/または第2の画像)、被写体100までの距離a、および/または被写体100の3次元画像が、表示部7に表示され、または通信部9によって外部デバイスに送信され、測距方法S100は終了する。
以上、本発明の測距カメラを図示の実施形態に基づいて説明したが、本発明はこれに限定されるものではない。本発明の各構成は、同様の機能を発揮し得る任意のものと置換することができ、あるいは、本発明の各構成に任意の構成のものを付加することができる。
本発明の属する分野および技術における当業者であれば、本発明の原理、考え方、および範囲から有意に逸脱することなく、記述された本発明の測距カメラの構成の変更を実行可能であろうし、変更された構成を有する測距カメラもまた、本発明の範囲内である。例えば、第1実施形態から第4実施形態の測距カメラを任意に組み合わせた態様も、本発明の範囲内である。
また、図7~図9に示された測距カメラのコンポーネントの数や種類は、説明のための例示にすぎず、本発明は必ずしもこれに限られない。本発明の原理および意図から逸脱しない範囲において、任意のコンポーネントが追加若しくは組み合わされ、または任意のコンポーネントが削除された態様も、本発明の範囲内である。また、測距カメラの各コンポーネントは、ハードウェア的に実現されていてもよいし、ソフトウェア的に実現されていてもよいし、これらの組み合わせによって実現されていてもよい。
また、図10および図11に示された測距方法S100の工程の数や種類は、説明のための例示にすぎず、本発明は必ずしもこれに限られない。本発明の原理および意図から逸脱しない範囲において、任意の工程が、任意の目的で追加若しくは組み合され、または、任意の工程が削除される態様も、本発明の範囲内である。