説明

操縦支援装置

【構成】カメラC_3は、車両に設けられて斜め上方向から地面を捉える。CPU16は、カメラC_3から出力された被写界像P_3を地面に対する鳥瞰画像に変換し、車両の前後方向の姿勢を定義するべく地面に描かれた複数の直線を表す線画像を鳥瞰画像から探索する。発見された線画像に現われた複数の線の平行性がエラー条件に合致する場合、CPU16は、バックギアの選択に応答して表示装置22に表示されるキャラクタ画像を点滅させる。
【効果】鳥瞰変換特性の異常に起因する事故を抑制することできる。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、操縦支援装置に関し、特に、車両に設けられたカメラから出力された被写界像に基づいて車両の操縦を支援する、操縦支援装置に関する。
【背景技術】
【0002】
この種の装置の一例が、特許文献1に開示されている。この背景技術によれば、LKA用ECUは、前方カメラの撮像画像から道路区画線を認識して目標軌跡を生成し、ステアリング装置に目標操舵角を送信する。ステアリング装置のコントローラは、操舵角が目標操舵角に近づくようにアシストモータを制御する。こうして、認識された道路区画線に基づく自動操舵制御が実現される。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2008−49918号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、背景技術では、カメラの撮像画像が鳥瞰画像に変換されることはなく、車両の操舵が鳥瞰画像に基づいて支援されることもない。
【0005】
それゆえに、この発明の主たる目的は、鳥瞰画像に基づく操縦支援性能を向上させることができる、操縦支援装置を提供することである。
【課題を解決するための手段】
【0006】
この発明に従う画像処理装置(10:実施例で相当する参照符号。以下同じ)は、車両(100)に設けられて斜め上方向から地面を捉えるカメラ(C_3)、カメラから出力された被写界像を地面に対する鳥瞰画像に変換する変換手段(S3~S5)、車両の前後方向の姿勢を定義するべく地面に描かれた複数の直線を表す線画像を変換手段によって変換された鳥瞰画像から探索する第1探索手段(S51~S57)、および第1探索手段によって発見された線画像に現われた複数の線の平行性がエラー条件に合致する場合にドライバに向けて報知を発生する報知手段(S19, S23)を備える。
【0007】
好ましくは、第1探索手段によって発見された線画像に現われた複数の線の車幅方向における座標を車長方向における複数の位置の各々で検出する第1検出手段(S59, S81~S87)、第1検出手段によって注目された複数の線の平行性を表す係数を第1検出手段によって検出された座標に基づいて算出する算出手段(S89~S91, S61~S63)、および算出手段によって算出された係数がエラー条件に合致するか否かを判別する判別手段(S69)がさらに備えられる。
【0008】
好ましくは、変換手段によって変換された鳥瞰画像を運転席に設けられたモニタ(24)に表示する画像表示手段(S13)がさらに備えられ、報知手段は車両の後進に対応して報知をモニタに表示する報知表示手段(S23)を含む。
【0009】
好ましくは、第1探索手段によって探索される線画像は車両の幅よりも大きい間隔で地面に描かれた直線を表す画像に相当する。
【0010】
好ましくは、車両が第1閾値を上回る距離を有する直線道路を第2閾値を上回る速度で移動するときに第1探索手段を起動する制御手段(S35~S47)がさらに備えられる。
【0011】
好ましくは、車両の前後方向の姿勢を定義するべく地面に描かれた複数の直線を表す線画像を変換手段によって変換された鳥瞰画像から探索する第2探索手段(S105~S111)、変換特性調整指示を受け付けたとき変換手段の変換特性を繰り返し変更する変更手段(S125, S145)、第2探索手段によって発見された線画像に現われた複数の線の車幅方向における座標を車長方向における複数の位置の各々で検出する検出処理を変更手段の変更処理と並列して実行する第2検出手段(S119, S139, S81~S87)、および第2検出手段によって検出された座標に基づいて変換手段の変換特性を調整する調整手段(S133, S151)がさらに備えられる。
【発明の効果】
【0012】
線画像は、車両の前後方向の姿勢を定義するべく地面に描かれた複数の直線を表す画像に相当し、斜め上方向から地面を捉えるカメラの出力に基づく鳥瞰画像から探索される。したがって、車幅方向における線画像の歪みは、鳥瞰変換特性の異常に起因するものと考えられる。このような歪みが生じた場合にドライバに向けて報知を発生することで、鳥瞰変換特性の異常に起因する事故を抑制することできる。こうして、鳥瞰画像に基づく操縦支援性能が向上する。
【0013】
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【0014】
【図1】この発明の基本的構成を示すブロック図である。
【図2】この発明の一実施例の構成を示すブロック図である。
【図3】図2実施例が搭載された車両の一例を示す斜視図である。
【図4】車両に取り付けられた複数のカメラによって捉えられる視野を示す図解図である。
【図5】カメラの出力に基づく鳥瞰画像の作成動作の一部を示す図解図である。
【図6】表示装置によって表示される運転支援画像の一例を示す図解図である。
【図7】駐車枠へ駐車するときに表示される運転支援画像の一例を示す図解図である。
【図8】車両に取り付けられたカメラの角度を示す図解図である。
【図9】カメラ座標系と撮像面の座標系と世界座標系との関係を示す図解図である。
【図10】車両が路面を走行する状態の一例を示す図解図である。
【図11】鳥瞰画像に現われた白線の歪みの一例を示す図解図である。
【図12】(A)は白線検知エリアDT1における白線画像の分布の一例を示すグラフであり、(B)は白線検知エリアDT2における白線画像の分布の一例を示すグラフである。
【図13】鳥瞰画像に現われた白線の歪みの他の一例を示す図解図である。
【図14】(A)は白線検知エリアDT1における白線画像の分布の他の一例を示すグラフであり、(B)は白線検知エリアDT2における白線画像の分布の他の一例を示すグラフである。
【図15】駐車枠へ駐車するときに表示される運転支援画像の他の一例を示す図解図である。
【図16】駐車枠へ駐車するときに表示される運転支援画像のその他の一例を示す図解図である。
【図17】図2実施例に適用されるCPUの動作の一部を示すフロー図である。
【図18】図2実施例に適用されるCPUの動作の他の一部を示すフロー図である。
【図19】図2実施例に適用されるCPUの動作のその他の一部を示すフロー図である。
【図20】図2実施例に適用されるCPUの動作のさらにその他の一部を示すフロー図である。
【図21】図2実施例に適用されるCPUの動作の他の一部を示すフロー図である。
【図22】図2実施例に適用されるCPUの動作のその他の一部を示すフロー図である。
【図23】図2実施例に適用されるCPUの動作のさらにその他の一部を示すフロー図である。
【図24】図2実施例に適用されるCPUの動作の他の一部を示すフロー図である。
【図25】図2実施例に適用されるCPUの動作のその他の一部を示すフロー図である。
【図26】図2実施例に適用されるCPUの動作のさらにその他の一部を示すフロー図である。
【発明を実施するための形態】
【0015】
以下、この発明の実施の形態を図面を参照しながら説明する。
[基本的構成]
【0016】
図1を参照して、この発明の操縦支援装置は、基本的に次のように構成される。カメラ1は、車両に設けられて斜め上方向から地面を捉える。変換手段2は、カメラ1から出力された被写界像を地面に対する鳥瞰画像に変換する。第1探索手段3は、車両の前後方向の姿勢を定義するべく地面に描かれた複数の直線を表す線画像を変換手段2によって変換された鳥瞰画像から探索する。報知手段4は、第1探索手段3によって発見された線画像の平行性がエラー条件に合致する場合にドライバに向けて報知を発生する。
【0017】
線画像は、車両の前後方向の姿勢を定義するべく地面に描かれた複数の直線を表す画像に相当し、斜め上方向から地面を捉えるカメラ1の出力に基づく鳥瞰画像から探索される。したがって、車幅方向における線画像の歪みは、鳥瞰変換特性の異常に起因するものと考えられる。このような歪みが生じた場合にドライバに向けて報知を発生することで、鳥瞰変換特性の異常に起因する事故を抑制することできる。こうして、鳥瞰画像に基づく操縦支援性能が向上する。
[実施例]
【0018】
図2に示すこの実施例の操縦支援装置10は、4個のカメラC_1〜C_4を含む。カメラC_1〜C_4はそれぞれ、共通の垂直同期信号Vsyncに応答して、被写界像P_1〜P_4を1/30秒毎に出力する。出力された被写界像P_1〜P_4は、画像処理回路12に与えられる。なお、この実施例では、説明を簡単にするため、垂直同期信号VsyncはカメラC_1〜C_4および画像処理回路12の画像出力で同一としている。
【0019】
図3を参照して、カメラC_1は、カメラC_1の光軸が車両100の前方斜め下向きに延びる姿勢で、車両100の前上側部に設置される。カメラC_2は、カメラC_2の光軸が車両100の右方斜め下向きに延びる姿勢で、車両100の右上側部に設置される。カメラC_3は、カメラC_3の光軸が車両100の後方斜め下向きに延びる姿勢で、車両100の後上側部に設置される。カメラC_4は、カメラC_4の光軸が車両100の左方斜め下向きに延びる姿勢で、車両100の左上側部に設置される。車両100の周辺の被写界は、このようなカメラC_1〜C_4によって、地面に斜めに交差する方向から捉えられる。
【0020】
図4に示すように、カメラC_1は車両100の前方向を捉える視野VW_1を有し、カメラC_2は車両100の右方向を捉える視野VW_2を有し、カメラC_3は車両100の後方向を捉える視野VW_3を有し、そしてカメラC_4は車両100の左方向を捉える視野VW_4を有する。なお、視野VW_1およびVW_2は共通視野CVW_1を有し、視野VW_2およびVW_3は共通視野CVW_2を有し、視野VW_3およびVW_4は共通視野CVW_3を有し、そして視野VW_4およびVW_1は共通視野CVW_4を有する。
【0021】
図2に戻って、画像処理回路12に設けられたCPU16は、カメラC_1から出力された被写界像P_1に基づいて図5に示す鳥瞰画像BEV_1を生成し、カメラC_2から出力された被写界像P_2に基づいて鳥瞰画像BEV_2を生成する。CPU16はまた、カメラC_3から出力された被写界像P_3に基づいて鳥瞰画像BEV_3を生成し、カメラC_4から出力された被写界像P_4に基づいて鳥瞰画像BEV_4を生成する。
【0022】
図5から分かるように、鳥瞰画像BEV_1は視野VW_1を鉛直方向に見下ろす仮想カメラによって捉えられた画像に相当し、鳥瞰画像BEV_2は視野VW_2を鉛直方向に見下ろす仮想カメラによって捉えられた画像に相当する。また、鳥瞰画像BEV_3は視野VW_3を鉛直方向に見下ろす仮想カメラによって捉えられた画像に相当し、鳥瞰画像BEV_4は視野VW_4を鉛直方向に見下ろす仮想カメラによって捉えられた画像に相当する。
【0023】
また、鳥瞰画像BEV_1は鳥瞰座標系X1・Y1を有し、鳥瞰画像BEV_2は鳥瞰座標系X2・Y2を有し、鳥瞰画像BEV_3は鳥瞰座標系X3・Y3を有し、そして鳥瞰画像BEV_4は鳥瞰座標系X4・Y4を有する。生成された鳥瞰画像BEV_1〜BEV_4は、メモリ14のワークエリア14wに保持される。
【0024】
CPU16は続いて、切り出し線CT_1〜CT_4を鳥瞰画像BEV_1〜BEV_4上で定義し、定義された切り出し線CT_1〜CT_4よりも内側に存在する一部の画像を合成して全周鳥瞰画像を作成し、そして車両100の上部を模した車両画像GL1を全周鳥瞰画像の中央に貼り付ける。こうして、図6に示す運転支援画像ARVがワークエリア14w上で完成する。
【0025】
車両100の移動速度は、センサ26によって検出される。検出された移動速度が閾値TH1を下回るとき、CPU16は、垂直同期信号Vsyncが発生する毎に表示装置22に対して表示命令を発行する。表示装置22は、運転支援画像ARVをワークエリア14wから読み出し、読み出された運転支援画像ARVをモニタ画面に表示する。表示装置22は運転席に設定され、ドライバは目視で周囲をチェックするとともに表示装置22の表示を参照しつつハンドルを操作する。
【0026】
CPU16はまた、バックギアの選択に備えて、既定の形状を有する駐車支援のためのキャラクタ画像KG1をワークエリア14wに展開する。ギアの状態およびハンドル角は、センサ26によって検出される。バックギアが選択されると、CPU16は、ワークエリア14wに展開されたキャラクタ画像KG1の形状を現時点のハンドル角に適合するように調整する。
【0027】
CPU16は、このようなキャラクタ画像KG1を表示するべく、垂直同期信号Vsyncが発生する毎に表示装置22に対して表示命令を発行する。表示装置22は、調整された形状を有するキャラクタ画像KG1をワークエリア14wから読み出し、読み出されたキャラクタ画像KG1を運転支援画像ARVに多重する。したがって、車両100を駐車場の地面に描かれた駐車枠PK1に駐車するとき、キャラクタ画像KG1は図7に示す要領で運転支援画像ARVに多重表示される。
【0028】
次に、鳥瞰画像BEV_1〜BEV_4の作成要領について説明する。ただし、鳥瞰画像BEV_1〜BEV_4はいずれも同じ要領で作成されるため、鳥瞰画像BEV_1〜BEV_4を代表して鳥瞰画像BEV_3の作成要領を説明する。
【0029】
図8を参照して、カメラC_3は車両100の後部に後方斜め下向きに配置される。カメラC_3の俯角を“θd”とすると、図8に示す角度θは“180°−θd”に相当する。また、角度θは、90°<θ<180°の範囲で定義される。
【0030】
図9は、カメラ座標系X・Y・Zと、カメラC_3の撮像面Sの座標系Xp・Ypと、世界座標系Xw・Yw・Zwとの関係を示す。カメラ座標系X・Y・Zは、X軸,Y軸およびZ軸を座標軸とする三次元の座標系である。座標系Xp・Ypは、Xp軸およびYp軸を座標軸とする二次元の座標系である。世界座標系Xw・Yw・Zwは、Xw軸,Yw軸およびZw軸を座標軸とする三次元の座標系である。
【0031】
カメラ座標系X・Y・Zでは、カメラC_3の光学的中心を原点Oとして、光軸方向にZ軸が定義され、Z軸に直交しかつ地面に平行な方向にX軸が定義され、そしてZ軸およびX軸に直交する方向にY軸が定義される。撮像面Sの座標系Xp・Ypでは、撮像面Sの中心を原点として、撮像面Sの横方向にXp軸が定義され、撮像面Sの縦方向にYp軸が定義される。
【0032】
世界座標系Xw・Yw・Zwでは、カメラ座標系XYZの原点Oを通る鉛直線と地面との交点を原点Owとして、地面と垂直な方向にYw軸が定義され、カメラ座標系X・Y・ZのX軸と平行な方向にXw軸が定義され、そしてXw軸およびYw軸に直交する方向にZw軸が定義される。また、Xw軸からX軸までの距離は“h”であり、Zw軸およびZ軸によって形成される鈍角が上述の角度θに相当する。
【0033】
カメラ座標系X・Y・Zにおける座標を(x,y,z)と表記した場合、“x”,“y”および“z”はそれぞれ、カメラ座標系X・Y・ZにおけるX軸成分,Y軸成分およびZ軸成分を示す。撮像面Sの座標系Xp・Ypにおける座標を(xp,yp)と表記した場合、“xp”および“yp”はそれぞれ、撮像面Sの座標系Xp・YpにおけるXp軸成分およびYp軸成分を示す。世界座標系Xw・Yw・Zwにおける座標を(xw,yw,zw)と表記した場合、“xw”,“yw”および“zw”はそれぞれ、世界座標系Xw・Yw・ZwにおけるXw軸成分,Yw軸成分およびZw軸成分を示す。
【0034】
カメラ座標系X・Y・Zの座標(x,y,z)と世界座標系Xw・Yw・Zwの座標(xw,yw,zw)との間の変換式は、数1で表される。
【数1】

