JP2004318618A - 車線認識装置 - Google Patents
車線認識装置 Download PDFInfo
- Publication number
- JP2004318618A JP2004318618A JP2003113293A JP2003113293A JP2004318618A JP 2004318618 A JP2004318618 A JP 2004318618A JP 2003113293 A JP2003113293 A JP 2003113293A JP 2003113293 A JP2003113293 A JP 2003113293A JP 2004318618 A JP2004318618 A JP 2004318618A
- Authority
- JP
- Japan
- Prior art keywords
- lane
- lane marking
- chromosome
- white line
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Image Processing (AREA)
- Traffic Control Systems (AREA)
- Image Analysis (AREA)
Abstract
【課題】処理時間を短くして車線区分線を検出することができる。
【解決手段】車線認識装置は、車両の周囲画像を取得し(ステップS21)、複数のパラメータのうちの一部のパラメータを可変にして左右白線内側エッジ線について遺伝アルゴリズムによるパターンマッチング処理をし(ステップS23)、このパターンマッチング処理の結果に基づいて、前記一部のパラメータを固定するとともに、複数のパラメータのうちの他のパラメータを可変にして左右白線外側エッジ線について遺伝アルゴリズムによるパターンマッチング処理をするとともに、このパターンマッチング処理の結果に基づいて車線を認識する(ステップS24)。
【選択図】 図2
【解決手段】車線認識装置は、車両の周囲画像を取得し(ステップS21)、複数のパラメータのうちの一部のパラメータを可変にして左右白線内側エッジ線について遺伝アルゴリズムによるパターンマッチング処理をし(ステップS23)、このパターンマッチング処理の結果に基づいて、前記一部のパラメータを固定するとともに、複数のパラメータのうちの他のパラメータを可変にして左右白線外側エッジ線について遺伝アルゴリズムによるパターンマッチング処理をするとともに、このパターンマッチング処理の結果に基づいて車線を認識する(ステップS24)。
【選択図】 図2
Description
【0001】
【発明の属する技術分野】
本発明は、車両の周囲画像を取得して、その周囲画像に基づいて車線を認識する車線認識装置に関し、特に、車線区分線を複数のパラメータを用いて推定し、その推定した車線区分線と車両の周囲画像中の車線区分線とを比較して、その比較結果に基づいて得た車線区分線から車線を認識する車線認識装置に関する。
【0002】
【従来の技術】
車線区分線を検出する従来技術としては、パラメータから車線区分線を推定して、その推定した車線区分線と車両の周囲画像中の車線区分線とを比較して、その比較結果に基づいて車線区分線を認識する技術がある。以下、簡単にその手法を説明する。
【0003】
図11は車両の周囲画像である車両前方画像を示す。この図11に示すように、自車両の走行車線の左側車線区分線LLや右側車線区分線LL(以下、車線区分線を白線とも略記する。)が撮像されたとする。なお、以下の説明では、車線区分線を白線という場合もある。そして、図11に示すように座標系(x,y)をとった場合、前記左側白線LLを下記(1)式で、前記右側白線LRを(2)式でそれぞれ近似できる。
【0004】
【数1】
【0005】
ここで、各値は次のように与えられる。
Aは車線中心線に対するカメラ横変位を示す値である。このAは車線中心線に対して左側にカメラが位置している場合、正となる。Bは道路曲率を示す値である。このBは左コーナの場合、正となる。C0はエーミング時に決定される定数である(図12を参照)。Cは車線中心線に対するカメラヨー角を示す値である。このCは車線に対しカメラが左を向いている場合、正となる。D0はエーミング時に決定される定数である(図12を参照)。Dは路面に対するカメラピッチ角を示す値である。このDは路面に対して上を向く場合、正となる。H0は路面に対するカメラの高さ(標準高さ)を示す値である。Hはそのカメラ高さH0からの変位を示す値である。このHは上方向きの場合、正となる。fはカメラのレンズパラメータを示す値である。Wは車線幅を示す値である。具体的には、Wは左側白線内側から右側白線内側までの距離を示す値である。ここで、内側とは自車両が走行している車線の内方を意味する。例えば、左側白線内側は、当該左側白線の自車両の走行側と非白線部分との境界部分を意味する。
【0006】
また、ALは、左側白線内側を基準にした値であり、すなわちALが0の場合、ALは左側白線の最内側位置を示す値となり、ALがWL(左側白線幅)の場合、ALは左側白線の最外側位置を示す値となる。ARは、右側白線内側を基準にした値であり、すなわちARが0の場合、ARは右側白線の最内側位置を示す値となり、ARがWR(右側白線幅)の場合、ARは右側白線の最外側位置を示す値となる。
【0007】
このような(1)式及び(2)式において、{A,B,C,D,H,WL,WR}の7つが未知パラメータになる。これら7つの未知パラメータを白線パラメータとも呼ぶことにする。従来の車線区分線の検出技術では、このような未知パラメータから車線区分線を推定して、その推定した車線区分線と実際に得た車両前方画像中の車線区分線とを比較して、その比較結果に基づいて車線区分線を得ていた。すなわち、推定した車線区分線と実際に得た車両前方画像中の車線区分線とのパターンマッチングにより車線区分線を検出していた。
【0008】
以上のようにして車線区分線の検出技術では車線区分線を認識しているが、このような車線区分線の検出技術は、前記(1)式及び(2)式が表す白線が画像上の実際の白線に最もマッチングする白線パラメータを見つけ出すパターンマッチング問題(最適化問題)を解く手法とみなすこともできる。
他方、パラメータの最適化問題を解く手法として、遺伝アルゴリズムによるパラメータの最適化問題の解法が知られている。よって、前述したように車線区分線の検出技術がパラメータに関して最適化問題を解く手法ともいえることから、遺伝アルゴリズムを車線区分線の検出技術(パターンマッチング技術)に適応可能と考えられる。
【0009】
ここで、遺伝アルゴリズムについては非特許文献1,2に記載されているような技術がある。このような文献に代表される一般的な遺伝アルゴリズムの処理手順については図13に示すようになる。そして、このような処理手順からなる遺伝アルゴリズムを車線区分線の検出技術に適用した場合、その処理手順は図14に示すことができる。この図14に示す処理手順は以下のようになる。
【0010】
先ず、ステップS1において、N個の初期個体集合生成、各個体の適合度計算及び画像取り込みを行う。ここで、取り込んだ画像が実際の画像であり、後述する入力画像になる。
ここで、遺伝アルゴリズムでは、個体及び適合度を定義している。個体は、遺伝アルゴリズム上、最適化しようとするパラメータを保持する媒体となる。そして、この個体を複数個用意している。そして、ここでは前述した例にならい、そのように複数個用意した個体それぞれに、前記白線パラメータ{A,B,C,D,H,WL,WR}を記憶(保持)させる。
【0011】
また、適合度は、遺伝アルゴリズム上、各個体の優劣を表す量であり、最適化しようとするパラメータにより定義される値になる。すなわち、遺伝アルゴリズムを車線区分線の検出技術に適用した場合には、適合度は白線パラメータの関数で定義される量になる。このようにすることで、遺伝アルゴリズムを車線区分線の検出技術に適応した場合に、車線区分線の検出技術における白線のパターンマッチング率を示す相関(濃度値の相関)として適合度を考える。
【0012】
白線のパターンマッチング率を示す相関(濃度値の相関)は、車線区分線の検出技術において白線のパターンマッチングを評価する値として一般的に用いられており、例えば、白線パラメータで画像上に描いた白線と実際の白線とでパターンマッチングの度合いが大きくなれば、その相関が高くなり、白線パラメータで画像上に描いた白線と実際の白線とが完全に一致した場合には、その相関が最大値となる。このように定義される相関を遺伝アルゴリズム上の適合度に結びつける。なお、適合度の計算方法等は後でさらに詳述する。
【0013】
一方で、ステップS1において、カメラで得られた車両前方画像をプロセッサに取り込む。
続いてステップS2において、前記ステップS1で得た適合度に基づいて、N個の個体の中から重複を許して、N個の次世代の個体を選択する。このとき、各個体の適合度に基づいて、N個の個体の中から重複を許して、N個の次世代の個体を選択する。例えば、個体の適合度に比例した確率でN個の次世代の個体を選択する。すなわち、適合度が高いほど、当該適合度が高い個体を重複して選択する。
【0014】
続いてステップS3において、個体を2つずつランダムに組み合わせて両親とし、染色体を交叉させて子孫を作り、両親と入れ替える。
すなわち、図15に示すように、未知パラメータ或いは白線パラメータ{A,B,C,D,H,WL,WR}が染色体とされて、染色体とされた未知パラメータ或いは白線パラメータが、媒体である個体に保持されている(図15中(A)及び(B)参照)。ここで、染色体(未知パラメータ或いは白線パラメータ)は、2値化されて前記個体に保持される(図15中(C)参照)。
【0015】
なお、図15の中、未知パラメータ或いは白線パラメータに添え字kを付して{Ak,Bk,Ck,Dk,Hk,WLk,WRk}と表しており、その添え字kは各個体を識別する番号になる。
そして、図16に示すように、各個体同士(両親)A,Bのその染色体を交叉させて、子孫A´,B´を生成する。そして、両親A,B(両親A,Bの染色体)を、その生成した子孫A´,B´(子孫A´,B´の染色体)に置き換える。
【0016】
なお、染色体の交叉を2値化形式で表現した白線パラメータ{Ak,Bk,Ck,Dk,Hk,WLk,WRk}を用いて表現すれば、この例では、白線パラメータ{Ak,Bk,Ck,Dk,Hk,WLk,WRk}の一部を交換して、新たな白線パラメータ{Ak,Bk,Ck,Dk,Hk,WLk,WRk}を生成したといえる。
また、染色体の交叉は所定の位置について行っているが、その交叉位置を交叉率と呼ばれる設定値に基づいて確率的に決定している。
【0017】
続いてステップS4において、全個体の染色体を突然変異率に基づいて変異させる。
図17は、2値化表現した染色体について、突然変異させる処理を示す。図17中において所定部位(太枠部位)が突然変異させる部位であり、この部位について、図17中(A)から(B)への変化として示すように、当該部位の値(“1”又は“0”)を変更する。
【0018】
また、染色体の突然変異は、そのように所定の位置について行っているが、その突然変異させる位置を突然変異率と呼ばれる設定値に基づいて確率的に決定している。
続いてステップS5において、各個体の適合度計算を行う。
適合度計算は、図18に示すように、大別して2段階の処理、すなわち各個体の標準画像情報生成(ステップS11)、及び入力画像と標準画像との濃度値の相関計算(ステップS12)の処理により実行する。そして、この図18に示す処理を個体の総数(N回)だけ繰り返して行う。ここで、各個体の標準画像情報生成(ステップS11)、及び入力画像と標準画像との濃度値の相関計算(ステップS12)は次のような処理になる。
【0019】
先ず、各個体の標準画像情報生成(ステップS11)は次のような処理になる。
ここで、下記(3)式〜(6)式により、後述する入力画像と比較対象になる左側白線及び右側白線の画像を白線パラメータを用いて得ることができる。
【0020】
【数2】
【0021】
すなわち、y座標の各位置yiにおいて、左側白線及び右側白線の輪郭を形成するx座標の4点{xlli,xlri,xrli,xrri}を計算する(図19参照)。ここで、この4点の位置は左右白線それぞれの左右端を表すものとなり、すなわちそれら4点の各位置での1画素外側(xlliの左側、xlriの右側、xrliの左側、xrriの右側)が路面(非白線部分)を示すものとなる。そして、この結果を利用して、例えば白線部分を白とし、路面部分を黒とした画像を得ることができる。すなわち、白線部分と路面部分との境界で、画素が白から黒に変化する画像になる。このような画像を標準画像と呼ぶ。
【0022】
このような処理により、画像を濃度値として得ることができる。例えば、図20に示すように標準画像の濃度値表として得ることができる。この濃度値表は、画像中の各位置(x,y)における濃度値tiを、白(白線)の場合“1”として示し、黒(路面)の場合“0”として示している。
以上が各個体の標準画像情報生成(ステップS11)の処理になる。
【0023】
そして、このように生成した標準画像の濃度値と入力画像の濃度値との相関計算(ステップS12)を次のように行う。
標準画像の濃度値と入力画像の濃度値との相関値Rは下記(7)式で示される。
【0024】
【数3】
【0025】
ここで、f[k,l]は入力画像の濃度値である。kはx座標位置であり、lはy座標位置である。また、tjはx座標位置xj、y座標位置yjでの標準画像の濃度値である。また、(7)式の右辺中の上付きバーの値は平均値を示す。
この相関値Rは、標準画像(推定画像)の白線パターンと入力画像(実際の画像)の白線パターンとが一致する度合いが大きくなれば、その値が大きくなり、標準画像(推定画像)の白線パターンと入力画像(実際の画像)の白線パターンとが完全に一致した場合には、その値が最大値となる。
【0026】
そして、(7)式で得た濃度値の相関値Rを遺伝アルゴリズムにおける適合度に置き換える。これにより、適合度は、標準画像(推定画像)の白線パターンと入力画像(実際の画像)の白線パターンとが一致する度合いが高ければ、その値が大きくなり、標準画像(推定画像)の白線パターンと入力画像(実際の画像)の白線パターンとが完全に一致した場合には、その値が最大値となる。
【0027】
以上のように各個体の適合度計算を行う。
なお、前述のステップS1では、このような適合度の計算を初期個体について行っていることになる。
続いてステップS6において、実用解と見なせるものがあるか否かを判定する。例えば、前記(7)式の相関値Rが所定値以上の場合、実用解があると判定して、ステップS7に進む。一方、前記(7)式の相関値Rが所定値未満の場合、実用解がないと判定して、再びステップS2以降の処理、すなわち次世代を個体の選択の処理(前記ステップS2)、交叉処理(前記ステップS3)、変異処理(前記ステップS4)、適合度計算(前記ステップS5)、そして当該実用解判定処理(ステップS6)を行う。
【0028】
ステップS7では、前記ステップS6で得た実用解を解とする。すなわち、前記(7)式により得た相関値Rが所定値以上となった場合の個体の白線情報(白線パラメータ){Ak,Bk,Ck,Dk,Hk,WLk,WRk}を解とする。そして、この白線情報(白線パラメータ){Ak,Bk,Ck,Dk,Hk,WLk,WRk}により規定される白線に基づいて、車線を認識する。
【0029】
遺伝アルゴリズムがパラメータの最適化に有効である理由の詳細はここでは立ち入らないが、以上のような処理の過程で、複数の個体の中から適合度が高い(本例では、実際の車線区分線とのパターンマッチング度が高い)個体が最終的に生成される。そして、そのように推定した7つの未知パラメータが実際の車線に最も似ている車線を推定するパラメータとなる。
【0030】
以上より、最終的に推定した7つの未知パラメータから得られる標準画像の白線パターンと入力画像の白線パターンとが一致するため、遺伝アルゴリズムを取り込んだ車線区分線の検出技術(パターンマッチング技術)は、新たなパターンマッチング手法とみなすことができる。
【0031】
【非特許文献1】
長尾智晴,「進化的画像処理」,昭晃堂,2002年発行
【非特許文献2】
安居院猛,長尾智晴著,「C言語による画像処理入門」,昭晃堂,2000年発行
【0032】
【発明が解決しようとする課題】
前記車線区分線検出と遺伝アルゴリズムとを単純に結びつけてパターンマッチングの処理を構築した場合、遺伝アルゴリズムでは、車線区分線検出で使用する未知パラメータ7つについて処理することになる。例えば、各パラメータがそれぞれx通り存在すれば、当該パラメータについて可能な組み合わせはx7通りとなり、遺伝アルゴリズムでは、このようなパラメータの組み合わせを前提に処理するようになる。このようなことから、遺伝アルゴリズムによる処理は、未知パラメータが多くなるに従い、演算時間が長くなる傾向になると言える。よって、一度に扱う未知パラメータが多ければ最適化問題を解く時間がかかり、これがリアルタイム処理に適用する場合に問題となる。特に、車線区分線検出では、短時間で車線区分線を検出していく必要があるので、リアルタイム処理に合わせた遺伝アルゴリズムによる処理が実現できることが望まれる。
【0033】
そこで、本発明は、前述の問題に鑑みてなされたものであり、処理時間を短くして車線区分線を検出することができる車線認識装置の提供を目的とする。
【0034】
【課題を解決するための手段】
前述の問題を解決するために、本発明に係る車線認識装置は、車両の周囲画像を取得するとともに、車線区分線を複数のパラメータを用いて推定し、その推定した車線区分線と前記周囲画像中の車線区分線とを比較して、その比較結果に基づいて得た車線区分線から車線を認識する車線認識装置である。この車線認識装置は、複数のパラメータのうちの一部のパラメータを可変にして車線区分線の第1所定部分を第1推定手段により推定し、前記第1推定手段が推定した車線区分線の第1所定部分と前記画像取得手段が取得した前記周囲画像中の車線区分線の第1所定部分とを第1比較手段により比較し、前記第1比較手段の比較結果に基づいて、前記一部のパラメータを固定するとともに、前記複数のパラメータのうちの他のパラメータを可変にして車線区分線の第2所定部分を第2推定手段により推定し、前記第2推定手段が推定した車線区分線の第2所定部分と前記周囲画像中の車線区分線の第2所定部分とを第2比較手段により比較し、前記第2比較手段の比較結果に基づいて車線を車線認識手段により認識する。
【0035】
すなわち、前記一部及び他のパラメータを用いて車線区分線のそれぞれ所定部分を順次推定して、その推定した前記所定部分を用いて実際の撮像画像中の所定部分との比較を行い、最終的に全体の車線区分線を特定している。
【0036】
【発明の効果】
本発明によれば、前記一部及び他のパラメータを用いて車線区分線のそれぞれ所定部分を順次推定することで、全体のパラメータを用いて車線区分線を推定する場合と比較し、車線区分線の検出処理時間を短くすることができる。
【0037】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照しながら詳細に説明する。
図1は、実施の形態の車両構成を示す。この図1に示すように、車両前方を撮像するカメラ11と、カメラ11の撮像信号を処理する処理部12とが車両10に搭載されている。このカメラ11と処理部12とが本発明の車線認識装置を構成する。
【0038】
図2は、処理部12における車線認識の処理手順を示す。以下、その詳細を説明する。
先ずステップS21において、車両前方の画像を取り込む。具体的には、所定周期でカメラ11が車両前方を撮影し、カメラ11が撮像した車両前方の撮像画像を処理部12が所定周期で読み込む。
【0039】
続いてステップS22において、前記ステップS21で読み込んだ撮像画像(入力画像)中から車線区分線を効率よく検索するために探索領域を設定する。具体的には、図3に示すように、左側白線用及び右側白線用として探索領域ARL,ARRをそれぞれ設定する。ここで、探索領域ARL,ARRのx座標についての中心位置を例えば下記(8)式及び(9)式として与える。
【0040】
【数4】
【0041】
(8)式が左側白線についての探索領域ARLのx座標上についての中心位置を示し、(9)式が右側白線についての探索領域ARRのx座標についての中心位置を示す。この(8)式及び(9)式では、前記中心位置を白線内側エッジ位置(白線と自車線側路面(非白線部分)との境界)においている。なお、(8)式及び(9)式中の各変数は前記(1)式及び(2)式に従う。
【0042】
また、探索領域ARL,ARRの幅(前記中心位置からx方向の両端までの長さ)は、効率よく車線区分線を探索できるような所定幅であることが好ましく、例えば特開2000−36037号公報で開示されている技術を用いる。ここではその説明は省略する。
続いてステップS23において、左右白線内側エッジ線のパターンマッチングを行う。
【0043】
具体的には、左右白線と自車線側路面との境界が作るエッジ線(白線の内側エッジ線)のパターンマッチングを遺伝アルゴリズムを適用して実行する。図4は、遺伝アルゴリズムを適用したパターンマッチングの処理手順を示す。
先ずステップS31において、N個の初期個体集合生成及び各個体の適合度計算を行う。
【0044】
遺伝アルゴリズムを適用して、先ず個体を複数個用意し、そのように複数個用意した個体それぞれに、パラメータ{Ak,Bk,Ck,Dk,Hk}を記憶(保持)させる。
ここで、添え字kは各個体を識別する番号になる。また、パラメータ{Ak,Bk,Ck,Dk,Hk}は、前記(1)式及び(2)式中の{A,B,C,D,H}に相当する。
【0045】
また、従来例としての説明では、白線パラメータを{Ak,Bk,Ck,Dk,Hk,WLk,WRk}としているが、実施の形態では、その従来の白線パラメータ{Ak,Bk,Ck,Dk,Hk,WLk,WRk}との比較で左右白線の幅を示すWL,WRがないことに注意する。このようなことから、従来例における説明内容と区別するため、実施の形態で定義するこれら5つのパラメータ{Ak,Bk,Ck,Dk,Hk}を道路パラメータと呼ぶことにする。よって、後述する適合度はこの道路パラメータの関数で定義されるようになる。
【0046】
また、適合度計算では、一般に用いられる濃度値の相関を用いていており、この点については概略従来例における説明内容と同じである。しかし、詳細では異なっており、その適合度計算については後段のステップS35でさらに詳述する。
また、この遺伝アルゴリズムによるパターンマッチングを実現するシステムが、画像を所定サンプリングで取り込み、連続処理により実現されていることを利用して、パラメータの初期値を、今回の処理の前の遺伝アルゴリズムによるパターンマッチングで得た後述の実用解(具体的には実用解のパラメータ)に基づいて設定してもよい。具体的には、前回処理で得た実用解であるパラメータ{Ak,Bk,Ck,Dk,Hk}の値そのもの、或いはそれに近い値にパラメータ初期値を設定する。すなわち、初期値の染色体を実用解に対応する染色体そのものに、又はその実用解に対応する染色体に類似の染色体に設定する。
【0047】
続いてステップS32において、前記ステップS31で得た適合度に基づいて、N個の個体の中から重複を許して、N個の次世代の個体を選択する。このとき、各個体の適合度に基づいて、N個の個体の中から重複を許して、N個の次世代の個体を選択する。例えば、個体の適合度に比例した確率でN個の次世代の個体を選択する。すなわち、適合度が高いほど、当該適合度が高い個体を重複して選択する。
【0048】
続いてステップS33において、個体を2つずつランダムに組み合わせて両親とし、染色体を交叉させて子孫を作り、両親と入れ替える。この染色体及び染色体を交叉させて子孫を作る手順については、前述の従来例における説明内容と同じである。
しかし、白線パラメータ{Ak,Bk,Ck,Dk,Hk,WLk,WRk}により染色体が構成されているのではなく、道路パラメータ{Ak,Bk,Ck,Dk,Hk}により染色体を構成しており、よって次のような処理を行う点が従来における説明部分と異なる。
【0049】
すなわち、道路パラメータ{Ak,Bk,Ck,Dk,Hk}が染色体とされて、染色体とされた道路パラメータ{Ak,Bk,Ck,Dk,Hk}が、媒体である個体に保持される(図15中(A)及び(B)参照)。そして、染色体(道路パラメータ)は、2値化されて前記個体に保持される(図15中(C)参照)。その後、各個体同士(両親)A,Bのその染色体を交叉させて、子孫A´,B´を生成する。そして、両親A,B(両親A,Bの染色体)を、その生成した子孫A´,B´(子孫A´,B´の染色体)に置き換える(図16参照)。
【0050】
さらに、今回の処理の前の遺伝アルゴリズムによるパターンマッチングで得た実用解(具体的にはパラメータ)に対応する染色体に対して、交叉により生成してみた染色体が異常でない範囲にある場合に、当該生成した染色体を有効なものとしている。すなわち例えば、そのパラメータと前回処理で得た実用解であるパラメータとの差或いは変動が所定値以上となるような子孫が生まれないようにする。つまり、交叉により生成したパラメータAが前回値のパラメータAに対して大きく異なる場合等には、その交叉を許可しないようにする。これにより、交叉で生成した染色体に異常がある限り、すなわち前回値のパラメータに対して今回値のパラメータが所定値以上の変動をみせている限り、その染色体をもつ子孫の生成を確定することなく、交叉の処理を繰り返す。
【0051】
続いてステップS34において、全個体の染色体を突然変異率に基づいて変異させる。ここでの変異処理も、従来例における説明内容と同じである。
また、今回の処理の前の遺伝アルゴリズムによるパターンマッチングで得た実用解(具体的にはパラメータ)に対応する染色体に対して、変異させて生成してみた染色体が異常でない範囲にある場合に、当該生成した染色体を有効なものとしてもよい。すなわち例えば、そのパラメータと前回処理で得た実用解であるパラメータとの差或いは変動が所定値以上となるような子孫が生まれないようにする。つまり、変異させて生成したパラメータAが前回値のパラメータAに対して大きく異なる場合等には、その変異させる処理を許可しないようにする。これにより、変異させて生成した染色体に異常がある限り、すなわち前回値のパラメータに対して今回値のパラメータが所定値以上の変動をみせている限り、変異処理を確定させることなく、変異の処理を繰り返す。
【0052】
続いてステップS35において、各個体の適合度計算を行う。この適合計算も従来例における説明内容と同じであり、前記図18に示したように、大別して2段階の処理、すなわち各個体の標準画像情報生成(前記ステップS11)、及び入力画像と標準画像との濃度値の相関計算(前記ステップS12)の処理により実行する。そして、この図18に示す処理を個体の総数だけ繰り返して行う。
【0053】
具体的には、各個体の標準画像情報生成(前記ステップS11)は次のような処理になる。
ここで、下記(10)式及び(11)式により、入力画像と比較対象になる左側白線及び右側白線に関する画像(2本の線)を道路パラメータを用いて得ることができる。
【0054】
【数5】
【0055】
ここで、(10)式が左側白線に関する画像(具体的には内側エッジ線)を得るための式であり、(11)式が右側白線に関する画像(具体的には内側エッジ線)を得るための式である。
すなわち、図5に示すように、y座標の各位置yiにおいて、左側白線及び右側白線の輪郭を形成するx座標の2点{xlri,xrli}を計算する。ここで、2点の位置は左右白線それぞれの内側端を表すものとなり、すなわちそれら2点の各位置での1画素内側(xlriの右側、xrliの左側)が路面を示すものとなる。
【0056】
そして、この結果を利用して、例えば白線部分を白とし、路面部分を黒とした画像を得ることができる。すなわち、白線部分と路面部分との境界で、画素が白から黒に変化する画像を得ることができる。この画像が標準画像になる。
また、計算領域を所定の領域に絞り、そのように絞り込んだ領域について、各位置yi毎に2点{xlri,xrli}を計算する。画面の全画素数が非常に膨大な量であることから、各個体毎に画面の全画素分について計算する、すなわち画面のy座標の位置yiの全てについてx座標の2点{xlri,xrli}を計算するのは、リアルタイム処理では得策とはいえない。このようなことから、計算領域を所定の領域に絞る。
【0057】
例えば、任意位置yiの添え字iを例えば1〜50として、任意位置yi={100,101,・・・,148,149}について計算する。或いは、複数の任意位置yi={100,102,104,・・・}として、所定間隔をあけて計算をする。例えば、前記ステップS22では、撮像画像(入力画像)中に探索領域を設定し、その設定した探索領域内で実際の車線区分線を探索している。このようなことから、前記任意位置yiをそのような探索領域内の位置に限定してもよい。
【0058】
そして、各位置yi毎に得た2点{xlri,xrli}の値から、左側白線及び右側白線の2本の白線について、それぞれ幅方向における白線部分と非白線部分との境界部分(内側の境界部分)を示すものとして、4点の画素を得る。
以上のような処理により、図6に示すような標準画像の濃度値表を得ることができる。この濃度値表は、各位置(x,y)における濃度値tiを、白(白線)の場合“1”とし、黒(路面)の場合“0”としている。
【0059】
以上が各個体の標準画像情報生成(ステップS11)の処理になる。
そして、このように生成した標準画像の濃度値と入力画像の濃度値との相関計算(ステップS12)を次のように行う。
標準画像の濃度値と入力画像の濃度値との相関値Rを前記(7)式により算出する。ここで、入力画像の濃度値は前記探索領域内で得ている値である。
【0060】
そして、前記(7)式で得た濃度値の相関値Rを、遺伝アルゴリズムにおける適合度に置き換える。これにより、適合度は、標準画像(推定画像)の白線パターン(内側エッジ)と入力画像(実際の画像)の白線パターン(内側エッジ)とが一致する度合いが大きくなれば、その値が大きくなり、標準画像(推定画像)の白線パターン(内側エッジ)と入力画像(実際の画像)の白線パターン(内側エッジ)とが完全に一致した場合には、その値が最大値となる。
【0061】
以上のようにして各個体の適合度計算を行う。
なお、前述したように複数の任意位置yiを{100,102,104,・・・}として、所定間隔をあけて計算しているような場合もある。このような場合には、対応するy座標位置(図6でいえば行)を削除して(無視して)、相関値Rを得てもよい。
【0062】
また、前述のステップS31では、このような適合度の計算を初期個体について行っていることになる。
続いてステップS36において、実用解と見なせるものがあるか否かを判定する。例えば、前記(7)式の相関値Rが所定値以上の場合、実用解があると判定して、ステップS37に進む。
【0063】
また、例えば相関値Rの計算に用いる画素値の対象数を制限するようにしてもよい。例えば、所定数以下の画素値を対象として計算するようにしたり、逆に所定数以上の画素値を対象として計算するようにしたりである。具体的には、前記変数jの総数が所定値以上の条件を課したりする。
一方、前記(7)式の相関値Rが所定値未満の場合、実用解がないと判定して、再びステップS32以降の処理、すなわち次世代を個体の選択の処理(前記ステップS32)、交叉処理(前記ステップS33)、変異処理(前記ステップS34)、適合度計算(前記ステップS35)、そして当該実用解判定処理(ステップS36)を行う。
【0064】
続いてステップS37において、前記ステップS36で得た実用解を解とする。すなわち、前記(7)式により得た相関値Rが所定値以上となった場合の個体の白線情報(道路パラメータ){Ak,Bk,Ck,Dk,Hk}を解とする。
ここで、車線区分線を検出するにはパラメータ{Ak,Bk,Ck,Dk,Hk,WLk,WRk}が必要であるところ、この段階で、そのパラメータのうちの一部のパラメータ{Ax,Bx,Cx,Dx,Hx}に基づいて前記解を得ているにすぎない。すなわち、車線区分線の一部構成部分である内側エッジ線を検出しただけであり、さらには、そのようにして検出した内側エッジ線が真の値であるとも言いきれない。このようなことから、このステップS37時点で得た解を仮の解にする。
【0065】
以上がステップS23における左右白線内側エッジ線のパターンマッチングである。
続いてステップS24において、左右白線外側エッジ線のパターンマッチングを行う。このステップS24により、最終的に車線区分線の検出がなされる。また、前記仮の解としての内側エッジ線も真の内側エッジ線であることの確認がなされる。
【0066】
ここで、前記道路パラメータ{Ak,Bk,Ck,Dk,Hk}を固定し、未知数をWL,WRとして、左右白線の外側エッジ線のパターンマッチングを遺伝アルゴリズムを用いて実行する。図7は、遺伝アルゴリズムを適用したその処理手順を示す。
先ずステップS41において、N個の初期個体集合生成及び各個体の適合度計算を行う。ここでは、複数個の個体それぞれに、パラメータ(以下、白線幅パラメータという。){WLk,WRk}を記憶させる。ここで、添え字kは各個体を識別する番号になる。なお、適合度の計算については、後段のステップS45にて詳述する。
【0067】
続いてステップS42において、前記ステップS41で得た適合度に基づいて、N個の個体の中から重複を許して、N個の次世代の個体を選択する。このとき、各個体の適合度に基づいて、N個の個体の中から重複を許して、N個の次世代の個体を選択する。例えば、個体の適合度に比例した確率でN個の次世代の個体を選択する。すなわち、適合度が高いほど、当該適合度が高い個体を重複して選択する。
【0068】
続いてステップS43において、個体を2つずつランダムに組み合わせて両親とし、染色体を交叉させて子孫を作り、両親と入れ替える。この染色体及び染色体を交叉させて子孫を作る手順については、前述の従来例における説明内容と同じである。
しかし、ここでは白線幅パラメータ{WL,WR}により染色体を構成しているので、次のような処理を行う。
【0069】
すなわち、白線幅パラメータ{WL,WR}が染色体とされて、染色体とされた白線幅パラメータ{WL,WR}が、媒体である個体に保持される(図15中(A)及び(B)参照)。そして、染色体(白線幅パラメータ)は、2値化されて前記個体に保持される(図15中(C)参照)。その後、各個体同士(両親)A,Bのその染色体を交叉させて、子孫A´,B´を生成する。そして、両親A,B(両親A,Bの染色体)を、その生成した子孫A´,B´(子孫A´,B´の染色体)に置き換える(図16参照)。
【0070】
また、ここでは、WL,WRが白線幅であることを考慮して、一般的な値(一般的な白線幅)から大きくずれるような子孫が生まれないようにしても良い。例えば、交叉で生成した染色体に異常がある限り、すなわち一般的な値(一般的な白線幅)からWL,WRが大きくずれている限り、その染色体をもつ子孫の生成を確定することなく、交叉の処理を繰り返す。
【0071】
続いてステップS44において、全個体の染色体を突然変異率に基づいて変異させる。ここでの変異処理も、従来例における説明内容と同じである。
また、ここでは、WL,WRが白線幅であることを考慮して、一般的な値(一般的な白線幅)から大きくずれるような染色体が生成されないようにしても良い。例えば、変異させて生成した染色体に異常がある限り、すなわち一般的な値(一般的な白線幅)からWL,WRが大きくずれている限り、変異処理を確定させることなく、変異の処理を繰り返す。
【0072】
続いてステップS45において、各個体の適合度計算を行う。この適合計算も従来例における説明内容と同じであり、前記図18に示したように、大別して2段階の処理、すなわち各個体の標準画像情報生成(前記ステップS11)、及び入力画像と標準画像との濃度値の相関計算(前記ステップS12)の処理により実行する。そして、この図18に示す処理を個体の総数だけ繰り返して行う。 具体的には、各個体の標準画像情報生成(前記ステップS11)は次のような処理になる。
【0073】
ここで、下記(12)式及び(13)式により、入力画像と比較対象になる左側白線及び右側白線に関する画像(2本の線)を得ることができる。ここでは、パラメータとして、前記ステップS23で得た道路パラメータ{Ak,Bk,Ck,Dk,Hk}と前記ステップS44で得た白線幅パラメータ{WL,WR}とを用いる。
【0074】
【数6】
【0075】
ここで、(12)式が左側白線に関する画像(具体的には外側エッジ線)を得るための式であり、(13)式が右側白線に関する画像(具体的には外側エッジ線)を得るための式である。
すなわち、図8に示すように、y座標の各位置yiにおいて、左側白線及び右側白線の輪郭を形成するx座標の2点{xlli,xrri}を計算する)。ここで、2点の位置は左右白線それぞれの外側端を表すものとなり、すなわちそれら2点の各位置での1画素内側(xlliの左側、xrriの右側)が路面を示すものとなる。
【0076】
そして、この結果を利用して、例えば白線部分を白とし、路面部分を黒とした画像を得る。すなわち、白線部分と路面部分の境界で、画素が白から黒に変化する画像を得る。この画像が標準画像になる。
また、計算領域を所定の領域に絞り、そのように絞り込んだ領域について、各位置yi毎に2点{xlli,xrri}を計算する。
【0077】
例えば、任意位置yiの添え字iを例えば1〜50として、任意位置yi={100,101,・・・,148,149}について計算する。或いは、複数の任意位置yi={100,102,104,・・・}として、所定間隔をあけて計算をする。
さらに、各位置yi毎に得た2点{xlli,xrri}の値から、左側白線及び右側白線の2本の白線について、それぞれ幅方向における白線部分と非白線部分との境界部分(外側の境界部分)を示すものとして、4点の画素を得る。
【0078】
以上のような処理により、図9に示すような標準画像の濃度値表を得ることができる。この濃度値表は、各位置(x,y)における濃度値tiを、白の場合“1”とし、黒の場合“0”としている。
以上が各個体の標準画像情報生成(ステップS11)の処理になる。
そして、このように生成した標準画像の濃度値と入力画像の濃度値との相関計算(ステップS12)を次のように行う。
【0079】
標準画像の濃度値と入力画像の濃度値との相関値Rを前記(7)式により算出する。そして、前記(7)式で得た濃度値の相関値Rを、遺伝アルゴリズムにおける適合度に置き換える。これにより、適合度は、標準画像(推定画像)の白線パターン(外側エッジ)と入力画像(実際の画像)の白線パターン(外側エッジ)とが一致する度合いが大きくなれば、その値が大きくなり、標準画像(推定画像)の白線パターン(外側エッジ)と入力画像(実際の画像)の白線パターン(外側エッジ)とが完全に一致した場合には、その値が最大値となる。
【0080】
続いてステップS46において、実用解と見なせるものがあるか否かを判定する。例えば、前記(7)式の相関値Rが所定値以上の場合、実用解があると判定して、ステップS47に進む。
また、例えば相関値Rの計算に用いる画素値の対象数を制限するようにしてもよい。例えば、所定数以下の画素値を対象として計算するようにしたり、逆に所定数以上の画素値を対象として計算するようにしたりである。具体的には、前記変数jの総数が所定値以上の条件を課したりする。
【0081】
また、一般道の白線幅はおおよそわかっているので、白線幅パラメータ{WL,WR}がそのような一般道の白線幅に対して明らかにずれているとき、その白線幅パターンを用いて得た解は実用解とみなさないようにしてもよい。
一方、前記(7)式の相関値Rが所定値未満の場合、実用解がないと判定して、再びステップS42以降の処理、すなわち次世代を個体の選択の処理(前記ステップS42)、交叉処理(前記ステップS43)、変異処理(前記ステップS44)、適合度計算(前記ステップS45)、そして当該実用解判定処理(ステップS46)を行う。
【0082】
続いてステップS47において、前記ステップS46で得た実用解を解とする。すなわち、前記(7)式により得た相関値Rが所定値以上となった場合の個体の白線情報(白線幅パラメータ){WLk,WRk}を解とする。そして、前記ステップS23で得た実用解である道路パラメータ{Ax,Bx,Cx,Dx,Hx}と合わせ、最終的な実用解として、パラメータ{Ax,Bx,Cx,Dx,Hx,WLx,WRx}を得る。このように、最終的な実用解として得たパラメータ{Ax,Bx,Cx,Dx,Hx,WLx,WRx}は、車線区分線を構成する外側及び内側のエッジ線を表現するパラメータになる。
【0083】
このようなパラメータに基づいて、最終的に車線区分線を検出して、自車両が走行している車線の認識をする。
動作の概略は次のようになる。
カメラ11が車両前方を撮影し、カメラ11が撮像した車両前方の撮像画像を処理部12が読み込む(前記ステップS21)。その一方で、道路パラメータ{Ak,Bk,Ck,Dk,Hk}を染色体として、その染色体を用いて、少なくとも1度、所定の交叉や変異させて新たな染色体を生成する(前記ステップS31〜ステップS34)。そして、その生成した染色体に基づいて白線の内側エッジ線の画像を得る(前記ステップS35)。そして、このようにして得た白線の内側エッジ線の画像と、前記撮像画像中の実際の白線の内側エッジ線の画像とを濃度値について相関を求めて、その相関値が所定値以上である場合に、そのときの染色体、すなわち道路パラメータを実用解として得る(前記ステップS36、ステップS37)。なお、このとき、相関を求めるための画像の比較は、前記探索領域内について行っている。
【0084】
このように道路パラメータによる実用解を得た場合、続いて白線幅パラメータ{WLk,WRk}を染色体として、同様な処理を行う。すなわち、白線幅パラメータ{WLk,WRk}を染色体として、その染色体を用いて、少なくとも1度、所定の交叉や変異させて新たな染色体を生成する(前記ステップS41〜ステップS44)。そして、その生成した染色体に基づいて白線の外側エッジ線の画像を得る(前記ステップS45)。そして、このようにして得た白線の外側エッジ線の画像と、前記撮像画像中の実際の白線の外側エッジ線の画像とを濃度値について相関を求めて、その相関値が所定値以上である場合に、そのときの染色体、すなわち道路パラメータを実用解として得る(前記ステップS46、ステップS47)。なお、このとき、相関を求めるための画像の比較は、前記探索領域内について行っている。
【0085】
以上のようにして最終的に実用解としてパラメータ{Ax,Bx,Cx,Dx,Hx,WLx,WRx}を得て、このパラメータ{Ax,Bx,Cx,Dx,Hx,WLx,WRx}に基づいて、最終的に車線区分線を検出して、自車両が走行している車線の認識をする。
次に効果を説明する。
【0086】
遺伝アルゴリズムをパターンマッチングに適用したときに得られる大局的な車線区分線検出の長所を保持しつつ、その検出のための演算時間を短縮することができる。
すなわち、前述したように本発明を適用した遺伝アルゴリズムでは、車線区分線の検出に必要なパラメータを二段階に分けて、最適化している。具体的には、車線区分線の内側エッジ線を特定する5つのパラメータについて最適化した後、車線区分線の外側エッジ線或いは白線幅を特定する2つのパラメータについて最適化している。これに対して、遺伝アルゴリズムを単に車線区分線検出に適応するような場合には、一度に7つのパラメータを最適化する必要があった。よって、各パラメータがそれぞれx通り存在すると、最適化においてそのパラメータの組み合わせはx7となり、一方で、本発明を適用した場合、第1段階の最適化におけるその組み合わせはx5となり、第2段階の最適化におけるその組み合わせはx2となる。例えば、遺伝アルゴリズムが全てのパターンについて演算するとした場合、前者では、x7の演算ステップが必要になり、その一方で、後者(本発明適用例)ではx5とx2との加算回数の演算ステップで済むようになる。このように、明らかに大幅な処理時間の短縮を図ることができる。
【0087】
また、前記大局的な車線区分線検出をすることができる効果は、ノイズに強くなるということと、車線区分線の誤検出或いは車線の誤認識を防止できるということである。
ここで、図10を用いて、遺伝アルゴリズムを適用していない従来手法の例を説明する。図10に示すように、従来手法では、画像中に左側及び右側にそれぞれ5つの白線探索領域(以下、ウインドウという。)WL1,WL2,WL3,WL4,WL5,WR1,WR2,WR3,WR4,WR5を設定し、その設定した各ウインドウWL1〜WL5,WR1〜WR5で独自に白線候補を検出し、最後にそれら各ウインドウWL1〜WL5,WR1〜WR5で得た候補に基づいて白線パラメータ或いは道路パラメータを推定していた。そして、それらウインドウWL1〜WL5,WR1〜WR5を用いた白線候補の検出は、他のウインドウの情報を利用しない局所的な処理により行っていたため、いずれかのウインドウで誤認識(誤検出)が発生する可能性があった。言い換えれば、一部のウインドウで誤認識(誤検出)があっても、その結果が反映されない場合があった。
【0088】
一方、本発明を適用して車線区分線検出を遺伝アルゴリズムで行う場合、先ず未知パラメータ(道路パラメータ)を仮決めしてから、左右白線の内側のパターンマッチング度(適合度)を画面全体で計算する大局的処理を行っている。これにより、画面にノイズが存在していた場合には、それに起因してパラメータの適合度が低くなるので、その結果として、車線区分線を誤認識(誤検出)しなくなることは明白である。
【0089】
また、左右白線の内側(外側)エッジ線のパターンマッチングは、前記(1)式及び(2)式等として与えた画像(エッジ線)に基づいて行っている。すなわち、パラメータを用いた近似式により直線又は曲線として境界部分を推定している。このような処理は、前記(1)式及び(2)式等をマッチングの条件としており、これは実空間でエッジ線候補が平行であることを要求することと等価といえる。この結果、実空間で車線幅(例えば3.75m)程度離れて平行に描かれている2本のエッジ線を、車線区分線と非車線区分線との境界(エッジ線)とみなすようになるので、これにより合理的な車線区分線検出を実現しつつ、その誤認識(誤検出)を大幅に低下させることができる。
【0090】
さらに、内側エッジ線を仮決めし、その仮決めに用いた関連するパラメータを固定して、その後、左右白線幅(WL,WR)をパターンマッチングすることは、白線を構成する内側のエッジ線と外側エッジ線とが平行であることを要求することと等価である。よって、路面上の白線以外の表示物でそのような要求を満たすケースが非常に少ないことに照らせば、そのような要求を前提とする車線区分線検出手法は、検出対象である車線区分線の性質を利用した手法になる。
【0091】
また、図6等に示す濃度値表からも明らかなように、標準画像(推定画像)を示す画素値を一定のパターン(“0”及び“1”が所定の配列)として得ることができる。このようなことから、そのようなパターン以外になる標準画像を処理に用いないことにすれば、例えばエラーとして扱うようにすれば、結果として車線区分線の誤検出を防止することができるようになる。
【0092】
また、前述したように、今回の処理の前の遺伝アルゴリズムによるパターンマッチングで得た実用解を基準にして、すなわち経験を考慮して、初期の染色体を設定し、或いは交叉又は変異による染色体を生成している。これにより、結果として、遺伝アルゴリズムによるパラメータの最適化の処理に一定の制限を加えている。これにより、遺伝アルゴリズムより早期に実用解を導き出すことを実現して、リアルタイム処理可能な車線区分線検出を実現することができる。
【0093】
すなわち、今回の処理の前の遺伝アルゴリズムによるパターンマッチングで得た実用解を基準にすることなく、すなわち経験を考慮することなく、初期の染色体を設定し、或いは交叉又は変異により染色体を生成することとすれば、遺伝アルゴリズムが実用解(真値)に収束させるまでの時間が長くなる場合があり、これを防止することができる。
【0094】
また、前述したように、探索領域を設定して、その探索領域内についてパターンマッチングを行い適合度を得ている。これにより、探索領域外のパターンマッチングによる適合度(相関)を低くして、探索領域内での適合度を優先的に高くする処理と等価な処理を行っている。これにより、結果として車線区分線を誤検出してしまうことを防止している。
【0095】
以上、本発明の実施の形態について説明した。しかし、本発明は、前述の実施の形態として実現されることに限定されるものではない。
すなわち、前述の実施の形態では、先ず一部のパラメータを可変として内側エッジ線を特定して、その後、その一部のパラメータを固定するとともに、他のパラメータを可変にして外側エッジ線を特定している。しかし、これに限定されないことはいうまでもない。例えば、その逆に、先ず一部のパラメータを可変として外側エッジ線を特定して、その後、その一部のパラメータを固定するとともに、他のパラメータを可変にして内側エッジ線を特定してもよい。この場合、前記(1)式及び(2)式を(14)式及び(15)式に変更する。
【0096】
【数7】
【0097】
ここで、Wは車線幅を示す値である。具体的には、Wは左側白線外側から右側白線外側までの距離を示す値である。また、ALは、左側白線外側を基準にした値であり、すなわちALが0の場合、ALは左側白線の最外側位置を示す値となり、ALがWL(左側白線幅)の場合、ALは左側白線の最内側位置を示す値となる。ARは、右側白線外側を基準にした値であり、すなわちARが0の場合、ARは右側白線の最外側位置を示す値となり、ARがWR(右側白線幅)の場合、ARは右側白線の最内側位置を示す値となる。
【0098】
そして、外側エッジ線についての濃度値表(前記図9)が、下記(16)及び(17)式に基づいて得られる。
【0099】
【数8】
【0100】
ここで、(16)式が左側白線の外側エッジ線を得るための式であり、(17)式が左側白線の外側エッジ線を得るための式である。
また、内側エッジ線についての濃度値表(前記図6)が、下記(18)及び(19)式に基づいて得られる。
【0101】
【数9】
【0102】
ここで、(18)式が左側白線の内側エッジ線を得るための式であり、(19)式が左側白線の内側エッジ線を得るための式である。
また、前述の実施の形態では、前記(1)式や(2)式等に基づいて、パラメータを用いた近似式により直線又は曲線として車線区分線と非車線区分線との境界部分を推定した場合を説明した。しかし、これに限定されないことはいうまでもない。例えば、他の式を使用し、さらに、そのような他の式により前述の実施の形態とは異なる車線区分線の部分(内側エッジ線や外側エッジ線でない部分)を推定するようにしてもよい。
【0103】
なお、前述の実施の形態の説明において、カメラ11及び図2のステップS21の処理は、前記車両の周囲画像を取得する画像取得手段を実現しており、図4に示すステップS31〜ステップS35の処理は、前記複数のパラメータのうちの一部のパラメータを可変にして車線区分線の第1所定部分を推定する第1推定手段を実現しており、図4に示すステップS36の処理は、前記第1推定手段が推定した車線区分線の第1所定部分と前記画像取得手段が取得した前記周囲画像中の車線区分線の第1所定部分とを比較する第1比較手段を実現しており、図7に示すステップS41〜ステップS45の処理は、前記第1比較手段の比較結果に基づいて、前記一部のパラメータを固定するとともに、前記複数のパラメータのうちの他のパラメータを可変にして車線区分線の第2所定部分を推定する第2推定手段を実現しており、図7に示すステップS46は、前記第2推定手段が推定した車線区分線の第2所定部分と前記周囲画像中の車線区分線の第2所定部分とを比較する第2比較手段を実現しており、図7に示すステップS47は、前記第2比較手段の比較結果に基づいて車線を認識する車線認識手段を実現している。
【図面の簡単な説明】
【図1】本発明の実施の形態の車両構成を示す図である。
【図2】処理部の車線認識処理の処理手順を示すフローチャートである。
【図3】探索領域の設定の説明に使用した図である。
【図4】前記車線認識処理内の左右白線内側エッジ線のパターンマッチングの処理手順を示すフローチャートである。
【図5】左側白線及び右側白線の内側エッジ線を示すx座標の2点{xlri,xrli}を計算することの説明に使用した図である。
【図6】左側白線及び右側白線の内側エッジ線を示すx座標の2点{xlri,xrli}に関しての濃度値表を示す図である。
【図7】前記車線認識処理内の左右白線外側エッジ線のパターンマッチングの処理手順を示すフローチャートである。
【図8】左側白線及び右側白線の外側エッジ線を示すx座標の2点{xlli,xrri}を計算することの説明に使用した図である。
【図9】左側白線及び右側白線の外側エッジ線を示すx座標の2点{xlli,xrri}に関しての濃度値表を示す図である。
【図10】従来の車線認識手法の説明に使用した図である。
【図11】撮像画像例を示す図である。
【図12】エーミング時に決定される定数についての説明に使用した図である。
【図13】一般的に遺伝アルゴリズムの最適化の処理手順を示すフローチャートである。
【図14】遺伝アルゴリズムと車線区分線検出とを単純に組み合わせた場合の処理手順の説明に使用したフローチャートである。染色体
【図15】遺伝アルゴリズムにおける染色体と個体との関係等の説明に使用した図である。
【図16】遺伝アルゴリズムの交叉処理の説明に使用した図である。
【図17】遺伝アルゴリズムの変異処理の説明に使用した図である。
【図18】遺伝アルゴリズムにおける適合度計算の処理手順を示すフローチャートである。
【図19】左側白線及び右側白線の輪郭を示すx座標の4点{xlli,xlri,xrli,xrri}を計算することの説明に使用した図である。
【図20】左側白線及び右側白線の輪郭を示すx座標の4点{xlli,xlri,xrli,xrri}に関しての濃度値表を示す図である。
【符号の説明】
10 車両
11 カメラ
12 処理部
【発明の属する技術分野】
本発明は、車両の周囲画像を取得して、その周囲画像に基づいて車線を認識する車線認識装置に関し、特に、車線区分線を複数のパラメータを用いて推定し、その推定した車線区分線と車両の周囲画像中の車線区分線とを比較して、その比較結果に基づいて得た車線区分線から車線を認識する車線認識装置に関する。
【0002】
【従来の技術】
車線区分線を検出する従来技術としては、パラメータから車線区分線を推定して、その推定した車線区分線と車両の周囲画像中の車線区分線とを比較して、その比較結果に基づいて車線区分線を認識する技術がある。以下、簡単にその手法を説明する。
【0003】
図11は車両の周囲画像である車両前方画像を示す。この図11に示すように、自車両の走行車線の左側車線区分線LLや右側車線区分線LL(以下、車線区分線を白線とも略記する。)が撮像されたとする。なお、以下の説明では、車線区分線を白線という場合もある。そして、図11に示すように座標系(x,y)をとった場合、前記左側白線LLを下記(1)式で、前記右側白線LRを(2)式でそれぞれ近似できる。
【0004】
【数1】
【0005】
ここで、各値は次のように与えられる。
Aは車線中心線に対するカメラ横変位を示す値である。このAは車線中心線に対して左側にカメラが位置している場合、正となる。Bは道路曲率を示す値である。このBは左コーナの場合、正となる。C0はエーミング時に決定される定数である(図12を参照)。Cは車線中心線に対するカメラヨー角を示す値である。このCは車線に対しカメラが左を向いている場合、正となる。D0はエーミング時に決定される定数である(図12を参照)。Dは路面に対するカメラピッチ角を示す値である。このDは路面に対して上を向く場合、正となる。H0は路面に対するカメラの高さ(標準高さ)を示す値である。Hはそのカメラ高さH0からの変位を示す値である。このHは上方向きの場合、正となる。fはカメラのレンズパラメータを示す値である。Wは車線幅を示す値である。具体的には、Wは左側白線内側から右側白線内側までの距離を示す値である。ここで、内側とは自車両が走行している車線の内方を意味する。例えば、左側白線内側は、当該左側白線の自車両の走行側と非白線部分との境界部分を意味する。
【0006】
また、ALは、左側白線内側を基準にした値であり、すなわちALが0の場合、ALは左側白線の最内側位置を示す値となり、ALがWL(左側白線幅)の場合、ALは左側白線の最外側位置を示す値となる。ARは、右側白線内側を基準にした値であり、すなわちARが0の場合、ARは右側白線の最内側位置を示す値となり、ARがWR(右側白線幅)の場合、ARは右側白線の最外側位置を示す値となる。
【0007】
このような(1)式及び(2)式において、{A,B,C,D,H,WL,WR}の7つが未知パラメータになる。これら7つの未知パラメータを白線パラメータとも呼ぶことにする。従来の車線区分線の検出技術では、このような未知パラメータから車線区分線を推定して、その推定した車線区分線と実際に得た車両前方画像中の車線区分線とを比較して、その比較結果に基づいて車線区分線を得ていた。すなわち、推定した車線区分線と実際に得た車両前方画像中の車線区分線とのパターンマッチングにより車線区分線を検出していた。
【0008】
以上のようにして車線区分線の検出技術では車線区分線を認識しているが、このような車線区分線の検出技術は、前記(1)式及び(2)式が表す白線が画像上の実際の白線に最もマッチングする白線パラメータを見つけ出すパターンマッチング問題(最適化問題)を解く手法とみなすこともできる。
他方、パラメータの最適化問題を解く手法として、遺伝アルゴリズムによるパラメータの最適化問題の解法が知られている。よって、前述したように車線区分線の検出技術がパラメータに関して最適化問題を解く手法ともいえることから、遺伝アルゴリズムを車線区分線の検出技術(パターンマッチング技術)に適応可能と考えられる。
【0009】
ここで、遺伝アルゴリズムについては非特許文献1,2に記載されているような技術がある。このような文献に代表される一般的な遺伝アルゴリズムの処理手順については図13に示すようになる。そして、このような処理手順からなる遺伝アルゴリズムを車線区分線の検出技術に適用した場合、その処理手順は図14に示すことができる。この図14に示す処理手順は以下のようになる。
【0010】
先ず、ステップS1において、N個の初期個体集合生成、各個体の適合度計算及び画像取り込みを行う。ここで、取り込んだ画像が実際の画像であり、後述する入力画像になる。
ここで、遺伝アルゴリズムでは、個体及び適合度を定義している。個体は、遺伝アルゴリズム上、最適化しようとするパラメータを保持する媒体となる。そして、この個体を複数個用意している。そして、ここでは前述した例にならい、そのように複数個用意した個体それぞれに、前記白線パラメータ{A,B,C,D,H,WL,WR}を記憶(保持)させる。
【0011】
また、適合度は、遺伝アルゴリズム上、各個体の優劣を表す量であり、最適化しようとするパラメータにより定義される値になる。すなわち、遺伝アルゴリズムを車線区分線の検出技術に適用した場合には、適合度は白線パラメータの関数で定義される量になる。このようにすることで、遺伝アルゴリズムを車線区分線の検出技術に適応した場合に、車線区分線の検出技術における白線のパターンマッチング率を示す相関(濃度値の相関)として適合度を考える。
【0012】
白線のパターンマッチング率を示す相関(濃度値の相関)は、車線区分線の検出技術において白線のパターンマッチングを評価する値として一般的に用いられており、例えば、白線パラメータで画像上に描いた白線と実際の白線とでパターンマッチングの度合いが大きくなれば、その相関が高くなり、白線パラメータで画像上に描いた白線と実際の白線とが完全に一致した場合には、その相関が最大値となる。このように定義される相関を遺伝アルゴリズム上の適合度に結びつける。なお、適合度の計算方法等は後でさらに詳述する。
【0013】
一方で、ステップS1において、カメラで得られた車両前方画像をプロセッサに取り込む。
続いてステップS2において、前記ステップS1で得た適合度に基づいて、N個の個体の中から重複を許して、N個の次世代の個体を選択する。このとき、各個体の適合度に基づいて、N個の個体の中から重複を許して、N個の次世代の個体を選択する。例えば、個体の適合度に比例した確率でN個の次世代の個体を選択する。すなわち、適合度が高いほど、当該適合度が高い個体を重複して選択する。
【0014】
続いてステップS3において、個体を2つずつランダムに組み合わせて両親とし、染色体を交叉させて子孫を作り、両親と入れ替える。
すなわち、図15に示すように、未知パラメータ或いは白線パラメータ{A,B,C,D,H,WL,WR}が染色体とされて、染色体とされた未知パラメータ或いは白線パラメータが、媒体である個体に保持されている(図15中(A)及び(B)参照)。ここで、染色体(未知パラメータ或いは白線パラメータ)は、2値化されて前記個体に保持される(図15中(C)参照)。
【0015】
なお、図15の中、未知パラメータ或いは白線パラメータに添え字kを付して{Ak,Bk,Ck,Dk,Hk,WLk,WRk}と表しており、その添え字kは各個体を識別する番号になる。
そして、図16に示すように、各個体同士(両親)A,Bのその染色体を交叉させて、子孫A´,B´を生成する。そして、両親A,B(両親A,Bの染色体)を、その生成した子孫A´,B´(子孫A´,B´の染色体)に置き換える。
【0016】
なお、染色体の交叉を2値化形式で表現した白線パラメータ{Ak,Bk,Ck,Dk,Hk,WLk,WRk}を用いて表現すれば、この例では、白線パラメータ{Ak,Bk,Ck,Dk,Hk,WLk,WRk}の一部を交換して、新たな白線パラメータ{Ak,Bk,Ck,Dk,Hk,WLk,WRk}を生成したといえる。
また、染色体の交叉は所定の位置について行っているが、その交叉位置を交叉率と呼ばれる設定値に基づいて確率的に決定している。
【0017】
続いてステップS4において、全個体の染色体を突然変異率に基づいて変異させる。
図17は、2値化表現した染色体について、突然変異させる処理を示す。図17中において所定部位(太枠部位)が突然変異させる部位であり、この部位について、図17中(A)から(B)への変化として示すように、当該部位の値(“1”又は“0”)を変更する。
【0018】
また、染色体の突然変異は、そのように所定の位置について行っているが、その突然変異させる位置を突然変異率と呼ばれる設定値に基づいて確率的に決定している。
続いてステップS5において、各個体の適合度計算を行う。
適合度計算は、図18に示すように、大別して2段階の処理、すなわち各個体の標準画像情報生成(ステップS11)、及び入力画像と標準画像との濃度値の相関計算(ステップS12)の処理により実行する。そして、この図18に示す処理を個体の総数(N回)だけ繰り返して行う。ここで、各個体の標準画像情報生成(ステップS11)、及び入力画像と標準画像との濃度値の相関計算(ステップS12)は次のような処理になる。
【0019】
先ず、各個体の標準画像情報生成(ステップS11)は次のような処理になる。
ここで、下記(3)式〜(6)式により、後述する入力画像と比較対象になる左側白線及び右側白線の画像を白線パラメータを用いて得ることができる。
【0020】
【数2】
【0021】
すなわち、y座標の各位置yiにおいて、左側白線及び右側白線の輪郭を形成するx座標の4点{xlli,xlri,xrli,xrri}を計算する(図19参照)。ここで、この4点の位置は左右白線それぞれの左右端を表すものとなり、すなわちそれら4点の各位置での1画素外側(xlliの左側、xlriの右側、xrliの左側、xrriの右側)が路面(非白線部分)を示すものとなる。そして、この結果を利用して、例えば白線部分を白とし、路面部分を黒とした画像を得ることができる。すなわち、白線部分と路面部分との境界で、画素が白から黒に変化する画像になる。このような画像を標準画像と呼ぶ。
【0022】
このような処理により、画像を濃度値として得ることができる。例えば、図20に示すように標準画像の濃度値表として得ることができる。この濃度値表は、画像中の各位置(x,y)における濃度値tiを、白(白線)の場合“1”として示し、黒(路面)の場合“0”として示している。
以上が各個体の標準画像情報生成(ステップS11)の処理になる。
【0023】
そして、このように生成した標準画像の濃度値と入力画像の濃度値との相関計算(ステップS12)を次のように行う。
標準画像の濃度値と入力画像の濃度値との相関値Rは下記(7)式で示される。
【0024】
【数3】
【0025】
ここで、f[k,l]は入力画像の濃度値である。kはx座標位置であり、lはy座標位置である。また、tjはx座標位置xj、y座標位置yjでの標準画像の濃度値である。また、(7)式の右辺中の上付きバーの値は平均値を示す。
この相関値Rは、標準画像(推定画像)の白線パターンと入力画像(実際の画像)の白線パターンとが一致する度合いが大きくなれば、その値が大きくなり、標準画像(推定画像)の白線パターンと入力画像(実際の画像)の白線パターンとが完全に一致した場合には、その値が最大値となる。
【0026】
そして、(7)式で得た濃度値の相関値Rを遺伝アルゴリズムにおける適合度に置き換える。これにより、適合度は、標準画像(推定画像)の白線パターンと入力画像(実際の画像)の白線パターンとが一致する度合いが高ければ、その値が大きくなり、標準画像(推定画像)の白線パターンと入力画像(実際の画像)の白線パターンとが完全に一致した場合には、その値が最大値となる。
【0027】
以上のように各個体の適合度計算を行う。
なお、前述のステップS1では、このような適合度の計算を初期個体について行っていることになる。
続いてステップS6において、実用解と見なせるものがあるか否かを判定する。例えば、前記(7)式の相関値Rが所定値以上の場合、実用解があると判定して、ステップS7に進む。一方、前記(7)式の相関値Rが所定値未満の場合、実用解がないと判定して、再びステップS2以降の処理、すなわち次世代を個体の選択の処理(前記ステップS2)、交叉処理(前記ステップS3)、変異処理(前記ステップS4)、適合度計算(前記ステップS5)、そして当該実用解判定処理(ステップS6)を行う。
【0028】
ステップS7では、前記ステップS6で得た実用解を解とする。すなわち、前記(7)式により得た相関値Rが所定値以上となった場合の個体の白線情報(白線パラメータ){Ak,Bk,Ck,Dk,Hk,WLk,WRk}を解とする。そして、この白線情報(白線パラメータ){Ak,Bk,Ck,Dk,Hk,WLk,WRk}により規定される白線に基づいて、車線を認識する。
【0029】
遺伝アルゴリズムがパラメータの最適化に有効である理由の詳細はここでは立ち入らないが、以上のような処理の過程で、複数の個体の中から適合度が高い(本例では、実際の車線区分線とのパターンマッチング度が高い)個体が最終的に生成される。そして、そのように推定した7つの未知パラメータが実際の車線に最も似ている車線を推定するパラメータとなる。
【0030】
以上より、最終的に推定した7つの未知パラメータから得られる標準画像の白線パターンと入力画像の白線パターンとが一致するため、遺伝アルゴリズムを取り込んだ車線区分線の検出技術(パターンマッチング技術)は、新たなパターンマッチング手法とみなすことができる。
【0031】
【非特許文献1】
長尾智晴,「進化的画像処理」,昭晃堂,2002年発行
【非特許文献2】
安居院猛,長尾智晴著,「C言語による画像処理入門」,昭晃堂,2000年発行
【0032】
【発明が解決しようとする課題】
前記車線区分線検出と遺伝アルゴリズムとを単純に結びつけてパターンマッチングの処理を構築した場合、遺伝アルゴリズムでは、車線区分線検出で使用する未知パラメータ7つについて処理することになる。例えば、各パラメータがそれぞれx通り存在すれば、当該パラメータについて可能な組み合わせはx7通りとなり、遺伝アルゴリズムでは、このようなパラメータの組み合わせを前提に処理するようになる。このようなことから、遺伝アルゴリズムによる処理は、未知パラメータが多くなるに従い、演算時間が長くなる傾向になると言える。よって、一度に扱う未知パラメータが多ければ最適化問題を解く時間がかかり、これがリアルタイム処理に適用する場合に問題となる。特に、車線区分線検出では、短時間で車線区分線を検出していく必要があるので、リアルタイム処理に合わせた遺伝アルゴリズムによる処理が実現できることが望まれる。
【0033】
そこで、本発明は、前述の問題に鑑みてなされたものであり、処理時間を短くして車線区分線を検出することができる車線認識装置の提供を目的とする。
【0034】
【課題を解決するための手段】
前述の問題を解決するために、本発明に係る車線認識装置は、車両の周囲画像を取得するとともに、車線区分線を複数のパラメータを用いて推定し、その推定した車線区分線と前記周囲画像中の車線区分線とを比較して、その比較結果に基づいて得た車線区分線から車線を認識する車線認識装置である。この車線認識装置は、複数のパラメータのうちの一部のパラメータを可変にして車線区分線の第1所定部分を第1推定手段により推定し、前記第1推定手段が推定した車線区分線の第1所定部分と前記画像取得手段が取得した前記周囲画像中の車線区分線の第1所定部分とを第1比較手段により比較し、前記第1比較手段の比較結果に基づいて、前記一部のパラメータを固定するとともに、前記複数のパラメータのうちの他のパラメータを可変にして車線区分線の第2所定部分を第2推定手段により推定し、前記第2推定手段が推定した車線区分線の第2所定部分と前記周囲画像中の車線区分線の第2所定部分とを第2比較手段により比較し、前記第2比較手段の比較結果に基づいて車線を車線認識手段により認識する。
【0035】
すなわち、前記一部及び他のパラメータを用いて車線区分線のそれぞれ所定部分を順次推定して、その推定した前記所定部分を用いて実際の撮像画像中の所定部分との比較を行い、最終的に全体の車線区分線を特定している。
【0036】
【発明の効果】
本発明によれば、前記一部及び他のパラメータを用いて車線区分線のそれぞれ所定部分を順次推定することで、全体のパラメータを用いて車線区分線を推定する場合と比較し、車線区分線の検出処理時間を短くすることができる。
【0037】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照しながら詳細に説明する。
図1は、実施の形態の車両構成を示す。この図1に示すように、車両前方を撮像するカメラ11と、カメラ11の撮像信号を処理する処理部12とが車両10に搭載されている。このカメラ11と処理部12とが本発明の車線認識装置を構成する。
【0038】
図2は、処理部12における車線認識の処理手順を示す。以下、その詳細を説明する。
先ずステップS21において、車両前方の画像を取り込む。具体的には、所定周期でカメラ11が車両前方を撮影し、カメラ11が撮像した車両前方の撮像画像を処理部12が所定周期で読み込む。
【0039】
続いてステップS22において、前記ステップS21で読み込んだ撮像画像(入力画像)中から車線区分線を効率よく検索するために探索領域を設定する。具体的には、図3に示すように、左側白線用及び右側白線用として探索領域ARL,ARRをそれぞれ設定する。ここで、探索領域ARL,ARRのx座標についての中心位置を例えば下記(8)式及び(9)式として与える。
【0040】
【数4】
【0041】
(8)式が左側白線についての探索領域ARLのx座標上についての中心位置を示し、(9)式が右側白線についての探索領域ARRのx座標についての中心位置を示す。この(8)式及び(9)式では、前記中心位置を白線内側エッジ位置(白線と自車線側路面(非白線部分)との境界)においている。なお、(8)式及び(9)式中の各変数は前記(1)式及び(2)式に従う。
【0042】
また、探索領域ARL,ARRの幅(前記中心位置からx方向の両端までの長さ)は、効率よく車線区分線を探索できるような所定幅であることが好ましく、例えば特開2000−36037号公報で開示されている技術を用いる。ここではその説明は省略する。
続いてステップS23において、左右白線内側エッジ線のパターンマッチングを行う。
【0043】
具体的には、左右白線と自車線側路面との境界が作るエッジ線(白線の内側エッジ線)のパターンマッチングを遺伝アルゴリズムを適用して実行する。図4は、遺伝アルゴリズムを適用したパターンマッチングの処理手順を示す。
先ずステップS31において、N個の初期個体集合生成及び各個体の適合度計算を行う。
【0044】
遺伝アルゴリズムを適用して、先ず個体を複数個用意し、そのように複数個用意した個体それぞれに、パラメータ{Ak,Bk,Ck,Dk,Hk}を記憶(保持)させる。
ここで、添え字kは各個体を識別する番号になる。また、パラメータ{Ak,Bk,Ck,Dk,Hk}は、前記(1)式及び(2)式中の{A,B,C,D,H}に相当する。
【0045】
また、従来例としての説明では、白線パラメータを{Ak,Bk,Ck,Dk,Hk,WLk,WRk}としているが、実施の形態では、その従来の白線パラメータ{Ak,Bk,Ck,Dk,Hk,WLk,WRk}との比較で左右白線の幅を示すWL,WRがないことに注意する。このようなことから、従来例における説明内容と区別するため、実施の形態で定義するこれら5つのパラメータ{Ak,Bk,Ck,Dk,Hk}を道路パラメータと呼ぶことにする。よって、後述する適合度はこの道路パラメータの関数で定義されるようになる。
【0046】
また、適合度計算では、一般に用いられる濃度値の相関を用いていており、この点については概略従来例における説明内容と同じである。しかし、詳細では異なっており、その適合度計算については後段のステップS35でさらに詳述する。
また、この遺伝アルゴリズムによるパターンマッチングを実現するシステムが、画像を所定サンプリングで取り込み、連続処理により実現されていることを利用して、パラメータの初期値を、今回の処理の前の遺伝アルゴリズムによるパターンマッチングで得た後述の実用解(具体的には実用解のパラメータ)に基づいて設定してもよい。具体的には、前回処理で得た実用解であるパラメータ{Ak,Bk,Ck,Dk,Hk}の値そのもの、或いはそれに近い値にパラメータ初期値を設定する。すなわち、初期値の染色体を実用解に対応する染色体そのものに、又はその実用解に対応する染色体に類似の染色体に設定する。
【0047】
続いてステップS32において、前記ステップS31で得た適合度に基づいて、N個の個体の中から重複を許して、N個の次世代の個体を選択する。このとき、各個体の適合度に基づいて、N個の個体の中から重複を許して、N個の次世代の個体を選択する。例えば、個体の適合度に比例した確率でN個の次世代の個体を選択する。すなわち、適合度が高いほど、当該適合度が高い個体を重複して選択する。
【0048】
続いてステップS33において、個体を2つずつランダムに組み合わせて両親とし、染色体を交叉させて子孫を作り、両親と入れ替える。この染色体及び染色体を交叉させて子孫を作る手順については、前述の従来例における説明内容と同じである。
しかし、白線パラメータ{Ak,Bk,Ck,Dk,Hk,WLk,WRk}により染色体が構成されているのではなく、道路パラメータ{Ak,Bk,Ck,Dk,Hk}により染色体を構成しており、よって次のような処理を行う点が従来における説明部分と異なる。
【0049】
すなわち、道路パラメータ{Ak,Bk,Ck,Dk,Hk}が染色体とされて、染色体とされた道路パラメータ{Ak,Bk,Ck,Dk,Hk}が、媒体である個体に保持される(図15中(A)及び(B)参照)。そして、染色体(道路パラメータ)は、2値化されて前記個体に保持される(図15中(C)参照)。その後、各個体同士(両親)A,Bのその染色体を交叉させて、子孫A´,B´を生成する。そして、両親A,B(両親A,Bの染色体)を、その生成した子孫A´,B´(子孫A´,B´の染色体)に置き換える(図16参照)。
【0050】
さらに、今回の処理の前の遺伝アルゴリズムによるパターンマッチングで得た実用解(具体的にはパラメータ)に対応する染色体に対して、交叉により生成してみた染色体が異常でない範囲にある場合に、当該生成した染色体を有効なものとしている。すなわち例えば、そのパラメータと前回処理で得た実用解であるパラメータとの差或いは変動が所定値以上となるような子孫が生まれないようにする。つまり、交叉により生成したパラメータAが前回値のパラメータAに対して大きく異なる場合等には、その交叉を許可しないようにする。これにより、交叉で生成した染色体に異常がある限り、すなわち前回値のパラメータに対して今回値のパラメータが所定値以上の変動をみせている限り、その染色体をもつ子孫の生成を確定することなく、交叉の処理を繰り返す。
【0051】
続いてステップS34において、全個体の染色体を突然変異率に基づいて変異させる。ここでの変異処理も、従来例における説明内容と同じである。
また、今回の処理の前の遺伝アルゴリズムによるパターンマッチングで得た実用解(具体的にはパラメータ)に対応する染色体に対して、変異させて生成してみた染色体が異常でない範囲にある場合に、当該生成した染色体を有効なものとしてもよい。すなわち例えば、そのパラメータと前回処理で得た実用解であるパラメータとの差或いは変動が所定値以上となるような子孫が生まれないようにする。つまり、変異させて生成したパラメータAが前回値のパラメータAに対して大きく異なる場合等には、その変異させる処理を許可しないようにする。これにより、変異させて生成した染色体に異常がある限り、すなわち前回値のパラメータに対して今回値のパラメータが所定値以上の変動をみせている限り、変異処理を確定させることなく、変異の処理を繰り返す。
【0052】
続いてステップS35において、各個体の適合度計算を行う。この適合計算も従来例における説明内容と同じであり、前記図18に示したように、大別して2段階の処理、すなわち各個体の標準画像情報生成(前記ステップS11)、及び入力画像と標準画像との濃度値の相関計算(前記ステップS12)の処理により実行する。そして、この図18に示す処理を個体の総数だけ繰り返して行う。
【0053】
具体的には、各個体の標準画像情報生成(前記ステップS11)は次のような処理になる。
ここで、下記(10)式及び(11)式により、入力画像と比較対象になる左側白線及び右側白線に関する画像(2本の線)を道路パラメータを用いて得ることができる。
【0054】
【数5】
【0055】
ここで、(10)式が左側白線に関する画像(具体的には内側エッジ線)を得るための式であり、(11)式が右側白線に関する画像(具体的には内側エッジ線)を得るための式である。
すなわち、図5に示すように、y座標の各位置yiにおいて、左側白線及び右側白線の輪郭を形成するx座標の2点{xlri,xrli}を計算する。ここで、2点の位置は左右白線それぞれの内側端を表すものとなり、すなわちそれら2点の各位置での1画素内側(xlriの右側、xrliの左側)が路面を示すものとなる。
【0056】
そして、この結果を利用して、例えば白線部分を白とし、路面部分を黒とした画像を得ることができる。すなわち、白線部分と路面部分との境界で、画素が白から黒に変化する画像を得ることができる。この画像が標準画像になる。
また、計算領域を所定の領域に絞り、そのように絞り込んだ領域について、各位置yi毎に2点{xlri,xrli}を計算する。画面の全画素数が非常に膨大な量であることから、各個体毎に画面の全画素分について計算する、すなわち画面のy座標の位置yiの全てについてx座標の2点{xlri,xrli}を計算するのは、リアルタイム処理では得策とはいえない。このようなことから、計算領域を所定の領域に絞る。
【0057】
例えば、任意位置yiの添え字iを例えば1〜50として、任意位置yi={100,101,・・・,148,149}について計算する。或いは、複数の任意位置yi={100,102,104,・・・}として、所定間隔をあけて計算をする。例えば、前記ステップS22では、撮像画像(入力画像)中に探索領域を設定し、その設定した探索領域内で実際の車線区分線を探索している。このようなことから、前記任意位置yiをそのような探索領域内の位置に限定してもよい。
【0058】
そして、各位置yi毎に得た2点{xlri,xrli}の値から、左側白線及び右側白線の2本の白線について、それぞれ幅方向における白線部分と非白線部分との境界部分(内側の境界部分)を示すものとして、4点の画素を得る。
以上のような処理により、図6に示すような標準画像の濃度値表を得ることができる。この濃度値表は、各位置(x,y)における濃度値tiを、白(白線)の場合“1”とし、黒(路面)の場合“0”としている。
【0059】
以上が各個体の標準画像情報生成(ステップS11)の処理になる。
そして、このように生成した標準画像の濃度値と入力画像の濃度値との相関計算(ステップS12)を次のように行う。
標準画像の濃度値と入力画像の濃度値との相関値Rを前記(7)式により算出する。ここで、入力画像の濃度値は前記探索領域内で得ている値である。
【0060】
そして、前記(7)式で得た濃度値の相関値Rを、遺伝アルゴリズムにおける適合度に置き換える。これにより、適合度は、標準画像(推定画像)の白線パターン(内側エッジ)と入力画像(実際の画像)の白線パターン(内側エッジ)とが一致する度合いが大きくなれば、その値が大きくなり、標準画像(推定画像)の白線パターン(内側エッジ)と入力画像(実際の画像)の白線パターン(内側エッジ)とが完全に一致した場合には、その値が最大値となる。
【0061】
以上のようにして各個体の適合度計算を行う。
なお、前述したように複数の任意位置yiを{100,102,104,・・・}として、所定間隔をあけて計算しているような場合もある。このような場合には、対応するy座標位置(図6でいえば行)を削除して(無視して)、相関値Rを得てもよい。
【0062】
また、前述のステップS31では、このような適合度の計算を初期個体について行っていることになる。
続いてステップS36において、実用解と見なせるものがあるか否かを判定する。例えば、前記(7)式の相関値Rが所定値以上の場合、実用解があると判定して、ステップS37に進む。
【0063】
また、例えば相関値Rの計算に用いる画素値の対象数を制限するようにしてもよい。例えば、所定数以下の画素値を対象として計算するようにしたり、逆に所定数以上の画素値を対象として計算するようにしたりである。具体的には、前記変数jの総数が所定値以上の条件を課したりする。
一方、前記(7)式の相関値Rが所定値未満の場合、実用解がないと判定して、再びステップS32以降の処理、すなわち次世代を個体の選択の処理(前記ステップS32)、交叉処理(前記ステップS33)、変異処理(前記ステップS34)、適合度計算(前記ステップS35)、そして当該実用解判定処理(ステップS36)を行う。
【0064】
続いてステップS37において、前記ステップS36で得た実用解を解とする。すなわち、前記(7)式により得た相関値Rが所定値以上となった場合の個体の白線情報(道路パラメータ){Ak,Bk,Ck,Dk,Hk}を解とする。
ここで、車線区分線を検出するにはパラメータ{Ak,Bk,Ck,Dk,Hk,WLk,WRk}が必要であるところ、この段階で、そのパラメータのうちの一部のパラメータ{Ax,Bx,Cx,Dx,Hx}に基づいて前記解を得ているにすぎない。すなわち、車線区分線の一部構成部分である内側エッジ線を検出しただけであり、さらには、そのようにして検出した内側エッジ線が真の値であるとも言いきれない。このようなことから、このステップS37時点で得た解を仮の解にする。
【0065】
以上がステップS23における左右白線内側エッジ線のパターンマッチングである。
続いてステップS24において、左右白線外側エッジ線のパターンマッチングを行う。このステップS24により、最終的に車線区分線の検出がなされる。また、前記仮の解としての内側エッジ線も真の内側エッジ線であることの確認がなされる。
【0066】
ここで、前記道路パラメータ{Ak,Bk,Ck,Dk,Hk}を固定し、未知数をWL,WRとして、左右白線の外側エッジ線のパターンマッチングを遺伝アルゴリズムを用いて実行する。図7は、遺伝アルゴリズムを適用したその処理手順を示す。
先ずステップS41において、N個の初期個体集合生成及び各個体の適合度計算を行う。ここでは、複数個の個体それぞれに、パラメータ(以下、白線幅パラメータという。){WLk,WRk}を記憶させる。ここで、添え字kは各個体を識別する番号になる。なお、適合度の計算については、後段のステップS45にて詳述する。
【0067】
続いてステップS42において、前記ステップS41で得た適合度に基づいて、N個の個体の中から重複を許して、N個の次世代の個体を選択する。このとき、各個体の適合度に基づいて、N個の個体の中から重複を許して、N個の次世代の個体を選択する。例えば、個体の適合度に比例した確率でN個の次世代の個体を選択する。すなわち、適合度が高いほど、当該適合度が高い個体を重複して選択する。
【0068】
続いてステップS43において、個体を2つずつランダムに組み合わせて両親とし、染色体を交叉させて子孫を作り、両親と入れ替える。この染色体及び染色体を交叉させて子孫を作る手順については、前述の従来例における説明内容と同じである。
しかし、ここでは白線幅パラメータ{WL,WR}により染色体を構成しているので、次のような処理を行う。
【0069】
すなわち、白線幅パラメータ{WL,WR}が染色体とされて、染色体とされた白線幅パラメータ{WL,WR}が、媒体である個体に保持される(図15中(A)及び(B)参照)。そして、染色体(白線幅パラメータ)は、2値化されて前記個体に保持される(図15中(C)参照)。その後、各個体同士(両親)A,Bのその染色体を交叉させて、子孫A´,B´を生成する。そして、両親A,B(両親A,Bの染色体)を、その生成した子孫A´,B´(子孫A´,B´の染色体)に置き換える(図16参照)。
【0070】
また、ここでは、WL,WRが白線幅であることを考慮して、一般的な値(一般的な白線幅)から大きくずれるような子孫が生まれないようにしても良い。例えば、交叉で生成した染色体に異常がある限り、すなわち一般的な値(一般的な白線幅)からWL,WRが大きくずれている限り、その染色体をもつ子孫の生成を確定することなく、交叉の処理を繰り返す。
【0071】
続いてステップS44において、全個体の染色体を突然変異率に基づいて変異させる。ここでの変異処理も、従来例における説明内容と同じである。
また、ここでは、WL,WRが白線幅であることを考慮して、一般的な値(一般的な白線幅)から大きくずれるような染色体が生成されないようにしても良い。例えば、変異させて生成した染色体に異常がある限り、すなわち一般的な値(一般的な白線幅)からWL,WRが大きくずれている限り、変異処理を確定させることなく、変異の処理を繰り返す。
【0072】
続いてステップS45において、各個体の適合度計算を行う。この適合計算も従来例における説明内容と同じであり、前記図18に示したように、大別して2段階の処理、すなわち各個体の標準画像情報生成(前記ステップS11)、及び入力画像と標準画像との濃度値の相関計算(前記ステップS12)の処理により実行する。そして、この図18に示す処理を個体の総数だけ繰り返して行う。 具体的には、各個体の標準画像情報生成(前記ステップS11)は次のような処理になる。
【0073】
ここで、下記(12)式及び(13)式により、入力画像と比較対象になる左側白線及び右側白線に関する画像(2本の線)を得ることができる。ここでは、パラメータとして、前記ステップS23で得た道路パラメータ{Ak,Bk,Ck,Dk,Hk}と前記ステップS44で得た白線幅パラメータ{WL,WR}とを用いる。
【0074】
【数6】
【0075】
ここで、(12)式が左側白線に関する画像(具体的には外側エッジ線)を得るための式であり、(13)式が右側白線に関する画像(具体的には外側エッジ線)を得るための式である。
すなわち、図8に示すように、y座標の各位置yiにおいて、左側白線及び右側白線の輪郭を形成するx座標の2点{xlli,xrri}を計算する)。ここで、2点の位置は左右白線それぞれの外側端を表すものとなり、すなわちそれら2点の各位置での1画素内側(xlliの左側、xrriの右側)が路面を示すものとなる。
【0076】
そして、この結果を利用して、例えば白線部分を白とし、路面部分を黒とした画像を得る。すなわち、白線部分と路面部分の境界で、画素が白から黒に変化する画像を得る。この画像が標準画像になる。
また、計算領域を所定の領域に絞り、そのように絞り込んだ領域について、各位置yi毎に2点{xlli,xrri}を計算する。
【0077】
例えば、任意位置yiの添え字iを例えば1〜50として、任意位置yi={100,101,・・・,148,149}について計算する。或いは、複数の任意位置yi={100,102,104,・・・}として、所定間隔をあけて計算をする。
さらに、各位置yi毎に得た2点{xlli,xrri}の値から、左側白線及び右側白線の2本の白線について、それぞれ幅方向における白線部分と非白線部分との境界部分(外側の境界部分)を示すものとして、4点の画素を得る。
【0078】
以上のような処理により、図9に示すような標準画像の濃度値表を得ることができる。この濃度値表は、各位置(x,y)における濃度値tiを、白の場合“1”とし、黒の場合“0”としている。
以上が各個体の標準画像情報生成(ステップS11)の処理になる。
そして、このように生成した標準画像の濃度値と入力画像の濃度値との相関計算(ステップS12)を次のように行う。
【0079】
標準画像の濃度値と入力画像の濃度値との相関値Rを前記(7)式により算出する。そして、前記(7)式で得た濃度値の相関値Rを、遺伝アルゴリズムにおける適合度に置き換える。これにより、適合度は、標準画像(推定画像)の白線パターン(外側エッジ)と入力画像(実際の画像)の白線パターン(外側エッジ)とが一致する度合いが大きくなれば、その値が大きくなり、標準画像(推定画像)の白線パターン(外側エッジ)と入力画像(実際の画像)の白線パターン(外側エッジ)とが完全に一致した場合には、その値が最大値となる。
【0080】
続いてステップS46において、実用解と見なせるものがあるか否かを判定する。例えば、前記(7)式の相関値Rが所定値以上の場合、実用解があると判定して、ステップS47に進む。
また、例えば相関値Rの計算に用いる画素値の対象数を制限するようにしてもよい。例えば、所定数以下の画素値を対象として計算するようにしたり、逆に所定数以上の画素値を対象として計算するようにしたりである。具体的には、前記変数jの総数が所定値以上の条件を課したりする。
【0081】
また、一般道の白線幅はおおよそわかっているので、白線幅パラメータ{WL,WR}がそのような一般道の白線幅に対して明らかにずれているとき、その白線幅パターンを用いて得た解は実用解とみなさないようにしてもよい。
一方、前記(7)式の相関値Rが所定値未満の場合、実用解がないと判定して、再びステップS42以降の処理、すなわち次世代を個体の選択の処理(前記ステップS42)、交叉処理(前記ステップS43)、変異処理(前記ステップS44)、適合度計算(前記ステップS45)、そして当該実用解判定処理(ステップS46)を行う。
【0082】
続いてステップS47において、前記ステップS46で得た実用解を解とする。すなわち、前記(7)式により得た相関値Rが所定値以上となった場合の個体の白線情報(白線幅パラメータ){WLk,WRk}を解とする。そして、前記ステップS23で得た実用解である道路パラメータ{Ax,Bx,Cx,Dx,Hx}と合わせ、最終的な実用解として、パラメータ{Ax,Bx,Cx,Dx,Hx,WLx,WRx}を得る。このように、最終的な実用解として得たパラメータ{Ax,Bx,Cx,Dx,Hx,WLx,WRx}は、車線区分線を構成する外側及び内側のエッジ線を表現するパラメータになる。
【0083】
このようなパラメータに基づいて、最終的に車線区分線を検出して、自車両が走行している車線の認識をする。
動作の概略は次のようになる。
カメラ11が車両前方を撮影し、カメラ11が撮像した車両前方の撮像画像を処理部12が読み込む(前記ステップS21)。その一方で、道路パラメータ{Ak,Bk,Ck,Dk,Hk}を染色体として、その染色体を用いて、少なくとも1度、所定の交叉や変異させて新たな染色体を生成する(前記ステップS31〜ステップS34)。そして、その生成した染色体に基づいて白線の内側エッジ線の画像を得る(前記ステップS35)。そして、このようにして得た白線の内側エッジ線の画像と、前記撮像画像中の実際の白線の内側エッジ線の画像とを濃度値について相関を求めて、その相関値が所定値以上である場合に、そのときの染色体、すなわち道路パラメータを実用解として得る(前記ステップS36、ステップS37)。なお、このとき、相関を求めるための画像の比較は、前記探索領域内について行っている。
【0084】
このように道路パラメータによる実用解を得た場合、続いて白線幅パラメータ{WLk,WRk}を染色体として、同様な処理を行う。すなわち、白線幅パラメータ{WLk,WRk}を染色体として、その染色体を用いて、少なくとも1度、所定の交叉や変異させて新たな染色体を生成する(前記ステップS41〜ステップS44)。そして、その生成した染色体に基づいて白線の外側エッジ線の画像を得る(前記ステップS45)。そして、このようにして得た白線の外側エッジ線の画像と、前記撮像画像中の実際の白線の外側エッジ線の画像とを濃度値について相関を求めて、その相関値が所定値以上である場合に、そのときの染色体、すなわち道路パラメータを実用解として得る(前記ステップS46、ステップS47)。なお、このとき、相関を求めるための画像の比較は、前記探索領域内について行っている。
【0085】
以上のようにして最終的に実用解としてパラメータ{Ax,Bx,Cx,Dx,Hx,WLx,WRx}を得て、このパラメータ{Ax,Bx,Cx,Dx,Hx,WLx,WRx}に基づいて、最終的に車線区分線を検出して、自車両が走行している車線の認識をする。
次に効果を説明する。
【0086】
遺伝アルゴリズムをパターンマッチングに適用したときに得られる大局的な車線区分線検出の長所を保持しつつ、その検出のための演算時間を短縮することができる。
すなわち、前述したように本発明を適用した遺伝アルゴリズムでは、車線区分線の検出に必要なパラメータを二段階に分けて、最適化している。具体的には、車線区分線の内側エッジ線を特定する5つのパラメータについて最適化した後、車線区分線の外側エッジ線或いは白線幅を特定する2つのパラメータについて最適化している。これに対して、遺伝アルゴリズムを単に車線区分線検出に適応するような場合には、一度に7つのパラメータを最適化する必要があった。よって、各パラメータがそれぞれx通り存在すると、最適化においてそのパラメータの組み合わせはx7となり、一方で、本発明を適用した場合、第1段階の最適化におけるその組み合わせはx5となり、第2段階の最適化におけるその組み合わせはx2となる。例えば、遺伝アルゴリズムが全てのパターンについて演算するとした場合、前者では、x7の演算ステップが必要になり、その一方で、後者(本発明適用例)ではx5とx2との加算回数の演算ステップで済むようになる。このように、明らかに大幅な処理時間の短縮を図ることができる。
【0087】
また、前記大局的な車線区分線検出をすることができる効果は、ノイズに強くなるということと、車線区分線の誤検出或いは車線の誤認識を防止できるということである。
ここで、図10を用いて、遺伝アルゴリズムを適用していない従来手法の例を説明する。図10に示すように、従来手法では、画像中に左側及び右側にそれぞれ5つの白線探索領域(以下、ウインドウという。)WL1,WL2,WL3,WL4,WL5,WR1,WR2,WR3,WR4,WR5を設定し、その設定した各ウインドウWL1〜WL5,WR1〜WR5で独自に白線候補を検出し、最後にそれら各ウインドウWL1〜WL5,WR1〜WR5で得た候補に基づいて白線パラメータ或いは道路パラメータを推定していた。そして、それらウインドウWL1〜WL5,WR1〜WR5を用いた白線候補の検出は、他のウインドウの情報を利用しない局所的な処理により行っていたため、いずれかのウインドウで誤認識(誤検出)が発生する可能性があった。言い換えれば、一部のウインドウで誤認識(誤検出)があっても、その結果が反映されない場合があった。
【0088】
一方、本発明を適用して車線区分線検出を遺伝アルゴリズムで行う場合、先ず未知パラメータ(道路パラメータ)を仮決めしてから、左右白線の内側のパターンマッチング度(適合度)を画面全体で計算する大局的処理を行っている。これにより、画面にノイズが存在していた場合には、それに起因してパラメータの適合度が低くなるので、その結果として、車線区分線を誤認識(誤検出)しなくなることは明白である。
【0089】
また、左右白線の内側(外側)エッジ線のパターンマッチングは、前記(1)式及び(2)式等として与えた画像(エッジ線)に基づいて行っている。すなわち、パラメータを用いた近似式により直線又は曲線として境界部分を推定している。このような処理は、前記(1)式及び(2)式等をマッチングの条件としており、これは実空間でエッジ線候補が平行であることを要求することと等価といえる。この結果、実空間で車線幅(例えば3.75m)程度離れて平行に描かれている2本のエッジ線を、車線区分線と非車線区分線との境界(エッジ線)とみなすようになるので、これにより合理的な車線区分線検出を実現しつつ、その誤認識(誤検出)を大幅に低下させることができる。
【0090】
さらに、内側エッジ線を仮決めし、その仮決めに用いた関連するパラメータを固定して、その後、左右白線幅(WL,WR)をパターンマッチングすることは、白線を構成する内側のエッジ線と外側エッジ線とが平行であることを要求することと等価である。よって、路面上の白線以外の表示物でそのような要求を満たすケースが非常に少ないことに照らせば、そのような要求を前提とする車線区分線検出手法は、検出対象である車線区分線の性質を利用した手法になる。
【0091】
また、図6等に示す濃度値表からも明らかなように、標準画像(推定画像)を示す画素値を一定のパターン(“0”及び“1”が所定の配列)として得ることができる。このようなことから、そのようなパターン以外になる標準画像を処理に用いないことにすれば、例えばエラーとして扱うようにすれば、結果として車線区分線の誤検出を防止することができるようになる。
【0092】
また、前述したように、今回の処理の前の遺伝アルゴリズムによるパターンマッチングで得た実用解を基準にして、すなわち経験を考慮して、初期の染色体を設定し、或いは交叉又は変異による染色体を生成している。これにより、結果として、遺伝アルゴリズムによるパラメータの最適化の処理に一定の制限を加えている。これにより、遺伝アルゴリズムより早期に実用解を導き出すことを実現して、リアルタイム処理可能な車線区分線検出を実現することができる。
【0093】
すなわち、今回の処理の前の遺伝アルゴリズムによるパターンマッチングで得た実用解を基準にすることなく、すなわち経験を考慮することなく、初期の染色体を設定し、或いは交叉又は変異により染色体を生成することとすれば、遺伝アルゴリズムが実用解(真値)に収束させるまでの時間が長くなる場合があり、これを防止することができる。
【0094】
また、前述したように、探索領域を設定して、その探索領域内についてパターンマッチングを行い適合度を得ている。これにより、探索領域外のパターンマッチングによる適合度(相関)を低くして、探索領域内での適合度を優先的に高くする処理と等価な処理を行っている。これにより、結果として車線区分線を誤検出してしまうことを防止している。
【0095】
以上、本発明の実施の形態について説明した。しかし、本発明は、前述の実施の形態として実現されることに限定されるものではない。
すなわち、前述の実施の形態では、先ず一部のパラメータを可変として内側エッジ線を特定して、その後、その一部のパラメータを固定するとともに、他のパラメータを可変にして外側エッジ線を特定している。しかし、これに限定されないことはいうまでもない。例えば、その逆に、先ず一部のパラメータを可変として外側エッジ線を特定して、その後、その一部のパラメータを固定するとともに、他のパラメータを可変にして内側エッジ線を特定してもよい。この場合、前記(1)式及び(2)式を(14)式及び(15)式に変更する。
【0096】
【数7】
【0097】
ここで、Wは車線幅を示す値である。具体的には、Wは左側白線外側から右側白線外側までの距離を示す値である。また、ALは、左側白線外側を基準にした値であり、すなわちALが0の場合、ALは左側白線の最外側位置を示す値となり、ALがWL(左側白線幅)の場合、ALは左側白線の最内側位置を示す値となる。ARは、右側白線外側を基準にした値であり、すなわちARが0の場合、ARは右側白線の最外側位置を示す値となり、ARがWR(右側白線幅)の場合、ARは右側白線の最内側位置を示す値となる。
【0098】
そして、外側エッジ線についての濃度値表(前記図9)が、下記(16)及び(17)式に基づいて得られる。
【0099】
【数8】
【0100】
ここで、(16)式が左側白線の外側エッジ線を得るための式であり、(17)式が左側白線の外側エッジ線を得るための式である。
また、内側エッジ線についての濃度値表(前記図6)が、下記(18)及び(19)式に基づいて得られる。
【0101】
【数9】
【0102】
ここで、(18)式が左側白線の内側エッジ線を得るための式であり、(19)式が左側白線の内側エッジ線を得るための式である。
また、前述の実施の形態では、前記(1)式や(2)式等に基づいて、パラメータを用いた近似式により直線又は曲線として車線区分線と非車線区分線との境界部分を推定した場合を説明した。しかし、これに限定されないことはいうまでもない。例えば、他の式を使用し、さらに、そのような他の式により前述の実施の形態とは異なる車線区分線の部分(内側エッジ線や外側エッジ線でない部分)を推定するようにしてもよい。
【0103】
なお、前述の実施の形態の説明において、カメラ11及び図2のステップS21の処理は、前記車両の周囲画像を取得する画像取得手段を実現しており、図4に示すステップS31〜ステップS35の処理は、前記複数のパラメータのうちの一部のパラメータを可変にして車線区分線の第1所定部分を推定する第1推定手段を実現しており、図4に示すステップS36の処理は、前記第1推定手段が推定した車線区分線の第1所定部分と前記画像取得手段が取得した前記周囲画像中の車線区分線の第1所定部分とを比較する第1比較手段を実現しており、図7に示すステップS41〜ステップS45の処理は、前記第1比較手段の比較結果に基づいて、前記一部のパラメータを固定するとともに、前記複数のパラメータのうちの他のパラメータを可変にして車線区分線の第2所定部分を推定する第2推定手段を実現しており、図7に示すステップS46は、前記第2推定手段が推定した車線区分線の第2所定部分と前記周囲画像中の車線区分線の第2所定部分とを比較する第2比較手段を実現しており、図7に示すステップS47は、前記第2比較手段の比較結果に基づいて車線を認識する車線認識手段を実現している。
【図面の簡単な説明】
【図1】本発明の実施の形態の車両構成を示す図である。
【図2】処理部の車線認識処理の処理手順を示すフローチャートである。
【図3】探索領域の設定の説明に使用した図である。
【図4】前記車線認識処理内の左右白線内側エッジ線のパターンマッチングの処理手順を示すフローチャートである。
【図5】左側白線及び右側白線の内側エッジ線を示すx座標の2点{xlri,xrli}を計算することの説明に使用した図である。
【図6】左側白線及び右側白線の内側エッジ線を示すx座標の2点{xlri,xrli}に関しての濃度値表を示す図である。
【図7】前記車線認識処理内の左右白線外側エッジ線のパターンマッチングの処理手順を示すフローチャートである。
【図8】左側白線及び右側白線の外側エッジ線を示すx座標の2点{xlli,xrri}を計算することの説明に使用した図である。
【図9】左側白線及び右側白線の外側エッジ線を示すx座標の2点{xlli,xrri}に関しての濃度値表を示す図である。
【図10】従来の車線認識手法の説明に使用した図である。
【図11】撮像画像例を示す図である。
【図12】エーミング時に決定される定数についての説明に使用した図である。
【図13】一般的に遺伝アルゴリズムの最適化の処理手順を示すフローチャートである。
【図14】遺伝アルゴリズムと車線区分線検出とを単純に組み合わせた場合の処理手順の説明に使用したフローチャートである。染色体
【図15】遺伝アルゴリズムにおける染色体と個体との関係等の説明に使用した図である。
【図16】遺伝アルゴリズムの交叉処理の説明に使用した図である。
【図17】遺伝アルゴリズムの変異処理の説明に使用した図である。
【図18】遺伝アルゴリズムにおける適合度計算の処理手順を示すフローチャートである。
【図19】左側白線及び右側白線の輪郭を示すx座標の4点{xlli,xlri,xrli,xrri}を計算することの説明に使用した図である。
【図20】左側白線及び右側白線の輪郭を示すx座標の4点{xlli,xlri,xrli,xrri}に関しての濃度値表を示す図である。
【符号の説明】
10 車両
11 カメラ
12 処理部
Claims (10)
- 車両の周囲画像を取得するとともに、車線区分線を複数のパラメータを用いて推定し、その推定した車線区分線と前記周囲画像中の車線区分線とを比較して、その比較結果に基づいて得た車線区分線から車線を認識する車線認識装置において、
前記車両の周囲画像を取得する画像取得手段と、
前記複数のパラメータのうちの一部のパラメータを可変にして車線区分線の第1所定部分を推定する第1推定手段と、
前記第1推定手段が推定した車線区分線の第1所定部分と前記画像取得手段が取得した前記周囲画像中の車線区分線の第1所定部分とを比較する第1比較手段と、
前記第1比較手段の比較結果に基づいて、前記一部のパラメータを固定するとともに、前記複数のパラメータのうちの他のパラメータを可変にして車線区分線の第2所定部分を推定する第2推定手段と、
前記第2推定手段が推定した車線区分線の第2所定部分と前記周囲画像中の車線区分線の第2所定部分とを比較する第2比較手段と、
前記第2比較手段の比較結果に基づいて車線を認識する車線認識手段と、
を備えたことを特徴とする車線認識装置。 - 前記第2推定手段は、前記第1比較手段の比較結果に基づいて、前記推定した車線区分線の第1所定部分と前記周囲画像中の車線区分線の第1所定部分とが一致している可能性が高いと判断したときに、前記一部のパラメータを固定にするとともに、前記複数のパラメータのうちの他のパラメータを可変にして車線区分線の第2所定部分を推定することを特徴とする請求項1記載の車線認識装置。
- 前記車線区分線が所定の幅を有しており、前記車線区分線の第1所定部分が、車線区分線の当該車線区分線の幅方向における非車線区分線部分との一方の境界部分であり、前記車線区分線の第2所定部分が、車線区分線の当該車線区分線の幅方向における非車線区分線部分との他方の境界部分であることを特徴とする請求項1又は2に記載の車線認識装置。
- 前記第1及び第2推定手段は、前記パラメータを用いた近似式により直線又は曲線として前記境界部分を推定していることを特徴とする請求項3記載の車線認識装置。
- パラメータを染色体とし、その染色体を保持する媒体を個体とし、その個体をN個用意し、そのN個の個体の染色体を突然変異させ、かつN個の個体の染色体同士を交叉させて新たな染色体のN個の個体を生成する遺伝アルゴリズムを構築し、
前記第1及び第2推定手段は、前記遺伝アルゴリズムに従って、前記N個の個体を用いて画像を定義し、前記車線区分線の部分を推定しており、
前記第1及び第2比較手段は、前記第1及び第2推定手段で定義される画像と実際の画像との適合度を得、
前記車線認識手段は、前記第1及び第2比較手段の画像の適合度から遺伝アルゴリズムによるパターンマッチングに従って、実用解をなすパラメータの染色体を得ることを特徴とする請求項1乃至4のいずれかに記載の車線認識装置。 - 前記染色体を経験に基づいた染色体にすることを特徴とする請求項5記載の車線認識装置。
- 前記遺伝アルゴリズムでは、初期値の染色体を保持するN個の個体を用いて、前記突然変異及び交叉を開始しており、
今回の処理の前の前記遺伝アルゴリズムによるパターンマッチングで得た前記実用解に基づいて、前記初期値の染色体を設定したことを特徴とする請求項5又は6に記載の車線認識装置。 - 前記初期値の染色体を前記実用解に対応する染色体そのものに、又はその実用解に対応する染色体に類似の染色体に設定したことを特徴とする請求項7記載の車線認識装置。
- 前記突然変異又は交叉させて生成した前記個体の染色体が、今回の処理の前の前記遺伝アルゴリズムによるパターンマッチングで得た前記実用解に対応する染色体に対して異常でない範囲にある場合に、前記第1及び第2推定手段が、当該生成した個体を用いて前記画像の定義をすることを特徴とする請求項5乃至8のいずれかに記載の車線認識装置。
- 前記周囲画像中で車線区分線の比較を行う比較領域を設定する比較領域設定手段を備え、
前記第1及び第2比較手段は、前記比較領域設定手段が設定した比較領域内では前記適合度を優先的に高くすることを特徴とする請求項5乃至9のいずれかに記載の車線認識装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003113293A JP2004318618A (ja) | 2003-04-17 | 2003-04-17 | 車線認識装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003113293A JP2004318618A (ja) | 2003-04-17 | 2003-04-17 | 車線認識装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004318618A true JP2004318618A (ja) | 2004-11-11 |
Family
ID=33473271
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003113293A Pending JP2004318618A (ja) | 2003-04-17 | 2003-04-17 | 車線認識装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004318618A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007060511A (ja) * | 2005-08-26 | 2007-03-08 | Fujitsu Ten Ltd | 物体判別装置、物体判別方法および物体判別プログラム |
JP2007329762A (ja) * | 2006-06-08 | 2007-12-20 | Fujitsu Ten Ltd | 物体候補領域検出装置、物体候補領域検出方法、歩行者認識装置、および車両制御装置 |
JP2010198119A (ja) * | 2009-02-23 | 2010-09-09 | Nissan Motor Co Ltd | 道路白線認識装置及び道路白線認識方法 |
WO2012172713A1 (ja) | 2011-06-13 | 2012-12-20 | 日産自動車株式会社 | 道路形状判定装置、車載用画像認識装置、撮像軸調整装置およびレーン認識方法 |
CN114511832A (zh) * | 2022-04-21 | 2022-05-17 | 深圳比特微电子科技有限公司 | 车道线分析方法、装置、电子设备及存储介质 |
-
2003
- 2003-04-17 JP JP2003113293A patent/JP2004318618A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007060511A (ja) * | 2005-08-26 | 2007-03-08 | Fujitsu Ten Ltd | 物体判別装置、物体判別方法および物体判別プログラム |
JP2007329762A (ja) * | 2006-06-08 | 2007-12-20 | Fujitsu Ten Ltd | 物体候補領域検出装置、物体候補領域検出方法、歩行者認識装置、および車両制御装置 |
JP2010198119A (ja) * | 2009-02-23 | 2010-09-09 | Nissan Motor Co Ltd | 道路白線認識装置及び道路白線認識方法 |
WO2012172713A1 (ja) | 2011-06-13 | 2012-12-20 | 日産自動車株式会社 | 道路形状判定装置、車載用画像認識装置、撮像軸調整装置およびレーン認識方法 |
CN114511832A (zh) * | 2022-04-21 | 2022-05-17 | 深圳比特微电子科技有限公司 | 车道线分析方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6347827B2 (ja) | 車線境界線を検出する方法、装置、およびデバイス | |
JP6421510B2 (ja) | 目標検出方法及び目標検出システム | |
KR101837407B1 (ko) | 영상 기반 표적 추적 장치 및 추적 방법 | |
WO2016210227A1 (en) | Aligning 3d point clouds using loop closures | |
EP1591959A1 (en) | Method of generating high-resolution image, digital image editing tool and computer readable medium | |
CN107424161B (zh) | 一种由粗至精的室内场景图像布局估计方法 | |
JP2012073942A (ja) | 画像処理装置、画像処理方法、および画像処理プログラム | |
JP7191823B2 (ja) | 画像から変状を検知する画像処理装置、画像処理方法及びプログラム | |
CN108171695A (zh) | 一种基于图像处理的高速公路路面检测方法 | |
JP3603836B2 (ja) | 道路白線認識装置 | |
JPWO2019064599A1 (ja) | 異常検知装置、異常検知方法、及びプログラム | |
JP2020038132A (ja) | コンクリート表面上のひび割れ特定方法、ひび割れ特定装置、ひび割れ特定システム及びプログラム | |
CN107274486A (zh) | 一种模型3d效果图的生成方法 | |
CN110175574A (zh) | 一种道路网提取方法及装置 | |
JP2016177718A (ja) | 物体検出装置、物体検出方法および情報処理プログラム | |
JP4398533B2 (ja) | 画像追跡装置及び記録媒体 | |
JP7145770B2 (ja) | 車間距離測定装置、誤差モデル生成装置および学習モデル生成装置とこれらの方法およびプログラム | |
JP2006018688A (ja) | 道路環境認識方法及び道路環境認識装置 | |
JP2004318618A (ja) | 車線認識装置 | |
JP4836065B2 (ja) | エッジトラッキング方法及びそのコンピュータプログラム | |
JP5888275B2 (ja) | 道路端検出システム、方法およびプログラム | |
KR101121777B1 (ko) | 차선 감지 방법 | |
JP4709889B2 (ja) | 移動物体監視装置 | |
JP2004013615A (ja) | 移動物体監視装置 | |
KR101982942B1 (ko) | 객체 추적 방법 및 이를 수행하는 장치들 |