説明

ステレオカメラ装置、校正方法およびプログラム

【課題】ステレオカメラ装置、校正方法およびプログラムを提供すること。
【解決手段】ステレオカメラ装置100は、基線長だけ離間して設置された2台のカメラ102、104を備え、演算部120は、2台のカメラ102、104によって取得された画像から、時間間隔を隔てた同一の対応点の視差を取得して距離計算のために使用される視差オフセット値を対応点毎に計算し、個々の対応点について得られた視差オフセット値の値から最適値を決定し、最適値をステレオカメラ装置を使用した距離Zの計算のための校正パラメータとして更新する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、映像を使用して対象までの距離を測定する技術に関し、より詳細には、効率的なパラメータ校正が可能なステレオカメラ装置、校正方法およびプログラムに関する。
【背景技術】
【0002】
物体に対してカメラなどの複数の撮像装置を異なる位置に配置し、撮像された画像から物体までの距離を測定する測距方式として、いわゆるステレオカメラ装置が知られている。平行ステレオカメラ装置は、基線長として参照される一定の間隔をもって固定された2台のカメラを備え、カメラの光軸が平行となるように配置されている。ステレオカメラ装置は、第1のカメラで取得した物体画像と、第2のカメラで取得した物体画像の視差を光学系に固有のパラメータを利用して距離に変換することによって物体までの距離を決定するものである。
【0003】
図7には、従来のステレオカメラ装置の光学系を示す。図7に示すように、ステレオカメラ装置が備える2台のカメラ1、1は、所定の基線長Bをもって配置されている。これらのカメラは、CCDやCMOSなどからなるイメージセンサ(撮像素子)及び撮影視野内の被写体の像をイメージセンサの撮像面上に結像させる撮影レンズ(撮影光学系)をそれぞれ有する。
【0004】
平行配置した2台のカメラによる距離計測を、さらに図7を使用して説明する。ステレオカメラ装置700は、焦点距離f、光学中心O、撮像面Sを有するカメラ1が、図7の紙面上下方向を光軸方向として配置され、かつ、同じ焦点距離fを持つカメラ1は、カメラ1の紙面右手側に距離:Bだけ離れて平行に配置されているものとする。ここで、カメラ1の光学中心ORから光軸方向に距離:dだけ離れた位置にある被写体Xの像は、カメラ1の撮像面S上における直線X−Oとの交点であるPに像を結ぶ。
【0005】
一方、カメラ1では、同じ被写体Xの像は、撮像面S上の位置Pに像を結ぶ。ここで、カメラ:1の光学中心:Oを通り、直線:X−Oと平行な破線と、撮像面Sとの交点をP′とし、点P′とPの距離をpとする。P′は、カメラ:1上の像Pと同じ位置座標であり、距離pは、同じ被写体の像の、2つのカメラの撮像面上での位置ずれ量を表し、これを視差と定義すると、三角形:X−O−Oと、三角形:O−P′−Pは相似なので、基線長Bと焦点距離fが既知ならば、視差pの値から光学中心から被写体Xまでの距離dを、d=B×f/pとして求めることができる。
【0006】
ステレオカメラ装置は、多くの場合車両などの移動体に設置され、距離計測などのために利用される。このため、ステレオカメラ装置は、持続的な振動や温度変化などに曝される。平行ステレオカメラ装置が含む2台のカメラの光軸は、平行であることが、図7で説明したように測距計算の前提となっているので、光軸の平行度ずれ(一方のカメラの光軸に対する他方のカメラの光軸が平行ではなくなる方向への回転)、光学中心に対する撮像センサの横方向の位置ずれは、本来取得されるべき物体の像位置を視差方向に対して変位させてしまう。この様な光学系のアライメントのズレは、距離測定の重大な誤差を生じさせてしまうことになり、従来から視差オフセットと呼ばれる誤差として知られている。図7で説明したように、視差オフセットは、直接視差に反映されてしまうので、距離精度の劣化の大きな要因となる。
【0007】
距離精度の劣化を防ぐためには、製造時でのパラメータの正確な調整が必要であるが、車両の運転にともなう振動、車体の歪みや温度変化などの経時変化により、配置の微小変化は避けられない。この理由から、ステレオカメラ装置の距離精度を保つため、ステレオカメラ装置の販売後に、距離が予めわかっている画像、すなわちテストチャートを利用して装置を校正する方法が考えられるが、校正期間中には、ステレオカメラ装置が利用できないことになるなど、利用者の利便性を大きく損なってしまう。
【0008】
上述した不都合を改善するため、テストチャートを必要とせずに、走行中の周りの風景の特徴が既知な対象物(例えば距離の既知な白線や信号機や電柱)を利用して、校正する方法が既に提案されている。例えば、特開平10−341458号公報(特許文献1)では、ステレオカメラ装置の設置方向のずれを検出するために、静止物体の形状を記憶しておき、記憶と照合して静止物体を認識し、速度センサなどから測定できる移動距離と認識静止物体との距離関係から視差オフセットを求める技術が開示されている。また、特許第3436074号明細書(特許文献2)では、複数の校正用撮影地点の同一の静止物体の画像および校正用撮影地点間の距離とを元に校正を行う車載ステレオカメラが記載されている。さらに、特開2009−176090号公報(特許文献3)では、撮影された画像から対象物を検出して周囲環境を認識する環境認識装置が記載されている。さらに特願2009−288233号明細書(特許文献4)では、カメラで撮影された画像の傾きを補正する技術が記載されている。
【発明の概要】
【発明が解決しようとする課題】
【0009】
しかしながら、上述した従来の技術では、高速道路などの予め距離の既知な白線を利用したり、信号機や電柱といった限られた物体しか静止対象物として認識できないので、視差オフセットを校正できる場所・タイミングが限られる。また、走行中の周りの風景は常に変化し、レンズの歪みにより画像中のどこに対象物があるかによって見え方も変化してしまうため、正確に静止物を認識する事が困難であるとともに、予め形状を記憶しておいた静止物のみにしか利用できないという問題があった。
【0010】
本発明は、上記従来技術の問題点に鑑みてなされたものであり、対象物の動静や形状、時間、場所を問わず、またステレオカメラ装置の機能を最大限に利用しながら視差オフセットを高精度に校正することを可能とする、ステレオカメラ装置、校正方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明の物体までの距離検出を行うステレオカメラ装置は、基線長だけ離間して設置された2台のカメラと、演算部を備えている。演算部は画像処理部、オフセット値計算部、統計処理部、距離計算部を含んでいる。
【0012】
本発明の画像処理部は、2台のカメラにより取得された撮像画像間での対応点を探索し、視差を計算し、対応点毎に取得された視差の値をオフセット値計算部に入力する。オフセット値計算部は、異なった時刻t、tの対応点の視差から、物体までの距離Zを使用することなく、ステレオカメラ装置を搭載した車両などの移動距離を使用して、対応点kについて視差の値を修正するオフセット値である視差オフセット値を対象点の個数1〜N分だけ計算する。
【0013】
計算された視差オフセット値は、統計処理部に送付され、オフセット値計算手段の計算結果を視差オフセット値の出現頻度へと変換し、出現頻度は、統計解析されて校正パラメータとして使用する前記視差オフセット値の最適値が決定される。
【0014】
距離計算部は、視差画像から測定したい対象物までの距離を、基線長、カメラの焦点距離、および統計処理部が決定した校正パラメータを使用して計算する。
【0015】
また、本発明のステレオカメラ装置は、視差オフセット値の最適値を使用して距離測定のために利用する校正パラメータを修正する修正手段を含むことができる。本発明の修正手段は、モータステージまたはNVRAMとすることができる。
【0016】
さらに本発明は、上述の演算部を使用して校正パラメータqを取得し、以後の距離計算に利用させることを可能とする校正方法およびプログラムを提供する。
【図面の簡単な説明】
【0017】
【図1】本実施形態のステレオカメラ装置100の構成を示す概略図。
【図2】本実施形態のステレオカメラ装置100の詳細な機能ブロック200を示す図。
【図3】本実施形態の対象点kについて、視差pk0の関係を説明する図。
【図4】時刻t後、適切な時間間隔で取得された左右画像の実施形態を示す図。
【図5】本実施形態の校正方法の詳細なフローチャート。
【図6】本実施形態の校正方法により生成された頻度マトリックスを、視差オフセット値qkの最小値から最大値までの範囲で横軸に視差オフセットの値、縦軸に頻度Aとして示した図。
【図7】ステレオカメラ装置を使用した距離測定の光学的関係を示した図。
【発明を実施するための形態】
【0018】
以下、本発明を実施形態をもって説明するが、本発明は後述する実施形態によって限定されるものではない。図1は、本実施形態のステレオカメラ装置100の構成を示す概略図である。ステレオカメラ装置100は、2台のカメラ102、104を含んで構成されている。カメラ102、104は、デジタル出力のカメラとされていて、撮影した画像を、演算部120に渡し、演算部120が左右のカメラからの画像を利用した測距計算を実行することにより、カメラ102、104の光学中心から物体108までの距離Zを取得する。取得された距離は、演算部120に接続された外部装置(図示せず)に対して送付され、外部装置による距離Zの値を利用可能とさせている。また、演算部120を含むステレオカメラ装置100は、ユーザインタフェースや外部装置との間のI/O制御を可能とする制御部(図示せず)からの制御により、距離計測、オフセット値測定およびパラメータ校正を実行する。
【0019】
カメラ102、104は、レンズ102a、104aの中心から計って基線長Bだけ離間して設置され、それぞれの光軸110、112が平行となるように配置されている。カメラ102、104は、物体108のそれぞれ右(R)画像および左(L)画像を取得するためにレンズ102a、104aおよび光電変換素子102b、104bを備えていて、シャッタ(図示せず)およびレンズ102aを通過して光電変換素子上に結像した光イメージを光電変換し、デジタルデータとして記録する。記録された画像は、左右画像それぞれ演算部120に渡されて以後の測距計算および校正処理のために利用される。
【0020】
カメラ102、104は、基線長Bだけ離間して配置され、それらの光軸110、112が平行となるように配置されている。そして各カメラ102、104は、焦点距離fを有するレンズ102a、104aを備えている。この配置の光学中心から物体108までの距離Zは、左右のカメラ102、104によって取得する物体108の左右両画像中の物体108の視差pを使用して、下記式(1)で与えられる。なお、視差pとは、カメラ102、104が取得した物体108の画像中の位置の差として定義される。
【0021】
【数1】