【0035】
ここで、カメラC_3の焦点距離を“f”とすると、撮像面Sの座標系Xp・Ypの座標(xp,yp)とカメラ座標系X・Y・Zの座標(x,y,z)との間の変換式は、数2で表される。
【数2】

【0036】
また、数1および数2に基づいて数3が得られる。数3は、撮像面Sの座標系Xp・Ypの座標(xp,yp)と二次元路面座標系Xw・Zwの座標(xw,zw)との間の変換式を示す。
【数3】

【0037】
また、図5に示す鳥瞰画像BEV_3の座標系である鳥瞰座標系X3・Y3が定義される。鳥瞰座標系X3・Y3は、X3軸及びY3軸を座標軸とする二次元の座標系である。鳥瞰座標系X3・Y3における座標を(x3,y3)と表記した場合、鳥瞰画像BEV_3を形成する各画素の位置は座標(x3,y3)によって表される。“x3”および“y3”はそれぞれ、鳥瞰座標系X3・Y3におけるX3軸成分およびY3軸成分を示す。
【0038】
地面を表す二次元座標系Xw・Zwから鳥瞰座標系X3・Y3への投影は、いわゆる平行投影に相当する。仮想カメラつまり仮想視点の高さを“H”とすると、二次元座標系Xw・Zwの座標(xw,zw)と鳥瞰座標系X3・Y3の座標(x3,y3)との間の変換式は、数4で表される。仮想カメラの高さHは予め決められている。
【数4】

