(駐車支援装置の概略構成)
以下、この発明の実施の形態を図面に基づいて説明する。図1は、本発明の実施の形態である画像処理装置が適用される駐車支援装置の概略構成を示すブロック図である。図2は駐車支援装置の撮像装置の配置位置の一例を示す図である。なお、以下では、駐車支援装置について説明するが、本発明の実施の形態である画像処理装置が適用される装置は駐車支援装置に限定されることはなく、走行車線を走行する車両の走行を支援する走行支援装置等にも適用できる。
図1に示すように、駐車支援装置1は、車両V(図2参照)に搭載され、駐車支援動作を行う。具体的には、駐車支援装置1は、この車両Vが駐車可能な駐車枠を認識する。そして、駐車支援装置1は、認識した駐車枠に車両Vを駐車させるようにこの車両Vを制御する。
車両Vの前後左右には、図2に示すように複数の小型カメラ(撮像装置)が備えられている。
具体的には、車両Vのフロントバンパまたはフロントグリルには、車両Vの前方に向けて前方カメラ20aが装着されている。車両Vのリアバンパまたはリアガーニッシュには、車両Vの後方に向けて後方カメラ20bが装着されている。車両Vの左ドアミラーには、車両Vの左側方に向けて左側方カメラ20cが装着されている。車両Vの右ドアミラーには、車両Vの右側方に向けて右側方カメラ20dが装着されている。
前方カメラ20a、後方カメラ20b、左側方カメラ20c、右側方カメラ20dには、それぞれ、広範囲を観測可能な広角レンズや魚眼レンズが装着されており、4台のカメラ20a~20dで車両Vの周囲の路面を含む領域を漏れなく観測できるようになっている。これらカメラ20a~20dにより、車両Vの周囲の路面を撮像する撮像装置が構成されている。なお、以下の説明において、個々のカメラ(撮像装置)20a~20dを区別せずに説明する場合は単にカメラ20として説明する。
図1に戻って、駐車支援装置1は、前方カメラ20a、後方カメラ20b、左側方カメラ20c、右側方カメラ20dと、カメラECU21と、ナビゲーション装置30と、車輪速センサ32と、操舵角センサ33とを有する。
カメラECU21は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、フラッシュメモリ等から構成されたマイコンを主体として構成される。カメラECU21は、カメラ20を制御するとともに、カメラ20が検知した情報を用いて、俯瞰画像の生成処理や、駐車枠を検出する検出処理や、検出した駐車枠に車両Vを駐車できるか否かを判定する判定処理等を行う。
ナビゲーション装置(表示装置)30は画像表示機能を有するモニター31を有する。ナビゲーション装置30は、経路案内用の地図データ等が格納された記憶部を有する。ナビゲーション装置30は、この地図データ等及び図略のGPS装置等により検出された車両Vの現在位置に基づいて、ナビゲーション装置30の操作者が設定した目標地点までの経路案内を行う。経路案内動作中の各種画像はモニター31に表示される。
車輪速センサ32は、車両Vの車輪速を検知するセンサである。車輪速センサ32で検知された検知情報(車輪速)は、車両制御ECU40に入力される。
操舵角センサ33は、車両Vのステアリングの操舵角を検知する。車両Vが直進状態で走行するときの操舵角を中立位置(0度)とし、その中立位置からの回転角度を操舵角として出力する。操舵角センサ33で検知された検知情報(操舵角)は、車両制御ECU40に入力される。
さらに、駐車支援装置1は、車両制御ECU40と、ステアリング制御ユニット50と、スロットル制御ユニット60と、ブレーキ制御ユニット70とを有する。
車両制御ECU40は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、フラッシュメモリ等から構成されたマイコンを主体として構成される。車両制御ECU40は、カメラECU21、車輪速センサ32及び操舵角センサ33から入力された各検知情報に基づいて、車両Vの駐車を支援する各種処理を実行する。
すなわち、例えば図略の自動駐車開始スイッチを運転手がオン操作して駐車支援装置1を作動させると、車両制御ECU40は、カメラECU21が駐車可と判定した駐車枠に車両Vを自動で駐車させる自動駐車処理を実行する。
ステアリング制御ユニット50は、車両制御ECU40で決定した車両制御情報に基づいて、パワーステアリングアクチュエータ51を駆動して、車両Vの操舵角を制御する。
スロットル制御ユニット60は、車両制御ECU40で決定した車両制御情報に基づいて、スロットルアクチュエータ61を駆動して、車両Vのスロットルを制御する。
ブレーキ制御ユニット70は、車両制御ECU40で決定した車両制御情報に基づいて、ブレーキアクチュエータ71を駆動して、車両Vのブレーキを制御する。
なお、カメラECU21、車輪速センサ32及び操舵角センサ33と、車両制御ECU40との間は、車内LAN(Local Area Network)であるセンサ情報CAN(登録商標)(Controller Area Network)80によって接続される。
また、ステアリング制御ユニット50、スロットル制御ユニット60及びブレーキ制御ユニット70と、車両制御ECU40との間は、車内LANである車両情報CAN(登録商標)81によって接続される。
以上の構成を有する駐車支援装置1において、本実施の形態の画像処理装置100は、カメラECU21により主に構成されている。
(画像処理装置の機能構成)
図3は、本実施の形態である画像処理装置100の概略構成を示す機能ブロック図である。本実施の形態である画像処理装置100は、制御部110及び記憶部120を有する。制御部110は、カメラECU21のCPUから主に構成されており、記憶部120は、カメラECU21のROM、RAM、フラッシュメモリ等から主に構成されている。
制御部110は、画像処理装置100全体の制御を行う。加えて、制御部110は、後述するエッジ検出部111、比較部112及び駐車枠検出部113により検出、推定された駐車スペースを区画する駐車区画線や駐車スペースに基づいて、車両Vが駐車可と判定した駐車枠にこの車両Vを自動で駐車させる自動駐車処理を車両制御ECU40に実行させるために、自動駐車処理に必要な情報(駐車スペース、駐車枠の位置、形状など)をこの車両制御ECU40に送出する。
車両制御ECU40は、制御部110から提供された情報に基づいて、さらに、車輪速センサ32及び操舵角センサ33(図3ではセンサとのみ図示している)が検知した検知情報に基づいて、パワーステアリングアクチュエータ51、スロットルアクチュエータ61及びブレーキアクチュエータ71(図3ではアクチュエータとのみ図示している)を駆動制御する。
制御部110はCPU、FPGAなどのプログラマブルロジックデバイス、ASIC等の集積回路に代表される演算素子を有する。
画像処理装置100の記憶部120には図略の制御用プログラムが格納されており、この制御用プログラムが画像処理装置100の起動時に制御部110により実行されて、画像処理装置100は図3に示すような機能構成を備えたものとなる。特に、本実施形態の画像処理装置100は、後述するように高速の画像処理を行うので、高速演算可能な演算素子、例えばFPGAなどを有することが好ましい。
この図3に示すように、制御部110は、エッジ検出部111、比較部112、駐車枠検出部113、及び表示制御部114を有する。なお、画像処理装置100及び画像処理方法を、走行支援装置及び走行支援方法に適用する場合は、図3の駐車枠検出部113に代えて走行車線検出部を有する構成とすることで、走行車線を検出する画像処理装置及び画像処理方法が得られる。
エッジ検出部111は、車両Vの周囲の路面Rを撮像するカメラ20から出力される画像信号に基づいて、エッジ検出により駐車場等の路面上の駐車区画線のエッジを検出する。また、走行支援装置に適用されるときは、エッジ検出部111は、路面上の車線境界線等のエッジを検出する。ここでいう駐車区画線とは、主に路面R上に設けられた駐車領域を区画する境界線(直線)として描かれた線のことである。図5に、車両Vと、この車両Vが駐車を行おうとしている駐車場Pの路面R上に描かれた駐車区画線200の一例を示す。駐車区画線200の間が、駐車スペースを表す駐車枠201である。また、図6(a)は、カメラ20で撮影された画像信号を合成して生成された俯瞰画像Gを模式的に示した図であり、図6(b)は俯瞰画像Gから検出されたエッジを模式的に示した図である。
また、車線境界線は、主に路面上に設けられた走行車線(走行レーン)を区画する境界線として描かれ、途切れのない実線(直線又は曲線)、又は所定長さの短い線分が連続する破線(直線又は曲線)である。
駐車区画線及び車線区画線は、一般的には白線で示されるが、白線以外の、例えば黄色線等、白以外の色の線で描かれている場合もある。このため、エッジ検出部111によって検出される駐車区画線や車線境界線は、「白線」に限定されるものではなく、一般に、路面との間にコントラストを有する境界線を駐車区画線や車線境界線として検出すればよい。
エッジ検出部111は、画像を所定方向に走査(スキャン)して、画像信号に含まれる輝度又は色のパラメータ(例えば、RGB、RGBA等)が、閾値よりも大きく変化する画素を検出し、検出した画素の並びが所定以上の長さとなっている部分をエッジとして検出する。ここでいう走査とは、所定方向に向かって1つずつ画素を選択し、隣り合った画素間で、輝度又は色のパラメータを比較していくことをいう。検出したエッジは、輝度又は色のパラメータの変化の方向(傾向)に応じて、第1のエッジ又は第2のエッジとする。
なお、走査の方向は、路面Rに描かれた駐車区画線に直交する方向に設定するのが望ましい。すなわち、図5に示すように、駐車区画線200が車両Vの進行方向と直交する方向に延在しているときには、図6(a)に示す俯瞰画像G上で進行方向に沿って走査するのが望ましい。これに対して、駐車区画線200が車両Vの進行方向に沿って延在しているときは、俯瞰画像G上で進行方向と直交する方向に走査するのが望ましい。一般には、駐車区画線200が延びている方向は未知であるため、エッジ検出部111は、俯瞰画像G上で車両Vの進行方向及びこれに直交する方向にそれぞれ沿って、2回に分けて走査することが望ましい。
そして、エッジ検出部111は、検出した複数のエッジから、隣り合った画素の輝度差又は色のパラメータ差がプラス方向に所定値よりも大きくなるエッジを第1のエッジ(「プラスエッジ」、「立上りエッジ」ともいう)として検出し、隣り合った画素の輝度差又は色のパラメータ差がマイナス方向に所定値よりも大きくなるエッジを第2のエッジ(「マイナスエッジ」、「立下がりエッジ」ともいう)として検出する。
ここで、輝度に基づいてエッジを抽出する場合は、輝度が低く暗い画素(例えば黒い画素)から、閾値よりも大きな差を持って輝度が高く明るい画素(例えば白い画素)に変化(プラス方向に変化)した画素の並びをプラスエッジとして検出する。つまり、走査位置が路面Rから駐車区画線と推定されるものに切替わったことを示す。また、輝度が高く明るい画素から、閾値よりも大きな差を持って輝度が低く暗い画素に変化(マイナス方向に変化)した画素の並びをマイナスエッジとして検出する。つまり、走査位置が駐車区画線と推定されるものから路面Rに切替わったことを示す。
これに対して、色のパラメータに基づいてエッジを抽出する場合は、路面の色のパラメータと、駐車区画線の色のパラメータとを比較する。エッジ検出部111は、色のパラメータの値が大きくなる方向に変化(マイナス方向に変化)した画素の並びをマイナスエッジとして検出し、色のパラメータの値が小さくなる方向に変化(プラス方向に変化)した画素の並びをプラスエッジとして検出する。また、路面よりも駐車区画線の輝度が低い(或いは色のパラメータが大きい)場合は、輝度や色のパラメータの変化は逆転する。いずれの場合でも駐車区画線等の境界線では、その両側縁にプラスエッジとマイナスエッジが検出されるため、後述のペアの抽出が可能である。
上記走査を複数ライン(行)分繰り返すことで、走査方向と交差する方向に連続するプラスエッジで構成される線分(画素の並び、画素列)を、プラスエッジ(第1のエッジ)の線分として抽出する。さらに連続するマイナスエッジで構成される線分(画素列)を、マイナスエッジ(第2のエッジ)の線分として抽出する。抽出したプラスエッジの線分及びマイナスエッジの線分に対して、基準長さに従って長さによるフィルタリングを行い、基準長さに満たないプラスエッジの線分及びマイナスエッジの線分を破棄する。また、長さに加えて、線分が延びる方向(角度)によってフィルタリングしてもよい。
次いで、エッジ検出部111は、フィルタリングの結果残った、プラスエッジの線分及びマイナスエッジの線分の各端点の位置(座標)を算出し、この位置に基づいて、所定間隔で隣り合うプラスエッジの線分とマイナスエッジの線分のペアを抽出する。
ところで、使用するカメラ20によっては、エッジ強調機能によって、駐車区画線と路面の境界以外の長尺に延びる部分、例えば、ポール等の影と路面との境界、日陰と日向との境界、路面テクスチャ等が白く浮かび上がることがある。特に、画像を俯瞰変換した場合、カメラ20から離れた位置を撮影した画像信号はエッジ強調の影響を受け易い。すると、画像中に本来はない不自然な白線(以下、「偽白線」という。)が映し出されることがあり、エッジ走査によって、本来の駐車区画線等のエッジだけでなく、このような偽白線のエッジも検出され、駐車区画線等と誤認識されることがある。この結果、駐車枠の検出や車線検出の精度にも影響することがある。
このような誤認識を回避するため、比較部112は、エッジ検出部111で抽出された各ペアのエッジ周辺の画像信号に含まれる輝度を比較して、複数のペアの中から、駐車区画線を構成するエッジのペアのみを抽出し、それ以外のペアは偽白線のエッジのペアとして破棄する。
このため、比較部112は、各ペアに対して、プラスエッジの所定方向側にある画素の輝度と、マイナスエッジの、プラスエッジの所定方向側とは反対方向側にある画素の輝度と、を比較する。より詳細には、プラスエッジから走査元側に、所定のオフセット値でオフセットした画素の輝度と、マイナスエッジから走査先側に、所定のオフセット値でオフセットした画素の輝度とを比較する。輝度差分が所定値以下となる場合、このプラスエッジとマイナスエッジを、駐車区画線を構成するエッジのペアであると判定する。所定値を超えたペアは、駐車区画線以外の線分のエッジを構成するものとして、破棄する。ここでいうオフセットとは、プラス又はマイナスのエッジを構成する画素から、所定方向(プラスエッジは走査元側、マイナスエッジは走査先側)に、オフセット値の分だけ、平行移動することである。この平行移動先の画素をそれぞれ比較する。
輝度を比較する際に、プラスエッジとマイナスエッジのそれぞれの平行移動先の画素列の中から、少なくとも1画素ずつを選択して比較すればよい。より好ましくは、画素列の中から複数の画素を任意若しくは所定間隔で選択するか、又は画素列を等間隔で分割した複数の分割点の画素を選択し、これらの輝度の平均値を互いに比較する。これにより、輝度の比較の精度が向上し、駐車区画線を構成するペアの判定精度を向上できる。
駐車区画線の外側は、通常は路面であるため、駐車区画線から検出されるプラスエッジから走査元側にオフセットした画素の輝度と、マイナスエッジから走査先側にオフセットした画素の輝度とは、ともに路面の輝度である。このため、これらの画素の輝度には殆ど差が生じない。よって、輝度差が所定値以下であれば、当該ペアは駐車区画線を構成するペアであると判定する。
これに対して、例えば、カメラ20のエッジ強調機能によってポール等の影と路面との境界に偽白線が現れ、エッジのペアが検出された場合、一方のエッジからオフセットした画素からは、路面の輝度が取得される。他方のエッジからオフセットした画素からは、路面よりも暗い影の輝度が取得される。よって、これらの画素の輝度差は大きくなる。このため、輝度差が所定値を超えた場合は、当該ペアは駐車区画線以外の偽白線を構成するものと判定する。このような偽白線を構成するエッジのペアを、破棄することで、後述の駐車枠検出部113での駐車枠検出の精度を向上できる。
本実施の形態では、具体的に次の手順で輝度を比較している。まず、プラスエッジを構成する画素列(線分)を、走査元側にオフセット値に基づいてオフセットした画素列(線分)を、延在方向に沿って等分割した複数の分割点における画素の輝度を取得し、平均値Ypを算出する。
また、マイナスエッジを構成する画素列(線分)から、走査先側にオフセット値に基づいてオフセットした画素列(線分)を、延在方向に沿って等分割した複数の分割点における画素の輝度を取得し、平均値Ymを算出する。
そして、比較部112は、算出した平均値Yp、Ymが、下記式(1)を満たす場合、プラスエッジ及びマイナスエッジを、駐車区画線を構成するエッジのペアであると判定する。
|Yp - Ym| ≦ 閾値 (1)
また、オフセットした画素の比較は、輝度に代えて色のパラメータに基づいて行ってもよい。また、輝度差又は色のパラメータ差の閾値としては、特に限定されることはなく、使用するカメラ20の画像信号の状態に応じて、適宜設定できる。また、オフセット値についても、特に限定されることはなく、カメラ20のエッジ強調の程度や解像度等に応じて、エッジ近傍の部位の輝度又は色のパラメータの比較を適切に行うことができる位置にオフセットできる値を適宜設定できる。オフセット値は、例えば、画素数(pixel)とすることができる。また、輝度又は色のパラメータの比較に用いる画素の数も、特に限定されることはなく、解像度等に応じて適宜の数を設定できる。また、線分の長さ(画素数)等に応じて、輝度又は色のパラメータの比較に用いる画素の数を増減することもできる。
本実施の形態では、画素の比較を輝度に基づいて行い、輝度差(絶対値)の閾値を45としている。また、オフセット値を、2pixelとしている。また、輝度を比較する画素の数を10個(10点)としている。すなわち、各エッジの線分からオフセットした位置の線分を9等分して、当該線分の始点と終点とを含む分割点10点に対応する10個の画素の輝度を各々取得し、平均値を算出している。
また、閾値、オフセット値、輝度の比較に用いる画素の数や分割数は、記憶部120にパラメータデータ122として予め設定されている。これらのパラメータデータ122は、固定的に設定されていてもよいが、製造元やユーザが任意に設定できるようにしてもよい。例えば、ナビゲーション装置30の初期設定画面等から設定する仕様としてもよいし、ソフトウェアやデータのバージョンアップ時に設定する仕様としてもよい。カメラ20の仕様に応じて適切に設定できることから、例えば、本実施の形態の画像処理装置100のみを車両Vに新たに搭載すればよく、カメラ20等は既存のものを使用でき、汎用性に優れる画像処理装置100を提供できる。
駐車枠検出部113は、比較部112により駐車区画線を構成するエッジのペアであると判定されたペアのプラスエッジの線分及びマイナスエッジの線分の中から、駐車枠を構成する可能性のある隣り合うエッジの線分を検出する。検出したエッジの線分間の距離に基づいて、駐車枠(つまり、駐車枠で区画された駐車スペース)を検出する。
より具体的には、駐車枠検出部113は、まず、複数の駐車区画線のペアのプラスエッジの線及びマイナスエッジの線のうち、駐車スペースを構成する可能性のある隣り合う2本の線を選択する。ここで選択される2本の線は、駐車スペースを仕切る一対の駐車区画線の左右両端を構成する線であり、所定の駐車区画線(例えば、図6(b)に示すK1)のマイナスエッジの線(Em1)と、これに向かい合う駐車区画線(図6(b)に示すK2)のプラスエッジの線(Ep2)である。
そして、駐車枠検出部113は、選択された2本のエッジの線の距離(隣り合う駐車区画線の内法寸法)を、各エッジの端点の座標に基づいて算出し、算出された距離が、所定範囲内にあるか判定する。この距離が所定の駐車スペース幅±閾値の範囲内であれば、2本のエッジの線で仕切られた領域を駐車スペースとして検出する。駐車スペース幅としては、普通自動車や小型貨物車用の駐車スペースであれば2m~3mが望ましい。大型貨物車やバス用の駐車スペースであれば、3.3m以上が望ましい。
比較部112によって駐車区画線以外の偽白線から検出されたエッジが破棄されているので、駐車枠検出部113による駐車スペースの検出を高精度に行うことができる。つまり、駐車区画線と影との間(例えば、図6(b)のエッジの線分Em3とEp4の間等)が駐車スペースとして誤検知されるのを抑制できる。
そして、駐車枠検出部113は、検出された駐車スペースに基づいて、駐車スペースの形状、つまり駐車枠(図5に示す201)を推定し、その座標値を駐車枠登録データ121として記憶部120に登録する。
表示制御部114は、カメラ20により撮像された車両V周辺の路面画像や、駐車枠検出部113により検出、推定された駐車枠を示す画像をこの路面画像に適宜重複して、あるいは単独でナビゲーション装置(表示装置)30のモニター31に表示させるための表示制御信号をナビゲーション装置30に送出する。
記憶部120は、ハードディスクドライブ等の大容量記憶媒体やROM、RAM等の半導体記憶媒体などの記憶媒体を有する。記憶部120には、制御部110における各種動作の際に用いられる各種データが一時的または非一時的に格納される。
また、前述したように、記憶部120には、駐車枠登録データ121、パラメータデータ122が格納される。パラメータデータ122として、閾値、オフセット値、輝度の比較に用いる画素の数や分割数等の他に、駐車区画線や車線境界線等の境界線の基準長さ、駐車スペース幅及びその閾値等を格納することもできる。さらに、境界線の幅、延在方向の角度等、画像処理装置100が使用する様々なパラメータを格納することもできる。また、駐車支援装置1が使用される国、地域、駐車スペース(駐車枠)の形状や大きさ、走行車線間の距離や車線境界線の形状等に対応して、複数のパラメータを格納し、適切なパラメータを選択する構成とすることもできる。
(画像処理装置の動作)
次に、本実施の形態である画像処理装置100の動作の一例を図4のフローチャート及び図5~図8を参照して説明する。
図4は画像処理装置100の動作を説明するためのフローチャートである。図4のフローチャートに示す動作は、運転者が図略の自動駐車開始スイッチを操作して自動駐車開始の指示入力を行うことにより開始する。
ステップS1では、画像処理装置100の制御部110が、カメラ20により撮像された車両V周囲の路面Rの画像信号を取得する。
ステップS2では、ステップS1により取得された画像信号に基づき、制御部110がこれら画像信号を合成した信号を生成する。ステップS2において合成される信号は、あたかも車両Vの上方にカメラを設置して真下を見下ろしたような画像(俯瞰画像)をナビゲーション装置30に表示させるための信号である。このような俯瞰画像を生成する技術は公知であり、一例として、特開平3-99952号公報や特開2003-118522号公報に開示された技術が知られている。
図6(a)は、合成した信号に基づく俯瞰画像Gの一例である。この俯瞰画像Gは、カメラ20a~20dで撮影された画像信号に基づいて、それぞれ車両Vを真上から見下ろした俯瞰画像g1,g2,g3,g4に変換して、さらに各俯瞰画像g1を合成して生成された画像である。俯瞰画像Gの中心部分には、車両Vを真上から見下ろした状態を示すアイコンIが表示される。
なお、ステップS2において画像合成作業を行わず、あるいは、次のステップS3におけるプラスエッジとマイナスエッジの抽出の後にステップS2における画像合成作業を行うこともできる。しかしながら、俯瞰画像Gを生成してからプラスエッジとマイナスエッジの抽出作業を行うほうが画像処理装置100の処理負担が低減できる。
ステップS3(エッジ検出工程)では、前述したように、エッジ検出部111がステップS2で合成した俯瞰画像Gを所定方向に走査し、画像信号に含まれる輝度に基づいて、画像中のプラスエッジ及びマイナスエッジを抽出する。
一例として、図6(a)に示すように、俯瞰画像GのX軸(ここでは、図5に矢印で示す車両Vの走行方向に沿う方向であって駐車区画線200の延在方向に直交する方向)を図中の左右方向に設定し、Y軸(ここでは駐車区画線200の延在方向)を図中の上下方向に設定する。エッジ検出部111は、俯瞰画像Gを、車両Vの走行方向に直交する方向であって図中の左から右(X軸正方向)に向けて走査する。これにより、画像中のプラス(+)エッジ及びマイナス(-)エッジを検出していく。なお、図中の右から左、つまりX軸負方向に画素を走査した場合、プラスエッジとマイナスエッジは逆転する。また、画像信号に含まれる色のパラメータ(例えば、RGB、RGBA等)の情報に基づいてプラスエッジ、マイナスエッジを検出してもよい。この場合、所定の色の大きさ(階調)の変化に基づいてこれらを検出する。
図6(b)に、俯瞰画像Gで検出されたプラスエッジを太線で、マイナスエッジを太破線で模式的に示した。この図6(b)に示すように、4本の駐車区画線の外周部分であって、左側(走査元)にプラスエッジの線分Ep1,Ep2,Ep3,Ep6が検出され、右側(走査先)にマイナスエッジの線分Em1,Em2,Em3,Em6が検出された。この他に、エッジ強調機能の影響により、長尺に延びる物体(ポール)の影の両側に、それぞれプラスエッジの線分Ep4,Ep5と、マイナスエッジの線分Em4,Em5が検出された。
また、この他にも、路面上での光の反射や、ゴミや汚れ等がある場合、これらのエッジもノイズ(短いエッジ)として検出されることがある。これらのノイズは、次のステップS4のフィルタリングによって破棄される。
次のステップS4では、エッジ検出部111がステップS3で検出したプラスエッジ及びマイナスエッジのフィルタリングを行う。このフィルタリングは、次のステップS5のペアの抽出の後に行うこともできるが、ペアの抽出の前に行って、ノイズを除去することで、画像処理を高速化できる。
まず、エッジ検出部111は予め決められた基準長さ以上の長さを有し、かつ予め決められた方向に延びるプラスエッジの線分及びマイナスエッジの線分を抽出する。基準長さは、例えば、車両Vの車長分(例えば5m)の長さとしているが、駐車区画線が短い場合等は、車長よりも短い長さとしている。角度は、車両Vの走行方向、画像を撮影したカメラ20の向き等を考慮した角度としている。図6の場合は、駐車区画線は、走行方向に対して駐車スペースに向かって略直角に延びる直線であるため、角度=90°±閾値としている。
この処理により、プラスエッジの線分Ep1~Ep6と、マイナスエッジの線分Em1~Em6が抽出される。これに対して、路面の反射やゴミ等の存在によって検知された短いエッジや、垂直方向以外に延びる長いエッジの線分は抽出されず、ノイズとして破棄される。
次のステップS5で、エッジ検出部111は、抽出された複数のエッジの線分から、隣接するプラスエッジの線分とマイナスエッジの線分のペアを抽出する。このとき、俯瞰画像Gに基づき路面上で隣り合うプラスエッジとマイナスエッジの距離を算出し、この距離が所定の線幅±閾値の範囲内であれば、これらをペアと判定する。
図6(a)の例では、プラスエッジの線分Ep1とマイナスエッジの線分Em1のペアが抽出される。以下、同様にEp2とEm2、Ep3とEm3、Ep4とEm4、Ep5とEm5、Ep6とEm6が、それぞれペアとして抽出される。つまり、駐車区画線以外の偽白線のエッジも、駐車区画線を構成するエッジのペアの候補として抽出されてしまう。
そこで、次のステップS6~S11の駐車区画線抽出のループ処理(比較工程)によって、駐車区画線を構成するエッジのペアのみを抽出し、偽白線を構成するエッジのペアを破棄している。このステップS6~S11の処理は、すべてのペアの処理を行ったと判定した場合に、終了する。
まず、ステップS7で、処理対象のペアのプラスエッジの線分から、走査元側にオフセットした10点の画素の輝度を取得し、その平均値Ypを算出する。次いで、ステップS8で、処理対象のペアのマイナスエッジの線分から、走査先側にオフセットした10点の画素の輝度を取得し、その平均値Ymを算出する。
次いで、ステップS9で、輝度の平均値Yp、Ymの差分が閾値以下か否か、すなわち、前述の式(1)を満足するか否かを判定する。式(1)を満足する場合(差分が閾値以下)は、当該ペアが駐車区画線を構成するペアであると判定し、ステップS10へ進み、当該プラスエッジとマイナスエッジのペアで挟まれた線分を、駐車区画線として記憶部120に登録する。その後、処理すべき次のペアが存在する場合は、ステップS7へ戻り、処理すべきペアが存在しない場合は、ループを終了してステップS12へと進む。
一方、式(1)を満足しない場合(差分が閾値超)は、当該ペアが駐車区画線以外の偽白線を構成するペアであると判定し、ステップS10をスキップして、当該ペアを破棄する。これにより、偽白線が除去される。その後、処理すべき次のペアが存在する場合は、ステップS7へ戻り、処理すべきペアが存在しない場合は、ループを終了してステップS12へと進む。
以下、ステップS7~S10の処理の具体例を、図7、図8を参照しながら説明する。図7は、図6(b)の領域Aの拡大図であり、駐車区画線の外周に検出されたプラスエッジの線分Ep1とマイナスエッジの線分Em1のペアを示す。図8は、図6(b)の領域Bの拡大図であり、偽白線の外周に検出されたプラスエッジの線分Ep4とマイナスエッジの線分Em4のペア、及びプラスエッジの線分Ep5とマイナスエッジの線分Em5のペアを示す。
図7に示す例では、プラスエッジの線分Ep1から走査元側に2pixel(2pix)平行移動(オフセット)した画素列の線分Lp1と、マイナスエッジの線分Em1から走査先側に2pixel(2pix)平行移動(オフセット)した画素列の線分Lm1を抽出する。各線分Lp1,Lm1を9等分し、各線分Lp1,Lm1の両端(始点と終点)を含む10点の画素Qの輝度を取得する。取得した複数の輝度を平均して平均値Yp,Ym(以下、「Yp1」,「Ym1」のように、線分と同じ番号を付与して区別する。)を算出する。
同様にして、図8に示す例では、プラスエッジの線分Ep4とマイナスエッジの線分Em4のペアに基づいて、線分Lp4,Lm4が抽出され、これらを9等分して得られる10点の画素Qの輝度の平均値Yp4,Ym4が算出される。また、プラスエッジの線分Ep5とマイナスエッジの線分Em5のペアに基づいて、線分Lp5,Lm5が抽出され、これらを9等分して得られる10点の画素Qの輝度の平均値Yp5,Ym5が算出される。
図7に示す線分Ep1,Em1のペアは駐車区画線を構成するペアであるため、線分Lp1,Lm1においては路面の輝度が取得され、これらの平均値Yp1,Ym1の差分は閾値以下となる。このため、式(1)を満足し、エッジの線分Ep1,Em1は、駐車区画線を構成するエッジのペアと判定され、駐車区画線として記憶部120に登録される。
一方、図8に示す線分Ep4,Em4のペア及び線分Ep5,Em5のペアは、エッジ強調機能により影の周囲に現れる偽白線のエッジである。このため、線分Lp4,Lm5においては路面の輝度が取得され、線分Lm4,Lp5においては路面よりも暗い影の輝度が取得される。よって、平均値Yp4と平均値Ym4、及び平均値Yp5と平均値Ym5との差分が大きくなり、式(1)を満足せず、これらのペアは破棄される。
以上から、図6(b)の例では、プラスエッジの線分とマイナスエッジの線分のペア(Ep1とEm1、Ep2とEm2、Ep3とEm3及びEp6とEm6)で構成される駐車区画線K1~K4が記憶部120に登録される。
図4に戻り、ステップS6~S11の駐車区画線抽出のループ処理を抜けると、次のステップS12では、駐車枠検出部113が記憶部120に登録された駐車区画線(図6(b)の例では、駐車区画線K1~K4)に基づいて、駐車枠及び駐車スペースを検出する。それには、前述したように駐車スペースを構成する可能性のある隣り合う駐車区画線K1~K4の、向かい合うプラスエッジの線分とマイナスエッジの線分間の距離を算出する。この距離が所定の駐車スペース幅±閾値の範囲であれば、この2つの駐車区画線で間の領域が駐車スペースであると判定する。図6(b)の例では、プラス又はマイナスエッジの線分Em1と線分Ep2間、線分Em2と線分Ep3間、線分Em3と線分Ep6間が、駐車スペースとして検出される。そして、検出された駐車スペースを構成する向かい合うプラスエッジの線分とマイナスエッジの線分に沿った線を長辺とし、向かい合う両端をそれぞれ結んだ線を短辺とする矩形状の枠が駐車枠201(図5参照)であると推定できる。
ステップS13では、駐車枠検出部113が、各駐車枠201を構成する向かい合うプラスエッジの線分及びマイナスエッジの線分の端点の座標値を各々算出し、駐車枠登録データ121として記憶部120に登録する。このとき、駐車枠201の少なくとも車両Vに近い側の2つの端点の座標値を登録すれば、記憶容量をできるだけ少なくしつつ、駐車枠201を特定できるが、4点の座標値を登録してもよい。また、駐車区画線200の角度(延在方向)、その他自動駐車処理に必要な情報を駐車枠登録データ121に加えることもできる。
また、駐車枠検出部113は、検出した駐車枠に車両Vを駐車できるか否かを判定する判定処理等を行う。例えば、検出された駐車スペースに他車両や障害物等が存在するときには、駐車ができないと判断して、駐車枠登録データ121として記憶部120に登録しないようにする。また、駐車枠検出部113は、車両Vから近い駐車枠、又は駐車し易い駐車枠を、駐車可能な駐車枠と判定し、駐車枠登録データ121として記憶部120に登録することもできる。
以上のようにして検出された駐車枠登録データ121が、車両制御ECU40に送出され、車両Vの駐車を支援する各種処理が実行される。
(画像処理装置の効果)
以上のように構成された本実施の形態である画像処理装置100では、エッジ検出部111が、車両Vの周囲の路面Rを撮像するカメラ20から出力される画像信号に基づく画像を、所定方向に走査し、画像信号に含まれる輝度が閾値よりも大きく変化する画素を検出し、検出した画素の並びが所定以上の長さとなっている部分をエッジとして検出する。そして、比較部112が、エッジ検出部111で検出した第1のエッジの所定方向側にある画素の輝度と、第2のエッジの、第1のエッジの所定方向側とは反対方向側にある画素の輝度と、を比較して、輝度差が所定値以下となる場合、この第1のエッジ及び第2のエッジを、境界線を構成するエッジのペアであると判定する。
本実施の形態では、第1のエッジと、第2のエッジは、隣り合った画素の輝度差がプラス方向に所定値よりも大きくなるプラスエッジと、隣り合った画素の輝度差がマイナス方向に所定値よりも大きくなるマイナスエッジである。
これにより、カメラ20のエッジ強調機能によりエッジが強調された路面上に延びる木やポールの影等を構成するエッジのペアが除外され、境界線と判定されるのを抑制できる。この結果、駐車区画線や車線境界線等の路面を区画する境界線の検出を、高精度に行うことが可能な画像処理装置及び画像処理方法を提供できる。この結果、カメラ20が有する機能に左右されることなく、何れのカメラ20を備えた車両Vにも適用可能な画像処理装置100及び画像処理方法を提供できる。
また、この画像処理装置100又は画像処理方法を備えることで、駐車枠の検出や走行車線の検出を高精度に行うことが可能な駐車支援装置、駐車支援方法、走行支援装置及び走行支援方法を提供できる。
また、比較部112は、第1のエッジ(プラスエッジ)の所定方向側にある画素の輝度と、第2のエッジ(マイナスエッジ)の、第1のエッジの所定方向側と反対方向側にある画素の輝度と、を比較するとき、第1のエッジ及び第2のエッジから所定量オフセットした画素を用いて比較することが望ましい。これにより、例えば、輝度が明確に異なる路面部分の輝度と影部分の輝度とを比較でき、境界線の検出精度をより向上できる。
また、本実施の形態では、比較部112は下記式を満たす場合、第1のエッジ及び第2のエッジを、境界線を構成するエッジのペアであると判定する。これにより、境界線以外の影等のエッジのペアを破棄し、境界線を構成するエッジのペアのみを高精度に抽出できる。
|Yp - Ym| ≦ 閾値
上記式中、Ypは、プラスエッジの所定方向側にある画素の並びを、延在方向に沿って等分割した複数の分割点における輝度を平均した平均値である。Ymは、マイナスエッジの、プラスエッジの所定方向側とは反対方向側にある画素の並びを、延在方向に沿って等分割した複数の分割点における画素の輝度を平均した平均値である。
また、エッジ検出部111は、輝度に代えて、画像信号に含まれる色のパラメータ(例えば、RGB、RGBA等)の情報に基づいてエッジを検出してもよく、この場合でも、第1のエッジ(プラスエッジ)と、これと異なる第2のエッジ(マイナスエッジ)を、より高速かつより精度よく検出できる。
また、エッジ検出部111及び比較部112で用いられるオフセット値等のパラメータ及び各種閾値が、予め設定されている記憶部120を備える構成としてもよい。この構成により、使用するカメラ20の機能や駐車場や走行車線の状態(長尺な影を作り易いポール、木、建物等の有無、天候、季節、時間等。)に基づいてオフセット値や閾値を任意に設定したり、更新したりでき、境界線の検出をより適切に行えるとともに、画像処理装置100や画像処理方法の汎用性も向上する。
また、境界線が、駐車スペースを区画する駐車区画線である場合は、比較部112によって判定された境界線を構成するエッジのペアの中から、隣り合うペアを検出し、隣り合うペア間の距離に基づいて、駐車枠を検出する駐車枠検出部113を備える構成とすることで、駐車枠をより高精度に検出可能となる。よって、画像処理装置100及び画像処理方法を、駐車支援装置及び駐車支援方法に好適に用いることができる。
また、境界線が、走行車線を区画する車線境界線である場合は、比較部112によって判定された境界線を構成するエッジのペアに基づいて、走行車線を検出する走行車線検出部を備えた構成とすることで、走行車線を高精度に検出可能となる。よって、画像処理装置100及び画像処理方法を、走行支援装置及び走行支援方法に好適に用いることができる。
以上、図面を参照して、本発明の実施の形態を詳述してきたが、具体的な構成は、この実施の形態及び実施例に限らず、本発明の要旨を逸脱しない程度の設計的変更は、本発明に含まれる。
例えば、上述の実施の形態である画像処理装置100では、画像の輝度や色のパラメータ(例えば、RGB、RGBA等)の情報の変化の大きさ及び変化の方向(プラス方向又はマイナス方向)に基づいてエッジを検出しているが、これらに限定されることはなく、画像信号に含まれる他の情報の変化の大きさ及び変化の方向に基づいてエッジを検出してもよい。