【0022】
光軸110、112は、正確な測距を行うためには、正確に平行とすることが必要とされる。しかしながら、製造時や設置時の設定状態によって正確な平行を確保することは困難である。このため、多くの場合、実際のステレオカメラ装置100は、主として平行度に関連したパラメータを利用して正確な測距演算ができるように、校正パラメータqを含む下記式(2)を利用して測距演算を行なっている。
【0023】
【数2】

上記式(2)中に出現するパラメータqは、視差オフセットとして参照される校正パラメータである。本実施形態では、校正パラメータqを、以下の手法で計算する事を特徴とする。異なる時刻の画像上で対応する点を求め、対応点kについて時刻異なる、すなわち、対応点kまでの自分の車の走行距離から、対応点kについて取得された視差オフセット値qkを画像全体に渡って求め、視差オフセット値qを統計処理し、画像から与えられる視差オフセット値qの最適値として校正パラメータqを決定するものである。ステレオカメラ装置100が設置された後、時間が経過すると、ステレオカメラ装置が搭載された車両の振動などの理由で、カメラ102、104の経時的な回転などにより平行度が変化する。図1では、カメラ104は、経時的に微少に回転し、位置106で示すように、その光軸の平行度が劣化した場合についても例示的に示されている。
【0024】
この様な経時的な変化は、カメラ102においても発生することが想定されるので、従来のステレオカメラ装置100では、定期的に予め距離の設定されたテストチャートを読み込んで視差オフセット値を取得し、取得された視差オフセット値で以前の校正パラメータqを置換し、NVRAMといった不揮発性メモリに格納し、以後の測距演算に利用する。また、ステレオカメラ装置100が光軸を修正することが可能なモータステージを備えている場合、モータ駆動のための制御データとして利用することができる。
【0025】
図2は、本実施形態のステレオカメラ装置100の詳細な機能ブロック200を示す。ステレオカメラ装置100は、カメラ102、104と、演算部120とを含んでいる。演算部120は、カメラ102、104に対して画像取得を指令すると共に、カメラ102、104が取得した画像を利用する測距演算およびパラメータ校正を行うための演算を実行する。
【0026】
演算部120は、ワンチップマイコン、ASIC、車載組込コンピュータ、またはパーソナルコンピュータなどとして実装することができ、外部装置230と相互通信を行って演算部120が取得した画像を利用した距離計算の結果を外部装置230に送付し、外部装置230による距離Zを用いた各種の制御を可能とさせている。なお、外部装置230は、中央処理装置(CPU)、RAM、ROM、USBメモリなどその他のメモリ装置との間のメモリアクセスを可能とする演算部120は別体として構成されるか、または一体として構成される情報処理装置として実装することができる。
【0027】
図2に示す演算部120は、その距離計算を実行する場合、左右のカメラ102、104が取得した画像を画像処理部202により画像解析し、左右のカメラ102、104が取得した画像に共通する対応点を決定する。そして、画像処理部202は、決定された物体の左右の同一の画素を対応点とし、対応点に関し、画像中での位置座標の差として視差pを計算する。なお、本実施形態においては、画像処理部202は、画像全体に渡って視差を計算させることが必要とされるので、撮像画像の対応点探索および視差計算の精度を向上させるため、公知の歪み補正処理などを適用することができる。
【0028】
計算された視差pは、オフセット値計算部206に送られ、距離計算部208に送られる。オフセット値計算部206は、演算部120においてパラメータ校正処理を開始するタイミングの到来、またはパラメータ校正処理を開始するための外部からの割り込み信号を受領してパラメータ校正処理を開始する。それ以外の期間は、視差pのみを使用して距離測定を行う。パラメータ校正処理は、演算部120が、速度センサ204と、カメラ102、104が画像取得を行う時刻とを同期させることにより実行される。
【0029】
距離計算部208は、オフセット値計算部206が距離計算を実行している場合には、オフセット値計算部206が受け取った視差pをそのまま受け取り、上記式(1)にしたがって、その時点で有効な校正パラメータqを利用して距離Zを計算する。計算された距離Zは、インタフェース210を介して演算部120から外部装置230へと送付される。外部装置230は、距離Zを使用して、さらにアラーム、制動装置、エンジン制御など、他の車載装置の制御を行っている。
【0030】
演算部120は、さらに統計処理部240を含んでいる。統計処理部240は、図2に示したオフセット値計算部206および速度センサ204と共に本実施形態のパラメータ校正手段を提供する。速度センサ204は、ステレオカメラ装置100が搭載されている車両などの移動速度を検出する機能手段であり、車両の場合には、車速センサや、緯度経度座標の差と時刻t、tの時間差から速度を計算可能なGPS(Global Positioning System)装置の出力とすることもできる。さらに、他の実施形態では、速度センサ204は、ステレオカメラ装置100の演算部120の組込み装置として実装することもできる。
【0031】
本実施形態におけるパラメータ校正処理について、より具体的に説明する。本実施形態のパラメータ校正処理では、まず、演算部120が基準となる時刻tのカメラ102、104に対して画像取得を指令し、同時に速度センサ204に対して速度情報送付を要求する。
【0032】
その後、設定された時間である時刻tで、演算部120は、カメラ102、104に対して画像取得を指令する。この結果、ステレオカメラ装置100は、時刻tおよび時刻tの2つのカメラからの画像、つまり4枚の画像を取得する。時刻tの2つのカメラの画像は画像処理部で対応点探索がされ、視差画像が計算される。また、同様に時刻tの2つのカメラの画像も画像処理部で対応点探索がされ、視差画像が計算される。これらの視差画像はオフセット値計算部に入力される。また、時刻tとtの視差画像の対応点を求めるため、視差画像だけではなく、視差画像を求める際に使用した撮影画像もオフセット値計算部に入力される。
【0033】
一方、演算部120は、速度センサ204から取得した速度情報をオフセット値計算部206に設定し、カメラ102、104が取得した2つのカメラからの画像の2セットの共通する対応点についての視差値p、pをセットする。pは、時刻tにおける対応点kの視差であり、pは、時刻tにおける同一の対応点kの視差である。なお、以下の説明は、説明の明確化のため、対応点kにフィックスしたものとして説明する。
【0034】
上述したようにして得られた視差p、pを使用し、オフセット値計算部206は、pおよびpを使用すると、時刻tとtとの間におけるそれぞれの距離Z、Zと時刻t、tそれぞれの視差値p、pとの関係は、下記式(3)で与えられる。
【0035】
【数3】