【0039】
さらに、数4に基づいて数5が得られ、数5および数3に基づいて数6が得られ、そして数6に基づいて数7が得られる。数7は、撮像面Sの座標系Xp・Ypの座標(xp,yp)を鳥瞰座標系X3・Y3の座標(x3,y3)に変換するための変換式に相当する。
【数5】

【数6】

【数7】

【0040】
撮像面Sの座標系Xp・Ypの座標(xp,yp)は、カメラC_3によって捉えられた被写界像P_3の座標を表す。したがって、カメラC_3からの被写界像P_3は、数7を用いることによって鳥瞰画像BEV_3に変換される。実際には、被写界像P_3はまずレンズ歪み補正などの画像処理を施され、その後に数7によって鳥瞰画像BEV_3に変換される。
【0041】
上述のように、鳥瞰変換処理においては、カメラC_3の俯角θdが参照される。したがって、振動などに起因してカメラC_3の向きがずれると、鳥瞰画像BEV_3に歪みが生じる。たとえば、図10に示す要領で路面に描かれたレーンマーカLM1およびLM2の間を車両100が走行することを想定したとき、カメラC_3の俯角が上述の演算で参照される“θd”と相違すると、レーンマーカLM1およびLM2を表す直線が図11に示す要領で歪む。
【0042】
また、カメラC_3の俯角が“θd”の値と一致していても、カメラC_3の水平角θhが適正値からずれると、鳥瞰画像BEV_3ひいてはレーンマーカLM1およびLM2を表す直線が図13に示す要領で歪む。
【0043】
このような歪みを有したまま駐車枠PK1への駐車を試みると、駐車枠PK1を表す直線は、俯角θdのずれに起因して図15に示す要領で歪み、水平角θhのずれに起因して図16に示す要領で歪む。そこで、この実施例では、車両100の前後方向に延びる直線を表す線画像を以下の要領で検出し、検出された線画像の平行性がエラー条件に合致する場合にバックギアの選択に応答して報知を発生するようにしている。
【0044】
具体的にはまず、GPS装置18の出力に基づいて現在位置が検出され、検出された現在位置の周辺の地図情報がデータベース20から読み出される。現在位置が直線道路上であれば、現在位置から直線道路の終端までの距離が“DL”として測定され、現在の移動速度がセンサ26を通して検出される。
【0045】
距離DLが閾値TH2を上回り、かつ移動速度が閾値TH3を上回れば、車両100の前後方向に延びる白線(=レーンマーカ)がワークエリア14wに保持された鳥瞰画像BEV_3から探索される。白線の探索にあたっては、図11または図13に示す白線検知エリアDT1およびDT2に属する部分画像が注目される。
【0046】
白線を探索する方法は、ハフ変換を用いた方法など各種あるが、最も簡単な実現方法の概略は以下のとおりである。白線検知エリアDT1またはDT2の長さ方向(車幅方向)において異なる複数の位置の各々で白線検知エリアDT1またはDT2の幅方向(車長方向)に並ぶ複数の画素の輝度値を積算すると、白線画像の輝度の高さに起因して、白線の位置にピークが出現する。
【0047】
白線画像が図11に示す要領で再現された場合、ピークは図12(A)または図12(B)に示す要領で出現する。また、白線画像が図13に示す要領で再現された場合、ピークは図14(A)または図14(B)に示す要領で出現する。したがって、輝度積算値に対して適切な閾値を設定することで、白線の位置を検出することができる。
【0048】
2本の白線が発見されると、左側の白線の歪みを“ΔDL”として算出し、かつ右側の白線の歪みを“ΔDR”として算出するべく、図11または図13に示す白線検知エリアDT1およびDT2に注目した白線解析処理が実行される。
【0049】
白線解析処理では、白線検知エリアDT1に現れた左側白線(左側ピーク)のX座標が“XL1”として検出され、白線検知エリアDT1に現れた右側白線(右側ピーク)のX座標が“XR1”として検出される。また、白線検知エリアDT2に現れた左側白線(左側ピーク)のX座標が“XL2”として検出され、白線検知エリアDT2に現れた右側白線(右側ピーク)のX座標が“XR2”として検出される。
【0050】
鳥瞰画像BEV_3が図11に示す要領で作成された場合、X座標XL1およびXR1は図12(A)に示す要領で検出され、X座標XL2およびXR2は図12(B)に示す要領で検出される。また、鳥瞰画像BEV_3が図12に示す要領で作成された場合、X座標XL1およびXR1は図13(A)に示す要領で検出され、X座標XL2およびXR2は図13(B)に示す要領で検出される。
【0051】
歪みΔLは、X座標XL1からX座標XL2を減算することで算出される。また、歪みΔRは、X座標XR1からX座標XR2を減算することで検出される。
【0052】
白線解析処理が完了すると、歪みΔDLの絶対値と歪みΔDRの絶対値との加算値が“DP”として算出される。加算値DPの算出処理はNmax回繰り返され、Nmax個の加算値DPの積算値が“TDP”として算出される。積算値TDPの絶対値は、閾値TH4と比較される。絶対値|TDP|が閾値TH4を上回ると、エラー条件が満足されたことを表明するべく、初期状態において“0”を示すフラグFLGalmが“1”に変更される。
【0053】
バックギアが選択されると、このフラグFLGalmの状態が判別される。フラグFLGalmが“0”であれば、駐車を支援するためのキャラクタ画像KG1が連続的に表示される。これに対して、フラグFLGalmが“1”であれば、キャラクタ画像KG1は点滅表示される。ドライバは、キャラクタ画像KG1の点滅によって鳥瞰変換特性に異常があることを認識する。
【0054】
図15または図16に示す要領で車両100を駐車枠PK1に駐車させた状態でドライバによって校正操作が行われると、鳥瞰変換特性の校正処理が以下の要領で実行される。
【0055】
まず、ワークエリア14wに保持された鳥瞰画像BEV_3から上述の要領で白線(=駐車枠)が探索される。2本の白線が発見されると、上述と同様の白線解析処理が行われる。これによって、左側の白線の歪みが“ΔDL”として算出され、右側の白線の歪みが“ΔDR”として算出される。白線解析処理が完了すると、歪みΔDLおよびΔDRの間の差分絶対値が“DM”として算出される。
【0056】
俯角θdは初期値〜既定値の範囲で角度Δθずつ更新され、差分絶対値DMは互いに異なる複数の角度の各々に対応して算出される。こうして算出された複数の差分絶対値DM,DM,…の中から、最小差分絶対値が“DMmin”として特定される。特定された最小差分絶対値DMminが閾値TH5を下回れば、最小差分絶対値DMminに対応する俯角θdが保存される。上述の数1,数3,数6および数7の演算にあたっては、保存された俯角θdが参照される。
【0057】
俯角θdの保存が完了すると、白線解析処理が再度実行され、これによって算出された歪みΔDLおよびΔDRの各々の絶対値の加算値が“DP”として算出される。カメラC_3の水平角θhは初期値〜既定値の範囲で角度Δθずつ更新され、加算値DPは互いに異なる複数の角度の各々に対応して算出される。こうして算出された複数の加算値DP,DP,…の中から、最小加算値が“DPmin”として特定される。特定された最小加算値DPminが閾値TH6を下回れば、最小加算値DPminに対応する水平角θhがカメラC_3に設定される。設定が完了すると、俯角θdおよび/または水平角θhの変更が報知され、フラグFLGalmが“0”に戻される。
【0058】
CPU16は、図17に示す表示制御タスク,図18に示す駐車支援タスク,図19〜図21に示すエラー検知タスク(図22に示す白線解析処理を含む),図23〜図26に示す校正支援タスク(図22に示す白線解析処理を含む)を含む複数のタスクを並列的に実行する。なお、これらのタスクに対応する制御プログラムは、フラッシュメモリ24に記憶される。
【0059】
図17を参照して、ステップS1では垂直同期信号Vsyncが発生したか否かを判別する。判別結果がNOからYESに更新されるとステップS3に進み、カメラC_1〜C_4から出力された被写界像P_1〜P_4を取り込む。ステップS5では、取り込まれた被写界像P_1〜P_4を鳥瞰画像BEV_1〜BEV_4に変換し、さらに変換された鳥瞰画像BEV_1〜BEV_4に基づいて運転支援画像ARVを作成する。鳥瞰画像BEV_1〜BEV_4および運転支援画像ARVのいずれもワークエリア14wに保持される。
【0060】
ステップS7では、車両100の移動速度をセンサ26を通して検出し、かつ検出された移動速度が閾値TH1を下回るか否かを判別する。判別結果がNOであればそのままステップS1に戻る一方、判別結果がYESであればステップS9を経てステップS1に戻る。ステップS9では、ステップS5で作成された運転支援画像ARVの表示を表示装置22に要求する。表示装置22は、ワークエリア14wに格納された運転支援画像ARVを読み出し、読み出された運転支援画像ARVをモニタ画面に表示する。
【0061】
図18を参照して、ステップS11では、既定の形状を有する駐車支援のためのキャラクタ画像をワークエリア14wに展開する。ステップS13では、ギアの状態をセンサ26を通して検出し、かつバックギアが選択されているか否かを判別する。判別結果がNOであればステップS13に戻り、判別結果がYESであればステップS15に進む。ステップS15では、ハンドル角をセンサ26を通して検出し、ワークエリア14wに展開されたキャラクタ画像の形状を検出されたハンドル角に適合するように調整する。
【0062】
ステップS17では垂直同期信号Vsyncが発生したか否かを判別し、判別結果がNOからYESに更新されるとフラグFLGalmの状態をステップS19で判別する。フラグFLGalmは、当初“0”に設定され、既定のエラー条件が満足されたときにエラー検知タスクの下で“1”に更新される。
【0063】
フラグFLGalmが“0”であればステップS21に進み、キャラクタ画像の連続表示を表示装置22に要求する。ステップS13で調整された形状を有するキャラクタ画像は、表示装置22によって読み出され、運転支援画像ARV上に連続的に多重表示される。ステップS21の処理が完了すると、ステップS13に戻る。
【0064】
フラグFLGalmが“1”であればステップS23に進み、キャラクタ画像の点滅表示を表示装置22に要求する。ステップS13で調整された形状を有するキャラクタ画像は、表示装置22によって読み出され、運転支援画像ARV上に点滅態様で多重表示される。ステップS23の処理が完了すると、ステップS13に戻る。
【0065】
図19を参照して、ステップS31では積算値TDPを“0”に設定し、ステップS33では変数Nを“1”に設定する。ステップS35ではGPS装置18の出力に基づいて現在位置を検出する。ステップS37では検出された現在位置の周辺の地図情報をデータベース20から読み出し、ステップS39では読み出された地図情報に基づいて現在位置が直線道路上であるか否かを判別する。
【0066】
判別結果がNOであればステップS35に戻り、判別結果がYESであればステップS41に進む。ステップS41では現在位置から直線道路の終端までの距離を“DL”として測定し、ステップS43では測定された距離DLが閾値TH2を上回るか否かを判別する。判別結果がNOであればステップS35に戻り、判別結果がYESであればステップS45に進む。
【0067】
ステップS45ではセンサ26を通して現在の移動速度を検出し、ステップS47では検出された移動速度が閾値TH3を上回るか否かを判別する。判別結果がNOであればステップS35に戻り、判別結果がYESであれば、垂直同期信号Vsyncの発生を待ってステップS49からステップS51に進む。
【0068】
ステップS51では、ワークエリア14wに保持された鳥瞰画像BEV_3のうち白線検知エリアDT1に属する部分画像の輝度を積算する。ステップS53では、同じ鳥瞰画像BEV_3のうち白線検知エリアDT2に属する部分画像の輝度を積算する。いずれの積算処理も、車幅方向において異なる複数の位置の各々において車長方向に並ぶ複数の画素の輝度を積算する。
【0069】
ステップS55では、車幅方向における輝度積算値の分布曲線に少なくとも1つのピークが出現したか否かを判別する。判別結果がYESであれば、2つのピークが白線検知エリアDT1およびDT2の各々に出現したか否かをステップS57で判別する。ステップS55の判別結果またはステップS57の判別結果がNOであればステップS35に戻り、ステップS55の判別結果およびステップS57の判別結果のいずれもがYESであればステップS59に進む。
【0070】
ステップS59では、左側の白線の歪みを“ΔDL”として算出し、かつ右側の白線の歪みを“ΔDR”として算出するべく、白線解析処理を実行する。白線解析処理が完了するとステップS61に進み、歪みΔDLの絶対値と歪みΔDRの絶対値との加算値を“DP”として算出する。ステップS63では算出された加算値DPを積算値TDPに積算し、ステップS65では変数Nをインクリメントする。
【0071】
ステップS67では変数Nが定数Nmaxに達したか否かを判別し、判別結果がNOであればステップS35に戻る一方、判別結果がYESであればステップS69に進む。ステップS69では、積算値TDPの絶対値が閾値TH4を上回るか否かを判別し、判別結果がNOであればステップS73でフラグFLGalmを“0”に設定してから処理を終了する一方、判別結果がYESであればステップS71でフラグFLGalmを“1”に更新してから処理を終了する。
【0072】
上述したステップS59ならびに図24および図25にそれぞれ示すステップS119およびS139の白線解析処理は、図22に示すサブルーチンに従って実行される。ステップS81では、白線検知エリアDT1に現れた左側白線(左側ピーク)のX座標を“XL1”として検出する。ステップS83では、白線検知エリアDT1に現れた右側白線(右側ピーク)のX座標を“XR1”として検出する。ステップS85では、白線検知エリアDT2に現れた左側白線(左側ピーク)のX座標を“XL2”として検出する。ステップS87では、白線検知エリアDT2に現れた右側白線(右側ピーク)のX座標を“XR2”として検出する。
【0073】
ステップS89では、X座標XL1からX座標XL2を減算して得られる減算値を歪みΔDLとして算出する。ステップS91では、X座標XR1からX座標XR2を減算して得られる減算値を歪みΔDRとして算出する。ステップS91の処理が完了すると、上階層のルーチンに復帰する。
【0074】
図23を参照して、ステップS101では校正操作が行われたか否かを判別する。判別結果がNOからYESに更新されると、垂直同期信号Vsyncの発生に応答してステップS103でYESと判断し、ステップS105〜S111で上述のステップS51〜S57と同様の処理を実行する。ステップS109の判別結果またはステップS111の判別結果がNOであれば、ステップS113でエラーを報知し、その後にステップS103に戻る。ステップS109の判別結果およびステップS111の判別結果のいずれもYESであればステップS115に進み、上述の数1,数3,数6および数7に影響を与える俯角θdを初期化する。
【0075】
ステップS117では垂直同期信号Vsyncが発生したか否かを判別し、判別結果がNOからYESに更新されると、ステップS119で白線解析処理を実行する。これによって、左側の白線の歪みが“ΔDL”として算出され、右側の白線の歪みが“ΔDR”として算出される。ステップS121では、歪みΔDLおよびΔDRの間の差分絶対値を“DM”として算出する。
【0076】
ステップS123では俯角θdが既定値に達したか否かを判別し、判別結果がNOであればステップS125で俯角θdを“Δθ”だけ増大させてからステップS119に戻る。この結果、差分絶対値DMは、初期値〜既定値の範囲において角度Δθを隔てた複数の角度の各々に対応して算出される。ステップS127では、こうして算出された複数の差分絶対値DM,DM,…の中から最小差分絶対値を“DMmin”として特定する。
【0077】
ステップS129では、特定された最小差分絶対値DMminが閾値TH5を下回るか否かを判別する。判別結果がNOであれば、ステップS131でエラーを報知してから処理を終了する。これに対して、判別結果がYESであればステップS133に進み、最小差分絶対値DMminに対応する俯角θdを保存する。上述の数1,数3,数6および数7の演算にあたっては、保存された俯角θdが参照される。
【0078】
ステップS135では、水平角θhを初期化する。ステップS137では垂直同期信号Vsyncが発生したか否かを判別し、判別結果がNOからYESに更新されると、ステップS139で白線解析処理を実行する。これによって、左側の白線の歪みが“ΔDL”として算出され、右側の白線の歪みが“ΔDR”として算出される。ステップS141では、歪みΔDLの絶対値と歪みΔDRの絶対値との加算値を“DP”として算出する。
【0079】
ステップS143では水平角θhが既定値に達したか否かを判別し、判別結果がNOであればステップS145で水平角θhを“Δθ”だけ増大させてからステップS139に戻る。この結果、加算値DPは、初期値〜既定値の範囲において角度Δθを隔てた複数の角度の各々に対応して算出される。ステップS147では、こうして算出された複数の加算値DP,DP,…の中から最小加算値を“DPmin”として特定する。
【0080】
ステップS149では、特定された最小加算値DPminが閾値TH6を下回るか否かを判別する。判別結果がNOであれば、ステップS157でエラーを報知してから処理を終了する。これに対して、判別結果がYESであればステップS151に進み、最小加算値DPminに対応する水平角θhをカメラC_3に設定する。
【0081】
ステップS151の処理が完了すると、ステップS153で俯角θdおよび/または水平角θhの変更を報知し、ステップS155でフラグFLGalmを“0”に戻し、その後に処理を終了する。
【0082】
以上の説明から分かるように、カメラC_3は、車両100に設けられて斜め上方向から地面を捉える。CPU16は、カメラC_3から出力された被写界像P_3を地面に対する鳥瞰画像BEV_3に変換し(S3~S5)、車両100の前後方向の姿勢を定義するべく地面に描かれた複数の直線(LM1, LM2)を表す線画像を鳥瞰画像BEV_3から探索する(S51~S57)。発見された線画像に現われた複数の線の平行性がエラー条件に合致する場合、CPU16は、バックギアの選択に応答して表示装置22に表示されるキャラクタ画像KG1を点滅させる(S19, S23)。
【0083】
線画像は、車両100の前後方向の姿勢を定義するべく地面に描かれた複数の直線を表す画像に相当し、斜め上方向から地面を捉えるカメラC_3の出力に基づく鳥瞰画像BEV_3から探索される。したがって、車幅方向における線画像の歪みは、鳥瞰変換特性の異常に起因するものと考えられる。このような歪みが生じた場合にドライバに向けて報知を発生することで、鳥瞰変換特性の異常に起因する事故を抑制することできる。こうして、鳥瞰画像に基づく操縦支援性能が向上する。
【0084】
なお、この実施例では、俯角θdと水平角θhの両方を校正しているが、多くのシステムでは、固定治具の関係で、カメラがずれる方向は一方向であり、俯角θdおよび水平角θhのいずれか一方しかずれないように設定することが多い。その場合は、以下のように実施例を変更することで簡潔なシステムを構成できる。
【0085】
俯角方向にカメラがずれる場合は、俯角θdのみを制御する。この場合、ステップS133からステップS155へ処理が移行する。また、水平角方向にカメラがずれる場合は、水平角θhのみを制御する。この場合は、ステップS111からステップS135へ処理が移行する。
【0086】
また、この実施例では、全周鳥瞰画像を生成しかつ表示する装置のバックカメラに注目して説明したが、フロントカメラに対する同様な処理によってもエラー報知と校正とを実現することができる。また、サイドカメラに対しては、直線道路において車両が直進する場合にレーンマーカが車体に対して平行になることを利用することで、同様のエラー報知と校正とを実現することができる。さらに、車両の全周を捉えるカメラシステムではなく、バックカメラやフロントカメラ単独で動作するカメラシステムでもエラー報知と校正とを実現することができる。
【符号の説明】
【0087】
10 …操縦支援装置
C_1〜C_4 …カメラ
12 …画像処理回路
14 …メモリ
16 …CPU
18 …GPS装置
22 …表示装置
24 …フラッシュメモリ
100 …車両

