(57)【特許請求の範囲】
【請求項１】
ａ．車両前方の白線を含む路面を撮像する撮像手段、
ｂ．前記撮像手段により得られた路面画像からエッジ点を検出するエッジ点検出手段、
ｃ．前記検出されたエッジ点について局所的な方向を算出するエッジ方向算出手段、
ｄ．前記検出されたエッジ点を、ハフ空間を規定する線分パラメータθ，ρの一方のパラメータが前記算出された方向を基準として所定範囲にわたって等間隔となるようにハフ変換し、よって得たデータ群を、前記エッジ点の路面画像における座標データと共に記憶する記憶手段、
ｅ．前記ハフ空間のピークを少なくとも１個抽出するピーク抽出手段、
ｆ．前記抽出されたピークを前記記憶されたデータ群の前記一方のパラメータの中のいずれかと比較して前記データ群から前記抽出されたピークに投票したデータを検索する検索手段、
および
ｇ．前記検索されたデータの座標データに基づいて前記路面画像の白線を検出する白線検出手段、
を備えたことを特徴とする車両用白線検出装置。
【請求項２】
前記検索手段は、前記抽出されたピークを前記記憶されたデータ群の前記一方のパラメータの中の前記算出された方向に相当する値と比較して前記データ群から前記抽出されたピークに投票したデータを検索することを特徴とする請求項１項記載の車両用白線検出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は車両用白線検出装置に関する。
【０００２】
【従来の技術】
近時、車両にＣＣＤカメラ（固体撮像素子型カメラ）などを搭載して高速道路などの走行路面を撮像し、得られた画像から白線（道路区分線）を検出する技術が種々提案されており、本出願人も先に特開平１１−８５９９９号公報に同種の技術を提案している。
【０００３】
この従来技術においては、画像中の濃淡度が大きく変化する点（以下「エッジ点」という）を画像全体にわたって検出し、そのエッジ点の集合をハフ変換して直線上に並んでいる点列を白線候補点列として抽出し、その抽出結果に基づいて白線を検出している。
【０００４】
具体的には、エッジ点集合をハフ変換する際にハフ空間上の投票点を座標データと共に記憶し、記憶したデータ群から白線を検出している。より具体的には、抽出されたエッジ点の水平方向と垂直方向の強度から、ハフ変換で基準とすべきエッジ方向を求め、ハフ空間を規定する線分パラメータ（ρ，θ）の中のθを、求めたエッジ方向の前後１５度程度に限定することで、演算処理を簡略化しつつ精度良く白線を検出するようにしている。
【０００５】
ここでハフ変換について概説すると、Ｘ−Ｙ（座標）平面上に点（ｘ，ｙ）を通る直線に対し、原点から下ろした垂線の長さをρ、θをその垂線とＸ軸のなす角度とする。直線を点（ｘ，ｙ）を中心に回転させると、それに伴ってρ，θも変化し、ρ，θで定義されるρ−θ平面において凸状の曲線を描く。その操作をＸ−Ｙ平面上の複数の点について行うと、ρ−θ空間上の曲線群の交点は、Ｘ−Ｙ平面上でその複数の点を通る共通の直線に対応する。
【０００６】
即ち、ρ─θ平面上の曲線群の交点を求めることによって対応する直線を検出することができる。ハフ変換は、かかる原理に基づく。上記で、「エッジ方向」はθの基準とすべき値を、「投票点」は点（ｘ，ｙ）、即ち、エッジ点について算出されたρ，θを意味する。
【０００７】
【発明が解決しようとする課題】
しかしながら、θの変化範囲をエッジ方向を中心とする前後１５度程度に限定して線分パラメータ（ρ，θ）を座標データと共に記憶するとしても、記憶すべきデータ量は依然膨大であり、全てのデータへアクセスして検索していたのでは処理時間が非常に多くなる不都合があった。
【０００８】
従って、この発明の目的は先に提案した技術を改良することにあり、検索効率を上げて記憶領域へのアクセス頻度を低減し、よって演算処理を一層簡略化して白線検出精度を向上させるようにした車両用白線検出装置を提供することにある。
【０００９】
【課題を解決するための手段】
上記した目的を達成するために、請求項１項にあっては、車両前方の白線を含む路面を撮像する撮像手段、前記撮像手段により得られた路面画像からエッジ点を検出するエッジ点検出手段、前記検出されたエッジ点について局所的な方向を算出するエッジ方向算出手段、前記検出されたエッジ点を、ハフ空間を規定する線分パラメータθ，ρの一方のパラメータが前記算出された方向を基準として所定範囲にわたって等間隔となるようにハフ変換し、よって得たデータ群を、前記エッジ点の路面画像における座標データと共に記憶する記憶手段、前記ハフ空間のピークを少なくとも１個抽出するピーク抽出手段、前記抽出されたピークを前記記憶されたデータ群の前記一方のパラメータの中のいずれかと比較して前記データ群から前記抽出されたピークに投票したデータを検索する検索手段、および前記検索されたデータの座標データに基づいて前記路面画像の白線を検出する白線検出手段を備える如く構成した。
【００１０】
抽出されたピークを記憶されたデータ群の一方のパラメータの中のいずれかと比較して前記データ群から前記抽出されたピークに投票したデータを検索し、検索されたデータの座標データに基づいて路面画像の白線を検出するように構成したので、抽出されたピークを、例えば、エッジ方向に相当する値と比較すれば、その前後の値が等間隔で連続的に構成されていることから、データ群の中にピークに投票したデータが存在するか、存在するとすればどれかを一度に検索することができる。
【００１１】
よって、記憶領域へのアクセス頻度を低減し、よって演算処理を一層簡略化して白線検出精度を向上させることができる。
【００１２】
請求項２項にあっては、前記検索手段は、前記抽出されたピークを前記記憶されたデータ群の前記一方のパラメータの中の前記算出された方向に相当する値と比較して前記データ群から前記抽出されたピークに投票したデータを検索する如く構成した。
【００１３】
抽出されたピークをエッジ方向に相当する値と比較することから、データ群の中にピークに投票したデータが存在するか、存在するとすればどれかを一度に検索することができ、よって、記憶領域へのアクセス頻度を低減でき、演算処理を一層簡略化して白線検出精度を向上させることができる。
【００１４】
【発明の実施の形態】
以下、添付図面に即してこの発明の一つの実施の形態に係る車両用白線検出装置を説明する。
【００１５】
図１はその車両用白線検出装置を車両を含めてハードウェア的に示す概略図である。
【００１６】
図示の如く、この装置は車両１０においてフロントウインドシールド１２の内面上に接着手段を介して取り付けられたカメラ１４を１基、備え、カメラ１４は車両１０の前方の路面を単眼視して撮像する。カメラ１４はＣＣＤ（固体撮像素子型）カメラであり、縦４８０×横５０２の画素数を有する。ＣＣＤカメラ１４の出力は、電子制御ユニット１６内に収容された画像処理ＥＣＵに送られる。
【００１７】
図２はその画像処理ＥＣＵ２０（符号２０で示す）の構成を詳細に示すブロック図である。
【００１８】
図示の如く、画像処理ＥＣＵ２０は、ＣＰＵ（処理ハードウェア）２０ａ、正エッジ点と負エッジ点の検出およびエッジ方向の算出を行う正負エッジ検出およびエッジ方向算出部（処理ハードウェア）２０ｂ、およびハフ（Ｈｏｕｇｈ）変換部（処理ハードウェア）２０ｃを備える。
【００１９】
画像処理ＥＣＵ２０はさらに、メモリとして、原画像格納用メモリ２０ｄ、エッジ画像格納用メモリ２０ｅ、正負エッジ点のハフ変換結果を格納するメモリ２０ｆ、および変換されたハフ空間において投票した画像の点集合（投票点）、より具体的にはハフ空間を規定する線分パラメータあるいはハフ変換パラメータ（ρ，θ）をエッジ点座標データと共に記憶する投票点格納用メモリ（前記した記憶手段）２０ｇを備える。尚、符号２２はバスを示す。
【００２０】
続いて図３フロー・チャートを参照してこの発明に係る車両用白線検出装置の動作を説明する。
【００２１】
尚、前記したＣＣＤカメラ１４からは６６ｍｓｅｃごとに画像信号が出力され、その時間内において図示のプログラムは実行され、よって実時間で白線が検出される。
【００２２】
先ず、Ｓ１０においてＣＣＤカメラ１４で撮像され、原画像格納用メモリ２０ｄに格納されている画像（原画像）を取り込む（読み出す）。Ｓ１０の右側に取り込んだ画像を簡略化して示す。
【００２３】
次いでＳ１２に進み、取り込んだ画像についてエッジ（点）を検出（抽出）して正負判定を行うと同時に、エッジ方向（局所的な点列の方向）を算出する。エッジ方向を求めるのは、続いて行うハフ変換作業を簡略化するためである。得られたエッジ画像を図においてＳ１２の右方に示す。
【００２４】
図４を参照してＳ１２の作業を説明すると、取り込んだ画像全域に対して図４に示すような２種のオペレータによる積和演算を行って絶対値を算出する。垂直方向強度検出オペレータによる演算結果をＳｖ、水平方向強度検出オペレータによる演算結果をＳｈとすると、各エッジ点の方向（ハフ変換で基準とすべきθの値）は、図４の上部に示す式から求めることができる。
【００２５】
次いでＳ１４に進み、エッジ点をハフ変換して投票点をメモリに記憶する。即ち、正エッジ点と負エッジ点を別々にハフ変換すると共に、投票した画像上のエッジ点の座標データを投票点格納用メモリ２０ｇに記憶（格納）する。Ｓ１４の右側に正エッジ点のハフ変換投票結果を示す。
【００２６】
尚、エッジ点の正負は、画像を左側から走査するとき、立ち上がり点（暗から明に変化した点）を正エッジ点、立ち下がり点（明から暗に変化した点）を負エッジ点とする。
【００２７】
次いでＳ１６に進み、正負エッジ点のそれぞれについてハフ空間ピークを少なくとも１個、図示の正エッジ点の場合は２個、抽出し、Ｓ１８に進み、抽出したピークに投票した投票点の集合を投票点格納用メモリ２０ｇから読み出す（検索する）。
【００２８】
尚、Ｓ１６などの処理においてより詳しくは、正エッジ点のピークと負エッジ点のピークのペアを作成し、そのピークのペアに投票した点を検索することになるが、それらに関しては先に提案した技術（特開平１１−８５９９９号）に記載されており、この発明の要旨には関連しないので、説明は省略する。
【００２９】
Ｓ１４からＳ１８の処理を図５を参照して説明すると、先に提案した技術と同様に、この実施の形態においても、ハフ空間を規定する線分パラメータθ，ρの中、θを０から１８０度まで変化させず、前記したエッジ方向の前後１５度程度に限って変化させるが、この実施の形態においてはθがその範囲において等差で連続するように構成した。
【００３０】
即ち、ハフ変換に際して前記したエッジ方向を基準（中心）としてθを１ステップが３度刻みの等差（等間隔）で前後に５ステップまで変化させ、よって１つのエッジ点に対して全体で１１個の等差で連続するθについてハフ変換を行うようにした。
【００３１】
換言すれば、この実施の形態においては、ハフ変換によって、投票点格納用メモリ２０ｇに、１つのエッジ点についてのデータが１１個連続して記憶されるように構成した。尚、ステップの正負は、基準値相当のθが増加する方向の値をプラス、減少する方向の値をマイナスとする。
【００３２】
図５の左側に示す如く、１つのエッジ点についての１１個のデータはレコードと呼ばれる。各レコードは、同図の右側に示すような線分パラメータθｉｋ，ρｉｋと、座標データＸｉ，Ｙｉからなるデータ構造を備える。θｉｋ（ｋ：１から１１）は、前記した如く、１ステップずつ昇順、換言すれば、連続的に配置される。
【００３３】
Ｘｉ，Ｙｉは当該エッジ点のｘ，ｙ座標での位置を示し、１つのレコードでは同値である。尚、ρｉｋは、θｉｋとＸｉ，Ｙｉとから算出する。
【００３４】
このように、メモリ２０ｇに格納されるデータは、１１個ずつのデータの集合（レコード）からなる。尚、真ん中の６番目のデータ（ｋ＝６）が、エッジ方向に相当する、即ち、θがエッジ方向の直線のそれと同値の基準値（中心値）である。
【００３５】
Ｓ１８の処理においては、θが連続、より詳しくは３度刻みの等差（等間隔）で連続するように構成される性質を利用してピークに投票した点集合を検索する。
【００３６】
以下、図６に示すサブルーチン・フロー・チャートを参照し、その処理を説明する。
【００３７】
尚、以下の説明では、Ｓ１６において抽出された、即ち、既知のピークは、ρ’１，θ’１からρ’ｊ，θ’ｊを含んでρ’ｍ，θ’ｍに至るまでのｍ個とする（図５の末尾に示す）。尚、ピーク数を複数個抽出するのは、誤抽出を防止するためであり、従って、厳密には、ピークは少なくとも１個抽出すれば良い。
【００３８】
以下説明すると、Ｓ１００においてレコードｉ（より詳しくはレコード１）の６番目（真ん中。ｋ＝６）のデータ（エッジ方向相当の基準（中心）データ）を読み込み、Ｓ１０２に進み、ピーク数カウンタｊを初期値１にイニシャライズする。
【００３９】
次いでＳ１０４に進み、先ずθに関して注目するピークをθ’ｊとするとき、その注目するピークθ’ｊとレコード１の６番目のデータθｉ６（θ１６）との差がマイナス５ステップ以上で、かつプラス５ステップ以下か否か判断する。
【００４０】
即ち、θはエッジ方向相当値を基準値（６番目の値）として等差（１ステップ＝３度）でプラス・マイナス５ステップまで連続するように構成されているので、レコードｉの中央値θｉ６（ｋ＝６）を選択し、それと注目するピークθ’ｊとの差がプラス・マイナス５ステップの範囲内にあるか否か判断することで、注目するピークθ’ｊがそのレコードｉに存在するか否か、存在するとすれば何番目のデータであるのか一度に検出することができる。
【００４１】
従って、Ｓ１０４で肯定されるときはＳ１０６に進み、６（基準値データ）に差を加算して得たｋ、より詳しくは差を３で除算してステップ数に換算した値を６に加算し、よって得たｋに該当するデータを、θのピーク相当データとする。例えば、差がプラス３ステップであれば、ｋ＝９（９番目データ）、−４ステップであれば、ｋ＝２（２番目データ）となる。
【００４２】
次いでＳ１０８に進み、Ｓ１０６で得たｋに該当するデータのρｉｋが、注目するピークρ’ｊに一致するか否か判断し、肯定されるときはＳ１１０に進み、θｉｋ，ρｉｋの座標データＸｉ，Ｙｉを出力する。
【００４３】
他方、Ｓ１０４あるいはＳ１０８で否定されるときは、レコードｉに最初に注目したピークが存在しないと判定されたので、Ｓ１１２に進み、次のピーク数カウンタｊをインクリメントして次のピークに注目し、Ｓ１１４に進み、ピーク数カウンタ値がピーク総数ｍ以下であることを確認してＳ１０４に戻り、レコードｉに次のピークが存在するか否か検出（検索）する。
【００４４】
上記作業を繰り返してＳ１１６に進み、全てのレコードを検索したか否か、換言すれば全てのエッジ点について検索したか否か判断し、否定されるときはＳ１１８に進み、レコードカウンタｉをインクリメントしてＳ１００に戻ると共に、Ｓ１１６で肯定されてｎ個のレコード全てについてピークに投票した点の座標が検索されたと判断されると、プログラムを終了する。
【００４５】
図３フロー・チャートの説明に戻ると、次いでＳ２０に進み、このようにして読み出した点列（より詳しくはピークに投票した投票点の座標）を白線候補として出力し、Ｓ１０に戻る。尚、Ｓ２０の処理も先に提案した技術に記載されているので、詳細な説明は省略する。
【００４６】
また、かく検出された白線に基づいて車両の操舵制御を行うことができる。以下、図１を参照して白線検出結果を用いた操舵制御について簡単に説明する。
【００４７】
例えば本出願人が先に特開平５−１９７４２３号、特開平９−１２８６９９号、あるいは特開平１１−７８９４８号公報で提案した操舵既技術に基づき、電子制御ユニット１６において、走行路曲率などから車両１０が検出された白線に沿って走行するように目標ヨーレートが設定される。
【００４８】
そして、車両１０の重心位置付近に配置したヨーレートセンサ２４の出力との偏差が解消するように、操舵系に配置されたトルクセンサ２６を介して検出された運転者操舵トルクをアシストするように指令値が演算され、それに基づいて適宜なアシスト機構２８（電動モータなど）が駆動される。
【００４９】
この実施の形態では上記の如く、エッジ点をハフ変換するとき、θがエッジ方向相当値を基準（中心）とする前後１５度の範囲において等差（等間隔）で連続するデータとすると共に、その座標データから対応するρを算出するようにした。
【００５０】
即ち、エッジ点を示す１組の（ｘ，ｙ）に対して１１個のθと、それに対応する同数個のρを算出して１１個ずつの集合（レコード）として投票点格納用メモリ２０ｇに格納するようにした。
【００５１】
これにより、抽出されたハフ空間ピークに投票した点の座標を検索するときも、レコードのエッジ方向相当基準値たるθと抽出ピークのθとを比較するだけで、そのレコードに少なくともθに関して抽出ピークが存在するか否か、存在するときはどのデータか判定することができる。
【００５２】
そして、θに関して抽出ピークが存在すると判定されるときに限り、該当データのρが抽出ピークのρに一致するか否か判定するようにした。即ち、各レコードの１１個のデータがピーク値と一致するか否か逐一比較しなくても足りるように構成した。
【００５３】
これによって、記憶領域を効率的に使用することができ、かつ記憶領域へのアクセス頻度を低減でき、演算処理を一層簡略化することができる。従って、白線検出時間を短縮させることができて白線の検出精度も向上させることができる。
【００５４】
この実施の形態においては上記の如く、車両１０前方の白線を含む路面を撮像する撮像手段（ＣＣＤカメラ１４、画像処理ＥＣＵ２０）、前記撮像手段により得られた路面画像からエッジ点を検出するエッジ点検出手段（画像処理ＥＣＵ２０，Ｓ１０，Ｓ１２）、前記検出されたエッジ点について局所的な方向（エッジ方向）を算出するエッジ方向算出手段（画像処理ＥＣＵ２０，Ｓ１２）、前記検出されたエッジ点を、ハフ空間を規定する線分パラメータθ，ρの一方のパラメータ、より詳しくはθが前記算出された方向を基準として所定範囲にわたって等間隔、より詳しくは等間隔あるいは等差（３度刻み）で連続するようにハフ変換し、よって得たデータ群（θｉｋ，ρｉｋ）を、前記エッジ点の路面画像における座標データ（Ｘｉ，Ｙｉ）と共に記憶する記憶手段（画像処理ＥＣＵ２０，投票点格納用メモリ２０ｇ，Ｓ１４）、前記ハフ空間のピーク（θ’１，θ’２，θ’ｊ，θ’ｍ，ρ’１，ρ’２，ρ’ｊ，ρ’ｍ）を少なくとも１個抽出するピーク抽出手段（画像処理ＥＣＵ２０，Ｓ１６）、前記抽出されたピークを前記記憶されたデータ群の前記一方のパラメータの中のいずれか（θｉｋ）と比較して前記データ群から前記抽出されたピークに投票したデータを検索する検索手段（画像処理ＥＣＵ２０，Ｓ１８，Ｓ１００からＳ１１８）、および前記検索されたデータの座標データに基づいて前記路面画像の白線を検出する白線検出手段（画像処理ＥＣＵ２０，Ｓ２０）を備える如く構成した。
【００５５】
また、前記検索手段は、前記抽出されたピークを前記記憶されたデータ群の前記一方のパラメータの中の前記算出された方向に相当する値（θｉ６）と比較して前記データ群から前記抽出されたピークに投票したデータを検索する（画像処理ＥＣＵ２０，Ｓ１８，Ｓ１００からＳ１１８）如く構成した。
【００５６】
尚、上記から明らかな如く、ハフ変換（空間）パラメータρ，θのうち、θを３度刻みの等間隔（等差）で連続させたが、θを１度刻みで連続させても良く、さらには１度未満の小数点刻みで連続させても良い。また、ρを所定範囲において等差で連続させるように構成しても良い。
【００５７】
また、エッジ方向に相当する６番目のデータをピーク値と比較することでレコード内にピーク投票点が存在するか否か、また存在するとすればどれか一度に検出できるようにしたが、必ずしもエッジ方向に相当する６番目のデータを用いなくても良い。即ち、１番目から１１番目のデータの内、どれであっても良い。
【００５８】
尚、上記した実施の形態において、カメラをＣＣＤ撮像素子型としたが、走行路を撮像できるものならば、どのようなものであっても良い。
【００５９】
【発明の効果】
請求項１項にあっては、抽出されたピークを記憶されたデータ群の一方のパラメータの中のいずれかと比較して前記データ群から前記抽出されたピークに投票したデータを検索し、検索されたデータの座標データに基づいて路面画像の白線を検出するように構成したので、抽出されたピークを、例えば、エッジ方向に相当する値と比較すれば、その前後の値が等間隔で連続的に構成されていることから、データ群の中にピークに投票したデータが存在するか、存在するとすればどれかを一度に検索することができる。
【００６０】
よって、記憶領域へのアクセス頻度を低減することができ、演算処理を一層簡略化して白線検出精度を向上させることができる。
【００６１】
請求項２項にあっては、抽出されたピークをエッジ方向に相当する値と比較することから、データ群の中にピークに投票したデータが存在するか、存在するとすればどれかを一度に検索することができ、よって、記憶領域へのアクセス頻度を低減し、よって演算処理を一層簡略化して白線検出精度を向上させることができる。
【図面の簡単な説明】
【図１】図１はこの出願に係る車両用白線検出装置を全体的に示す概略図である。
【図２】図１装置の画像処理ＥＣＵの詳細を示すブロック図である。
【図３】図１装置、より具体的には図１装置の画像処理ＥＣＵの動作を示すフロー・チャートである。
【図４】図３フロー・チャートの中のエッジ方向算出作業を説明する説明図である。
【図５】図３フロー・チャートの中の投票点（ハフ空間を規定する線分パラメータ）のメモリへの記憶手法を説明する説明図である。
【図６】図３フロー・チャートの中のピークへ投票した投票点の読み出し（検索）作業を示すサブルーチン・フロー・チャートである。
【符号の説明】
１０    車両
１４    ＣＣＤカメラ（撮像手段）
２０    画像処理ＥＣＵ
２０ｇ  投票点格納用メモリ（記憶手段）
【図１】
0003854780.tif 000002
【図２】
0003854780.tif 000003
【図３】
0003854780.tif 000004
【図４】
0003854780.tif 000005
【図５】
0003854780.tif 000006
【図６】
0003854780.tif 000007