【0036】
およびZの走行距離Dは、対応点が静止物であれば、ステレオカメラ装置100が搭載されている車両の移動距離であり、対応点が車両などの移動物であれば、相対速度を反映した距離となる。移動物の場合、ステレオカメラ装置100に対する相対速度が異なるので、Zの値は、Zを中心として大小方向に分布することになる。
【0037】
上記式(3)を使用すれば、走行距離Dは、D=Z−Zで与えられ、既知のB、fおよび測定変数の視差p、p、および対応点kについての視差オフセット値qを使用して下記式(4)で与えられる。
【0038】
【数4】

【0039】
上記式(4)は、変形により、視差オフセット値qを含む2次方程式に変換できる。そして、視差オフセット値qは、上記式(4)のqについての2次方程式の解(q≧0)として下記式(5)で与えられる。
【0040】
【数5】

【0041】
この視差オフセット値qは、移動体相互の相対速度を反映し、必ずしも同一にはならないことは上述した通りである。本実施形態では、対応点k(k=1〜N)毎に上述した関係式が与えられるので、対応点k毎に校正パラメータの候補値として画像全体について視差オフセット値qを計算する。オフセット値計算部206は、上記式(5)の処理を実行している。
【0042】
以下、本実施形態で使用される校正処理部について説明する。オフセット値計算部206の処理が終了すると、計算されたqの値は、統計処理部240に送られる。統計処理部240は、計算されたqの値を総当たり的にあらかじめ設定されたチャンクに帰属されるか否かを検査し、処理中のqが、例えばチャンクQ(mは、正の整数である。)帰属される場合、チャンクQのカウント値をインクリメントし、チャンクQに分類される視差オフセット値の個数をカウントし、視差オフセット値の頻度Aを生成する。
【0043】
そして、統計処理部240は、全対応点の処理を終了した時点のカウント値を、視差オフセット値の出現する頻度Aを使用し、頻度マトリックスFを下記式(6)として生成する。なお、Qは、視差オフセット値のチャンクを与え、当該チャンクQは、校正パラメータqを与えるためのインデックス値Iで参照され、I=最小値+Δ×Mで規定される値である。なお、チャンクQについては、校正処理によって対応可能な視差オフセットの最大値を予め設定しておき、最大値までの区間にチャンク数mを均等に割り当てて頻度積算を行うことができる。この実施形態では、画像全体について視差オフセットが取得できていない場合でも頻度分布のピークと、残りのサンプル点の個数との比較で、最適値を効率的に決定することが可能となり、ステレオカメラ装置100が校正処理のため距離測定ができない期間を最小化させることができる。なお、他の実施形態では、全画素について視差オフセットが計算できた後に頻度計算を実行することもできる。
【0044】
【数6】

