画像処理装置、駐車支援システム、画像処理方法及びプログラム
【課題】画像に基づいて車両の駐車対象となる駐車枠の存在を迅速に判定する。
【解決手段】画像処理装置2では、横枠線検出部44が画像G中の1つの横枠線検出領域に基づいて駐車枠の横枠線L1を検出し、縦枠線検出部45が画像G中の2つの縦枠線検出領域に基づいて2つの縦枠線を検出する。さらに、接続部検出部47が、画像G中の2つの縦枠線検出領域に基づいて2つの接続部を検出する。そして、駐車枠判定部48は、これらの検出結果に基づいて駐車対象となる駐車枠の存在を判定する。画像Gの全体ではなく画像G中の限られた領域に基づいて駐車枠の存在を判定するため、駐車枠の存在を迅速に判定できる。
【解決手段】画像処理装置2では、横枠線検出部44が画像G中の1つの横枠線検出領域に基づいて駐車枠の横枠線L1を検出し、縦枠線検出部45が画像G中の2つの縦枠線検出領域に基づいて2つの縦枠線を検出する。さらに、接続部検出部47が、画像G中の2つの縦枠線検出領域に基づいて2つの接続部を検出する。そして、駐車枠判定部48は、これらの検出結果に基づいて駐車対象となる駐車枠の存在を判定する。画像Gの全体ではなく画像G中の限られた領域に基づいて駐車枠の存在を判定するため、駐車枠の存在を迅速に判定できる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像に基づいて車両の駐車対象となる駐車枠の存在を判定する技術に関する。
【背景技術】
【0002】
自動車などの車両を後退させて駐車枠内に駐車させる操作を苦手とするドライバは多い。このため、従来より、車両の駐車を支援するための各種の駐車支援システムが提案されている。
【0003】
例えば、車両を駐車させるために必要なステアリングの操作などの具体的な操作内容を適切なタイミングで音声によってドライバに案内する駐車支援システムが知られている。また、近年では、車両の挙動を制御して駐車枠内に車両を自動的に移動させるインテリジェントパーキングアシストと呼ばれる駐車支援システムも実用化されている(例えば、特許文献1参照。)。ドライバは、このような駐車支援システムを利用することで、車両を駐車枠内に容易に駐車させることが可能となる。
【0004】
このような駐車支援システムを利用する場合は、駐車支援システムに駐車対象となる駐車枠の位置(車両に対する相対的な位置)を正しく認識させる必要がある。このため、車両の外部を撮影するカメラで得られた画像に基づいて駐車対象となる駐車枠の位置を認識する画像処理機能を備えた駐車支援システムも知られている(例えば、特許文献1参照。)。このような駐車支援システムは、車両が停止した状態で駐車枠を含む画像を取得し、その画像に基づいて駐車枠の位置を認識するようになっている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2010−195224号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
ところで近年、車両が走行している状態で車両の近傍に駐車可能な駐車枠が存在するか否かを判定し、そのような駐車枠が存在する場合は当該駐車枠に車両を駐車させる駐車支援システムが検討されている。
【0007】
このような駐車支援システムを実現するためには、車両の走行中に周期的に取得される画像に基づいて駐車可能な駐車枠が存在するか否かを判定する必要がある。したがって、駐車可能な駐車枠が存在するか否かを判定する処理を迅速に行う必要がある。
【0008】
また、このような駐車支援システムだけではなく、車両が停止した状態で画像を取得する一般的な駐車支援システムにおいても、駐車可能な駐車枠が存在するか否かを判定するまでの処理時間をできるだけ短縮することが望ましい。
【0009】
本発明は、上記課題に鑑みてなされたものであり、駐車枠の存在を迅速に判定することができる技術を提供することを目的とする。
【課題を解決するための手段】
【0010】
上記課題を解決するため、請求項1の発明は、画像に基づいて車両の駐車対象となる駐車枠の存在を判定する画像処理装置であって、前記車両の外部を撮影するカメラで得られた画像を取得する取得手段と、前記画像中の1つの第1領域に基づいて、前記カメラの光軸に略直交する前記駐車枠の第1線を検出する第1検出手段と、前記画像中の前記第1領域の左側及び右側にそれぞれ設定される2つの第2領域に基づいて、前記カメラの光軸に略沿った前記駐車枠の2つの第2線を検出する第2検出手段と、前記第1及び前記第2検出手段の検出結果に基づいて、前記駐車枠の存在を判定する判定手段と、を備えている。
【0011】
また、請求項2の発明は、請求項1に記載の画像処理装置において、前記第1領域は、前記画像の左右中央に設定される。
【0012】
また、請求項3の発明は、請求項1または2に記載の画像処理装置において、前記第1領域の水平方向のサイズは、前記画像の水平方向のサイズの1/10以下である。
【0013】
また、請求項4の発明は、請求項1ないし3のいずれかに記載の画像処理装置において、前記第1検出手段は、前記第1領域の水平エッジを抽出し、前記第1領域を垂直方向に分割して得られる複数の分割領域をそれぞれ階級とし、前記水平エッジとなる画素の数を度数とするヒストグラムに基づいて前記第1線を検出する。
【0014】
また、請求項5の発明は、請求項4に記載の画像処理装置において、前記第1検出手段は、前記ヒストグラムにおいて、前記度数が第1閾値Th1より大きい階級の数が所定値以下であり、かつ、前記度数が第2閾値Th2(Th1≦Th2)より大きい階級が存在する場合に、前記第1線を検出する。
【0015】
また、請求項6の発明は、請求項5に記載の画像処理装置において、前記第1検出手段は、前記ヒストグラムにおいて前記度数が最大となる階級の位置に基づいて、前記画像の垂直方向における前記第1線の位置を特定する。
【0016】
また、請求項7の発明は、請求項1ないし6のいずれかに記載の画像処理装置において、前記第1検出手段は、前記画像における前記第1線の位置を特定し、前記画像処理装置は、前記画像における前記第1線の位置を基準に、前記画像における前記2つの第2領域を設定する領域設定手段、をさらに備えている。
【0017】
また、請求項8の発明は、請求項1ないし7のいずれかに記載の画像処理装置において、前記第2検出手段は、前記2つの第2領域のそれぞれにおいて垂直エッジを抽出し、前記2つの第2領域のそれぞれにおいて、該第2領域に含まれる全ての水平ラインのうち前記垂直エッジを含む水平ラインの割合に基づいて前記第2線を検出する。
【0018】
また、請求項9の発明は、請求項1ないし8のいずれかに記載の画像処理装置において、前記第2検出手段は、前記2つの第2領域のそれぞれにおいて、該第2領域に含まれるエッジの方向が右上がりか右下がりかを判定し、その判定結果に基づいて前記第2線を検出する。
【0019】
また、請求項10の発明は、請求項1ないし9のいずれかに記載の画像処理装置において、前記第1検出手段は、前記画像における前記第1線の位置を特定し、前記画像処理装置は、前記第1線の位置に基づいて、前記画像における前記駐車枠の領域と推定される推定領域を導出する導出手段と、前記推定領域中の輝度が閾値以下となる画素の数に基づいて前記駐車枠内の駐車車両の有無を判定する車両判定手段と、をさらに備えている。
【0020】
また、請求項11の発明は、請求項1ないし10のいずれかに記載の画像処理装置において、前記2つの第2領域に基づいて、前記第1線と前記第2線とを接続する2つの接続部をそれぞれ検出する第3検出手段、をさらに備えている。
【0021】
また、請求項12の発明は、請求項11に記載の画像処理装置において、前記判定手段は、前記第1検出手段が前記第1線を検出したという第1条件と、前記第2検出手段が前記2つの第2線を検出したという第2条件と、前記第3検出手段が前記2つの接続部を検出したという第3条件と、の全ての条件が満足した場合に、前記駐車枠が存在すると判定する。
【0022】
また、請求項13の発明は、請求項12に記載の画像処理装置において、前記判定手段は、前記第1ないし第3条件のいずれかの条件が満足しない場合には、以降の他の条件に関する処理を実行させない。
【0023】
また、請求項14の発明は、請求項1に記載の画像処理装置において、前記カメラは、前記車両の側方を撮影するサイドカメラである。
【0024】
また、請求項15の発明は、駐車支援システムであって、請求項1ないし14のいずれかに記載の画像処理装置と、前記画像処理装置で検出された前記駐車枠への車両の駐車を支援する駐車支援装置と、を備えている。
【0025】
また、請求項16の発明は、画像に基づいて車両の駐車対象となる駐車枠の存在を判定する画像処理方法であって、(a)前記車両の外部を撮影するカメラで得られた画像を取得する工程と、(b)前記画像中の1つの第1領域に基づいて、前記カメラの光軸に略直交する前記駐車枠の第1線を検出する工程と、(c)前記画像中の前記第1領域の左側及び右側にそれぞれ設定される2つの第2領域に基づいて、前記カメラの光軸に略沿った前記駐車枠の2つの第2線を検出する工程と、(d)前記工程(a)及び(b)の検出結果に基づいて、前記駐車枠の存在を判定する工程と、を備えている。
【0026】
また、請求項17の発明は、画像処理装置に含まれるコンピュータによって実行可能なプログラムであって、前記コンピュータによる前記プログラムの実行は、前記コンピュータに、(a)車両の外部を撮影するカメラで得られた画像を取得する工程と、(b)前記画像中の1つの第1領域に基づいて、前記カメラの光軸に略直交する駐車枠の第1線を検出する工程と、(c)前記画像中の前記第1領域の左側及び右側にそれぞれ設定される2つの第2領域に基づいて、前記カメラの光軸に略沿った前記駐車枠の2つの第2線を検出する工程と、(d)前記工程(a)及び(b)の検出結果に基づいて、前記駐車枠の存在を判定する工程と、を実行させる。
【発明の効果】
【0027】
請求項1ないし17の発明によれば、画像の全体ではなく画像中の限られた領域に基づいて駐車枠の存在を判定する。このため、駐車枠の存在を判定するための演算量を大幅に低減でき、駐車枠の存在を迅速に判定することができる。
【0028】
また、特に請求項2の発明によれば、画像中の歪の少ない中央の領域に基づいて第1線を検出することができる。
【0029】
また、特に請求項3の発明によれば、第1領域の水平方向のサイズが小さいため、駐車枠の存在を判定するための演算量を大幅に低減できる。
【0030】
また、特に請求項4の発明によれば、第1領域の分割領域をそれぞれ階級とするヒストグラムに基づいて第1線を検出するため、駐車枠の第1線がカメラの光軸に正確に直交していなくとも、駐車枠の第1線を検出することができる。
【0031】
また、特に請求項5の発明によれば、度数が第1閾値より大きい階級の数が多い場合は第1線を検出しない。このため、他の物体が近傍に存在する駐車枠などを駐車対象とすることを防止できる。
【0032】
また、特に請求項6の発明によれば、画像の垂直方向における第1線の位置を正確に特定できる。
【0033】
また、特に請求項7の発明によれば、駐車枠の第1線の位置を基準に2つの第2領域を設定するため、駐車枠の第2線を検出する精度を高めることができる。
【0034】
また、特に請求項8の発明によれば、第2領域に含まれる全ての水平ラインのうち垂直エッジを含む水平ラインの割合に基づいて第2線を検出するため、比較的長い垂直エッジがある場合に第2線を検出することができる。
【0035】
また、特に請求項9の発明によれば、第2領域に含まれるエッジの方向が右上がりか右下がりかを判定し、その判定結果に基づいて第2線を検出するため、所定の方向に延びるエッジがある場合に第2線を検出することができる。
【0036】
また、特に請求項10の発明によれば、比較的低輝度の画素の数に基づいて駐車枠内の駐車車両の有無を判定するため、簡便な処理で駐車車両の有無を判定することができる。
【0037】
また、特に請求項11の発明によれば、第2領域に基づいて2つの接続部を検出するため、接続部を検出するための演算量を大幅に低減できる。
【0038】
また、特に請求項12の発明によれば、全ての条件を満足した場合に駐車枠が存在すると判定するため、駐車枠を検出する精度を向上できる。
【0039】
また、特に請求項13の発明によれば、第1ないし第3条件のいずれかの条件を満足しない場合には他の条件に関する処理が実行されないため、無駄な処理の実行を防止できる。
【0040】
また、特に請求項14の発明によれば、車両を走行させながら、車両の側方において駐車対象となる駐車枠が存在するかを判定することができる。
【0041】
また、特に請求項15の発明によれば、駐車枠の存在を迅速に判定し、その駐車枠への車両の駐車を支援することができる。
【図面の簡単な説明】
【0042】
【図1】図1は、駐車支援システムの概要を示す図である。
【図2】図2は、駐車支援システムが駐車支援を実行する場合の車両の動きを示す図である。
【図3】図3は、駐車支援システムの構成を示す図である。
【図4】図4は、車載カメラが車両に配置される位置を示す図である。
【図5】図5は、右サイドカメラで取得された画像の例を示す図である。
【図6】図6は、右サイドカメラで取得された画像の例を示す図である。
【図7】図7は、右サイドカメラで取得された画像の例を示す図である。
【図8】図8は、判定処理に用いられる画像中の領域を示す図である。
【図9】図9は、判定処理の流れを示す図である。
【図10】図10は、横枠線検出処理の詳細な流れを示す図である。
【図11】図11は、横枠線検出領域が設定された画像の例を示す図である。
【図12】図12は、水平エッジを抽出するためのオペレータを示す図である。
【図13】図13は、ヒストグラムの例を示す図である。
【図14】図14は、ヒストグラムの例を示す図である。
【図15】図15は、ヒストグラムの例を示す図である。
【図16】図16は、領域設定処理の詳細な流れを示す図である。
【図17】図17は、車両判定領域及び縦枠線検出領域の導出手法を説明する図である。
【図18】図18は、縦枠線検出領域が設定された画像の例を示す図である。
【図19】図19は、縦枠線検出処理の詳細な流れを示す図である。
【図20】図20は、垂直エッジを抽出するためのオペレータを示す図である。
【図21】図21は、右上がりのエッジの一部を模式的に示す図である。
【図22】図22は、右下がりのエッジの一部を模式的に示す図である。
【図23】図23は、車両判定処理の詳細な流れを示す図である。
【図24】図24は、駐車枠に駐車車両がない場合の画像の例を示す図である。
【図25】図25は、駐車枠に駐車車両がある場合の画像の例を示す図である。
【図26】図26は、画像中の左側の接続部の近傍を拡大して示す図である。
【図27】図27は、接続部検出処理の詳細な流れを示す図である。
【図28】図28は、Haar−Like特徴を示す図である。
【図29】図29は、Haar−Like特徴を示す図である。
【発明を実施するための形態】
【0043】
以下、図面を参照しつつ本発明の実施の形態について説明する。
【0044】
<1.システムの概要>
図1は、本実施の形態に係る駐車支援システム10の概要を示す図である。駐車支援システム10は、自動車などの車両9に搭載され、車両9の駐車枠内への駐車を支援する駐車支援機能を有している。駐車支援システム10は、車両9の近傍に存在する駐車枠の存在を判定し、駐車可能な駐車枠が存在する場合は車両9の挙動を制御して当該駐車枠内に車両を自動的に移動させる。以下、駐車支援システム10が搭載される車両9を「自車両」という。
【0045】
駐車支援システム10は、複数の車載カメラ5と、画像処理装置2と、駐車支援装置3とを備えている。画像処理装置2と駐車支援装置3とは通信ケーブル等を介して相互に通信可能となっている。
【0046】
複数の車載カメラ5は、自車両9の外部を撮影して、自車両9の周囲の様子を示す画像を取得する。画像処理装置2は、複数の車載カメラ5の一つで得られた画像に基づいて駐車可能な駐車枠が存在するか否かを判定し、駐車可能な駐車枠が存在する場合は駐車枠の位置を特定する。そして、駐車支援装置3は、自車両9のステアリング及びブレーキなどを制御して当該駐車枠に自車両9を移動させる。
【0047】
駐車支援システム10は、動作モードとして、このような駐車支援を実行する駐車支援モードとともに、自車両9の外部の様子を示す画像を表示する画像表示モードを備えている。駐車支援システム10は、通常は、画像表示モードとなっている。画像表示モードでは、駐車支援システム10は、ユーザ(代表的にはドライバ)に選択された車載カメラ5で得られた画像を、画像処理装置2が備えるディスプレイ22に表示させる。このような画像表示モードにおいてユーザから駐車支援の指示がある場合は、駐車支援システム10は、駐車支援モードに移行して駐車支援機能を有効化する。
【0048】
駐車支援システム10は、並列駐車及び縦列駐車のいずれの駐車支援も実行することが可能であるが、以下では縦列駐車の駐車支援を実行する場合について具体的に説明する。
【0049】
図2は、駐車支援システム10が縦列駐車の駐車支援を実行する場合の自車両9の動きを示す図である。以下、図2を参照して、駐車支援システム10が実行する駐車支援の概要について説明する。
【0050】
まず、ユーザが、駐車枠PFの長手方向と自車両9の前後方向とがおよそ平行となるように自車両9を停車させる(ステップS1)。この際、最終的に駐車対象となる駐車枠PFの位置と自車両9の位置とは離れていてよい。また、駐車枠PFの長手方向と自車両9の前後方向とは、およそ平行であればよく、完全に平行である必要はない。この状態で、ユーザは、駐車支援システム10に対して、並列駐車及び縦列駐車のいずれの駐車支援を実行するかを指示する。図2の場合は、ユーザは縦列駐車の駐車支援を指示することになる。
【0051】
ユーザから駐車支援の実行の指示がなされると、駐車支援システム10の駐車支援装置3が、自車両9のブレーキを制御して自車両9を直進させる(ステップS2)。これにより、自車両9は、駐車枠PFの長手方向におよそ平行に走行することになる。
【0052】
このような自車両9の走行中において、駐車支援システム10の画像処理装置2が、駐車可能な駐車枠PFが存在するか否かを判定する。画像処理装置2は、自車両9の側方に向けられた車載カメラ5(図2では、右サイドカメラ5R)で得られた画像に基づいて駐車枠PFの存在を判定する判定処理を実行する。車載カメラ5は所定周期(例えば、1/30秒周期)で画像を取得し、画像処理装置2は画像が取得されるごとに判定処理を実行する。そして、画像処理装置2は、車載カメラ5の光軸の方向に駐車車両99が無い駐車枠PFがある場合に、駐車可能な駐車枠PFが存在すると判定する。
【0053】
画像処理装置2は、駐車可能な駐車枠PFが存在すると判定した場合は、駐車枠PFの位置(自車両9に対する相対的な位置)を特定し、特定した駐車枠PFの位置を駐車支援装置3に受け渡す(ステップS3)。これに応答して、駐車支援装置3は自車両9のブレーキを制御して自車両9を停車させる。これにより、自車両9は、駐車可能と判定された駐車枠PFの近傍に停車する。また、駐車支援システム10は、画像処理装置2のディスプレイ22を介して、駐車可能な駐車枠PFが検出された旨をユーザに通知し、当該駐車枠PFに自車両9を駐車させるか否かをユーザに問い合わせる。
【0054】
この問い合わせにより、ユーザは駐車枠PFや周辺状況を自分の目で確認して、当該駐車枠PFに自車両9を駐車させるか否かを判断する。そして、ユーザが駐車させる指示を駐車支援システム10に行った場合は、駐車支援装置3が自車両9の挙動を制御して自車両9を駐車枠PF内に移動させる(ステップS4)。駐車支援装置3は、まず、画像処理装置2に特定された駐車枠PFの位置に基づいて、自車両9を駐車枠PF内に移動させるための移動経路Kを導出する。そして、駐車支援装置3は、自車両9のステアリング及びギア等を制御して、移動経路Kに沿うように自車両9を移動させる。自車両9が駐車枠PF内に移動すると、駐車支援装置3はブレーキを制御して自車両9を停車させる。このようにして、駐車支援システム10は、駐車枠PF内に自車両9を駐車させることになる。
【0055】
<2.システムの構成>
次に、駐車支援システム10の構成について説明する。図3は、駐車支援システム10の構成を示す図である。前述のように、駐車支援システム10は、複数の車載カメラ5と、画像処理装置2と、駐車支援装置3とを備えている。
【0056】
駐車支援装置3は、例えば、ECU((Electric Control Unit)であり、自車両9の適位置に配置される。駐車支援装置3は、経路導出部31と車両誘導部32とを備えている。これら経路導出部31と車両誘導部32とは、例えば、CPUがプログラムに従って演算処理を行うことにより実現される。
【0057】
経路導出部31は、画像処理装置2から受け渡された駐車枠PFの位置に基づいて、自車両9を現在の位置から駐車枠PF内まで移動させるための移動経路Kを導出する。また、車両誘導部32は、自車両9の挙動を制御して、導出された移動経路Kに沿うように自車両9を移動させる。車両誘導部32は、車内LAN90を介して、ステアリングを制御するステアリングシステム91、ブレーキを制御するブレーキシステム92及びギアを制御するギアシステム93と接続されている。車両誘導部32は、これらのシステム91〜93に信号を送信することにより、自車両9の挙動を制御する。
【0058】
複数の車載カメラ5はそれぞれ、レンズと撮像素子とを備えており、自車両9の周辺の様子を示す画像を電子的に取得する。複数の車載カメラ5はそれぞれ、自車両9の車室外の適位置に配置され、取得した画像を画像処理装置2に入力する。複数の車載カメラ5は、フロントカメラ5F、バックカメラ5B、左サイドカメラ5L、及び、右サイドカメラ5Rを含んでいる。これら4つの車載カメラ5F,5B,5L,5Rは、自車両9の異なる位置に配置され、自車両9の外部の異なる方向を撮影する。
【0059】
図4は、車載カメラ5F,5B,5L,5Rが自車両9に配置される位置を示す図である。フロントカメラ5Fは、自車両9の前端の左右中央の近傍に設けられ、その光軸5Faは自車両9の前方(直進方向)に向けられている。バックカメラ5Bは、自車両9の後端の左右中央の近傍に設けられ、その光軸5Baは自車両9の後方(直進方向の逆方向)に向けられている。左サイドカメラ5Lは自車両9の左側のサイドミラー95Lに設けられ、その光軸5Laは自車両9の左側方(直進方向の直交方向)に向けられている。また、右サイドカメラ5Rは自車両9の右側のサイドミラー95Rに設けられ、その光軸5Raは自車両9の右側方(直進方向の直交方向)に向けられている。
【0060】
これらの車載カメラ5F,5B,5L,5Rのレンズには魚眼レンズなどの広角のレンズが採用され、4つの車載カメラ5F,5B,5L,5Rのそれぞれは例えば180度以上の画角θを有している。このため、4つの車載カメラ5F,5B,5L,5Rを利用することで、自車両9の全周囲を撮影することが可能となっている。
【0061】
図3に戻り、画像処理装置2は、ディスプレイ22と、操作部23と、記憶部24と、制御部21とを備えている。
【0062】
ディスプレイ22は、例えば、液晶パネルなどを備えた薄型の表示装置である。ディスプレイ22は、制御部21から出力された画像を表示する。画像処理装置2は、このディスプレイ22の表示画面がユーザから視認可能なように、車室内のインストルメントパネルなどに配置される。
【0063】
操作部23は、ユーザが直接的に操作可能な部材であり、タッチパネル及び操作ボタンを含んでいる。タッチパネルはディスプレイ22の表示画面に重ねて設けられ、操作ボタンはディスプレイ22の表示画面の周囲に設けられる。ユーザが操作部23を操作した場合は、その操作内容を示す信号が制御部21に入力され、制御部21が操作内容に応じたユーザの指示を受け付ける。ユーザは、操作部23を介して、動作モードの切り替え指示や駐車支援の実行の指示などの各種の指示を駐車支援システム10に行うことが可能である。
【0064】
記憶部24は、例えば、フラッシュメモリなどの不揮発性メモリであり、制御部21の処理に必要な各種の情報を記憶する。記憶部24は、例えば、ファームウェアとなるプログラム24aを記憶している。画像処理装置2は、プログラムが記憶されたコンピュータ読み取り可能なメモリカードなどの記憶媒体8からカードリーダ(図示せず)を介して読み出すことで、このようなプログラム24aを取得できるようになっている。
【0065】
また、制御部21は、画像処理装置2の全体を統括的に制御するマイクロコンピュータである。制御部21は、CPU、RAM及びROMなどを備えている。制御部21は、各種の画像処理機能を有している。図中に示す、表示制御部41、画像取得部42、領域設定部43、横枠線検出部44、縦枠線検出部45、車両判定部46、接続部検出部47及び駐車枠判定部48は、制御部21が備える画像処理機能の一部である。これらの画像処理機能は、記憶部24に記憶されたプログラム24aに従ってCPUが演算処理を行うことで実現される。
【0066】
画像取得部42は、4つの車載カメラ5F,5B,5L,5Rでそれぞれ得られた撮影画像を取得する。画像取得部24は、4つの車載カメラ5F,5B,5L,5Rのいずれかの画像を選択的に取得することができる。画像取得部24は、また、取得した画像に対して、ノイズの除去や明るさの調整などの一般的な画像処理を行うことが可能である。
【0067】
表示制御部41は、ディスプレイ22に画像を出力して、ディスプレイ22に画像を表示させる。画像表示モードでは、表示制御部41は、画像取得部42で取得された画像を調整して、ディスプレイ22に画像を出力する。これにより、ユーザは、車両の周辺の様子を示す画像を確認することができる。
【0068】
また、領域設定部43、横枠線検出部44、縦枠線検出部45、車両判定部46、接続部検出部47及び駐車枠判定部48は、駐車枠PFの存在を判定する判定処理に係る画像処理機能である。これらの画像処理機能は、駐車支援モードにおいて有効化される。
【0069】
領域設定部43は、横枠線検出部44、縦枠線検出部45、車両判定部46、及び、接続部検出部47が処理の対象とする領域を画像中に設定する。また、駐車枠判定部48は、横枠線検出部44、縦枠線検出部45、車両判定部46、及び、接続部検出部47による処理の結果に基づいて駐車対象となる駐車枠の存在を判定する。これらの画像処理機能の詳細については後述する。
【0070】
<3.画像>
次に、駐車枠PFの存在を判定する判定処理に用いられる画像について説明する。判定処理には、例えば、右サイドカメラ5Rで取得された画像が利用される。
【0071】
図5〜図7はそれぞれ、右サイドカメラ5Rで取得された画像Gの例を示す図である。これらの画像Gにおいては、自車両9の右側の側方の様子が示されている。前述のように、右サイドカメラ5Rのレンズには魚眼レンズなどの広角のレンズが採用されるため、画像Gに含まれる被写体の像には歪みが生じ、その歪みの程度は画像Gの左右端に近いほど大きくなっている。
【0072】
判定処理では、図5の画像Gのように、画像Gのほぼ左右中央にコの字型(U字型)の枠線(正確には枠線の像)が含まれている場合に、駐車可能な駐車枠PFが存在すると判定される。
【0073】
判定の対象となる駐車枠PFは、自車両9が駐車した場合に、自車両9の前後方向(側面)に沿うことになる枠線L1と、自車両9の左右方向(前面及び背面)に沿うことになる2つの枠線L2とを含んでいる(図2も合わせて参照。)。枠線L1と2つの枠線L2とは、枠線L1の左右端部にある2つの接続部Leにおいて接続される。
【0074】
枠線L1は右サイドカメラ5Rの光軸5Raに略直交して延びるため(図2参照。)、枠線L1の像は画像G中のおよそ横方向に延びるように含まれる(図5参照。)。一方、2つの枠線L2は右サイドカメラ5Rの光軸5Raに略沿って延びるため(図2参照。)、2つの枠線L2の像は画像G中のおよそ縦方向に延びるように含まれる(図5参照。)。このため、本明細書においては便宜上、枠線L1を「横枠線」、枠線L2を「縦枠線」と呼ぶ。左側の接続部Leは横枠線L1と左側の縦枠線L2とを接続し、右側の接続部Leは横枠線L1と右側の縦枠線L2とを接続する。
【0075】
判定処理では、横枠線L1、2つの縦枠線L2及び2つの接続部Leの全てが画像Gに基づいて検出された場合に、駐車枠PFが存在すると判定される。すなわち、横枠線L1、2つの縦枠線L2及び2つの接続部Leのいずれかが検出されなかった場合は、駐車可能な駐車枠PFが存在しないと判定される。例えば、図6に示すように、画像中Gに横枠線L1が含まれていない場合は、駐車可能な駐車枠PFが存在しないと判定される。
【0076】
また、判定処理では、図7に示すように、画像中Gに駐車枠PFが含まれる場合であっても、駐車枠PF内に駐車車両99がある場合は、駐車可能な駐車枠PFが存在しないと判定される。また、図7の左側に示すように、画像中Gに、駐車車両99の無い駐車枠PFが含まれる場合であっても、その駐車枠PFの位置が画像Gのおよそ左右中央でない場合は、駐車可能な駐車枠PFが存在しないと判定される。
【0077】
前述した制御部21が備える画像処理機能のうち、横枠線検出部44が横枠線L1を検出し、縦枠線検出部45が2つの縦枠線L2を検出し、接続部検出部47が2つの接続部Leを検出する。また、車両判定部46が、駐車枠PF内の駐車車両99の有無を判定する。そして、これらの検出結果及び判定結果に基づいて、駐車枠判定部48が駐車可能な駐車枠PFが存在するか否かを判定することになる。
【0078】
このような判定処理は、画像Gの全領域ではなく、画像G中の一部の領域のみに基づいて実行される。図8は、判定処理に用いられる画像G中の領域を示す図である。図8に示すように、画像G中には、1つの横枠線検出領域A1と、2つの縦枠線検出領域A2と、1つの車両判定領域A3とが含まれている。これらの領域A1,A2,A3は、領域設定部43により設定される。
【0079】
横枠線検出領域A1は、横枠線検出部44が横枠線L1の検出に用いる領域である。2つの縦枠線検出領域A2は、縦枠線検出部45が2つの縦枠線L2の検出に用いるとともに、接続部検出部47が2つの接続部Leの検出に用いる領域である。また、車両判定領域A3は、車両判定部46が駐車枠PF内の駐車車両99の有無の判定に用いる領域である。
【0080】
横枠線検出領域A1は、画像Gの垂直方向を長手方向とする長方形の領域であり、画像Gの左右中央に設定される。横枠線検出領域A1の水平方向(短手方向)のサイズは、画像Gの水平方向のサイズと比較して1/10以下であることが望ましく、1/15以下であることがさらに望ましい。横枠線検出部44は、横枠線検出領域A1に含まれる横枠線L1の像のみに基づいて横枠線L1を検出する。これにより、横枠線検出部44が横枠線L1を検出するための演算量を大幅に低減できる。
【0081】
本実施の形態では、画像Gのサイズが横320×縦240画素(QVGA)であるのに対して、横枠線検出領域A1のサイズは横20×縦60画素となっている。横枠線検出領域A1は、画像G中の左右中央の所定の位置に固定的に設定される。このように横枠線検出領域A1は画像G中の歪の少ない左右中央に設定されることから、比較的小さいサイズの横枠線検出領域A1を用いたとしても、横枠線L1を精度高く検出することができる。横枠線検出領域A1の下辺の位置は自車両9の右側面から例えば約0.8mの位置に相当し、横枠線検出領域A1の上辺の位置は自車両9の右側面から例えば約3.0mの位置に相当する。
【0082】
縦枠線検出領域A2は、2辺が画像Gの水平方向に沿った平行四辺形の領域である。縦枠線検出領域A2は、画像G中の横枠線検出領域A1の左側及び右側にそれぞれ設定される。縦枠線検出部45は、左側の縦枠線検出領域A2に基づいて画像G中の左側に含まれる縦枠線L2を検出し、右側の縦枠線検出領域A2に基づいて画像G中の右側に含まれる縦枠線L2を検出する。また、接続部検出部47は、左側の縦枠線検出領域A2の下半分に基づいて左側の接続部Leを検出し、右側の縦枠線検出領域A2の下半分に基づいて右側の接続部Leを検出する。縦枠線検出領域A2の位置は、横枠線検出領域A1で検出された横枠線L1の垂直方向の位置を基準に設定される。
【0083】
車両判定領域A3は、上底及び下底となる辺が画像Gの水平方向に沿った略台形の領域である(厳密には、下底となる辺は直線にならないことが多い。)。車両判定領域A3は、全体として画像Gの水平方向に延びる領域であり、画像Gの左右中央に設定される。車両判定領域A3は、画像Gにおいて駐車枠PFの領域と推定される推定領域に相当する。車両判定部46は、この車両判定領域A3に含まれる画素の特徴に基づいて、駐車枠PF内の駐車車両99の有無を判定する。車両判定領域A3の位置も、横枠線検出領域A1で検出された横枠線L1の垂直方向の位置を基準に設定される。
【0084】
このように駐車支援システム10の画像処理装置2は、判定処理において、画像Gの全体ではなく画像G中の限られた領域A1,A2,A3に基づいて駐車枠PFの存在を判定する。したがって、駐車枠PFの存在を判定するための演算量を大幅に低減できるため、画像処理装置2は駐車枠PFの存在を迅速に判定できることになる。
【0085】
<4.判定処理>
図9は、駐車対象となる駐車枠PFの存在を判定する判定処理の流れを示す図である。図9に示す処理は、駐車支援モードに移行してユーザから駐車支援の実行の指示がなされた場合に(図2のステップS2)、画像処理装置2の制御部21により実行される。また、図9に示す処理は、右サイドカメラ5Rが周期的に取得する画像(フレーム)のそれぞれに対して実行される。したがって、図9に示す処理は、例えば1/30秒ごとに繰り返し実行されることになる。以下、図9に示す判定処理の流れについて説明する。以下では、最初に判定処理の全体概要について説明し、その後、必要に応じて各ステップの処理について具体的に説明する。
【0086】
まず、判定処理の対象となる画像Gが、画像取得部42により右サイドカメラ5Rから取得される。そして、当該画像Gを対象に所定の画像処理である前処理が実行される(ステップS11)。具体的には、画像取得部24が、メディアンフィルタなどを適用して画像G中のノイズを除去する。また、領域設定部43が、画像Gの左右中央の所定の位置に1つの横枠線検出領域A1を設定する。
【0087】
次に、横枠線検出部44が、横枠線L1を検出する横枠線検出処理を実行する(ステップS12)。横枠線検出部44は、画像Gの横枠線検出領域A1に基づいて横枠線L1を検出し、検出した横枠線L1の画像Gの垂直方向における位置を特定する。
【0088】
この横枠線検出処理において、横枠線検出部44が横枠線L1を検出できなかった場合は(ステップS13にてNo)、駐車枠判定部48が駐車可能な駐車枠PFは存在しないと判定し(ステップS23)、そのまま判定処理を終了させる。すなわち、ステップS14以降の処理は実行されない。
【0089】
一方、横枠線検出処理において横枠線検出部44が横枠線L1を検出した場合は(ステップS13にてYes)、次に、領域設定部43が、画像G中に2つの縦枠線検出領域A2と1つの車両判定領域A3とを設定する領域設定処理を行う(ステップS14)。領域設定部43は、横枠線検出部44に特定された横枠線L1の位置を基準に、画像G中に2つの縦枠線検出領域A2と車両判定領域A3とを設定する。
【0090】
次に、縦枠線検出部45が、2つの縦枠線L2を検出する縦枠線検出処理を実行する(ステップS15)。縦枠線検出部45は、2つの縦枠線検出領域A2に基づいて2つの縦枠線L2をそれぞれ検出する。
【0091】
この縦枠線検出処理において、縦枠線検出部45が2つの縦枠線L2の少なくとも1つを検出できなかった場合は(ステップS16にてNo)、駐車枠判定部48が駐車可能な駐車枠PFは存在しないと判定し(ステップS23)、そのまま判定処理を終了させる。すなわち、ステップS17以降の処理は実行されない。
【0092】
一方、縦枠線検出部45が2つの縦枠線L2の双方を検出した場合は(ステップS16にてYes)、次に、車両判定部46が駐車枠PF内の駐車車両99の有無を判定する車両判定処理を実行する(ステップS17)。車両判定部46は、車両判定領域A3に基づいて駐車車両99の有無を判定する。
【0093】
この車両判定処理において、車両判定部46が駐車車両99があると判定した場合は(ステップS18にてYes)、駐車枠判定部48が駐車可能な駐車枠PFは存在しないと判定し(ステップS23)、そのまま判定処理を終了させる。すなわち、ステップS19以降の処理は実行されない。
【0094】
一方、車両判定部46が駐車車両99がないと判定した場合は(ステップS18にてNo)、次に、接続部検出部47が、2つの接続部Leを検出する接続部検出処理を実行する(ステップS19)。接続部検出部47は、2つの縦枠線検出領域A2に基づいて2つの接続部Leをそれぞれ検出する。
【0095】
この接続部検出処理において、接続部検出部47が2つの接続部Leの少なくとも1つを検出できなかった場合は(ステップS20にてNo)、駐車枠判定部48が駐車可能な駐車枠PFは存在しないと判定し(ステップS23)、そのまま判定処理を終了させる。
【0096】
一方、接続部検出部47が2つの接続部Leの双方を検出した場合は(ステップS20にてYes)、駐車枠判定部48が駐車可能な駐車枠PFが存在すると判定する(ステップS21)。
【0097】
次に、駐車枠判定部48は、検出された横枠線L1の位置及び2つの接続部Leの位置に基づいて駐車枠PFの位置を特定する。そして、駐車枠判定部48は、特定した駐車枠PFの位置を、駐車支援装置3に送信する(ステップS22)。
【0098】
このように判定処理においては、以下の4条件A〜Dを満足するか否かが順次に判断され、全ての条件を満足した場合に、駐車枠判定部48が駐車可能な駐車枠PFが存在すると判定する。
【0099】
条件A:横枠線検出処理(ステップS12)において、横枠線検出部44が横枠線L1を検出した。
【0100】
条件B:縦枠線検出処理(ステップS15)において、縦枠線検出部45が2つの縦枠線L2の双方を検出した。
【0101】
条件C:車両判定処理(ステップS17)において、車両判定部46が駐車車両99がないと判定した。
【0102】
条件D:接続部検出処理(ステップS19)において、接続部検出部47が2つの接続部Leの双方を検出した。
【0103】
また一方で、上記4条件のいずれかの条件が満足しない場合には、駐車枠判定部48は駐車可能な駐車枠PFは存在しないと判定し(ステップS23)、以降の他の条件に関する処理を実行させずにそのまま判定処理を終了させる。これにより、無駄な処理の実行が防止されるようになっている。
【0104】
以下、横枠線検出処理(ステップS12)、領域設定処理(ステップS14)、縦枠線検出処理(ステップS15)、車両判定処理(ステップS17)及び接続部検出処理(ステップS19)のそれぞれについて具体的に説明する。
【0105】
<4−1.横枠線検出処理>
まず、横枠線検出部44が横枠線L1を検出する横枠線検出処理(図9のステップS12)について具体的に説明する。図10は、横枠線検出処理の詳細な流れを示す図である。この横枠線検出処理の開始時点においては、図11に示すように、画像G中に横枠線検出領域A1が領域設定部43により設定されている。
【0106】
まず、横枠線検出部44は、横枠線検出領域A1中の水平エッジを抽出する(ステップS31)。横枠線検出部44は、例えば、図12に示す横3×縦3の係数を含むオペレータM1を用いたソーベルフィルタを適用することで、水平エッジを抽出する。
【0107】
横枠線検出部44は、注目画素を中心とした横3×縦3画素の矩形領域を選択する。そして、横枠線検出部44は、選択した矩形領域とオペレータM1とで重なる位置のそれぞれにおいて画素の値(例えば、輝度)と係数とを乗算し、その乗算結果の合計値を注目画素の新たな値とする。横枠線検出部44は、横枠線検出領域A1に含まれる全て画素を順次に注目画素としてこの演算を繰り返し実行する。そして、横枠線検出部44は、演算結果が正となり、かつ、所定の閾値を超える画素を、水平エッジの一部の画素として抽出する。
【0108】
これにより、上側が比較的明るく下側が比較的暗くなる位置に形成される水平エッジが抽出されることになる。一般に、画像Gにおいて、白線などである駐車枠PFの部分は比較的明るくなり、アスファルトなどである駐車枠PF以外の部分は比較的暗くなる。したがって、この処理により、画像G中の横枠線L1の下端部が、水平エッジとして抽出されることになる。
【0109】
次に、横枠線検出部44は、水平エッジの一部とされた画素の数を度数とするヒストグラム(度数分布)を生成する(ステップS32)。横枠線検出部44は、図11に示すように、横枠線検出領域A1を垂直方向に等分に分割し、複数の分割領域Adを形成する。本実施の形態では、横枠線検出部44は、横枠線検出領域A1を6つの分割領域Adに分割する。そして、横枠線検出部44は、図13に示すように、6つの分割領域Adのそれぞれを階級とし、各階級(すなわち、各分割領域Ad)に含まれる水平エッジの一部とされた画素の数を度数とするヒストグラムHを生成する。
【0110】
このヒストグラムHは、横枠線検出領域A1における水平エッジの垂直方向での分布を示している。図13〜図15は、このようにして生成されたヒストグラムHの例をそれぞれ示している。これらの図では、ヒストグラムHの階級を縦軸、度数を横軸で示している。
【0111】
次に、横枠線検出部44は、生成したヒストグラムHを参照して、度数が所定の第1閾値Th1より大きい階級の数(以下、「第1カウント値」という。)C1を計数する(ステップS33)。第1閾値Th1は、例えば「50」とされる。図13の例の場合は、2つの階級で度数が第1閾値Th1を超えるため、第1カウント値C1は「2」となる。また、図14の例の場合は、5つの階級で度数が第1閾値Th1を超えるため、第1カウント値C1は「5」となる。さらに、図15の例の場合は、2つの階級で度数が第1閾値Th1を超えるため、第1カウント値C1は「2」となる。
【0112】
次に、横枠線検出部44は、第1カウント値C1が所定値以下か否かを判定する(ステップS34)。本実施例では、所定値は例えば「2」とされる。そして、横枠線検出部44は、第1カウント値C1が所定値「2」を超える場合は(ステップS34にてNo)、横枠線L1は不検出と判断して(ステップS38)横枠線検出処理を終了する。例えば、図14の場合は、第1カウント値C1が「5」であるため、横枠線L1は不検出と判断される。
【0113】
このように第1カウント値C1が比較的多い場合は、駐車枠PF以外の模様(例えば、縞模様)や、障害物などの他の物体が存在する可能性が高い。このため、このような場合に、横枠線L1は不検出と判断することにより、駐車枠PF以外の模様や、他の物体が近傍に存在する駐車枠PFなどを駐車対象とすることを防止できる。
【0114】
また、第1カウント値C1が所定値「2」以下の場合は(ステップS34にてYes)、次に、横枠線検出部44は、ヒストグラムHを参照して、度数が所定の第2閾値Th2より大きい階級が存在するか否かを判定する(ステップS35)。第2閾値Th2は第1閾値Th1以上の値(Th1≦Th2)であり、例えば「80」とされる。
【0115】
そして、横枠線検出部44は、度数が第2閾値Th2より大きい階級が存在しない場合は(ステップS35にてNo)、横枠線L1は不検出と判断して(ステップS38)横枠線検出処理を終了する。例えば、図15の場合は、度数が第2閾値Th2より大きい階級が無いため、横枠線L1は不検出と判断される。このように、度数が第2閾値Th2より大きい階級が無い場合は、明確な水平エッジが存在しない場合であるため、横枠線L1は不検出と判断される。
【0116】
また、度数が第2閾値Th2より大きい階級が存在する場合は(ステップS35にてYes)、横枠線検出部44は、横枠線L1を検出したと判断する(ステップS36)。例えば、図13の場合は、度数が第2閾値Th2より大きい階級があるため、横枠線L1を検出したと判断される。
【0117】
続いて、横枠線検出部44は、画像Gの垂直方向における横枠線L1の位置を特定する(ステップS37)。横枠線検出部44は、ヒストグラムHを参照して度数が最大となる階級を特定する。そして、横枠線検出部44は、この階級に対応する画像G中の分割領域Adの垂直方向の中央位置を、横枠線L1の位置として特定する。このように度数が最大となる階級の位置に基づいて横枠線L1の位置を特定するため、横枠線L1の位置を正確に特定することができる。
【0118】
このように横枠線検出処理においては、横枠線検出領域A1の複数の分割領域Adをそれぞれ階級とするヒストグラムHを用いる。これらの分割領域Adは垂直方向に幅があるため、横枠線L1が右サイドカメラ5Rの光軸5Raに正確に直交していなくとも、横枠線L1に係る水平エッジをヒストグラムHの度数に反映させることができる。したがって、自車両9の前後方向と駐車枠PFの長手方向とが正確に平行でなくとも、駐車枠PFの横枠線L1を正しく検出できることになる。
【0119】
<4−2.領域設定処理>
次に、領域設定部43が、画像G中に処理の対象とする領域A2,A3を設定する領域設定処理(図9のステップS14)について具体的に説明する。図16は、領域設定処理の詳細な流れを示す図である。この領域設定処理の開始時点においては、画像G中の垂直方向の横枠線L1の位置が横枠線検出部44により特定されている。
【0120】
まず、領域設定部43が、画像G中に車両判定領域A3を設定する(ステップS41)。前述のように、車両判定領域A3は、画像Gの左右中央に設定される略台形の領域であり、駐車枠PFの領域と推定される推定領域に相当する。領域設定部43は、画像G中の垂直方向の横枠線L1の位置に基づいて、この推定領域を導出する。
【0121】
図17の上部は、領域設定部43が、車両判定領域A3を導出する手法を説明する図である。図に示すように、画像G中の各位置は、左上端部を原点、水平方向をX軸(右側を正)、垂直方向をY軸(下側を正)とする直交2次元座標によって表される。
【0122】
車両判定領域A3の下底h1の中央部POのY座標(画像Gの上端からのY軸方向の長さ)Y0は、横枠線検出部44に特定された横枠線L1の垂直方向の位置に対応する。したがって、車両判定領域A3の下底h1の中央部POのY座標Y0は、既知である。
【0123】
車両判定領域A3の導出に際してまず、領域設定部43は、車両判定領域A3の下底h1の2つの端部P1のY座標Y1を導出する。このY座標Y1は、中央部POのY座標Y0に基づいて次の式(1)によって導出される。
【0124】
Y1 = 0.5665 × Y0 + 97.352 …(1)
次に、領域設定部43は、車両判定領域A3の上底h2の2つの端部P2のY座標Y2を導出する。このY座標Y2は、下底h1の端部P1のY座標Y1に基づいて次の式(2)によって導出される。
【0125】
Y2 = 0.4637 × Y1 + 73.621 …(2)
次に、領域設定部43は、車両判定領域A3の下底h1の幅(X軸方向の長さ)W1を導出する。この下底h1の幅W1は、下底h1の端部P1のY座標Y1に基づいて次の式(3)によって導出される。
【0126】
W1 = 1.6062 × Y1 + 30.434 …(3)
さらに、領域設定部43は、車両判定領域A3の上底h2の幅W2を導出する。この上底h2の幅W2は、上底h2の端部P2のY座標Y2に基づいて次の式(4)によって導出される。
【0127】
W2 = 1.6062 × Y2 + 30.434 …(4)
領域設定部43は、これらの式(1)〜(4)の演算を行うことにより、略台形となる車両判定領域A3の4角P1,P1,P2,P2の位置を導出する。すなわち、領域設定部43は、車両判定領域A3を導出することになる。これらの式(1)〜(4)は、試行を繰り返すことで得られたものである。
【0128】
このようにして車両判定領域A3は、画像G中の垂直方向の横枠線L1の位置を基準に設定される。横枠線L1の位置が画像G中の下方になるほど車両判定領域A3は画像G中の下方に設定され、横枠線L1の位置が画像G中の上方になるほど車両判定領域A3は画像G中の上方に設定されることになる。
【0129】
次に、領域設定部43は、画像G中に2つの縦枠線検出領域A2を設定する(ステップS42)。領域設定部43は、車両判定領域A3の位置に基づいて、2つの縦枠線検出領域A2を導出することになる。
【0130】
図17の下部は、領域設定部43が、2つの縦枠線検出領域A2を導出する手法を説明する図である。領域設定部43は、車両判定領域A3の左側の辺h3を左右それぞれ同距離(例えば10画素)ずつX軸方向に移動させて2つの直線h3a,h3bを設定する。そして、この2つの直線h3a,h3bを2辺とする平行四辺形を、左側の縦枠線検出領域A2として設定する。同様に、領域設定部43は、車両判定領域A3の右側の辺h4を左右それぞれ同距離(例えば10画素)ずつX軸方向に移動させて2つの直線h4a,h4bを設定する。そして、この2つの直線h4a,h4bを2辺とする平行四辺形を右側の縦枠線検出領域A2として設定する。したがって、2つの縦枠線検出領域A2は、画像Gの中央に関して左右対称に設定される。
【0131】
これにより縦枠線検出領域A2も、画像G中の垂直方向の横枠線L1の位置を基準に設定されることになる。このため、横枠線L1の位置が画像G中の下方になるほど縦枠線検出領域A2は画像G中の下方に設定され、横枠線L1の位置が画像G中の上方になるほど縦枠線検出領域A2は画像G中の上方に設定される。これにより、縦枠線L2を検出する精度を高めることができる。また、縦枠線L2を検出するための縦枠線検出領域A2を比較的小さなサイズにすることができる。
【0132】
<4−3.縦枠線検出処理>
次に、縦枠線検出部45が、2つの縦枠線L2を検出する縦枠線検出処理(図9のステップS15)について具体的に説明する。縦枠線検出処理の開始時点においては、図18に示すように、画像G中に2つの縦枠線検出領域A2が領域設定部43により設定されている。縦枠線検出部45は、左側の縦枠線検出領域A2に基づいて左側の縦枠線L2を、右側の縦枠線検出領域A2に基づいて右側の縦枠線L2をそれぞれ検出することになる。
【0133】
左側の縦枠線L2を検出するための処理と、右側の縦枠線L2を検出するための処理とは左右が反対となる以外は同一である。このため以下では、縦枠線検出処理として、左側の縦枠線L2を検出するための処理を代表的に説明する。図19は、左側の縦枠線L2を検出するための処理の流れを示す図である。
【0134】
まず、縦枠線検出部45が、縦枠線検出領域A2中の垂直エッジを抽出する(ステップS51)。縦枠線検出部45は、例えば、図20に示す横3×縦3の係数を含むオペレータM2を用いたソーベルフィルタを適用することで、垂直エッジを抽出する。
【0135】
縦枠線検出部45は、注目画素を中心とした横3×縦3画素の矩形領域を選択する。そして、縦枠線検出部45は、選択した矩形領域とオペレータM2とで重なる位置のそれぞれにおいて画素の値(例えば、輝度)と係数とを乗算し、その乗算結果の合計値を注目画素の新たな値とする。縦枠線検出部45は、縦枠線検出領域A2に含まれる全て画素を順次に注目画素としてこの演算を繰り返し実行する。そして、縦枠線検出部45は、演算結果が正となり、かつ、所定の閾値を超える画素を、垂直エッジの一部の画素として抽出する。
【0136】
これにより、左側が比較的明るく右側が比較的暗くなる位置に形成される垂直エッジが抽出されることになる。したがって、この処理により、画像G中の縦枠線L2の右端部が、垂直エッジとして抽出される。
【0137】
次に、縦枠線検出部45は、縦枠線検出領域A2において、垂直エッジが存在する水平ラインの数を計数する(ステップS52)。縦枠線検出部45は、縦枠線検出領域A2に含まれる全ての水平ラインのうちで、垂直エッジの一部とされた画素を含む水平ラインの数(以下、「第2カウント値」という。)C2を計数する。
【0138】
次に、縦枠線検出部45は、第2カウント値C2が全ての水平ラインの10%以上であるか否かを判定する(ステップS53)。そして、縦枠線検出部45は、第2カウント値C2が全ての水平ラインの10%未満の場合は(ステップS53にてNo)、縦枠線L2は不検出と判断して(ステップS57)縦枠線検出処理を終了する。これにより、比較的短い垂直エッジのみが存在する場合は、縦枠線L2は不検出と判断される。つまり、比較的長い垂直エッジがある場合に縦枠線L2を検出することができる。
【0139】
また、第2カウント値C2が全ての水平ラインの10%以上である場合は(ステップS53にてYes)、縦枠線検出部45は、縦枠線検出領域A2に含まれるエッジの方向が「右上がり」か「右下がり」かを判定する(ステップS54)。
【0140】
エッジの方向を判定する際には、縦枠線検出部45は、垂直エッジの一部とされた画素のそれぞれに対して、水平エッジの抽出に用いる図12のオペレータM1を適用する。そして、縦枠線検出部45は、その演算結果の正負に基づいて、当該画素が「右上がり」のエッジの一部か「右下がり」のエッジの一部かを判断する。
【0141】
図21及び図22はそれぞれ、エッジの一部を模式的に示す図である。図21は「右上がり」のエッジE1の一部を示し、図21は「右下がり」のエッジE2の一部を示している。また、図中では、水平方向及び垂直方向に沿った2つの矢印AR1,AR2を示している。これらの矢印AR1,AR2は、エッジを境界として明るい側に向かう方向を示している。
【0142】
図20に示すオペレータM2を用いた場合は、エッジの左側が明るくなる場合に演算結果が正となる。垂直エッジの一部とされた画素は、このオペレータM2を用いて演算結果が正となった画素である。したがって、この画素に係るエッジの左側は明るくなっている(矢印AR1が左向きとなる)。この場合において、図21に示すように、「右上がり」のエッジE1の場合は、そのエッジE1の上側が明るくなる(矢印AR2が上向き)。一方で、図22に示すように、「右下がり」のエッジE2の場合は、そのエッジE2の下側が明るくなる(矢印AR2が下向き)。
【0143】
エッジの上側及び下側のいずれが明るいかは、図12に示すオペレータM1を用いた演算結果で判断できる。すなわち、オペレータM1を用いた演算結果は、エッジの上側が明るいときには正となり、エッジの下側が明るいときには負となる。このため、縦枠線検出部45は、オペレータM1を用いた演算結果が正であれば、当該画素は「右上がり」のエッジの一部と判断する。一方、縦枠線検出部45は、オペレータM1を用いた演算結果が負であれば、当該画素は「右下がり」のエッジの一部と判断する。
【0144】
縦枠線検出部45は、このような判断を、垂直エッジの一部とされた画素のそれぞれに関して実行する。そして、縦枠線検出部45は、「右上がり」のエッジの一部と判断された画素の数が、「右下がり」のエッジの一部と判断された画素の数よりも多い場合は、縦枠線検出領域A2に含まれるエッジの方向は「右上がり」と判定する。一方、縦枠線検出部45は、「右上がり」のエッジの一部と判断された画素の数が、「右下がり」のエッジの一部と判断された画素の数よりも少ない場合は、縦枠線検出領域A2に含まれるエッジの方向は「右下がり」と判定する。
【0145】
そして、縦枠線検出部45は、縦枠線検出領域A2に含まれるエッジの方向が「右上がり」である場合は(ステップS55にてYes)、縦枠線L2を検出したと判断する(ステップS56)。一方、縦枠線検出部45は、縦枠線検出領域A2に含まれるエッジの方向が「右下がり」である場合は(ステップS55にてNo)、縦枠線L2は不検出と判断する(ステップS57)。
【0146】
左側の縦枠線L2は、画像G中において「右上がり」の方向に延びるはずである。このため、縦枠線検出部45は、縦枠線検出領域A2に含まれるエッジの方向が「右上がり」である場合に、縦枠線L2を検出したと判断することになる。このように、縦枠線検出部45は、縦枠線検出領域A2に含まれるエッジの方向が「右上がり」か「右下がり」かを判定し、その判定結果に基づいて縦枠線L2を検出するため、比較的簡便な処理で縦枠線L2を検出することができる。なお、右側の縦枠線L2を検出する場合においては、縦枠線検出領域A2に含まれるエッジの方向が「右下がり」である場合に、縦枠線L2を検出したと判断すればよい。
【0147】
<4−4.車両判定処理>
次に、車両判定部46が駐車枠PF内の駐車車両99の有無を判定する車両判定処理(図9のステップS17)について具体的に説明する。図23は、車両判定処理の詳細な流れを示す図である。この車両判定処理の開始時点においては、図24に示すように、画像G中に車両判定領域A3が領域設定部43により設定されている。
【0148】
まず、車両判定部46は、車両判定領域A3中の比較的低輝度の画素の数を計数する(ステップS61)。車両判定部46は、車両判定領域A3に含まれる全ての画素のうちで、輝度が所定の閾値以下となる低輝度画素の数(以下、「第3カウント値」という。)C3を計数する。この閾値は、例えば、輝度が8ビット(0〜255)で表現される場合、「30」とされる。
【0149】
次に、車両判定部46は、第3カウント値が所定値以上か否かを判定する(ステップS62)。本実施例では、所定値は例えば「300」とされる。そして、車両判定部46は、第3カウント値C3が所定値「300」以上の場合は(ステップS62にてYes)、駐車枠PF内に駐車車両99があると判定する(ステップS63)。一方、車両判定部46は、第3カウント値C3が所定値「300」未満の場合は(ステップS62にてNo)、駐車枠PF内に駐車車両99がないと判定する(ステップS64)。
【0150】
低輝度画素は、人間の感覚として非常に暗い画素である。図24に示すように、駐車枠PF内に駐車車両99がない場合は、車両判定領域A3中にこのような低輝度画素はあまり含まれない。これに対して、図25に示すように、駐車枠PF内に駐車車両99がある場合は、車両判定領域A3の付近に駐車車両99の影及びタイヤに対応する非常に暗い領域Asが存在し、この領域Asに多くの低輝度画素が含まれている。
【0151】
したがって、車両判定部46は、車両判定領域A3にこのような低輝度画素が比較的多く含まれる場合は、駐車枠PF内に駐車車両99があると判定することになる。このように、車両判定部46は、低輝度画素の数に基づいて駐車枠PF内の駐車車両99の有無を判定するため、非常に簡便な処理で駐車車両99の有無を判定することができる。なお、一般に、多くの低輝度画素が含まれる領域Asは、車両判定領域A3の上半分に表れる(図25参照。)。このため、車両判定領域A3の上半分のみを対象に、車両判定処理を行うようにしてもよい。
【0152】
<4−5.接続部検出処理>
次に、接続部検出部47が2つの接続部Leを検出する接続部検出処理(図9のステップS19)について具体的に説明する。接続部検出処理の開始時点においては、図18に示すように、画像G中に2つの縦枠線検出領域A2が領域設定部43により設定されている。接続部検出部47は、左側の縦枠線検出領域A2の下半分に基づいて左側の接続部Leを、右側の縦枠線検出領域A2の下半分に基づいて右側の接続部Leをそれぞれ検出することになる。
【0153】
左側の接続部Leを検出するための処理と、右側の接続部Leを検出するための処理とは左右が反対となる以外は同一である。このため以下では、接続部検出処理として、左側の接続部Leを検出するための処理を代表的に説明する。
【0154】
図26は、接続部検出処理の検出対象となる画像G中の左側の接続部Leの近傍を拡大して示す図である。左側の接続部Leは、およそ水平方向に延びる横枠線L1と、「右上がり」の方向に延びる左側の縦枠線L2とを接続する。
【0155】
したがって、左側の接続部Leには、図中において一点鎖線の正方形枠で囲んだパターン形状Qが含まれている。このパターン形状Qの下半分には、横枠線L1の一部に対応する比較的明るい矩形の領域Q1が含まれている。また、パターン形状Qの上半分の左側には、縦枠線L2の一部に対応する比較的明るい三角形の領域Q2が含まれている。そして、パターン形状Qの他部分は、アスファルトなどに対応する比較的暗い領域Q3となる。
【0156】
接続部検出部47は、このようなパターン形状Qを検出することで接続部Leを検出するようになっている。また、接続部Leは、縦枠線L2の下端部であるため、縦枠線検出領域A2の下方に表れる。このため、接続部検出部47は、縦枠線検出領域A2の下半分のみを対象にして接続部Leを検出する。図27は、接続部Leを検出するための処理の流れを示す図である。
【0157】
まず、接続部検出部47は、縦枠線検出領域A2の下半分を対象に、図26に示すパターン形状Qを検出する(ステップS71)。接続部検出部47は、図28に示すHaar−Like(ハールライク)特徴を用いて、パターン形状Qを検出する。
【0158】
このHaar−Like特徴は、全体として例えば横8×縦8画素の正方形の領域であり、4つの領域R1〜R4を含んでいる。左下領域R1、右下領域R2及び右上領域R4は、横4×縦4画素の正方形の領域である。また、左上領域R3は、横4×縦4画素の正方形を対角線で切断して得られる二等辺三角形の領域である。そして、左下領域R1、右下領域R2及び左上領域R3は「明領域」として定義され、ハッチングを付した右上領域R4は「暗領域」として定義されている。
【0159】
接続部検出部47は、縦枠線検出領域A2の下半分を対象に、このHaar−Like特徴を用いて走査する。これにより、接続部検出部47は、実質的にパターン形状Qを検出する。より具体的には、接続部検出部47は、縦枠線検出領域A2の下半分のうちで処理対象とする位置を水平方向及び垂直方向に順次にずらしながら、各位置においてHaar−Like特徴を適用し、以下の4条件a〜dの全てを満足するか否かを判定する。輝度は、8ビット(0〜255)で表現される。
【0160】
条件a:3つの「明領域」R1〜R3の平均輝度が、「暗領域」R4の1.4倍以上である。
【0161】
条件b:3つの「明領域」R1〜R3の平均輝度が、「100」以上である。
【0162】
条件c:水平方向に隣接する「明領域」R1,R2の平均輝度差が、「20」未満である。
【0163】
条件d:垂直方向に隣接する「明領域」R1,R3の平均輝度差が、「20」未満である。
【0164】
縦枠線検出領域A2の下半分の全領域に関して走査が完了した後、縦枠線検出領域A2の下半分のうちで上記4条件a〜dを満足する位置がなかった場合は(ステップS72にてNo)、接続部検出部47は接続部Leは不検出と判断する(ステップS75)。
【0165】
一方、縦枠線検出領域A2の下半分のうちで上記4条件a〜dを満足する少なくとも1つの位置があった場合は(ステップS72にてYes)、接続部検出部47は接続部Leを検出したと判断する(ステップS73)。そして、接続部検出部47は、上記4条件a〜dを満足する位置の平均の座標を導出し、導出した座標を接続部Leの位置として特定する(ステップS74)。
【0166】
このように接続部検出部47は、縦枠線検出領域A2の下半分という比較的狭い領域に基づいて接続部Leを検出するため、接続部Leを検出するための演算量を大幅に低減できる。また、接続部検出部47は、正方形及び二等辺三角形のみを含む単純な形状のHaar−Like特徴を用いて接続部Leを検出する。このため、比較的簡便な処理で接続部Leを検出することができる。なお、右側の接続部Leを検出する場合においては、図29に示すHaar−Like特徴を用いればよい。
【0167】
以上のように、本実施の形態の画像処理装置2では、横枠線検出部44が画像G中の1つの横枠線検出領域A1に基づいて駐車枠PFの横枠線L1を検出し、縦枠線検出部45が画像G中の2つの縦枠線検出領域A2に基づいて2つの縦枠線L2を検出する。さらに、接続部検出部47が、画像G中の2つの縦枠線検出領域A2に基づいて2つの接続部Leを検出する。そして、駐車枠判定部48は、これらの検出結果に基づいて、駐車対象となる駐車枠PFの存在を判定する。このように、画像Gの全体ではなく画像G中の限られた領域A1,A2に基づいて駐車枠PFの存在を判定する。このため、駐車枠PFの存在を判定するための演算量を大幅に低減でき、駐車枠PFの存在を迅速に判定することができる。
【0168】
<5.変形例>
以上、本発明の実施の形態について説明してきたが、この発明は上記実施の形態に限定されるものではなく様々な変形が可能である。以下では、このような変形例について説明する。上記実施の形態及び以下で説明する形態を含む全ての形態は、適宜に組み合わせ可能である。
【0169】
上記実施の形態では、駐車枠PFへの自車両9の駐車を支援する駐車支援装置3は、自車両9の挙動を制御して駐車枠PF内に自車両9を自動的に移動させるものであった。これに対して、駐車支援装置は、車両を駐車させるために必要なステアリングの操作などの具体的な操作内容を適切なタイミングで音声によってユーザに案内するものであってもよい。
【0170】
また、上記実施の形態では、画像処理装置2と駐車支援装置3とは別の装置であると説明したが、画像処理装置2と駐車支援装置3とが同一の筐体内に配置されて一体型の装置となっていてもよい。
【0171】
また、上記実施の形態では、右サイドカメラ5Rで取得された画像を対象に判定処理が行われていた。これに対して、左サイドカメラ5Lで取得された画像を対象に判定処理が行われてもよい。また、右サイドカメラ5Rと左サイドカメラ5Lとのいずれの画像を判定処理に用いるかを、ユーザが選択できるようになっていてもよい。
【0172】
また、上記で説明した画像処理の具体的手法は一例であり、他の手法を採用してもよい。例えば、エッジの方向の判定に際してエッジの勾配の値を導出し、その値に基づいてエッジの方向が「右上がり」か「右下がり」かを判定してもよい。
【0173】
また、上記実施の形態では、プログラムに従ったCPUの演算処理によってソフトウェア的に各種の画像処理機能が実現されると説明したが、これら画像処理機能のうちの一部または全部は電気的なハードウェア回路により実現されてもよい。
【符号の説明】
【0174】
2 画像処理装置
3 駐車支援装置
9 自車両
10 駐車支援システム
43 領域設定部
44 横枠線検出部
45 縦枠線検出部
46 車両判定部
47 接続部検出部
48 駐車枠判定部
5R 右サイドカメラ
99 駐車車両
【技術分野】
【0001】
本発明は、画像に基づいて車両の駐車対象となる駐車枠の存在を判定する技術に関する。
【背景技術】
【0002】
自動車などの車両を後退させて駐車枠内に駐車させる操作を苦手とするドライバは多い。このため、従来より、車両の駐車を支援するための各種の駐車支援システムが提案されている。
【0003】
例えば、車両を駐車させるために必要なステアリングの操作などの具体的な操作内容を適切なタイミングで音声によってドライバに案内する駐車支援システムが知られている。また、近年では、車両の挙動を制御して駐車枠内に車両を自動的に移動させるインテリジェントパーキングアシストと呼ばれる駐車支援システムも実用化されている(例えば、特許文献1参照。)。ドライバは、このような駐車支援システムを利用することで、車両を駐車枠内に容易に駐車させることが可能となる。
【0004】
このような駐車支援システムを利用する場合は、駐車支援システムに駐車対象となる駐車枠の位置(車両に対する相対的な位置)を正しく認識させる必要がある。このため、車両の外部を撮影するカメラで得られた画像に基づいて駐車対象となる駐車枠の位置を認識する画像処理機能を備えた駐車支援システムも知られている(例えば、特許文献1参照。)。このような駐車支援システムは、車両が停止した状態で駐車枠を含む画像を取得し、その画像に基づいて駐車枠の位置を認識するようになっている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2010−195224号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
ところで近年、車両が走行している状態で車両の近傍に駐車可能な駐車枠が存在するか否かを判定し、そのような駐車枠が存在する場合は当該駐車枠に車両を駐車させる駐車支援システムが検討されている。
【0007】
このような駐車支援システムを実現するためには、車両の走行中に周期的に取得される画像に基づいて駐車可能な駐車枠が存在するか否かを判定する必要がある。したがって、駐車可能な駐車枠が存在するか否かを判定する処理を迅速に行う必要がある。
【0008】
また、このような駐車支援システムだけではなく、車両が停止した状態で画像を取得する一般的な駐車支援システムにおいても、駐車可能な駐車枠が存在するか否かを判定するまでの処理時間をできるだけ短縮することが望ましい。
【0009】
本発明は、上記課題に鑑みてなされたものであり、駐車枠の存在を迅速に判定することができる技術を提供することを目的とする。
【課題を解決するための手段】
【0010】
上記課題を解決するため、請求項1の発明は、画像に基づいて車両の駐車対象となる駐車枠の存在を判定する画像処理装置であって、前記車両の外部を撮影するカメラで得られた画像を取得する取得手段と、前記画像中の1つの第1領域に基づいて、前記カメラの光軸に略直交する前記駐車枠の第1線を検出する第1検出手段と、前記画像中の前記第1領域の左側及び右側にそれぞれ設定される2つの第2領域に基づいて、前記カメラの光軸に略沿った前記駐車枠の2つの第2線を検出する第2検出手段と、前記第1及び前記第2検出手段の検出結果に基づいて、前記駐車枠の存在を判定する判定手段と、を備えている。
【0011】
また、請求項2の発明は、請求項1に記載の画像処理装置において、前記第1領域は、前記画像の左右中央に設定される。
【0012】
また、請求項3の発明は、請求項1または2に記載の画像処理装置において、前記第1領域の水平方向のサイズは、前記画像の水平方向のサイズの1/10以下である。
【0013】
また、請求項4の発明は、請求項1ないし3のいずれかに記載の画像処理装置において、前記第1検出手段は、前記第1領域の水平エッジを抽出し、前記第1領域を垂直方向に分割して得られる複数の分割領域をそれぞれ階級とし、前記水平エッジとなる画素の数を度数とするヒストグラムに基づいて前記第1線を検出する。
【0014】
また、請求項5の発明は、請求項4に記載の画像処理装置において、前記第1検出手段は、前記ヒストグラムにおいて、前記度数が第1閾値Th1より大きい階級の数が所定値以下であり、かつ、前記度数が第2閾値Th2(Th1≦Th2)より大きい階級が存在する場合に、前記第1線を検出する。
【0015】
また、請求項6の発明は、請求項5に記載の画像処理装置において、前記第1検出手段は、前記ヒストグラムにおいて前記度数が最大となる階級の位置に基づいて、前記画像の垂直方向における前記第1線の位置を特定する。
【0016】
また、請求項7の発明は、請求項1ないし6のいずれかに記載の画像処理装置において、前記第1検出手段は、前記画像における前記第1線の位置を特定し、前記画像処理装置は、前記画像における前記第1線の位置を基準に、前記画像における前記2つの第2領域を設定する領域設定手段、をさらに備えている。
【0017】
また、請求項8の発明は、請求項1ないし7のいずれかに記載の画像処理装置において、前記第2検出手段は、前記2つの第2領域のそれぞれにおいて垂直エッジを抽出し、前記2つの第2領域のそれぞれにおいて、該第2領域に含まれる全ての水平ラインのうち前記垂直エッジを含む水平ラインの割合に基づいて前記第2線を検出する。
【0018】
また、請求項9の発明は、請求項1ないし8のいずれかに記載の画像処理装置において、前記第2検出手段は、前記2つの第2領域のそれぞれにおいて、該第2領域に含まれるエッジの方向が右上がりか右下がりかを判定し、その判定結果に基づいて前記第2線を検出する。
【0019】
また、請求項10の発明は、請求項1ないし9のいずれかに記載の画像処理装置において、前記第1検出手段は、前記画像における前記第1線の位置を特定し、前記画像処理装置は、前記第1線の位置に基づいて、前記画像における前記駐車枠の領域と推定される推定領域を導出する導出手段と、前記推定領域中の輝度が閾値以下となる画素の数に基づいて前記駐車枠内の駐車車両の有無を判定する車両判定手段と、をさらに備えている。
【0020】
また、請求項11の発明は、請求項1ないし10のいずれかに記載の画像処理装置において、前記2つの第2領域に基づいて、前記第1線と前記第2線とを接続する2つの接続部をそれぞれ検出する第3検出手段、をさらに備えている。
【0021】
また、請求項12の発明は、請求項11に記載の画像処理装置において、前記判定手段は、前記第1検出手段が前記第1線を検出したという第1条件と、前記第2検出手段が前記2つの第2線を検出したという第2条件と、前記第3検出手段が前記2つの接続部を検出したという第3条件と、の全ての条件が満足した場合に、前記駐車枠が存在すると判定する。
【0022】
また、請求項13の発明は、請求項12に記載の画像処理装置において、前記判定手段は、前記第1ないし第3条件のいずれかの条件が満足しない場合には、以降の他の条件に関する処理を実行させない。
【0023】
また、請求項14の発明は、請求項1に記載の画像処理装置において、前記カメラは、前記車両の側方を撮影するサイドカメラである。
【0024】
また、請求項15の発明は、駐車支援システムであって、請求項1ないし14のいずれかに記載の画像処理装置と、前記画像処理装置で検出された前記駐車枠への車両の駐車を支援する駐車支援装置と、を備えている。
【0025】
また、請求項16の発明は、画像に基づいて車両の駐車対象となる駐車枠の存在を判定する画像処理方法であって、(a)前記車両の外部を撮影するカメラで得られた画像を取得する工程と、(b)前記画像中の1つの第1領域に基づいて、前記カメラの光軸に略直交する前記駐車枠の第1線を検出する工程と、(c)前記画像中の前記第1領域の左側及び右側にそれぞれ設定される2つの第2領域に基づいて、前記カメラの光軸に略沿った前記駐車枠の2つの第2線を検出する工程と、(d)前記工程(a)及び(b)の検出結果に基づいて、前記駐車枠の存在を判定する工程と、を備えている。
【0026】
また、請求項17の発明は、画像処理装置に含まれるコンピュータによって実行可能なプログラムであって、前記コンピュータによる前記プログラムの実行は、前記コンピュータに、(a)車両の外部を撮影するカメラで得られた画像を取得する工程と、(b)前記画像中の1つの第1領域に基づいて、前記カメラの光軸に略直交する駐車枠の第1線を検出する工程と、(c)前記画像中の前記第1領域の左側及び右側にそれぞれ設定される2つの第2領域に基づいて、前記カメラの光軸に略沿った前記駐車枠の2つの第2線を検出する工程と、(d)前記工程(a)及び(b)の検出結果に基づいて、前記駐車枠の存在を判定する工程と、を実行させる。
【発明の効果】
【0027】
請求項1ないし17の発明によれば、画像の全体ではなく画像中の限られた領域に基づいて駐車枠の存在を判定する。このため、駐車枠の存在を判定するための演算量を大幅に低減でき、駐車枠の存在を迅速に判定することができる。
【0028】
また、特に請求項2の発明によれば、画像中の歪の少ない中央の領域に基づいて第1線を検出することができる。
【0029】
また、特に請求項3の発明によれば、第1領域の水平方向のサイズが小さいため、駐車枠の存在を判定するための演算量を大幅に低減できる。
【0030】
また、特に請求項4の発明によれば、第1領域の分割領域をそれぞれ階級とするヒストグラムに基づいて第1線を検出するため、駐車枠の第1線がカメラの光軸に正確に直交していなくとも、駐車枠の第1線を検出することができる。
【0031】
また、特に請求項5の発明によれば、度数が第1閾値より大きい階級の数が多い場合は第1線を検出しない。このため、他の物体が近傍に存在する駐車枠などを駐車対象とすることを防止できる。
【0032】
また、特に請求項6の発明によれば、画像の垂直方向における第1線の位置を正確に特定できる。
【0033】
また、特に請求項7の発明によれば、駐車枠の第1線の位置を基準に2つの第2領域を設定するため、駐車枠の第2線を検出する精度を高めることができる。
【0034】
また、特に請求項8の発明によれば、第2領域に含まれる全ての水平ラインのうち垂直エッジを含む水平ラインの割合に基づいて第2線を検出するため、比較的長い垂直エッジがある場合に第2線を検出することができる。
【0035】
また、特に請求項9の発明によれば、第2領域に含まれるエッジの方向が右上がりか右下がりかを判定し、その判定結果に基づいて第2線を検出するため、所定の方向に延びるエッジがある場合に第2線を検出することができる。
【0036】
また、特に請求項10の発明によれば、比較的低輝度の画素の数に基づいて駐車枠内の駐車車両の有無を判定するため、簡便な処理で駐車車両の有無を判定することができる。
【0037】
また、特に請求項11の発明によれば、第2領域に基づいて2つの接続部を検出するため、接続部を検出するための演算量を大幅に低減できる。
【0038】
また、特に請求項12の発明によれば、全ての条件を満足した場合に駐車枠が存在すると判定するため、駐車枠を検出する精度を向上できる。
【0039】
また、特に請求項13の発明によれば、第1ないし第3条件のいずれかの条件を満足しない場合には他の条件に関する処理が実行されないため、無駄な処理の実行を防止できる。
【0040】
また、特に請求項14の発明によれば、車両を走行させながら、車両の側方において駐車対象となる駐車枠が存在するかを判定することができる。
【0041】
また、特に請求項15の発明によれば、駐車枠の存在を迅速に判定し、その駐車枠への車両の駐車を支援することができる。
【図面の簡単な説明】
【0042】
【図1】図1は、駐車支援システムの概要を示す図である。
【図2】図2は、駐車支援システムが駐車支援を実行する場合の車両の動きを示す図である。
【図3】図3は、駐車支援システムの構成を示す図である。
【図4】図4は、車載カメラが車両に配置される位置を示す図である。
【図5】図5は、右サイドカメラで取得された画像の例を示す図である。
【図6】図6は、右サイドカメラで取得された画像の例を示す図である。
【図7】図7は、右サイドカメラで取得された画像の例を示す図である。
【図8】図8は、判定処理に用いられる画像中の領域を示す図である。
【図9】図9は、判定処理の流れを示す図である。
【図10】図10は、横枠線検出処理の詳細な流れを示す図である。
【図11】図11は、横枠線検出領域が設定された画像の例を示す図である。
【図12】図12は、水平エッジを抽出するためのオペレータを示す図である。
【図13】図13は、ヒストグラムの例を示す図である。
【図14】図14は、ヒストグラムの例を示す図である。
【図15】図15は、ヒストグラムの例を示す図である。
【図16】図16は、領域設定処理の詳細な流れを示す図である。
【図17】図17は、車両判定領域及び縦枠線検出領域の導出手法を説明する図である。
【図18】図18は、縦枠線検出領域が設定された画像の例を示す図である。
【図19】図19は、縦枠線検出処理の詳細な流れを示す図である。
【図20】図20は、垂直エッジを抽出するためのオペレータを示す図である。
【図21】図21は、右上がりのエッジの一部を模式的に示す図である。
【図22】図22は、右下がりのエッジの一部を模式的に示す図である。
【図23】図23は、車両判定処理の詳細な流れを示す図である。
【図24】図24は、駐車枠に駐車車両がない場合の画像の例を示す図である。
【図25】図25は、駐車枠に駐車車両がある場合の画像の例を示す図である。
【図26】図26は、画像中の左側の接続部の近傍を拡大して示す図である。
【図27】図27は、接続部検出処理の詳細な流れを示す図である。
【図28】図28は、Haar−Like特徴を示す図である。
【図29】図29は、Haar−Like特徴を示す図である。
【発明を実施するための形態】
【0043】
以下、図面を参照しつつ本発明の実施の形態について説明する。
【0044】
<1.システムの概要>
図1は、本実施の形態に係る駐車支援システム10の概要を示す図である。駐車支援システム10は、自動車などの車両9に搭載され、車両9の駐車枠内への駐車を支援する駐車支援機能を有している。駐車支援システム10は、車両9の近傍に存在する駐車枠の存在を判定し、駐車可能な駐車枠が存在する場合は車両9の挙動を制御して当該駐車枠内に車両を自動的に移動させる。以下、駐車支援システム10が搭載される車両9を「自車両」という。
【0045】
駐車支援システム10は、複数の車載カメラ5と、画像処理装置2と、駐車支援装置3とを備えている。画像処理装置2と駐車支援装置3とは通信ケーブル等を介して相互に通信可能となっている。
【0046】
複数の車載カメラ5は、自車両9の外部を撮影して、自車両9の周囲の様子を示す画像を取得する。画像処理装置2は、複数の車載カメラ5の一つで得られた画像に基づいて駐車可能な駐車枠が存在するか否かを判定し、駐車可能な駐車枠が存在する場合は駐車枠の位置を特定する。そして、駐車支援装置3は、自車両9のステアリング及びブレーキなどを制御して当該駐車枠に自車両9を移動させる。
【0047】
駐車支援システム10は、動作モードとして、このような駐車支援を実行する駐車支援モードとともに、自車両9の外部の様子を示す画像を表示する画像表示モードを備えている。駐車支援システム10は、通常は、画像表示モードとなっている。画像表示モードでは、駐車支援システム10は、ユーザ(代表的にはドライバ)に選択された車載カメラ5で得られた画像を、画像処理装置2が備えるディスプレイ22に表示させる。このような画像表示モードにおいてユーザから駐車支援の指示がある場合は、駐車支援システム10は、駐車支援モードに移行して駐車支援機能を有効化する。
【0048】
駐車支援システム10は、並列駐車及び縦列駐車のいずれの駐車支援も実行することが可能であるが、以下では縦列駐車の駐車支援を実行する場合について具体的に説明する。
【0049】
図2は、駐車支援システム10が縦列駐車の駐車支援を実行する場合の自車両9の動きを示す図である。以下、図2を参照して、駐車支援システム10が実行する駐車支援の概要について説明する。
【0050】
まず、ユーザが、駐車枠PFの長手方向と自車両9の前後方向とがおよそ平行となるように自車両9を停車させる(ステップS1)。この際、最終的に駐車対象となる駐車枠PFの位置と自車両9の位置とは離れていてよい。また、駐車枠PFの長手方向と自車両9の前後方向とは、およそ平行であればよく、完全に平行である必要はない。この状態で、ユーザは、駐車支援システム10に対して、並列駐車及び縦列駐車のいずれの駐車支援を実行するかを指示する。図2の場合は、ユーザは縦列駐車の駐車支援を指示することになる。
【0051】
ユーザから駐車支援の実行の指示がなされると、駐車支援システム10の駐車支援装置3が、自車両9のブレーキを制御して自車両9を直進させる(ステップS2)。これにより、自車両9は、駐車枠PFの長手方向におよそ平行に走行することになる。
【0052】
このような自車両9の走行中において、駐車支援システム10の画像処理装置2が、駐車可能な駐車枠PFが存在するか否かを判定する。画像処理装置2は、自車両9の側方に向けられた車載カメラ5(図2では、右サイドカメラ5R)で得られた画像に基づいて駐車枠PFの存在を判定する判定処理を実行する。車載カメラ5は所定周期(例えば、1/30秒周期)で画像を取得し、画像処理装置2は画像が取得されるごとに判定処理を実行する。そして、画像処理装置2は、車載カメラ5の光軸の方向に駐車車両99が無い駐車枠PFがある場合に、駐車可能な駐車枠PFが存在すると判定する。
【0053】
画像処理装置2は、駐車可能な駐車枠PFが存在すると判定した場合は、駐車枠PFの位置(自車両9に対する相対的な位置)を特定し、特定した駐車枠PFの位置を駐車支援装置3に受け渡す(ステップS3)。これに応答して、駐車支援装置3は自車両9のブレーキを制御して自車両9を停車させる。これにより、自車両9は、駐車可能と判定された駐車枠PFの近傍に停車する。また、駐車支援システム10は、画像処理装置2のディスプレイ22を介して、駐車可能な駐車枠PFが検出された旨をユーザに通知し、当該駐車枠PFに自車両9を駐車させるか否かをユーザに問い合わせる。
【0054】
この問い合わせにより、ユーザは駐車枠PFや周辺状況を自分の目で確認して、当該駐車枠PFに自車両9を駐車させるか否かを判断する。そして、ユーザが駐車させる指示を駐車支援システム10に行った場合は、駐車支援装置3が自車両9の挙動を制御して自車両9を駐車枠PF内に移動させる(ステップS4)。駐車支援装置3は、まず、画像処理装置2に特定された駐車枠PFの位置に基づいて、自車両9を駐車枠PF内に移動させるための移動経路Kを導出する。そして、駐車支援装置3は、自車両9のステアリング及びギア等を制御して、移動経路Kに沿うように自車両9を移動させる。自車両9が駐車枠PF内に移動すると、駐車支援装置3はブレーキを制御して自車両9を停車させる。このようにして、駐車支援システム10は、駐車枠PF内に自車両9を駐車させることになる。
【0055】
<2.システムの構成>
次に、駐車支援システム10の構成について説明する。図3は、駐車支援システム10の構成を示す図である。前述のように、駐車支援システム10は、複数の車載カメラ5と、画像処理装置2と、駐車支援装置3とを備えている。
【0056】
駐車支援装置3は、例えば、ECU((Electric Control Unit)であり、自車両9の適位置に配置される。駐車支援装置3は、経路導出部31と車両誘導部32とを備えている。これら経路導出部31と車両誘導部32とは、例えば、CPUがプログラムに従って演算処理を行うことにより実現される。
【0057】
経路導出部31は、画像処理装置2から受け渡された駐車枠PFの位置に基づいて、自車両9を現在の位置から駐車枠PF内まで移動させるための移動経路Kを導出する。また、車両誘導部32は、自車両9の挙動を制御して、導出された移動経路Kに沿うように自車両9を移動させる。車両誘導部32は、車内LAN90を介して、ステアリングを制御するステアリングシステム91、ブレーキを制御するブレーキシステム92及びギアを制御するギアシステム93と接続されている。車両誘導部32は、これらのシステム91〜93に信号を送信することにより、自車両9の挙動を制御する。
【0058】
複数の車載カメラ5はそれぞれ、レンズと撮像素子とを備えており、自車両9の周辺の様子を示す画像を電子的に取得する。複数の車載カメラ5はそれぞれ、自車両9の車室外の適位置に配置され、取得した画像を画像処理装置2に入力する。複数の車載カメラ5は、フロントカメラ5F、バックカメラ5B、左サイドカメラ5L、及び、右サイドカメラ5Rを含んでいる。これら4つの車載カメラ5F,5B,5L,5Rは、自車両9の異なる位置に配置され、自車両9の外部の異なる方向を撮影する。
【0059】
図4は、車載カメラ5F,5B,5L,5Rが自車両9に配置される位置を示す図である。フロントカメラ5Fは、自車両9の前端の左右中央の近傍に設けられ、その光軸5Faは自車両9の前方(直進方向)に向けられている。バックカメラ5Bは、自車両9の後端の左右中央の近傍に設けられ、その光軸5Baは自車両9の後方(直進方向の逆方向)に向けられている。左サイドカメラ5Lは自車両9の左側のサイドミラー95Lに設けられ、その光軸5Laは自車両9の左側方(直進方向の直交方向)に向けられている。また、右サイドカメラ5Rは自車両9の右側のサイドミラー95Rに設けられ、その光軸5Raは自車両9の右側方(直進方向の直交方向)に向けられている。
【0060】
これらの車載カメラ5F,5B,5L,5Rのレンズには魚眼レンズなどの広角のレンズが採用され、4つの車載カメラ5F,5B,5L,5Rのそれぞれは例えば180度以上の画角θを有している。このため、4つの車載カメラ5F,5B,5L,5Rを利用することで、自車両9の全周囲を撮影することが可能となっている。
【0061】
図3に戻り、画像処理装置2は、ディスプレイ22と、操作部23と、記憶部24と、制御部21とを備えている。
【0062】
ディスプレイ22は、例えば、液晶パネルなどを備えた薄型の表示装置である。ディスプレイ22は、制御部21から出力された画像を表示する。画像処理装置2は、このディスプレイ22の表示画面がユーザから視認可能なように、車室内のインストルメントパネルなどに配置される。
【0063】
操作部23は、ユーザが直接的に操作可能な部材であり、タッチパネル及び操作ボタンを含んでいる。タッチパネルはディスプレイ22の表示画面に重ねて設けられ、操作ボタンはディスプレイ22の表示画面の周囲に設けられる。ユーザが操作部23を操作した場合は、その操作内容を示す信号が制御部21に入力され、制御部21が操作内容に応じたユーザの指示を受け付ける。ユーザは、操作部23を介して、動作モードの切り替え指示や駐車支援の実行の指示などの各種の指示を駐車支援システム10に行うことが可能である。
【0064】
記憶部24は、例えば、フラッシュメモリなどの不揮発性メモリであり、制御部21の処理に必要な各種の情報を記憶する。記憶部24は、例えば、ファームウェアとなるプログラム24aを記憶している。画像処理装置2は、プログラムが記憶されたコンピュータ読み取り可能なメモリカードなどの記憶媒体8からカードリーダ(図示せず)を介して読み出すことで、このようなプログラム24aを取得できるようになっている。
【0065】
また、制御部21は、画像処理装置2の全体を統括的に制御するマイクロコンピュータである。制御部21は、CPU、RAM及びROMなどを備えている。制御部21は、各種の画像処理機能を有している。図中に示す、表示制御部41、画像取得部42、領域設定部43、横枠線検出部44、縦枠線検出部45、車両判定部46、接続部検出部47及び駐車枠判定部48は、制御部21が備える画像処理機能の一部である。これらの画像処理機能は、記憶部24に記憶されたプログラム24aに従ってCPUが演算処理を行うことで実現される。
【0066】
画像取得部42は、4つの車載カメラ5F,5B,5L,5Rでそれぞれ得られた撮影画像を取得する。画像取得部24は、4つの車載カメラ5F,5B,5L,5Rのいずれかの画像を選択的に取得することができる。画像取得部24は、また、取得した画像に対して、ノイズの除去や明るさの調整などの一般的な画像処理を行うことが可能である。
【0067】
表示制御部41は、ディスプレイ22に画像を出力して、ディスプレイ22に画像を表示させる。画像表示モードでは、表示制御部41は、画像取得部42で取得された画像を調整して、ディスプレイ22に画像を出力する。これにより、ユーザは、車両の周辺の様子を示す画像を確認することができる。
【0068】
また、領域設定部43、横枠線検出部44、縦枠線検出部45、車両判定部46、接続部検出部47及び駐車枠判定部48は、駐車枠PFの存在を判定する判定処理に係る画像処理機能である。これらの画像処理機能は、駐車支援モードにおいて有効化される。
【0069】
領域設定部43は、横枠線検出部44、縦枠線検出部45、車両判定部46、及び、接続部検出部47が処理の対象とする領域を画像中に設定する。また、駐車枠判定部48は、横枠線検出部44、縦枠線検出部45、車両判定部46、及び、接続部検出部47による処理の結果に基づいて駐車対象となる駐車枠の存在を判定する。これらの画像処理機能の詳細については後述する。
【0070】
<3.画像>
次に、駐車枠PFの存在を判定する判定処理に用いられる画像について説明する。判定処理には、例えば、右サイドカメラ5Rで取得された画像が利用される。
【0071】
図5〜図7はそれぞれ、右サイドカメラ5Rで取得された画像Gの例を示す図である。これらの画像Gにおいては、自車両9の右側の側方の様子が示されている。前述のように、右サイドカメラ5Rのレンズには魚眼レンズなどの広角のレンズが採用されるため、画像Gに含まれる被写体の像には歪みが生じ、その歪みの程度は画像Gの左右端に近いほど大きくなっている。
【0072】
判定処理では、図5の画像Gのように、画像Gのほぼ左右中央にコの字型(U字型)の枠線(正確には枠線の像)が含まれている場合に、駐車可能な駐車枠PFが存在すると判定される。
【0073】
判定の対象となる駐車枠PFは、自車両9が駐車した場合に、自車両9の前後方向(側面)に沿うことになる枠線L1と、自車両9の左右方向(前面及び背面)に沿うことになる2つの枠線L2とを含んでいる(図2も合わせて参照。)。枠線L1と2つの枠線L2とは、枠線L1の左右端部にある2つの接続部Leにおいて接続される。
【0074】
枠線L1は右サイドカメラ5Rの光軸5Raに略直交して延びるため(図2参照。)、枠線L1の像は画像G中のおよそ横方向に延びるように含まれる(図5参照。)。一方、2つの枠線L2は右サイドカメラ5Rの光軸5Raに略沿って延びるため(図2参照。)、2つの枠線L2の像は画像G中のおよそ縦方向に延びるように含まれる(図5参照。)。このため、本明細書においては便宜上、枠線L1を「横枠線」、枠線L2を「縦枠線」と呼ぶ。左側の接続部Leは横枠線L1と左側の縦枠線L2とを接続し、右側の接続部Leは横枠線L1と右側の縦枠線L2とを接続する。
【0075】
判定処理では、横枠線L1、2つの縦枠線L2及び2つの接続部Leの全てが画像Gに基づいて検出された場合に、駐車枠PFが存在すると判定される。すなわち、横枠線L1、2つの縦枠線L2及び2つの接続部Leのいずれかが検出されなかった場合は、駐車可能な駐車枠PFが存在しないと判定される。例えば、図6に示すように、画像中Gに横枠線L1が含まれていない場合は、駐車可能な駐車枠PFが存在しないと判定される。
【0076】
また、判定処理では、図7に示すように、画像中Gに駐車枠PFが含まれる場合であっても、駐車枠PF内に駐車車両99がある場合は、駐車可能な駐車枠PFが存在しないと判定される。また、図7の左側に示すように、画像中Gに、駐車車両99の無い駐車枠PFが含まれる場合であっても、その駐車枠PFの位置が画像Gのおよそ左右中央でない場合は、駐車可能な駐車枠PFが存在しないと判定される。
【0077】
前述した制御部21が備える画像処理機能のうち、横枠線検出部44が横枠線L1を検出し、縦枠線検出部45が2つの縦枠線L2を検出し、接続部検出部47が2つの接続部Leを検出する。また、車両判定部46が、駐車枠PF内の駐車車両99の有無を判定する。そして、これらの検出結果及び判定結果に基づいて、駐車枠判定部48が駐車可能な駐車枠PFが存在するか否かを判定することになる。
【0078】
このような判定処理は、画像Gの全領域ではなく、画像G中の一部の領域のみに基づいて実行される。図8は、判定処理に用いられる画像G中の領域を示す図である。図8に示すように、画像G中には、1つの横枠線検出領域A1と、2つの縦枠線検出領域A2と、1つの車両判定領域A3とが含まれている。これらの領域A1,A2,A3は、領域設定部43により設定される。
【0079】
横枠線検出領域A1は、横枠線検出部44が横枠線L1の検出に用いる領域である。2つの縦枠線検出領域A2は、縦枠線検出部45が2つの縦枠線L2の検出に用いるとともに、接続部検出部47が2つの接続部Leの検出に用いる領域である。また、車両判定領域A3は、車両判定部46が駐車枠PF内の駐車車両99の有無の判定に用いる領域である。
【0080】
横枠線検出領域A1は、画像Gの垂直方向を長手方向とする長方形の領域であり、画像Gの左右中央に設定される。横枠線検出領域A1の水平方向(短手方向)のサイズは、画像Gの水平方向のサイズと比較して1/10以下であることが望ましく、1/15以下であることがさらに望ましい。横枠線検出部44は、横枠線検出領域A1に含まれる横枠線L1の像のみに基づいて横枠線L1を検出する。これにより、横枠線検出部44が横枠線L1を検出するための演算量を大幅に低減できる。
【0081】
本実施の形態では、画像Gのサイズが横320×縦240画素(QVGA)であるのに対して、横枠線検出領域A1のサイズは横20×縦60画素となっている。横枠線検出領域A1は、画像G中の左右中央の所定の位置に固定的に設定される。このように横枠線検出領域A1は画像G中の歪の少ない左右中央に設定されることから、比較的小さいサイズの横枠線検出領域A1を用いたとしても、横枠線L1を精度高く検出することができる。横枠線検出領域A1の下辺の位置は自車両9の右側面から例えば約0.8mの位置に相当し、横枠線検出領域A1の上辺の位置は自車両9の右側面から例えば約3.0mの位置に相当する。
【0082】
縦枠線検出領域A2は、2辺が画像Gの水平方向に沿った平行四辺形の領域である。縦枠線検出領域A2は、画像G中の横枠線検出領域A1の左側及び右側にそれぞれ設定される。縦枠線検出部45は、左側の縦枠線検出領域A2に基づいて画像G中の左側に含まれる縦枠線L2を検出し、右側の縦枠線検出領域A2に基づいて画像G中の右側に含まれる縦枠線L2を検出する。また、接続部検出部47は、左側の縦枠線検出領域A2の下半分に基づいて左側の接続部Leを検出し、右側の縦枠線検出領域A2の下半分に基づいて右側の接続部Leを検出する。縦枠線検出領域A2の位置は、横枠線検出領域A1で検出された横枠線L1の垂直方向の位置を基準に設定される。
【0083】
車両判定領域A3は、上底及び下底となる辺が画像Gの水平方向に沿った略台形の領域である(厳密には、下底となる辺は直線にならないことが多い。)。車両判定領域A3は、全体として画像Gの水平方向に延びる領域であり、画像Gの左右中央に設定される。車両判定領域A3は、画像Gにおいて駐車枠PFの領域と推定される推定領域に相当する。車両判定部46は、この車両判定領域A3に含まれる画素の特徴に基づいて、駐車枠PF内の駐車車両99の有無を判定する。車両判定領域A3の位置も、横枠線検出領域A1で検出された横枠線L1の垂直方向の位置を基準に設定される。
【0084】
このように駐車支援システム10の画像処理装置2は、判定処理において、画像Gの全体ではなく画像G中の限られた領域A1,A2,A3に基づいて駐車枠PFの存在を判定する。したがって、駐車枠PFの存在を判定するための演算量を大幅に低減できるため、画像処理装置2は駐車枠PFの存在を迅速に判定できることになる。
【0085】
<4.判定処理>
図9は、駐車対象となる駐車枠PFの存在を判定する判定処理の流れを示す図である。図9に示す処理は、駐車支援モードに移行してユーザから駐車支援の実行の指示がなされた場合に(図2のステップS2)、画像処理装置2の制御部21により実行される。また、図9に示す処理は、右サイドカメラ5Rが周期的に取得する画像(フレーム)のそれぞれに対して実行される。したがって、図9に示す処理は、例えば1/30秒ごとに繰り返し実行されることになる。以下、図9に示す判定処理の流れについて説明する。以下では、最初に判定処理の全体概要について説明し、その後、必要に応じて各ステップの処理について具体的に説明する。
【0086】
まず、判定処理の対象となる画像Gが、画像取得部42により右サイドカメラ5Rから取得される。そして、当該画像Gを対象に所定の画像処理である前処理が実行される(ステップS11)。具体的には、画像取得部24が、メディアンフィルタなどを適用して画像G中のノイズを除去する。また、領域設定部43が、画像Gの左右中央の所定の位置に1つの横枠線検出領域A1を設定する。
【0087】
次に、横枠線検出部44が、横枠線L1を検出する横枠線検出処理を実行する(ステップS12)。横枠線検出部44は、画像Gの横枠線検出領域A1に基づいて横枠線L1を検出し、検出した横枠線L1の画像Gの垂直方向における位置を特定する。
【0088】
この横枠線検出処理において、横枠線検出部44が横枠線L1を検出できなかった場合は(ステップS13にてNo)、駐車枠判定部48が駐車可能な駐車枠PFは存在しないと判定し(ステップS23)、そのまま判定処理を終了させる。すなわち、ステップS14以降の処理は実行されない。
【0089】
一方、横枠線検出処理において横枠線検出部44が横枠線L1を検出した場合は(ステップS13にてYes)、次に、領域設定部43が、画像G中に2つの縦枠線検出領域A2と1つの車両判定領域A3とを設定する領域設定処理を行う(ステップS14)。領域設定部43は、横枠線検出部44に特定された横枠線L1の位置を基準に、画像G中に2つの縦枠線検出領域A2と車両判定領域A3とを設定する。
【0090】
次に、縦枠線検出部45が、2つの縦枠線L2を検出する縦枠線検出処理を実行する(ステップS15)。縦枠線検出部45は、2つの縦枠線検出領域A2に基づいて2つの縦枠線L2をそれぞれ検出する。
【0091】
この縦枠線検出処理において、縦枠線検出部45が2つの縦枠線L2の少なくとも1つを検出できなかった場合は(ステップS16にてNo)、駐車枠判定部48が駐車可能な駐車枠PFは存在しないと判定し(ステップS23)、そのまま判定処理を終了させる。すなわち、ステップS17以降の処理は実行されない。
【0092】
一方、縦枠線検出部45が2つの縦枠線L2の双方を検出した場合は(ステップS16にてYes)、次に、車両判定部46が駐車枠PF内の駐車車両99の有無を判定する車両判定処理を実行する(ステップS17)。車両判定部46は、車両判定領域A3に基づいて駐車車両99の有無を判定する。
【0093】
この車両判定処理において、車両判定部46が駐車車両99があると判定した場合は(ステップS18にてYes)、駐車枠判定部48が駐車可能な駐車枠PFは存在しないと判定し(ステップS23)、そのまま判定処理を終了させる。すなわち、ステップS19以降の処理は実行されない。
【0094】
一方、車両判定部46が駐車車両99がないと判定した場合は(ステップS18にてNo)、次に、接続部検出部47が、2つの接続部Leを検出する接続部検出処理を実行する(ステップS19)。接続部検出部47は、2つの縦枠線検出領域A2に基づいて2つの接続部Leをそれぞれ検出する。
【0095】
この接続部検出処理において、接続部検出部47が2つの接続部Leの少なくとも1つを検出できなかった場合は(ステップS20にてNo)、駐車枠判定部48が駐車可能な駐車枠PFは存在しないと判定し(ステップS23)、そのまま判定処理を終了させる。
【0096】
一方、接続部検出部47が2つの接続部Leの双方を検出した場合は(ステップS20にてYes)、駐車枠判定部48が駐車可能な駐車枠PFが存在すると判定する(ステップS21)。
【0097】
次に、駐車枠判定部48は、検出された横枠線L1の位置及び2つの接続部Leの位置に基づいて駐車枠PFの位置を特定する。そして、駐車枠判定部48は、特定した駐車枠PFの位置を、駐車支援装置3に送信する(ステップS22)。
【0098】
このように判定処理においては、以下の4条件A〜Dを満足するか否かが順次に判断され、全ての条件を満足した場合に、駐車枠判定部48が駐車可能な駐車枠PFが存在すると判定する。
【0099】
条件A:横枠線検出処理(ステップS12)において、横枠線検出部44が横枠線L1を検出した。
【0100】
条件B:縦枠線検出処理(ステップS15)において、縦枠線検出部45が2つの縦枠線L2の双方を検出した。
【0101】
条件C:車両判定処理(ステップS17)において、車両判定部46が駐車車両99がないと判定した。
【0102】
条件D:接続部検出処理(ステップS19)において、接続部検出部47が2つの接続部Leの双方を検出した。
【0103】
また一方で、上記4条件のいずれかの条件が満足しない場合には、駐車枠判定部48は駐車可能な駐車枠PFは存在しないと判定し(ステップS23)、以降の他の条件に関する処理を実行させずにそのまま判定処理を終了させる。これにより、無駄な処理の実行が防止されるようになっている。
【0104】
以下、横枠線検出処理(ステップS12)、領域設定処理(ステップS14)、縦枠線検出処理(ステップS15)、車両判定処理(ステップS17)及び接続部検出処理(ステップS19)のそれぞれについて具体的に説明する。
【0105】
<4−1.横枠線検出処理>
まず、横枠線検出部44が横枠線L1を検出する横枠線検出処理(図9のステップS12)について具体的に説明する。図10は、横枠線検出処理の詳細な流れを示す図である。この横枠線検出処理の開始時点においては、図11に示すように、画像G中に横枠線検出領域A1が領域設定部43により設定されている。
【0106】
まず、横枠線検出部44は、横枠線検出領域A1中の水平エッジを抽出する(ステップS31)。横枠線検出部44は、例えば、図12に示す横3×縦3の係数を含むオペレータM1を用いたソーベルフィルタを適用することで、水平エッジを抽出する。
【0107】
横枠線検出部44は、注目画素を中心とした横3×縦3画素の矩形領域を選択する。そして、横枠線検出部44は、選択した矩形領域とオペレータM1とで重なる位置のそれぞれにおいて画素の値(例えば、輝度)と係数とを乗算し、その乗算結果の合計値を注目画素の新たな値とする。横枠線検出部44は、横枠線検出領域A1に含まれる全て画素を順次に注目画素としてこの演算を繰り返し実行する。そして、横枠線検出部44は、演算結果が正となり、かつ、所定の閾値を超える画素を、水平エッジの一部の画素として抽出する。
【0108】
これにより、上側が比較的明るく下側が比較的暗くなる位置に形成される水平エッジが抽出されることになる。一般に、画像Gにおいて、白線などである駐車枠PFの部分は比較的明るくなり、アスファルトなどである駐車枠PF以外の部分は比較的暗くなる。したがって、この処理により、画像G中の横枠線L1の下端部が、水平エッジとして抽出されることになる。
【0109】
次に、横枠線検出部44は、水平エッジの一部とされた画素の数を度数とするヒストグラム(度数分布)を生成する(ステップS32)。横枠線検出部44は、図11に示すように、横枠線検出領域A1を垂直方向に等分に分割し、複数の分割領域Adを形成する。本実施の形態では、横枠線検出部44は、横枠線検出領域A1を6つの分割領域Adに分割する。そして、横枠線検出部44は、図13に示すように、6つの分割領域Adのそれぞれを階級とし、各階級(すなわち、各分割領域Ad)に含まれる水平エッジの一部とされた画素の数を度数とするヒストグラムHを生成する。
【0110】
このヒストグラムHは、横枠線検出領域A1における水平エッジの垂直方向での分布を示している。図13〜図15は、このようにして生成されたヒストグラムHの例をそれぞれ示している。これらの図では、ヒストグラムHの階級を縦軸、度数を横軸で示している。
【0111】
次に、横枠線検出部44は、生成したヒストグラムHを参照して、度数が所定の第1閾値Th1より大きい階級の数(以下、「第1カウント値」という。)C1を計数する(ステップS33)。第1閾値Th1は、例えば「50」とされる。図13の例の場合は、2つの階級で度数が第1閾値Th1を超えるため、第1カウント値C1は「2」となる。また、図14の例の場合は、5つの階級で度数が第1閾値Th1を超えるため、第1カウント値C1は「5」となる。さらに、図15の例の場合は、2つの階級で度数が第1閾値Th1を超えるため、第1カウント値C1は「2」となる。
【0112】
次に、横枠線検出部44は、第1カウント値C1が所定値以下か否かを判定する(ステップS34)。本実施例では、所定値は例えば「2」とされる。そして、横枠線検出部44は、第1カウント値C1が所定値「2」を超える場合は(ステップS34にてNo)、横枠線L1は不検出と判断して(ステップS38)横枠線検出処理を終了する。例えば、図14の場合は、第1カウント値C1が「5」であるため、横枠線L1は不検出と判断される。
【0113】
このように第1カウント値C1が比較的多い場合は、駐車枠PF以外の模様(例えば、縞模様)や、障害物などの他の物体が存在する可能性が高い。このため、このような場合に、横枠線L1は不検出と判断することにより、駐車枠PF以外の模様や、他の物体が近傍に存在する駐車枠PFなどを駐車対象とすることを防止できる。
【0114】
また、第1カウント値C1が所定値「2」以下の場合は(ステップS34にてYes)、次に、横枠線検出部44は、ヒストグラムHを参照して、度数が所定の第2閾値Th2より大きい階級が存在するか否かを判定する(ステップS35)。第2閾値Th2は第1閾値Th1以上の値(Th1≦Th2)であり、例えば「80」とされる。
【0115】
そして、横枠線検出部44は、度数が第2閾値Th2より大きい階級が存在しない場合は(ステップS35にてNo)、横枠線L1は不検出と判断して(ステップS38)横枠線検出処理を終了する。例えば、図15の場合は、度数が第2閾値Th2より大きい階級が無いため、横枠線L1は不検出と判断される。このように、度数が第2閾値Th2より大きい階級が無い場合は、明確な水平エッジが存在しない場合であるため、横枠線L1は不検出と判断される。
【0116】
また、度数が第2閾値Th2より大きい階級が存在する場合は(ステップS35にてYes)、横枠線検出部44は、横枠線L1を検出したと判断する(ステップS36)。例えば、図13の場合は、度数が第2閾値Th2より大きい階級があるため、横枠線L1を検出したと判断される。
【0117】
続いて、横枠線検出部44は、画像Gの垂直方向における横枠線L1の位置を特定する(ステップS37)。横枠線検出部44は、ヒストグラムHを参照して度数が最大となる階級を特定する。そして、横枠線検出部44は、この階級に対応する画像G中の分割領域Adの垂直方向の中央位置を、横枠線L1の位置として特定する。このように度数が最大となる階級の位置に基づいて横枠線L1の位置を特定するため、横枠線L1の位置を正確に特定することができる。
【0118】
このように横枠線検出処理においては、横枠線検出領域A1の複数の分割領域Adをそれぞれ階級とするヒストグラムHを用いる。これらの分割領域Adは垂直方向に幅があるため、横枠線L1が右サイドカメラ5Rの光軸5Raに正確に直交していなくとも、横枠線L1に係る水平エッジをヒストグラムHの度数に反映させることができる。したがって、自車両9の前後方向と駐車枠PFの長手方向とが正確に平行でなくとも、駐車枠PFの横枠線L1を正しく検出できることになる。
【0119】
<4−2.領域設定処理>
次に、領域設定部43が、画像G中に処理の対象とする領域A2,A3を設定する領域設定処理(図9のステップS14)について具体的に説明する。図16は、領域設定処理の詳細な流れを示す図である。この領域設定処理の開始時点においては、画像G中の垂直方向の横枠線L1の位置が横枠線検出部44により特定されている。
【0120】
まず、領域設定部43が、画像G中に車両判定領域A3を設定する(ステップS41)。前述のように、車両判定領域A3は、画像Gの左右中央に設定される略台形の領域であり、駐車枠PFの領域と推定される推定領域に相当する。領域設定部43は、画像G中の垂直方向の横枠線L1の位置に基づいて、この推定領域を導出する。
【0121】
図17の上部は、領域設定部43が、車両判定領域A3を導出する手法を説明する図である。図に示すように、画像G中の各位置は、左上端部を原点、水平方向をX軸(右側を正)、垂直方向をY軸(下側を正)とする直交2次元座標によって表される。
【0122】
車両判定領域A3の下底h1の中央部POのY座標(画像Gの上端からのY軸方向の長さ)Y0は、横枠線検出部44に特定された横枠線L1の垂直方向の位置に対応する。したがって、車両判定領域A3の下底h1の中央部POのY座標Y0は、既知である。
【0123】
車両判定領域A3の導出に際してまず、領域設定部43は、車両判定領域A3の下底h1の2つの端部P1のY座標Y1を導出する。このY座標Y1は、中央部POのY座標Y0に基づいて次の式(1)によって導出される。
【0124】
Y1 = 0.5665 × Y0 + 97.352 …(1)
次に、領域設定部43は、車両判定領域A3の上底h2の2つの端部P2のY座標Y2を導出する。このY座標Y2は、下底h1の端部P1のY座標Y1に基づいて次の式(2)によって導出される。
【0125】
Y2 = 0.4637 × Y1 + 73.621 …(2)
次に、領域設定部43は、車両判定領域A3の下底h1の幅(X軸方向の長さ)W1を導出する。この下底h1の幅W1は、下底h1の端部P1のY座標Y1に基づいて次の式(3)によって導出される。
【0126】
W1 = 1.6062 × Y1 + 30.434 …(3)
さらに、領域設定部43は、車両判定領域A3の上底h2の幅W2を導出する。この上底h2の幅W2は、上底h2の端部P2のY座標Y2に基づいて次の式(4)によって導出される。
【0127】
W2 = 1.6062 × Y2 + 30.434 …(4)
領域設定部43は、これらの式(1)〜(4)の演算を行うことにより、略台形となる車両判定領域A3の4角P1,P1,P2,P2の位置を導出する。すなわち、領域設定部43は、車両判定領域A3を導出することになる。これらの式(1)〜(4)は、試行を繰り返すことで得られたものである。
【0128】
このようにして車両判定領域A3は、画像G中の垂直方向の横枠線L1の位置を基準に設定される。横枠線L1の位置が画像G中の下方になるほど車両判定領域A3は画像G中の下方に設定され、横枠線L1の位置が画像G中の上方になるほど車両判定領域A3は画像G中の上方に設定されることになる。
【0129】
次に、領域設定部43は、画像G中に2つの縦枠線検出領域A2を設定する(ステップS42)。領域設定部43は、車両判定領域A3の位置に基づいて、2つの縦枠線検出領域A2を導出することになる。
【0130】
図17の下部は、領域設定部43が、2つの縦枠線検出領域A2を導出する手法を説明する図である。領域設定部43は、車両判定領域A3の左側の辺h3を左右それぞれ同距離(例えば10画素)ずつX軸方向に移動させて2つの直線h3a,h3bを設定する。そして、この2つの直線h3a,h3bを2辺とする平行四辺形を、左側の縦枠線検出領域A2として設定する。同様に、領域設定部43は、車両判定領域A3の右側の辺h4を左右それぞれ同距離(例えば10画素)ずつX軸方向に移動させて2つの直線h4a,h4bを設定する。そして、この2つの直線h4a,h4bを2辺とする平行四辺形を右側の縦枠線検出領域A2として設定する。したがって、2つの縦枠線検出領域A2は、画像Gの中央に関して左右対称に設定される。
【0131】
これにより縦枠線検出領域A2も、画像G中の垂直方向の横枠線L1の位置を基準に設定されることになる。このため、横枠線L1の位置が画像G中の下方になるほど縦枠線検出領域A2は画像G中の下方に設定され、横枠線L1の位置が画像G中の上方になるほど縦枠線検出領域A2は画像G中の上方に設定される。これにより、縦枠線L2を検出する精度を高めることができる。また、縦枠線L2を検出するための縦枠線検出領域A2を比較的小さなサイズにすることができる。
【0132】
<4−3.縦枠線検出処理>
次に、縦枠線検出部45が、2つの縦枠線L2を検出する縦枠線検出処理(図9のステップS15)について具体的に説明する。縦枠線検出処理の開始時点においては、図18に示すように、画像G中に2つの縦枠線検出領域A2が領域設定部43により設定されている。縦枠線検出部45は、左側の縦枠線検出領域A2に基づいて左側の縦枠線L2を、右側の縦枠線検出領域A2に基づいて右側の縦枠線L2をそれぞれ検出することになる。
【0133】
左側の縦枠線L2を検出するための処理と、右側の縦枠線L2を検出するための処理とは左右が反対となる以外は同一である。このため以下では、縦枠線検出処理として、左側の縦枠線L2を検出するための処理を代表的に説明する。図19は、左側の縦枠線L2を検出するための処理の流れを示す図である。
【0134】
まず、縦枠線検出部45が、縦枠線検出領域A2中の垂直エッジを抽出する(ステップS51)。縦枠線検出部45は、例えば、図20に示す横3×縦3の係数を含むオペレータM2を用いたソーベルフィルタを適用することで、垂直エッジを抽出する。
【0135】
縦枠線検出部45は、注目画素を中心とした横3×縦3画素の矩形領域を選択する。そして、縦枠線検出部45は、選択した矩形領域とオペレータM2とで重なる位置のそれぞれにおいて画素の値(例えば、輝度)と係数とを乗算し、その乗算結果の合計値を注目画素の新たな値とする。縦枠線検出部45は、縦枠線検出領域A2に含まれる全て画素を順次に注目画素としてこの演算を繰り返し実行する。そして、縦枠線検出部45は、演算結果が正となり、かつ、所定の閾値を超える画素を、垂直エッジの一部の画素として抽出する。
【0136】
これにより、左側が比較的明るく右側が比較的暗くなる位置に形成される垂直エッジが抽出されることになる。したがって、この処理により、画像G中の縦枠線L2の右端部が、垂直エッジとして抽出される。
【0137】
次に、縦枠線検出部45は、縦枠線検出領域A2において、垂直エッジが存在する水平ラインの数を計数する(ステップS52)。縦枠線検出部45は、縦枠線検出領域A2に含まれる全ての水平ラインのうちで、垂直エッジの一部とされた画素を含む水平ラインの数(以下、「第2カウント値」という。)C2を計数する。
【0138】
次に、縦枠線検出部45は、第2カウント値C2が全ての水平ラインの10%以上であるか否かを判定する(ステップS53)。そして、縦枠線検出部45は、第2カウント値C2が全ての水平ラインの10%未満の場合は(ステップS53にてNo)、縦枠線L2は不検出と判断して(ステップS57)縦枠線検出処理を終了する。これにより、比較的短い垂直エッジのみが存在する場合は、縦枠線L2は不検出と判断される。つまり、比較的長い垂直エッジがある場合に縦枠線L2を検出することができる。
【0139】
また、第2カウント値C2が全ての水平ラインの10%以上である場合は(ステップS53にてYes)、縦枠線検出部45は、縦枠線検出領域A2に含まれるエッジの方向が「右上がり」か「右下がり」かを判定する(ステップS54)。
【0140】
エッジの方向を判定する際には、縦枠線検出部45は、垂直エッジの一部とされた画素のそれぞれに対して、水平エッジの抽出に用いる図12のオペレータM1を適用する。そして、縦枠線検出部45は、その演算結果の正負に基づいて、当該画素が「右上がり」のエッジの一部か「右下がり」のエッジの一部かを判断する。
【0141】
図21及び図22はそれぞれ、エッジの一部を模式的に示す図である。図21は「右上がり」のエッジE1の一部を示し、図21は「右下がり」のエッジE2の一部を示している。また、図中では、水平方向及び垂直方向に沿った2つの矢印AR1,AR2を示している。これらの矢印AR1,AR2は、エッジを境界として明るい側に向かう方向を示している。
【0142】
図20に示すオペレータM2を用いた場合は、エッジの左側が明るくなる場合に演算結果が正となる。垂直エッジの一部とされた画素は、このオペレータM2を用いて演算結果が正となった画素である。したがって、この画素に係るエッジの左側は明るくなっている(矢印AR1が左向きとなる)。この場合において、図21に示すように、「右上がり」のエッジE1の場合は、そのエッジE1の上側が明るくなる(矢印AR2が上向き)。一方で、図22に示すように、「右下がり」のエッジE2の場合は、そのエッジE2の下側が明るくなる(矢印AR2が下向き)。
【0143】
エッジの上側及び下側のいずれが明るいかは、図12に示すオペレータM1を用いた演算結果で判断できる。すなわち、オペレータM1を用いた演算結果は、エッジの上側が明るいときには正となり、エッジの下側が明るいときには負となる。このため、縦枠線検出部45は、オペレータM1を用いた演算結果が正であれば、当該画素は「右上がり」のエッジの一部と判断する。一方、縦枠線検出部45は、オペレータM1を用いた演算結果が負であれば、当該画素は「右下がり」のエッジの一部と判断する。
【0144】
縦枠線検出部45は、このような判断を、垂直エッジの一部とされた画素のそれぞれに関して実行する。そして、縦枠線検出部45は、「右上がり」のエッジの一部と判断された画素の数が、「右下がり」のエッジの一部と判断された画素の数よりも多い場合は、縦枠線検出領域A2に含まれるエッジの方向は「右上がり」と判定する。一方、縦枠線検出部45は、「右上がり」のエッジの一部と判断された画素の数が、「右下がり」のエッジの一部と判断された画素の数よりも少ない場合は、縦枠線検出領域A2に含まれるエッジの方向は「右下がり」と判定する。
【0145】
そして、縦枠線検出部45は、縦枠線検出領域A2に含まれるエッジの方向が「右上がり」である場合は(ステップS55にてYes)、縦枠線L2を検出したと判断する(ステップS56)。一方、縦枠線検出部45は、縦枠線検出領域A2に含まれるエッジの方向が「右下がり」である場合は(ステップS55にてNo)、縦枠線L2は不検出と判断する(ステップS57)。
【0146】
左側の縦枠線L2は、画像G中において「右上がり」の方向に延びるはずである。このため、縦枠線検出部45は、縦枠線検出領域A2に含まれるエッジの方向が「右上がり」である場合に、縦枠線L2を検出したと判断することになる。このように、縦枠線検出部45は、縦枠線検出領域A2に含まれるエッジの方向が「右上がり」か「右下がり」かを判定し、その判定結果に基づいて縦枠線L2を検出するため、比較的簡便な処理で縦枠線L2を検出することができる。なお、右側の縦枠線L2を検出する場合においては、縦枠線検出領域A2に含まれるエッジの方向が「右下がり」である場合に、縦枠線L2を検出したと判断すればよい。
【0147】
<4−4.車両判定処理>
次に、車両判定部46が駐車枠PF内の駐車車両99の有無を判定する車両判定処理(図9のステップS17)について具体的に説明する。図23は、車両判定処理の詳細な流れを示す図である。この車両判定処理の開始時点においては、図24に示すように、画像G中に車両判定領域A3が領域設定部43により設定されている。
【0148】
まず、車両判定部46は、車両判定領域A3中の比較的低輝度の画素の数を計数する(ステップS61)。車両判定部46は、車両判定領域A3に含まれる全ての画素のうちで、輝度が所定の閾値以下となる低輝度画素の数(以下、「第3カウント値」という。)C3を計数する。この閾値は、例えば、輝度が8ビット(0〜255)で表現される場合、「30」とされる。
【0149】
次に、車両判定部46は、第3カウント値が所定値以上か否かを判定する(ステップS62)。本実施例では、所定値は例えば「300」とされる。そして、車両判定部46は、第3カウント値C3が所定値「300」以上の場合は(ステップS62にてYes)、駐車枠PF内に駐車車両99があると判定する(ステップS63)。一方、車両判定部46は、第3カウント値C3が所定値「300」未満の場合は(ステップS62にてNo)、駐車枠PF内に駐車車両99がないと判定する(ステップS64)。
【0150】
低輝度画素は、人間の感覚として非常に暗い画素である。図24に示すように、駐車枠PF内に駐車車両99がない場合は、車両判定領域A3中にこのような低輝度画素はあまり含まれない。これに対して、図25に示すように、駐車枠PF内に駐車車両99がある場合は、車両判定領域A3の付近に駐車車両99の影及びタイヤに対応する非常に暗い領域Asが存在し、この領域Asに多くの低輝度画素が含まれている。
【0151】
したがって、車両判定部46は、車両判定領域A3にこのような低輝度画素が比較的多く含まれる場合は、駐車枠PF内に駐車車両99があると判定することになる。このように、車両判定部46は、低輝度画素の数に基づいて駐車枠PF内の駐車車両99の有無を判定するため、非常に簡便な処理で駐車車両99の有無を判定することができる。なお、一般に、多くの低輝度画素が含まれる領域Asは、車両判定領域A3の上半分に表れる(図25参照。)。このため、車両判定領域A3の上半分のみを対象に、車両判定処理を行うようにしてもよい。
【0152】
<4−5.接続部検出処理>
次に、接続部検出部47が2つの接続部Leを検出する接続部検出処理(図9のステップS19)について具体的に説明する。接続部検出処理の開始時点においては、図18に示すように、画像G中に2つの縦枠線検出領域A2が領域設定部43により設定されている。接続部検出部47は、左側の縦枠線検出領域A2の下半分に基づいて左側の接続部Leを、右側の縦枠線検出領域A2の下半分に基づいて右側の接続部Leをそれぞれ検出することになる。
【0153】
左側の接続部Leを検出するための処理と、右側の接続部Leを検出するための処理とは左右が反対となる以外は同一である。このため以下では、接続部検出処理として、左側の接続部Leを検出するための処理を代表的に説明する。
【0154】
図26は、接続部検出処理の検出対象となる画像G中の左側の接続部Leの近傍を拡大して示す図である。左側の接続部Leは、およそ水平方向に延びる横枠線L1と、「右上がり」の方向に延びる左側の縦枠線L2とを接続する。
【0155】
したがって、左側の接続部Leには、図中において一点鎖線の正方形枠で囲んだパターン形状Qが含まれている。このパターン形状Qの下半分には、横枠線L1の一部に対応する比較的明るい矩形の領域Q1が含まれている。また、パターン形状Qの上半分の左側には、縦枠線L2の一部に対応する比較的明るい三角形の領域Q2が含まれている。そして、パターン形状Qの他部分は、アスファルトなどに対応する比較的暗い領域Q3となる。
【0156】
接続部検出部47は、このようなパターン形状Qを検出することで接続部Leを検出するようになっている。また、接続部Leは、縦枠線L2の下端部であるため、縦枠線検出領域A2の下方に表れる。このため、接続部検出部47は、縦枠線検出領域A2の下半分のみを対象にして接続部Leを検出する。図27は、接続部Leを検出するための処理の流れを示す図である。
【0157】
まず、接続部検出部47は、縦枠線検出領域A2の下半分を対象に、図26に示すパターン形状Qを検出する(ステップS71)。接続部検出部47は、図28に示すHaar−Like(ハールライク)特徴を用いて、パターン形状Qを検出する。
【0158】
このHaar−Like特徴は、全体として例えば横8×縦8画素の正方形の領域であり、4つの領域R1〜R4を含んでいる。左下領域R1、右下領域R2及び右上領域R4は、横4×縦4画素の正方形の領域である。また、左上領域R3は、横4×縦4画素の正方形を対角線で切断して得られる二等辺三角形の領域である。そして、左下領域R1、右下領域R2及び左上領域R3は「明領域」として定義され、ハッチングを付した右上領域R4は「暗領域」として定義されている。
【0159】
接続部検出部47は、縦枠線検出領域A2の下半分を対象に、このHaar−Like特徴を用いて走査する。これにより、接続部検出部47は、実質的にパターン形状Qを検出する。より具体的には、接続部検出部47は、縦枠線検出領域A2の下半分のうちで処理対象とする位置を水平方向及び垂直方向に順次にずらしながら、各位置においてHaar−Like特徴を適用し、以下の4条件a〜dの全てを満足するか否かを判定する。輝度は、8ビット(0〜255)で表現される。
【0160】
条件a:3つの「明領域」R1〜R3の平均輝度が、「暗領域」R4の1.4倍以上である。
【0161】
条件b:3つの「明領域」R1〜R3の平均輝度が、「100」以上である。
【0162】
条件c:水平方向に隣接する「明領域」R1,R2の平均輝度差が、「20」未満である。
【0163】
条件d:垂直方向に隣接する「明領域」R1,R3の平均輝度差が、「20」未満である。
【0164】
縦枠線検出領域A2の下半分の全領域に関して走査が完了した後、縦枠線検出領域A2の下半分のうちで上記4条件a〜dを満足する位置がなかった場合は(ステップS72にてNo)、接続部検出部47は接続部Leは不検出と判断する(ステップS75)。
【0165】
一方、縦枠線検出領域A2の下半分のうちで上記4条件a〜dを満足する少なくとも1つの位置があった場合は(ステップS72にてYes)、接続部検出部47は接続部Leを検出したと判断する(ステップS73)。そして、接続部検出部47は、上記4条件a〜dを満足する位置の平均の座標を導出し、導出した座標を接続部Leの位置として特定する(ステップS74)。
【0166】
このように接続部検出部47は、縦枠線検出領域A2の下半分という比較的狭い領域に基づいて接続部Leを検出するため、接続部Leを検出するための演算量を大幅に低減できる。また、接続部検出部47は、正方形及び二等辺三角形のみを含む単純な形状のHaar−Like特徴を用いて接続部Leを検出する。このため、比較的簡便な処理で接続部Leを検出することができる。なお、右側の接続部Leを検出する場合においては、図29に示すHaar−Like特徴を用いればよい。
【0167】
以上のように、本実施の形態の画像処理装置2では、横枠線検出部44が画像G中の1つの横枠線検出領域A1に基づいて駐車枠PFの横枠線L1を検出し、縦枠線検出部45が画像G中の2つの縦枠線検出領域A2に基づいて2つの縦枠線L2を検出する。さらに、接続部検出部47が、画像G中の2つの縦枠線検出領域A2に基づいて2つの接続部Leを検出する。そして、駐車枠判定部48は、これらの検出結果に基づいて、駐車対象となる駐車枠PFの存在を判定する。このように、画像Gの全体ではなく画像G中の限られた領域A1,A2に基づいて駐車枠PFの存在を判定する。このため、駐車枠PFの存在を判定するための演算量を大幅に低減でき、駐車枠PFの存在を迅速に判定することができる。
【0168】
<5.変形例>
以上、本発明の実施の形態について説明してきたが、この発明は上記実施の形態に限定されるものではなく様々な変形が可能である。以下では、このような変形例について説明する。上記実施の形態及び以下で説明する形態を含む全ての形態は、適宜に組み合わせ可能である。
【0169】
上記実施の形態では、駐車枠PFへの自車両9の駐車を支援する駐車支援装置3は、自車両9の挙動を制御して駐車枠PF内に自車両9を自動的に移動させるものであった。これに対して、駐車支援装置は、車両を駐車させるために必要なステアリングの操作などの具体的な操作内容を適切なタイミングで音声によってユーザに案内するものであってもよい。
【0170】
また、上記実施の形態では、画像処理装置2と駐車支援装置3とは別の装置であると説明したが、画像処理装置2と駐車支援装置3とが同一の筐体内に配置されて一体型の装置となっていてもよい。
【0171】
また、上記実施の形態では、右サイドカメラ5Rで取得された画像を対象に判定処理が行われていた。これに対して、左サイドカメラ5Lで取得された画像を対象に判定処理が行われてもよい。また、右サイドカメラ5Rと左サイドカメラ5Lとのいずれの画像を判定処理に用いるかを、ユーザが選択できるようになっていてもよい。
【0172】
また、上記で説明した画像処理の具体的手法は一例であり、他の手法を採用してもよい。例えば、エッジの方向の判定に際してエッジの勾配の値を導出し、その値に基づいてエッジの方向が「右上がり」か「右下がり」かを判定してもよい。
【0173】
また、上記実施の形態では、プログラムに従ったCPUの演算処理によってソフトウェア的に各種の画像処理機能が実現されると説明したが、これら画像処理機能のうちの一部または全部は電気的なハードウェア回路により実現されてもよい。
【符号の説明】
【0174】
2 画像処理装置
3 駐車支援装置
9 自車両
10 駐車支援システム
43 領域設定部
44 横枠線検出部
45 縦枠線検出部
46 車両判定部
47 接続部検出部
48 駐車枠判定部
5R 右サイドカメラ
99 駐車車両
【特許請求の範囲】
【請求項1】
画像に基づいて車両の駐車対象となる駐車枠の存在を判定する画像処理装置であって、
前記車両の外部を撮影するカメラで得られた画像を取得する取得手段と、
前記画像中の1つの第1領域に基づいて、前記カメラの光軸に略直交する前記駐車枠の第1線を検出する第1検出手段と、
前記画像中の前記第1領域の左側及び右側にそれぞれ設定される2つの第2領域に基づいて、前記カメラの光軸に略沿った前記駐車枠の2つの第2線を検出する第2検出手段と、
前記第1及び前記第2検出手段の検出結果に基づいて、前記駐車枠の存在を判定する判定手段と、
を備えることを特徴とする画像処理装置。
【請求項2】
請求項1に記載の画像処理装置において、
前記第1領域は、前記画像の左右中央に設定されることを特徴とする画像処理装置。
【請求項3】
請求項1または2に記載の画像処理装置において、
前記第1領域の水平方向のサイズは、前記画像の水平方向のサイズの1/10以下であることを特徴とする画像処理装置。
【請求項4】
請求項1ないし3のいずれかに記載の画像処理装置において、
前記第1検出手段は、
前記第1領域の水平エッジを抽出し、
前記第1領域を垂直方向に分割して得られる複数の分割領域をそれぞれ階級とし、前記水平エッジとなる画素の数を度数とするヒストグラムに基づいて前記第1線を検出することを特徴とする画像処理装置。
【請求項5】
請求項4に記載の画像処理装置において、
前記第1検出手段は、前記ヒストグラムにおいて、
前記度数が第1閾値Th1より大きい階級の数が所定値以下であり、かつ、
前記度数が第2閾値Th2(Th1≦Th2)より大きい階級が存在する場合に、前記第1線を検出することを特徴とする画像処理装置。
【請求項6】
請求項5に記載の画像処理装置において、
前記第1検出手段は、前記ヒストグラムにおいて前記度数が最大となる階級の位置に基づいて、前記画像の垂直方向における前記第1線の位置を特定することを特徴とする画像処理装置。
【請求項7】
請求項1ないし6のいずれかに記載の画像処理装置において、
前記第1検出手段は、前記画像における前記第1線の位置を特定し、
前記画像処理装置は、
前記画像における前記第1線の位置を基準に、前記画像における前記2つの第2領域を設定する領域設定手段、
をさらに備えることを特徴とする画像処理装置。
【請求項8】
請求項1ないし7のいずれかに記載の画像処理装置において、
前記第2検出手段は、
前記2つの第2領域のそれぞれにおいて垂直エッジを抽出し、
前記2つの第2領域のそれぞれにおいて、該第2領域に含まれる全ての水平ラインのうち前記垂直エッジを含む水平ラインの割合に基づいて前記第2線を検出することを特徴とする画像処理装置。
【請求項9】
請求項1ないし8のいずれかに記載の画像処理装置において、
前記第2検出手段は、前記2つの第2領域のそれぞれにおいて、該第2領域に含まれるエッジの方向が右上がりか右下がりかを判定し、その判定結果に基づいて前記第2線を検出することを特徴とする画像処理装置。
【請求項10】
請求項1ないし9のいずれかに記載の画像処理装置において、
前記第1検出手段は、前記画像における前記第1線の位置を特定し、
前記画像処理装置は、
前記第1線の位置に基づいて、前記画像における前記駐車枠の領域と推定される推定領域を導出する導出手段と、
前記推定領域中の輝度が閾値以下となる画素の数に基づいて前記駐車枠内の駐車車両の有無を判定する車両判定手段と、
をさらに備えることを特徴とする画像処理装置。
【請求項11】
請求項1ないし10のいずれかに記載の画像処理装置において、
前記2つの第2領域に基づいて、前記第1線と前記第2線とを接続する2つの接続部をそれぞれ検出する第3検出手段、
をさらに備えることを特徴とする画像処理装置。
【請求項12】
請求項11に記載の画像処理装置において、
前記判定手段は、
前記第1検出手段が前記第1線を検出したという第1条件と、
前記第2検出手段が前記2つの第2線を検出したという第2条件と、
前記第3検出手段が前記2つの接続部を検出したという第3条件と、
の全ての条件が満足した場合に、前記駐車枠が存在すると判定することを特徴とする画像処理装置。
【請求項13】
請求項12に記載の画像処理装置において、
前記判定手段は、前記第1ないし第3条件のいずれかの条件が満足しない場合には、以降の他の条件に関する処理を実行させないことを特徴とする画像処理装置。
【請求項14】
請求項1に記載の画像処理装置において、
前記カメラは、前記車両の側方を撮影するサイドカメラであることを特徴とする画像処理装置。
【請求項15】
請求項1ないし14のいずれかに記載の画像処理装置と、
前記画像処理装置で検出された前記駐車枠への車両の駐車を支援する駐車支援装置と、
を備えることを特徴とする駐車支援システム。
【請求項16】
画像に基づいて車両の駐車対象となる駐車枠の存在を判定する画像処理方法であって、
(a)前記車両の外部を撮影するカメラで得られた画像を取得する工程と、
(b)前記画像中の1つの第1領域に基づいて、前記カメラの光軸に略直交する前記駐車枠の第1線を検出する工程と、
(c)前記画像中の前記第1領域の左側及び右側にそれぞれ設定される2つの第2領域に基づいて、前記カメラの光軸に略沿った前記駐車枠の2つの第2線を検出する工程と、
(d)前記工程(a)及び(b)の検出結果に基づいて、前記駐車枠の存在を判定する工程と、
を備えることを特徴とする画像処理方法。
【請求項17】
画像処理装置に含まれるコンピュータによって実行可能なプログラムであって、
前記コンピュータによる前記プログラムの実行は、前記コンピュータに、
(a)車両の外部を撮影するカメラで得られた画像を取得する工程と、
(b)前記画像中の1つの第1領域に基づいて、前記カメラの光軸に略直交する駐車枠の第1線を検出する工程と、
(c)前記画像中の前記第1領域の左側及び右側にそれぞれ設定される2つの第2領域に基づいて、前記カメラの光軸に略沿った前記駐車枠の2つの第2線を検出する工程と、
(d)前記工程(a)及び(b)の検出結果に基づいて、前記駐車枠の存在を判定する工程と、
を実行させることを特徴とするプログラム。
【請求項1】
画像に基づいて車両の駐車対象となる駐車枠の存在を判定する画像処理装置であって、
前記車両の外部を撮影するカメラで得られた画像を取得する取得手段と、
前記画像中の1つの第1領域に基づいて、前記カメラの光軸に略直交する前記駐車枠の第1線を検出する第1検出手段と、
前記画像中の前記第1領域の左側及び右側にそれぞれ設定される2つの第2領域に基づいて、前記カメラの光軸に略沿った前記駐車枠の2つの第2線を検出する第2検出手段と、
前記第1及び前記第2検出手段の検出結果に基づいて、前記駐車枠の存在を判定する判定手段と、
を備えることを特徴とする画像処理装置。
【請求項2】
請求項1に記載の画像処理装置において、
前記第1領域は、前記画像の左右中央に設定されることを特徴とする画像処理装置。
【請求項3】
請求項1または2に記載の画像処理装置において、
前記第1領域の水平方向のサイズは、前記画像の水平方向のサイズの1/10以下であることを特徴とする画像処理装置。
【請求項4】
請求項1ないし3のいずれかに記載の画像処理装置において、
前記第1検出手段は、
前記第1領域の水平エッジを抽出し、
前記第1領域を垂直方向に分割して得られる複数の分割領域をそれぞれ階級とし、前記水平エッジとなる画素の数を度数とするヒストグラムに基づいて前記第1線を検出することを特徴とする画像処理装置。
【請求項5】
請求項4に記載の画像処理装置において、
前記第1検出手段は、前記ヒストグラムにおいて、
前記度数が第1閾値Th1より大きい階級の数が所定値以下であり、かつ、
前記度数が第2閾値Th2(Th1≦Th2)より大きい階級が存在する場合に、前記第1線を検出することを特徴とする画像処理装置。
【請求項6】
請求項5に記載の画像処理装置において、
前記第1検出手段は、前記ヒストグラムにおいて前記度数が最大となる階級の位置に基づいて、前記画像の垂直方向における前記第1線の位置を特定することを特徴とする画像処理装置。
【請求項7】
請求項1ないし6のいずれかに記載の画像処理装置において、
前記第1検出手段は、前記画像における前記第1線の位置を特定し、
前記画像処理装置は、
前記画像における前記第1線の位置を基準に、前記画像における前記2つの第2領域を設定する領域設定手段、
をさらに備えることを特徴とする画像処理装置。
【請求項8】
請求項1ないし7のいずれかに記載の画像処理装置において、
前記第2検出手段は、
前記2つの第2領域のそれぞれにおいて垂直エッジを抽出し、
前記2つの第2領域のそれぞれにおいて、該第2領域に含まれる全ての水平ラインのうち前記垂直エッジを含む水平ラインの割合に基づいて前記第2線を検出することを特徴とする画像処理装置。
【請求項9】
請求項1ないし8のいずれかに記載の画像処理装置において、
前記第2検出手段は、前記2つの第2領域のそれぞれにおいて、該第2領域に含まれるエッジの方向が右上がりか右下がりかを判定し、その判定結果に基づいて前記第2線を検出することを特徴とする画像処理装置。
【請求項10】
請求項1ないし9のいずれかに記載の画像処理装置において、
前記第1検出手段は、前記画像における前記第1線の位置を特定し、
前記画像処理装置は、
前記第1線の位置に基づいて、前記画像における前記駐車枠の領域と推定される推定領域を導出する導出手段と、
前記推定領域中の輝度が閾値以下となる画素の数に基づいて前記駐車枠内の駐車車両の有無を判定する車両判定手段と、
をさらに備えることを特徴とする画像処理装置。
【請求項11】
請求項1ないし10のいずれかに記載の画像処理装置において、
前記2つの第2領域に基づいて、前記第1線と前記第2線とを接続する2つの接続部をそれぞれ検出する第3検出手段、
をさらに備えることを特徴とする画像処理装置。
【請求項12】
請求項11に記載の画像処理装置において、
前記判定手段は、
前記第1検出手段が前記第1線を検出したという第1条件と、
前記第2検出手段が前記2つの第2線を検出したという第2条件と、
前記第3検出手段が前記2つの接続部を検出したという第3条件と、
の全ての条件が満足した場合に、前記駐車枠が存在すると判定することを特徴とする画像処理装置。
【請求項13】
請求項12に記載の画像処理装置において、
前記判定手段は、前記第1ないし第3条件のいずれかの条件が満足しない場合には、以降の他の条件に関する処理を実行させないことを特徴とする画像処理装置。
【請求項14】
請求項1に記載の画像処理装置において、
前記カメラは、前記車両の側方を撮影するサイドカメラであることを特徴とする画像処理装置。
【請求項15】
請求項1ないし14のいずれかに記載の画像処理装置と、
前記画像処理装置で検出された前記駐車枠への車両の駐車を支援する駐車支援装置と、
を備えることを特徴とする駐車支援システム。
【請求項16】
画像に基づいて車両の駐車対象となる駐車枠の存在を判定する画像処理方法であって、
(a)前記車両の外部を撮影するカメラで得られた画像を取得する工程と、
(b)前記画像中の1つの第1領域に基づいて、前記カメラの光軸に略直交する前記駐車枠の第1線を検出する工程と、
(c)前記画像中の前記第1領域の左側及び右側にそれぞれ設定される2つの第2領域に基づいて、前記カメラの光軸に略沿った前記駐車枠の2つの第2線を検出する工程と、
(d)前記工程(a)及び(b)の検出結果に基づいて、前記駐車枠の存在を判定する工程と、
を備えることを特徴とする画像処理方法。
【請求項17】
画像処理装置に含まれるコンピュータによって実行可能なプログラムであって、
前記コンピュータによる前記プログラムの実行は、前記コンピュータに、
(a)車両の外部を撮影するカメラで得られた画像を取得する工程と、
(b)前記画像中の1つの第1領域に基づいて、前記カメラの光軸に略直交する駐車枠の第1線を検出する工程と、
(c)前記画像中の前記第1領域の左側及び右側にそれぞれ設定される2つの第2領域に基づいて、前記カメラの光軸に略沿った前記駐車枠の2つの第2線を検出する工程と、
(d)前記工程(a)及び(b)の検出結果に基づいて、前記駐車枠の存在を判定する工程と、
を実行させることを特徴とするプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【公開番号】特開2013−71703(P2013−71703A)
【公開日】平成25年4月22日(2013.4.22)
【国際特許分類】
【出願番号】特願2011−213900(P2011−213900)
【出願日】平成23年9月29日(2011.9.29)
【出願人】(000237592)富士通テン株式会社 (3,383)
【Fターム(参考)】
【公開日】平成25年4月22日(2013.4.22)
【国際特許分類】
【出願日】平成23年9月29日(2011.9.29)
【出願人】(000237592)富士通テン株式会社 (3,383)
【Fターム(参考)】
[ Back to top ]