(58)【調査した分野】(Int.Cl.,DB名)
前記抑制領域は、前記正面抑制領域から前記所定車長よりも遠方側を、前記正面抑制領域よりも横方向に広く覆う遠方抑制領域(73)を含む請求項1に記載の走行区画線認識装置。
前記立体物処理手段は、認識された前記他車両の車長情報を取得し、取得した前記車長情報の信頼度が閾値よりも高い場合には、取得した前記車長情報を用いて前記所定車長を設定する請求項1〜3のいずれかに記載の走行区画線認識装置。
【発明を実施するための形態】
【0012】
以下、走行区画線認識装置を具現化した実施形態について、図面を参照しつつ説明する。本実施形態に係る走行区画線認識装置により認識された走行区画線は、レーンキーピングアシスト制御(LKA制御)やレーン逸脱警報に用いられる。
【0013】
まず、
図1を参照して、本実施形態に係る走行区画線認識装置の構成について説明する。本実施形態に係る走行区画線認識装置は、車載カメラ10及びミリ波レーダ11による検出結果を用いて、道路の白線(区画線)を認識する車載装置である。
【0014】
車載カメラ10は、CCDカメラ、CMOSイメージセンサ、近赤外線カメラ等の少なくとも1つから構成されている。車載カメラ10は、
図2に示すように、自車両60の前方の道路を含む周辺環境を撮影するように、自車両60に搭載されている。詳しくは、車載カメラ10は、自車両60のフロントガラスの上端付近に設置されており、車両前方へ向けて所定角度範囲で広がる領域を撮影する。なお、車載カメラ10は、ステレオカメラや、複数のカメラから構成されていてもよい。
【0015】
ミリ波レーダ11は、
図2に示すように、自車両60の先端に設置されている。ミリ波レーダ11は、ミリ波を自車両60の前方に向けて送信し、立体物に反射して戻ってきた反射波を受信することで、立体物が存在する方位、立体物までの距離、及び立体物の形状を検出する。
【0016】
走行区画線認識装置20は、CPU、RAM、ROM及びI/O等を備えたコンピュータである。CPUが、ROMにインストールされている走行区画線認識プログラムを実行することにより、白線候補抽出手段30、確信度算出手段40、白線認識手段50の各種機能を実現する。なお、憶媒体に記憶されている走行区画線認識プログラムを、コンピュータに読み込んでもよい。
【0017】
白線候補抽出手段30は、車載カメラ10により撮影された画像から、エッジ点で構成される道路の白線候補(区画線候補)を抽出する。
【0018】
確信度算出手段40は、白線特徴算出手段41、立体物処理手段42、及び白線特徴統合手段43を含み、白線候補抽出手段30により抽出された白線候補の白線である確信度(尤度)を算出する。確信度が高い白線候補ほど、白線である確率が高い。白線特徴算出手段41は、白線の複数の特徴のそれぞれについて、特徴を備えている度合いが高いほど、白線候補の確信度を高く算出する。白線の複数の特徴としては、エッジ強度が閾値よりも大きいこと、エッジ点が略直線上に並んでいること等が挙げられる。白線特徴統合手段43は、白線特徴算出手段41により算出された各白線の特徴に対応する確信度、及び立体物処理手段42により算出された確信度を統合し、統合した確信度を算出する。
【0019】
立体物処理手段42は、他車両61を含む立体物の認識に基づいて、画像上にマスク(抑制領域)を設定する。立体物の認識は、車載カメラ10により撮影された画像、及びミリ波レーダ11による検出結果を用いて行う。さらに、立体物処理手段42は、マスク内に存在する白線候補の統合した確信度を低下させ、マスク内に存在する白線候補が白線として認識されることを抑制する。詳しくは、立体物処理手段42は、各特徴に対応する確信度と統合する際に、統合した確信度が第1閾値以下になるように、マスク内に存在する白線候補の確信度をマスク外よりも低く算出する。
【0020】
マスクは、
図3及び4に示すように、他車両61の正面を覆うように設定する正面マスク71(正面抑制領域)、所定車長の奥行きを考慮して設定する側面マスク72(側面抑制領域)、正面マスク71から所定車長よりも遠方側に設定する遠方マスク73(遠方抑制領域)を含む。
【0021】
白線認識手段50は、白線特徴統合手段43により統合された確信度が閾値以上の白線候補を選択し、選択した白線候補を用いて白線を認識する。
【0022】
次に、白線を認識する処理手順について、
図5のフローチャートを参照して説明する。本処理手順は、走行区画線認識装置20が所定間隔で繰り返し実行する。本処理手順では、検出される立体物として他車両61のみを想定している。
【0023】
まず、車載カメラ10により撮影された画像を取得する(S11)。続いて、S11で取得した画像に対して、sobelフィルタ等のフィルタを使用して、画像の水平方向に輝度変化率が大きいエッジ点を抽出する(S12)。抽出したエッジ点が白線候補となる。
【0024】
続いて、S11で取得した画像から、自車両60の前方に存在する他車両61を検出する(S13)。詳しくは、S11で取得した画像において、周知の画像認識処理により、予め登録されている車両の正面の形状を検出する。なお、進行方向が同じ他車両61の後面だけでなく対向車線の他車両61の前面が撮影される場合もあるので、車両の正面は、車両の後面及び車両の前面を含む。
【0025】
続いて、ミリ波レーダ11により、自車両60の前方に存在する他車両61を検出する(S14)。詳しくは、ミリ波レーダ11により受信した反射波の強度分布から、予め登録されている車両の正面の形状を検出する。
【0026】
続いて、S13又はS14において、他車両61の正面を検出したか否か判定する(S15)。他車両61の正面を検出している場合は(S15:YES)、他車両61に対応する領域にマスクを設定する(S16)。なお、マスク設定の詳細については後述する。一方、他車両61の正面を検出していない場合は(S15:NO)、マスクの設定処理を行わないで、S17の処理に進む。
【0027】
次に、エッジ点の一つ一つについて、複数の白線の特徴に対して白線らしさの確信度を算出し、算出した確信度を統合する(S17)。マスクの設定処理を行っている場合には、マスクの設定処理で算出された確信度も統合する。
【0028】
続いて、S12で抽出したエッジ点のうち、S17で算出した確信度が第1閾値よりも高いエッジ点を選択する(S18)。続いて、S18で選択したエッジ点を用いて白線を認識する。詳しくは、S18で選択したエッジ点をハフ変換し、最も多くのエッジ点を通る直線を、白線として認識する。S17で算出した確信度が第1閾よりも低いエッジ点は、白線の認識に使用しない。
【0029】
次に、マスク設定(S16)の処理手順について、
図6のフローチャートを参照して説明する。本実施形態では、S13及びS14の処理により、合計n個の他車両61の正面を検出したことを想定している。n個の他車両61の正面には、それぞれ1〜nの番号が付されている。
【0030】
まず、画像認識処理及びミリ波レーダ11により他車両61の正面が認識された位置に、他車両61の正面を覆うように方形の正面マスク71を設定する。認識されたn個の他車両61の正面に対応して、n個の正面マスク71を設定する(S161)。
【0031】
続いて、iの値として、初期値の1を設定する(S162)。続いて、n個の車両の中からi番目の車両を選択し、i番目の車両の側面が、i番目の車両の正面に設定された正面マスク71よりも左側又は右側に写っているか否か判定する(S163)。すなわち、i番目の車両の奥行き方向の広がりを考慮する必要があるか否か判定する。
【0032】
i番目の車両の正面が、画像の横方向の中央すなわち自車両60の位置よりも左側に存在する場合、画像にはi番目の車両の正面よりも右側の側面が写る。同様に、i番目の車両の正面が、画像の横方向の中央よりも右側に存在する場合、画像にはi番目の車両の正面よりも左側の側面が写る。よって、i番目の車両に設定された正面マスク71が、画像の横方向の中央の所定範囲よりも左側又は右側にある場合は、i番目の車両の側面が写っている(画像中に存在する)と判定し(S163:YES)、側面マスク72の設定処理(S164)に進む。
【0033】
一方、
図3の中央の車線を走行中の車両のように、i番目の車両に設定された正面マスク71が、画像の横方向の中央付近に存在する場合は、i番目の車両の側面は写っていないと判定する(S163:NO)。この場合、i番目の車両の奥行き方向の広がりを考慮する必要がないので、側面マスク72の設定処理を行わないで、遠方マスク73の設定処理(S165)に進む。
【0034】
側面マスク72の設定処理(S164)では、
図3の左側の車線を走行中の車両のように、i番目の車両の正面マスク71が、画像の横方向の中央付近よりも左側にある場合は、正面マスク71の右側に側面マスク72を設定する。具体的には、正面マスク71を奥行き方向へ所定車長延ばして形成される側面を、覆うように方形の側面マスク72を設定する。
【0035】
図4は、自車両60、他車両61(i番目の車両)、及びマスクの位置関係を示した平面図である。実空間上で他車両61の正面マスク71を奥行き方向へ所定車長延ばして形成される側面、すなわち、実空間上で正面マスク71の高さと所定車長の幅とから形成される領域を、画像上に変換した領域が側面マスク72となる。このようにして、画像上でi番目の車両の側面に対応する位置に側面マスク72が設定される。
【0036】
同様に、
図3の右側の車線を走行中の車両のように、i番目の車両の正面マスク71が、画像の横方向の中央付近よりも右側にある場合は、正面マスク71の左側に側面マスク72を設定する。
【0037】
ここで、所定車長は、最悪の状況を考えて、トラックのような大型車両の平均的な車長(一定値)とする。あるいは、一般に、車両の横幅が広いほど車長は長いので、画像認識処理又はミリ波レーダ11により認識されたi番目の車両の正面の横幅が広いほど、所定車長を長く設定してもよい。また、i番目の車両の横幅に応じて、車両を大型車、中型車、小型車等に分類し、分類に対して予め設定されている車長を所定車長としてもよい。なお、i番目の車両の横幅は、画像上におけるi番目の見かけの幅と、i番目の車両の正面までの距離とから算出できる。i番目の車両の正面までの距離は、画像処理又はミリ波レーダ11により検出できる。
【0038】
続いて、遠方マスク73を設定する(S165)。i番目の車両の前方に車両が存在する場合、その車両がi番目の車両から横方向にずれて画像に写っていることがある。このような場合、前方の車両の正面の一部分しか画像に写っていないので、画像処理により正面を認識することが困難なことがある。また、ミリ波レーダ11でも、正面の一部分しか検出できないため、前方の車両の正面を認識することが困難なことがある。
【0039】
そこで、
図4に示すように、正面マスク71から所定車長よりも遠方側を、正面マスク71よりも横方向に広く覆うように遠方マスク73を設定する。i番目の車両よりも前方に存在し、正面マスク71により覆われている他車両61のエッジ点は、正面マスク71により確信度が低下させられる。よって、
図4(a)のように、正面マスク71に関わらず遠方マスク73を設定してもよいし、
図4(b)のように、正面マスク71により覆われていない領域のみに遠方マスク73を設定してもよい。
【0040】
ここで、車線の曲率が大きいほど、先先行車両は横方向に大きくずれて画像に写るので、車線の曲率が大きいほど、遠方マスク73の横幅を広く設定する。詳しくは、車線が右に曲がっている場合には、遠方マスク73を、正面マスク71の右側に広く設定する。同様に、車線が左に曲がっている場合には、遠方マスク73を、正面マスク71の左側に広く設定する。
【0041】
なお、車線の曲率は、予め取得されている曲率を用いる。具体的には、ナビ情報から取得した車線の曲率や、前回の白線認識処理において認識した白線から算出した車線の曲率を用いる。
【0042】
続いて、S12で抽出されたエッジ点が、正面マスク71、側面マスク72、遠方マスク73内に存在するか否か判定する(S166)。マスク内にエッジ点が存在しない場合は(S166:NO)、S168の処理に進む。
【0043】
一方、マスク内にエッジ点が存在する場合は(S166:YES)、マスク内のエッジ点について、S17で確信度を統合した際に確信度を第1閾値以下に低下させるように、確信度を低く算出する(S167)。
【0044】
続いて、iの値がnに達しているか否か、すなわち、認識した全ての他車両61について、マスクの設定処理を終了したか否か判定する(S168)。iの値がnに達している場合(S168:YES)、すなわち、認識した全ての他車両61についてマスクの設定処理を終了している場合は、本処理を終了する。一方、iの値がnに達していない場合は(S168:NO)、iの値を1つ増加させ(S169)、次の他車両61について、S163〜S168の処理を繰り返す。
【0045】
以上説明した本実施形態によれば、以下の効果を奏する。
【0046】
・本発明によれば、車載カメラ10により撮影された画像から、白線候補であるエッジ点が抽出され、抽出されたエッジ点の白線である確信度が算出される。そして、算出されたエッジ点の確信度に基づいてエッジ点が選択され、選択されたエッジ点を用いて白線が認識される。このとき、他車両61を含む立体物の認識に基づいてマスクが設定され、マスク内に存在するエッジ点の確信度が低下されるため、マスク内の立体物のエッジ点が白線として認識されることが抑制される。
【0047】
上記マスクには、他車両61の正面が認識された位置に正面を覆うように設定される正面マスク71と、正面マスク71を奥行き方向へ所定車長延ばして形成される側面を覆うように設定される側面マスク72と、が含まれる。よって、他車両61の正面が認識されると、他車両61の車長情報が取得されていない場合であっても、他車両61の車長を所定車長として、正面マスク71を奥行き方向へ所定車長延ばして形成される側面に存在する他車両61のエッジ点が、白線として認識されることが抑制される。したがって、車両のエッジ点の除外を安定して行うことができる。ひいては、白線の誤認識を抑制できるとともに、白線の認識率の低下を抑制できる。
【0048】
・先行車両の前方に車両が存在し、その車両が先行車両から横方向にずれて画像に写ることがある。そこで、遠方マスク73は、正面マスク71から所定車長よりも遠方側を、正面マスク71よりも横方向に広く覆うように設定される。これにより、先行車の前方にさらに車両が存在する場合でも、先行車の前方に存在する車両のエッジ点を的確に除外することができる。
【0049】
・道路の曲率が大きいほど、先行車両の前方に存在する車両は先行車両から横方向にずれて画像に映る。そのため、遠方マスク73の横方向の幅は、道路の曲率に基づいて設定される。これにより、道路がカーブになっていても、先行車両の前方に存在する車両のエッジ点を的確に除外することができる。
【0050】
・一般に、車両の横幅が広いほど車長は長い。そこで、認識された他車両61の横幅が広いほど所定車長を長く設定することにより、側面マスク72を適切に設定して、他車両61のエッジ点を的確に除外することができる。
【0051】
(他の実施形態)
・マスク内のエッジ点を除外し、マスク外のエッジ点を用いて白線を認識するようにしてもよい。すなわち、マスク内のエッジ点の確信度をゼロにしてもよい。
【0052】
・他車両61の車長情報を取得できる場合には、車長情報を取得する。そして、取得した車長情報の信頼度が第2閾値よりも高い場合には、取得した車長情報を用いて所定車長を設定してもよい。取得した車長情報の信頼度が第2閾値以下の場合には、一定値の所定車長、又は車両の横幅に応じて設定された所定車長を用いればよい。
【0053】
車長情報は、車載カメラ10により撮影された画像、特にステレオ画像から、画像処理によって推定して取得することができる。この場合、車長情報の推定精度に応じて、車長情報の信頼度は設定される。
【0054】
また、自車両60及び他車両61が車車間通信装置を備えている場合は、自車両60と車両61との間で車車間通信を行い、他車両61から車長情報を取得することができる。この場合、信頼度の高い車長情報を取得できる。
【0055】
また、他車両61の正面画像を処理して、他車両61の車種を推定し、推定した車種に基づいて車長情報を取得することもできる。ミリ波レーダ11により受信した反射波の強度分布から、他車両61の正面形状を検出し、他車両61の車種を推定してもよい。車種の推定は、詳細な車種まで推定できなくても、大型車、中型車、小型車等の分類が推定できる程度でもよい。この場合、車種の推定精度に応じて、車長情報の信頼度は設定される。
【0056】
このようにすることにより、信頼度の高い車長情報を取得した場合には、側面マスク72を適切に設定して、他車両61のエッジ点を的確に除外することができる。
【0057】
・正面マスク71、側面マスク72、遠方マスク73の形状は方形に限らず、例えば五角形の形状等に適宜設定すればよい。
【0058】
・正面マスク71は、他車両61の正面を完全に覆っていなくてもよい。例えば、他車両61の正面の上端から所定の範囲を覆っていなくても、正面マスク71の上端が自車両60から見た無限遠点よりも上側になっていればよい。また、正面の下端から所定の範囲を覆っていなくてもよい。
【0059】
・他車両61の正面は、画像処理だけで検出してもよいし、ミリ波レーダ11だけで検出してもよい。また、レーザーレーダ等の他の装置を用いて、他車両61の正面を検出してもよい。また、画像処理、ミリ波レーダ11、及びレーザーレーダ等の他の装置の中から適宜組み合わせて、他車両61の正面を検出してもよい。
【0060】
・遠方マスク73の横幅は、車線の曲率に関わらず一定値としてもよい。
【0061】
・遠方マスク73を設定せず、正面マスク71と側面マスク72だけを設定してもよい。