(57)【特許請求の範囲】
【請求項１】
車両の進行方向を順次撮影することにより得られる所定時刻及び所定時刻前の画像から対象物の認識及び／又は無限遠点の検知に基づいて、前記車両から前記対象物までの距離を推定する距離推定モードを設定するモード設定手段と、
前記所定時刻前に前記車両の進行方向に位置する前記対象物を認識せず、前記所定時刻に前記対象物を認識した場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記対象物の大きさに基づいて順次前記車両から前記対象物までの距離を推定し、
前記所定時刻及び前記所定時刻前に前記対象物を各々認識し、前記無限遠点を検知しない場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記所定時刻前の前記対象物と前記所定時刻の前記対象物との大きさの変化分に基づいて順次前記車両から前記対象物までの距離を推定し、
前記所定時刻及び前記所定時刻前に前記対象物を各々認識し、前記無限遠点を検知する場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記所定時刻前の前記対象物と前記所定時刻の前記対象物との位置変化に基づいて順次前記車両から前記対象物までの距離を推定する第１の距離推定手段と、
前記画像に基づいて順次推定される推定距離の差を算出する算出手段と、
前記画像が撮影されてから次の前記画像が撮影されるまでに、前記車両が走行する走行距離を算出する走行距離算出手段と、
前記推定距離の差と、前記走行距離とを比較して、前記推定距離の妥当性を判定する判定手段と、
前記判定手段の判定結果が肯定的である場合に、前記推定距離と、前記画像が撮影される時刻以降に前記車両が走行した前記走行距離とを用いて、前記車両と前記対象物との距離を推定する第２の距離推定手段と、
を備える距離推定装置。
【請求項２】
前記第２の距離推定手段は、
前記車両の速度が、前記画像が撮影される時刻以降の時間で積分されることにより算出された前記走行距離を、前記推定距離から減算することにより、前記車両と前記対象物との距離を算出する請求項１に記載の距離推定装置。
【請求項３】
前記第１の距離推定手段は、
第１画像の無限遠点を基準とする前記第１画像における前記対象物の高さをｈｓ１、前記第１画像の撮影後に撮影された第２画像の無限遠点を基準とする前記第２画像における前記対象物の高さをｈｓ２、前記車両の速度をＶ、前記第１画像が撮影された時刻から前記第２画像が撮影される時刻までの時間をΔｔとして、前記推定距離ｚｅを次式を用いて算出する請求項１又は２に記載の距離推定装置。
【数１】
0005834395.tif 000013
【請求項４】
前記第１の距離推定手段は、
第１画像における前記対象物の寸法をＷ１、前記第１画像の撮影後に撮影された第２画像における前記対象物の寸法をＷ２、前記車両の速度をＶ、前記第１画像が撮影された時刻から前記第２画像が撮影される時刻までの時間をΔｔとして、前記推定距離を次式を用いて算出する請求項１又は２に記載の距離推定装置。
【数２】
0005834395.tif 000014
【請求項５】
前記第１の距離推定手段は、
前記画像における前記対象物の寸法と、前記車両から前記対象物までの実際の距離との関係から、前記推定距離を推定する請求項１又は２に記載の距離推定装置。
【請求項６】
前記判定手段は、前記推定距離の差と前記走行距離との差が、閾値以下である場合に、前記推定距離の妥当性を肯定する判定結果を出力する請求項１乃至５のいずれか一項に記載の距離推定装置。
【請求項７】
前記画像を撮影する撮影手段を備える請求項１乃至６のいずれか一項に記載の距離推定装置。
【請求項８】
前記車両の速度を計測する速度計測手段を備える請求項１乃至７のいずれか一項に記載の距離推定装置。
【請求項９】
車両の進行方向を順次撮影することにより得られる所定時刻及び所定時刻前の画像から対象物の認識及び／又は無限遠点の検知に基づいて前記対象物との距離を推定する距離推定モードを設定するモード設定手段によって距離推定モードを設定する工程と、
前記所定時刻前に前記車両の進行方向に位置する前記対象物を認識せず、前記所定時刻に前記対象物を認識した場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記対象物の大きさに基づいて順次前記車両から前記対象物までの距離を推定し、
前記所定時刻及び前記所定時刻前に前記対象物を各々認識し、前記無限遠点を検知しない場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記所定時刻前の前記対象物と前記所定時刻の前記対象物との大きさの変化分に基づいて順次前記車両から前記対象物までの距離を推定し、
前記所定時刻及び前記所定時刻前に前記対象物を各々認識し、前記無限遠点を検知する場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記所定時刻前の前記対象物と前記所定時刻の前記対象物との位置変化に基づいて順次前記車両から前記対象物までの距離を推定する第１の距離推定手段によって距離を推定する工程と、
前記画像に基づいて順次推定される推定距離の差を算出する算出手段によって前記推定距離の差を算出する工程と、
前記画像が撮影されてから次の前記画像が撮影されるまでに、前記車両が走行する走行距離を算出する走行距離算出手段によって前記走行距離を算出する工程と、
前記推定距離の差と、前記走行距離とを比較して、前記推定距離の妥当性を判定する判定手段によって前記妥当性を判定する工程と、
前記妥当性の判定結果が肯定的である場合に、前記推定距離と、前記画像が撮影される時刻以降に前記車両が走行した前記走行距離とを用いて、前記車両と前記対象物との距離を算出する第２の距離推定手段によって前記距離を推定する工程と、
を含む距離推定方法。
【請求項１０】
コンピュータに、
車両の進行方向を順次撮影することにより得られる所定時刻及び所定時刻前の画像から対象物の認識及び／又は無限遠点の検知に基づいて前記対象物との距離を推定する距離推定モードを設定するモード設定手段によって距離推定モードを設定する手順と、
前記所定時刻前に前記車両の進行方向に位置する前記対象物を認識せず、前記所定時刻に前記対象物を認識した場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記対象物の大きさに基づいて順次前記車両から前記対象物までの距離を推定し、
前記所定時刻及び前記所定時刻前に前記対象物を各々認識し、前記無限遠点を検知しない場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記所定時刻前の前記対象物と前記所定時刻の前記対象物との大きさの変化分に基づいて順次前記車両から前記対象物までの距離を推定し、
前記所定時刻及び前記所定時刻前に前記対象物を各々認識し、前記無限遠点を検知する場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記所定時刻前の前記対象物と前記所定時刻の前記対象物との位置変化に基づいて順次前記車両から前記対象物までの距離を推定する第１の距離推定手段によって距離を推定する手順と、
前記画像に基づいて順次推定される推定距離の差を算出する算出手段によって前記推定距離の差を算出する手順と、
前記画像が撮影されてから次の前記画像が撮影されるまでに、前記車両が走行する走行距離を算出する走行距離算出手段によって前記走行距離を算出する手順と、
前記推定距離の差と、前記走行距離とを比較して、前記推定距離の妥当性を判定する判定手段によって前記妥当性を判定する手順と、
前記妥当性の判定結果が肯定的である場合に、前記推定距離と、前記画像が撮影される時刻以降に前記車両が走行した前記走行距離とを用いて、前記車両と前記対象物との距離を算出する第２の距離推定手段によって前記距離を推定する手順と、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、距離推定装置、距離推定方法及びプログラムに関し、更に詳しくは、車両の前方に存在する対象物までの距離を推定する距離推定装置、車両の前方に存在する対象物までの距離を推定するための距離推定方法及びプログラムに関する。
【背景技術】
【０００２】
近年、車内に設置されたカメラから出力される画像に基づいて、自車の前方に存在する障害物等を検出する運転支援システムが種々提案されている（例えば特許文献１及び２参照）。
【０００３】
特許文献１に記載された装置は、交差点などの道路の分岐点をＧＰＳ（Global Positioning System）を用いて特定し、特定した位置を、ステレオカメラで撮影する。そして、得られた１組の画像に対して、ステレオマッチング処理を施すことにより、自車の前方に存在する信号機や、標識までの距離を推定する。
【０００４】
また、特許文献２に記載された装置は、ＧＰＳシステムを用いて特定した自車の位置と、自車の前方を撮影して得られた画像に基づいて特定した信号機の位置との距離を算出する。そして、算出した距離が閾値以下である場合に、ドライバーに警報を発する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１０−１７７６９９号公報
【特許文献２】特開２０１０−４９５３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載された装置は、距離の推定に高価なステレオカメラを必要とする。また、距離を推定する際に、取り扱うデータの量も大きくなる。
【０００７】
特許文献２に記載された装置は、距離の推定にＧＰＳを利用した位置情報を利用する。しかしながら、ＧＰＳによる計測結果には、誤差がある程度含まれるため、正確な距離を推定することが困難である。
【０００８】
本発明は、上述の事情の下になされたもので、前方に存在する対象物までの距離を、簡易な装置で精度良く推定することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明の第１の観点に係る距離推定装置は、
車両の進行方向を順次撮影することにより得られる所定時刻及び所定時刻前の画像から対象物の認識及び／又は無限遠点の検知に基づいて、前記車両から前記対象物までの距離を推定する距離推定モードを設定するモード設定手段と、
前記所定時刻前に前記車両の進行方向に位置する前記対象物を認識せず、前記所定時刻に前記対象物を認識した場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記対象物の大きさに基づいて順次前記車両から前記対象物までの距離を推定し、
前記所定時刻及び前記所定時刻前に前記対象物を各々認識し、前記無限遠点を検知しない場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記所定時刻前の前記対象物と前記所定時刻の前記対象物との大きさの変化分に基づいて順次前記車両から前記対象物までの距離を推定し、
前記所定時刻及び前記所定時刻前に前記対象物を各々認識し、前記無限遠点を検知する場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記所定時刻前の前記対象物と前記所定時刻の前記対象物との位置変化に基づいて順次前記車両から前記対象物までの距離を推定する第１の距離推定手段と、
前記画像に基づいて順次推定される推定距離の差を算出する算出手段と、
前記画像が撮影されてから次の前記画像が撮影されるまでに、前記車両が走行する走行距離を算出する走行距離算出手段と、
前記推定距離の差と、前記走行距離とを比較して、前記推定距離の妥当性を判定する判定手段と、
前記判定手段の判定結果が肯定的である場合に、前記推定距離と、前記画像が撮影される時刻以降に前記車両が走行した前記走行距離とを用いて、前記車両と前記対象物との距離を推定する第２の距離推定手段と、
を備える。
【００１０】
前記第２の距離推定手段は、
前記車両の速度が、前記画像が撮影される時刻以降の時間で積分されることにより算出された前記走行距離を、前記推定距離から減算することにより、前記車両と前記対象物との距離を算出することとしてもよい。
【００１１】
前記第１の距離推定手段は、
第１画像の無限遠点を基準とする前記第１画像における前記対象物の高さをｈｓ１、前記第１画像の撮影後に撮影された第２画像の無限遠点を基準とする前記第２画像における前記対象物の高さをｈｓ２、前記車両の速度をＶ、前記第１画像が撮影された時刻から前記第２画像が撮影される時刻までの時間をΔｔとして、前記推定距離ｚｅを次式を用いて算出することとしてもよい。
【数１】
0005834395.tif 000002
【００１２】
前記第１の距離推定手段は、
第１画像における前記対象物の寸法をＷ１、前記第１画像の撮影後に撮影された第２画像における前記対象物の寸法をＷ２、前記車両の速度をＶ、前記第１画像が撮影された時刻から前記第２画像が撮影される時刻までの時間をΔｔとして、前記推定距離を次式を用いて算出することとしてもよい。
【数２】
0005834395.tif 000003
【００１３】
前記第１の距離推定手段は、
前記画像における前記対象物の寸法と、前記車両から前記対象物までの実際の距離との関係から、前記推定距離を推定することとしてもよい。
【００１４】
前記判定手段は、前記推定距離の差と前記走行距離との差が、閾値以下である場合に、前記推定距離の妥当性を肯定する判定結果を出力することとしてもよい。
【００１５】
距離推定装置は、前記画像を撮影する撮影手段を備えていてもよい。
【００１６】
距離推定装置は、前記車両の速度を計測する速度計測手段を備えていてもよい。
【００１７】
本発明の第２の観点に係る距離推定方法は、
車両の進行方向を順次撮影することにより得られる所定時刻及び所定時刻前の画像から対象物の認識及び／又は無限遠点の検知に基づいて前記対象物との距離を推定する距離推定モードを設定するモード設定手段によって距離推定モードを設定する工程と、
前記所定時刻前に前記車両の進行方向に位置する前記対象物を認識せず、前記所定時刻に前記対象物を認識した場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記対象物の大きさに基づいて順次前記車両から前記対象物までの距離を推定し、
前記所定時刻及び前記所定時刻前に前記対象物を各々認識し、前記無限遠点を検知しない場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記所定時刻前の前記対象物と前記所定時刻の前記対象物との大きさの変化分に基づいて順次前記車両から前記対象物までの距離を推定し、
前記所定時刻及び前記所定時刻前に前記対象物を各々認識し、前記無限遠点を検知する場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記所定時刻前の前記対象物と前記所定時刻の前記対象物との位置変化に基づいて順次前記車両から前記対象物までの距離を推定する第１の距離推定手段によって距離を推定する工程と、
前記画像に基づいて順次推定される推定距離の差を算出する算出手段によって前記推定距離の差を算出する工程と、
前記画像が撮影されてから次の前記画像が撮影されるまでに、前記車両が走行する走行距離を算出する走行距離算出手段によって前記走行距離を算出する工程と、
前記推定距離の差と、前記走行距離とを比較して、前記推定距離の妥当性を判定する判定手段によって前記妥当性を判定する工程と、
前記妥当性の判定結果が肯定的である場合に、前記推定距離と、前記画像が撮影される時刻以降に前記車両が走行した前記走行距離とを用いて、前記車両と前記対象物との距離を算出する第２の距離推定手段によって前記距離を推定する工程と、
を含む。
【００１８】
本発明の第３の観点に係るプログラムは、
コンピュータに、
車両の進行方向を順次撮影することにより得られる所定時刻及び所定時刻前の画像から対象物の認識及び／又は無限遠点の検知に基づいて前記対象物との距離を推定する距離推定モードを設定するモード設定手段によって距離推定モードを設定する手順と、
前記所定時刻前に前記車両の進行方向に位置する前記対象物を認識せず、前記所定時刻に前記対象物を認識した場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記対象物の大きさに基づいて順次前記車両から前記対象物までの距離を推定し、
前記所定時刻及び前記所定時刻前に前記対象物を各々認識し、前記無限遠点を検知しない場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記所定時刻前の前記対象物と前記所定時刻の前記対象物との大きさの変化分に基づいて順次前記車両から前記対象物までの距離を推定し、
前記所定時刻及び前記所定時刻前に前記対象物を各々認識し、前記無限遠点を検知する場合に、前記モード設定手段によって設定される距離推定モードに基づいて、前記所定時刻前の前記対象物と前記所定時刻の前記対象物との位置変化に基づいて順次前記車両から前記対象物までの距離を推定する第１の距離推定手段によって距離を推定する手順と、
前記画像に基づいて順次推定される推定距離の差を算出する算出手段によって前記推定距離の差を算出する手順と、
前記画像が撮影されてから次の前記画像が撮影されるまでに、前記車両が走行する走行距離を算出する走行距離算出手段によって前記走行距離を算出する手順と、
前記推定距離の差と、前記走行距離とを比較して、前記推定距離の妥当性を判定する判定手段によって前記妥当性を判定する手順と、
前記妥当性の判定結果が肯定的である場合に、前記推定距離と、前記画像が撮影される時刻以降に前記車両が走行した前記走行距離とを用いて、前記車両と前記対象物との距離を算出する第２の距離推定手段によって前記距離を推定する手順と、
を実行させる。
【発明の効果】
【００１９】
本発明によれば、自車と前方に存在する対象物との距離が、まず、前方を撮影して得られる画像から推定される。そして、推定された距離（推定距離）が妥当である場合には、当該推定距離と、正確に算出することが可能な自車の走行距離とに基づいて、対象物までの距離の推定が継続される。したがって、正確な推定距離が得られた後は、撮影状況の如何に関わらず、進行方向に存在する対象物までの距離を精度良く推定することが可能となる。
【００２０】
また、本発明によれば、ステレオカメラを必要とせず、簡易な装置で進行方向に存在する対象物までの距離を推定することができる。
【図面の簡単な説明】
【００２１】
【図１】本実施形態に係る距離推定装置のブロック図である。
【図２】撮影装置の取り付け位置を説明するための図である。
【図３】撮影装置によって撮影された画像を示す図である。
【図４】距離推定装置の動作を説明するためのフローチャートである。
【図５】距離推定装置の動作を説明するためのフローチャートである。
【図６】画像に設定された検出処理領域を示す図である。
【図７】画像に写る信号機の信号灯の直径と、車両から信号機までの実際の距離との関係を示す図である。
【図８】１組の画像に基づいて、車両から対象物までの距離を推定する手順を説明するための図である。
【図９】本実施形態の別例を説明するための図である。
【発明を実施するための形態】
【００２２】
以下、本発明の一実施形態を、図面を参照しつつ説明する。図１は本実施形態に係る距離推定装置１０の概略的な構成を示すブロック図である。距離推定装置１０は、自車の進行方向に存在する信号機や道路標識等の対象物までの距離を推定する装置である。この距離推定装置１０は、図１に示されるように、演算装置２０、撮影装置３１、及び速度計測装置３２を有している。
【００２３】
撮影装置３１は、被写体を撮影することにより取得した画像を、電気信号に変換して出力する装置である。撮影装置３１は、例えば図２に示されるように、車両１００のフロントウインド上部に取り付けられている。この撮影装置３１は、車両１００の前方を撮影する。そして、撮影により取得した画像に関する情報を演算装置２０へ出力する。
【００２４】
図３は、撮影装置３１によって撮影された画像ＰＨの一例を示す図である。図３を参照するとわかるように、画像ＰＨには、車両１００が走行する道路や、この道路の上方に位置する信号機７０等が写っている。画像ＰＨを参照するとわかるように、撮影装置３１は、その視野内に、車両１００が走行する道路や信号機等が位置するように、視野角や倍率などが調整されている。そして、撮影装置３１は、車両１００の進行方向を順次撮影し、撮影によって得られた画像に関する情報を出力する。
【００２５】
図１に戻り、速度計測装置３２は、車両１００の速度を計測する装置である。この速度計測装置３２は、例えばエンジンのアウトプットシャフトの回転数を計測する。そして、計測した回転数に応じた速度信号を、演算装置２０へ出力する。
【００２６】
演算装置２０は、ＣＰＵ（Central Processing Unit）２１、主記憶部２２、補助記憶部２３、表示部２４、入力部２５、及びインターフェイス部２６を有するコンピュータである。
【００２７】
ＣＰＵ２１は、補助記憶部２３に記憶されているプログラムに従って、車両１００と車両の前方に存在する対象物との距離を算出する。本実施形態では、ＣＰＵ２１は、処理の進行状況をモード０からモード３までの４つのモードに分類する。そして、モードに応じた処理を実行することにより、車両１００から対象物までの距離を算出する。具体的な処理の内容については後述する。
【００２８】
主記憶部２２は、ＲＡＭ（Random Access Memory）等を有している。主記憶部２２は、ＣＰＵ２１の作業領域として用いられる。
【００２９】
補助記憶部２３は、ＲＯＭ（Read Only Memory）、磁気ディスク、半導体メモリ等の不揮発性メモリを有している。補助記憶部２３は、ＣＰＵ２１が実行するプログラム、及び各種パラメータなどを記憶している。また、撮影装置３１から出力される画像に関する情報、及びＣＰＵ２１による処理結果などを含む情報を順次記憶する。
【００３０】
表示部２４は、ＬＣＤ（Liquid Crystal Display）などの表示ユニットを有している。表示部２４は、ＣＰＵ２１の処理結果等を表示する。
【００３１】
入力部２５は、入力キーや、タッチパネル等のポインティングデバイスを有している。オペレータの指示は、入力部２５を介して入力され、システムバス２７を経由してＣＰＵ２１に通知される。
【００３２】
インターフェイス部２６は、シリアルインターフェイスまたはＬＡＮ（Local Area Network）インターフェイス等を含んで構成されている。撮影装置３１及び速度計測装置３２は、インターフェイス部２６を介してシステムバス２７に接続される。
【００３３】
図４及び図５のフローチャートは、ＣＰＵ２１によって実行されるプログラムの一連の処理アルゴリズムに対応している。以下、図４及び図５を参照しつつ、距離推定装置１０の動作について説明する。また、ここでは図３を参照するとわかるように、撮影装置３１の視野内に信号機７０が位置し、車両１００から信号機７０までの距離を算出する例を説明する。
【００３４】
まず、最初のステップＳ１０１では、ＣＰＵ２１は、距離推定モードを０に設定する。
【００３５】
次のステップＳ１０２では、ＣＰＵ２１は、撮影装置３１から順次出力され、補助記憶部２３に順次記憶される画像情報から、最新の画像に関する情報（画像情報）を取得する。ここでは説明の便宜上、図３に示される画像ＰＨに関する画像情報が取得されたものとする。
【００３６】
次のステップＳ１０３では、ＣＰＵ２１は、取得した画像情報に基づく画像ＰＨに、検出処理領域ＰＡを設定する。図６を参照するとわかるように、この検出処理領域ＰＡは、例えば路面から２ｍの高さの位置を示す３本の直線Ｌ１，Ｌ２，Ｌ３によって規定される画像上部の領域である。ただし、直線Ｌ３は、信号機７０を検出する領域が限定される場合に規定される。
【００３７】
この検出処理領域ＰＡは、撮影装置３１を構成する光学系の焦点距離、画角などに基づいて決定することができる。車両１００が走行する道路に設けられた信号機や道路標識等の対象物のほとんどは、この検出領域ＰＡに含まれる。
【００３８】
次のステップＳ１０４では、ＣＰＵ２１は、対象物の認識処理を実行する。例えば、ＣＰＵ２１は、画像ＰＨに写る信号機７０を検出するためのテンプレートを、検出処理領域ＰＡで移動させながら、テンプレートの位置と、テンプレートがマッチングした画像に対する相関値を順次算出する。そして、ＣＰＵ２１は、所定の閾値以上の相関値が算出された場合に、値が最も大きい相関値を算出したときのテンプレートの位置に信号機が存在すると判断し、このテンプレートと重なった画像を対象物として認識する。
【００３９】
信号機や道路標識は所定の規格に基づいて製作されている。このため、撮影装置３１と信号機との距離に応じた大きさのテンプレートを用いたマッチング処理を行うことで、対象物を比較的正確に特定し、認識することができる。
【００４０】
次のステップＳ１０５では、ＣＰＵ２１は、現在設定されている距離推定モードを確認する。ＣＰＵ２１は、距離推定モードが０であると判断した場合に、ステップＳ１０６へ移行する。
【００４１】
ステップＳ１０６では、ＣＰＵ２１は、ステップＳ１０２で取得された画像ＰＨに存在する対象物が認識されたか否かを判断する。ステップＳ１０４で、画像が認識されなかった場合には（ステップＳ１０６：Ｎｏ）、ＣＰＵ２１は、ステップＳ１１９へ移行する。一方、ステップＳ１０４で、画像が認識された場合には（ステップＳ１０６：Ｙｅｓ）、ＣＰＵ２１は、ステップＳ１０７へ移行する。
【００４２】
ステップＳ１０７では、ＣＰＵ２１は、画像ＰＨが撮影される所定時間前に撮影された画像ＰＨに写る対象物が認識されているか否かを判断する。ここで、説明の便宜上、上述の所定時間前に撮影された画像ＰＨを画像ＰＨ１と表示し、以降順次撮影された画像を画像ＰＨ２，画像ＰＨ３，…，ＰＨＮと表示するものとする。したがって、ここでは、ステップＳ１０３で検出処理領域ＰＡが設定された画像ＰＨは、画像ＰＨ２ということになる。
【００４３】
ＣＰＵ２１は、画像ＰＨ１に写る対象物が認識されていない場合、例えば、画像ＰＨ２に写る対象物がはじめて認識された場合には（ステップＳ１０７：Ｎｏ）、ステップＳ１１４へ移行する。
【００４４】
ステップＳ１１４では、ＣＰＵ２１は、画像ＰＨ２に写る信号機７０の大きさに基づいて、車両１００から信号機７０までの距離を推定する。図７には、画像に写る信号機７０の信号灯の直径と、車両１００から信号機７０までの実際の距離との関係を示す曲線Ｓが示されている。この曲線Ｓは、信号灯の直径をｘ、車両１００から信号機７０までの距離をｙとしたときに、関数ｙ＝ｆ（ｘ）で示される。ＣＰＵ２１は、画像ＰＨ２に写る信号機７０の信号灯の直径を計測すると、計測して得られた値を、上記関数のｘに代入することで、車両１００から信号機７０までの距離を推定距離ｚｅとして算出する。
【００４５】
一方、例えば画像ＰＨ２が撮影される前に撮影された画像ＰＨ１にも信号機７０が写っており、ステップＳ１０４において、画像ＰＨ１に写る信号機７０が認識されていた場合には、ステップＳ１０７での判断が肯定される（ステップＳ１０７：Ｙｅｓ）。この場合には、ＣＰＵ２１は、次のステップＳ１０８へ移行する。
【００４６】
ステップＳ１０８では、画像ＰＨ１及び画像ＰＨ２について無限遠点Ｐ０を検知できるか否かを判断する。この無限遠点Ｐ０は、図３を参照するとわかるように、道路と路側とを区画するライン８１や、走行車線と対抗斜線とを区画するライン８２のエッジが収束する点に基づいて検知することができる。また、無限遠点Ｐ０は、ライン８１，８２以外に、道路に沿って延設されるガードレールのエッジや、道路に沿って並ぶ建造物などのエッジの収束点に基づいて決定してもよい。
【００４７】
ＣＰＵ２１は、ライン８１，８２の収束点等に基づいて両画像ＰＨ１，ＰＨ２の無限遠点Ｐ０の検知を試みる。そして、画像ＰＨ１及び画像ＰＨ２の双方から無限遠点Ｐ０が検知されなかった場合、或いは画像ＰＨ１及び画像ＰＨ２のうちの一方のみからしか無限遠点Ｐ０が検知されなかった場合には（ステップＳ１０８：Ｎｏ）、ステップＳ１１５へ移行する。
【００４８】
ステップＳ１１５では、ＣＰＵ２１は、距離推定モードを１に設定する。
【００４９】
次のステップＳ１１６では、ＣＰＵ２１は、画像ＰＨ１に写る対象物（ここでは信号機７０）の大きさと、画像ＰＨ２に写る対象物の大きさのとの相違（変化分）に基づいて、車両１００から対象物までの推定距離ｚｅを算出する。
【００５０】
例えば、画像ＰＨ１が撮影された時刻から画像ＰＨ２が撮影された時刻までの時間をΔｔ（ｓｅｃ）とし、車両１００の速度をＶ（ｍ／ｓｅｃ）とし、画像ＰＨ１における対象物の幅をＷ１（ｐｉｘｅｌ）とし、画像ＰＨ２における対象物の幅をＷ２（ｐｉｘｅｌ）とすると、車両１００から対象物までの推定距離ｚｅ（ｍ）は、次式（１）によって表される。
【００５１】
【数３】
0005834395.tif 000004
【００５２】
そこで、ＣＰＵ２１は、画像ＰＨ１に写る対象物の幅Ｗ１と、画像ＰＨ２に写る対象物の幅Ｗ２とを求め、画像ＰＨ１が撮影された時刻から画像ＰＨ２が撮影された時刻までの時間Δｔを算出する。そして、対象物の幅Ｗ１，Ｗ２と、時間Δｔと、速度計測装置３２を介して計測した車両１００の速度Ｖとを上記式（１）へ代入し、対象物までの推定距離ｚｅを算出する。
【００５３】
次のステップＳ１１７では、ＣＰＵ２１は、高精度距離が継続したか否かを判断する。ここでの処理は、具体的には、推定距離ｚｅの妥当性を判定し、推定距離ｚｅに妥当性がある場合には、高精度距離が継続したと判断する。この判断は、推定距離ｚｅ１，ｚｅ２それぞれと、車両の走行距離Ｖ・Δｔと、閾値ΔＺとの関係が次式（２）を満たすか否かによって行う。
【００５４】
【数４】
0005834395.tif 000005
【００５５】
上記式は、画像ＰＨ２に基づいて算出された推定距離ｚｅ２と画像ＰＨ２の前に撮影された画像ＰＨ１に基づいて算出された推定距離ｚｅ１との差（推定差）を、画像ＰＨ１が撮影された時刻から画像ＰＨ２が撮影された時刻までに車両１００が走行した走行距離（Ｖ・Δｔ）と比較して、推定距離の差と走行距離との差が閾値以下である場合に、画像に基づいて算出した推定距離に妥当性があると判断するためのものである。この式は、正確に取得することができる車両１００の走行距離と、推定距離ｚｅ１と推定距離ｚｅ２との差が等価である場合には、推定距離ｚｅ１，ｚｅ２それぞれも妥当な値であるという思想に基づいている。
【００５６】
ＣＰＵ２１は、ステップＳ１０２からステップＳ１２０までの処理が繰り返され、ステップＳ１１７が実行されるごとに、上記式（２）の左辺の式｜（ｚｅ１−ｚｅ２）−Ｖ・Δｔ｜で示される演算を行う。そして、この演算結果が、例えば予め定められた回数Ｎ回連続で閾値ΔＺ以下である場合に、高精度距離が継続したと判断する（ステップＳ１１７：Ｙｅｓ）。
【００５７】
なお、この高精度距離が継続しているか否かの判断は、ステップＳ１１６での算出された推定距離ｚｅのみを対象に行われるものではなく、ステップＳ１０９で算出された推定距離ｚｅについても判断の対象となる。例えば、ステップＳ１０２〜ステップＳ１２０までの処理が繰り返し実行され、まず、ステップＳ１０９で推定距離ｚｅ１が算出され、次の繰り返し処理で、ステップＳ１１６で推定距離ｚｅ２が算出され、さらに、次の繰り返し処理で、ステップＳ１１６で推定距離ｚｅ３が算出された場合を考える。この場合には、｜（ｚｅ１−ｚｅ２）−Ｖ・Δｔ｜、｜（ｚｅ２−ｚｅ３）−Ｖ・Δｔ｜の双方が閾値ΔＺ以下であったときに、ステップＳ１１７では、２回連続して上記式（２）で示される条件を満たしたと判断される。
【００５８】
ステップＳ１１７での判断が肯定された場合には（ステップＳ１１７：Ｙｅｓ）、ＣＰＵ２１は、ステップＳ１１８へ移行する。そして、距離推定モードを２に設定した後、次のステップＳ１１９へ移行する。一方、上記式（２）の左辺に示される式の演算結果が、閾値ΔＺより大きい場合には、ステップＳ１１７の判断が否定され（ステップＳ１１７：Ｎｏ）、ＣＰＵ２１は、ステップＳ１１９へ移行する。
【００５９】
また、ステップＳ１０８において、ＣＰＵ２１は、ライン８１，８２の収束点等に基づいて両画像ＰＨ１，ＰＨ２の無限遠点Ｐ０の検知を試みた結果、画像ＰＨ１及び画像ＰＨ２の双方から無限遠点Ｐ０が検知された場合には（ステップＳ１０８：Ｙｅｓ）、ステップＳ１０９へ移行する。
【００６０】
ステップＳ１０９では、ＣＰＵ２１は、画像ＰＨ１に写る対象物の位置と、画像ＰＨ２に写る対象物の位置の差（位置変化）に基づいて、画像ＰＨ２が撮影されたときの、車両１００から対象物までの推定距離ｚｅを算出する。
【００６１】
図８は、撮影装置３１の焦点ＦＣと、画像ＰＨ１，ＰＨ２から検出された無限遠点Ｐ０と、画像ＰＨ１が撮影された時刻における焦点ＦＣに対する対象物の位置を示す円形のマーク７００１と、画像ＰＨ２が撮影された時刻における焦点ＦＣに対する対象物の位置を示す円形のマーク７００２と、撮影装置３１の像面を示す直線Ｌ４との位置関係を模式的に示す図である。この図８を参照するとわかるように、画像ＰＨ１の対象物は、マーク７００１及び焦点ＦＣを通る直線Ｌ５と直線Ｌ４との交点Ｐ１に対応する画像ＰＨ１上の点近傍に写り込む。また、画像ＰＨ２の対象物は、マーク７００２及び焦点ＦＣを通る直線Ｌ６と直線Ｌ４との交点Ｐ２に対応する画像ＰＨ２上の点近傍に写り込む。
【００６２】
図８を参照するとわかるように、例えば、画像ＰＨ１が撮影された時刻から画像ＰＨ２が撮影された時刻までの時間をΔｔ（ｓｅｃ）とし、車両１００の速度をＶ（ｍ／ｓｅｃ）とし、撮影装置３１を構成する光学系の焦点距離をｆとし、無限遠点Ｐ０を基準にしたときの画像ＰＨ１における対象物の高さをｈｓ１（ｐｉｘｅｌ）とし、無限遠点Ｐ０を基準にしたときの画像ＰＨ２における対象物の高さをｈｓ２（ｐｉｘｅｌ）とし、路側物の実際の高さをｈ（ｍ）とし、スケールファクタ（Ｓｖ）をｆ／δｖとすると、次式（３）及び（４）が成立し、式（３）及び式（４）から、車両１００から対象物までの推定距離ｚｅ（ｍ）を示す次式（５）が導かれる。
【００６３】
【数５】
0005834395.tif 000006
【数６】
0005834395.tif 000007
【数７】
0005834395.tif 000008
【００６４】
そこで、ＣＰＵ２１は、画像ＰＨ１に写る対象物の高さｈｓ１と，画像ＰＨ２に写る対象物の高さｈｓ２とを求めるとともに、画像ＰＨ１が撮影された時刻から画像ＰＨ２が撮影された時刻までの時間Δｔを算出する。そして、対象物の高さｈｓ１，ｈｓ２と、時間Δｔと、速度計測装置３２を介して計測した車両１００の速度Ｖとを上記式（１）へ代入し、対象物までの推定距離ｚｅを算出する。
【００６５】
次のステップＳ１１０では、ＣＰＵ２１は、高精度距離が継続したか否かを判断する。ステップＳ１１０では、上述したステップＳ１１７での処理と同等の処理が実行される。ステップＳ１１０での判断が肯定された場合には（ステップＳ１１０：Ｙｅｓ）、ＣＰＵ２１は、ステップＳ１１１へ移行する。そして、距離推定モードを３に設定した後、次のステップＳ１１９へ移行する。一方、ステップＳ１１０での判断が否定された場合は（ステップＳ１１０：Ｎｏ）、ＣＰＵ２１は、ステップＳ１１９へ移行する。
【００６６】
また、ＣＰＵ２１は、ステップＳ１０５において、距離推定モードが１である場合には、ステップＳ１１２へ移行する。
【００６７】
ステップＳ１１２では、ＣＰＵ２１は、両画像ＰＨ１，ＰＨ２について対象物の検知を試みる。そして、画像ＰＨ１及び画像ＰＨ２の双方から対象物が検知された場合には（ステップＳ１１２：Ｙｅｓ）、ステップＳ１０８へ移行する。一方、ＣＰＵ２１は、画像ＰＨ１及び画像ＰＨ２の双方から対象物が検知されなかった場合、或いは画像ＰＨ１及び画像ＰＨ２のうちの一方のみからしか対象物が検知されなかった場合には（ステップＳ１１２：Ｎｏ）、ステップＳ１１９へ移行する。
【００６８】
また、ＣＰＵ２１は、ステップＳ１０５において、距離推定モードが２である場合には、ステップＳ１１３へ移行する。
【００６９】
ステップＳ１１３では、ＣＰＵ２１は、ライン８１，８２の収束点等に基づいて両画像ＰＨ１，ＰＨ２の無限遠点Ｐ０の検知を試みる。そして、画像ＰＨ１及び画像ＰＨ２の双方から無限遠点Ｐ０が検知された場合には（ステップＳ１１３：Ｙｅｓ）、ステップＳ１０９へ移行する。一方、画像ＰＨ１及び画像ＰＨ２の双方から無限遠点Ｐ０が検知されなかった場合、或いは画像ＰＨ１及び画像ＰＨ２のうちの一方のみからしか無限遠点Ｐ０が検知されなかった場合には（ステップＳ１１３：Ｎｏ）、ステップＳ１１９へ移行する。
【００７０】
また、ＣＰＵ２１は、ステップＳ１０５において、距離推定モードが３である場合には、ステップＳ１１９へ移行する。
【００７１】
ステップＳ１１９では、ＣＰＵ２１は、推定結果を出力するための処理を実行する。具体的には、ＣＰＵ２１は、図５のフローチャートに示されるサブルーチン２００を実行する。
【００７２】
最初のステップＳ２０１では、ＣＰＵ２１は、推定距離ｚｅの履歴が存在するか否かを判断する。例えば、ステップＳ１０４で対象物が認識されず、ステップＳ１０６での判断が否定された場合には、推定距離ｚｅの履歴が存在しない。この場合には、ステップＳ２０１での判断が否定される（ステップＳ２０１：Ｎｏ）。ステップＳ２０１での判断が否定された場合には、ＣＰＵ２１は、サブルーチン２００を終了し、次のステップＳ１２０へ移行する。
【００７３】
一方、上述したステップＳ１１４，Ｓ１１６，Ｓ１０９で距離の推定が行われた場合には、ステップＳ２０１での判断が肯定される（ステップＳ２０１：Ｙｅｓ）。ステップＳ２０２での判断が肯定された場合には、次のステップＳ２０２へ移行する。
【００７４】
次のステップＳ２０２では、ＣＰＵ２１は、現在設定されている距離推定モードを確認する。ＣＰＵ２１は、距離推定モードが０又は１であると判断した場合には、ステップＳ２０４へ移行する。一方、距離推定モードが２又は３であると判断した場合には、ステップＳ２０３へ移行する。
【００７５】
ステップＳ２０４では、ＣＰＵ２１は、ステップＳ２０４へ移行する前に、ステップＳ１０９，Ｓ１１６，Ｓ１１４のいずれかで、推定距離が検出されたか否かを判断する。ステップＳ１０６で対象物が認識されなかった場合、或いはステップＳ１０５の判断時に距離推定モードが３であった場合には、ステップＳ２０４での判断が否定され（ステップＳ２０４：Ｎｏ）、ＣＰＵ２１は、ステップＳ２０５へ移行する。
【００７６】
ステップＳ２０５では、ＣＰＵ２１は、次式（６）に示される演算を実行することによって、最新の車両と対象物との距離である算出距離ＺＥを算出する。なお、ｔＰは現在時刻であり、ｔＱは推定距離ｚｅが算出される元となった画像ＰＨが撮影された時刻であり、Ｖは車速である。
【００７７】
【数８】
0005834395.tif 000009
【００７８】
一方、ステップＳ１０６で対象物が認識された場合は、ステップＳ２０４での判断が肯定され（ステップＳ２０４：Ｙｅｓ）、ＣＰＵ２１は、ステップＳ２０６へ移行し、推定距離ｚｅを算出距離ＺＥと認識する。そして、次のステップＳ２０７へ移行する。
【００７９】
また、ステップＳ２０２において、現在推定されている距離推定モードが２又は３である場合には、ＣＰＵ２１は、ステップＳ２０３へ移行する。
【００８０】
ステップＳ２０３では、ＣＰＵ２１は、次式（７）に示される演算を実行することによって、最新の車両と対象物との距離である算出距離ＺＥを算出する。なお、ｔＰは現在時刻であり、ｔＱは最新の推定距離ｚｅが算出される元となった画像ＰＨが撮影された時刻であり、Ｖは車速である。また、補正推定距離ｚｅ０１は、高精度距離が継続したと判断された時点において画像から推定される推定距離をｚｅｈａ、車速をＶ（ｍ／ｓｅｃ）、画像の撮影間隔をΔｔ（ｓｅｃ）、推定距離ｚｅ１と推定距離ｚｅ２との差（ｚｅ１−ｚｅ２）をΔｚ、ＡＶＧ（Ｘ）をＸの平均を算出する関数とすると、次式（８）で示される。なお、式（８）でのＡＶＧ（Ｖ・Δｔ／Δｚ）は、上記式（２）の条件がみたされたときの（Ｖ・Δｔ／Δｚ）の平均値を表す。換言すると、ＡＶＧ（Ｖ・Δｔ／Δｚ）は、上記式（２）で示される条件が満たされるごとに記憶される（Ｖ・Δｔ／Δｚ）の値の平均値である。
【００８１】
【数９】
0005834395.tif 000010
【数１０】
0005834395.tif 000011
【００８２】
ステップＳ２０７では、ＣＰＵ２１は、車両１００が対象物近傍で停止することが可能か否かを判断する。例えば、算出距離ＺＥと、車両１００の速度Ｖと、車両１００が対象物に到達するまでの時間ＴＴＣとの関係が、次式（９）に示される条件を満たす場合に、ＣＰＵ２１は、車両１００が対象物近傍で停止することができないと判断する（ステップＳ２０７：Ｎｏ）。この場合には、ＣＰＵ２１は、ステップＳ２０８へ移行し、ドライバーに警報を発する。この警報は、例えば、表示部２４にテキストを表示したり、外部に警告音或いは信号を発すること等が考えられる。
【００８３】
【数１１】
0005834395.tif 000012
【００８４】
一方、算出距離ＺＥと、車両１００の速度Ｖと、車両１００が対象物に到達するまでの時間ＴＴＣとの関係が、上記式（９）に示される条件を満たさない場合には、ＣＰＵ２１は、車両１００が対象物近傍で停止することができると判断する（ステップＳ２０７：Ｙｅｓ）。この場合には、ＣＰＵ２１はステップＳ２０９へ移行する。
【００８５】
ステップＳ２０９では、ＣＰＵ２１は、対象物を通過したか否かを判断する。この判断は、例えばある時刻ｔＲでの算出距離ＺＥＲと、時刻ｔＲから現在時刻ｔＰまでの走行距離Ｖ・（ｔＰ−ｔＲ）とを比較することにより行う。算出距離ＺＥＲよりも走行距離Ｖ・（ｔＰ−ｔＲ）の方が大きい場合には（ステップＳ２０９：Ｙｅｓ）、ＣＰＵ２１は、次のステップＳ２１０へ移行する。そして、ＣＰＵ２１は、距離推定モードを０に設定する。ＣＰＵ２１は、ステップＳ２１０の処理が完了すると、サブルーチン２００を終了し、ステップＳ１２０へ移行する。
【００８６】
一方、ステップＳ２０９において、算出距離ＺＥＲよりも走行距離Ｖ・（ｔＰ−ｔＲ）の方が小さい場合には（ステップＳ２０９：Ｎｏ）、ＣＰＵ２１は、サブルーチン２００を終了し、ステップＳ１２０へ移行する。
【００８７】
ステップＳ１２０では、ＣＰＵ２１は、今回の処理ステップにおける、推定した距離に関する情報等を補助記憶部２３へ保存する。ＣＰＵ２１は、ステップＳ１２０での処理が終了すると、ステップＳ１０２へ戻り、以降ステップＳ１０２〜Ｓ１２０までの処理を繰り返し実行する。
【００８８】
以上説明したように、本実施形態では、車両１００から対象物までの推定距離ｚｅが複数回算出されると、画像ＰＨｉを基準に算出された推定距離ｚｅｉと、画像ＰＨｉの次に撮影された画像ＰＨｊを基準に算出された推定距離ｚｅｊとの差が、画像ＰＨｉが撮影された時刻ｔｉから、画像ＰＨｊが撮影された時刻ｔｊまでの間に、車両１００が走行した走行距離Ｖ・ΔＴ（＝Ｖ・（ｔｊ−ｔｉ））と比較される（ステップＳ１１０，Ｓ１１７）。
【００８９】
車両１００の走行距離は、車速を積分することで正確に算出することができる。このため、推定距離の差と走行距離を比較し、双方がほぼ等しい場合には、推定距離が概ね正確であることがわかる。本実施形態では、推定距離が概ね正確で、妥当性があると判断された場合に、以降画像に基づいて算出された推定距離を用いることなく、妥当性のある推定距離から、正確に算出することが可能な走行距離を順次減算することにより、車両１００から対象物までの距離を更新する（ステップＳ２０３，Ｓ２０５）。このため、一度正確な距離が推定された後は、その後に画像に基づく距離の推定が困難な状況になっても、安定して車両１００から対象物までの距離を算出することができる。したがって、進行方向に存在する対象物までの距離を、精度良く推定することができる。
【００９０】
また、本実施形態では、車両１００から対象物までの距離の算出に、単眼の撮影装置によって撮影された画像ＰＨが用いられる。したがって、高価なステレオカメラを必要とせず、簡易な装置で進行方向に存在する対象物までの距離を推定することが可能となる。
【００９１】
また、本実施形態では、対象物が信号機７０である場合を例に挙げて説明を行った。これに限らず、例えば図９に示されるように、対象物は、道路の路側に位置する道路標識７１であってもよい。画像に写る道路標識７１も、信号機７０の検出と同様に、テンプレートを用いて行うことができる。
【００９２】
また、本実施形態では、ステップＳ１１６において、対象物の幅Ｗ１，Ｗ２の変化に基づいて、車両１００から対象物までの推定距離を算出した。これに限らず、対象物の高さに基づいて、車両１００から対象物までの推定距離を算出してもよい。
【００９３】
以上、本発明の実施形態について説明したが、本発明は上記実施形態によって限定されるものではない。
【００９４】
例えば、上記実施形態では、ＣＰＵ２１が補助記憶部に記憶されたプログラムを実行することにより、推定距離が算出された。これに限らず、演算装置２０を、ハードウェアによって構成してもよい。
【００９５】
また、演算装置２０の補助記憶部２３に記憶されているプログラムは、フレキシブルディスク、ＣＤ−ＲＯＭ（Compact Disk Read-Only Memory）、ＤＶＤ（Digital Versatile Disk）、ＭＯ（Magneto-Optical disk）等のコンピュータで読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータにインストールすることにより、上述の処理を実行する装置を構成することとしてもよい。
【００９６】
また、プログラムをインターネット等の通信ネットワーク上の所定のサーバ装置が有するディスク装置等に格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するようにしても良い。
【００９７】
なお、本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。
【産業上の利用可能性】
【００９８】
本発明の距離推定装置、距離推定方法及びプログラムは、車両の前方に存在する対象物までの距離を推定するのに適している。
【符号の説明】
【００９９】
１０  距離推定装置
２０  演算装置
２１  ＣＰＵ
２２  主記憶部
２３  補助記憶部
２４  表示部
２５  入力部
２６  インターフェイス部
２７  システムバス
３１  撮影装置
３２  速度計測装置
７０  信号機
７１  道路標識
１００  車両
２００  サブルーチン
７００  マーク
ＦＣ  焦点
Ｐ０  無限遠点
ＰＡ  検出処理領域
ＰＨ  画像
【図１】
0005834395.tif 000015
【図２】
0005834395.tif 000016
【図３】
0005834395.tif 000017
【図４】
0005834395.tif 000018
【図５】
0005834395.tif 000019
【図６】
0005834395.tif 000020
【図７】
0005834395.tif 000021
【図８】
0005834395.tif 000022
【図９】
0005834395.tif 000023