【特許請求の範囲】
【請求項1】
車両に設けられて斜め上方向から地面を捉えるカメラ、
前記カメラから出力された被写界像を前記地面に対する鳥瞰画像に変換する変換手段、
前記車両の前後方向の姿勢を定義するべく前記地面に描かれた複数の直線を表す線画像を前記変換手段によって変換された鳥瞰画像から探索する第1探索手段、および
前記第1探索手段によって発見された線画像に現われた線の平行性がエラー条件に合致する場合にドライバに向けて報知を発生する報知手段を備える、操縦支援装置。
【請求項2】
前記第1探索手段によって発見された線画像に現われた複数の線の車幅方向における座標を車長方向における複数の位置の各々で検出する第1検出手段、
前記第1検出手段によって注目された複数の線の平行性を表す係数を前記第1検出手段によって検出された座標に基づいて算出する算出手段、および
前記算出手段によって算出された係数が前記エラー条件に合致するか否かを判別する判別手段をさらに備える、請求項1記載の操縦支援装置。
【請求項3】
前記変換手段によって変換された鳥瞰画像を運転席に設けられたモニタに表示する画像表示手段をさらに備え、
前記報知手段は前記車両の後進に対応して前記報知を前記モニタに表示する報知表示手段を含む、請求項1または2記載の操縦支援装置。
【請求項4】
前記第1探索手段によって探索される線画像は前記車両の幅よりも大きい間隔で前記地面に描かれた直線を表す画像に相当する、請求項1ないし3のいずれかに記載の操縦支援装置。
【請求項5】
前記車両が第1閾値を上回る距離を有する直線道路を第2閾値を上回る速度で移動するときに前記第1探索手段を起動する制御手段をさらに備える、請求項1ないし4のいずれかに記載の操縦支援装置。
【請求項6】
前記車両の前後方向の姿勢を定義するべく前記地面に描かれた複数の直線を表す線画像を前記変換手段によって変換された鳥瞰画像から探索する第2探索手段、
変換特性調整指示を受け付けたとき前記変換手段の変換特性を繰り返し変更する変更手段、
前記第2探索手段によって発見された線画像に現われた複数の線の車幅方向における座標を車長方向における複数の位置の各々で検出する検出処理を前記変更手段の変更処理と並列して実行する第2検出手段、および
前記第2検出手段によって検出された座標に基づいて前記変換手段の変換特性を調整する調整手段をさらに備える、請求項1ないし5のいずれかに記載の操縦支援装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate


【公開番号】特開2011−116206(P2011−116206A)
【公開日】平成23年6月16日(2011.6.16)
【国際特許分類】
【出願番号】特願2009−274249(P2009−274249)
【出願日】平成21年12月2日(2009.12.2)
【出願人】(000001889)三洋電機株式会社 (18,308)
【Fターム(参考)】