(57)【要約】撮像の環境が変化する場合に、走行レーンの検出の信頼性を高める。レーン検出装置は、移動体に固定され、予め定められた第１撮像条件の下で定期的に第１画像を撮像する第１撮像デバイスと、移動体に固定され、第１撮像条件と異なる第２撮像条件の下で定期的に第２画像を撮像する第２撮像デバイスと、移動体が走行する走行レーンについて、第１画像上の走行レーンの第１境界線を検出し、第２画像上の走行レーンの第２境界線を検出し、予め定められた実行条件の下で、第２画像上の第２境界線の位置に基づいて、第１画像上の第１境界線の位置を推定する演算デバイスと、を備える。
2016178335.tif 000002
【特許請求の範囲】
【請求項１】
移動体に固定され、予め定められた第１撮像条件の下で定期的に第１画像を撮像する第１撮像デバイスと、
前記移動体に固定され、前記第１撮像条件と異なる第２撮像条件の下で定期的に第２画像を撮像する第２撮像デバイスと、
前記移動体が走行する走行レーンについて、前記第１画像上の前記走行レーンの第１境界線を検出し、前記第２画像上の前記走行レーンの第２境界線を検出し、予め定められた実行条件の下で、前記第２画像上の前記第２境界線の位置に基づいて、前記第１画像上の前記第１境界線の位置を推定する演算デバイスと、
を備えるレーン検出装置。
【請求項２】
前記第１撮像条件は、前記移動体に対する前記第１撮像デバイスの位置及び方向と、前記第２撮像デバイスの絞りと、前記第２撮像デバイスのホワイトバランスとの何れかを含み、
前記第２撮像条件は、前記移動体に対する前記第２撮像デバイスの位置及び方向と、前記第２撮像デバイスの絞りと、前記第２撮像デバイスのホワイトバランスとの何れかを含む、
請求項１に記載のレーン検出装置。
【請求項３】
前記第１撮像デバイスは、前記移動体の進行方向側を向いている、
請求項２に記載のレーン検出装置。
【請求項４】
前記第２撮像デバイスは、前記進行方向の逆側を向いている、
請求項３に記載のレーン検出装置。
【請求項５】
前記実行条件は、前記第１画像上の前記走行レーンの二つの境界線の少なくとも何れか一つが検出されないことである、
請求項４に記載のレーン検出装置。
【請求項６】
前記演算デバイスは、前記第１境界線の位置に基づいて、前記第１画像上の第１消失点の位置を算出し、前記第１消失点の位置を記憶し、前記第２境界線の位置に基づいて、前記第２画像上の第２消失点の算出を推定し、前記第２消失点の位置を記憶し、
前記演算デバイスは、撮像時刻の異なる二つのフレームにおける前記第１消失点の位置の第１移動量と、前記二つのフレームにおける前記第２消失点の位置の第２移動量との間の移動量関係を予め記憶し、
前記実行条件の下で、前記演算デバイスは、過去のフレームの第２消失点の位置と現フレームの第２消失点の位置とに基づいて前記第２移動量を算出し、前記移動量関係を用いて、前記第２移動量から前記第１移動量を算出し、前記過去のフレームの前記第１消失点の位置と前記第１移動量とに基づいて、前記現フレームの前記第１消失点の位置を推定し、前記現フレームの前記第１消失点の位置に基づいて、前記第１境界線の位置を推定する、
請求項５に記載のレーン検出装置。
【請求項７】
前記演算デバイスは、前記第１画像上で予め設定された高さにおける前記二つの境界線の間の水平距離を算出し、前記水平距離を記憶し、
前記第１画像から、前記第１画像上の前記二つの境界線の一方の境界線の位置が検出された場合、前記演算デバイスは、前記第１消失点の位置と、前記一方の境界線の位置と、過去のフレームから算出された水平距離とに基づいて、他方の境界線の位置を推定する、
請求項６に記載のレーン検出装置。
【請求項８】
前記演算デバイスは、前記第１画像上で予め設定された高さにおける前記二つの境界線の間の角度を算出し、前記角度を記憶し、
前記第１画像から、前記第１画像上の前記二つの境界線の一方の境界線の位置が検出された場合、前記演算デバイスは、前記第１消失点の位置と、前記一方の境界線の位置と、過去のフレームから算出された角度とに基づいて、他方の境界線の位置を推定する、
請求項６に記載のレーン検出装置。
【請求項９】
前記第１境界線の位置は、前記第１境界線上の複数の点の位置と、前記第１境界線を示す一次関数の係数との何れかを含み、
前記第２境界線の位置は、前記第２境界線上の複数の点の位置と、前記第２境界線を示す一次関数の係数との何れかを含む、
請求項６に記載のレーン検出装置。
【請求項１０】
前記演算デバイスは、前記第１境界線の位置に基づいて前記第１画像上の前記走行レーンの位置を示すレーン情報を算出し、
前記レーン情報は、前記第１境界線のうち一方の境界線の位置、前記第１画像上の消失点の位置、及び前記第１画像上で予め設定された高さにおける前記二つの境界線の間の水平距離と、前記第１境界線のうち一方の境界線の位置、前記第１画像上の消失点の位置、及び前記第１画像上の前記二つの境界線の成す角度と、前記第１境界線情報のうち前記二つの境界線の位置との何れかを含む、
請求項９に記載のレーン検出装置。
【請求項１１】
前記移動体の進行方向を検出する慣性計測装置を更に備え、
前記演算デバイスは、前記検出された進行方向と前記レーン情報とに基づいて、前記走行レーンに対する前記移動体の位置を推定する、
請求項１０に記載のレーン検出装置。
【請求項１２】
前記演算デバイスは、前記移動体の車線変更を示す車線変更情報を取得し、前記車線変更情報と前記レーン情報に基づいて、前記走行レーンの前記車線変更の方向に隣接する隣接レーンの位置を推定する、
請求項１０に記載のレーン検出装置。
【請求項１３】
移動体に固定された第１撮像デバイスにより、予め定められた第１撮像条件の下で定期的に第１画像を撮像し、
前記移動体に固定された第２撮像デバイスにより、前記第１撮像条件と異なる第２撮像条件の下で定期的に第２画像を撮像し、
演算デバイスにより、前記移動体が走行する走行レーンについて、前記第１画像上の前記走行レーンの第１境界線を検出し、前記第２画像上の前記走行レーンの第２境界線を検出し、予め定められた実行条件の下で、前記第２画像上の前記第２境界線の位置に基づいて、前記第１画像上の前記第１境界線の位置を算出する、
ことを備えるレーン検出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、レーン検出装置に関する。
【背景技術】
【０００２】
ロボットや自動車などの移動体の安全性や利便性の向上のため、周囲環境の情報を検出し、走行状態の推定と制御を行う自律走行技術や運転支援技術が開発されている。周囲環境の情報の検出のためには様々なセンサが用いられる。一般に、周囲環境の計測のためのセンサとしては、カメラ、レーザセンサ、ミリ波レーダなどが用いられ、移動体の位置を測定するためのセンサとしては、ＧＰＳ（Global Positioning System）やＩＭＵ（Inertial Measurement Unit、慣性計測装置）などが用いられる。【０００３】
自律走行は、例えばＩＭＵで算出した速度や角速度の積算やＧＰＳ測位により移動体自身の位置（自己位置）を推定しながら、レーザセンサやカメラで周囲の環境を計測し、位置の基準となるランドマークや物体の位置を検出し、目標経路追従や障害物回避のための経路生成を行う。【０００４】
経路生成において、道路を走行する移動体は、白線等により路上に描かれたレーン内を走行する必要があるため、高い信頼性のレーン検出が重要となる。一般にレーンの検出はカメラを用いて行われており、環境条件により白線を検出できないことがある。その様な未検出の白線に対し、白線位置を推定する手法がいくつか考案されている。【０００５】
たとえば特許文献１は、撮像手段が撮像した画像から道路領域の道路端を検出し、検出された道路端から推定した道路端線と道路設計パラメータから未検出の白線を推定することを特徴とする画像処理方法を開示している。この技術は、撮像画像から白線を検出できなかった場合、撮像画像から道路領域の道路端を検出し、この道路端から道路端線を推定し、道路端線の消失点と道路の設計パラメータから未検出の白線を推定する。ここで消失点は、現実世界では平行になっている線をある点から観測すると一点に終着するように見える点である。さらに、この技術は、道路端線が検出できなかった場合、ガードレールの反射板や植木などの特徴点の並び線を推定し、特徴点の並び線の消失点を利用して未検出の白線を推定する。これにより、雨天時等で白線を検出することができない場合でも、未検出の白線を推定することができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２０００−１３２６７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
移動体に搭載されたカメラのような撮像手段を用いて白線を撮像する場合、特に雨天や日差しが強い条件などのように画素のコントラスト調整が難しい状況では、レーンの境界線を明確に撮像することができず、レーンを検出できないことがある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の一態様であるレーン検出装置は、移動体に固定され、予め定められた第１撮像条件の下で定期的に第１画像を撮像する第１撮像デバイスと、前記移動体に固定され、前記第１撮像条件と異なる第２撮像条件の下で定期的に第２画像を撮像する第２撮像デバイスと、前記移動体が走行する走行レーンについて、前記第１画像上の前記走行レーンの第１境界線を検出し、前記第２画像上の前記走行レーンの第２境界線を検出し、予め定められた実行条件の下で、前記第２画像上の前記第２境界線の位置に基づいて、前記第１画像上の前記第１境界線の位置を推定する演算デバイスと、を備える。
【発明の効果】
【０００９】
撮像の環境が変化する場合に、走行レーンの検出の信頼性を高めることができる。
【図面の簡単な説明】
【００１０】
【図１】実施例の移動体の構成を示す。
【図２】検出処理を示すフローチャートである。
【図３】フィルタの動作を示すフローチャートである。
【図４】実空間内の位置と撮像画像上の座標との関係を示す。
【図５】撮像画像Ｐａ上のベクトルと、撮像画像Ｐｂ上のベクトルとの関係を示す。
【図６】移動体１が直進する場合の、撮像画像Ｐａ上の消失点の位置と、撮像画像Ｐｂ上の消失点の位置との関係を示す。
【図７】移動体１がカーブを走行する場合の、撮像画像Ｐａ上の消失点の移動量と、撮像画像Ｐｂ上の消失点の移動量との関係を示す。
【図８】境界線の推定方法を示す。
【図９】走行レーンと移動体の位置関係を示す。
【図１０】隣接レーンの検出を示す。
【発明を実施するための形態】
【００１１】
以下、図面を参照して本発明の実施形態を説明する。
【実施例１】
【００１２】
本実施例のレーン検出装置は、移動体に搭載される第１の画像取得装置以外に、補助の画像取得装置である第２の画像取得装置を含む。これにより、レーン検出装置は、第１の画像取得装置でレーンの境界線を検出できなかった時でも、第２の画像取得装置からの情報を利用することでレーンを推定することができる。本実施例のレーン検出装置は、簡単のため、１台の補助の画像取得装置を含むが、複数の第２の画像取得装置を含んでもよい。また、第２の画像取得装置は、白線や黄線等、レーンの境界を検出できるものであれば、別の手段に置き換えられてもよい。【００１３】
本実施例の移動体は、自動車であるが、ロボット等、他の移動体であってもよい。【００１４】
図１は、実施例の移動体の構成を示す。【００１５】
移動体１は、レーンの位置を検出するレーン検出装置５と、駆動部６ａ、６ｂ、６ｃ、６ｄを含む。レーン検出装置５は、予め定められた撮像条件（第１撮像条件）の下で、定期的に移動体１の周囲の走行環境を撮像して撮像画像Ｐａ（第１画像）を取得する画像取得装置２ａ（第１撮像デバイス）と、画像取得装置２ａと異なる撮像条件（第２撮像条件）の下で、定期的に移動体１の周囲の走行環境を撮像して撮像画像Ｐｂ（第２画像）を取得する画像取得装置２ｂ（第２撮像デバイス）と、画像取得装置２ａ、２ｂにより取得された撮像画像Ｐａ、Ｐｂを処理する画像処理部３と、画像処理部３からの情報に基づいて移動体１の走行の制御、または警告を行う制御部４とを含む。【００１６】
撮像条件は、移動体１に対する画像取得装置２ａ、２ｂの位置及び方向、ホワイトバランス、絞り値などにより定められる。画像処理部３及び制御部４は、少なくとも一つの演算デバイスにより実現される。演算デバイスは、メモリ及びプロセッサを含む。メモリは、プログラム及びデータを格納し、プロセッサは、プログラムに従って処理を実行する。画像処理部３と制御部４は互いに異なる二つの演算デバイスであってもよい。【００１７】
画像取得装置２ａは、移動体１が走行している走行レーンを検出するためのメインの撮像画像Ｐａを取得する第１の画像取得装置である。本実施例の画像取得装置２ａは、移動体１の前部に、進行方向側に向けられて設置されている。画像取得装置２ｂは、走行レーンの撮像画像Ｐｂを取得する第２の画像取得装置である。画像取得装置２ａの撮像条件は、走行レーンの両側の境界線を撮像できることを含む。また、画像取得装置２ａは、走行レーンに隣接する隣接レーンを含む複数のレーンを撮像してもよい。一方、画像取得装置２ｂの撮像条件は、境界線の一部を撮像できることであってもよい。本実施例の画像取得装置２ｂは、移動体１の後部に、進行方向の逆側に向けられて設置されている。【００１８】
画像取得装置２ａと画像取得装置２ｂの夫々は、単眼カメラであってもよいし、ステレオカメラであってもよい。画像取得装置２ａと画像取得装置２ｂの夫々がステレオカメラである場合は、レーンの境界線までの距離を計測できるため、距離を用いて、レーン検出の精度を向上させることができる。以後、画像取得装置２ａと画像取得装置２ｂを区別する必要がない場合、画像取得装置２ａと画像取得装置２ｂの夫々を画像取得装置２と呼ぶ。画像取得装置２は、予め設定されたフレーム周期毎に、撮像を行い、得られた撮像画像を出力する。【００１９】
各画像取得装置２の視野角は、走行レーンを撮像可能であればよく、各画像取得装置２は、標準レンズを有していても広角レンズを有していてもよい。また、画像取得装置２ａと画像取得装置２ｂが、標準レンズと広角レンズを夫々有していてもよい。画像取得装置２が広角レンズを有する場合、予め設定されたレンズの特性を用いて画像を補正してもよい。本実施例では簡単のため、各画像取得装置２が標準レンズを有する単眼カメラである場合について説明する。各画像取得装置２は、定期的に撮像画像を出力すればよく、複数台のカメラを含んでもよい。【００２０】
画像取得装置２ａと画像取得装置２ｂは、同時に雨天や強い日差しなどの環境外乱の影響を受けないような条件で移動体１に設置される。例えば、画像取得装置２ａは移動体１の前部に前向き（移動体１の進行方向側）に設置され、画像取得装置２ｂは移動体１の後部に後向き（進行方向の逆側）に設置される。これにより、例えば雨が降り、画像取得装置２ａのレンズの表面に多量の雨滴が付着し、画像取得装置２ａの撮像画像の品質が低下する場合、進行方向の逆方向を向いている画像取得装置２ｂのレンズの表面には雨滴が付着しにくいため、画像取得装置２ｂの撮像画像を利用できる。日差しが強い場合も、同様の効果が得られる。但し、画像処理部３は、画像取得装置２ａの撮像画像からレーンを検出できれば、画像取得装置２ｂの撮像画像を利用しなくてもよい。【００２１】
なお、レーン検出装置５は、１つの画像取得装置２ｂではなく、互いに異なる撮像条件を有する複数の画像取得装置２ｂを含んでもよい。この場合、複数の画像取得装置２ｂに対して、ホワイトバランスや絞り値などのパラメータで表される撮像条件を、互いに異なる値に調整することで、よりロバストにレーンを検出することができる。例えば、レーン検出装置５は、明るい場所用にパラメータを調整した画像取得装置２ｂと、暗い場所用にパラメータを調整した画像取得装置２ｂとを含むことで、環境の明暗によらずレーンを検出できる。【００２２】
画像処理部３は、画像取得装置２ａと画像取得装置２ｂにより取得された撮像画像Ｐａ、Ｐｂから、フレーム毎に、移動体１が走行している走行レーンを検出する検出処理を実行する。以後、検出処理の対象のフレームを現フレームと呼び、現フレームの直前のフレームを前フレームと呼ぶ。なお、画像処理部３は、前フレームの代わりに、少なくとも一つの過去のフレームを用いてもよい。【００２３】
処理負荷軽減を優先させる場合、画像処理部３は、撮像画像Ｐａから、走行レーンの左右の境界線を両方とも検出できなかった場合、撮像画像Ｐｂを用いて、走行レーンの検出を行う。画像処理部３は、信頼性を優先させる場合、画像処理部３は、画像取得装置２ａ、２ｂから得られるすべての撮像画像Ｐａ、Ｐｂの情報を合成して、境界線および走行レーンを検出してもよい。画像処理部３が撮像画像Ｐａから境界線を検出できず、且つ画像処理部３が撮像画像Ｐｂから境界線を検出できないことが発生する可能性は小さい。レーン検出装置５が複数の画像取得装置２ｂを含んでもよい。この場合、複数の画像取得装置２ｂから夫々得られる複数の撮像画像Ｐｂに優先順位をつけて処理する。【００２４】
画像処理部３は例えば、プログラム及びデータを格納するメモリと、プログラムに従って動作するプロセッサとを含むコンピュータである。【００２５】
制御部４は、画像処理部３で検出された走行レーンの情報をもとに、移動体１の現在位置を推定し、将来の移動方向や速度を決定し、駆動部６ａ、６ｂ、６ｃ、６ｄを制御して、走行レーン上で移動体１を走行させる。なお、制御部４は、表示装置や音声出力装置に接続されていてもよい。この場合、走行レーンの位置と移動体１の位置との関係に応じて、表示装置や音声出力装置に、警告を出力させてもよい。制御部４は例えば、プログラム及びデータを格納するメモリと、プログラムに従って動作するプロセッサとを含むコンピュータである。なお、画像処理部３と制御部４が一つのコンピュータであってもよい。また、なお、レーン検出装置５は、制御部４を含まなくてもよい。【００２６】
図２は、検出処理を示すフローチャートである。【００２７】
この図において、実線は、撮像画像Ｐａの処理の流れを示し、破線は、撮像画像Ｐｂの処理の流れを示す。【００２８】
まずステップ１００ａにおいて画像取得装置２ａは、予め設定された撮像条件Ｃａの下で、移動体１の周囲の走行環境を撮像することにより、撮像画像Ｐａを生成する。ステップ１００ｂにおいて画像取得装置２ｂは、撮像条件Ｃａと異なる撮像条件Ｃｂの下で、移動体１の周囲の走行環境を撮像することにより、撮像画像Ｐｂを生成する。【００２９】
その後、ステップ２００において画像処理部３は、予め設定されたジェネリックアルゴリズムを用いて、撮像画像Ｐａ、Ｐｂの夫々から、直線や曲線等の線を検出する。検出された線は、レーンの境界線の要素となり得る。画像から線を検出するジェネリックアルゴリズムは、例えば、Ｈｏｕｇｈ変換や確率的Ｈｏｕｇｈ変換やランダム標本化Ｈｏｕｇｈ変換等である。なお、ジェネリックアルゴリズムは、Ｃａｎｎｙ変換やＳｏｂｅｌフィルタやゼロクロス法などのエッジ検出器であってもよい。【００３０】
その後、ステップ３００において画像処理部３は、フィルタを用いて、撮像画像から検出された線から、レーンの境界線を検出する。ここでフィルタは、撮像画像Ｐａから検出された線に基づいて、撮像画像Ｐａ内の境界線Ｂａ（第１境界線）を検出し、撮像画像Ｐａ上の境界線Ｂａの位置を示す境界線情報ＤＢａを生成すると共に、撮像画像Ｐｂから検出された線に基づいて、撮像画像Ｐｂ内の境界線Ｂｂ（第２境界線）を検出し、境界線Ｂｂを示す境界線情報ＤＢｂを検出する。フィルタの詳細については後述する。【００３１】
境界線情報は、撮像画像上の直線を表現する情報である。例えば、１本の境界線を示す境界線情報は、撮像画像上の消失点の座標及び境界線が通る画像上の１点と、撮像画像上で境界線上の２点の座標と、撮像画像上の直線パラメータ（一次関数）との何れかを含む。直線パラメータは、例えば一次関数の係数ａ，ｂである。これにより、レーン検出装置５は、撮像画像Ｐａ、Ｐｂから検出される境界線Ｂａ、Ｂｂを夫々表すことができる。また、レーン検出装置５は、境界線Ｂｂの境界線情報を境界線Ｂａの境界線情報へ変換することができる。【００３２】
その後、ステップ４００において画像処理部３は、撮像画像Ｐａから走行レーンの左右の両方の境界線Ｂａが検出されたかどうかを判定する。画像処理部３は、両方の境界線Ｂａが検出された場合、処理をステップ５３０に進め、少なくとも何れか一方の境界線が検出されなかった場合、処理をステップ５００に進める。ステップ５００において画像処理部３は、撮像画像Ｐａから左右の境界線Ｂａのうち片方の境界線が検出されたか否かを判定する。片方の境界線が検出された場合、処理をステップ５１０に進め、何れの境界線も検出されなかった場合、処理をステップ５８０に進める。【００３３】
ステップ５１０（片方の境界線だけが検出された場合）において画像処理部３は、撮像画像Ｐａから、左右の境界線Ｂａのうち、どちらの境界線が検出されたかを判定する。【００３４】
その後、ステップ５８０において画像処理部３は、未検出の境界線について、撮像画像Ｐｂから検出された境界線Ｂｂの座標を示す境界線情報ＤＢｂを、撮像画像Ｐａ上の座標で表される境界線情報ＤＢａに変換する。なお、画像処理部３は、ステップ２００、３００において、撮像画像Ｐｂを用いる処理を実行せず、ステップ５８０を実行する場合、撮像画像Ｐｂを用いる処理を実行し、ステップ５８０を実行してもよい。【００３５】
その後、ステップ５２０において画像処理部３は、未検出の境界線について、ステップ５８０により得られた境界線情報ＤＢａを取得する。【００３６】
その後、ステップ５３０において画像処理部３は、２本の境界線情報ＤＢａから、撮像画像Ｐａ上の走行レーンの位置を示すレーン情報を生成し、レーン情報を制御部４へ出力する。【００３７】
撮像画像Ｐａ上に複数のレーンおよび境界線が存在することがある。そこで、画像処理部３は、過去（時系列）のレーン情報を記憶し、各レーンを特定するために、過去のレーン情報から、レーンの位置や特徴（消失点の位置、レーンの幅員など）が大きく変化しないことを条件に、近傍の（特徴が類似する）複数の境界線を１本の境界線にまとめる。近傍の複数の境界線は例えば、傾きの差が所定範囲内であり、且つ切片の差が所定範囲内である境界線である。【００３８】
その後、ステップ５７０において画像処理部３は、境界線情報ＤＢａとレーン情報をフィルタに出力し、このフローを終了する。フィルタは、過去（例えば前フレーム）の境界線Ｂａの位置を基準に境界線Ｂａの検出を行う。例えば、フィルタは、前フレームの境界線Ｂａから所定範囲内で境界線Ｂａを検出する。これにより、境界線Ｂａの検出の効率および信頼性が向上する。【００３９】
ここでは処理負荷軽減を優先させる場合の処理フローを示した。信頼性を優先する場合はステップ４００およびステップ５００の判定は必要なく、ステップ５３０において画像処理部３は、境界線情報ＤＢｂを境界線情報ＤＢａに変換し、検出と変換により得られた全ての境界線情報ＤＢａを合成することにより、レーン情報を生成する。【００４０】
以上の画像処理部３の動作によれば、レーン検出装置５は、撮像画像Ｐａ上の走行レーンの２本の境界線Ｂａの少なくとも何れか一つが検出されない場合でも、撮像画像Ｐｂ上の境界線Ｂｂの位置に基づいて、撮像画像Ｐａ上の境界線Ｂａの位置を推定することができる。これにより、レーン検出装置５は、走行レーンをロバストに検出することができる。【００４１】
図３は、フィルタの動作を示すフローチャートである。【００４２】
前述のステップ３００においてフィルタは、ジェネリックアルゴリズムにより検出された全ての直線から境界線を抽出する。【００４３】
ステップ３１０においてフィルタは、ステップ２００で検出された直線を一次関数で表現したときの切片を計算する。計算された切片の値が予め設定された切片範囲内にない場合、フィルタは、その直線をノイズとみなして削除する。次にステップ３２０においてフィルタは、ステップ３１０で削除されなかった直線の長さを計算する。計算された長さが予め設定された長さ範囲内にない場合、フィルタは、その直線を削除する。ステップ３３０においてフィルタは、ステップ３２０で削除されなかった直線を一次関数で表現したときの傾きを計算する。計算された傾きが予め設定された傾き範囲内にない場合、フィルタは、その直線を削除する。なお、切片範囲、長さ範囲、傾き範囲は、明らかにレーンの境界線を構成するものではない直線（たとえば水平方向の直線）を削除するために、予め統計的に決定される。【００４４】
ステップ３４０においてフィルタは、ステップ３３０で削除されなかった直線のうち、傾きと切片が所定の範囲内にあり且つ切片が所定の範囲内にある直線を、同一直線と見なし１つの直線にまとめる。【００４５】
ステップ３５０においてフィルタは、ステップ３４０でまとめられた直線から、予め設定された参照用境界線（reference）に最も近い直線を探索し、境界線として決定する。ステップ５７０によりフィルタは、過去（時系列）の境界線情報の中から、撮像画像の右と左の夫々で、最も高い存在確率を持っている境界線を、参照用境界線として設定する。【００４６】
ステップ３６０においてフィルタは、ステップ３５０で決定された境界線を、ステップ５７０により得られた前回の境界線情報及びレーン情報と比較する。ここでフィルタは、決定された境界線の位置と、前回の境界線の位置との差分を計算し、計算された差分の大きさが予め設定された差分閾値より大きい場合、境界線を削除し、そうでない場合、決定された境界線を出力する。【００４７】
なお、フィルタの動作は、このフローに限られない。また、各ステップの順序が異なってもよい。フィルタはさらに、ＧＰＳ、照度センサ、カラーセンサ、レーザセンサなどの情報を用いて、境界線を判定してもよい。これにより、境界線の検出が、より高精度に、よりロバストになる。また、フィルタは、更に地図情報を参照して、検出された境界線の幅員、色、サイズなどを判定してもよい。これにより、境界線の検出がさらに正確になる。【００４８】
図４は、実空間内の位置と撮像画像上の座標との関係を示す。【００４９】
この図は、実空間の走行環境において、移動体１の画像取得装置２ａの観測点を原点とし、原点から距離ｄだけ離れｙｚ平面に平行な面である撮像画像１０００に、実空間内の点が投影される場合を示す。【００５０】
移動体１から見た道路の最遠端は、水平線１０２０として撮像画像１０００に投影される。境界線１０３０は、線１０４０として撮像画像１０００に投影される。この撮像画像１０００上の線１０４０と水平線１０２０の交点が消失点Ｖである。実際には、進行方向右側の境界線１０３０ａは、左側の境界線１０３０と平行である。撮像画像１０００上では、右側の境界線１０３０ａは、右側の線１０４０ａに投影され、消失点Ｖで左側の線１０４０と交わる。ここで、実空間上の任意の点１０６０（ｘ，ｙ，ｚ）は、撮像画像１０００上の点１０７０（−，ｙｄ／ｘ，ｚｄ／ｘ）に投影され、実空間上のベクトル（Ｘ，Ｙ，Ｚ）は、撮像画像１０００上では消失点Ｖ（−，ｙｄ／ｘ，ｚｄ／ｘ）に向かうベクトルになる。ここで路面の高さｚは通常ほとんど変化の無い値となる。【００５１】
画像処理部３は、以上の座標変換方法を用いることにより、実空間内の座標と、撮像画像１０００上の座標とを互いに変換することができる。【００５２】
また、画像取得装置２ａおよび画像取得装置２ｂの夫々の設置位置と設置方向が既知であることから、画像処理部３は、撮像画像Ｐｂ上の座標で示される境界線情報及びレーン情報は、撮像画像Ｐａ上の座標で示される境界線情報及びレーン情報へ容易に変換可能である。【００５３】
図５は、撮像画像Ｐａ上のベクトルと、撮像画像Ｐｂ上のベクトルとの関係を示す。【００５４】
画像処理部３は、この図に示すように、撮像画像Ｐａから検出される或る境界線上の位置座標１０８０ａ及びベクトル１０９０ａと、撮像画像Ｐｂから検出される当該境界線上の位置座標１０８０ｂ及びベクトル１０９０ｂとの何れか一つを検出できれば、当該境界線を検出できる。前述のように路面の高さは通常ほとんど変化しないので、画像処理部３は、実空間内の既知の位置の物体の撮像画像を用いて予めキャリブレーションを行うことにより、撮像画像Ｐａ、Ｐｂ上の画素位置と実空間の座標とを対応づけておけばよい。これにより、画像処理部は、ステップ５８０の変換を行うことができる。【００５５】
図６は、移動体１が直進する場合の、撮像画像Ｐａ上の消失点の位置と、撮像画像Ｐｂ上の消失点の位置との関係を示す。【００５６】
移動体１の前方の消失点Ｖ（第１消失点）は、撮像画像Ｐａ上の座標（Ｖｘ，Ｖｙ）で表される。移動体１の後方の消失点Ｖｂ（第２消失点）は、撮像画像Ｐｂ上の座標（Ｖｂｘ，Ｖｂｙ）で表される。【００５７】
移動体１が直進する場合、撮像画像Ｐａ上の消失点Ｖと、撮像画像Ｐｂ上の消失点Ｖｂとの位置関係は、一定である。この位置関係は、移動体１に対する画像取得装置２ａの位置及び方向と、移動体１に対する画像取得装置２ｂの位置及び方向とから、予め決定される。【００５８】
撮像画像Ｐａから消失点が検出されず、且つ撮像画像Ｐｂから消失点が検出された場合、ステップ５８０において画像処理部３は、この位置関係を用いることにより、撮像画像Ｐｂ上の消失点Ｖｂの座標を、撮像画像Ｐａ上の消失点Ｖの座標に変換する。【００５９】
図７は、移動体１がカーブを走行する場合の、撮像画像Ｐａ上の消失点の移動量と、撮像画像Ｐｂ上の消失点の移動量との関係を示す。【００６０】
画像処理部３は、過去の境界線情報ＤＢａ及びＤＢｂを記憶する。これにより、画像処理部３は、前フレームから現フレームに亘る撮像画像Ｐａ上の消失点Ｖの移動距離ｌａと、前フレームから現フレームに亘る撮像画像Ｐｂ上の消失点Ｖｂの移動距離ｌｂとを算出する。また、画像処理部３は、前フレームから現フレームに亘る移動体１の移動角度θａと、前フレームから現フレームに亘る移動体１の移動角度θｂとを検出してもよい。【００６１】
移動体１がカーブを走行中の場合、移動体１に対する消失点Ｖと消失点Ｖｂの位置関係は変化する。ここで、画像取得装置２ａと画像取得装置２ｂは移動体１に固定されているので、消失点Ｖの移動量と消失点Ｖｂの移動量との関係を示す移動量関係は、一定である。例えば、移動量関係として、移動距離ｌａ及び移動距離ｌｂの関係を示す移動距離関係は、一定である。また、移動量関係として、移動角度θａ及び移動角度θｂの関係を示す移動角度関係は、一定である。このような移動量関係が、移動体１に対する画像取得装置２ａの位置及び方向と、移動体１に対する画像取得装置２ｂの位置及び方向とから、予め決定される。【００６２】
撮像画像Ｐａから消失点Ｖが検出されず、且つ撮像画像Ｐｂから消失点Ｖｂが検出された場合、ステップ５８０において画像処理部３は、画像処理部３は、撮像画像Ｐｂ上の消失点Ｖｂの座標を、撮像画像Ｐａ上の消失点Ｖの座標に変換するのではなく、撮像画像Ｐｂ上の消失点Ｖｂの移動量を、撮像画像Ｐａ上の消失点Ｖの移動量に変換する。例えば、画像処理部３は、移動距離の関係を用いて、移動距離ｌｂを移動距離ｌａに変換する。或いは、画像処理部３は、移動角度の関係を用いて、移動角度θｂを移動角度θａに変換する。その後、画像処理部３は、撮像画像Ｐａ上の前フレームの消失点Ｖの座標と、変換された移動量とから、撮像画像Ｐａ上の現フレームの消失点Ｖの座標を推定する。【００６３】
これにより、撮像画像Ｐａから２本の境界線Ｂａの何れかが検出されない場合、撮像画像Ｐｂから消失点Ｖｂの位置を検出し、消失点Ｖｂの位置から消失点Ｖの位置を推定することができる。【００６４】
なお、移動量の大きさが予め設定された移動量閾値以下である場合、画像処理部３は、前述の位置関係を用いて、消失点Ｖｂの座標を消失点Ｖの座標に変換してもよい。【００６５】
前フレームのレーン情報と、消失点Ｖｂの座標から変換された消失点Ｖの座標とを用いる境界線の推定方法について説明する。【００６６】
図８は、境界線の推定方法を示す。【００６７】
走行レーンを示すレーン情報は、走行レーンの両側を定める２本の境界線Ｂａを特定する情報を含む。例えば、レーン情報は、撮像画像Ｐａ上の消失点の座標と、撮像画像Ｐａ上で片方の境界線が通る１点の座標と、撮像画像Ｐａ上の走行レーンの幅員ｒとを含む。幅員ｒは、撮像画像Ｐａ上の予め設定された高さｈにおける、走行レーンの２本の境界線Ｂａの間の水平距離である。高さｈは、撮像画像Ｐａ上の消失点Ｖの高さより低い。また、レーン情報は、撮像画像Ｐａ上で対となる２本の境界線Ｂａが通る複数点の座標を含んでもよい。また、レーン情報は、撮像画像Ｐａ上の対となる２本の境界線Ｂａを示す直線パラメータ（一次関数）を含んでもよい。また、レーン情報は、撮像画像Ｐａ上の消失点座標と、１本の境界線を示す直線パラメータと、２本の境界線が成す角度βとを含んでもよい。これにより、レーン検出装置５は、走行レーンの左右の境界線Ｂａの境界線情報を用いて、走行レーンを表すことができる。【００６８】
幅員ｒは、高さｈにおける水平方向の距離に限らず、レーン情報で示されている１点からのベクトルで表現されても良い。地図情報には、実空間における走行レーンの幅員が記載されていることが多いので、幅員ｒを用いる方が他のデータとの整合性がよい。実空間内の走行レーンの幅員と、撮像画像Ｐａ上の走行レーンの幅員ｒとは、前述の座標変換方法により互いに変換される。【００６９】
画像処理部３が、撮像画像Ｐａ上の右の境界線２０００を検出し、消失点Ｖｂを消失点Ｖに変換した場合、ステップ５８０において、前フレームのレーン情報と、現フレームの消失点Ｖとに基づいて、左の境界線２５００を推定する。【００７０】
ステップ５２０において画像処理部３は、前フレームのレーン情報に基づいて、前フレームの幅員ｒを取得する。画像処理部３は、右の境界線２０００上で高さｈの点Ｌから、左方向へ幅員ｒだけ離れた点Ｈ（Ｈｘ，Ｈｙ）を推定し、点Ｈの座標と消失点Ｖの座標を直線関数ｙ＝ａｘ＋ｂに代入することで、境界線２５００を推定する。【００７１】
なお、画像処理部３は、前フレームのレーン情報に基づいて、前フレームの幅員ｒの変わりに、前フレームの撮像画像Ｐａにおいて、消失点Ｖで交わる２本の境界線が成す角度βを取得してもよい。この場合、ステップ５８０において画像処理部３は、境界線２０００と消失点Ｖと角度βから、境界線２５００を推定する。【００７２】
これにより、撮像画像Ｐａから２本の境界線Ｂａの何れかが検出されない場合、過去のフレームの幅員ｒと、消失点Ｖｂの位置から変換された消失点Ｖの位置とから、境界線Ｂａを推定することができる。【００７３】
なお、画像処理部３は、撮像画像Ｐａから走行レーンの２本の境界線の何れも検出できない場合、移動量関係を用いて、現フレームの撮像画像Ｐｂから検出された２本の境界線Ｂｂと、前フレームの撮像画像Ｐａから検出された２本の境界線Ｂａから、現フレームの撮像画像Ｐａ上の２本の境界線Ｂａを推定してもよい。【００７４】
本実施例によれば、レーン検出装置５は、撮像画像Ｐａから走行レーンの境界線Ｂａを検出できない場合であっても、撮像画像Ｐｂに基づいて、境界線Ｂａを推定することができる。
【実施例２】
【００７５】
本実施例のレーン検出装置５は、検出されたレーン情報を利用して移動体の自己位置推定を実行する。【００７６】
図９は、走行レーンと移動体の位置関係を示す。【００７７】
距離ｗ１は、実空間における移動体１の左端から走行レーンの左側の境界線４１２０ａまでの距離である。距離ｗ２は、実空間における移動体１の右端から右側の境界線４１２０ｂまでの距離である。制御部４は、前述の座標変換方法を用いて、レーン情報から、距離ｗ１およびｗ２を算出する。左右の距離は、移動体１の端からではなく、移動体１の中心線４１３０から左右の境界線までの距離ｗ３，ｗ４でもよい。【００７８】
制御部４は、ＩＭＵを用いて進行方向４３００を算出する。ＩＭＵの誤差の影響で位置推定誤差が大きくなるので、制御部４は、ＩＭＵにより検出された進行方向に対して、レーン情報に示された走行レーン４４００の相対方向を算出し、相対方向を用いて進行方向４３００の補正を行う。この図において、消失点４１５０は、水平線４１４０上にある。もし、消失点４１５０が移動体１の中心線（画像取得装置２ａの光軸の方向）４１３０上にある場合、移動体１は、走行レーン４４００と平行に走行している。消失点４１５０が移動体１の中心線４１３０に対して左側にある場合、移動体１の進行方向４３００は走行レーンの方向に対し右側に傾いている。実空間の消失点の座標を（ｄ，ｙｙ，０）とし、前述の座標変換方法を用いると、消失点方向の移動体に対するｘｙ平面内の傾き（ｙ方向／ｘ方向）は、ｙｙ／ｄとなる。すなわち、消失点の位置で移動体１の方向が算出できる。【００７９】
自動車は高速に走行するため、フレーム一枚でも境界線を検出できなければ誤差が大きくなり、システム全体に影響する。そのため、短時間で正確に走行レーンを検出する必要がある。本実施例によれば、レーン検出装置５は、時系列のレーン情報を保存し、最新のレーン情報が検出できない場合に、過去のレーン情報に基づいて最新のレーン情報を推定し、最新のレーン情報に基づいたレーン検出と自己位置推定ができる。
【実施例３】
【００８０】
本実施例のレーン検出装置５は、走行レーンに加えて、隣接レーンも検出する。【００８１】
図１０は、隣接レーンの検出を示す。【００８２】
左境界線５３００ａと右境界線５３００ｂは、実施例１と同様の検出処理により検出される走行レーン５２００である。左境界線５３００ａの左方向にある左境界線５４００ａは、左側の隣接レーンの左端である。右境界線５３００ｂの右方向にある右境界線５４００ｂは、右側の隣接レーンの右端である。幅員ｒ１は、前フレームの検出処理により検出された左側の隣接レーンの幅員である。幅員ｒ２は、前フレームの検出処理により検出された右側の隣接レーンの幅員である。【００８３】
点５６００ａは、走行レーン５２００の左境界線５３００ａ上、且つ撮像画像Ｐａ上の高さｈにある一点（Ｌａｘ、Ｌａｙ）である。点５６００ｂは、走行レーン５２００の右境界線５３００ｂ上、且つ撮像画像Ｐａ上の高さｈにある一点（Ｌｂｘ、Ｌｂｙ）である。点５７００ａは、点５６００ａから左方向へ幅員ｒ１だけ離れた点（Ｓｘ、Ｓｙ）である。点５７００ｂは、点５６００ｂから右方向へ幅員ｒ２だけ離れた点（Ｒｘ、Ｒｙ）である。隣接レーン５８００ａは、走行レーン５２００の左側の隣接レーンである。隣接レーン５８００ｂは、走行レーン５２００の右側の隣接レーンである。消失点Ｖは、前フレームの検出処理により検出された消失点（Ｖｘ、Ｖｙ）である。【００８４】
移動体１が走行レーン５２００を走行中に車線変更を行う場合、画像処理部３は、移動体１の進行方向４３００の算出のために、走行レーン５２００に加えて、左境界線５４００ａと右境界線５４００ｂの少なくとも何れかを検出する。常に隣接レーン５８００ａと５８００ｂを検出することは、処理負荷が大きくなるので、レーン検出装置５は、必要な時にレーン情報の算出を行う。例えば、移動体１が右へ車線変更を行う場合、制御部４は、画像処理部３へ右の隣接レーンの検出の指示を発行する。その指示に応じて、画像処理部３は、走行レーン５２００と右境界線５４００ｂの情報を検出し、隣接レーン５８００ｂを検出する。これにより、画像処理部は、最小限の処理負荷で境界線を検出できる。制御部４は、検出された走行レーン５２００と隣接レーン５８００ｂの情報を用いて、車線変更の制御を実行する。これにより、制御部は、車線変更前に必要な走行レーン５２００の位置と、車線変更後に必要な隣接レーン５８００ｂの位置とを取得することができる。【００８５】
以上の実施例によれば、レーン検出装置５は、処理負荷が低く且つ信頼性の高い（ロバストな）レーン検出を行うことができる。特に、雨天や日差しが強い条件（逆光、照り返し、反射）などのように画素のコントラスト調整が難しい状況において、一つの画像処理装置の撮像画像からレーンを検出できない場合でも、別の画像取得装置の撮像画像からレーンを検出できることが多い。このような場合、撮像画像Ｐｂから検出された境界線の位置を撮像画像Ｐａ上の境界線の位置に変換し、変換された情報を用いてレーンを検出することができる。【００８６】
以上、本発明の実施形態を説明したが、これは本発明の説明のための例示であって、本発明の範囲を上記構成に限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。
【符号の説明】
【００８７】
１…移動体、  ２ａ、２ｂ…画像取得装置、  ３…画像処理部、  ４…制御部、  ５…レーン検出装置、  ６ａ、６ｂ、６ｃ、６ｄ…駆動部
【図１】
2016178335.tif 000003
【図２】
2016178335.tif 000004
【図３】
2016178335.tif 000005
【図４】
2016178335.tif 000006
【図５】
2016178335.tif 000007
【図６】
2016178335.tif 000008
【図７】
2016178335.tif 000009
【図８】
2016178335.tif 000010
【図９】
2016178335.tif 000011
【図１０】
2016178335.tif 000012
【国際調査報告】
2016178335.tif 000013
2016178335.tif 000014
2016178335.tif 000015
2016178335.tif 000016