(57)【要約】【課題】複数カメラによる正確な線種判定を可能にする。【解決手段】複数のカメラと、前記複数のカメラで得られたそれぞれの画像から区画線候補を検知しその種類を判定する線種判定部と、検知された区画線候補の位置を算出する区画線位置算出部と、前記検知された区画線候補の位置関係を用いて各区画線候補の信頼度を計算する信頼度算出部と、前記信頼度が閾値以上の区画線候補の線種を入力として各線種の確率を求める確率計算部と、確率計算部の結果に基づいて当該区画線の線種を最終的に決定する線種決定部と、を備える。【選択図】図２
2019067159.tif 000002
【特許請求の範囲】
【請求項１】
複数のセンサと、
前記複数のセンサで得られたそれぞれの画像から区画線候補を検知し該区画線候補の線種を判定する線種判定部と、
検知された区画線候補の位置を算出する区画線位置算出部と、
前記検知された区画線候補の位置関係を用いて各区画線候補の信頼度を計算する信頼度算出部と、
前記信頼度が閾値以上の区画線候補の線種を入力として各線種の確率を求める確率計算部と、
前記確率計算部の結果に基づいて区画線の線種を最終的に決定する線種決定部と、
を備える区画線認識装置。
【請求項２】
前記線種判定部は、前記区画線が連続的か否か、あるいは、フレーム毎の区画線有無の周期性に基づいて前記区画線候補の線種の判定を行うことを特徴とする請求項１に記載の区画線認識装置。
【請求項３】
前記信頼度算出部は、区画線候補同士の距離をスコア化し、該スコアを用いて各前記区画線候補の信頼度を計算することを特徴とする請求項１に記載の区画線認識装置。
【請求項４】
前記信頼度算出部は、複数の前記区画線候補の中から基準として選択した前記区画線候補と、それ以外の前記区画線候補との関係から前記スコア化することを特徴とする請求項３に記載の区画線認識装置。
【請求項５】
前記信頼度算出部は、複数の前記区画線候補の中から基準として選択した前記区画線候補と、それ以外の前記区画線候補との距離差が所定内の場合、同一区画線であると判断することを特徴とする請求項４に記載の区画線認識装置。
【請求項６】
複数の前記区画線候補の中から基準として選択した第一の区画線候補と、それ以外の第二の区画線候補とが、自車両からみて同じ側か否かを判定し、
同じ側の場合、前記第一の区画線候補と前記第二の区画線候補の距離を第１の閾値から減じた値をローカルスコアとし、
互いに反対側の場合、前記第一の区画線候補と前記第二の区画線候補の距離と車線幅との差分を第２の閾値から減じた値をローカルスコアとし、
前記区画線候補同士のそれぞれの組合せについて前記ローカルスコアを計算した後、前記区画線候補のそれぞれについて前記ローカルスコアを合計したものを前記スコアとすることを特徴とする請求項３に記載の区画線認識装置。
【請求項７】
前記信頼度算出部は、不検知が一定回数以上になった区画線位置以外の情報を用いることを特徴とする請求項１に記載の区画線認識装置。
【請求項８】
前記信頼度算出部は、前記複数のセンサがそれぞれ出力した線種判定結果と前記線種決定部が出力した線種とを照合して一致する割合を求め、その割合が閾値以上になった区画線位置の情報を用いることを特徴とする請求項１に記載の区画線認識装置。
【請求項９】
前記確率計算部は、ベイズ理論を用いることを特徴とする請求項１に記載の区画線認識装置。
【請求項１０】
前記センサは単眼カメラであることを特徴とする請求項１に記載の区画線認識装置。
【請求項１１】
前記センサは、ステレオカメラと、レーザレンジファインダと、全周囲カメラの少なくとも１つであることを特徴とする請求項１に記載の区画線認識装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両走行環境における路面標示を認識する装置に関する。
【背景技術】
【０００２】
特許文献１には、道路を構成するリンクに基づき生成したリンク平面をグリッドに分割して、所定以上の白線存在確率の前記グリッドから道路形状を取得する道路形状取得装置であって、前記道路のリンク情報を記憶した地図データ記憶手段と、前記グリッド毎に、更新された白線存在確率又は初期値の白線存在確率を記憶した白線存在確率記憶手段と、車両の位置を検出する位置検出手段と、前記道路の白線を検出する白線検出手段と、検出された前記白線に対応する前記グリッドから所定範囲のグリッドの白線存在確率、及び、前記白線存在確率記憶手段に記憶されている白線存在確率をベイズの更新式に適用して前記白線存在確率記憶手段に記憶されている白線存在確率を更新する白線存在確率設定手段と、を有する、と記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−３２５３号公報
【特許文献２】特開２０１４−０２７５３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１は、単一カメラで得られた認識結果を確率的に処理することで、白線の存在確率を求めている。しかし、単一カメラで得られた結果を確率的に処理する場合、同じ結果が続けばその確率が上がり続けるため、線種や白線位置を間違え続ける可能性がある。また、間違え続ける結果を補正するための手段も有さない。
【０００５】
しかし、これは複数のカメラを保持するだけでは解決しない。複数のカメラを保持する場合、設置位置や角度によって画像の状況が異なるため、全カメラの結果を常に信頼できるとは限らない。したがって、どのカメラを信頼すべきかを判断し、適切なカメラを選択することが必要である。
本発明は、上記の点に鑑みてなされたものであり、その目的とするところは、車線を区画する区画線の線種を正確に判定することができる区画線認識装置を提供することである。
【課題を解決するための手段】
【０００６】
上記課題を解決する本発明の区画線認識装置は、複数のカメラと、前記複数のカメラで得られたそれぞれの画像から区画線候補を検知しその種類を判定する線種判定部と、検知された区画線候補の位置を算出する区画線位置算出部と、前記検知された区画線候補の位置関係を用いて各区画線候補の信頼度を計算する信頼度算出部と、前記信頼度が閾値以上の区画線候補の線種を入力として各線種の確率を求める確率計算部と、確率計算部の結果に基づいて当該区画線の線種を最終的に決定する線種決定部と、を備える。
【発明の効果】
【０００７】
本発明によれば、複数カメラによる正確な線種判定が可能になる。本発明に関連する更なる特徴は、本明細書の記述、添付図面から明らかになるものである。また、上記した以外の、課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【０００８】
【図１】装置の構成例を示す図。
【図２】ソフトウェア構成の例を示す図。
【図３】処理フローの概略を示す図。
【図４】特徴点抽出の処理を示すフローチャート。
【図５】白線候補抽出の処理を示すフローチャート。
【図６】白線候補抽出処理の概念図。
【図７】線種判定処理のフローチャート。
【図８】信頼性の高い白線候補の選択処理のフローチャート。
【図９】スコア化処理のフローチャート。
【図１０】白線候補の位置関係例。
【図１１】スコア化結果例。
【図１２】道路種別とそれに対応する道路幅員の関係。
【図１３】信頼度の判定処理のフローチャート。
【図１４】信頼度の判定例。
【図１５】信頼度の判定処理のフローチャート。
【図１６】信頼度の判定処理のフローチャート。
【図１７】線種確率算出部のソフトウェア構成図。
【図１８】内部データ構造。
【図１９】線種確率算出部の処理のフローチャート。
【図２０】線種確率決定部の処理のフローチャート。
【図２１】カメラ以外を使った場合の装置の構成例。
【図２２】カメラ以外を使った場合のソフトウェア構成例。
【図２３】ノイズ除去の処理を説明するフローチャート。
【図２４】ノイズ除去の事例を説明する図。
【発明を実施するための形態】
【０００９】
図１は、本発明における装置の構成例を示す図である。本実施の形態における区画線認識装置は、自動車の車両に搭載されて、カメラで撮像された画像に基づいて車線を構成する白線等の区画線を認識するものである。区画線認識装置は、車両に搭載されるハードウェアと、ハードウェアを制御するソフトウェアとの協働により具現化される。
【００１０】
区画線認識装置は、車両前方を監視するためのフロントカメラ101-Fr、後方を監視するためのリアカメラ101-Rr、車両左側方を監視するための左サイドカメラ101-SL、車両右側方を監視するための右サイドカメラ101-SR、これらのカメラ画像を処理する画像処理装置102、地図情報等を記憶するための記憶装置103を備えている。
【００１１】
CPU104は、画像処理装置102の処理結果を用いて車両の自車線、隣接車線を構成する白線の情報をメモリ105に蓄える。そして、その情報をCAN I/F 106を通じてCANバス107に流し、車両制御ユニット108に送る。
【００１２】
図２は、本発明におけるソフトウェア構成の例を示す図である。各カメラ101に対応し、線種判定部201、白線距離算出部202をカメラごとに備える。
【００１３】
線種判定部201は、画像処理装置102に設けられており、カメラ101で撮影された画像から抽出された特徴点を基に白線を検知する。そして、その結果に基づいて線種を判定する。
【００１４】
特徴点を抽出する手法としては、例えば輝度値が黒色相当と白色相当の境界エッジを用いる手法が存在する。それらの距離が白線幅相当であれば特徴点とする。その他にも様々
な手法が考えられるが、本実施例においてはどのような手法であっても構わない。また、この線種判定部では、抽出された特徴点の情報に基づいて直線を抽出する。この方法については後述する。
【００１５】
白線距離算出部202は、自車から各白線候補までの距離を算出するものである。これは、白線候補上の特徴点座標を世界座標に変換することで可能となる。これについても後述する。
【００１６】
信頼度判定部203は、どのカメラから検知された白線候補を採用するかを判定する。各カメラの汚れ方、各カメラが白線を誤検知していないかを判定し、適切な候補を選択する。
線種確率算出部204は、各白線候補の線種を入力とし、それらを確率的に処理して線種ごとに確率を算出するものである（確率計算部）。線種決定部205は、線種確率算出部204で算出された各線種の確率に基づいて最終的な線種を決定するものである。線種確率算出部204と線種決定部205については後述する。
【００１７】
図３は、本発明における処理フローの概略を示す図である。これは、画像１フレーム分の処理である。まず、カメラ数分の繰り返し処理がある。最初のステップ301では、カメラレンズの汚れを判定する。この手法は、公知の方法を適用可能であり、例えば特開2014-027539（特許文献２）等に開示されているような方法が適用可能であり、詳細の説明は割愛する。次にステップ302でレンズの汚れ具合を評価する。レンズの汚れがあれば、当該カメラで捕捉されるはずだった白線について不採用フラグを立てる（ステップ309）。すなわち、当該カメラは使わないこととし、次のカメラの処理に移る。
【００１８】
レンズの汚れが無い場合は、ステップ303以降に移る。ステップ303では、各カメラ画像から特徴量を抽出し、白線候補を検知する。次に、ステップ304で、各白線候補の線種を判定する。線種を判定する手法としては、複数フレームに亘って白線の有無の情報を蓄積し、その周期性を用いて実線と破線を区別するものが存在するが、本実施例においてはどのような手法であっても構わない。ステップ301から304までの処理は、線種判定部201の処理に相当する。次にステップ305で、各白線候補と自車との距離を算出する。これは白線距離算出部202の処理に相当する。ステップ305の処理については、図５の白線検知フローのステップ507で求める白線候補位置を用いる。自車から白線候補までの距離は、白線候補位置から車幅／２を減算した値となる。
【００１９】
ステップ301〜305は、カメラごとの処理となる。以降は、各カメラの結果全てを用いた処理となる。ステップ306で、信頼性の高い白線候補を選択する。これは、信頼度判定部203の処理に相当する。次にステップ307で、選択された白線候補の線種を確率的に処理する。確率的な処理としては例えばベイズ統計の理論を適用する等が好適であり、認識対象とする全線種についての確率を求める。これは線種確率算出部204の処理に相当する。最後にステップ308で、求めた確率に基づいて線種を最終的に決定する。ここでは、確率が最大となる線種を選択する等でよい。これは線種決定部205の処理に相当する。
【００２０】
図４は、前記線種判定部201において、特徴点抽出の処理を示すフローチャートである。ここではフロントカメラとリアカメラを想定して説明する。
【００２１】
まず、ステップ401では、入力された画像からエッジを抽出する処理が行われる。エッジ抽出の手法としては、例えばソーベルフィルタ等の微分フィルタを用いてエッジ画像を作成する手法が好適である。あるいは、輝度に応じて画像全体を路面、白線、それ以外に分類し、各分類の境界をエッジとみなして抽出してもよい。次に、抽出した各エッジについてエッジ強度を調べ、強度の極大、極小となるエッジを探索する（ステップ402）。
【００２２】
これはまず、各Y座標において、左から右へ（X座標の小さい方から大きい方へ）エッジを探索し、エッジ強度が正になるエッジ（輝度低から輝度高になる境界）を探す。更に右へ探索し、エッジ強度が負になるエッジ（輝度高から輝度低になる境界）を探す。これらのX座標の差分が閾値の範囲に入っているか否かを判定し（ステップ403）、閾値以内であれば、それらのうち、自車に近い方のエッジ座標を特徴点とみなし、世界座標に変換して保存する（ステップ404）。これによって、例えばアスファルトの継ぎ目、タールのこぼれた跡等、白い領域が現れずにエッジだけが抽出されるような特徴点について、白線特徴量として誤検知することはなくなる。
【００２３】
全特徴点を抽出したら、ステップ405で、ノイズとなりうる特徴点を除去する処理が行われる。この処理は、処理領域内における特徴量の位置の分布、特徴点セグメントの長さ等を用いることで可能である。これについては後述する。
【００２４】
一般的に、画像座標と世界座標の関係は、カメラの外部パラメータと内部パラメータによって記述が可能であり、世界座標への変換は、これらカメラパラメータを用いることで可能となる。各カメラの外部パラメータと内部パラメータを取得する処理はキャリブレーション処理と呼ばれ、種々の技術が開示されており、これらを用いることができる。このキャリブレーション処理は、自動車の出荷時に１回だけ実施する場合や、走行中に常時リアルタイムに実行される場合など、様々である。本実施例においては、既に保持しているキャリブレーション結果を取得してもよく、また、走行中にその都度実行してもよい。
【００２５】
上記の処理を全エッジ座標について実行することで、白線特徴量を抽出することができる。尚、サイドカメラの場合はX座標、Y座標の扱いを逆にする必要がある。例えば、本フローチャートでX、Yの扱いを逆にするか、画像を90°回転して処理するかのいずれかにすれば、同様の処理が可能である。
【００２６】
図23は、ステップ405の特徴点ノイズ除去の処理を説明するフローチャートである。ここでは、サイドカメラを前提にして述べる。まず、ステップ2300にて、撮像画像の処理領域内の全特徴点座標を歪み無し座標系の座標に変換する。次に、ステップ2301にて、処理領域を一定の高さごとに分割する。次に、分割数のループに入る。
【００２７】
ステップ2302で、当該分割領域において、特徴量のY座標の標準偏差を求める。次にステップ2303で、Y座標の標準偏差の値を評価し、標準偏差が閾値より大きければ、ノイズの可能性が高いとして、ステップ2306にて、当該分割領域内の特徴点すべてを削除する。サイドカメラの場合は、白線がほぼ水平に映るため、Y座標の標準偏差が大きければノイズの可能性が高い。
【００２８】
ステップ2303で標準偏差が閾値以内であれば、ステップ2304にて、分割領域内の特徴点セグメントの長さの最大値（セグメント長最大値）を求める。本実施例では、互いに一定間隔以内の特徴点の集合を作成し、そのX方向の長さをセグメント長とし、その長さの最大値を求める。次にステップ2305でその最大値を評価し、セグメント長最大値が閾値以下の場合は（セグメント長最大値≦閾値）、ノイズの可能性が高いと判断して、ステップ2306にて当該分割領域内の特徴点すべてを削除する。白線が映っていればセグメント長は一定以上になるはずであり、セグメント長が短ければノイズの可能性が高い。
【００２９】
図24は、特徴点ノイズ除去の事例を説明する図である。図２４(a)は歪みのある画像から抽出された特徴点の分布の様子を示す図である。図２４(b)は、ステップ2300の処理で図２４(a)の特徴点座標を歪み無し座標系に変換した結果を示す図である。図２４(c)は、ステップ2301の処理で一定の高さごとに処理領域を分割した結果を示す図である。
【００３０】
本実施例では、サイドカメラで撮像した画像を領域2401、2402の２つに分割しているが、分割数は任意に決めてよい。領域2401は、特徴点のY方向の位置がばらばらになって分散して配置されているのに対し、領域2402では、特徴点のY方向の位置がほぼ一定の範囲に収まって並んでいる。このデータに対して、ステップ2302以降の処理を適用すると、図２４(d)に示すように、領域2401についてはノイズの可能性が高いとして特徴点がすべて削除され、領域2402については特徴点がそのまま残っている。このように、特徴点の分布状況に基づいてノイズを除去することが可能である。
【００３１】
図５は、前記線種判定部201において、特徴点抽出後の白線候補抽出の処理を示すフローチャートである。まずステップ501で、共通座標に変換された特徴点を共通座標のX軸へ投影する。次にステップ502で、投影された特徴量の累積値をX座標ごとに集計する。特徴量とは、画素値、あるいは輝度値と置き換えることができる値であり、当該X軸上をスキャンしてその値を累積していく。ステップ503では、その累積値が閾値以上かつ極大となるX座標を抽出する。
【００３２】
ここまでの処理を概念的に表したのが図６である。図６は、白線候補抽出処理の概念図であり、集計の概念を示すものである。変換結果601上の各特徴点をX座標に投影して各X座標における特徴量の累積値をヒストグラムとして表し、値が極大となるX座標を検出する。それらのうち、累積値が閾値thを超えるX座標については、白線が存在する可能性があるとし、累積値が閾値thを超えないX座標については、白線が存在しないとする。つまり、先におおまかに直線候補をみつけ、次に、それぞれの極大X座標中で、特徴点の信頼性を判断する。
【００３３】
次に、上記で検出された極大X座標のループに入る。ステップ504では、当該X座標における特徴点数をカウントする。ステップ505では、カウントされた特徴点数を評価し、閾値以上であればステップ506にて、当該X座標を保存する。
【００３４】
極大X座標のループが終わったら、ステップ506にて保存されたX座標のうち、スコア最大となるX座標を求め、当該X座標を白線候補位置として確定する（ステップ507）。
【００３５】
また、図５に示した以外では、斜方投影等の手法を用いてもよい。これは、座標軸の角度を一定の幅で変えながら特徴点を各座標軸に投影し、エッジ強度の累積値を集計するものである。そして、エッジ強度が最大となる角度と位置を求めることで、白線候補を検知することが可能となる。
【００３６】
図７は、ステップ304の線種判定処理のフローチャートである。この処理は、区画線が破線の場合は白線に間隔があり、区画線が実線の場合は連続的に引かれていることを利用する。まず、ステップ701で、特徴点座標をY座標でソートする。次にステップ702、703で変数を初期化する。
【００３７】
次に、Y座標ループに入り、ステップ704で、特徴点座標を１つ読み込み、前の特徴点とのY座標の差分を計算する。差分と最大差分値を比較し（ステップ705）、差分が最大差分値以上であればその差分を最大差分値とする更新を行う（ステップ706）。そして、次の特徴点座標を読み込み（ステップ707）、これらの処理を繰り返す。
【００３８】
すべての特徴点について処理が終了したらステップ709にて最大差分値と閾値を比較し、最大差分値が閾値以上であれば破線と判定し（ステップ710）、最大差分値が閾値よりも小さい場合には実線とする（ステップ711）。
【００３９】
また、図７に示した以外の線種判定の手法としては、フレームごとの白線有無の周期性を用いる手法も好適である。
【００４０】
図８は、ステップ306における信頼性の高い白線候補を選択する処理のフローチャートである。まずステップ801で、各カメラから抽出された白線候補同士の距離をスコア化する。次に、そのスコアを用いて、各白線候補の信頼度を判定し、信頼度が閾値以上の白線候補を残す（ステップ802）。ステップ801、802の処理について、図を用いて更に説明する。
【００４１】
図９は、図８のステップ801におけるスコア化の処理のフローチャートである。
まずステップ901で、自分以外の白線候補を選択する。つまり、自分と、選択した白線候補との関係をスコア化するということである。換言すると、複数の白線候補の中から基準として選択した白線候補(自分)と、それ以外の白線候補(自分以外の白線候補)との関係をスコア化する。この両者（自分と自分以外の白線候補）が、自車からみて同じ側（右側か左側）にあるかを判定する（ステップ902）。同じ側であれば、ステップ903にしたがってスコアを計算する。つまり、自分（第一の区画線候補）と自分以外の白線候補（第二の区画線候補）との間の距離を30cm（第1の閾値）から減じた値をローカルスコアとする。これは同じ側の白線候補の場合、距離差が30cm以内であれば同一白線であるとみなすということである。そして、スコアは、距離差が30cm以内であれば正になるように設定する。
【００４２】
一方、互いに反対側の白線候補の場合、すなわち、自分と、自分以外の白線候補とが、自車の右側と左側に離れている場合には、ステップ904にしたがってスコアを計算する。互いに反対側であれば、それらの白線候補間距離は車線幅相当のはずである。したがって、距離誤差は白線候補間距離と車線幅との差分である。そしてスコアは、60cmから距離誤差を減算したものである。つまり、自分（第一の区画線候補）と自分以外の白線候補（第二の区画線候補）との間の距離と車線幅との差分を、60cm（第2の閾値）から減じた値をローカルスコアとする。同じ側にある場合には距離差が30cm以内であれば同じ白線とみなすため、それらが互いに反対側にあれば、距離差がその２倍の60cm以内であれば位置関係として妥当である。そして、距離差が60cm以内の場合に正になるよう、スコアを設定する。スコアを計算した後、ステップ905にてスコアをバッファリングする。これを自分以外の白線候補数だけループし、白線候補数だけループして全白線候補について実行する。
【００４３】
但し、図８で使用した30cmあるいは60cmという値は、本実施例の説明のための値であり、実施する際には適切に調整する必要がある。
【００４４】
ステップ801のスコア化の処理につき、図10の位置関係を想定して述べる。図１０は、白線候補の出方の事例を説明する図であり、白線候補の位置関係例を示している。図10の（１）〜（６）はそれぞれ、フロント左、左サイド、リア左、フロント右、右サイド、リア右に位置する白線候補である。この白線候補の位置関係に対し、図８のステップ803、804に示したように２本の白線の相対的な距離誤差を定義し、すべての白線の組合せについてスコアを算出する。図９において、座標系は自車中心を原点とする世界座標系である。尚、単位はcmとし、（１）〜（６）の白線候補におけるX座標はそれぞれ、-170、-240、-168、180、280、181とする。
【００４５】
例えば、（１）と（２）の関係をスコア化する場合を考える。距離誤差は|-170-(-240)|=70となるため、スコアは30-70=-40となる。また、（１）と（４）の関係をスコア化すると、距離誤差は||(-170-180)|-350|=0となり、スコアは60-0=60となる。これらの計算を（１）〜（６）の全てのセグメントの組合せについて実行すると、図１１のデータ1101のようなデータが生成される。図１１は、スコア化の事例を説明する図である。
【００４６】
ここでは、車線幅を350cmと仮定して説明したが、実際は道路によって車線幅が異なる。異なる車線幅に対応するためには、例えばカーナビゲーションシステムから走行中の道路種別を得て、その種別に見合った車線幅を設定することが好適である。あるいは、走行中の道路の車線幅をカーナビゲーションシステムから得ても良い。
【００４７】
図１２は、道路種別とそれに対応する道路幅員の関係を示す道路別区画線情報の例を示す表である。道路別区画線情報1201は、カーナビゲーションシステムが用いる地図データから得られる情報であり、例えばテキストデータあるいはデータベースとして記憶装置103に格納されるデータである。尚、道路別区画線情報1201に示した道路種別や道路幅員、破線間隔は一例であり、これらに限定されるものではない。このようなデータを参照することで、車線幅を得ることが可能である。
【００４８】
次に、ステップ802の信頼度の判定処理フローの内容について図１３を用いて説明する。
まず、全ての白線候補に対して、スコアの合計を計算する（ステップ1301）。次に、ステップ1302では、スコア合計の最小値が0以下か否かを判定する。また、評価対象の白線候補が残っているか否かを判定する。もし両者がYesであれば（スコア合計の最小値が０以下でかつ評価対象の白線候補が残っている場合）、ステップ1303に進み、スコア合計が最小となる白線候補を除外する。そして、残った白線候補を対象にスコア合計を再計算する（ステップ1304）。スコア合計を再計算する際は、除外された白線候補のスコアを除いて実行する。その後、ステップ1302に戻って同じ判定を実行する。そして、判定条件のいずれかがNoであれば、すなわち、スコア合計の最小値が0０よりも大きく、あるいは、評価対象の白線候補が残っていない場合には、処理を終了し（Ｅｎｄ）、Yesであれば前述したステップ1303以降の処理を繰り返す。
【００４９】
図１４は、信頼度判定の事例を説明する図である。ステップ802の信頼度の判定を図11のデータ1101に対して適用する様子につき、図14を用いて説明する。ステップ1301の処理の結果は、データ1401のようになる。次にステップ1302で、スコア合計値の最小値を判定する。このとき、白線候補（５）のスコア-297が最小かつ負の値である。したがって、ステップ1303に進んで白線候補（５）を除外し、ステップ1304でスコア合計を再計算する。その結果がデータ1402である。
【００５０】
次に、ステップ1302に戻ってスコア最小値を判定する。このとき、白線候補（２）のスコア-103が最小かつ負の値である。したがってステップ1303に進んで白線候補（２）を除外し、ステップ1304でスコア合計を再計算する。その結果がデータ1403である。
【００５１】
そしてステップ1302に戻ってスコア最小値を判定すると、残白線候補すべてにおいてスコアが正のため、ここで処理は終了である。この結果、誤検知と考えられる白線候補は（２）と（５）となり、残りの白線候補（１）、（３）、（４）、（６）を用いて線種判定が実施されることになる。
【００５２】
図15は、ステップ802の信頼度の判定の一例である。これは、同じ位置の白線が連続して検知できなかった場合に、当該位置の白線候補は不採用とするものであり、白線が検知される位置の数（本実施例では最大で６）だけ実施する。
【００５３】
ステップ1501は、白線候補を検知したか否かを判定する処理である。これは、単に画像上に白線を検知したか否かだけではなく、図１３の処理フローにて誤検知と判断されたか否かの判定も含む。図１０の例の場合、白線候補（２）と（５）については検知していないという判定になり、それ以外の白線候補は検知したという判定になる。
【００５４】
検知していない場合は、ステップ1502にて不検知回数をインクリメントする。更に、ステップ1504で不検知回数を評価し、閾値以上であればステップ1505で、当該位置の白線候補について不採用フラグを立てる。検知している場合は、ステップ1503にて不検知回数を0にリセットし、ステップ1506で当該位置の不採用フラグをリセットする。
【００５５】
この処理を実行することで、白線候補の不検知や誤認識があっても、そのデータによって線種を誤判定することを防止することが可能になる。
【００５６】
図16も、ステップ802の信頼度の判定の一例である。これは、最終的な線種と各白線候補の線種の一致率によって信頼度を判定するものである。まずステップ1601にて、検知された各白線候補の線種を得る。次に、ステップ1602において、線種の最終結果と比較する。一致していればステップ1604にて一致数をインクリメントし、一致していなければステップ1603にて不一致数をインクリメントする。
【００５７】
次に、ステップ1605で一致率を求める。これは、一致数を、これまでに処理してきたフレームの数で除したものである（一致数／処理フレーム数）。但し、一致率を計算する対象データは、システム軌道から現フレームまでの全データでなくてもよく、例えば最新の100フレームの結果を対象にしたり、車線変更以降のデータを対象としてもよい。次に、ステップ1606にて一致率を評価し、閾値以上であればステップ1608にて不採用フラグを立てる。一致率が閾値未満であればステップ1607にて当該位置の不採用フラグをリセットする。
【００５８】
この処理を実行することで、線種判定結果が信頼できない白線候補を除外し、当該のデータに影響されることなく線種を判定することが可能になる。
【００５９】
図17は、線種確率算出部204のソフトウェア構成図である。ここでは、確率計算の方法として、ベイズ理論を用いることを前提として説明する。但し、ベイズ理論は実施の一形態に過ぎず、他の方法を用いてもよい。
【００６０】
認識結果情報1702は、線種、不採用フラグ、一致率等である。確率計算部1701では、不採用フラグが立っていたり、一致率が閾値未満であったりする白線候補の情報は使わないようにし、それ以外の情報を用いて各線種の存在確率を計算する。
【００６１】
尤度情報1703は、ある線種が存在している場合において、各線種の存在を判定する確率を示す値であり、事前に計測しておいた値を格納しておくことが可能である。事前確率1704は、初期値として適当な値を入れておくことで問題無い。例えば、認識対象の線種が実線と破線であれば、各線種の事前確率の初期値を0.5としておいてよいし、認識対象の線種が３種類あればそれぞれの初期値を0.33とすることでもよい。
【００６２】
確率計算部1701は、認識結果情報1702、尤度情報1703、事前確率1704を用いて、認識対象とする各線種についての事後確率1705を出力する。具体的には次の式を用いて各線種の存在確率を算出する。下記の式では、認識対象の線種を実線と破線として説明するが、他の線種が追加される場合でも同様の式で各線種の存在確率を算出することが可能である。この事後確率1705が当該フレームにおいて求めるべき、各線種の存在確率である。そして、事後確率1705は、次のフレームを処理する際には事前確率1704となる。
【００６３】
【数１】
2019067159.tif 000003
【００６４】
図18は、各線種の存在確率を算出するために必要となるデータの内部構造である。白線候補数1801は、白線候補の数であり、本実施例では6である。線種判定結果1802は、当該フレームにおける最終の線種判定結果である。すなわち、事後確率1705を用いて最終的に判定された結果である。尤度情報1703は、認識対象となる各線種の尤度であり、上述したとおりである。図18は、認識対象の線種が実線と破線の場合の例を示す。尤度情報1703-1は、実線区間において線種を実線と判定する確率であり、尤度情報1703-2は、実線区間において線種を破線と判定する確率であり、尤度情報1703-3は、破線区間において線種を実線と判定する確率であり、尤度情報1703-4は、破線区間において線種を破線と判定する確率である。
【００６５】
次に、白線候補情報1804について説明する。白線候補情報1804は、白線候補数1801に示される数だけフィールドが存在する。
【００６６】
白線位置1805は、例えば「フロント右」、「リア左」等の位置を示すものである。事前確率1704は先に述べたとおりである。尚、事前確率1704は、認識対象の線種それぞれについて保持しており、認識対象が実線と破線であれば、事前確率1704-1、1704-2のように保持する。尚、認識対象の線種が増えた場合にはその線種についても保持する必要がある。
【００６７】
認識結果情報1702は、各白線候補についての認識結果であり、検知された白線候補の数だけ存在する。距離1808は、車両からの距離を示すものであり、単位はミリメートル、センチメートルまたはメートルである。尚、当該位置において不検知だった場合には予め定義された定数を格納する。
【００６８】
線種1809は、当該白線候補の線種であり、本実施例では実線または破線となるが、不検知の場合は予め定義された定数が格納される。
【００６９】
不採用フラグ1810については先に述べた通りであり、最終的に線種を判定する際に当該位置の白線候補情報1804を使うか否かを示すフラグである。
【００７０】
一致数1811についても先に述べた通りであり、ステップ1604にてカウントされる値である。不一致数1812も同様に、ステップ1603にてカウントされる値である。一致率1813も同様に、ステップ1605で計算される値である。
【００７１】
図19は、線種確率算出部204の処理フローである。まずステップ1901で、白線候補の不採用フラグの値を得る。これは図18の不採用フラグ1810の値である。ステップ1902で不採用フラグの値を評価し、不採用フラグが立っていれば次の白線候補の処理に移る。不採用フラグが立っていなければ、ステップ1903にて線種判定結果を得て、ステップ1904にて、当該線種判定結果に関連する尤度の値を得る。例えば線種判定結果が実線の場合、得る必要がある尤度の値は、尤度情報1703-1、1703-3である。
【００７２】
これらの処理をすべての白線候補について実行し、ステップ1905にて、先に示したベイズ理論の式に当てはめる。こうすることで、認識対象の各線種について存在確率を計算することが可能である。
【００７３】
尚、図18、図19では不検知の場合について図示していないが、不検知の場合についても同様に、ベイズ理論の式に当てはめて白線が存在しない確率を求めることが可能である。尤度情報に不検知の場合の尤度の値を格納しておき、ステップ1905で不検知の場合の尤度情報をベイズ理論の式に当てはめればよい。
【００７４】
図20は、線種決定部205の処理フローである。まずステップ2001で、変数を初期化する。事後確率の最大値を0、最終的な線種を「不検知」とする。以後、認識対象線種数のループに入る。
【００７５】
ステップ2002で当該線種の事後確率を得る。これは、ステップ1905で計算された事後確率である。次に、ステップ2003でこの事後確率を評価し、事後確率が最大値以上かつ閾値以上であるか否かを判定する。ここでの閾値は、当該線種を最終的な線種として判断ための値を予め任意に決めておくものであるが、この閾値との比較は必須ではない。もし結果がNoであれば当該の線種ではないとし、ステップ2002に戻る。Yesであれば、最大値を当該線種の事後確率に置き換え、最終線種も当該の線種に置きかえる。
【００７６】
最終的に決定された線種は、認識対象線種数のループが終わったところで、最終線種を参照すればよい。尚、最大値が0のままの場合は不検知として処理すればよい。
【００７７】
以上のようにして、複数カメラを用いて白線の線種を判定することが可能であるが、本発明はカメラ以外のセンサを用いることでも実施が可能である。図21は、その構成の一例である。カメラ101の代わりにステレオカメラ2101と、全周囲カメラ2102と、LiDAR （レーザレンジファインダ）2103の少なくともいずれか一つを設置することが可能である。ステレオカメラ2101には画像処理装置2104、全周囲カメラ2102には画像処理装置2105が接続されている。尚、これらの画像処理装置は同一であってもよい。LiDAR2103のデータはCPU104で処理することが可能である。
【００７８】
この構成でも同様に、各センサが白線候補を検知し、それを確率的に処理することで線種を判定することが可能である。そのソフトウェア構成を図22に示す。線種判定部2201は、ステレオカメラ2101の画像から白線候補を検知し、その線種を判定する。白線位置算出部2204は、自車から白線までの距離を算出する。
【００７９】
LiDAR 2102、全周囲カメラ2103についても同様に、それぞれ線種判定部2202、2203と、白線位置算出部2204、2205が同様の処理を実行する。それらの結果は信頼度判定部203と、線種確率算出部204と、線種決定部205にて処理され、最終的な線種が決定される。これらの処理については前述の通りである。
【００８０】
以上、本発明の実施形態について詳述したが、本発明は、前記の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の精神を逸脱しない範囲で、種々の設
計変更を行うことができるものである。例えば、前記した実施の形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。さらに、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【符号の説明】
【００８１】
１０１：カメラ（センサ）
２０１：線種判定部
２０２：白線距離算出部（区画線距離算出部）
２０３：信頼度判定部
２０４：線種確率算出部
２０５：線種決定部
【図１】
2019067159.tif 000004
【図２】
2019067159.tif 000005
【図３】
2019067159.tif 000006
【図４】
2019067159.tif 000007
【図５】
2019067159.tif 000008
【図６】
2019067159.tif 000009
【図７】
2019067159.tif 000010
【図８】
2019067159.tif 000011
【図９】
2019067159.tif 000012
【図１０】
2019067159.tif 000013
【図１１】
2019067159.tif 000014
【図１２】
2019067159.tif 000015
【図１３】
2019067159.tif 000016
【図１４】
2019067159.tif 000017
【図１５】
2019067159.tif 000018
【図１６】
2019067159.tif 000019
【図１７】
2019067159.tif 000020
【図１８】
2019067159.tif 000021
【図１９】
2019067159.tif 000022
【図２０】
2019067159.tif 000023
【図２１】
2019067159.tif 000024
【図２２】
2019067159.tif 000025
【図２３】
2019067159.tif 000026
【図２４】
2019067159.tif 000027