(58)【調査した分野】(Int.Cl.,DB名)
前記分離度ヒストグラムは、前記走査線上に設定された前記白線検出フィルタの白線検出領域の中央の位置に前記分離度を投票することによって作成されることを特徴とする請求項1に記載の白線検出装置。
前記局所領域輝度検出部は、前記白線検出フィルタの白線検出領域の幅を、道路の規格によって定められた白線幅の最小値と最大値との間で変更することを特徴とする請求項3に記載の白線検出装置。
前記局所領域輝度検出部は、前記白線検出フィルタの白線検出領域の幅を、車両の挙動によって変化する範囲で変更することを特徴とする請求項3または4に記載の白線検出装置。
前記分離度評価部は、前記白線検出領域及び前記路面検出領域の輝度分布として輝度値の平均と分散に基づいて前記分離度を算出することを特徴とする請求項1〜5のいずれか1項に記載の白線検出装置。
前記局所領域輝度検出部は、前記路面画像を複数の領域に分割して各領域にそれぞれ走査線を設定し、設定された前記走査線に沿って前記白線検出フィルタを走査して前記局所領域の輝度を検出することを特徴とする請求項1〜7のいずれか1項に記載の白線検出装置。
車両に搭載され、路面を撮像する撮像部によって撮像された路面画像から、白線部分を検出するための白線検出領域と路面部分を検出するための路面検出領域とを有する白線検出フィルタを備えた車載の白線検出フィルタ装置であって、
路面を撮像した路面画像上の局所領域に前記白線検出フィルタを設定して輝度を検出する局所領域輝度検出部と、
前記白線検出領域と前記路面検出領域との間の輝度の差と前記白線検出領域及び前記路面検出領域の輝度分布とに基づいて算出される分離度を前記路面画像の各画素について算出する分離度評価部とを有し、
前記局所領域輝度検出部は、前記白線検出フィルタの白線検出領域の幅を、道路の規格によって定められた白線幅の最小値と最大値との間、もしくは、車両の挙動によって変化する範囲の少なくとも一方で、順次変更しながら前記局所領域の輝度を検出することを特徴とする白線検出フィルタ装置。
【発明を実施するための形態】
【0011】
以下、本発明を適用した第1〜第4実施形態について図面を参照して説明する。
【0012】
[第1実施形態]
[白線検出装置の構成]
図1は、本実施形態に係る白線検出装置の構成を示すブロック図である。
図1に示すように、本実施形態に係る白線検出装置1は、撮像部2と、視点変換部3と、白線検出部4と、白線認識部5とを備えている。撮像部2は白線の引かれた路面を撮像して路面画像を出力し、視点変換部3は撮像部2で撮像された路面画像を鳥瞰図に変換する。また、白線検出部4は視点変換部3で変換された路面画像の鳥瞰図に対して白線検出処理を実行して2値化画像を出力し、白線認識部5は白線検出部4から出力された2値化画像に基づいて白線の位置を認識する。
【0013】
また、
図2は上述した白線検出部4の構成を示すブロック図である。
図2に示すように、白線検出部4は、インテグラルイメージ作成部21と、局所領域輝度検出部22と、白線領域輝度解析部23と、路面領域輝度解析部24と、分離度評価部25と、閾値処理部26とを備えている。インテグラルイメージ作成部21は路面画像の鳥瞰図から輝度値及び輝度値の二乗のインテグラルイメージを作成し、局所領域輝度検出部22は路面画像上の局所領域に白線検出フィルタを設定して輝度を検出する。また、白線領域輝度解析部23は局所領域における輝度の検出結果を用いて白線検出領域における輝度分布の統計値を算出し、路面領域輝度解析部24は局所領域における輝度の検出結果を用いて路面検出領域における輝度分布の統計値を算出する。さらに、分離度評価部25は白線検出領域及び路面検出領域における輝度分布の統計値を用いて路面画像の各画素について分離度を算出し、閾値処理部26は分離度を所定の閾値で処理することによって白線部分を明示した2値化画像を出力する。
【0014】
ここで、本実施形態では、
図1に示す白線検出装置1を車両に搭載した場合を例示して説明しており、白線検出装置1が搭載された車両の一例を
図3に示す。
図3は、本実施形態に係る白線検出装置1を、運転支援システムのレーンキープシステムで実行される車線検出ロジックとして使用した場合を示している。
図3に示すシステムは、自車両30の後方に撮像部2を構成する車載カメラ31が取り付けられ、車載カメラ31によって自車両が通過した領域の車線を検出し、その逸脱度から運転支援を行うものである。車載カメラ31で撮像された路面画像は、白線検出装置1が実装されている計算機32に取り込まれ、路面画像から白線の位置が検出される。検出された白線の位置はレーンキープシステム33に転送され、レーンキープシステム33が白線の位置を利用して運転支援を実行する。ただし、本実施形態では検出対象を白線としているが、白線でなくてもその他の色の線であってもよい。また、道路のセンターラインのような通行区分を示す車線だけではなく駐車場の区画を示す白線を検出対象としてもよく、路面上に引かれた線であれば検出することは可能である。
【0015】
次に、
図1に示す白線検出装置1を構成する各部について説明する。
【0016】
まず、撮像部2は、白線の引かれた路面を撮像して路面画像を出力するための撮像手段であり、例えば車両後方に取り付けられた車載カメラで構成することができ、高さh、水平から下向きに角度θの方向に向けて取り付けられている。
【0017】
視点変換部3は、撮像部2で撮像された路面画像を視点変換によって鳥瞰図に変換している。鳥瞰図は、上空から路面を鉛直下向きに見下ろした仮想カメラの視点で撮像した画像である。鳥瞰図を作成するために用いる視点変換は公知の技術であり、例えば特開2008−219063号公報に開示されている技術を利用することができる。尚、本実施形態では鳥瞰図を予め作成してから白線を検出する場合を一例として説明するが、鳥瞰図を作成しなくても撮像部2で撮像された路面画像上の座標系から鳥瞰図上の座標系への座標変換を逐一実施するようにしてもよい。この場合には視点変換部3を設けなくてもよい。
【0018】
白線認識部5は、白線検出部4から出力される2値化画像に既知のHough変換などを用いて白線の位置を認識する。
【0019】
次に、
図2に示す白線検出部4を構成する各部について説明する。
【0020】
まず、インテグラルイメージ作成部21は、非特許文献(Violar,Jones:Robust Real-time Object Detection, IJCV2001)で報告されている手法を用いて鳥瞰図の輝度値のインテグラルイメージと、鳥瞰図の輝度値の二乗のインテグラルイメージとを作成する。これら二つのインテグラルイメージは白線領域輝度解析部23及び路面領域輝度解析部24で高速に輝度分布を解析するために使用される。
【0021】
局所領域輝度検出部22は、路面画像上の局所領域に白線検出フィルタを設定して輝度を検出するとともに、白線検出フィルタを路面画像全体に走査することによって路面画像上にある全ての局所領域の輝度を検出する。
【0022】
白線領域輝度解析部23は、局所領域における輝度の検出結果を用いて白線検出フィルタの白線検出領域における輝度分布の統計値として輝度値の平均μ1と分散σ1を算出する。
【0023】
路面領域輝度解析部24は、上述した白線領域輝度解析部23と同様の方法で白線検出フィルタの路面検出領域における輝度分布の統計値として輝度値の平均μ2と分散σ2を算出する。
【0024】
分離度評価部25は、白線検出領域の輝度分布の統計値である平均μ1、分散σ1と、路面検出領域の輝度分布の統計値である平均μ2、分散σ2とを用いて、分離度sを算出する。分離度sは、白線検出領域と路面検出領域との間の輝度の差と白線検出領域及び路面検出領域の輝度分布の和との比に基づいて算出される値であり、この分離度sを路面画像の各画素について算出する。
【0025】
閾値処理部26は、分離度sを所定の閾値で処理することによって路面画像の各画素について白線部分であるか否かを判定し、白線部分であると判定された画素を明示することによって2値化画像を生成して出力する。尚、閾値については、予め実験等によって適切な値を設定しておくようにすればよい。
【0026】
[白線検出処理]
以下、
図4に示すフローチャートを参照して、本実施形態に係る白線検出装置による白線検出処理の手順を説明する。
【0027】
図4に示すように、本実施形態に係る白線検出処理では、まずステップS101において撮像部2が路面を撮像して路面画像を出力すると、ステップS102において視点変換部3が路面画像を視点変換することによって路面画像の鳥瞰図を生成する。そして、ステップS103ではインテグラルイメージ作成部21が鳥瞰図から輝度値のインテグラルイメージと輝度値の二乗のインテグラルイメージを作成する。
【0028】
次に、ステップS104において、局所領域輝度検出部22によって路面画像上の局所領域に白線検出フィルタを設定して輝度を検出する。
【0029】
ここで、白線検出フィルタの構成を
図5に基づいて説明する。
図5に示すように、白線検出フィルタ40は、白線部分を検出するための白線検出領域41と路面部分を検出するための路面検出領域42とを有している。白線検出領域41は実際の白線の幅に対応した横幅を有しており、路面検出領域42は白線検出領域41と同様の横幅となっているが相違していてもよい。白線検出フィルタ40の形状は鳥瞰図で白線を局所的に真上から見た場合に、局所的な白線が白と黒の四角形の組み合わせで近似できることに基づいて決められている。また、四角形のサイズ及び縦横比などはカメラの解像度を考慮して白線のサイズに対応させて実験的に定めればよい。さらに、
図5の白線検出フィルタ40では、白線検出領域41の両脇に路面検出領域42を形成しているが、路面検出領域42はいずれか片側だけでもよい。
【0030】
そして、局所領域輝度検出部22は、上述の白線検出フィルタ40を路面画像上にある各局所領域に順番に設定していき、路面画像全体を走査することによって全ての局所領域における輝度を検出する。例えば、
図6に示すように、路面画像上の(x、y)の位置にある局所領域に白線検出フィルタを設定して輝度を検出する。そして、路面画像の横方向のサイズがxx、縦方向のサイズがyyの場合には0≦x≦xx、0≦y≦yyの範囲で白線検出フィルタを1画素ずつ移動させて走査していき、各座標(x、y)における輝度を検出する。
【0031】
次に、ステップS105において、白線領域輝度解析部23及び路面領域輝度解析部24によって輝度の解析が行われる。
【0032】
白線領域輝度解析部23は、局所領域における輝度の検出結果を用いて白線検出領域における輝度分布の統計値として輝度値の平均μ1と分散σ1を算出する。具体的には座標(x、y)の局所領域において、白線検出フィルタ40の白線検出領域41における輝度分布のヒストグラムを作成し、このヒストグラムから白線検出領域41における輝度値の平均μ1と分散σ1を統計値として算出する。ここでは基本的な手法として、ヒストグラムから平均と分散を求める方法を示したが、インテグラルイメージ作成部21で作成したインテグラルイメージを用いることによって平均と分散を高速に計算することが可能となる。具体的に説明すると、まず白線検出領域41の画素数がNの場合に、輝度値のインテグラルイメージから白線検出領域41における画素の輝度値の合計値αを求めることができる。そして、この合計値αを用いて平均μ1を算出すると、μ1=α/Nで求めることができる。
【0033】
また、インテグラルイメージ作成部21で作成した輝度値の二乗のインテグラルイメージを用いると、白線検出領域41における輝度値の二乗の合計値βを求めることができる。そして、ζ=β/N、η=μ1×μ1とすれば、分散σ1はσ1=ζ−ηで求めることができる。この分散σ1の算出方法は、統計学の分野で周知の式である分散V[x]=E[x^2]−E[x]^2の式に基づいている。ただし、Eは期待値である。このようにして白線領域輝度解析部23は輝度値の平均μ1と分散σ1を算出する。
【0034】
同様に、路面領域輝度解析部24でも、路面検出領域42における輝度分布の統計値として輝度値の平均μ2と分散σ2を算出する。ただし、路面領域輝度解析部24では
図5に示す白線検出フィルタ40にある2つの路面検出領域42を一つの領域として輝度分布のヒストグラムを作成し、そのヒストグラムから路面検出領域42における輝度値の平均μ2と分散σ2を算出する。また、上述したようにインテグラルイメージを用いて高速に平均μ2と分散σ2を算出してもよい。
【0035】
こうして白線検出領域及び路面検出領域における平均と分散が算出されると、次にステップS106において分離度評価部25が分離度を算出する。分離度評価部25は、白線検出領域の平均μ1、分散σ1と、路面検出領域の平均μ2、分散σ2とを用いて、分離度sを算出する。分離度sは、白線検出領域と路面検出領域との間の輝度の差と白線検出領域及び路面検出領域の輝度分布の和との比に基づいて算出される値であり、次式によって算出することができる。
【0036】
分離度s=クラス間分散/全分散=σ
B2/σ
T2 (1)
ここで、クラス間分散σ
B2及び全分散σ
T2は以下の式で表すことができる。
【0037】
σ
B2={N
1×(μ1−μ
T)
2+N
2×(μ2−μ
T)
2}/(N
1+N
2) (2)
σ
T2=σ
B2+σ
W2 (3)
σ
W2={N
1×σ1
2+N
2×σ2
2}/(N
1+N
2) (4)
ただし、N
1は白線検出領域の画素数、N
2は路面検出領域の画素数、μ
Tは白線検出領域と路面検出領域の全画素の平均である。
【0038】
分離度評価部25は、式(1)〜(4)に基づいて分離度sを路面画像の各画素について算出する。
【0039】
ここで、式(2)に示すようにクラス間分散σ
B2は白線検出領域41と路面検出領域42との間の輝度の差に応じて変化する値であり、各領域の平均μ1、μ2が全画素の平均μ
Tから離れているほど大きな値となる。一方、全分散σ
T2は白線検出領域41及び路面検出領域42の輝度分布の和に応じて変化する値であり、各領域の分散σ1、σ2が小さくなるほど、すなわち各領域の輝度分布が均一になるほど小さな値となる。
【0040】
したがって、分離度sは
図7に示すように白線検出領域41の平均μ1と路面検出領域42の平均μ2との間が離れており、尚且つ両者の分散σ1、σ2が小さくなるほど、すなわち各領域の輝度分布が均一であるほど評価値が大きな値となる。
【0041】
これにより、白線検出フィルタ40にマッチした形状と輝度パターンとなる局所領域(白線部分)では分離度sは大きな値を示し、マッチしない局所領域(路面部分)では小さな値を示すことになる。したがって、全ての画素を走査して全ての画素について分離度sを算出し、その値を後段の閾値処理部26で閾値処理することによって、白線部分を明示した二値化画像を出力することができる。
【0042】
また、分離度sは必ず0〜1の値となるので、条件に応じてさまざまな閾値を設定しなくても1つの閾値を設定しておけば、白線部分を検出することができる。
【0043】
尚、分離度sは、他の方法で算出してもよい。例えば、白線検出領域の輝度分布と路面検出領域の輝度分布のうち小さいほうを2倍し、この値に各領域の輝度分布の差を足したものを算出する。そして、この値で白線検出領域と路面検出領域との間の輝度の差を割ることによって分離度を算出してもよい。
【0044】
具体的な式としては、例えば白線検出領域の輝度分布が路面検出領域の輝度分布より小さい場合には、
分離度s=|μ1−μ2|/{2・σ1+|σ1−σ2|} (5)
によって算出することができる。ただし、式(5)では輝度分布を表す統計値として分散を用いている。
【0045】
上述したように、本実施形態では、白線検出フィルタを局所領域に設定して局所領域毎に分離度を求めて白線部分を検出する。これにより、従来問題となっていた画像中の日照条件が異なって明るい領域と暗い領域が混在するような場合でも白線の検出精度が低下することを防止できる。
【0046】
さらに、本実施形態では昼間のように日照量が多い時間帯から朝、夕のように日照量が少ない時間帯に変化したとしても、日照条件の変化に影響を受けることなく、白線を検出することができる。
図8に示すように、昼間のように日照量が多い時間帯では白線検出領域と路面検出領域の輝度分布は実線で示すような分布となる。一方、朝、夕のように日照量が少ない時間帯では全体的に暗い画像になるため輝度分布は点線で示すように輝度値が低い方向へ全体的にシフトする。すなわち、平均μ1、μ2の値は低下するが、μ1とμ2の差は変化しないので、クラス間分散σ
B2は変化しない。また、分散σ1、σ2も多少の変化を伴うだけでほとんど変化しないので、全分散σ
T2についても変化しない。
【0047】
したがって、分離度sは日照条件が変化したとしても同様の値が算出されるので、日照条件の変化にロバストに白線を検出することができる。また、分離度sは日照条件が変化しても同様の値となるので、判別のための閾値を日照条件に応じて変化させる必要がなく、常に安定した検出結果を得ることができる。
【0048】
こうしてステップS106において分離度が評価されると、次にステップS107において局所領域輝度検出部22が路面画像の全画素について走査が終了したか否かを判定する。走査が終了していない場合にはステップS104に戻って上述した処理を繰り返し行い、走査が終了している場合にはステップS108に移行する。
【0049】
ステップS108では、閾値処理部26が分離度sを所定の閾値で処理することによって路面画像の各画素について白線部分であるか否かを判定し、白線部分であると判定された画素を明示することによって2値化画像を生成して出力する。
【0050】
そして、ステップS109において、白線認識部5が2値化画像に対して既知のHough変換などを行って白線の位置を認識し、その結果をレーンキープシステム33へ出力すると、本実施形態に係る白線検出装置による白線検出処理は終了する。
【0051】
[第1実施形態の効果]
上述したように、本実施形態に係る白線検出装置によれば、路面画像上の局所領域に対して白線検出領域と路面検出領域とを有する白線検出フィルタを設定して輝度を検出し、この輝度に基づいて算出される分離度を求めて白線を検出する。これにより、局所領域ごとに日照環境が異なり輝度分布が不均一になるような場合でも良好に白線を検出することができる。
【0052】
また、本実施形態に係る白線検出装置によれば、インテグラルイメージに基づいて輝度分布の統計値を算出するので、高速に計算を実行することができ、計算負荷を軽減することができる。
【0053】
さらに、本実施形態に係る白線検出装置によれば、白線検出領域における輝度分布の統計値として輝度値の平均と分散を算出するので、白線検出領域における輝度分布の状態を表した数値を利用して良好に白線を検出することができる。
【0054】
また、本実施形態に係る白線検出装置によれば、路面検出領域における輝度分布の統計値として輝度値の平均と分散を算出するので、路面検出領域における輝度分布の状態を表した数値を利用して良好に白線を検出することができる。
【0055】
さらに、本実施形態に係る白線検出装置によれば、白線検出領域と路面検出領域との間の輝度の差と白線検出領域及び路面検出領域の輝度分布の和とに基づいて分離度を算出する。これにより、局所領域ごとに日照環境が異なり輝度分布が不均一になるような場合でも良好に白線を検出することができる。
【0056】
[第2実施形態]
次に、本発明の第2実施形態に係る白線検出フィルタ装置について説明する。
【0057】
[白線検出フィルタ装置の構成]
図9は、本実施形態に係る白線検出フィルタ装置の構成を示すブロック図である。
図9に示すように、本実施形態に係る白線検出フィルタ装置50は、インテグラルイメージ作成部51と、局所領域輝度検出部52と、白線領域輝度解析部53と、路面領域輝度解析部54と、分離度評価部55とを備えている。
【0058】
インテグラルイメージ作成部51は路面画像の鳥瞰図から輝度値及び輝度値の二乗のインテグラルイメージを作成し、局所領域輝度検出部52は路面画像上の局所領域に白線検出フィルタを設定して輝度を検出する。白線領域輝度解析部53は局所領域における輝度の検出結果を用いて白線検出領域における輝度分布の統計値を算出し、路面領域輝度解析部54は局所領域における輝度の検出結果を用いて路面検出領域における輝度分布の統計値を算出する。分離度評価部55は白線検出領域及び路面検出領域における輝度分布の統計値を用いて路面画像の各画素について分離度を算出する。
【0059】
ただし、本実施形態に係る白線検出フィルタ装置50を構成する各部については、上述した第1実施形態と同一なので、詳細な説明は省略する。また、本実施形態に係る白線検出フィルタ装置50によって実行される白線検出処理についても上述した第1実施形態と同一なので、詳細な説明は省略する。
【0060】
本実施形態に係る白線検出フィルタ装置50は、上述した第1実施形態の白線検出部4の構成要素のうち路面画像から分離度を算出する部分だけを抽出したものである。したがって、本実施形態の白線検出フィルタ装置50をさまざまな装置に搭載すれば、局所領域ごとに日照環境が異なり輝度分布が不均一になるような場合でも良好に白線部分を検出することが可能なフィルタ装置として活用することができる。
【0061】
[第2実施形態の効果]
上述したように、本実施形態に係る白線検出フィルタ装置によれば、第1実施形態と同様に局所領域ごとに日照環境が異なって輝度分布が不均一になるような場合でも良好に白線を検出することができる。また、白線部分を検出するためのフィルタ装置としてさまざまな装置に搭載することができる。
【0062】
[第3実施形態]
次に、本発明の第3実施形態に係る白線検出装置について説明する。
【0063】
[白線検出装置の構成]
本実施形態に係る白線検出装置の構成は、
図1に示す第1実施形態の構成と同一であるが、白線検出部4の構成が相違しており、路面に引かれた白線の中から特に点線を検出できるように構成されている。
【0064】
図10は本実施形態に係る白線検出部の構成を示すブロック図であり、
図10に示すように本実施形態に係る白線検出部60は、
図2に示す第1実施形態の構成に点線候補領域設定部61と点線判定部62を追加したものである。
【0065】
点線候補領域設定部61は、閾値処理部26から出力された2値化画像において白線部分の画素値を積算することによって点線位置の候補となる点線候補領域を設定する。
【0066】
点線判定部62は、点線候補領域内にある白線部分の連結画素数をカウントして点線長を検出し、点線候補領域内で検出された点線長の中で最も検出頻度の大きい点線長に基づいて点線候補領域内にある白線部分が点線である否かを判定する。
【0067】
尚、局所領域輝度検出部22は、第1実施形態では
図5に示す白線検出フィルタを局所領域に設定して輝度を検出していたが、本実施形態では
図11に示す点線検出フィルタを用いて輝度の検出を行っている。
図11に示すように点線検出フィルタ65は、横方向の長さは
図5に示す白線検出フィルタと同様に設定されているが、縦方向の長さは検出対象となる点線の長さに対応して設定されているので、白線検出フィルタよりも短くなっている。
【0068】
[点線検出処理]
以下、
図12に示すフローチャートを参照して、本実施形態に係る点線検出処理の手順を説明する。
図12に示す点線検出処理において、ステップS201からステップS208までの処理は、
図4に示す第1実施形態の白線検出処理のステップS101からステップS108までの処理と同一なので詳細な説明は省略する。ただし、ステップS204の局所領域の輝度検出を行う際には
図11に示す点線検出フィルタが使用されている。
【0069】
ステップS201からステップS208までの処理が実行されて2値化画像が出力されると、ステップ209では点線候補領域設定部61が2値化画像の白線部分の画素値を積算し、画素数が所定値以下であるか否かを判定する。ここで、画素数が所定値以下の場合には白線が検出されていないと判定して処理を終了し、画素数が所定値より大きい場合にはステップS210へ移行する。
【0070】
ステップS210では、点線候補領域設定部61が2値化画像における白線部分の画素値を積算することによって点線位置の候補となる点線候補領域を設定する。ここで、点線候補領域の設定方法を
図13に基づいて説明する。
図13(a)は視点変換部3で得られた鳥瞰図、
図13(b)は鳥瞰図の2値化画像である。
図13(b)に示す2値化画像では分離度が閾値以上の画素に1、閾値未満の画素には0が設定されている。そして、
図13(b)の2値化画像において画像の垂直方向に画素の値を積算したものが
図13(c)の下部に示す曲線であり、白線部分が略鉛直方向に並んでいる位置では積算した値が高くなっている。この積算値に対して
図13(d)に示すように、閾値Thを設定して閾値Thよりも積算値が高くなっている領域を点線候補領域71として設定する。
【0071】
本実施形態の白線検出装置を車載のレーンキープシステムに搭載して使う場合には、車両は点線に対して平行に走行するので、2値化画像中において垂直方向に画素値を積算することによって適切に点線候補領域を設定することができる。尚、本実施形態では積分する方式を採用したが、例えばHough変換などを用いて多くの点線を貫く直線を求め、その領域を点線候補領域としてもよい。
【0072】
次に、ステップS211では、点線判定部62が点線候補領域内にある白線部分が点線であるか否かを判定する。ここで、点線判定部62による点線の判定方法を
図14に基づいて説明する。まず、点線判定部62は、点線判定の前処理として点線候補領域内にある白線部分にラベリングを行う。この処理によって
図14(a)の点線候補領域71内にある白線部分にそれぞれラベルが付与される。次に、ラベル付けされた各白線部分の連結画素数を画像の垂直方向にカウントして点線長を検出する。そして、各白線部分の点線長を
図14(b)に示すように長さに応じて区分することでヒストグラムを生成して点線長の検出頻度を求め、最も検出頻度の大きい点線長を点線の長さと推定する。
【0073】
ここで、点線判定部62は、あらゆる種類の既知の点線の長さを記憶した事前情報を予め保持しており、推定した点線の長さが事前情報と大きく相違している場合には点線ではないと判定し、事前情報と一致した場合には点線であると判定する。このとき点線の長さに応じて、点線の種類が破線であるか、あるいはポッツドッツであるかを判定する。
【0074】
こうして点線であるか否かが判定されると、ステップS212において白線認識部5が点線の位置を認識し、その結果をレーンキープシステム33へ出力すると、本実施形態に係る白線検出装置による点線検出処理は終了する。
【0075】
[第3実施形態の効果]
上述したように、本実施形態に係る白線検出装置によれば、局所領域ごとに日照環境が異なり輝度分布が不均一になるような場合でも良好に点線を検出することができる。
【0076】
さらに、本実施形態に係る白線検出装置によれば、2値化画像の白線部分の画素値を積算して点線候補領域を設定し、点線候補領域内で検出された点線長の中で最も検出頻度の大きい点線長に基づいて白線部分が点線である否かを判定する。これにより、白線だけではなく点線のように規格化されたものを検出することができる。
【0077】
[第4実施形態]
次に、本発明の第4実施形態に係る白線検出装置について説明する。
【0078】
[白線検出装置の構成]
本実施形態に係る白線検出装置の構成は、
図1に示す第1実施形態の構成と同一であるが、白線検出部4の構成が相違している。
【0079】
図15は本実施形態に係る白線検出部の構成を示すブロック図であり、
図15に示すように本実施形態に係る白線検出部80は、
図2に示す第1実施形態の構成に分離度ヒストグラム作成部81を追加したものである。また、局所領域輝度検出部22で実行される処理についても第1実施形態と相違している。
【0080】
局所領域輝度検出部22は、白線検出フィルタの白線検出領域の幅を順次変更しながら局所領域の輝度を検出する。また、路面画像を複数の領域に分割して各領域にそれぞれ走査線を設定し、この走査線に沿って白線検出フィルタを走査することによって局所領域の輝度を検出する。
【0081】
分離度ヒストグラム作成部81は、分離度評価部25によって算出された分離度を、路面画像上に設定された走査線に沿って集計して分離度ヒストグラムを作成する。
【0082】
[白線検出処理]
以下、
図16に示すフローチャートを参照して、本実施形態に係る白線検出処理の手順を説明する。
図16に示す白線検出処理において、ステップS301からステップS303までの処理は、
図4に示す第1実施形態の白線検出処理のステップS101からステップS103までの処理と同一なので詳細な説明は省略する。
【0083】
ステップS301〜S303までの処理によってインテグラルイメージが作成されると、ステップ304において局所領域輝度検出部22が白線検出フィルタの白線検出領域の幅を順次変更しながら局所領域の輝度を検出する。
【0084】
局所領域輝度検出部22は、
図17に示すように白線検出フィルタ40の白線検出領域41の幅を順次変化しながら、
図18に示す路面画像上に設定された走査線に沿って白線検出フィルタ40を走査する。このとき、局所領域輝度検出部22は、白線検出領域41の幅を最小値W_minから最大値W_maxまでの間でステップサイズを1ピクセルにして変化させている。そして、白線検出領域41の幅が異なる複数の白線検出フィルタ40を繰り返し走査線に沿って走査することによって局所領域の輝度を検出している。
【0085】
ここで、白線検出領域41の最小値W_minと最大値W_maxは道路の規格によって定められた白線幅の最小値と最大値に対応して設定されている。さらに、車両の挙動によって変化する範囲に対応させて最小値W_minと最大値W_maxを設定してもよい。例えば、
図3に示すように車載カメラ31がリアカメラの場合、車両30のリアが沈み込むと撮像される白線の幅は細くなり、逆にリアが浮き上がると白線の幅は太く撮像される。そこで、このような車両の挙動による変化に対応させて最小値W_minと最大値W_maxを設定すれば、車両の挙動による誤差があっても白線を検出することが可能となる。例えば、最小値W_minは白線の幅10cmに相当するピクセル値に設定し、最大値W_maxは白線の幅50cmに相当するピクセル値に設定すればよい。尚、路面検出領域42の幅を変更する必要はない。
【0086】
また、
図18に示す走査線は、路面画像を複数の領域に分割して各領域にそれぞれ設定されている。例えば、
図18では路面画像をA、B、Cの3つの領域に分割し、それぞれの領域に走査線を設定し、この走査線に沿って白線検出フィルタを走査する。
【0087】
本実施形態では白線検出領域の幅を変更しながら繰り返し白線検出フィルタを用いて輝度を検出している。したがって、路面画像のすべての画素について輝度を検出していると処理負荷が過大になるので、処理負荷を低減させる必要がある。そこで、第1実施形態では路面画像のすべての画素に対して白線検出フィルタを設定して輝度を検出していたが、本実施形態では複数の領域に設定された走査線上だけで輝度を検出するようにして処理負荷を低減させている。
【0088】
したがって、走査線の数は少ないほうがよいが、少なくし過ぎると正確に白線を検出することができない。そこで、少なくとも3つの領域に路面画像を分割し、各領域にそれぞれ走査線を設定するようにしている。少なくとも3本の走査線を設定すれば、白線の検出を正確に行うことは可能だからである。
【0089】
こうして局所領域の輝度が検出されると、ステップS305、S306の処理が実行されて分離度が評価される。ステップS305、S306の処理については、
図4のステップS105、S106の処理と同一なので詳細な説明は省略する。
【0090】
そして、ステップS307において、局所領域輝度検出部22は、すべての走査線について白線検出領域の幅を変更させて白線検出フィルタの走査が終了したか否かを判定する。
【0091】
局所領域輝度検出部22は、まず白線検出領域の幅が最小値W_minの白線検出フィルタを走査線上の開始位置x=0に設定する。その後、白線検出フィルタの位置を1ピクセル単位で走査線に沿って移動させ、路面画像を左端から右端まで走査し終わると、白線検出領域の幅を1ピクセル増やして繰り返し白線検出フィルタを走査する。そして、白線検出領域の幅が最大値W_maxに達して、白線検出フィルタの位置が路面画像の右端に到達すると、局所領域輝度検出部22は白線検出フィルタの走査が終了したと判定してステップS308に移行する。
【0092】
ステップS308では、分離度ヒストグラム作成部81が、分離度評価部25によって算出された分離度を集計して分離度ヒストグラムを作成する。このとき、白線検出領域の幅が異なる白線検出フィルタを用いた場合についてそれぞれ集計してヒストグラムを作成する。例えば、
図19に示すように、まず白線検出領域の幅が狭い白線検出フィルタを用いた場合について走査線0〜xまでの分離度を取得してヒストグラムを作成する。同様に、白線検出領域の幅が中間の白線検出フィルタを用いた場合についてヒストグラムを作成し、白線検出領域の幅が広い白線検出フィルタを用いた場合についてヒストグラムを作成する。ただし、
図19では3つの白線検出フィルタを用いた場合について示しているが、実際には白線検出領域の幅を最小値W_minから最大値W_maxまで1ピクセルずつ増やしていった場合のすべてについてヒストグラムを作成している。
【0093】
また、ヒストグラムを作成する際には、取得した分離度を走査線上の白線検出領域の中央の位置に投票することによってヒストグラムを作成する。例えば、路面検出領域の幅が10画素、白線検出領域の幅が10画素の白線検出フィルタの左端が走査線の「0」の位置に設定されていたとする。この場合の分離度は、路面検出領域の幅の10画素に白線検出領域の幅の半分の5画素を加算した位置、すなわち走査線上の「15」の位置に投票されるようにする。本実施形態では、白線検出領域の幅が変化するので、このように白線検出領域の中央の位置に投票してヒストグラムを作成しないと、分離度の投票される位置が白線検出領域の幅に応じてずれてしまうからである。
【0094】
そして、すべての白線検出フィルタに対してヒストグラムが作成できたら、次にこれらのヒストグラムを集計して分離度ヒストグラムを作成する。集計方法としては、
図19に示すようにすべてのヒストグラムを単に加算すればよいが、分離度の大きさに応じて重み付けを行ってから加算してもよい。例えば、分離度の大きさが最大となるヒストグラムに「1」を、それ以外のヒストグラムに「0.5」をかけることによって重み付けを行ってから加算してもよい。
【0095】
こうして分離度ヒストグラムが作成されると、次にステップS309において、閾値処理部26が分離度ヒストグラムに対して閾値処理を行って所定の閾値以上となるピーク(極大値)を検出する。これにより走査線上の各画素について白線部分であるか否かを判定し、白線部分であると判定された画素の位置を出力する。
【0096】
そして、ステップS310において、白線認識部5が閾値処理部26からの出力に応じて走査線上における白線の位置を認識し、その結果をレーンキープシステム33へ出力すると、本実施形態に係る白線検出装置による白線検出処理は終了する。
【0097】
[第4実施形態の効果]
上述したように、本実施形態に係る白線検出装置によれば、局所領域ごとに日照環境が異なり輝度分布が不均一になるような場合でも良好に白線を検出することができる。
【0098】
さらに、本実施形態に係る白線検出装置によれば、分離度評価部によって算出された分離度を、路面画像上に設定された走査線に沿って集計して分離度ヒストグラムを作成する。これにより、白線の位置を分離度ヒストグラムで表すことができるので、白線の位置を容易に認識することができる。
【0099】
また、本実施形態に係る白線検出装置によれば、白線検出フィルタの白線検出領域の幅を順次変更しながら局所領域の輝度を検出するので、白線の幅がさまざまに変化した場合でも白線を検出することが可能となる。
【0100】
さらに、本実施形態に係る白線検出装置によれば、路面画像を複数の領域に分割して各領域にそれぞれ走査線を設定し、設定された走査線に沿って白線検出フィルタを走査して局所領域の輝度を検出する。これにより、路面画像のすべての画素に白線検出フィルタを走査していた場合と比較して処理負荷を軽減することができる。
【0101】
また、本実施形態に係る白線検出装置によれば、路面画像を少なくとも3つの領域に分割するので、処理負荷を最小限に軽減できるとともに白線を確実に検出することができる。
【0102】
さらに、本実施形態に係る白線検出装置によれば、白線検出フィルタの白線検出領域の幅を道路の規格によって定められた白線幅の最小値と最大値との間で変更するので、道路の規格によって定められたさまざまな幅の白線を検出することが可能となる。
【0103】
また、本実施形態に係る白線検出装置によれば、白線検出フィルタの白線検出領域の幅を車両の挙動によって変化する範囲で変更するので、車両の挙動による誤差があっても白線を検出することが可能となる。
【0104】
さらに、本実施形態に係る白線検出装置によれば、走査線上に設定された白線検出フィルタの白線検出領域の中央の位置に分離度を投票することによって分離度ヒストグラムを作成する。これにより、白線検出領域の幅を変更しても白線の位置を正確に検出することができる。
【0105】
以上、本発明の白線検出装置を図示の実施形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置き換えることが可能である。
【0106】
本出願は、2012年3月5日に出願された日本国特許願第2012−047704号及び2012年11月6日に出願された日本国特許願第2012−244266号に基づく優先権を主張しており、これらの出願の内容が参照により本発明の明細書に組み込まれる。