【0045】
上記頻度マトリックスFは、校正パラメータqを提供するための統計データを提供し、統計処理部240は、統計データを処理して最適値を得るためにこれまで知られたいかなる統計処理を使用することができる。この際の統計処理としては、例えば最頻値、中央値、平均値、重み付け平均値などを使用することができ、最頻値を利用する場合、視差オフセット値qは、fmaxを与えるインデックス値Imaxとして決定することができる。この他にも、視差オフセット値qを、正規分布を仮定した回帰分析、多項式分布を使用した回帰分析、2項分布、χ2乗分布、ポアッソン分布、β分布など、分布関数を利用した回帰分析により取得するなど、いかなる統計モデルであっても利用することができる。
【0046】
統計処理において、分散を計算し、分散の値が予め設定された視差オフセット値qの振れ幅に対して一定以上の割合を有する場合には、それまでの結果を廃棄し、再度時間をおいて処理を再実行することで、不適当な値が校正パラメータqとして採用されてしまうことを防止することもできる。大きな衝撃によってカメラ間の位置関係が大きく変わるときには視差オフセット値の初期値からの変化は大きくなり、経年変化などでは視差オフセット値qkの変化は小さくなるはずである。よって視差オフセット値qの振れ幅の設定値はどのような変化を検知したいかによって決まる。
【0047】
また、他の実施形態では、正規分布を仮定して統計解析を行う場合、現在有効な校正パラメータqを取得したときの標準偏差σpastを記憶させておき、今回取得した値の検査を行って、値の採否を決定することもできる。
【0048】
校正パラメータqは、下記式(7)を使用してカメラ102、104の光軸のズレ角に変換することができる。
【0049】
【数7】

