(57)【特許請求の範囲】
【請求項１】
車両上のステレオカメラによる映像に基づいて物体を検出する物体検出装置であって、
前記映像におけるシーンの３次元情報を演算する視差演算部と、
前記３次元情報に基づいて、前記車両が走行している路面と前記ステレオカメラとの間の距離を示す第１の路面パラメータを算出する第１の路面パラメータ推定部と、
前記第１の路面パラメータと、前記車両の走行状態に関する車両情報とを関連付けて蓄積する路面パラメータ蓄積部と、
前記路面パラメータ蓄積部によって蓄積された車両情報及び第１の路面パラメータに基づいて、前記車両に関する所定条件下における第１の路面パラメータを用いて第２の路面パラメータを算出する第２の路面パラメータ推定部と、
前記第２の路面パラメータを用いて、前記物体を検出する物体検出部とを備え、
前記所定条件は、前記ステレオカメラから観測された路面と観測時における前記車両の接地面との間の角度差が、所定角度以内であることを含む
物体検出装置。
【請求項２】
前記第２の路面パラメータ推定部は、
前記路面パラメータ蓄積部によって蓄積された車両情報に基づいて、前記路面パラメータ蓄積部によって蓄積された第１の路面パラメータから前記所定条件に該当する場合の第１の路面パラメータを抽出し、
抽出した第１の路面パラメータに基づく統計処理を行って、前記第２の路面パラメータを算出する
請求項１に記載の物体検出装置。
【請求項３】
前記所定条件は、前記ステレオカメラから観測された路面と観測時における前記車両の接地面とが、勾配が変化しない同一平面であることを含む
請求項１又は２に記載の物体検出装置。
【請求項４】
前記車両情報は、前記車両における車速、ヨーレート、ピッチレート、ロールレート、操舵角、及び傾斜角のうちの少なくとも１つを示す情報を含む
請求項１〜３のいずれか１項に記載の物体検出装置。
【請求項５】
前記所定条件は、
前記車両情報におけるヨーレート、ピッチレート又はロールレートが、前記車両の直線路の走行時に対応する所定範囲内の値であることと、
前記車両情報における操舵角が、前記車両の直進状態におけるステアリングに対応する所定範囲内の値であることと、
前記車両情報における傾斜角が、前記車両が水平な路面上を走行する状態に対応する所定範囲内の値であることと
の内の少なくとも一つを含む
請求項４に記載の物体検出装置。
【請求項６】
前記映像における２本の白線に基づいて、前記２本の白線の延長線が交わる点である消失点を検出する白線消失点検出部と、
前記消失点の位置に基づいて前記映像における路面の勾配の変化を検出するレーン形状検出部とをさらに備え、
前記路面パラメータ蓄積部は、前記レーン形状検出部による路面の勾配の変化の検出結果と、前記第１の路面パラメータとを関連付けて蓄積し、
前記第２の路面パラメータ推定部は、前記路面パラメータ蓄積部によって蓄積された路面の勾配の変化の検出結果に基づいて、前記第２の路面パラメータを算出する
請求項１〜５のいずれか１項に記載の物体検出装置。
【請求項７】
前記レーン形状検出部は、前記白線消失点検出部によって検出された消失点の位置と、予め設定された直線路走行時の消失点の位置とを比較して、レーンの形状を検知する
請求項６に記載の物体検出装置。
【請求項８】
前記ステレオカメラによる映像の撮影環境を認識する撮影環境認識部をさらに備え、
前記路面パラメータ蓄積部は、前記撮影環境認識部によって認識された撮影環境を示す情報と、前記第１の路面パラメータとを関連付けて蓄積し、
前記第２の路面パラメータ推定部は、前記路面パラメータ蓄積部によって蓄積された撮影環境を示す情報に基づいて、前記第２の路面パラメータを算出する
請求項１〜７のいずれか１項に記載の物体検出装置。
【請求項９】
前記撮影環境を示す情報は、日照条件、気象条件、及び前記車両の走行路面に関する条件のうちの少なくとも１つを示す情報を含む
請求項８に記載の物体検出装置。
【請求項１０】
前記第２の路面パラメータと、予め設定された基準の路面パラメータとを比較して、前記ステレオカメラのずれ量に応じた補正パラメータを算出する補正パラメータ演算部と、
前記補正パラメータに基づいて、前記ステレオカメラに関するカメラパラメータを補正する補正パラメータ反映部と
をさらに備え、
前記物体検出部は、前記補正パラメータ反映部によって補正されたカメラパラメータを用いて、前記物体の位置を検出する
請求項１〜９のいずれか１項に記載の物体検出装置。
【請求項１１】
前記補正パラメータ反映部は、前記車両の車速を示す情報に基づいて、前記車両の停止時において、前記カメラパラメータの補正結果を反映する
請求項１０に記載の物体検出装置。
【請求項１２】
請求項１〜１１のいずれか１項に記載の物体検出装置と、
前記映像を撮影するステレオカメラと、
前記車両情報を検出する車両情報検出部と
を備えた車両。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両などの移動体に搭載したステレオカメラを用いて、障害物などの物体を検出する物体検出装置、及び車両に関する。
【背景技術】
【０００２】
車両上のステレオカメラを用いて、車両周辺のシーンにおける奥行き等の３次元情報を正確に求めるためには、設置されたステレオカメラの位置関係を正確に把握する必要がある。このような位置関係は、車両の走行による振動や経年による固定の緩み等によって徐々にずれることから、ステレオカメラの位置ずれに対するキャリブレーションを自動的に行う技術が提案されている（例えば特許文献１）。【０００３】
特許文献１は、ステレオカメラのカメラパラメータの校正を、オプティカルフローに基づき行う校正方法を開示している。特許文献１では、車両等の走行時にステレオカメラを用いてカメラに対する路面のピッチ方向の傾斜角をパラメータとして求めると共に、路面上の点についてのフレーム間の移動量、即ちオプティカルフローを求めている。特許文献１では、求めた各量とフレーム間の自車の移動量との間の関係に基づいてステレオカメラに生じた視差オフセットのずれを算出することにより、ステレオカメラの校正を行っている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１８２８７９号公報
【非特許文献】
【０００５】
【非特許文献１】“Ａ  ｆｌｅｘｉｂｌｅ  ｎｅｗ  ｔｅｃｈｎｉｑｕｅ  ｆｏｒ  ｃａｍｅｒａ  ｃａｌｉｂｒａｔｉｏｎ”，  ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｐａｔｔｅｒｎ  Ａｎａｌｙｓｉｓ  ａｎｄ  Ｍａｃｈｉｎｅ  Ｉｎｔｅｌｌｉｇｅｎｃｅ，２２（１１）：１３３０−１３３４，２０００
【非特許文献２】徐剛著「３次元ビジョン」共立出版、１９９８年
【非特許文献３】“Ｍｅａｎ  ｓｈｉｆｔ：  Ａ  ｒｏｂｕｓｔ  ａｐｐｒｏａｃｈ  ｔｏｗａｒｄ  ｆｅａｔｕｒｅ  ｓｐａｃｅ  ａｎａｌｙｓｉｓ”，  ＩＥＥＥ  Ｔｒａｎｓ．  ｏｎ  ＰＡＭＩ，  ２００２
【非特許文献４】“Ｕｓｅ  ｏｆ  ｔｈｅ  Ｈｏｕｇｈ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎ  ｔｏ  Ｄｅｔｅｃｔ  Ｌｉｎｅｓ  ａｎｄ  Ｃｕｒｖｅｓ  ｉｎ  Ｐｉｃｔｕｒｅｓ”，  Ｃｏｍｍ．  ＡＣＭ，  Ｖｏｌ．  １５，  ｐｐ．  １１‐１５
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の目的は、車両に搭載されたステレオカメラを用いた物体検出装置において、ステレオカメラの位置ずれに対するキャリブレーションを精度良く行うことができる物体検出装置を提供することにある。
【課題を解決するための手段】
【０００７】
本発明に係る物体検出装置は、車両上のステレオカメラによる映像に基づいて物体を検出する。物体検出装置は、視差演算部と、第１の路面パラメータ推定部と、路面パラメータ蓄積部と、第２の路面パラメータ推定部と、物体検出部とを備える。視差演算部は、映像におけるシーンの３次元情報を演算する。第１の路面パラメータ推定部は、３次元情報に基づいて、車両が走行している路面とステレオカメラとの間の距離を示す第１の路面パラメータを算出する。路面パラメータ蓄積部は、第１の路面パラメータと、車両の走行状態に関する車両情報とを関連付けて蓄積する。第２の路面パラメータ推定部は、路面パラメータ蓄積部によって蓄積された車両情報及び第１の路面パラメータに基づいて、車両に関する所定条件下における第１の路面パラメータを用いて第２の路面パラメータを算出する。物体検出部は、第２の路面パラメータを用いて、物体を検出する。所定条件は、ステレオカメラから観測された路面と観測時における車両の接地面との間の角度差が、所定角度以内であることを含む。
【発明の効果】
【０００８】
本発明に係る物体検出装置によると、車両の走行状態が所定条件下で算出された第１の路面パラメータを用いて第２の路面パラメータが算出される。これにより、車両に搭載されたステレオカメラの位置ずれに対するキャリブレーションを精度良く行うことができる。
【図面の簡単な説明】
【０００９】
【図１】実施の形態１に係る車両の全体構成を示す図
【図２】実施の形態１に係る物体検出装置の構成を示すブロック図
【図３】ステレオカメラによる測定原理を説明するための図
【図４】視差演算部における処理を示すフローチャート
【図５】ステレオカメラの画像平行化補正を説明するための図
【図６】第１の路面パラメータ推定部における処理を示すフローチャート
【図７】第２の路面パラメータ推定部における処理を示すフローチャート
【図８】勾配の変化がある路面を走行する状態を説明するための図
【図９】補正パラメータ演算部における処理を示すフローチャート
【図１０】勾配の変化がない道路を直進中の路面の見え方を説明するための図
【図１１】物体検出部における処理を示すフローチャート
【図１２】実施の形態２に係る物体検出装置の構成を示すブロック図
【図１３】白線消失点検出部における処理を示すフローチャート
【図１４】レーン形状検出部における処理を示すフローチャート
【図１５】実施の形態３に係る物体検出装置の構成を示すブロック図
【図１６】撮影環境認識部における処理を示すフローチャート
【図１７】実施の形態４に係る物体検出装置の構成を示すブロック図
【発明を実施するための形態】
【００１０】
以下、本発明の実施の形態について図面を参照しながら詳細に説明する。なお、同一の符号を付したものは、同一またはこれに相当するものであり、このことは明細書の全文において共通する。
【００１１】
（本願発明者の考察）
本発明の具体的な実施形態の説明に先立って、ステレオカメラを用いた物体検出装置についての本願発明者による考察について、以下説明する。
【００１２】
ステレオカメラによるシーンの奥行きを含む３次元情報は、ステレオカメラを構成する各カメラの歪みや焦点距離といったカメラ内部パラメータと、２台のカメラ間の位置関係を表すカメラ外部パラメータとに基づき求められる。このため、ステレオカメラを車両に搭載して出荷する際には、形状とサイズが既知なパターンを搭載した２台のカメラで撮影し、上記パラメータが測定される。
【００１３】
しかし、上記パラメータのうち、特にカメラ外部パラメータについては、走行による振動や、経年による固定の緩みにより、徐々にずれる。このような位置ずれが生じると、シーンの奥行きが正しく得られないため、ステレオカメラにおけるカメラ外部パラメータのキャリブレーションを自動的に行う技術が求められている。
【００１４】
上記のカメラ外部パラメータは後述する並進ベクトルと回転行列とで表され、カメラ外部パラメータのキャリブレーションは、並進ベクトルの向き及び回転行列を求める第１の工程と、並進ベクトルの長さ、即ちスケールを求める第２の工程とに分けることができる。第１の工程は、各カメラの撮影画像間で同一物体が写る点のペアを複数得ることで実施できる。一方、第２の工程は、シーン内でスケールが把握できるような特定の対象を基準として用いることとなり、このようなスケール基準を適切に設定する必要がある。本願発明者は、第２の工程を精度良く行う方法について、鋭意検討を重ねた。
【００１５】
本願発明者は、従来技術の課題について、以下のように検討した。特許文献１等の先行例では、ステレオカメラにより求めた路面の３次元情報と、１台のカメラのフレーム間での移動前後の対応付け（所謂、モーションステレオ）により求めた路面の３次元情報を求め、後者で求めた３次元情報をスケール基準に、前者のステレオカメラの校正を行っている。
【００１６】
上記のようなモーションステレオにより求めた路面の３次元情報の精度は、フレーム間におけるカメラの移動量の精度に依存する。先行例は、車速の情報からカメラの移動量を算出している。車両における車速は、車輪の回転に同期して発生する車速パルスから求めるという仕組みが一般的だが、この仕組みから車速を充分に高精度に求めることは、以下のように困難であると考えられる。
【００１７】
すなわち、通常、車載のステレオカメラは、カメラ間距離が十数センチメートル〜数十センチメートルで構成されており、ステレオカメラの経年によるずれ量は、多くとも数ミリメートル以下と見積もられる。このずれ量を、モーションステレオを基準に補正するためには、フレーム間のカメラ移動量を１％以下の誤差で求める必要があるが、上記のように車速パルスに基づく仕組みでは、このような高精度でカメラ移動量を求めることは究めて困難だと考えられる。
【００１８】
また、２台のカメラを用いたステレオ測距においても、１台のカメラの移動量に基づくステレオ測距においても、３次元位置の算出は、以下のような測定原理に基づく。即ち、２視点の位置と、その視点から見た対象に対する角度とを求め、それぞれの視点から対象方向の角度に延びる直線を想定し、想定した直線間の交点を求めることにより対象の３次元位置を求めるという原理に基づく。
【００１９】
上記の原理に基づくことから、２視点を結ぶ直線上の対象については、それぞれの視点から対象方向の角度に延びる直線が同一直線になってしまい、交点を特定できず、３次元位置が求められないということが知られている。２視点を結ぶ直線の近傍の領域についても同様に、２視点から対象方向の角度に延びる各直線がほぼ平行になり、対象方向の角度にわずかな誤差が生じるだけで、交点が大きくずれることになる。そのため、このような領域は、３次元情報を精度良く算出することが困難な領域であることが分かる。
【００２０】
ここで、カメラが前方向きに設置された車両が直線道路を前進する場合を想定すると、車両の前進に伴って、カメラも前進する。このとき、フレーム間で動いたカメラの２視点を結ぶ線を延長すると、前方の直線道路に重なることとなる。上述のとおり、ステレオ測距の原理上、２視点を結ぶ線に近い領域の３次元情報は、精度良く求めることが困難である。よって、１台のカメラのフレーム間での移動前後の対応付けにより求めた路面の３次元情報は、原理的に精度良く得ることが困難であると考えられる。
【００２１】
以上の２つの理由により、モーションステレオによる３次元情報を基準にステレオカメラの校正を行うことは困難であると考えられる。本願発明者は、鋭意検討の結果、車両の走行シーン中からステレオカメラ間の距離を補正するためのスケール基準を精度良く取得して、キャリブレーションを自動的に行う物体検出装置を考案した。以下、本発明に係る物体検出装置の具体的な実施形態について説明する。
【００２２】
実施の形態１．
実施の形態１に係る物体検出装置、及び物体検出装置を備えた車両について、以下説明する。
【００２３】
１．構成
本実施形態に係る物体検出装置及び車両の構成について、図１を用いて説明する。図１は、本実施形態に係る車両１０１の全体構成を示す図である。図１では、車両１０１から見た奥行き方向をｚ方向とし、鉛直方向をｙ方向とし、ｚ，ｙ方向に直交する車両１０１の幅方向をｘ方向としている。また、＋ｘ方向を左方、−ｘ方向を右方、＋ｙ方向を上方、−ｙ方向を下方、＋ｚ方向を前方、及び−ｚ方向を後方という場合がある。
【００２４】
車両１０１は、本実施形態に係る物体検出装置を搭載する。車両１０１は、図１に示すように、ステレオカメラ１０２と、ヨーレートセンサ１０３と、ピッチレートセンサ１０４と、車速センサ１０５と、演算装置１０６と、表示装置１０７とを備える。各センサ１０３，１０４，１０５は、それぞれ車両１０１の移動状態に関する車両情報を検出する車両情報検出部の一例である。
【００２５】
ステレオカメラ１０２は、２台のカメラ１０２ａ，１０２ｂで構成される。２台のカメラ１０２ａ，１０２ｂは、例えば車両１０１の左右方向（ｘ方向）に並んだ左カメラ１０２ａと右カメラ１０２ｂとして、互いの光軸が平行になるように配置される。２台のカメラ１０２ａ，１０２ｂは、互いに同期して映像を撮影できる。
【００２６】
本実施形態では、ステレオカメラ１０２を車両１０１前方のフロントガラス付近に設置し、車両１０１前方の路面を左右それぞれのカメラ１０２ａ，１０２ｂで撮影できるようにする。ただし、上記のようなステレオカメラの構成は一例であり、２台のカメラが視野を共有できれば、平行でなくてもよく、車両に対して前方に向けなくてもよい。
【００２７】
ヨーレートセンサ１０３は、車両１０１の鉛直軸（ｙ軸）回りの回転角速度（ヨーレート）を検出するためのセンサである。ヨーレートセンサ１０３は、車両１０１においてｙ軸と平行になるように搭載される。
【００２８】
ピッチレートセンサ１０４は、車両１０１の左右方向（ｘ方向）の軸回りの回転角速度（ピッチレート）を検出するためのセンサである。ピッチレートセンサ１０４は、車両１０１においてｘ軸と平行になるように搭載される。
【００２９】
車速センサ１０５は、車両１０１における車軸の回転数に比例してパルス信号を発生する装置であり、車輪径とパルス数から車速を算出することができる。
【００３０】
演算装置１０６は、ＣＰＵ、ＲＡＭ、ＲＯＭ等により構成される装置である。演算装置１０６は、さらにフラッシュメモリ等の内部メモリを備えてもよい。演算装置１０６のＣＰＵは、ＲＯＭ等に格納されたデータ及びプログラムをＲＡＭ等に読み出して種々の演算処理を行い、各種の機能を実現する。
【００３１】
例えば、演算装置１０６は、ステレオカメラ１０２の映像信号、ヨーレートセンサ１０３のヨーレート信号、ピッチレートセンサ１０４のピッチレート信号、車速センサ１０５の車速信号を入力して、種々簿画像処理を行うことにより車両１０１前方の物体を検出し、検出結果の物体情報を表示装置１０７に出力する。演算装置１０６は、本実施形態における物体検出装置の一例である。演算装置１０６が物体検出装置として機能するための構成の詳細については後述する。
【００３２】
表示装置１０７は、例えば液晶ディスプレイ又は有機ＥＬディスプレイで構成される。表示装置１０７は、演算装置１０６からの物体情報を含む各種情報を表示する。
【００３３】
以下、演算装置１０６の構成の詳細について、図２を用いて説明する。図２は、本実施形態における物体検出装置としての演算装置１０６の構成を示すブロック図である。
【００３４】
演算装置１０６は、図２に示すように、視差演算部２０３と、第１の路面パラメータ推定部２０４と、路面パラメータ蓄積部２０５と、第２の路面パラメータ推定部２０８とを備える。さらに、演算装置１０６は、補正パラメータ演算部２０９と、初期設定時路面パラメータ記憶部２１０と、補正パラメータ反映部２１１と、補正済パラメータ記憶部２２０と、物体検出部２１２とを備える。上記の各機能部は、演算装置１０６において例えばソフトウェアとハードウェアとの協働により実現される。
【００３５】
演算装置１０６には、ステレオカメラ１０２の左右のカメラ１０２ａ，１０２ｂ（図１）により撮影された左右カメラの映像と、車速やヨーレートなどの車両情報２０６とが入力される。車両情報２０６は、図１のヨーレートセンサ１０３、ピッチレートセンサ１０４、及び車速センサ１０５により取得される。
【００３６】
視差演算部２０３は、ステレオカメラ１０２で撮影された左右カメラの映像の各画素について視差を算出することにより、各点の３次元位置を求める（詳細は後述）。視差は、左カメラの映像と右カメラの映像とにおいてどの画素に同一の対象が写っているのかに関する局所的な画像の類似度を、輝度差の絶対値の和などで評価し、最も類似度の高い点を探索することによって、求めることができる。
【００３７】
第１の路面パラメータ推定部２０４は、ステレオカメラ１０２におけるカメラの投影中心から路面へ下ろした垂線の長さを路面パラメータとして求める（詳細は後述）。カメラに対する路面の位置は、カメラの位置が大きくずれない限り初期設定時とほぼ同じ位置にあると考えられる。このことから、初期設定時の路面に対し上下に幅を持った領域を設定し、その中に位置する点の３次元位置を抽出し、その点群が最も多く乗る平面に基づいて路面パラメータを求めることができる。
【００３８】
路面パラメータ蓄積部２０５は、ＲＡＭ等で構成され、第１の路面パラメータ推定部２０４により求めた路面パラメータ（第１の路面パラメータ）と、車両情報２０６とを関連付けて記録する。
【００３９】
第２の路面パラメータ推定部２０８は、路面パラメータ蓄積部２０５に蓄積された車両情報２０６に基づいて、後述する所定条件に該当する路面パラメータを抽出する。このとき抽出される路面パラメータは、車速、ヨーレート、ピッチレートに基づき、車両１０１が、勾配の変化がなくカーブしていない路面を走行中に得られたと見なせるものに設定される。さらに、第２の路面パラメータ推定部２０８は、抽出した路面パラメータを、後述するように統計処理することで、勾配の変化がないときの路面パラメータ（第２の路面パラメータ）を求める。
【００４０】
補正パラメータ演算部２０９は、第２の路面パラメータ推定部２０８で求めた路面パラメータと、初期設定時路面パラメータ記憶部２１０に記憶された路面パラメータとを比較することで、左右のカメラ間の位置姿勢の補正量を計算する（詳細は後述）。初期設定時路面パラメータ記憶部２１０は、例えばＲＯＭで構成され、比較基準として初期設定時の路面パラメータが記憶されている。
【００４１】
補正パラメータ反映部２１１では、補正パラメータ演算部２０９で算出した補正量を、補正済パラメータ記憶部２２０に記録することにより、反映する。補正済パラメータ記憶部２２０は、例えば演算装置１０６の内部メモリで構成される。
【００４２】
物体検出部２１２では、補正パラメータ反映部２１１で補正されたパラメータを使って、視差演算部２０３で求めた視差を３次元情報に変換し、その分布から路面において高さを持つ塊を見つけることによって、物体を検出する（詳細は後述）。
【００４３】
２．動作
本実施形態に係る物体検出装置の動作について、以下説明する。
【００４４】
２−１．動作の概要
本実施形態において、車両１０１（図１）は、搭載したステレオカメラ１０２から周辺のシーンを撮影しながら、路面を走行する。車両１０１における物体検出装置として機能する演算装置１０６は、視差演算部２０３（図２）においてステレオカメラ１０２による撮影画像を画像解析して、シーンの３次元情報を生成し、物体検出部２１２において路面上の障害物などの物体を検出する。このような物体検出動作と共に、演算装置１０６は、ステレオカメラ１０２のキャリブレーションにおけるスケール基準を決定するための演算処理を行う。
【００４５】
具体的に、まず、演算装置１０６は第１の路面パラメータ推定部２０４において、逐次、ステレオカメラ１０２から得られる撮影画像における路面に対する第１の路面パラメータを算出する。第１の路面パラメータは、起伏や勾配の変化があるなどの種々の路面の走行時における撮影画像から算出される。本実施形態では、このような路面を走行する車両１０１の移動状態に関する車両情報２０６を、各種センサ１０３〜１０５を用いて取得し、路面パラメータ蓄積部２０５において車両情報２０６と第１の路面パラメータとを関連付けて蓄積する。
【００４６】
演算装置１０６の第２の路面パラメータ推定部２０８は、蓄積された第１の路面パラメータの内で、車両１０１が勾配の変化がない路面を直進中に得られたと考えられる第１の路面パラメータを用いて、第２の路面パラメータを算出する。第２の路面パラメータは、勾配の変化やカーブの走行時の第１の路面パラメータよりも高精度のスケール基準となり、ステレオカメラ１０２のキャリブレーションを精度良くすることができる。
【００４７】
第２の路面パラメータを用いたキャリブレーションは、補正パラメータ演算部２０９によって行われ、キャリブレーション結果は、補正パラメータ反映部２１１によって補正済パラメータ記憶部２２０に記録される。物体検出部２１２は、ステレオカメラ１０２によるリアルタイムの撮影画像に基づく情報と、補正済みのパラメータとを用いて、シーン中の物体等の位置を精度良く検出することができる。
【００４８】
以下、本実施形態における物体検出装置の動作の詳細について説明する。
【００４９】
２−２．ステレオカメラの測定原理について
本実施形態では、平行ステレオ法により、ステレオカメラ１０２を用いた３次元情報の測定を行う。図３を用いて、ステレオカメラ１０２による３次元情報の測定原理について説明する。
【００５０】
図３では、ステレオカメラ１０２における左右のカメラ１０２ａ，１０２ｂを、ピンホールモデルを用いて模式的に示している。左カメラ１０２ａは、撮像面５０３と、撮像面５０３の中心から焦点距離ｆの間隔における投影中心５０１とを有する。右カメラ１０２ｂは、撮像面５０４と、撮像面５０４の中心から焦点距離ｆの間隔における投影中心５０１とを有する。
【００５１】
平行ステレオ法は、図３に示すように、左カメラ１０２ａの撮像面５０３と右カメラ１０２ｂの撮像面５０４とが平行になるように設定された状態で、３次元情報の測定を行う。
【００５２】
ステレオカメラ１０２による計測対象５０５の撮影時に、同対象５０５は、左カメラ１０２ａにおいて撮像面５０３上の点５０６に撮像されると共に、右カメラ１０２ｂにおいて撮像面５０４上の点５０７に撮像される。計測対象５０５の２次元座標は、例えば左カメラ１０２ａの撮像面５０３上における点５０６の座標に基づき算出される。点５０６は、左カメラ１０２ａの投影中心５０１と計測対象５０５とを結ぶ線５０８が、左カメラ１０２ａの撮像面５０３を貫く位置に位置する。
【００５３】
ここで、計測対象５０５に対する視差ｄは、上記の線５０８に平行な線５０９であって右カメラ１０２ｂの投影中心５０２を通る線５０９が右カメラ１０２ｂの撮像面５０４を貫く点５１０と、同対象５０５が右カメラ１０２ｂに実際に撮像される点５０７との間の距離として規定される。ステレオカメラ１０２（例えば左カメラ１０２ａの投影中心５０１）から計測対象５０５までの距離Ｚは、視差ｄを用いて、次式によって算出される。
【００５４】
Ｚ＝ｆ・Ｄ／ｄ      …（１）
上式（１）において、基線長Ｄは、左カメラ１０２ａの投影中心５０１と右カメラ１０２ｂの投影中心５０２との間の間隔の長さとして規定される。
【００５５】
２−３．視差演算部について
以上のような測定原理に基づき動作する視差演算部２０３の動作について、図４を用いて説明する。図４は、視差演算部２０３における処理を示すフローチャートである。
【００５６】
図４に示すフローチャートは、視差演算部２０３として機能する演算装置１０６によって、例えば所定の周期（例えば１／３０秒）で実行される。
【００５７】
まず、視差演算部２０３は、ステレオカメラ１０２の左右のカメラ１０２ａ，１０２ｂによって撮影された画像を入力とする歪補正変換及び平面変換により、平行ステレオ法（図３）を適用するための平行化変換を行う（Ｓ３０１）。
【００５８】
ステップＳ３０１の処理は、左右のカメラ１０２ａ，１０２ｂの向きの違いに対して、左カメラ１０２ａによる左画像と右カメラ１０２ｂによる右画像とを平行化するように補正するための処理である（図５参照）。ステップＳ３０１の詳細については後述する。
【００５９】
次に、視差演算部２０３は、平行ステレオ法に基づく画像処理を行って、ステレオカメラ１０２の画像中の全点の視差ｄ（図３）を演算する（Ｓ３０２）。
【００６０】
ステップＳ３０２において視差演算部２０３は、例えば、左画像上の特定の注目点の視差を求めるために、左画像から注目点付近の画像をテンプレートとして切り出し、右画像中で、切り出したテンプレートに対する類似度が高い部分を探索する。次いで、視差演算部２０３は、探索結果に基づいて、右画像中で最も類似度が高い点を対応点と判定し、判定した対応点と注目点間の距離に基づき視差ｄを算出する。
【００６１】
本実施形態では平行ステレオ法を用いることから、左画像上の注目点の座標が（ｘｐ，ｙｐ）のとき、右画像中で対応点が現れ得る部分は、ｙ座標がｙｐの直線上に限定されることとなる。よって、視差演算部２０３は、同直線上のみに対応点探索を行い、他の部分に対する処理を省略することできる。また、上記のテンプレートを用いた類似度の算出方法としては、ＳＡＤ（Ｓｕｍ  ｏｆ  Ａｂｓｏｌｕｔｅ  Ｄｉｆｆｅｒｅｎｃｅｓ：差分の絶対値の和）や、ＳＳＤ（Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｄｉｆｆｅｒｅｎｃｅｓ：差分の自乗和）などを用いることができる。
【００６２】
次に、視差演算部２０３は、算出した各点の視差ｄを用いて前述の式（１）に従う演算を行って、画像中の各点の３次元位置を算出する（Ｓ３０３）。視差演算部２０３は、例えば初期設定の基線長を用いてステップＳ３０３の演算処理を行う。
【００６３】
視差演算部２０３は、ステップＳ３０２で算出した３次元位置を示す３次元情報を第１の路面パラメータ推定部２０４に出力し、ステップＳ３０２で算出した視差ｄを示す情報を物体検出部２１２に出力して、本フローチャートによる処理を終了する。
【００６４】
以上の処理によると、ステレオカメラ１０２の各カメラ１０２ａ，１０２ｂによる画像が平行化変換され（Ｓ３０１）、平行ステレオ法に基づき視差ｄ及び三次元情報を演算することができる。ステップＳ３０１の詳細について、図５を用いて説明する。
【００６５】
図５（ａ）は、ステップＳ３０１による平行化前の左カメラ座標（ｘｌ，ｙｌ，ｚｌ）及び右カメラ座標（ｘｒ，ｙｒ，ｚｒ）を示す。図５（ｂ）は、ステップＳ３０１による平行化後の左カメラ座標（ｘ’ｌ，ｙ’ｌ，ｚ’ｌ）及び右カメラ座標（ｘ’ｒ，ｙ’ｒ，ｚ’ｒ）を示す。左カメラ座標は、ステレオカメラ１０２における左カメラ１０２ａの投影中心を原点とする座標系である。右カメラ座標は、右カメラ１０２ｂの投影中心を原点とする座標系である。
【００６６】
ステップＳ３０１の平行化変換を行うためには、ステレオカメラ１０２における左右それぞれのカメラ１０２ａ，１０２ｂの内部パラメータ及び外部パラメータを求めておく必要がある。内部パラメータは、カメラの焦点距離、画像中心座標、及び歪パラメータなどを表す。外部パラメータは、固定の座標系である世界座標系におけるカメラの位置及び姿勢を表す。演算装置１０６は、例えば、世界座標系を予め設定しておき、非特許文献１に示された手法を用いることにより、左右のカメラ１０２ａ，１０２ｂの内部パラメータと、共通の世界座標系における各カメラ１０２ａ，１０２ｂの外部パラメータとを算出することができる。
【００６７】
ステップＳ３０１において、視差演算部２０３としての演算装置１０６は、求めた内部パラメータを用いてそれぞれのカメラ１０２ａ，１０２ｂに関する歪補正変換を行い、求めた外部パラメータを用いて平面変換を行って、平行化変換を実行する（Ｓ３０１）。
【００６８】
ステップＳ３０１前には、ステレオカメラ１０２の位置ずれ等により、図５（ａ）に示すように左カメラ座標（ｘｌ，ｙｌ，ｚｌ）と右カメラ座標（ｘｒ，ｙｒ，ｚｒ）とが、互いに異なる向きに向いていることが想定される。これらの位置関係は、世界座標（ｗ０，ｗ１，ｗ２）を基準として、次式の並進ベクトルｔｌ，ｔｒ及び回転行列Ｒｌ，Ｒｒで表すことができる。
【００６９】
【数１】
0006779365.tif 000002
上式（１１）〜（１４）の並進ベクトルｔｌ，ｔｒ及び回転行列Ｒｌ，Ｒｒは、ステレオカメラ１０２における各カメラ１０２ａ，１０２ｂの外部パラメータを構成する。演算装置１０６は、上述のように公知の手法を用いて並進ベクトルｔｌ，ｔｒ及び回転行列Ｒｌ，Ｒｒを求めることができる。
【００７０】
式（１１）の並進ベクトルｔｌは、世界座標（ｗ０，ｗ１，ｗ２）の原点から左カメラ座標（ｘｌ，ｙｌ，ｚｌ）の原点までの並進を表す３次元ベクトルである。式（１２）の並進ベクトルｔｒは、世界座標（ｗ０，ｗ１，ｗ２）の原点から右カメラ座標（ｘｒ，ｙｒ，ｚｒ）の原点までの並進を表す３次元ベクトルである。
【００７１】
また、式（１３）の回転行列Ｒｌは、世界座標（ｗ０，ｗ１，ｗ２）の向きから左カメラ座標（ｘｌ，ｙｌ，ｚｌ）の向きまでの回転を表す行列である。式（１４）の回転行列Ｒｒは、世界座標（ｗ０，ｗ１，ｗ２）の向きから右カメラ座標（ｘｒ，ｙｒ，ｚｒ）の向きまでの回転を表す行列である。各回転行列Ｒｌ，Ｒｒは、３行３列の成分ｒｌ，００〜ｒｌ，２２，ｒｒ，００〜ｒｒ，２２間において、ヨー方向、ピッチ方向及びロール方向に対応する３自由度をそれぞれ有する。
【００７２】
式（１１）〜（１４）の並進ベクトルｔｌ，ｔｒ及び回転行列Ｒｌ，Ｒｒによると、次式のような回転行列Ｒ’を求めることができる。
【００７３】
【数２】
0006779365.tif 000003
上式（１５）の回転行列Ｒ’は、図５（ｂ）の各カメラ座標（ｘ’ｌ，ｙ’ｌ，ｚ’ｌ），（ｘｒ，ｙｒ，ｚｒ）と世界座標（ｗ０，ｗ１，ｗ２）との間の回転変換に対応している。なお、上式（１８）における「×」は、ベクトル間の外積である。
【００７４】
以上の各回転行列Ｒｌ，Ｒｒ，Ｒ’を用いて、演算装置１０６は、図４のステップＳ３０１において視差演算部２０３として、次式に従う平面変換を演算する。
【００７５】
【数３】
0006779365.tif 000004
上式（１９），（２０）の平面変換によると、図５（ａ）の左カメラ座標（ｘｌ，ｙｌ，ｚｌ）と右カメラ座標（ｘｒ，ｙｒ，ｚｒ）とを、図５（ｂ）に示すように互いに平行化することができる。
【００７６】
２−４．第１の路面パラメータ推定部について
以上のように視差演算部２０３によって算出された３次元情報に基づく第１の路面パラメータ推定部２０４の動作について、図６を用いて説明する。図６は、第１の路面パラメータ推定部２０４における処理を示すフローチャートである。
【００７７】
図６に示すフローチャートは、第１の路面パラメータ推定部２０４として機能する演算装置１０６によって、例えば視差演算部２０３における処理後に逐次、実行される。
【００７８】
まず、第１の路面パラメータ推定部２０４は、視差演算部２０３からの３次元情報（図４のＳ３０３）に基づいて、例えば３次元位置が算出された全ての点の中からランダムに３点を選択することにより、路面上とみなし得る候補点を抽出する（Ｓ６０１）。この際、第１の路面パラメータ推定部２０４は、選択された３点の全てが同一の直線上とはならないように、例えば３点目の選択を制限する。
【００７９】
次に、第１の路面パラメータ推定部２０４は、路面上の候補点として抽出した３点を通る平面を求めて、求めた平面までの距離を示す候補路面パラメータを算出する（Ｓ６０２）。第１の路面パラメータ推定部２０４は、視差演算部２０３からの３次元情報に基づき、例えばステレオカメラ１０２におけるカメラの投影中心から求めた平面に下ろした垂線を求め、垂線の長さを候補路面パラメータとして算出する。
【００８０】
次に、第１の路面パラメータ推定部２０４は、候補路面パラメータが算出された平面と実際の路面との間の対応関係を検証するための演算処理を行う（Ｓ６０３）。具体的に、第１の路面パラメータ推定部２０４は、３次元位置演算３０３で３次元位置を計算した各点、或いは所定領域内の各点と、ステップＳ６０２で求めた平面との間の距離を算出し、距離が所定のしきい値以下である点の数を計数する。当該しきい値は、上記の平面と実質的に同一平面上にある点を判定するための基準の値である。
【００８１】
第１の路面パラメータ推定部２０４は、ステップＳ６０３の処理結果に基づいて、候補路面パラメータの平面と実際の路面とが合致することが検証されたか否かを判断する（Ｓ６０４）。
【００８２】
具体的に、第１の路面パラメータ推定部２０４は、計数した点の数が、距離の算出対象となった全点の数に対して、予め設定された一定の割合未満である場合、候補路面パラメータの平面と実際の路面とが合致するとは検証されなかったと判断する（Ｓ６０４でＮＯ）。この場合、第１の路面パラメータ推定部２０４は、ステップＳ６０１以降の処理を繰り返して、新たな候補点に基づく候補路面パラメータを算出する。
【００８３】
一方、第１の路面パラメータ推定部２０４は、計数した点の数が上記の割合以上である場合、候補路面パラメータの平面と実際の路面とが合致することが検証されたと判断する（Ｓ６０４でＹＥＳ）。この場合、第１の路面パラメータ推定部２０４は、算出した候補路面パラメータを第１の路面パラメータとして、路面パラメータ蓄積部２０５に出力する（Ｓ６０５）。
【００８４】
第１の路面パラメータ推定部２０４は、第１の路面パラメータを出力すると（Ｓ６０５）、本フローチャートによる処理を終了する。
【００８５】
以上の処理によると、視差演算部２０３によって演算された３次元情報に基づいて、車両１０１（図１）の移動時に時々刻々と変化する路面に対する第１の路面パラメータが算出される。
【００８６】
また、以上の処理に同期して、演算装置１０６は、各種センサ１０３〜１０５（図１）から車両情報２０６を取得する。演算装置１０６は、路面パラメータ蓄積部２０５において、第１の路面パラメータ推定部２０４により求めた路面パラメータを車両情報２０６に関連付けて蓄積する。
【００８７】
２−５．第２の路面パラメータ推定部について
第１の路面パラメータなどの路面パラメータ蓄積部２０５に蓄積された情報に基づく第２の路面パラメータ推定部２０８の動作について、図７を用いて説明する。図７は、第２の路面パラメータ推定部２０８における処理を示すフローチャートである。
【００８８】
図７に示すフローチャートは、第２の路面パラメータ推定部２０８として機能する演算装置１０６によって、例えば所定の周期で実行される。当該周期は、路面パラメータ蓄積部２０５に新たな情報が充分に蓄積されると考えられる期間に基づき設定される（例えば１分）。
【００８９】
まず、第２の路面パラメータ推定部２０８は、路面パラメータ蓄積部２０５に蓄積された情報に基づいて、蓄積された第１の路面パラメータの中から、所定条件に該当する第１の路面パラメータを抽出する（Ｓ７０１）。第１の路面パラメータを抽出するための所定条件について、図８を用いて説明する。
【００９０】
図８は、車両１０１が勾配の変化を有する路面を走行する様子を示している。本実施形態において、ステレオカメラ１０２は、車両１０１の前方の路面を撮影する。このため、図８に示すように、車両１０１の走行中の路面に勾配の変化がある場合、ステレオカメラ１０２から観測される観測面と、観測時の車両１０１の接地面との間には、ピッチ方向等において角度差θが生じる。この場合に算出される第１の路面パラメータは、ステレオカメラ１０２から観測面までの距離に対応し、車両１０１の接地面までの距離からずれてしまうと考えられる。
【００９１】
また、車両１０１のカーブ走行の際には、ステレオカメラ１０２からの観測面と車両１０１の接地面との間に、例えばヨー方向において角度差θが生じると考えられる。このため、上述の場合と同様に、車両１０１がカーブ走行中に算出される第１の路面パラメータは、車両１０１の接地面までの距離からずれてしまうと考えられる。
【００９２】
そこで、本実施形態では、ステレオカメラ１０２からの観測面と観測時における車両１０１の接地面との間の角度差θが、所定角度以内であるという所定条件を用いて、第１の路面パラメータの抽出を行う。所定角度は、観測面と接地面とが実質的に平行と見なせる角度、すなわち、車両１０１の走行中の路面に勾配の変化が実質的にないと見なせる角度であり、例えば±１度以内である。
【００９３】
図７のステップＳ７０１では、第２の路面パラメータ推定部２０８は上記の所定条件を判定するために、車速、ヨーレート及びピッチレートといった車両情報２０６を用いて、蓄積された第１の路面パラメータにおける条件検索を行う。例えば、第２の路面パラメータ推定部２０８は、車速４０ｋｍ／ｈ以上で且つヨーレートおよびピッチレートが０近傍の所定範囲内である車両情報２０６に関連付けされた第１の路面パラメータを抽出する。
【００９４】
次に、第２の路面パラメータ推定部２０８は、抽出した第１の路面パラメータに基づく統計処理を行って、第２の路面パラメータを算出する（Ｓ７０２）。例えば、第２の路面パラメータ推定部２０８は統計処理において、抽出した第１の路面パラメータの平均値や中央値を、第２の路面パラメータとして求める。
【００９５】
第２の路面パラメータ推定部２０８は、算出した第２の路面パラメータをキャリブレーションのスケール基準として補正パラメータ演算部２０９に出力して（Ｓ７０２）、本フローチャートによる処理を終了する。
【００９６】
以上の処理によると、車両情報２０６に基づく条件検索によって（Ｓ７０１）、キャリブレーションのスケール基準として利用可能なばらつきの少ない条件下の第１の路面パラメータが抽出される。さらに、抽出された第１の路面パラメータを用いて統計処理することにより（Ｓ７０２）、勾配の変化がない路面に対する距離を示す第２の路面パラメータを精度良く推定することができる。
【００９７】
２−６．補正パラメータ演算部について
第２の路面パラメータ推定部２０８によって算出された第２の路面パラメータに基づくキャリブレーションを実現する補正パラメータ演算部２０９の動作について、図９を用いて説明する。図９は、補正パラメータ演算部２０９における処理を示すフローチャートである。
【００９８】
図９に示すフローチャートは、補正パラメータ演算部２０９として機能する演算装置１０６によって、例えば第２の路面パラメータ推定部２０８による上記の処理（図７）の実行後に逐次、実行される。
【００９９】
図９のフローチャートの開始時において、初期設定時路面パラメータ記憶部２１０には予め、初期設定時に勾配の変化がない条件において事前計測された基準の路面パラメータ及び初期設定時の基線長Ｄ０が記憶されていることとする。
【０１００】
上記の初期設定は、例えば物体検出装置（演算装置１０６）を出荷する前や、物体検出装置の使用開始前に行われる。初期設定では、例えば、市松模様が描かれた、既知のサイズおよび交点数を有するチェッカーボードを路面上に設置し、ステレオカメラ１０２で撮影する。さらに、撮影画像から市松模様の交点を検出し、非特許文献２の第６章に記載のカメラ校正方法等を適用することにより、勾配の変化がない条件における基準の路面パラメータを求めることができる。
【０１０１】
図９のフローチャートにおいて、まず、補正パラメータ演算部２０９は、初期設定時路面パラメータ記憶部２１０に記憶された基準の路面パラメータを読み出す（Ｓ８０１）。
【０１０２】
次に、補正パラメータ演算部２０９は、第２パラメータ推定部２０８で算出された第２の路面パラメータ（図７のＳ７０２）と、読み出した基準の路面パラメータとを比較し、例えば両パラメータの除算によって、変化量を求める（Ｓ８０２）。ステップＳ８０２の変化量によると、現在のステレオカメラ１０２の設置状態と初期設定時との間の変化を認識することができる。
【０１０３】
次に、補正パラメータ演算部２０９は、求めた変化量を用いてステレオカメラ１０２の基線長を補正する（Ｓ８０３）。具体的に、補正パラメータ演算部２０９は、次式を演算して、補正後の基線長Ｄを算出する。
【０１０４】
Ｄ＝（Ｈ／Ｈ０）Ｄ０      …（２）
上式（２）において、Ｈ０は、初期設定時のカメラの投影中心から路面へ下ろした垂線の長さ（基準の路面パラメータ）である。また、Ｈは、現在のステレオカメラ１０２の設置状態におけるカメラの投影中心から路面へ下ろした垂線の長さ（第２の路面パラメータ）である。
【０１０５】
補正パラメータ演算部２０９は、補正後の基線長Ｄを補正パラメータ反映部２１１に出力して（Ｓ８０３）、本フローチャートによる処理を終了する。
【０１０６】
以上の処理によると、現在のステレオカメラ１０２の設置状態に応じたスケール基準として第２の路面パラメータを用いて、ステレオカメラ１０２の基線長が補正される（Ｓ８０３）。各路面パラメータと基線長との関係について、図１０を用いて説明する。
【０１０７】
図１０（ａ）〜（ｃ）は、車両１０１が勾配の変化のない道路を直進走行している際の、キャリブレーション前のステレオカメラ１０２に基づく路面の見え方を説明するための図である。
【０１０８】
図１０（ａ）は、第２の路面パラメータと基準の路面パラメータとが一致する場合の路面の見え方を示している。図１０（ａ）の場合、ステレオカメラ１０２の撮影画像に基づき算出される路面までの距離は、初期設定時から特に変化しておらず、適切に算出されていると考えられる。この場合、補正パラメータ演算部２０９による補正後の基線長Ｄは、式（２）に基づきＤ＝Ｄ０となる。
【０１０９】
図１０（ｂ）は、第２の路面パラメータが基準の路面パラメータよりも大きい場合の路面の見え方を示している。図１０（ｂ）の場合、ステレオカメラ１０２においては、路面までの距離が遠くに変化したかのような測定結果となる位置ずれが起きている。この場合、ステレオカメラ１０２のカメラ１０２ａ，１０２ｂ間の間隔が初期設定時よりも広がっていると考えられる。そこで、補正パラメータ演算部２０９は、式（２）に基づき、初期設定時の基線長Ｄ０を広げるように補正後の基線長Ｄを算出する（Ｓ８０２）。
【０１１０】
図１０（ｃ）は、第２の路面パラメータが基準の路面パラメータよりも小さい場合の路面の見え方を示している。図１０（ｃ）の場合、ステレオカメラ１０２においては、路面までの距離が実際よりも近くに算出されるような位置ずれが起きており、カメラ１０２ａ，１０２ｂ間の間隔が初期設定時よりも狭まっていると考えられる。そこで、補正パラメータ演算部２０９は、式（２）に基づき、基線長Ｄを狭めるように補正する（Ｓ８０２）。
【０１１１】
以上のように、初期設定時（基準）の路面パラメータからの第２の路面パラメータの変化に基づき、カメラ１０２ａ，１０２ｂ間の間隔の変化を認識することができ、現在のステレオカメラ１０２の接地状態に応じた適切な基線長Ｄが得られる（Ｓ８０３）。
【０１１２】
以上の補正パラメータ演算部２０９における処理の実行後に、補正パラメータ反映部２１１は、補正パラメータ演算部２０９から出力された基線長Ｄを、補正済パラメータ記憶部２２０に書き込むことにより、補正後の基線長Ｄを更新する。補正パラメータ反映部２１１が基線長Ｄの更新を行う更新タイミングは、所定周期、或いは演算装置１０６のオン／オフ時など、適宜、設定される。
【０１１３】
２−７．物体検出部について
図１１を用いて、物体検出部２１２の動作について説明する。図１１は、物体検出部２１２における処理を示すフローチャートである。
【０１１４】
図１１に示すフローチャートは、物体検出部２１２として機能する演算装置１０６によって、例えば所定の周期（例えば１／３０秒）で実行される。
【０１１５】
まず、物体検出部２１２は、補正済パラメータ記憶部２２０に記憶された情報を参照し、視差演算部２０３において算出された撮影画像中の全点の視差（図４のＳ３０２）に基づいて各点の３次元位置を算出する（Ｓ１００１）。ステップＳ１００１において、物体検出部２１２は、図４のＳ３０３と同様の処理を行うが、視差ｄに基づく距離Ｚを算出する際には、補正済パラメータ記憶部２２０に記憶された補正後の基線長Ｄを用いる。
【０１１６】
次に、物体検出部２１２は、算出した３次元位置に基づいて、例えば図６のフローチャートと同様の処理を実行して、現在走行中のシーンにおける路面パラメータを算出する（Ｓ１００２）。
【０１１７】
次に、物体検出部２１２は、算出した路面パラメータに基づいて、撮影画像中の全点の中から、算出した路面パラメータに対応する路面よりも上方の３次元位置を有する点群を抽出する（Ｓ１００３）。
【０１１８】
次に、物体検出部２１２は、抽出した点群を入力として領域クラスタリングを行って、路面上の立体物と考えられる点群の集まり（塊）を求める（Ｓ１００４）。ステップＳ１００４における領域クラスタリングは、例えば非特許文献３に開示されたＭｅａｎ  Ｓｈｉｆｔ法を用いることにより実現できる。
【０１１９】
次に、物体検出部２１２は、領域クラスタリング（Ｓ１００４）において抽出した立体物を、検出結果の物体として示す物体情報を、例えば表示装置１０７に出力する（Ｓ１００５）。
【０１２０】
物体検出部２１２は、検出結果の物体情報を出力する（Ｓ１００５）と、本フローチャートによる処理を終了する。
【０１２１】
以上の処理によると、物体検出部２１２は、補正後の基線長Ｄを用いて、物体の３次元位置を精度良く検出することができる。表示装置１０７は、以上の処理によって検出された物体情報（Ｓ１００５）を表示する。
【０１２２】
３．まとめ
以上説明したように、本実施形態に係る物体検出装置（演算装置１０６）は、車両１０１上のステレオカメラ１０２による映像に基づいて物体を検出する。物体検出装置は、視差演算部２０３と、第１の路面パラメータ推定部２０４と、路面パラメータ蓄積部２０５と、第２の路面パラメータ推定部２０８と、物体検出部２１２とを備える。視差演算部２０３は、映像におけるシーンの３次元情報を演算する。第１の路面パラメータ推定部２０４は、３次元情報に基づいて、車両１０１が走行している路面とステレオカメラ１０２との間の距離を示す第１の路面パラメータを算出する。路面パラメータ蓄積部２０５は、第１の路面パラメータと、車両１０１の走行状態に関する車両情報２０６とを関連付けて蓄積する。第２の路面パラメータ推定部２０８は、路面パラメータ蓄積部２０５によって蓄積された車両情報２０６及び第１の路面パラメータに基づいて、車両に関する所定条件下における第１の路面パラメータを用いて第２の路面パラメータを算出する。物体検出部２１２は、第２の路面パラメータを用いて、物体を検出する。所定条件は、ステレオカメラ１０２から観測された路面と観測時における車両の接地面との間の角度差が、所定角度以内であることを含む。
【０１２３】
以上の物体検出装置によると、車両情報２０６から、車両１０１の走行状態（運動）を把握し、これによって走行中の道路の勾配の変化を推定することにより、第２の路面パラメータ推定部２０８により求まる、勾配の変化がない路面に車両１０１が位置する場合の路面パラメータの推定精度を向上できる。
【０１２４】
これにより、経年により２台のカメラ間の位置関係にずれが生じたときのずれ量の推定精度が向上するため、そのずれ量を考慮した物体までの距離検出精度も向上する。それにより、物体位置情報を用いたアプリケーションにおいて、高い信頼性での動作を保つことが出来る。
【０１２５】
本実施形態において、第２の路面パラメータ推定部２０８は、路面パラメータ蓄積部２０５によって蓄積された車両情報２０６に基づいて、第１の路面パラメータから所定条件に該当する場合の第１の路面パラメータを抽出する。第２の路面パラメータ推定部２０８は、抽出した第１の路面パラメータに基づく統計処理を行って、第２の路面パラメータを算出する。これにより、蓄積された第１の路面パラメータの中から、勾配の変化のない道路を走行中の第１の路面パラメータが抽出されて統計処理の対象となり、第２の路面パラメータを精度良く算出できる。
【０１２６】
なお、以上の例では、蓄積された第１の路面パラメータの中から、勾配の変化のない道路を走行中に算出した第１の路面パラメータを抽出したが、これに限らず、例えば勾配の変化のない道路を走行中に算出した第１の路面パラメータのみを蓄積するように本物体検出装置を構成しても良い。
【０１２７】
また、本実施形態において、上記の所定条件は、ステレオカメラ１０２から観測された路面と観測時における車両の接地面とが、勾配が変化しない同一平面であることを示す条件であってもよい。例えば、上記の所定角度が適宜、許容誤差の範囲内で０度近傍に設定されることにより、当該条件が設定されてもよい。これにより、平坦な路面の走行中の第１の路面パラメータに制限して第２の路面パラメータが算出でき、ステレオカメラ１０２に対するキャリブレーションの精度を良くすることができる。
【０１２８】
また、本実施形態において、車両情報２０６は、車両１０１における車速、ヨーレート、及びピッチレートを含んだ。車両情報２０６はこれに加えて、又は代えて、例えば車両１０１におけるロールレート、操舵角、及び傾斜角などを含んでもよい。例えば、車両情報検出部として、車両１０１にロールレートセンサや姿勢センサを搭載したり、演算装置１０６が車両１０１のステアリングの操作状態をモニタしたりしてもよい。
【０１２９】
また、本実施形態において、上記の所定条件は、具体的には車両情報２０６におけるヨーレート、ピッチレート又はロールレートが、車両１０１の直線路の走行時に対応する所定範囲内の値であることとして設定された。上記の所定条件はこれに限らず、例えば、車両情報２０６における操舵角が、車両の直進状態におけるステアリングに対応する所定範囲内の値であることや、車両情報２０６における傾斜角が、車両が水平な路面上を走行する状態に対応する所定範囲内の値であることであってもよい。
【０１３０】
また、本実施形態において、物体検出装置は、補正パラメータ演算部２０９と、補正パラメータ反映部２１１とをさらに備える。補正パラメータ演算部２０９は、第２の路面パラメータと、予め設定された基準の路面パラメータとを比較して、ステレオカメラ１０２のずれ量に応じた補正パラメータを算出する。補正パラメータ反映部２１１は、補正パラメータに基づいて、ステレオカメラに関するカメラパラメータを補正する。物体検出部２１２は、補正パラメータ反映部２１１によって補正されたカメラパラメータである基線長Ｄを用いて、物体の位置を検出する。これにより、物体検出装置は、ステレオカメラ１０２のずれ量を補正して物体の位置を精度良く検出することができる。
【０１３１】
また、本実施形態に係る車両１０１は、物体検出装置と、映像を撮影するステレオカメラ１０２と、車両情報２０６を検出する各種センサ１０３〜１０５とを備える。本実施形態に係る車両１０１によると、物体検出装置によりステレオカメラ１０２の位置ずれを補正して物体を精度良く検出することができる。
【０１３２】
実施の形態２．
実施の形態１では、車速センサ等で車両の走行状態に関する車両情報を検出した。実施の形態２では、さらに走行する道路のレーン形状を検出する物体検出装置について説明する。
【０１３３】
図１２は、本実施形態に係る物体検出装置の構成を示すブロック図である。本実施形態に係る物体検出装置（演算装置１０６Ａ）は、実施の形態１と同様の構成（図２）に加えて、図１２に示すように白線消失点検出部２１４とレーン形状検出部２１５とをさらに備える。
【０１３４】
白線消失点検出部２１４は、ステレオカメラ１０２による撮影画像に基づいて、道路の走行レーンに描かれている左右の白線を直線（或いは曲線）として検出する。白線消失点検出部２１４は、検出した２本の直線（或いは曲線）を延長した場合の交点を消失点として求める。
【０１３５】
レーン形状検出部２１５は、白線消失点検出部２１４による検出結果に基づいて、求めた白線の消失点の位置からレーンの形状を推定するための処理を行う。例えば、左右レーンを延長して地平線上で交わる点（消失点）は、道路が左カーブしていれば、平坦な直線路の走行時の初期位置より左に、右カーブしていれば、初期位置より右に、道路が上り坂に差し掛かっていれば、初期位置より上に、下り坂に差し掛かっていれば、初期位置より下に観測されると推定される。このため、消失点が初期位置に近い所定範囲内に在る場合、走行中の道路は、勾配の変化がなく、カーブしていない（直線路である）と判定することができる。
【０１３６】
本実施形態において、路面パラメータ蓄積部２０５は、第１の路面パラメータ推定部２０４により求めた第１の路面パラメータを、車速やヨーレートやピッチレート等の車両情報２０６と、レーン形状検出部２１５により求めたレーン形状とに関連付けて蓄積する。
【０１３７】
また、第２の路面パラメータ推定部２０８は、路面パラメータ蓄積部２０５に蓄積された情報を用いて、勾配の変化がなくカーブしていないと見なせる条件下の第１の路面パラメータをより精度良く抽出し、第２の路面パラメータをより正確に算出する。上記の各機能部による動作について、以下説明する。
【０１３８】
図１３は、白線消失点検出部２１４における処理を示すフローチャートである。図１３に示すフローチャートは、白線消失点検出部２１４として機能する演算装置１０６Ａによって、例えば所定の周期（例えば１／３０秒）で実行される。
【０１３９】
まず、白線消失点検出部２１４は、ステレオカメラ１０２における一方又は双方のカメラ画像から、例えば所定の特徴量に基づく特徴点群として白線部分を抽出する（Ｓ１２０１）。ステップＳ１２０１の処理は、例えば、縦エッジ抽出の画像処理を行い、エッジ強度が所定値以上、強い部分を白線として抽出することによって実行できる。
【０１４０】
次に、白線消失点検出部２１４は、出した白線部分の特徴点群を用いて、直線抽出を行うことにより、左右の白線を直線として求める（Ｓ１２０２）。ステップＳ１２０２の処理は、例えば、非特許文献４に示された直線ハフ変換を用いて直線を求めることによって実行できる。
【０１４１】
次に、白線消失点検出部２１４は、求めた左右の白線に相当する直線２本を用いて、その２本の直線が地平線付近で交わる点を消失点として求める（Ｓ１２０２）。白線消失点検出部２１４は、以上のような消失点の検出結果を示す情報をレーン形状検出部２１５に出力して、本フローチャートによる処理を終了する。
【０１４２】
図１４は、レーン形状検出部２１５における処理を示すフローチャートである。図１４に示すフローチャートは、レーン形状検出部２１５として機能する演算装置１０６Ａによって、例えば白線消失点検出部２１４における処理後に逐次、実行される。
【０１４３】
まず、レーン形状検出部２１５は、白線消失点検出部２１４による検出結果に基づいて、レーンの勾配算出等を行い（Ｓ１３０１）、レーン形状の観点から、現在走行中のレーンが登っているのか、下っているのか、或いは勾配の変化がないのかを判定する。
【０１４４】
ステップＳ１３０１の判定では、勾配の変化のない道路を走行中に観測された消失点の位置を基準の標準位置として予め設定しておき、算出された消失点の位置と標準位置とを比較する。レーン形状検出部２１５は、算出された消失点の位置が、標準位置よりも上の場合には現在のレーンが登っており、標準位置よりも下の場合にはレーンが下っていると判断する。
【０１４５】
また、レーン形状検出部２１５は、レーンのヨー方向における曲率等のカーブ算出を行い（Ｓ１３０２）、レーン形状の観点から、現在走行中のレーンが左カーブなのか、右カーブなのか、直線路なのかを判定する。
【０１４６】
ステップＳ１３０２の判定では、直線路を走行中に観測された消失点の位置を基準の標準位置とし、算出された消失点の位置が標準位置より左（又は右）にずれている場合に、走行中のレーンが左（又は右）にカーブしていると判断する。さらに、レーン形状検出部２１５は、算出された消失点の位置が標準位置に近いと考えられる所定範囲内にある場合ければ、走行中のレーンは勾配の変化がなく、カーブしていないと判断する。
【０１４７】
レーン形状検出部２１５は、以上のような判定結果を含むレーン形状の検出情報を路面パラメータ蓄積部２０５に出力して、本フローチャートによる処理を終了する。
【０１４８】
路面パラメータ蓄積部２０５は、レーン形状検出部２１５によるレーン形状の検出情報を、同期して得られた第１の路面パラメータ及び車両情報２０６と関連付けて蓄積する。
【０１４９】
第２の路面パラメータ推定部２０８は、車両情報２０６と共にレーン形状の検出情報を用いて、路面パラメータ蓄積部２０５に蓄積された第１の路面パラメータの条件検索を行う。例えば、第２の路面パラメータ推定部２０８は、車速４０ｋｍ／ｈ以上、ヨーレートおよびピッチレートがほぼ０、消失点から求めたレーン形状が勾配の変化なし、直線路である場合の第１の路面パラメータを抽出する。これにより、車両１０１が勾配の変化のない道路を直進中に算出されたと考えられる第１の路面パラメータをより精度良く得ることができる。
【０１５０】
以上説明したように、本実施形態に係る物体検出装置（演算装置１０６Ａ）は、白線消失点検出部２１４と、レーン形状検出部２１５とをさらに備える。白線消失点検出部２１４は、映像における２本の白線に基づいて、２本の白線の延長線が交わる点である消失点を検出する。レーン形状検出部２１５は、消失点の位置に基づいて映像における路面の勾配の変化を検出する。路面パラメータ蓄積部２０５は、レーン形状検出部２１５による路面の勾配の変化の検出結果と、第１の路面パラメータとを関連付けて蓄積する。第２の路面パラメータ推定部２０８は、路面パラメータ蓄積部２０５によって蓄積された路面の勾配の変化の検出結果に基づいて、第２の路面パラメータを算出する。
【０１５１】
本実施形態において、レーン形状検出部２１５は、白線消失点検出部２１４によって検出された消失点の位置と、予め設定された直線路走行時の消失点の位置とを比較して、レーンの形状を検知する。
【０１５２】
以上の物体検出装置によると、レーン形状検出部２１５により、走行中の道路の勾配の変化を検出でき、車両１０１が勾配の変化がない路面を直進する場合の路面パラメータの推定精度を向上できる。
【０１５３】
実施の形態３．
実施の形態１では、ステレオカメラの撮影画像からレーン形状を検出した。実施の形態３では、さらにステレオカメラによる撮影環境を認識する物体検出装置について説明する。
【０１５４】
図１５は、本実施形態に係る物体検出装置の構成を示すブロック図である。本実施形態に係る物体検出装置（演算装置１０６Ｂ）は、実施の形態２と同様の構成（図１２）に加えて、図１５に示すように撮影環境認識部２１６をさらに備える。
【０１５５】
撮影環境認識部２１６は、ステレオカメラ１０２による映像を入力し、現在走行中のシーンに関する日照条件、気象条件、及び走行路面に関する条件を含む撮影環境を認識する。日照条件は、例えば対象のシーンが昼、夜、西日などのいずれであるかを示す。気象条件は、例えば対象のシーンが晴れ、曇、雨、雪などのいずれであるかを示す。走行路面に関する条件は、走行中の路面が、舗装道路、未舗装道路などのいずれであるかを示す。
【０１５６】
本実施形態において、路面パラメータ蓄積部２０５は、第１の路面パラメータを、車両情報２０６、及びレーン形状の検出情報と共に、撮影環境認識部２１６で認識された撮影環境を示す情報に関連付けて蓄積する。
【０１５７】
また、第２の路面パラメータ推定部２０８では、路面パラメータ蓄積部２０５に蓄積された情報を用いて、車両１０１の走行路面に勾配の変化がなくカーブしていないと見なせるときで、かつ、撮影環境の観点から認識精度が高いと見なせる条件下の第１の路面パラメータを抽出する。上記の各機能部による動作について、以下説明する。
【０１５８】
図１６は、撮影環境認識部２１６における処理を示すフローチャートである。図１６に示すフローチャートは、撮影環境認識部２１６として機能する演算装置１０６Ｂによって、例えば所定の周期（例えば１／３０秒）で実行される。
【０１５９】
図１６のフローチャートにおいて、撮影環境認識部２１６は、ステレオカメラ１０２から入力される画像に基づいて、日照条件を認識する（Ｓ１５０１）。ステップＳ１５０１において撮影環境認識部２１６は、入力画像の輝度平均値、カメラ撮像時の露光時間、及びカメラ撮像時のゲイン値に基づいて、シーンの明るさを認識し、日照条件の強度を算出する。
【０１６０】
また、撮影環境認識部２１６は、入力画像に基づいて気象条件を認識する（Ｓ１５０２）。ステップＳ１５０２において撮影環境認識部２１６は、入力画像において空が映った部分のテクスチャ解析（例えば雲の有無）や、他の部分等のエッジの鮮明度解析（即ちレンズへの水滴付着による映像ぼけの有無、降雨、降雪による映像の不鮮明化の有無）を行って、気象条件を認識する。
【０１６１】
また、撮影環境認識部２１６は、入力画像に基づいて走行路面に関する条件を認識する（Ｓ１５０３）。ステップＳ１５０２において撮影環境認識部２１６は、入力画像における白線の有無判定や、走行路面上のエッジ量解析（即ちアスファルトか非舗装道路かの判定）を行って、走行路面の状態を認識する。
【０１６２】
撮影環境認識部２１６は、以上のような撮影環境の認識結果を示す情報を路面パラメータ蓄積部２０５に出力して、本フローチャートによる処理を終了する。
【０１６３】
以上の処理によると、路面パラメータ蓄積部２０５には車両情報２０６及びレーン形状の検出情報と共に撮影環境の認識結果を示す情報が蓄積され、第２の路面パラメータ推定部２０８はこれらの情報を用いて第１の路面パラメータの条件検索を行う。例えば、第２の路面パラメータ推定部２０８は、実施の形態２と同様の条件に加えて、日照条件が「昼」であり、気象条件が「曇」であり、走行路面に関する条件が舗装道路である条件下の第１の路面パラメータを抽出する。これにより、抽出した第１の路面パラメータに基づく第２の路面パラメータをより精度良く求めることができる。
【０１６４】
以上説明したように、本実施形態に係る物体検出装置（演算装置１０６Ｂ）は、ステレオカメラ１０２による映像の撮影環境を認識する撮影環境認識部２１６をさらに備える。路面パラメータ蓄積部２０５は、撮影環境認識部２１６によって認識された撮影環境を示す情報と、第１の路面パラメータとを関連付けて蓄積する。第２の路面パラメータ推定部２０８は、路面パラメータ蓄積部２０５によって蓄積された撮影環境を示す情報に基づいて、第２の路面パラメータを算出する。
【０１６５】
本実施形態において、撮影環境を示す情報は、日照条件、気象条件、及び車両の走行路面に関する条件のうちの少なくとも１つを示す情報を含む。
【０１６６】
以上の物体検出装置によると、第２の路面パラメータ推定部２０８において、撮影環境の観点から画像認識の精度が低下する可能性が高いと想定される第１の路面パラメータを用いずに第２の路面パラメータを算出して、位置ずれの推定精度を向上することができる。
【０１６７】
実施の形態４．
実施の形態４では、第２の路面パラメータによる補正結果の更新タイミングについて説明する。
【０１６８】
図１７は、本実施形態に係る物体検出装置の構成を示すブロック図である。本実施形態に係る物体検出装置（演算装置１０６Ｃ）は、実施の形態３と同様の構成（図１５）において、図１７に示すように、車両情報２０６を補正パラメータ反映部２１１Ａに入力する。
【０１６９】
補正パラメータ反映部２１１Ａは、実施の形態１と同様に、視差ｄから３次元位置を算出するときに用いる基線長Ｄを更新するために、補正パラメータ演算部２０９で算出された基線長を補正済パラメータ記憶部２２０に書き込む。本実施形態では、補正パラメータ反映部２１１Ａは、車両１０１の車両情報２０６における車速の情報を用いて、基線長を補正済パラメータ記憶部２２０に書き込む更新タイミングを、車両１０１の停止時に限定する。
【０１７０】
以上のように、本実施形態において、補正パラメータ反映部２１１Ａは、車両１０１の車速を示す情報に基づいて、車両１０１の停止時においてカメラパラメータの補正結果を反映する。
【０１７１】
補正パラメータ反映部２１１Ａによって補正結果が反映された際には、ステレオカメラ１０２の映像に基づき物体検出部２１２が検出している物体までの距離が、変化することとなる。このことから、検出された物体の位置情報を用いたアプリケーションにおいて、車両１０１を制御しているときに、物体までの距離が変化すると、その変化の影響で制御を誤ったり、無理な制御がかかったりする可能性があると考えられる。これに対して、本実施形態では、アプリケーションへの影響のないタイミングである、車両１０１の停車時に補正パラメータを反映することで、安全性を向上することができる。
【０１７２】
他の実施形態．
上記の各実施形態では、平行ステレオ法に基づき３次元情報を測定する場合について説明したが、平行ステレオ法に限らず、他の種々の測定方法を採用してもよい。この場合、例えば図４のステップＳ３０１において採用する測定方法に応じた補正を行う。
【０１７３】
上記の各実施形態では、物体検出装置は車両１０１に搭載されたステレオカメラ１０２を用いて物体を検出した。車両は、自動車、自動二輪車、及び鉄道車両など、路面を走行する各種の移動体を含む。
【０１７４】
以上のように、本発明の具体的な実施形態について説明したが、本発明は上記の形態に限定されるものではなく、本発明の範囲内で種々の変更を行って実施することができる。例えば、上記の個々の実施形態の内容を適宜組み合わせたものを本発明の一実施形態としてもよい。
【図１】
0006779365.tif 000005
【図２】
0006779365.tif 000006
【図３】
0006779365.tif 000007
【図４】
0006779365.tif 000008
【図５】
0006779365.tif 000009
【図６】
0006779365.tif 000010
【図７】
0006779365.tif 000011
【図８】
0006779365.tif 000012
【図９】
0006779365.tif 000013
【図１０】
0006779365.tif 000014
【図１１】
0006779365.tif 000015
【図１２】
0006779365.tif 000016
【図１３】
0006779365.tif 000017
【図１４】
0006779365.tif 000018
【図１５】
0006779365.tif 000019
【図１６】
0006779365.tif 000020
【図１７】
0006779365.tif 000021