(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0017】
以下、本発明の一実施形態を図面に基づいて説明する。
図1は、本実施形態によるレーンマーク検出装置100の機能構成例を示すブロック図である。
図1に示すように、本実施形態のレーンマーク検出装置100は、カメラ等の撮像装置200に接続されている。撮像装置200は、例えば、車両の後方に設置されたリアカメラである。
【0018】
レーンマーク検出装置100は、その機能構成として、レーンマーク候補抽出部1、レーンマーク検出部2およびレーンマーク位置推定部3を備えている。なお、これらの各機能ブロック1〜3は、ハードウェア構成、DSP、ソフトウェアの何れによっても実現することが可能である。例えばソフトウェアによって実現する場合、上記各機能ブロック1〜3は、実際にはコンピュータのCPUあるいはMPU、RAM、ROMなどを備えて構成され、RAMやROMに記憶されたプログラムが動作することによって実現できる。
【0019】
図2は、本実施形態によるレーンマーク候補抽出部1の機能構成例を示すブロック図である。
図2に示すように、本実施形態のレーンマーク候補抽出部1は、
その機能構成として、線分抽出部10、形状評価値算出部11、距離評価値算出部12および信頼度算出部13を備えている。また、形状評価値算出部11は、その更に具体的な機能構成として、直線性評価値算出部111、平行性評価値算出部112および縦横比評価値算出部113を備えている。また、距離評価値算出部12は、その更に具体的な機能構成として、スライス数評価値算出部121、X軸方向距離評価値算出部122およびY軸方向距離評価値算出部123を備えている。
【0020】
図1において、レーンマーク候補抽出部1は、撮像装置200より入力される撮影画像内からレーンマーク候補を抽出する。レーンマーク候補とは、撮影画像内に写っている被写体の輝度の違いや形状等をもとに、レーンマークの可能性がある部分として特定されるものである。なお、レーンマーク候補の抽出処理に関する詳細は後述する。
【0021】
レーンマーク検出部2は、撮影画像内に検索範囲を設定し、設定した検索範囲の中にあるレーンマーク候補からレーンマークを検出する。レーンマークを検出する際に、レーンマーク検出部2は、レーンマーク位置推定部3により推定されたレーンマークの位置と、レーンマーク候補抽出部1により抽出されたレーンマーク候補の位置と、レーンマーク候補抽出部1によりレーンマーク候補について算出された信頼度とに基づいて、レーンマークの推定位置を補正し、当該補正した位置をレーンマークの位置として検出する。なお、このレーンマーク検出部2によるレーンマーク検出処理についても、その詳細は後述する。
【0022】
レーンマーク位置推定部3は、レーンマーク検出部2により過去に検出されたレーンマークの位置から今回のレーンマークの位置を推定する。本実施形態において、レーンマーク位置推定部3は、レーンマーク検出部2による過去のレーンマークの検出結果に基づいて、レーンマークの横方向に対する単位時間当たりの移動量(Y軸方向の移動速度)を算出する。そして、当該算出したレーンマークの単位時間当たりの移動量と、レーンマーク検出部2により検出された過去のレーンマークの位置とに基づいて、次の単位時間後におけるレーンマーク位置を推定する。
【0023】
図3は、本実施形態によるレーンマーク位置推定部3の動作の概略を説明するための図である。
図3(a)は、ある時間tにおいて撮影画像内から検出されたレーンマークの位置を示す。時間tにおける車両中心から左レーンマークまでの距離をD
Lt、車両中心から右レーンマークまでの距離をD
Rtとする。本実施形態では、レーンマークの位置を、車両中心からの距離で表すものとする。
【0024】
図3(b)は、次の単位時間後における時間t+d(d:単位時間)において撮影画像内から検出されたレーンマークの位置(車両中心からの距離)を示す。時間t+dにおける車両中心から左レーンマークまでの距離をD
Lt+d、車両中心から右レーンマークまでの距離をD
Rt+dとする。
図3(c)は、更に次の単位時間後における時間t+2dにおいて撮影画像内から検出されるレーンマークの位置を示す。
【0025】
レーンマーク位置推定部3は、時間t+2dにおいてレーンマークを検出する際に、レーンマーク検出部2により時間tにおいて検出されたレーンマークの位置D
Lt,D
Rtと、時間t+dにおいて検出されたレーンマークの位置D
Lt+d,D
Rt+dとに基づいて、レーンマークの横方向に対する単位時間当たりの移動量を算出する。この場合、左レーンマークの単位時間当たりの移動量は、車両が左レーンマークに近づく方向に(D
Lt−D
Lt+d)/{(t+d)−t}である。一方、右レーンマークの単位時間当たりの移動量は、車両が右レーンマークから遠ざかる方向に(D
Rt+d−D
Rt)/{(t+d)−t}である。
【0026】
レーンマーク位置推定部3は、レーンマーク検出部2により時間t+dにおいて検出されたレーンマークの位置D
Lt+d,D
Rt+dと、時間t+2dにおいて算出されたレーンマークの単位時間当たりの移動量(D
Lt−D
Lt+d)/{(t+d)−t},(D
Rt+d−D
Rt)/{(t+d)−t}とに基づいて、時間t+2dにおけるレーンマーク位置を推定する。
【0027】
具体的には、時間t+dにおいて検出された左レーンマークの位置D
Lt+dから、左レーンマークの単位時間当たりの移動距離(D
Lt−D
Lt+d)/{(t+d)−t}×dを減算することにより得られる位置を、時間t+2dにおける左レーンマークの推定位置とする。また、時間t+dにおいて検出された右レーンマークの位置D
Rt+dに、右レーンマークの単位時間当たりの移動距離(D
Rt+d−D
Rt)/{(t+d)−t}×dを加算することにより得られる位置を、時間t+2dにおける右レーンマークの推定位置とする。
図3(c)において、21
Lが左レーンマークの推定位置、21
Rが右レーンマークの推定位置である。
【0028】
以下に、
図2に示したレーンマーク候補抽出部1の機能構成を具体的に説明していく。まず、線分抽出部10は、撮像装置200より入力された撮影画像から、グレースケールの輝度画像を生成する。そして、線分抽出部10は、
図4に示すように、輝度画像を水平方向にスキャンして、閾値以上の輝度が一定間隔続く水平部分をラインとして取り出す。これを撮影画像の全体に対して行う。なお、取り出したラインの1つ1つを「スライス」という。
【0029】
次に、線分抽出部10は、
図5に示すように、取り出した各スライスに対して、垂直方向に隣接するスライスどうしで水平方向の座標値の少なくとも一部が重複している複数のスライスをグルーピングする。
図5に示す例では、撮影画像内からスライスの3つのグループ1〜3が抽出されている。
【0030】
さらに、線分抽出部10は、
図6に示すように、各グループ1〜3のスライスを3次元座標の路面(Z=0)に投影した後、各スライスの中点から、最小2乗法でレーンマーク候補となる線分の直線式Y=aX+b(Z=0)を抽出する。ここで、aは線分の傾き、bは線分のY切片である。なお、3次元座標の路面への投影とは、撮像装置200より入力した撮影画像を、車両上方の仮想視点から見た真上からの画像に視点変換することをいう。3次元座標の原点は、車両中心の位置である。また、X軸において車両の前方がプラス、Y軸において車両の左側がプラスで右側がマイナスである。
【0031】
スライスのグループ1から抽出される線分の直線式はY=a1X+b1、グループ2から抽出される線分の直線式はY=a2X+b2、グループ3から抽出される線分の直線式はY=a3X+b3である。
【0032】
ここで、線分抽出部10は、以上のように各グループ1〜3について算出した線分の直線式のうち、傾きaおよびY切片bの値がある範囲内に入る複数の直線式がある場合は、それらの直線式に該当するグループを1つにまとめる。
図6の例では、グループ2とグループ3を1つのグループにまとめている。そして、線分抽出部10は、1つにまとめたグループについて、その中に含まれる各スライスの情報から1本の線分を再度抽出する。その結果、まとめた線分の直線式はY=a4X+b4となる。
【0033】
線分抽出部10は、各スライスの中点から線分を抽出したのと同様に、各スライスの左端および右端についても最小2乗法により線分をそれぞれ抽出する。これにより、スライスの中点から抽出した線分と平行な線分を両側に引き、スライスの幅を算出する。
図6の例では、グループ1の線分Y=a1X+b1についてスライス幅を算出するとともに、グループ2,3をまとめた1つのグループの線分Y=a4X+b4についてスライス幅を算出する。
【0034】
形状評価値算出部11、距離評価値算出部12および信頼度算出部13は、以上のようにして線分抽出部10により抽出された各線分について、レーンマークとしての確からしさを示す信頼度を算出する。信頼度の算出に際して、形状評価値算出部11は、撮像装置200より入力される撮影画像に写っている被写体(線分抽出部10によりレーンマーク候補として抽出された線分)がレーンマークの形状をしているか否かに関する形状評価値を算出する。具体的には、直線性評価値算出部111、平行性評価値算出部112および縦横比評価値算出部113により、3つの観点から形状評価値を算出する。
【0035】
直線性評価値算出部111は、線分抽出部10により抽出された線分の直線性に関する評価値を算出する。具体的には、
図6のように求めた線分の直線式Y=aX+bと各スライスの中点とのずれの大きさから線分の直線性を評価する。その直線性評価値MatchingValueは、例えば以下の算出式で求められ、0.0〜1.0の何れかの値をとる。
【0036】
MatchingValue=1.0−Diffrence/MaxDiffrence
ただし、
Diffrence:直線式と各スライスの中点との距離の平均値
MaxDiffrence:距離誤差の閾値
平行性評価値算出部112は、線分抽出部10により抽出された線分の両側のエッジの平行性に関する評価値を算出する。具体的には、
図6に示したように各スライスの左端および右端から最小2乗法により抽出した2本の線分の平行性を評価する。その平行性評価値EdgeMatchValueは、例えば以下の算出式で求められ、これも0.0〜1.0の何れかの値をとる。
【0037】
EdgeMatchValue=EdgeDiffrence/MaxEdgeDiffrence
ただし、
EdgeDiffrence:2本の線分の傾きの差
MaxEdgeDiffrence:各スライスの左端および右端の差の最大値
縦横比評価値算出部113は、線分抽出部10により抽出された線分の縦方向の長さと横方向の長さとの比に関する評価値を算出する。具体的には、
図7に示すように、抽出された線分の縦方向(X軸方向)の上端から下端までの長さと、横方向(Y軸方向)の左端から右端までの長さとの比を評価する。その縦横比評価値AspectMatchValueは、例えば以下の算出式で求められ、これも0.0〜1.0の何れかの値をとる。
【0038】
AspectMatchValue=(AspectRato−MinAspectRatio)/(MaxAspectRatio−MinAspectRatio)−1.0
ただし、
AspectRato:線分の縦横比
MaxAspectRatio:撮影画像内から抽出された各線分に関する縦横比の最大値
MinAspectRatio:撮影画像内から抽出された各線分に関する縦横比の最小値
形状評価値算出部11は、直線性評価値算出部111、平行性評価値算出部112および縦横比評価値算出部113により算出された3つの観点の評価値を用いて、以下の算出式により形状評価値を算出する。
【0039】
形状評価値=(直線性評価値+平行性評価値+縦横比評価値)/3
距離評価値算出部12は、撮像装置200より入力される撮影画像に写っている被写体(線分抽出部10によりレーンマーク候補として抽出された線分)が撮像装置200からどの程度の距離に存在するかに関する距離評価値を算出する。具体的には、スライス数評価値算出部121、X軸方向距離評価値算出部122およびY軸方向距離評価値算出部123により、3つの観点から距離評価値を算出する。
【0040】
スライス数評価値算出部121は、線分に含まれるスライスの数に関する評価値を算出する。具体的には、スライス数評価値算出部121は、例えば以下の算出式でスライス数評価値SliceNumMatchValueを算出する。このスライス数評価値SliceNumMatchValueも、0.0〜1.0の何れかの値をとる。
【0041】
SliceNumMatchValue=SliceNum/MaxSliceNum×100
ただし、
SliceNum:スライス数
MaxSliceNum:撮影画像内から抽出された各線分に関するスライス数の最大値
X軸方向距離評価値算出部122は、
図8に示すように、撮像装置200から線分のエッジまでのX軸方向の距離の評価値を算出する。具体的には、X軸方向距離評価値算出部122は、例えば以下の算出式でX軸方向距離評価値DistXMatchValueを算出する。このX軸方向距離評価値DistXMatchValueも、0.0〜1.0の何れかの値をとる。
【0042】
DistXMatchValue=(MaxDistX−DistX)/MaxDistX
ただし、
DistX :撮像装置200から線分のエッジまでのX軸方向の距離
MaxDistX:撮像装置200から線分のエッジまでのX軸方向の距離の限界値
Y軸方向距離評価値算出部123は、
図9に示すように、撮像装置200から線分のエッジまでのY軸方向の距離の評価値を算出する。具体的には、Y軸方向距離評価値算出部123は、例えば以下の算出式でY軸方向距離評価値DistYMatchValueを算出する。このY軸方向距離評価値DistYMatchValueも、0.0〜1.0の何れかの値をとる。
【0043】
DistYMatchValue=(MaxDistY−DistY)/MaxDistY
ただし、
DistY :撮像装置200から線分のエッジまでのY軸方向の距離
MaxDistY:撮像装置200から線分のエッジまでのY軸方向の距離の限界値
距離評価値算出部12は、スライス数評価値算出部121、X軸方向距離評価値算出部122およびY軸方向距離評価値算出部123により算出された3つの観点の評価値を用いて、以下の算出式により距離評価値を算出する。
【0044】
距離評価値=(スライス数評価値+X軸方向距離評価値+Y軸方向距離評価値)/3
信頼度算出部13は、形状評価値算出部11により算出された形状評価値と、距離評価値算出部12により算出された距離評価値とに基づいて、線分抽出部10により抽出された線分がレーンマークであるか否かの信頼度を算出する。具体的には、信頼度算出部13は、形状評価値×距離評価値なる算出式によってレーンマークの信頼度を算出する。
【0045】
図2に示すレーンマーク候補抽出部1は、線分抽出部10によりレーンマーク候補として抽出された各線分と、各線分について信頼度算出部13により算出された信頼度とをレーンマーク検出部2に出力する。レーンマーク検出部2は、上述したように、レーンマーク位置推定部3により推定されたレーンマークの位置と、レーンマーク候補抽出部1より出力されたレーンマーク候補の位置および信頼度とに基づいて、レーンマークの推定位置を補正し、当該補正した位置をレーンマークの位置として検出する。
【0046】
例えば、レーンマーク候補抽出部1の信頼度算出部13により算出された信頼度を、以下に示すようなカルマンフィルタの算出式に対してカルマンゲインKとして与える。
【0047】
[レーンマークの補正推定位置]=[レーンマークの推定位置]+K*[レーンマーク候補の実測位置]
そして、この算出式によって求められる補正推定位置を、レーンマークの位置として検出する。
【0048】
このようなカルマンフィルタの算出式において、信頼度算出部13により算出される信頼度をカルマンゲインKとして用いた場合、信頼度が低くなるほど、レーンマーク候補抽出部1により抽出されるレーンマーク候補の実測位置がレーンマークの検出位置に対して与える影響度は小さくなっていく。その結果、信頼度が低い場合には、レーンマーク候補の実測位置よりもレーンマークの推定位置が優先された状態で、レーンマークの位置が検出される。この場合の信頼度は、レーンマークの検出位置精度に影響を与える被写界距離の評価値を含めて算出されているため、レーンマークの検出位置精度に悪影響を与えるような信頼度の低いレーンマーク候補の実測位置を極力使わない状態で、より的確なレーンマーク位置を検出することができるようになる。
【0049】
以上詳しく説明したように、本実施形態では、撮影画像に写っている被写体がレーンマークの形状をしているか否かに関する形状評価値を形状評価値算出部11にて算出するとともに、被写界距離に関する距離評価値を距離評価値算出部12にて算出し、信頼度算出部13が形状評価値および距離評価値に基づいて信頼度を算出するようにしている。
【0050】
これにより、レーンマークの検出位置精度に影響を与える要因となる被写界距離に応じた信頼度を算出することができる。しかも、本実施形態では、撮影画像を領域分割して領域毎に信頼度を変える方式ではなく、レーンマークの被写界距離をダイレクトに評価する方式なので、信頼度の計算負荷が小さくて済む。したがって、本実施形態によれば、計算負荷を大きくすることなく、レーンマークの位置精度も考慮した信頼度を算出することができる。
【0051】
また、本実施形態では、レーンマーク候補抽出部1により抽出したレーンマーク候補の位置と、当該抽出したレーンマーク候補について上述のようにして算出した信頼度と、レーンマーク位置推定部3により推定されたレーンマークの位置とに基づいて、レーンマーク検出部2がレーンマークの推定位置を補正し、当該補正位置をレーンマークの位置として検出するようにしている。
【0052】
このような構成により、レーンマークの推定位置が、レーンマーク候補の位置と、上述のようにレーンマークの位置精度を考慮して算出した信頼度との関係を考慮してより適正な位置に補正されることとなる。そして、補正されたレーンマークの推定位置でレーンマークが検出されることとなるので、より適正な位置でレーンマークを検出することができる。その結果、レーンマークを跨いで車両が車線から逸脱する恐れがないのに発せられる車線逸脱の誤警報を抑制することができる。
【0053】
図10は、本実施形態による効果を示す図である。これは、実際に道路を走行して撮影した車両後方の撮影画像を入力して本実施形態のレーンマーク検出装置100を動作させた場合における誤警報の発生回数を示したものである。
図10(a)は、距離評価値を含めて信頼度を算出した場合の結果を示す(本実施形態の適用例)。
図10(b)は、距離評価値を含めずに信頼度を算出した場合の結果を示す(従来例)。
【0054】
図10(a)に示すように、本実施形態の場合は1時間当たりの誤警報の発生回数は25.1回であった。これに対して、従来例の場合は1時間当たりの誤警報の発生回数は33.2回であった。これから分かるように、本実施形態のレーンマーク検出装置100を適用すると、1時間当たりの誤警報の発生回数を従来比で20%程度も低減できている。
【0055】
なお、上記実施形態では、距離評価値算出部12は、スライス数評価値、X軸方向距離評価値およびY軸方向距離評価値の3つの観点から距離評価値を算出する例について説明したが、本発明はこれに限定されない。例えば、スライス数評価値の1点のみから距離評価値を算出するようにしてもよい。
図11は、この場合における誤警報発生の低減効果を示す図である。
図11に示すように、スライス数評価値の1点のみから距離評価値を算出した場合、1時間当たりの誤警報の発生回数は30.6回であった。これを
図10(b)の結果と比較すれば分かるように、1時間当たりの誤警報の発生回数を10%程度低減できている。
【0056】
また、上記実施形態では、カルマンフィルタのカルマン係数Kとして信頼度を用い、レーンマーク位置推定部3により推定されたレーンマークの位置と、線分抽出部10により抽出されたレーンマーク候補の位置と、信頼度算出部13によりレーンマーク候補について算出された信頼度とに基づいて、レーンマークの推定位置を補正し、当該補正した推定位置をレーンマークの位置として検出する例について説明したが、本発明はこれに限定されない。
【0057】
例えば、カルマン係数Kの逆数として信頼度を用い、レーンマーク位置推定部3により推定されたレーンマークの位置と、線分抽出部10により抽出されたレーンマーク候補の位置と、信頼度算出部13によりレーンマーク候補について算出された信頼度とに基づいて、以下の算出式に示すようにしてレーンマーク候補の位置を補正し、当該補正したレーンマーク候補の位置をレーンマークの位置として検出するようにしてもよい。
【0058】
[レーンマーク候補の補正位置]=[レーンマーク候補の実測位置]+1/K* [レーンマークの推定位置]
また、上記実施形態では、カルマンフィルタを用いてレーンマーク位置の補正を行う例について説明したが、本発明はこれに限定されない。すなわち、信頼度算出部13により算出される信頼度が低くなるほど、補正結果に対するレーンマーク候補の位置の影響度が小さくなるような補正方法であれば、カルマンフィルタ以外の方法を適用してもよい。
【0059】
その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。