【0050】
校正パラメータqから得た角度θは、ステレオカメラ装置100がカメラ駆動システムを有している場合には、モータステージを駆動させる量として、モータに送付される。また、ステレオカメラ装置100がカメラ駆動システムを有していない場合には、距離計算部208に送られ、以後の距離Zの計算に使用する校正パラメータとして、NVRAM234などに格納される。距離計算部208の取得した距離Zは、インタフェース210を介して演算部120から外部装置230に送付され、距離を使用した各種制御のために利用される。
【0051】
本実施形態では、カメラ102、104で撮影された画像の対応点は画素単位で探索することもできるし、処理速度の観点から、左右の画像をメッシュ分解し、メッシュの輝度、色相、色分布などを計算し、メッシュ単位で対応点を探索することもできる。
【0052】
図3は、本実施形態が利用する対応点kについて、視差pk0との関係を説明する図である。ステレオカメラ装置100は、左右のカメラ102、104で取得した左右画像それぞれに対してメッシュを割り当てた後、左右画像の対応点(メッシュ)を探索する。左右画像の対応点の探索は、メッシュ毎に計算された輝度、色相、色分布などを利用して行うことができる。基線長Bにも依存するが、左右画像はそれほど大きくずれないので、本実施形態の探索は、例えば左画像で決定した対応点に対して、周囲の数メッシュ程度の近傍探索で終了することができる。
【0053】
図3(a)は、説明のために左右画像における対応点の状態を示している。左右画像を重畳すると、左画像の特徴点と右画像の特徴点とは、ほぼ数メッシュの範囲内に存在する。そして、ステレオカメラ装置100のカメラ102、104の基線が水平とされている場合、カメラの設置されている側から見て視線のズレの方向に探索すれば効率的に対応点を発見することができる。図3(a)では、左右画像の視差を略リアルスケールで示しているので、明確に示されていない。図3の円300の内を拡大して示したのが図3(b)である。図3(b)に示すように、対応点kr0、kl0は、水平方向に近接して存在し、対応点kr0、kl0の画像中の位置ずれが、視差pk0を与える。なお、時刻tでの対応点については、kr1およびkl1で示す。そして、対応点kの時刻tでの視差をpktとすると、pkt=krt−kltで与えられる。実施形態においては、画像全体に渡って視差を計算することから、撮像画像の対応点探索および視差計算の精度を向上させるために、公知の歪み補正処理などがされている事が望ましい。
【0054】
図4は、時刻t後、適切な時間間隔で取得された左右画像の実施形態を示す。時間の経過に対応して、相対速度の相違に対応した物体の位置変化が生じている。ただし、図4に示す実施形態では、時間経過が僅かなので、左右画像410、420は、図3の画像と略同一の画像となっている。時刻tと時刻tとの差は、時刻tと時刻tとで画像エッジ付近で対応点が存在しなくなる、すなわち探索失敗が発生しない程度の差とすることが好ましく、あまり長いと精度が低下するし、また短すぎると充分な視差の差が得られないので、速度センサ204などのログデータを参照して、速度の大小に応じて、視差の差が得られ、かつ対応点探索の失敗が発生しない程度の差となるように適宜設定することが望ましい。
【0055】
本実施形態では、同一時刻に取得した右画像および左画像を左右画像中の同一の物体を識別できる限り、物体を構成する特定の画素の画像中の位置をそのまま使用することもできるし、他の実施形態では、画像をメッシュ分割した後、当該メッシュ内に含まれる画素をメッシュ内で平均化し、メッシュの位置座標を使用することもできる。以下、メッシュ自体またはメッシュが含む画素または画素領域を総合して本実施形態で計算の基準となる対応点として参照する。
【0056】
本実施形態でメッシュ分割する際のサイズは特に限定はないが、メッシュ分割を細かくしすぎると、左右画像中における処理対象である対応点の探索に時間がかかり、大きくしすぎると、校正精度を低下させる。このため、画像のサイズにもよるが、本実施形態においてメッシュ分割を適用する場合、縦横100メッシュ、画像全体で10,000メッシュ程度に分割することができる。
【0057】
図5は、本実施形態のオフセット値計算部の処理の詳細なフローチャートである。図5の処理は、ステップS500から開始し、ステップS501で、画像処理部から時刻tの撮像画像と視差画像を取得する。ステップS502では、時刻tの撮像画像と視差画像を取得する。ステップS503では、速度センサからの情報から時刻tから時刻t間の自分の車の走行距離Dを計算し、ステップS504では、時刻tと時刻tの撮像画像から異なる時刻の画像の対応点探索を行う。
【0058】
探索は、時間を隔てた時刻tと時刻tの撮像画像としてカメラ102とカメラ104の画像があるが、102または104の片方のカメラの画像間で対応点探索を行ってもよいし、両方のカメラの画像から対応点探索を行ってもよい。対応点探索には、SAD(sum of absolute difference)やPOC(位相限定相関)などの周知の技術を利用する事ができる。時刻間画像における対応点を対応点k(k=1〜N)と記述する。
【0059】
ステップS505とS506では、ステップS504で探索した時刻間画像の対応点kにおける視差値を求める。ステップS505では時刻tの視差画像から対応点kにおける視差値pk0を取得し、S506では時刻tの視差画像から対応点kにおける視差値pk1を取得する。
【0060】
ステップS507ではステップS505とS506で求めた対応点kの時刻tでの視差値pk0と時刻tでの視差値pk1と自分の車の走行距離Dから、上記式(5)より、視差オフセット値qを算出する。ここで、対応点kは画像全体に渡って複数あるので視差値pk0と視差値pk1は複数あるが、時刻tとt間の自分の車の走行距離の値は一つの同じ値Dである。ステップS508では、ステップS507で計算された視差オフセット値qが統計処理部に出力される。
【0061】
ステップS509では、画像全体に渡って複数ある対応点kの視差オフセット値qの計算が全て終了したか否かを判断する。計算が終了していない場合にはS505に戻し、全対応点の計算が終了するまで処理を反復する。一方、ステップS509で全対応点の計算が終了したときには、そこでオフセット値計算部の処理は終了となる。この終了時には時刻tとtに対応する画面全体の視差オフセット値が統計処理部に出力されている状態となっている。
【0062】
図6は、本実施形態の校正方法により生成された頻度マトリックスを、視差オフセット値qの最小値から最大値までの範囲で横軸に視差オフセットの値、縦軸に頻度Aとして示した図である。図6の実施形態では、視差オフセット値qは、対応点毎の相対速度に対応して、分布する。ステレオカメラ装置100は、対応点毎について得られる視差オフセット値qの値を、出現頻度のヒストグラムとして統計処理する。この際、視差オフセット値qは、その値毎に特定のチャンクQに累積カウントされて行き、全対応点の計算が終了した時点で、インデックス値Iを有し、幅がΔのヒストグラムを与える。図6に示した分布を統計解析することによって、最適値を、校正パラメータqとして取得する。なお、校正パラメータqは、インデックス値Iの値をそのまま使用して決定することもできるし、重み付け平均などを利用する場合は、Iではない正の実数を利用することもできる。
【0063】
なお、本実施形態の他の実施形態では、頻度ヒストグラムとすることなく散布図のままN個の視差オフセット値qを一括して統計解析することにより、最適値解析を行うことができることは、言うまでもないことであり、演算部120の能力やメモリ容量などに応じて適宜最適な統計解析手法を利用することができる。
【0064】
以上のように、本発明によれば、対象物の動静や形状を問わず、対象物との相対距離を精度良く取得せず、時間、場所を問わず、またステレオカメラ装置の機能を最大限に利用しながら視差オフセットを高精度に校正することを可能とする、ステレオカメラ装置、校正方法およびプログラムを提供することができる。
【0065】
本実施形態の上記機能は、C、C++、Java(登録商標)などのプログラミング言語やアセンブラ言語などで記述された装置実行可能なプログラムにより実現でき、プログラムは、ハードディスク装置、CD−ROM、MO、フレキシブルディスク、EEPROM、EPROMなどの装置可読な記録媒体に格納して頒布することができ、また他装置が可能な形式でネットワークを介して伝送することができる。
【0066】
これまで本実施形態につき説明してきたが、本発明は、上述した実施形態に限定されるものではなく、他の実施形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【符号の説明】
【0067】
100 ステレオカメラ装置
102 カメラ
102a レンズ
102b 光電変換素子
104 カメラ
106 位置
108 物体
110 光軸
120 演算部
200 機能ブロック
202 画像処理部
204 速度センサ
206 オフセット値計算部
208 距離計算部
210 インタフェース
230 外部装置
234 NVRAM
240 統計処理部
【先行技術文献】
【特許文献】
【0068】
【特許文献1】特開平10−341458号公報
【特許文献2】特許第3436074号明細書
【特許文献3】特開2009−176090号公報
【特許文献4】特願2009−288233号明細書

