(58)【調査した分野】(Int.Cl.,DB名)
前記制御手段は、前記慣性センサの出力に基づき、前記車両が道路上を走行している状態であるか否かを判定し、前記車両が道路上を走行している状態であると判定したことを条件に、前記学習動作をオフからオンに切り替えること
を特徴とする請求項1又は請求項2に記載の電子機器。
前記制御手段は、前記車輪速センサの出力から特定される前記車両の速度が基準速度を超えていること、且つ、前記誤差が基準未満であることを条件に、前記学習動作をオフからオンに切り替えること
を特徴とする請求項1記載の電子機器。
前記制御手段は、前記学習手段による消失点位置の学習動作をオンに設定した後、前記車両の速度が、前記基準速度又は前記基準速度より低い速度によって予め定められた学習動作の禁止速度以下となると、前記学習手段による学習動作をオフに切り替えること
を特徴とする請求項2又は請求項4記載の電子機器。
【発明を実施するための形態】
【0019】
以下に本発明の実施例について、図面と共に説明する。
[第一実施例]
本実施例の車両制御システム1は、
図1に示すように、画像解析装置10と、車両制御装置20と、車輪速センサ30と、加速度センサ40とを備えるシステムである。この車両制御システム1において、画像解析装置10、車両制御装置20、車輪速センサ30及び加速度センサ40の夫々は、車内ネットワークに接続されて、互いに通信可能に構成される。
【0020】
車内ネットワークには、車輪速センサ30及び加速度センサ40の他、車両の走行/運転状態を検出可能な種々のセンサ(図示せず)が、その検出値を提供可能に接続される。車輪速センサ30は、周知のように、車輪の回転に応じた車速信号を出力するものであり、車輪の回転速度を検出することにより、間接的に車両の速度を検出するものである。一方、加速度センサ40は、慣性を利用した計測を行う慣性センサであり、周知のように慣性による部材の変位に基づき車両の加速度を検出して出力するものである。
【0021】
画像解析装置10は、カメラ11と、通信インタフェース15と、制御部17と、を備える。カメラ11は、この車両制御システム1が構築された自車両の前方領域を撮影することにより、その撮影画像を表す画像データとしての撮影画像データを生成し、これを制御部17に逐次に入力する。本実施例では、カメラ11として、単眼カメラを用いるが、ステレオカメラを用いることも可能である。
【0022】
通信インタフェース15は、制御部17に制御されるものであり、車内ネットワークを通じて、車両制御装置20、車輪速センサ30及び加速度センサ40等の通信ノードと双方向通信可能に構成される。
【0023】
また、制御部17は、画像解析装置10を統括制御するものであり、CPU17Aと、ROM17B、RAM17Cと、を備える。制御部17では、ROM17Bが記憶するプログラムに従ってCPU17Aが各種処理を実行することにより、画像解析装置10としての各種機能が実現される。RAM17Cは、CPU17Aによるプログラム実行時に作業メモリとして使用される。
【0024】
付言すると、制御部17は、ROM17Bに記憶されるプログラムに従って、
図2に示す消失点学習処理PR1、学習制御処理PR2、道路区画線推定処理PR3、及び、走行状態推定処理PR4等を実行する。消失点学習処理PR1は、公知技術に従って、撮影画像データ内の消失点(FOE)位置を学習する処理である。学習された消失点位置は、カメラ姿勢を表すパラメータとしてROM17Bに記憶される。本実施例のROM17Bは、例えば、電気的にデータ書換可能なフラッシュメモリを備える。
【0025】
また、学習制御処理PR2は、消失点学習処理PR1の実行を制御する処理である。制御部17は、学習制御処理PR2を実行することにより、消失点学習処理PR1の開始(オン)/終了(オフ)を制御する。
【0026】
この他、道路区画線推定処理PR3は、撮影画像データに映る道路区画線の領域を推定する処理である。道路区画線推定処理PR3では、公知技術に従って、撮影画像データから道路区画線の候補とするエッジを抽出し、これらのエッジの向きと、学習された消失点との位置関係に基づき、自車両が走行する道路の道路区画線として尤もらしいエッジを判別する。これにより、自車両が走行する道路の道路区画線の領域を推定する。消失点が学習されていない場合には、例えば、カメラ11の設置パラメータから演算される消失点位置を指標に、道路区画線を推定することができる。
【0027】
消失点学習処理PR1では、この道路区画線推定処理PR3により推定された道路区画線に基づき、消失点位置の学習を行うことができる。例えば、推定された二つの道路区画線の延長線上に現れる交点を消失点の候補として検出し、検出した候補の位置と、学習済の消失点位置との誤差により、候補が消失点である確度を評価し、誤差が大きく確度が低い場合には、この候補を棄却し、誤差が小さく確度が高い場合には、この候補を消失点に採用して、ROM17Bに記憶する消失点位置を学習更新する。
【0028】
この他、走行状態推定処理PR4は、学習された消失点位置を指標に、撮影画像データを解析して、自車両の道路に対する走行状態や前方車両との位置関係を推定する処理である。この走行状態推定処理PR4は、公知のものであるので簡単に説明するが、走行状態推定処理PR4としては、撮影画像データから推定される道路区画線(白線やボッツドッツ等)に基づき、走行車線に対する自車両の向きや位置を推定する処理を一例に挙げることができる。その他、走行状態推定処理PR4としては、消失点位置を基準に、撮影画像データに映る前方車両を探索して検出したり、検出された前方車両と自車両との位置関係(自車両に対する前方車両の距離等)を推定したりする処理を一例に挙げることができる。
【0029】
この走行状態推定処理PR4によって推定された自車両の道路に対する走行状態や前方車両との位置関係に関する情報は、通信インタフェース15及び車内ネットワークを通じて車両制御装置20に提供され、車両制御に用いられる。ここでは、用語「車両制御」を、車両内の装置を制御する意味で広義に用いる。車両制御装置20では、画像解析装置10から得られた情報に基づく車両制御として、例えば、自車両が道路区画線を横切るように走行している場合や、自車両が前方車両に近づいている場合に、警告音を車両乗員に向けて出力する処理や、前方車両との車間距離を適切なものとするためにブレーキを制御する処理を実行することができる。
【0030】
ところで、消失点位置の学習値は、道路区画線の推定時や走行状態の推定時に用いられるため、これについての誤学習が生じるのは好ましくない。しかしながら、車両点検時に車両100がシャシーダイナモメータ200上を擬似走行している状況で、消失点位置の学習が行われると、カメラ11が撮影する自車両前方の壁210の汚れや、この壁210に映る周囲の建造物の影等によって、消失点位置の誤学習が生じる可能性がある。
【0031】
そして、このような誤学習によっては、真に正しい消失点位置とは大きく乖離した位置が消失点位置として学習されてしまう可能性がある。このような乖離が生じると、後の学習処理によって学習値を正しい消失点位置に戻すことができない可能性や、戻すのに時間を要する可能性がある。
【0032】
例えば、道路区画線推定処理PR3では、消失点位置の学習値を用いるが、誤学習により得られた消失点位置に基づいては、道路区画線として正しいエッジを判別することが難しくなってしまう可能性がある。また、消失点学習処理PR1にて、正しい消失点を、消失点の候補として検出することができても、この候補の位置が、誤学習された消失点位置と乖離していることによって、学習に用いられない可能性がある。
【0033】
そこで、本実施例では、学習制御処理PR2として、
図3に示す処理を実行することにより、車両100がシャシーダイナモメータ200上を擬似走行している可能性が高い状況下では、消失点学習処理PR1を開始せず、学習動作をオフに維持する。
【0034】
制御部17は、
図3に示す学習制御処理PR2をイグニションスイッチがオンにされると開始し、この処理をイグニションスイッチがオフになるまで繰り返し実行する。
学習制御処理PR2を開始すると、制御部17は、車内ネットワーク及び通信インタフェース15を通じて得た車輪速センサ30の出力から特定される車両速度がゼロより大きいか否かを判断する(S100)。そして、車両速度がゼロ以下であると判断した場合には、S105に移行し、上記車両速度がゼロより大きいと判断した場合には、S110に移行する。
【0035】
S105に移行すると、制御部17は、判定済フラグF及び学習許可フラグGを値ゼロにリセットすると共に、加速度積分値を値ゼロにリセットした後、当該学習制御処理PR2を一旦終了する。ここで言う判定済フラグFは、車両が道路上を走行しているか否か(換言すれば擬似走行中であるか否か)の判定を行ったか否かを示すフラグであり、値0は、判定を行っていないことを示し、値1は、判定を行ったことを示す。また、学習許可フラグは、消失点学習処理PR1の実行が許可されているか否かを示すフラグであり、値0は、許可されていない(禁止されている)ことを示し、値1は、許可されていることを示す。また、加速度積分値は、後述する加速度積分処理(S120)で算出されるものである。
【0036】
S110に移行すると、制御部17は、この判定済フラグFが値1にセットされているか否かを判断し、判定済フラグFが値1にセットされていると判断すると(S110でYes)、S135に移行し、判定済フラグFが値1にセットされていないと判断すると(S110でNo)、S120に移行する。この判定済フラグFは、イグニションスイッチがオンにされたときに値ゼロにリセットされるため、初回のS110では、否定判断して(S110でNo)、S120に移行する。
【0037】
S120に移行すると、制御部17は、車内ネットワーク及び通信インタフェース15を通じて得た加速度センサ40の出力から特定される車両の加速度に基づき、S105において最後に加速度積分値が値ゼロにリセットされた時点からの加速度の積分値を算出する処理(加速度積分処理)を実行する。これにより、加速度センサ40の出力を用いて車両が走行し始めてからの車両の実速度を推定する。S120では、例えば、今回特定された車両の加速度に、S120の実行周期を乗算して得られる速度変化分を、前回のS120で算出した加速度積分値に加算する処理を行う。これにより、上記車両速度がゼロより大きい値となってからの加速度の積分値(車両の速度)を算出する。
【0038】
また、S120での処理を終えると、制御部17は、S130に移行し、車輪速センサ30の出力から特定される車両速度を、予め設計段階で定められた基準速度と比較し、この車両速度が基準速度を超えているか否かを判断する。尚、基準速度は、消失点位置の学習を適切に行うことができるか否かといった観点で設計者が定めることができる。消失点位置の学習は、見通しの良い道路で適切に行うことができるので、基準速度としては、例えば、時速50キロメートル程度を設定することができる。
【0039】
ここで、車輪速センサ30の出力から特定される車両速度が基準速度を超えていないと判断した場合(S130でNo)、制御部17は、S100に移行し、車両速度が基準速度を超えるまで、S100〜S130の処理を繰り返し実行する。一方、車輪速センサ30の出力から特定される車両速度が基準速度を超えていると判断すると(S130でYes)、制御部17は、その時点での車輪速センサ30の出力から特定される車両速度と、加速度積分値との誤差(絶対値)を算出する(S140)。
【0040】
そして、誤差が予め設計段階で定められた閾値未満であるか否かを判断し(S150)、誤差が閾値未満であると判断すると(S150でYes)、判定済フラグFを値1にセットすると共に、学習許可フラグGを値1にセットした後(S153)、S160に移行する。これに対し、誤差が閾値以上であると判断すると(S150でNo)、制御部17は、判定済フラグFを値1にセットする一方、学習許可フラグGを値0にリセットした状態を維持し(S157)、S160に移行する。
【0041】
S150で用いる閾値としては、車両100がシャシーダイナモメータ200上で擬似走行している状態にあるときには、S150において高い確率で否定判断され、車両が擬似走行している状態ではなく道路上を走行している状態であるときには、高い確率で肯定判断されるような値を、実験等で求めて定めることができる。
【0042】
即ち、S150では、誤差が閾値未満であるか否かの判断によって、車両100が道路上を走行しているか否かを判断し、誤差が閾値未満であるときに限って、学習許可フラグGを値1にセットすることにより、消失点学習処理PR1の実行を許可し、誤差が閾値以上であるときには、車両100がシャシーダイナモメータ200上で擬似走行している可能性が高いとみなして、消失点学習処理PR1の実行を禁止する。
【0043】
そして、S160では、学習許可フラグGが値1にセットされているか否かを判断し、学習許可フラグGが値1にセットされていると判断すると(S160でYes)、消失点学習処理PR1を開始した後(S170)、S180に移行し、学習許可フラグGが値1にセットされていないと判断すると(S160でNo)、消失点学習処理PR1を開始せずに、当該学習制御処理を一旦終了する。
【0044】
S180に移行すると、制御部17は、消失点学習処理PR1の終了条件が満足されたか否かを判断する。ここでは、車輪速センサ30の出力から特定される車両速度が、上記基準速度以下の速度範囲で予め定められた学習終了速度(例えば時速50キロメートル)以下となったか否かを判断し、車両速度が学習終了速度以下である場合には、終了条件が満足されたと判断し、車両速度が学習終了速度より大きい場合には、終了条件が満足されていないと判断することができる。但し、終了条件については、画像解析装置10の設計者が任意に定めることができる。
【0045】
そして、終了条件が満足されていないと判断すると(S180でNo)、制御部17は、終了条件が満足されるまでS180の判断を繰り返し実行し、終了条件が満足されたと判断すると(S180でYes)、消失点学習処理PR1を終了した後(S190)、当該学習制御処理PR2を一旦終了する。
【0046】
また、制御部17は、S150以降の処理を実行して学習制御処理を一旦終了した後の、再度の学習制御処理では、車輪速センサ30の出力から特定される車両速度が一旦ゼロに落ちるまで、車両が道路上を走行しているか、それとも擬似走行しているかの状況に変化はないという仮定の下で、前回のS150での判断結果を利用して、学習動作のオン/オフを制御する。
【0047】
即ち、S153,157において値1にセットされた判定済フラグFは、車輪速センサ30の出力から特定される車両速度が一旦ゼロに落ちて、S105の処理が実行されるまで値1に維持されるため、車両速度が一旦ゼロに落ちるまでの学習制御処理では、S110で肯定判断して、S135に移行する。
【0048】
S135では、S130での処理と同様に、車輪速センサ30の出力から特定される車両速度が上記基準速度を超えているか否かを判断する。そして、車両速度が基準速度を超えていないと判断した場合には(S135でNo)、S100に移行し、車両速度が基準速度を超えていると判断すると(S135でYes)、S160に移行する。そして、S160以降の処理(S160〜S190)では、過去の学習制御処理におけるS150で肯定判断されて学習許可フラグGが値1にセットされている場合に限って(S160でYes)、消失点学習処理PR1を開始する(S170)。
【0049】
以上、本実施例の車両制御システム1について説明したが、本実施例によれば、カメラ11により自車両前方領域を撮影し、カメラ11により生成された撮影画像データを制御部17により解析して、消失点位置を学習する一方、この消失点位置の学習動作のオン/オフを、慣性センサである加速度センサ40の出力に基づき制御する。
【0050】
車両点検等で車両100がシャシーダイナモメータ200上で擬似走行している場合には、車輪速センサ30によってゼロではない車両速度が検出されるため、従来技術によれば、車輪速センサ30の出力に基づき、車両が道路上を走行していると判断されて、消失点位置の誤学習が行われる可能性があった。これに対し、本実施例によれば、慣性を利用して加速度を計測する加速度センサ40の出力に基づき、車両が道路上を走行しているか否かを判定し(S150)、車両が道路上を走行していると判定した場合に限って、学習動作をオンにする(S170)。
【0051】
従って、本実施例のように、消失点位置の学習動作のオン/オフを制御すれば、シャシーダイナモメータ200上において車両100が擬似走行している状態で、消失点位置の学習が行われるのを抑えることができる。よって、本実施例によれば、車両の擬似走行時に消失点位置の誤学習が生じるのを抑えることができ、誤学習によって車両制御や、後の消失点位置の学習に好ましくない影響が生じるのを抑えることができる。
【0052】
例えば、消失点学習処理PR1によっては、道路区画線推定処理PR3により推定された撮影画像データに映る道路区画線の情報に基づき、消失点位置を学習更新し、道路区画線の推定には、学習済の消失点の情報を用いる。従って、消失点位置の誤学習によって、学習された消失点位置が正しい位置から大きくずれると、道路区画線の推定そのものを精度よく行うことができなくなり、消失点位置を正しい値に学習更新するのに時間を要したり、消失点位置を正しい値に学習更新するのが困難な状況になったりする可能性がある。
【0053】
本実施例によれば、このような状況の発生を上述した学習動作の制御により抑えることができるので、消失点の情報に基づいて適切な車両制御を実現可能な車両制御システム1を構築することができる。
【0054】
更に言えば、本実施例では、車輪速センサ30の出力から特定される車両の速度と加速度センサ40の出力から特定される加速度の積分により算出した車両の速度との誤差に基づき、当該誤差が基準未満である場合に限って(S150でYes)、学習動作をオフからオンに切り替えるので、加速度センサ40の出力のみに基づいて車両が道路上を走行している状態であるか否かを判定し、学習動作をオン/オフ制御するよりも、高精度な判定及びオン/オフ制御を実現することができ、一層、消失点位置の誤学習を抑えることができる。
【0055】
この他、細街路等の見通しが悪い道路では消失点位置の学習動作を行うと誤学習が生じやすいため、本実施例によれば、車両が見通しの悪い道路を走行している可能性の高い低速走行時には、学習動作をオフに維持するようにした。
【0056】
即ち、車輪速センサ30の出力から特定される車両速度が基準速度を超えるまでは(S130でNo)、学習動作をオフに維持し、車両速度が基準速度を超えると(S130でYes)、学習動作をオンに切り替えることで、車輪速センサ30の出力から特定される車両速度が基準速度を超えていること、且つ、上記誤差が基準未満であることを条件に、学習動作をオフからオンに切り替えるようにした。従って、本実施例によれば、一層消失点位置の誤学習を抑えることができる。
【0057】
[第二実施例]
続いて、第二実施例について説明する。但し、第二実施例の車両制御システム1は、制御部17が実行する学習制御処理PR2の内容が、第一実施例と異なる程度であるので、以下では、第二実施例における学習制御処理PR2の内容を選択的に説明する。本実施例における制御部17は、
図4に示す学習制御処理PR2をイグニションスイッチがオンにされると開始し、この処理をイグニションスイッチがオフになるまで繰り返し実行する。
【0058】
この学習制御処理PR2を開始すると、制御部17は、第一実施例と同様に、車輪速センサ30の出力から特定される車両速度がゼロより大きいか否かを判断し(S200)、車両速度がゼロ以下であると判断した場合には、S205に移行し、車両速度がゼロより大きいと判断した場合には、S210に移行する。
【0059】
S205に移行すると、制御部17は、S105での処理と同様に、判定済フラグF及び学習許可フラグGを値ゼロにリセットすると共に、誤差統計値を値ゼロにリセットした後、学習制御処理PR2を一旦終了する。誤差統計値は、後述する誤差統計値算出処理(S220)で算出されるものである。
【0060】
一方、S210に移行すると、制御部17は、判定済フラグFが値1にセットされているか否かを判断し、判定済フラグFが値1にセットされていると判断すると(S210でYes)、S235に移行し、判定済フラグFが値1にセットされていないと判断すると(S210でNo)、S220に移行する。
【0061】
S220に移行すると、制御部17は、
図5に示す誤差統計値算出処理を実行する。誤差統計値算出処理では、まず、車輪速センサ30の出力から特定される車両速度の微分値を算出することにより、車輪の回転加速度に対応する車両の加速度を算出する(S221)。微分値については、例えば、S221の前回実行時刻における車両速度とS221の今回実行時刻における車両速度との偏差をS221の実行周期で除算することにより求めることができる。
【0062】
S221での処理を終えると次に、制御部17は、加速度センサ40の出力から車両の加速度を特定し、この加速度と、S221で算出された速度微分値との誤差(絶対値)を算出する(S223)。更に、S205において最後に誤差統計値が値ゼロにリセットされた時点からの各回のS223で求めた誤差を標本集団として、この標本集団における誤差の統計値を算出する(S225)。具体的に、S225では、誤差統計値として、これまでに算出した誤差の平均値を算出することが一例に挙げられる。この他、誤差統計値として、上記標本集団における誤差の中央値を算出してもよいし、上記標本集団における誤差の最大値を算出してもよい。付言すると、S205では、誤差統計値を値ゼロにリセットすると共に、それまでに用いた上記標本集団を消去することができる。
【0063】
その後、制御部17は、S230に移行し、S130での処理と同様に、車輪速センサ30の出力から特定される車両速度が基準速度を超えているか否かを判断する。
そして、車輪速センサ30の出力から特定される車両速度が基準速度を超えていないと判断した場合(S230でNo)、制御部17は、S200に移行して、この車両速度が基準速度を超えるまで、S200〜S230の処理を繰り返し実行する。一方、車両速度が基準速度を超えていると判断すると(S230でYes)、S250に移行して、S220で算出された最新の誤差統計値が予め設計段階で定められた閾値未満であるか否かを判断する。
【0064】
そして、誤差統計値が閾値未満であると判断すると(S250でYes)、判定済フラグFを値1にセットすると共に、学習許可フラグGを値1にセットした後(S253)、S260に移行する。これに対し、誤差統計値が閾値以上であると判断すると(S250でNo)、判定済フラグFを値1にセットする一方、学習許可フラグGを値0にリセットした状態を維持し(S257)、S260に移行する。S250で用いる閾値については、設計者が、第一実施例のS150で用いる閾値と同様の基準に従って、定めることができる。
【0065】
その後、制御部17は、学習許可フラグGが値1にセットされているか否かを判断し(S260)、学習許可フラグGが値1にセットされていると判断すると(S260でYes)、消失点学習処理PR1を開始した後(S270)、S280に移行し、否定判断すると(S260でNo)、消失点学習処理PR1を開始せずに、学習制御処理を一旦終了する。
【0066】
S280に移行すると、制御部17は、S180での処理と同様に、消失点学習処理PR1の終了条件が満足されたか否かを判断し、終了条件が満足されていないと判断すると(S280でNo)、終了条件が満足されるまでS280の判断を繰り返し実行し、終了条件が満足されたと判断すると(S280でYes)、消失点学習処理PR1を終了した後(S290)、当該学習制御処理PR2を一旦終了する。
【0067】
また、制御部17は、S250以降の処理を実行して学習制御処理を一旦終了した後の、再度の学習制御処理では、第一実施例と同様に、車輪速センサ30の出力から特定される車両速度が一旦ゼロに落ちるまで、過去のS250での判断結果を利用して、学習動作のオン/オフを制御する。
【0068】
即ち、車両速度が一旦ゼロに落ちるまでの再度の学習制御処理では、S210で肯定判断してS235に移行し、S230での処理と同様に、車輪速センサ30の出力から特定される車両速度が上記基準速度を超えているか否かを判断する。そして、車両速度が基準速度を超えていないと判断した場合には(S235でNo)、S200に移行し、車両速度が基準速度を超えていると判断すると(S235でYes)、S260に移行する。そして、S260以降の処理(S260〜S290)では、第一実施例と同様に、過去の学習制御処理におけるS250で肯定判断されて学習許可フラグGが値1にセットされている場合に限って(S260でYes)、消失点学習処理PR1を開始する(S270)。
【0069】
以上に説明した第二実施例によれば、車輪速センサ30の出力から特定される車両の速度の偏差から算出した車両の加速度と加速度センサ40の出力から特定される車両の加速度との誤差に基づき、学習動作のオン/オフ制御を行うが、このような制御によっても、第一実施例と同様の効果を得ることができる。
【0070】
[第三実施例]
続いて、第三実施例について説明する。但し、第三実施例の車両制御システム1は、制御部17が実行する学習制御処理PR2の内容が、第一実施例と異なる程度であるので、以下では、第三実施例における学習制御処理PR2の内容を選択的に説明する。本実施例における制御部17は、
図6に示す学習制御処理PR2をイグニションスイッチがオンにされると開始し、この処理をイグニションスイッチがオフになるまで繰り返し実行する。
【0071】
学習制御処理PR2を開始すると、制御部17は、S100での処理と同様に、車輪速センサ30の出力から特定される車両速度がゼロより大きいか否かを判断し(S300)、車両速度がゼロ以下であると判断した場合には、S305に移行し、車両速度がゼロより大きいと判断した場合には、S310に移行する。
【0072】
S305に移行すると、制御部17は、S105での処理と同様に、判定済フラグF及び学習許可フラグGを値ゼロにリセットすると共に、加速度統計値を値ゼロにリセットした後、学習制御処理PR2を一旦終了する。加速度統計値は、後述するS320で算出されるものである。
【0073】
一方、S310に移行すると、制御部17は、判定済フラグFが値1にセットされているか否かを判断し、判定済フラグFが値1にセットされていると判断すると(S310でYes)、S335に移行し、判定済フラグFが値1にセットされていないと判断すると(S310でNo)、S320に移行する。
【0074】
S320に移行すると、制御部17は、加速度センサ40の出力から現在の車両の加速度を特定し、S305において最後に加速度統計値が値ゼロにリセットされた時点から加速度センサ40により観測された加速度の統計値を算出する。具体的に、S320では、加速度統計値として、S305において最後に加速度統計値が値ゼロにリセットされた時点からの加速度の平均値を算出することが一例に挙げられる。この他、加速度統計値として、加速度の中央値を算出してもよいし、加速度の最大値を算出してもよい。
【0075】
S320での処理を終えると、制御部17は、S330に移行し、S130での処理と同様に、車輪速センサ30の出力から特定される車両速度を基準速度と比較し、車両速度が基準速度を超えていないと判断した場合には(S330でNo)、S300に移行し、この車両速度が基準速度を超えるまで、S300〜S330の処理を繰り返し実行する。
【0076】
そして、車輪速センサ30の出力から特定される車両速度が基準速度を超えていると判断すると(S330でYes)、S350に移行し、S320で算出された最新の加速度統計値が予め設計段階で定められた閾値を超えているか否かを判断する。
【0077】
そして、加速度統計値が閾値を超えていると判断すると(S350でYes)、判定済フラグFを値1にセットすると共に、学習許可フラグGを値1にセットした後(S353)、S360に移行する。これに対し、加速度統計値が閾値以下であると判断すると(S350でNo)、判定済フラグFを値1にセットする一方、学習許可フラグGを値0にリセットした状態を維持し(S357)、S360に移行する。閾値は、設計者が、第一実施例のS150で用いる閾値と同様の基準に従って、定めることができる。
【0078】
その後、制御部17は、学習許可フラグGが値1にセットされているか否かを判断し(S360)、学習許可フラグGが値1にセットされていると判断すると(S360でYes)、消失点学習処理PR1を開始した後(S370)、S380に移行し、否定判断すると(S360でNo)、消失点学習処理PR1を開始せずに、学習制御処理を一旦終了する。
【0079】
S380に移行すると、制御部17は、S180での処理と同様に、消失点学習処理PR1の終了条件が満足されたか否かを判断し、終了条件が満足されていないと判断すると(S380でNo)、終了条件が満足されるまでS380の判断を繰り返し実行し、終了条件が満足されたと判断すると(S380でYes)、消失点学習処理PR1を終了した後(S390)、当該学習制御処理PR2を一旦終了する。
【0080】
また、制御部17は、S350以降の処理を実行して学習制御処理を一旦終了した後の、再度の学習制御処理では、第一実施例と同様に、車輪速センサ30の出力から特定される車両速度が一旦ゼロに落ちるまで、過去のS350での判断結果を利用して、学習動作のオン/オフを制御する。
【0081】
即ち、車両速度が一旦ゼロに落ちるまでの再度の学習制御処理では、S310で肯定判断してS335に移行し、S330での処理と同様に、車輪速センサ30の出力から特定される車両速度が上記基準速度を超えているか否かを判断する。そして、車両速度が基準速度を超えていないと判断した場合には(S335でNo)、S300に移行し、車両速度が基準速度を超えていると判断すると(S335でYes)、S360に移行する。また、S360以降の処理(S360〜S390)では、第一実施例と同様に、過去の学習制御処理におけるS350で肯定判断されて学習許可フラグGが値1にセットされている場合に限って、消失点学習処理PR1を開始する。
【0082】
以上、第三実施例について説明したが、本実施例によれば、車輪速センサ30の出力から特定される車両の速度が基準速度を超え(S330でYes)、且つ、加速度センサ40の出力から特定される車両の加速度(加速度統計値)が閾値を超えたことを条件に(S350でYes)、学習動作をオフからオンに切り替える。この制御手法によっても、消失点位置の学習動作を適切に実行することができる。
【0083】
[第四実施例]
続いて、第四実施例について説明する。但し、第四実施例の車両制御システム1は、制御部17が実行する学習制御処理PR2の内容が、第一実施例と異なる程度であるので、以下では、第四実施例における学習制御処理PR2の内容を選択的に説明する。本実施例における制御部17は、
図7に示す学習制御処理PR2をイグニションスイッチがオンにされると開始し、この処理をイグニションスイッチがオフになるまで繰り返し実行する。
【0084】
この学習制御処理PR2を開始すると、制御部17は、まず車両が運転されている状態であるか否かを判断する(S400)。ここでは、例えば、第一実施例と同様に、車輪速センサ30の出力から特定される車両速度がゼロより大きいか否かによって、車両が運転されている状態であるか否かを判断することができる。この他、セレクトレバーがドライブレンジに設定されているか否かによって、車両が運転されている状態であるか否かを判断することも可能である。
【0085】
そして、車両が運転されている状態ではないと判断すると(S400でNo)、S405に移行し、車両が運転されている状態であると判断すると(S400でYes)、S410に移行する。
【0086】
S405に移行すると、制御部17は、学習許可フラグGを値ゼロにリセットすると共に、加速度積分値を値ゼロにリセットした後、学習制御処理PR2を一旦終了する。本実施例において、加速度積分値は、学習制御処理PR2に付属する処理であって学習制御処理PR2と並列実行される加速度積分処理によって算出される。
【0087】
この加速度積分処理の内容は、第一実施例におけるS120と同様であるが、本実施例では、学習制御処理PR2の処理ループとは別に、制御部17が、イグニションスイッチがオンにされてからイグニションスイッチがオフにされるまで、常に加速度積分処理を所定の実行周期で繰り返し実行して、車両が運転され始めてからの加速度センサ40により観測された加速度の積分値を算出する。これにより常に、車両の実速度を推定する。S405では、この加速度積分値をゼロにリセットする処理を行う。
【0088】
一方、S410に移行すると、制御部17は、学習許可フラグGが値1にセットされているか否かを判断し、学習許可フラグGが値1にセットされていると判断すると(S410でYes)、S435に移行し、学習許可フラグGが値1にセットされていないと判断すると(S410でNo)、S430に移行する。
【0089】
また、S430では、上記加速度積分処理によって算出された最新の加速度積分値が、予め設計段階で定められた基準値を超えているか否かを判断する。ここで用いる「基準値」については、S130で用いられる上記基準速度と同一値に設定することができる。
【0090】
そして、加速度積分値が基準値以下であると判断すると(S430でNo)、制御部17は、S400に移行して、加速度積分値が基準値を超えるまで(S430でYes)、S400〜S430の処理を繰り返し実行し、加速度積分値が基準値を超えていると判断すると(S430でYes)、S450に移行して、学習許可フラグGを値1にセットした後、消失点学習処理PR1を開始し(S470)、S480に移行する。
【0091】
S480に移行すると、制御部17は、S180での処理と同様に、消失点学習処理PR1の終了条件が満足されたか否かを判断する。ここでは、車輪速センサ30を用いずに終了条件が満足されたか否かを判断することも可能である。例えば、車輪速センサ30により特定される車両速度に代えて、加速度積分処理によって算出された最新の加速度積分値から特定される車両速度に基づいて、第一実施例と同様の手法で、終了条件が満足されたか否かを判断することができる。この他、ギヤ位置に基づき車両が低速走行しているか否かを判断し、これによって、終了条件が満足されたか否かを判断することもできる。
【0092】
そして、終了条件が満足されていないと判断すると(S480でNo)、終了条件が満足されるまでS480の判断を繰り返し実行し、終了条件が満足されたと判断すると(S480でYes)、消失点学習処理PR1を終了した後(S490)、学習制御処理PR2を一旦終了する。
【0093】
また、制御部17は、S450以降の処理を実行して学習制御処理を一旦終了した後の、再度の学習制御処理では、車両が運転されている状態ではないと判断されるまで(S400でNo)、学習許可フラグGが値1に維持されるため、S410において肯定判断し、S435に移行する。そして、S435では、次のようにして学習動作の再開条件が満足されたか否かを判断する。
【0094】
S435では、例えば、S430での処理と同様に、加速度積分値が基準値を超えている場合には、再開条件が満足されたと判断し、加速度積分値が基準値以下である場合には、再開条件が満足されていないと判断する。
【0095】
別例としては、加速度積分処理によって算出された最新の加速度積分値V1と、最後に消失点学習処理を終了した時点(S490の実行時点)での加速度積分値V2との差分V1−V2を算出し、差分V1−V2が予め設計段階で定められた閾値以上であると、再開条件が満足されたと判断し、差分V1−V2が閾値未満であると判断すると、再開条件が満足されていないと判断することができる。閾値については、車両速度が基準速度を超えている環境で再開条件が満足されていると判断されるような値に定めることができる。
【0096】
更なる別例としては、S135,S235,S335での処理と同様に、車輪速センサ30の出力から特定される車両速度が上記基準速度を超えている場合に、再開条件が満足されていると判断し、車両速度が基準速度を超えていない場合には、再開条件が満足されていないと判断することもできる。
【0097】
制御部17は、このようにして再開条件が満足されているか否かを判断し、再開条件が満足されていないと判断した場合には(S435でNo)、S400に移行する一方、再開条件が満足されていると判断すると(S435でYes)、S470に移行して、消失点学習処理PR1を開始する。
【0098】
以上、第四実施例について説明したが、本実施例によれば、加速度センサ40の出力から特定される車両の加速度の積分により算出した車両の速度が基準速度を超えたことを条件に(S430でYes)、学習動作をオフからオンに切り替える。このような制御手法によっても、消失点位置の学習動作を、誤学習を抑えて、適切に実行することができる。
【0099】
[その他]
以上、本発明の実施例について説明したが、本発明は、上記実施例に限定されるものではなく、種々の態様を採ることができる。例えば、S100,S200,S300での判断は、S400での判断と同様に、車両が運転されているか否かの判断に置き換えることができる。また、慣性センサの出力を用いれば、上記実施例以外の手法で、学習動作のオン/オフを制御しても良いことは言うまでもない。
【0100】
例えば、第一実施例の変形例としては、第四実施例と同様に、加速度積分処理(S120)を学習制御処理PR2とは並列に実行することで、加速度センサ40の出力に基づき、車両が運転され始めてから車両の実速度を常に推定する例が考えられる。この例によれば、過去のS150での判断結果を利用せずに、学習動作のオン/オフ制御を実行する実施形態も考えられる。即ち、S110の判断ステップを削除して、再度の学習制御処理PR2においても、その時点での加速度積分値に基づいて、S140,S150〜S157の処理をやり直す実施形態も考えられる。
【0101】
最後に、用語間の対応関係について説明する。画像解析装置10は、車両に搭載される電子機器の一例に対応する。また、制御部17が実行する消失点学習処理PR1は、学習手段によって実現される処理の一例に対応し、制御部17が実行する学習制御処理PR2は、制御手段によって実現される処理の一例に対応する。