【特許請求の範囲】
【請求項1】
物体までの距離検出を行うステレオカメラ装置であって、前記装置は、
基線長だけ離間して設置された2台のカメラと、
前記2台のカメラによって取得された画像から画像上の物体までの距離を計算するための演算手段とを備え、
前記演算手段は、
前記2台のカメラにより取得された画像の対応点を探索し、対応点の撮像面上の位置座標の差から2つの視差を計算する画像処理手段と、
少なくとも2つの時刻において前記画像処理手段により規定された前記2つの視差から前記画像全体に渡って視差オフセット値を計算するオフセット値計算手段と、
前記視差オフセット値の分布を統計解析し、校正パラメータとして使用する前記視差オフセット値の最適値を決定する統計処理手段と
を備える、ステレオカメラ装置。
【請求項2】
請求項1に記載にステレオカメラ装置において、前記統計処理手段は、前記最適値を決定するために前記視差オフセット値の頻度分布を作成することを特徴とする、ステレオカメラ装置。
【請求項3】
請求項1または2に記載のステレオカメラ装置において、前記校正パラメータを使用して前記物体までの距離を計算する、距離計算手段を含むことを特徴とする、ステレオカメラ装置。
【請求項4】
請求項1〜3のいずれか1項に記載のステレオカメラ装置において、前記視差オフセット値の最適値を使用して距離測定のために利用する校正パラメータを修正する修正手段を含むことを特徴とする、ステレオカメラ装置。
【請求項5】
請求項1〜4のいずれか1項に記載のステレオカメラ装置において、前記修正手段は、モータステージまたはNVRAMへの書き込みを行うメモリアクセス手段であることを特徴とする、ステレオカメラ装置。
【請求項6】
物体までの距離検出を行うステレオカメラ装置の校正方法であって、前記ステレオカメラ装置が、
基線長だけ離間して設置された2台のカメラを時間的に同期させて時間的に隔てた画像を取得するステップと、
前記2台のカメラにより取得された画像の対応点の画像の撮像面上の位置座標の差から、視差を計算するステップと、
時間的に間隔をあけて取得された少なくとも2つの画像の視差から前記2つの画像上の同一の対応点までの距離を、前記基線長、前記カメラの焦点距離、および視差オフセット値を使用して計算するステップと、
時間的に隔てて取得された前記同一の対応点までの距離差および前記2つの画像の視差から前記同一の対応点での視差オフセット値を前記画像全体に渡って計算するステップと、
前記視差オフセット値の分布を統計解析し、前記視差オフセット値の最適値を決定するステップと、
決定した前記最適値で距離測定のために利用する校正パラメータを修正するステップと
を実行する、校正方法。
【請求項7】
請求項6に記載の校正方法において、前記最適値を決定するために前記視差オフセット値の頻度分布を作成するステップをさらに含むことを特徴とする、校正方法。
【請求項8】
請求項1〜5のいずれか1項に記載の機能手段としてコンピュータを機能させる、コンピュータ実行可能なプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2012−83330(P2012−83330A)
【公開日】平成24年4月26日(2012.4.26)
【国際特許分類】
【出願番号】特願2011−121378(P2011−121378)
【出願日】平成23年5月31日(2011.5.31)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】