JP3143814B2 - 車両前方の物体の距離検出方法 - Google Patents

車両前方の物体の距離検出方法

Info

Publication number
JP3143814B2
JP3143814B2 JP05007019A JP701993A JP3143814B2 JP 3143814 B2 JP3143814 B2 JP 3143814B2 JP 05007019 A JP05007019 A JP 05007019A JP 701993 A JP701993 A JP 701993A JP 3143814 B2 JP3143814 B2 JP 3143814B2
Authority
JP
Japan
Prior art keywords
vehicle
value
polar coordinate
data
screen
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP05007019A
Other languages
English (en)
Other versions
JPH06215291A (ja
Inventor
藤 淳 佐
木 充 義 斉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Aisin Corp
Original Assignee
Aisin Seiki Co Ltd
Aisin Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Aisin Seiki Co Ltd, Aisin Corp filed Critical Aisin Seiki Co Ltd
Priority to JP05007019A priority Critical patent/JP3143814B2/ja
Publication of JPH06215291A publication Critical patent/JPH06215291A/ja
Application granted granted Critical
Publication of JP3143814B2 publication Critical patent/JP3143814B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Measurement Of Optical Distance (AREA)
  • Navigation (AREA)
  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Traffic Control Systems (AREA)
  • Image Analysis (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、車両に搭載した撮影装
置で車両前方を撮影し、撮影画面上の路面上物体を画像
処理技術により検出し、この物体の該車両からの距離
を、撮影画面上での幾何学的計算により算出する方法に
関する。
【0002】
【従来の技術】この種の距離検出の一例が、特開昭64-1
5605号公報および特開平1-242916号公報に開示されてい
る。これにおいては、車両に搭載された撮影装置で得
た、車両前方の路面を含むシ−ンをX,Y直交座標系画
面に表わす画像デ−タの、X軸に対して45度の角度をな
す方向の微分値を算出してそれが設定値以上のX,Y直
交座標上の位置を特徴点として、特徴点の連なりを細線
に処理し、所定長以上の細線を摘出して、車両上のテレ
ビカメラから前方を撮影した場合の、画面上の白線の特
徴に基づいて設定された条件を満す細線を、路面上の白
線と認識する。すなわち自車が走行中のレ−ンの左,右
端白線を表わす二直線を得る。二直線の交点を求めて、
該交点から自車両までの二直線間の領域で物体(物体に
よる路面上の暗点)の存否を検出し、物体を検出すると
自車両から該物体(路上暗点)までの距離(物体が先行
車両であると車間距離)を、三角測量法に従って算出す
る。
【0003】
【発明が解決しようとする課題】前方の路面が上下に変
化していたり、カ−ブやバンクの付いた道路では、撮影
装置の視野,路面および前方物体(先行車両の路面上の
影)の幾何学的位置関係が、三角測量の前提条件から外
れ、算出した距離(車間距離)の誤差が大きくなる。
【0004】一方、自車レ−ンの左,右白線の検出にお
いても、前述の従来の検出方法では、路面が比較的に暗
い場合や白線が消耗している場合には、路面状態が、前
記条件の前提となる路面状態と異なり、誤認識の確率が
高くなるとか、検出不能となる確率が高い。
【0005】本発明は、距離検出誤差、特に道路の登り
下り等による大きな距離検出誤差を低減することを第1
目的とし、距離検出の前提となる自車走行レ−ン前方物
体の検出のための、レ−ン左,右端白線検出の精度を高
くすることを第2の目的とする。
【0006】
【課題を解決するための手段】本発明は、車両に搭載さ
れた撮影装置より所定周期で繰返し得る、車両前方の路
面を含むシ−ンをX,Y直交座標系画面に表わす画像デ
−タに基づいて、車両前方の路面上の物体を検出し、前
記撮像装置からの前記物体の距離を算出する、車両前方
の物体の距離検出方法において、該所定周期で得る各時
点の画像デ−タが表わす画面上の、路面上物体を検出
し、該物体の画面上の寸法Wvを算出し、この寸法Wv,
メモリ手段に保持する実物寸法Wv3Dおよび前記撮影装
置のスケ−ルファクタSxに基づいて、前記実物寸法Wv
3Dが前記画面上の寸法Wvで現われる、前記撮影装置か
らの前記物体の距離L2(0) L2(0)=Wv3D×Sx/Wv 算出することを特徴とする。
【0007】本発明の好ましい実施例では、前方物体の
検出領域を自車レ−ンの左,右端白線の間の領域とし、
これらの白線を近似する直線を、公知のハフ変換を利用
して検出する。すなわち、特徴点(Xs,Ys)のそれぞれ
を、ρ,θ極座標系の極座標値(ρ,θ)に変換し、極
座標値(ρ,θ)に割当てた記憶手段の度数デ−タをイ
ンクレメントし、度数デ−タが最大値となった極座標値
(ρm,θm)を摘出してこの極座標値(ρm,θm)で表
わされる直線を、左,右端白線を表わす二直線の一方と
して決定する。この直線検出の演算処理時間を短くしか
つ検出精度を高くするために、本発明の好ましい実施例
では、前記極座標変換を複数回繰返し、この繰返しにお
いてρ,θは、先行の極座標変換では低密度かつ広い範
囲とし、後行の極座標変換では高密度かつ先行の極座標
変換で得た極座標値(ρm,θm)を中心とする狭い範囲
とする。
【0008】
【作用】撮影装置を搭載した車両(以下自車両と称す)
の前方の路上にある物体(代表的には先行車両)の、該
撮影装置の撮影画面上の寸法Wvは、実際の寸法Wv3
比例し、撮影装置のスケ−ルファクタSxに比例し、撮
影装置からの距離L2(0)に反比例する。したがって、距
離L2(0)は、画面上の寸法Wv,実際の寸法Wv3および
スケ−ルファクタSxに基づいて L2(0)=Wv3D×Sx/Wv 算出でき、この算出値は、路面の上下(登り/下
り),カ−ブ,バンク等に影響されない。すなわち、実
際の寸法Wv3が正確に与えられると、該算出値は信頼性
が高い。したがって本発明によれば、原理的に、信頼性
が高い距離値が得られる。
【0009】ところで、自車両の前方物体の実際の寸法
(Wv3)は、特定車両のみの走行が定められた特定の道
路又はレ−ンでは、道路規則又はレ−ン規則に規定され
た車幅(又は車高、あるいは両者)をメモリ手段に固定
的に保持し、実際の寸法(Wv3)が必要なときに該メモ
リ手段より読み出せばよい。しかし、乗用車,貨物トラ
ック,各種作業車等々が走行する一般道路例えば高速道
路では、車両の寸法(Wv3)は多様であり、現在自車両
の直前を走行中の先行車両の実際の寸法(Wv3)の確
保が必要であり、また、自車両が走行レ−ンを変えた
り、割込みがあったり、先行車両が走行レ−ンを変えた
場合には、実際の寸法(Wv3)の切換えが必要とな
る。
【0010】そこで本発明の好ましい実施例では、算出
した画面上の寸法(Wv)を実物寸法に変換し、この寸法
値を前記メモリ手段に保持する実物寸法(Wv3D)と重み
付け平均して得た値を、前記メモリ手段に更新記憶す
る。これによれば、メモリ手段が保持する実物寸法(Wv
3D)が学習更新されるので、先行車両が変わると自動的
にメモリ手段が保持する実物寸法(Wv3D)が、変わった
先行車両のものに切換わって行く。
【0011】本発明の好ましい実施例では、ハフ変換を
用いて自車レ−ンの左,右端白線の検出を行なうので、
検出精度が向上し、また、複数回の極座標変換を、広範
囲,粗いピッチから、順次に挟い範囲,密なるピッチで
行なうので、直線検出処理時間が短く、かつ検出精度が
高い。本発明の他の目的および特徴は、図面を参照した
以下の実施例の説明より明らかになろう。
【0012】
【実施例】図1に本発明の一実施例の構成を示す。この
システムはマイクロコンピュ−タ(以下CPUという)
1を中心に構成されており、そのバスラインには、制御
プログラムが格納された読み出し専用メモリ(ROM)
2,処理中のパラメ−タが格納される読み書きメモリ
(RAM)3、および、各種構成要素が接続された入出
力ポ−ト(I/O)4,5,6等が接続されている。
【0013】テレビカメラ6bは、図2に示すように、
車内のフロントウィンドウの中央上部付近に設置されて
おり、前方のシ−ンを撮影して1フレ−ム当り512×
512画素のアナログ信号を出力する。このアナログ画
信号は、A/Dコンバ−タ6cおよびCRTドライバ4
aに与えられる。A/Dコンバ−タ6cにおいては、テ
レビカメラ6bよりのアナログ画信号を各画素毎に25
6階調(階調0が黒レベル、階調255が白レベル)の
デジタルデ−タ(階調デ−タ)に変換してイメ−ジメモ
リ5aに与える。なお、イメ−ジメモリ5aは、一画面
(512×512画素)の階調デ−タを記憶する領域を
一頁とするとその数頁分の階調デ−タ記憶領域と、1ビ
ット情報(2値デ−タ)を数画面分記憶する2値デ−タ
記憶領域を有する。
【0014】CPU1は、テレビカメラコントロ−ラ6
aを介してテレビカメラ6bの絞りおよび画信号の出力
レベル等を制御し、A/Dコンバ−タ6cの入出力およ
びイメ−ジメモリ5aの書込み処理等を同期制御する。
CRTドライバ4aは、テレビカメラ6bより与えられ
たアナログ画信号が表わす画像(例えば図16)に、C
PU1のコントロ−ルのもとに与えられるデジタル画像
(デジタル出力画像;例えば自車走行レ−ンの左,右端
の白線を近似した直線ならびに前方走行車両との車間距
離を示す文字,数字情報)を合成した画像を、車両上の
インナ−パネルの中央付近に設置されたCRT4bに表
示する。
【0015】図3に、CPU1の処理動作の概要を示
す。大略でCPU1は、それ自身に電源が投入されると
入出力ポ−トの初期化,内部レジスタ,内部カウンタの
初期化等(初期化A)を行なった後、一画面のアナログ
画信号を所定周期でデジタル変換してイメ−ジメモリ5
aの入力デ−タメモリ領域に書込む(画像入力B)。こ
れを行なう毎にCPU1は、「画面の校正」C,「自車
レ−ン検出」Dおよび自車レ−ン検出の成否チェック
E、ならびに、自車レ−ン検出が成立(成功)した場合
は「隣接レ−ンの推定」F,「カ−ブ推定」G,「自車
レ−ン先行車認識及び測距」H,「右隣接レ−ン車両認
識及び測距」I,「左隣接レ−ン車両認識及び測距」J
および「出力」Kを、この記載順に実行する。
【0016】そして「出力」Kでは、自車レ−ン端部の
白線を表わす直線,自車レ−ン先行車の検出有無を示す
文字情報,該先行車を囲む4角マ−クおよび該先行車と
の車間距離、右隣接レ−ン車両の検出有無を示す文字情
報,該先行車を囲む4角マ−クおよび該先行車との車間
距離、ならびに、左隣接レ−ン車両の検出有無を示す文
字情報,該先行車を囲む4角マ−クおよび該先行車との
車間距離、を撮影画像に合成してCRT4bに更新表示
すると共に、自車レ−ン端部の白線を表わす直線を示す
デ−タならびに各車間距離を表わすデ−タを、通信コン
トロ−ラ7(図1)を介してホストCPU8に転送す
る。ホストCPU8は、これらの情報を、車間距離制御
(車間距離対応のアクセル制御,オ−バドライブ遮断制
御および又は車輪ブレ−キ圧制御),障害物検知&車輪
ブレ−キ圧制御,レ−ン逸脱警報制御,レ−ン倣い走行
制御(ステアリング制御および又は各輪毎の車輪ブレ−
キ圧制御)等の、走行自動制御に使用する。以下、図3
に示す「画面の校正」C以下「左隣接レ−ン車両認識及
び測距」Jの各項目の内容を詳細に説明する。
【0017】C.「画面の校正」C(図4) この内容を図4に示す。まず「特徴点検出ウィンドウセ
ット」C1を実行する。
【0018】 C1.「特徴点検出ウィンドウ1セット」C1(図5) この内容を図5の(a)に示す。図5の(b)に示すよ
うに、テレビカメラ6bの撮影画面(画像デ−タは入力
デ−タメモリにある階調デ−タ)の左上を原点(0,
0)に定めて、一点(0,350)ともう一点(51
1,511)を対角コ−ナとする画像領域を特徴点検出
用の領域(ウィンドウ1)に定める。すなわち、定めよ
うとする領域の左上コ−ナのX座標値0をレジスタXU
Lに、Y座標値350をレジスタYULに、該領域の右
下コ−ナのX座標値511をレジスタXLRに、Y座標
値511をレジスタYLRに書込む(図5の(a)のス
テップ1;以下カッコ内ではステップという語は省略
し、ステップNo.のみを記す)。これらのレジスタの
それぞれのデ−タが示す値を以下、レジスタ記号そのも
ので表わす。
【0019】次に説明する「特徴点検出(UP)」C2
の処理(図6)に対して、上述の「特徴点検出ウィンド
ウセット」C1により、図5の(b)に示すように、2
点鎖線で示すブロック(特徴点検出ウィンドウ1)が、
処理対象領域に指定されたことになる。この領域は、図
5の(b)に示すように、車両のボンネットの先端エッ
ジ像を十分に含むものである。
【0020】次に「特徴点検出(UP)」C2を実行す
る。この内容を図6に示す。
【0021】 C2.「特徴点検出(UP)」C2(図6) ここでは、特徴点検出ウィンドウ1の左下コ−ナ(0,
511)よりY方向2画素上方の画素(0,509)か
ら、Y方向座標値を350まで順次小さくするY方向の
下から上への走査により、該方向(X=0の直線上)に
分布する画素を順次に注目画素に指定して(図6のaの
2〜11)、各注目画素(Xs,Ys)に関して、それ
より1画素下側の画素(Xs,Ys+1)と2画素下側
の画素(Xs,Ys+2)の階調デ−タが表わす輝度の
和と、注目画素(Xs,Ys)より1画素上側の画素
(Xs,Ys−1)と2画素上側の画素(Xs,Ys−
2)の、入力デ−タメモリにある階調デ−タが表わす輝
度の和、の差の絶対値すなわち上下方向(Y方向)の階
調微分値の絶対値を算出する(8)。これを注目画素点
(Xs,Ys)の階調微分値D(Xs,Ys)とする。
この階調微分値D(Xs,Ys)は、図6の(b)に示
すように、注目点(Xs,Ys)の上側2画素の画像濃
度和と下側2画素の画像濃度和との差の絶対値であるの
で、注目点を境にした上下方向の濃度変化を表わし、画
面上の各像の、水平方向に延びる輪郭線のところで大き
い値となる。この階調微分値D(Xs,Ys)がしきい
値Th1(設定値)以上であるかをチェックして
(9)、Th1以上であると、イメ−ジメモリ5aのあ
る領域に割り当てている2値デ−タテ−ブルの、注目画
素点(Xs,Ys)対応アドレスE(Xs,Ys)に、
「1」を書込む(10)。この情報「1」は、像の水平
方向に延びる輪郭線であることを意味する。Y方向にこ
のような処理を一ライン分(X=0,Y=509〜35
0)行なうと、走査線を右方向に移して(6)、次の一
ライン分(X=1,Y=509〜350)につき同様な
処理を行なう。以下同様に、最後のライン(X=51
1,Y=509〜350)まで同様な処理を行なう。
【0022】以上の処理により、イメ−ジメモリ5aの
2値デ−タテ−ブルE(Xs,Ys),Xs=0〜51
1,Ys=509〜350)に、特徴点検出ウィンドウ
1(図5のb)内の像の水平方向に延びる輪郭線を示す
情報が書込まれたことになる。特徴点検出ウィンドウ1
は、ボンネットの先端エッジ像を含む領域に設定されて
いるので、2値デ−タテ−ブルE(Xs,Ys)にはボ
ンネットの先端エッジを表わす情報が含まれている。こ
の実施例では、ボンネットの先端エッジを直線と見なし
て、次の「ボンネット検出」C3で該直線を検出する。
この内容を図7に示す。
【0023】C3.「ボンネット検出」C3(図7) まず大要を説明するとここでは、公知の「ハフ(Houg
h)変換」を用いて直線を検出する。ハフ変換は、直交
座標系(X−Y座標系;例えば特徴点検出ウィンドウ1
内の画素分布)で表現されている情報(例えば前記2値
デ−タテ−ブルE(Xs,Ys))を、極座標系(ρ−
θ座標系)で表現する手法であり、 ρ=Xcos(θ)+Ysin(θ) の変換を行なう。X−Y座標系におけるある一点(画
素)はρ−θ極座標系(ρとθを直交2軸の一方と他方
に割り当てる直交座標平面)ではある曲線となり、X−
Y座標系において直線上に乗っている各点をρ−θ座標
系で各曲線で表わすと、これらの曲線は一点で交わる。
この交点をX−Y座標系への変換式に代入することによ
り、X−Y座標系での直線式が得られる。
【0024】したがって、前記2値デ−タテ−ブルE
(Xs,Ys)上の特徴点情報「1」を有する座標をρ
−θ極座標値に変換し、ρ−θ極座標系において曲線の
交点を求め、この交点をX−Y座標系への変換式に代入
することにより、特徴点を結ぶ直線を求めることができ
る。しかし、単に2点を結ぶ直線はX−Y座標系で直接
に求めることができ、ρ−θ極座標系への変換を行なう
意味はない。ところが、画面上のボンネット輪郭線は、
実際のボンネットの先端輪郭線がカ−ブしているとか、
ボンネットへの光の当り具合などにより画面上カ−ブし
ているとかあるいは粗れており、ボンネット輪郭線を直
線で近似する場合、単に2値デ−タテ−ブルE(Xs,
Ys)上の特徴点情報「1」がある2点を結ぶ直線を求
めたのでは、近似誤差が大き過ぎるし、ボンネットでな
いものの輪郭線を摘出してしまうこともあり得る。図5
の(b)および図16に示すように、ボンネット輪郭線
は広い領域に分布しているので、2値デ−タテ−ブルE
(Xs,Ys)上には特徴点情報「1」が多く存在す
る。したがって、該「1」がある2点(画素)を結ぶ直
線は多数得られる。多数得た直線群を代表する右下りの
一直線を確定すると、それはボンネットの先端輪郭線の
右半分を最も良く近似するものである(図7のb)。同
様に、多数得た直線群を代表する左下りの一直線を確定
すると、それはボンネットの先端輪郭線の左半分を最も
良く近似するものである(図7のb)。しかしながらこ
のような統計的処理をX−Y座標系で行なうと処理がき
わめて複雑となる。ところがハフ変換を用いて、2値デ
−タテ−ブルE(Xs,Ys)上の特徴点情報「1」が
ある座標(特徴点)をρ−θ極座標系へ変換すると、各
特徴点を表わす曲線の交点が2点(ボンネットの右半分
輪郭線と左半分輪郭線に対応)に集中する。したがって
2値デ−タテ−ブルE(Xs,Ys)の特徴点をハフ変
換し、ρ−θ極座標系上の各点で、曲線が通る度数(一
点を通る曲線の数)をカウントし、度数が最大の点と次
に大きい点の二点を選択して、選択した各点をX−Y座
標系への変換式に代入することによりボンネットの輪郭
線の右半分,左半分を表わす直線式が得られる。この実
施例ではこのような論理に従って、すなわちハフ変換と
ρ−θ極座標系上各点を曲線が通る度数のカウントによ
り、ボンネットの先端輪郭線を検出する。
【0025】ところで、ρ−θ極座標系上各点での曲線
交鎖度数のカウントを、2値デ−タテ−ブルE(Xs,
Ys)のサイズ対応の大きさのρ−θ極座標系全領域の
各点で行なうと、曲線が通る度数のカウント処理が膨大
となり、直線検出処理に長い時間がかかる。そこでこの
実施例では、2値デ−タテ−ブルE(Xs,Ys)の最
下端の左右中間点(X=255,Y=511)をρ−θ
極座標系の原点(0,0)に定め、かつ、2値デ−タテ
−ブルE(Xs,Ys)を左右に2分して、右半分につ
いて、第1ハフ変換で、2値デ−タテ−ブルE(Xs,
Ys)の特徴点を、低密度(サンプリングピッチが大き
い)ρ−θ極座標系に変換して該極座標系の各点を曲線
が通る度数(一点を通る曲線の数)をカウントし、度数
が最大の点(第1予測点)を求める。次に第2ハフ変換
で、第1予測点を中心とする小範囲のρ−θ領域を設定
し、該領域の大きさの中密度ρ−θ極座標系に2値デ−
タテ−ブルE(Xs,Ys)の特徴点を変換してこのρ
−θ極座標系の各点を曲線が通る度数をカウントし、度
数が最大の点(第2予測点)を求める。そして第3ハフ
変換で、第2予測点を中心とする更に小範囲のρ−θ領
域を設定し、該領域の大きさの高密度ρ−θ極座標系に
2値デ−タテ−ブルE(Xs,Ys)の特徴点を変換し
てこのρ−θ極座標系の各点を曲線が通る度数をカウン
トし、度数が最大の点(第3予測点)を求める。そして
この第3予測点で表わされる直線をボンネットの先端輪
郭線の右半分と決定する(図7の12R〜14R)。2
値デ−タテ−ブルE(Xs,Ys)の左半分について
も、同様に第1ハフ変換,第2ハフ変換および第3ハフ
変換を行って、ボンネットの先端輪郭線の左半分を表わ
す直線を決定する(図7の12L〜14L)。
【0026】次に図7の(a)を参照して、「ボンネッ
ト検出」C3の内容を詳細に説明する。まずボンネット
の先端輪郭線の右半分を近似する直線を検出するための
パラメ−タを設定する(12R)。そして該近似する直
線対応の点(Rm3,Tm3)を検出する(13R)。Rm3
はρ−θ極座標系のρ値、Tm3はθ値である。求めた点
の座標値をレジスタRmR,TmRに格納する(14R)。
同様な処理をボンネットの先端輪郭線の左半分を近似す
る直線を検出するために行なう(12L〜14L)。ハ
フ変換により直線を検出する「直線当てはめ」13R,
13Lの内容は、図17〜図21に示す「直線当ては
め」63Rの内容と同様であるので、ここでの詳細な説
明は省略する。なお、「直線当てはめ」63Rでは、特
徴点検出ウィンドウ1に接して上側の特徴点検出ウィン
ドウ2(図16)の右半分の領域にある路上の白線像の
近似直線を検出するものであるが、「直線当てはめ」1
3Rはウィンドウ1の右半分の領域の直線を検出するも
のであるので、処理対象のX−Y座標領域(始点座標値
および終点座標値)は異なる。「直線当てはめ」13L
でも同様に処理対象のX−Y座標領域が「直線当ては
め」63Rとは異なる。他の処理は同様である。
【0027】「直線当てはめ」13Rおよび13Lで求
めた直線それぞれは、極座標系の点(RmR,TmR)およ
び(RmL,TmL)で表わされ、これらの直線をX−Y座
標系で表わすと、 RmR=Xcos(TmR)+Ysin(TmR) および RmL=Xcos(TmL)+Ysin(TmL) となる。これらの直線は、図7の(b)に示す如きもの
である。
【0028】C4.「直線交点計算」C4(図8) 図4を再度参照するとCPU1は、上述の「ボンネット
検出」C3を終了すると、「直線交点計算」C4のブロ
ックに接したブロック中に示す計算で、これらの直線の
交点(Xc,Yc)を算出する。この計算において、X
chは2値デ−タテ−ブルE(Xs,Ys)の領域のX
方向中央位置(Xch=255)、Ychは最下端位置
(Ych=509)であり、点(Xch,Ych)は前
述の直線検出で極座標原点に定めたものである。
【0029】 C5.「ロ−ル角,パン移動量計算」C5(図8) ここでロ−ル角とは、図8の(a)に示すように、前記
検出した2直線の交わる角を2等分する直線(車両の縦
軸線)と撮影画面のY軸線とのなす角θrであり、テレ
ビカメラ6bの視野中心線と車両の縦軸線が、それらを
水平面に投影した場合になす角度、すなわちテレビカメ
ラ6bの視野中心線の、車両の縦軸線に対するロ−ル方
向のずれ角である。パン移動量Xpは、撮影画面上で
の、該画面を左右に2等分する縦軸線に対する、ボンネ
ット先端中央(前記2直線の交点)の横方向ずれ量であ
る。自車から進行方向前方の車両(先行車両)を見てこ
の車両との車間距離を算出する場合、ロ−ル角θrある
いはパン移動量Xpが大きいと、自車の進行方向から外
れた方向にある車両や物体を自車レ−ン(自車が走行し
ているレ−ン)上の車両等と誤認する確率が高くなる。
この確率を下げるためにはロ−ル角θrおよびパン移動
量Xpが共に零となるように、カメラ6bの取付角を調
整すればよいが、この調整はむつかしくわずらわしい。
したがってある程度のロ−ル角θrおよびパン移動量X
pは避けられない。そこでこの実施例では、「画面の校
正」Cにより、画面上でロ−ル角θrおよびパン移動量
Xpを零に調整するが、この調整代の算出のために、前
述のC1〜C4の処理を行ない、かつここで説明する
「ロ−ル角,パン移動量計算」C5を行なう。ロ−ル角
θrおよびパン移動量Xpの計算式を、図4のブロック
C5に接するブロックに示す。算出したロ−ル角θrは
ロ−ル角レジスタθrに、算出したパン移動量Xpはパ
ン移動量レジスタXpに格納する。
【0030】C6〜8.「画像補正」C6〜8(図4) そして、次の、「補正画像メモリイニシャライズ」C
6,「画像回転平行移動」C7および「補間」C8を含
む「画像補正」により、イメ−ジメモリ5aの、入力デ
−タメモリ(1画面分の階調デ−タ記憶領域)の各画素
の階調デ−タのアドレス(図8の(b)のx,y)を、
ロ−ル角θrおよびパン移動量Xpに対応する回転およ
び平行移動を行なったアドレス(θr=0,Xp=0で
撮影画像を表わす画面座標系のアドレス;図8の(b)
のx’,y’)に変換して、入力デ−タメモリ対応の補
正画像メモリ(イメ−ジメモリ5aの、1画面分の階調
デ−タ記憶領域)に書込む(C6,C7)。
【0031】 C6.「補正画像メモリイニシャライズ」C6(図9) このような回転および平行移動を行なうと、補正した画
面に階調デ−タが存在しない画素が生ずる。このような
画素を後に認識しうるように、「補正画像メモリイニシ
ャライズ」C6では、補正画像メモリの全アドレスに、
撮影画像デ−タ(階調デ−タ)には存在しない「−1」
を表わすデ−タを書込む。その処理の詳細を図9に示
す。
【0032】 C7.「画像回転平行移動」C7(図10) この処理内容を図10に示す。これにおいては、入力デ
−タメモリのアドレス(x,y);x=0〜511,y
=0〜511、のそれぞれを、θr=0,Xp=0で撮
影画像を表わす画面座標系(補正画像メモリ)のアドレス
(x',y');x'=0〜511,y'=0〜511、に変
換して(22〜28,30〜33)、入力デ−タメモリ
のアドレス(x,y)の階調デ−タを、補正画像メモリ
の、該アドレス(x,y)を変換したアドレス(x',
y')に書込む(29)。これにより、補正画像メモリの
階調デ−タをCRT4bに表示すると、図8の(a)に
示すロ−ル角θrおよびパン移動量Xp共に実質上零
の、図16に示す如き画像が表示される。ただし、この
「画像回転平行移動」により、補正画像メモリ上には、
階調デ−タが存在しないアドレス(画素=空白画素)が
生じることがあり、その場合そこには、上述の「補正画
像メモリイニシャライズ」C6により、「−1」を示す
デ−タが残存していることになる。
【0033】 C8.「補間」C8(図11のa&図12) 「補間」C8では、階調デ−タが存在しない画素に、そ
の周りの4画素の階調デ−タの平均値を割り当てる。周
り4画素のいずれかが空白画素であると、この割り当て
はしない。この「補間」C8の内容を図11の(a)お
よび図12に示す。これにおいては、補正画像メモリの
アドレス(画素)を順次に指定して、指定した画素(注
目画素)が空白画素(メモリデ−タが「−1」を示すも
の)であるかをチェックして(36)、注目画素が空白
画素であると、図11の(b)に示すように、その左隣
りの画素ロ,右隣りの画素ハ,上側の画素イおよび下側
の画素ニに階調デ−タがあるかをこの順にチェックし、
これら4個の画素の1つでも空白画素であるとそこで、
該注目画素に対する処理は終了(空白画素のまま放置)
し、注目画素を次に移す(39−42,42−46,4
6−50,50−54)。前記4画素を1つづつ階調デ
−タがあるかチェックしたとき、階調デ−タがあるとそ
れを累算レジスタIsの内容に加算し、得た和を累算レ
ジスタIsに更新メモリし(40,44,48,5
2)、回数レジスタNsの内容を1インクレメントする
(41,45,49,53)。前記4個の画素のすべて
についてこれを終了すると、これらの画素の階調デ−タ
の平均値Ic(x,y)を算出して、注目画素にメモリ
する(54,55)。
【0034】以上で、「画面の校正」C(図3)を終了
し、CPU1は次に「自車レ−ン検出」Dを実行する。
【0035】D.「自車レ−ン検出」D(図13) この内容を図13に示す。まず「特徴点検出ウィンドウ
2セット」D1を実行する。
【0036】D1.「特徴点検出ウィンドウ2セット」
D1(図14) この内容は、前述の「特徴点検出ウィンドウ1セット」
C1(図5)と類似であるが、ウィンドウ2のサイズと
位置がウィンドウ1とは異なり、しかも、ウィンドウ2
を適用するメモリは補正画像メモリである。図14およ
び図16に示すように、ウィンドウ2は、ウィンドウ1
の上側に設定される。
【0037】D2.「特徴点検出(UP)」D2 ウィンドウ2を設定すると、補正画像メモリ上の該ウィ
ンドウ2内の特徴点を検出する。この内容は前述の「特
徴点検出(UP)」C2と同様であり、「特徴点検出
(UP)」D2でも特徴点を表わす「1」情報は、2値
デ−タテ−ブルE(Xs,Ys)に書込む。ただし、検
出領域がウィンドウ2である点、および、処理対象デ−
タが補正画像メモリ上のデ−タである点、が異なる。
【0038】D3.「左右白線検出」D3(図15) ここでも前述の「ボンネット検出」C3と類似の処理
で、自車レ−ンの右端白線を近似する直線および左端白
線を近似する直線を検出する。ただし、ウィンドウ2が
ウィンドウ1とサイズおよび位置が異なるので、極座標
原点が異なる(図16)。先の「ボンネット検出」C3
では、「直線当てはめ」13R,13Lの内容の詳細な
説明を省略しているので、ここで、「直線当てはめ」6
3Rの内容を、詳細に説明する。
【0039】 63R.「直線当てはめ」63R(図17&図18) この内容を図17および図18に示す。なお、「直線当
てはめ」63Rは、ウインドウ2の右半分に対して適用
される点に注意されたい。ここではまず、2値デ−タテ
−ブルE(Xs,Ys)上の特徴点をρ−θ極座標系に
変換してこの座標系の各点(r,t)の曲線が通る度数
カウント値を書込む、イメ−ジメモリ5aのある領域に
割り当てたデ−タテ−ブルHGn(r,t)、ここでは
n=1、のデ−タをクリアする(図17の65;詳細は
図19)。次にハフ変換パラメ−タ(変換領域およびハ
フ変換密度)を設定し(図17の66)、第1回のハフ
変換(HG1)を行なう(図17の67;詳細は図2
0)。
【0040】「ハフ変換(HG1)」67(図20) 図20を参照する。これにおいては、2値デ−タテ−ブ
ルE(Xs,Ys)の、補正画像メモリ対応の一画面の
中のウィンドウ2対応領域の右半分、すなわち始点が
(150,255)、終点が(511,350)の領
域、に特徴点(「1」情報)があるかをチェックする
(87〜89,95〜98)。特徴点がある毎に、該点
を、X−Y座標上で原点が(Xch=255,Ych=
350)、θが0〜π/2の範囲、かつ、θの単位が
(π/2)×(1/32)の極座標ρ−θ上の位置
(r,t)、t=0〜31、rは図20のステップ91
のブロック中に示す演算式で算出される値、に変換し、
データテーブルHGn(ここではn=1)の、位置
(r,t)対応のアドレスのデータを1インクレメント
する(90〜94)。前に説明したように、X−Y座標
上の一点は極座標ρ−θに変換すると極座標ρ−θ上で
は曲線となるので、前記変換された位置(r,t)は、
t=0〜31のそれぞれに対応する32個(それらの連
なりが曲線)となる。データテーブルHGnの、これら
の位置(r,t)に割り当てたアドレスのデータが1イ
ンクレメントされるので、各アドレスのデータは、X−
Y座標上の特徴点それぞれの、ρ−θ座標上の曲線が通
る度数を表わすことになる。
【0041】図20のステップ91は、 r={(Xs−Xch)・cos〔(t・(Te−Ts)/Td)+Ts〕+ (Ych−Ys)・sin〔(t・(Te−Ts)/Td)+Ts〕−Rs}×Rd/(Re−Rs)・・・(1) を算出して、算出値rをレジスタrに格納することを意
味する。この(1)式を変形すると次の(1a)式となる。
【0042】 r/Rd/(Re−Rs)+Rs= (Xs−Xch)・cos〔(t・(Te−Ts)/Td)+Ts〕 +(Ych−Ys)・sin〔(t・(Te−Ts)/Td)+Ts〕 ・・・(1a) これは次の(1b)式で表わすことができる。
【0043】 r/d+c= (Xs−Xch)・cos(a・t+b) +(Ych−Ys)・sin(a・t+b) ・・・(1b) ここで、a=(Te−Ts)/Td,b=Ts,c=Rs,d=Rd/
(Re−Rs)である。
【0044】この(1)式において、(Xch,Ych)は、極座標
原点のX−Y座標上の位置であり、ここでは Xch=255、Ych=350 である。Xsは特徴点の、X−Y座標上のX座標値、Y
sはY座標値である。
【0045】ここで、 θ=〔(t・(Te−Ts)/Td)+Ts〕 と表わすと、図15のステップ62Rと図17のステッ
プ66での設定により、 (Te−Ts)/Td=(π/2)/32、 Ts=0 であるので、 θ=t・(π/2)/32 =(π/64)t a=π/64,b=0,c=0,d=1/8 であり、t=0〜31であるので、θ=0,θ=π/6
4,θ=2π/64,θ=3π/64,・・・,31π
/64と、π/64を最小単位として32点のρ値rが
算出される。すなわちこの第1ハフ変換では、ウィンド
ウ2の右半分の領域の特徴点各点が、θがπ/64を最
小単位とし、かつ0以上π/2未満の範囲の極座標平面
上の位置(r,t)に変換される。
【0046】上記(1)式の、Rd/(Re−Rs)は、図15のス
テップ62Rと図17のステップ66での設定により、 Rd/(Re−Rs)=32/256 である。これは、θ=π/64をtの1単位としている
ので、すなわち、π/2を32分割しているので、これ
に対応してρの範囲0〜256も同様に32分割するも
のである。すなわちrの一単位は256/32である。
【0047】要約すると、「ハフ変換(HG1)」67
では、(1)式は具体的には次の(1-1)式である。
【0048】 r={(Xs−255)・cos〔(t・(π/64)〕+(350−Ys)・sin〔(t・(π/64)〕}×1/ 8 ・・・(1-1) これを(1b)式の形に変形して、 r/d1+c1= (Xs−Xch)・cos(a1・t+b1) +(Ych−Ys)・sin(a1・t+b1) ・・・(1-1b) で表わすと、a1=π/64,b1=0,c1=0,d1
1/8 である。
【0049】このように第1ハフ変換では、ρ−θ極座
標のθの単位をπ/64と粗いものとし、しかもρの単
位を256/32と粗いものとしているので、1つの特
徴点(Xs,Ys)をρ−θ極座標に変換する演算回数
(tの切換回数32すなわち(1)式の演算を行なう回数)
が極く少く、rデータビット数が少く、特徴点各点をρ
−θ極座標へ変換する速度が速く、かつ、度数カウント
処理速度が速い。
【0050】図17を再度参照すると、CPU1は、第
1回のハフ変換である「ハフ変換(HG1)」67を終
了すると、「最大点探索(HG1)」68を実行する。
その内容を図21に示す。
【0051】「最大点探索(HG1)」68(図21) 前述のデータテーブルHGn(ここではn=1)の各ア
ドレス(r,t)のデータ(度数)を順次に読出して
(図21の99,100,105〜108)、読出した
データをレジスタGmのデータと比較して、読出しデー
タの方が大きいと読出しデータをレジスタGmに更新メ
モリし、かつこの時読出しデータのアドレス(r,t)
のrはレジスタrm1に、tはレジスタtm1に更新メモリ
する(101〜104)。データテーブルHGnのすべ
てのアドレスに対してこのような処理を終了すると、レ
ジスタGmにはデータテーブルHGnにある度数の最大
値が、レジスタrm1,tm1には該最大値があるアドレス
(rm1,tm1)が格納されていることになる。
【0052】図17を再度参照すると、CPU1は、
「最大点探索(HG1)」68を終了すると、r−t極
座標系で表現された前記アドレス(rm1,tm1)を、X
−Y座標系画面に対応するρ−θ極座標系アドレス(R
m1,Tm1)に変換する(69)。ここでは、 Rm1=rm1・(Re1−Rs1)/Rd1 ・・・(2) Tm1=tm1・(Te1−Ts1)/Td1 ・・・(3) を算出して、算出したRm1をレジスタRm1に、算出した
Tm1をレジスタTm1に格納する。図15のステップ62
Rおよび図17のステップ66での設定により、ここで
は、 (Re1−Rs1)=256 Rd1=32 (Te1−Ts1)=π/2 Td1=32 であり、(2)式は、Rm1=8・rm1 を意味し、(3)式
は、Tm1=(π/64)・tm1を意味する。アドレス(Rm
1,Tm1)をX−Y座標系への変換式に代入すると、補
正画像メモリの画像データを表示する画面上の、ウィン
ドウ2の右半分の領域にある、ある直線(低密度ハフ変
換67により検出した直線:以下第1回検出の直線と称
す)を示す式が得られる。
【0053】次にCPU1は、イメージメモリ5aのあ
る領域に割り当てたデータテーブルHGn(r,t)、
ここではn=2、のデータをクリアする(図17の7
0)。次に第2回のハフ変換である「ハフ変換(HG
2)」72の変換パラメータを設定する(図17の7
1)。前述の第1回のハフ変換ではθの範囲Ts〜Te
を0〜π/2、単位(Te−Ts)/Tdをπ/64と
し、ρの範囲Rs〜Reは0〜256、単位Rd/(R
e−Rs)を1/8としたが、ここでは、θおよびρの
範囲を、前記(Rm1,Tm1)を中心とする小範囲に設定
し、θおよびρの単位も小さく設定する。具体的には、 Rs=8(rm1−2) Re=8(rm1+2) Rd=32 Ts=(π/64)(tm1−2) Te=(π/64)(tm1+2) Td=32 を設定する。なお、rm1=Rm1/8,tm1=Tm1/(π/
64)である。そして「ハフ変換(HG2)」72を行な
う。
【0054】「ハフ変換(HG2)」72 この「ハフ変換(HG2)」72の内容は、図20を参
照して説明した「ハフ変換(HG1)」67と同様であ
るが、図20中で、n=2である点と、ブロック91内
の演算式(前述の(1)式)の内容が異なる。ステップ71
で設定したパラメータに基づいた、図20のステップ9
1の演算式すなわち前記(1)式は具体的には次の(1-2)式
となる。
【0055】 r={(Xs−255)・cos〔t・(π/512)+π(tm1−2)/64〕+ (350−Ys)・sin〔t・(π/512)+π(tm1−2)/64〕−8(rm1−2)}×(1/1) ・・・(1-2) これを(1b)式の形に変形して、 r/d2+c2= (Xs−Xch)・cos(a2・t+b2) +(Ych−Ys)・sin(a2・t+b2) ・・・(1-2b) で表わすと、前述の第1回の変換で、 a1=(π/64), b1=0, c1=0,
1=1/8 に対して、 a2=(π/512),b2=π(tm1−2)/64,c2=8(rm1−
2),d2=1 となる。
【0056】t=0〜31であるので、 θ= π(tm1−2)/64, θ= (π/512)+π(tm1−2)/64, θ= 2(π/512)+π(tm1−2)/64, θ= 3(π/512)+π(tm1−2)/64, ・ ・ ・ θ=31(π/512)+π(tm1−2)/64, と、(π/512)を最小単位として32点のθに対応するρ
値rが算出される。すなわちこの第2ハフ変換では、ウ
ィンドウ2の右半分の領域の特徴点各点が、θが(π/51
2)を最小単位(tの1単位がπ/512)とし、かつθ=π
(tm1−2)/64 以上θ=31(π/512)+π(tm1−2)/64 以
下の範囲の極座標平面上の位置(r,t)に変換され
る。ρの範囲は8(rm1−2)以上8(rm1+2)以下
で、ρの単位はこの範囲を32分割するものである。す
なわちrの一単位は32/32=(1/1)=1である。し
たがって、第2ハフ変換(72)はウィンドウ2の右半
分の特徴点を、第1ハフ変換(67)よりも、狭い範囲
かつ高い密度の極座標に変換するものである。特徴点の
1つの極座標変換では、この第2ハフ変換(72)でも
t=0〜31、すなわち32回の演算を行なうので、第
1ハフ変換(67)と処理時間は同程度である。1つの
特徴点(Xs,Ys)をρ−θ極座標に変換する演算回
数が極く少く、rデータビット数が少く、特徴点各点を
ρ−θ極座標へ変換する速度が速く、かつ、度数カウン
ト処理速度が速い。
【0057】図17を再度参照すると、CPU1は、第
2回のハフ変換である「ハフ変換(HG2)」72を終
了すると、「最大点探索(HG2)」73を実行する。
その内容は前述の、「最大点探索(HG3)」68と同
様である。ただしn=2である。この処理を終了する
と、レジスタGmにはデータテーブルHGnにある度数
の最大値が、レジスタrm2,tm2には該最大値があるア
ドレス(rm2,tm2)が格納されていることになる。
【0058】図17を再度参照すると、CPU1は、
「最大点探索(HG2)」73を終了すると、r−t極
座標系で表現された前記アドレス(rm2,tm2)を、X
−Y座標系画面に対応するρ−θ極座標系アドレス(R
m2,Tm2)に変換する(74)。演算式は、 Rm2=rm2・(Re2−Rs2)/Rd2+Rs2 ・・・(4) Tm2=tm2・(Te2−Ts2)/Td2+Ts2 ・・・(5) である。算出したRm2をレジスタRm2に、算出したTm2
をレジスタTm2に格納する(74)。図17のステップ
71での設定により、ここでは、 (Re2−Rs2)=32 Rd2=32 (Te2−Ts2)=π/16 Td2=32 であり、(4)式は、具体的には、 Rm2=rm2+8rm1−16 ・・・(4-1) であり、(5)式は、具体的には、 Tm2=tm2・(π/512)+(π/64)・(tm1−2) ・・・(5-1) を意味する。アドレス(Rm2,Tm2)をX−Y座標系へ
の変換式に代入すると、補正画像メモリの画像データを
表示する画面上の、ウィンドウ2の右半分の領域にあ
る、ある直線(中密度ハフ変換72により検出した直
線:以下第2回検出の直線と称す)を示す式が得られ
る。
【0059】次にCPU1は、イメージメモリ5aのあ
る領域に割り当てたデータテーブルHGn(r,t)、
ここではn=3、のデータをクリアする(図18の7
5)。次に第3回のハフ変換である「ハフ変換(HG
3)」77の変換パラメータを設定する(図18の7
6)。ここでは、θおよびρの範囲を、前記「ハフ変換
(HG2)」72の場合よりも、前記(Rm2,Tm2)を
中心とする更に小さい範囲に設定し、θおよびρの単位
も小さく設定する(76)。具体的には、 Rs=rm2+8rm1−18 Re=rm2+8rm1−14 Rd=32 Ts=(π/512)tm2+(π/64)tm1−9π/256 Te=(π/512)tm2+(π/64)tm1−7π/256 Td=32 を設定する。なお、rm2,tm2は、Rm2,Tm2に対して
上記(4-1)式,(5-1)式で規定されるものである。そして
「ハフ変換(HG3)」77を行なう。
【0060】「ハフ変換(HG3)」77 この「ハフ変換(HG3)」77の内容は、前述の「ハ
フ変換(HG2)」72と同様であるが、図20中に示
すハフ変換処理で、n=3である点と、図20中のブロ
ック91内の演算式(前述の(1)式)の内容が異なる。ス
テップ76で設定したパラメータに基づいた、図20の
ステップ91の演算式すなわち前記(1)式は、この「ハ
フ変換(HG3)」77では、具体的には次の(1-3)式
となる。 r={(Xs−255)・cos〔t・(π/4096)+(π/512)tm2+(π/64)tm1−9π/256〕 +(350−Ys)・sin〔t・(π/4096)+(π/512)tm2+(π/64)tm1−9π/256〕 −rm2−8rm1+18}×8 ・・・(1−3) これを(1b)式の形に変形して、 r/d3+c3= (Xs−Xch)・cos(a3・t+b3) +(Ych−Ys)・sin(a3・t+b3) ・・・(1-3b) で表わすと、前述の第1回および第2回の変換で、 a1=(π/64), b1=0, c1=0,
1=1/8 a2=(π/512),b2=π(tm1−2)/64,c2=8(rm1−
2),d2=1 に対して、 a3=(π/4096),b3=(π/512)tm2+(π/64)tm1−9
π/256, c3=rm2+8rm1−18,d3=8 となる。
【0061】t=0〜31であるので、 θ= (π/512)tm2+(π/64)tm1−9π/256, θ= (π/4096)+(π/512)tm2+(π/64)tm1−9π/256, θ= 2(π/4096)+(π/512)tm2+(π/64)tm1−9π/256, θ= 3(π/4096)+(π/512)tm2+(π/64)tm1−9π/256, ・ ・ ・ θ=31(π/4096)+(π/512)tm2+(π/64)tm1−9π/256, と、(π/4096)を最小単位として32点のθ(t=0〜
31)に対応するρ値rが算出される。すなわちこの第
3ハフ変換では、ウィンドウ2の右半分の領域の特徴点
各点が、θが(π/4096)を最小単位(tの1単位がπ/40
96)とし、かつθ=(π/512)tm2+(π/64)tm1−9π/2
56以上 θ=31(π/4096)+(π/512)tm2+(π/64)tm1
−9π/256以下 の範囲の極座標平面上の位置(r,t)
に変換される。ρの範囲はRs=rm2+8rm1−18 以上
Re=rm2+8rm1−14 以下で、ρの単位はこの範囲を
32分割するものである。すなわちrの一単位は4/3
2=(1/8)である。したがって、第3ハフ変換(77)
はウィンドウ2の右半分の特徴点を、第2ハフ変換(7
2)よりも、更に狭い範囲かつ高い密度の極座標に変換
するものである。特徴点の1つの極座標変換では、この
第3ハフ変換(77)でもt=0〜31であるので、3
2回の演算を行なうので、第2ハフ変換(72)と処理
時間は同程度である。1つの特徴点(Xs,Ys)をρ
−θ極座標に変換する演算回数が極く少く、rデータビ
ット数が少く、特徴点各点をρ−θ極座標へ変換する速
度が速く、かつ、度数カウント処理速度が速い。
【0062】図18を参照すると、CPU1は、第3回
のハフ変換である「ハフ変換(HG3)」77を終了す
ると、「最大点探索(HG3)」73を実行する。その
内容は前述の、「最大点探索(HG3)」68と同様で
ある。ただしn=3である。この処理を終了すると、レ
ジスタGmにはデータテーブルHGnにある度数の最大
値が、レジスタrm3,tm3には該最大値があるアドレス
(rm3,tm3)が格納されていることになる。
【0063】図18を参照すると、CPU1は、「最大
点探索(HG3)」78を終了すると、r−t極座標系
で表現された前記アドレス(rm3,tm3)を、X−Y座
標系画面に対応するρ−θ極座標系アドレス(Rm3,T
m3)に変換する(74)。演算式は、 Rm3=rm3・(Re3−Rs3)/Rd3+Rs3・・・(6) Tm3=Tm3・(Te3−Ts3)/Td3+Ts3・・・(7) である。算出したRm3をレジスタRm3に、算出したTm3
をレジスタTm3に格納する(79)。図18のステップ
76の設定により、ここでは、 (Re3−Rs3)=4 Rd3=32 (Te3−Ts3)=π/128 Td3=32 であり、(6)式は、具体的には、 Rm3=(1/8)・rm3+rm2+8rm1−18 ・・・(6-1) であり、(7)式は、具体的には、 Tm3=(π/128)・tm3+(π/512)tm2+(π/64)tm1−9π/256 ・・
・(7−1) を意味する。アドレス(Rm3,Tm3)をX−Y座標系
への変換式に代入すると、補正画像メモリの画像データ
を表示する画面上の、ウィンドウ2の右半分の領域にあ
る、ある直線(高密度ハフ変換77により検出した直
線:以下第3回検出の直線と称す)を示す式が得られ
る。以上で図15に示す「直線当てはめ」63R(内容
は図17&図18)を終了したことになる。
【0064】以上で、ウィンドウ2の右半分領域にある
画像中の直線(最も代表的な直線)を表わす直線(第3
回検出の直線)を得たことになる。ウィンドウ2は、自
車レーンの左,右端の白線を検出するに最も適した領域
に設定されており、ウィンドウ2の右半分領域に右端の
白線像があると、第3回検出の直線はこの白線を近似す
る直線である確率が高い。したがって、「直線当ては
め」63Rは、ウィンドウ2の右半分領域での、自車レ
ーンの右端白線の検出である。
【0065】図15を再度参照すると、CPU1は、次
に、第3回検出の直線を表わすデータ(Rm3,Tm3)の
Rm3をレジスタRmRに、Tm3をレジスタTmRに格納する
(64R)。すなわち自車レーンの右端白線を表わす直
線を表わすデータをレジスタRmR,TmRに格納する(6
4R)。
【0066】左白線検出62L〜64L(図15) CPU1は次に、以上に説明したウィンドウ2の右半分
領域に関する処理(62R〜64R)と同様な処理を、
ウィンドウ2の左半分領域に施して、自車レーンの左端
白線を表わす直線を検出し、それを表わすデータをレジ
スタRmL,TmLに格納する(62L〜64L)。以上で
「左右白線検出」D3を終了する。CPU1は次に、
「無限遠点計算」D4を行なう。この内容を図22に示
す。
【0067】D4.「無限遠点計算」D4(図22) ここではまず、「直線交点計算」109で、レジスタR
mR,TmRのデータが表わす直線(自車レーン右端白線と
推定した)と、レジスタRmL,TmLのデータが表わす直
線(自車レーン左端白線と推定した)との交点(Xc,
Yc)を算出する。次に、算出した交点(Xc,Yc)
が、過去に算出した交点データを時系列で重み付け平滑
化(平均化)して得ている無限遠点(Xv,Yv)を中
心とする横60画素×縦60画素の領域内に存在するか
をチェックする(110,111)。この領域内である
と、今回求めた交点(Xc,Yc)が無限遠点である信
頼性が高いので、無限遠点データ(Xv,Yv)を、今
回求めた交点(Xc,Yc)に1/8の重み付けをし、
これまでの無限遠点データ(Xv,Yv)に7/8の重
み付けをして加算した値に更新する(112)。そし
て、無限遠点追跡に失敗した回数をカウントするための
レジスタNveをクリアする(113)。
【0068】今回算出した交点(Xc,Yc)が、前記
横60画素×縦60画素の領域内にないときには、無限
遠点追跡が失敗(今回の交点算出がエラー又はこれまで
の無限遠点データ(Xv,Yv)がエラー)であるとし
て、レジスタNveの内容を1インクレメントし(11
4)、レジスタNveの内容が5になったかをチェックす
る(115)。5になっていると、今回と過去4回の計
5回連続して交点算出がエラーであったことになり、こ
れは現在保待している無限遠点データ(Xv,Yv)が
エラーであると見なして、無限遠点データ(Xv,Y
v)を今回算出した交点(Xc,Yc)に更新する(1
16)。
【0069】D5.「左右白線間隔(WL)計算」D5
(図13&図23) 再度図13を参照すると、CPU1は次に、自車レーン
の右白線と左白線との間隔(レーン幅)WLを算出する
(D5)。これにおいては、カメラ6bの視野中心線
(図23の2点鎖線)が路面と交わる位置(画面上では
画面の中心点)での、画面上の右端白線(RmR,TmR)
のX位置を路面上位置XRに変換し、画面上の左端白線
(RmL,TmL)のX位置を路面上位置XLに変換して、
間隔WL=XR−XLを算出する。なお、図13の演算ブ
ロックD5内の、SxおよびSyはそれぞれカメラ6b
の横方向および縦方向のスケールファクタであり、Hc
は図23に示すように、カメラ6bのレンズ9の中心
の、路面からの高さである。
【0070】CPU1は次に、算出した、路面上のレー
ン間隔WLが正しい(自車レーン検出成功)かをチェック
する(D6)。すなわち、基準値WL3Dに対するWLの偏
差が、許容範囲DwL内であるかをチェックする。この実
施例では、日本の高速道路のレーン幅が3.5±0.2
mであるので、基準値WL3D=3.5mに、許容値DwL
=0.3mに定めている。
【0071】基準値WL3Dに対するWLの偏差が許容範囲
DwL内にあると、自車レーン検出に成功しているとし
て、これを表わす情報「1」をレジスタFLに書込み
(61)、基準値WL3Dに対するWLの偏差が許容範囲D
wLを外れていると、自車レーン検出に失敗しているとし
て、これを表わす情報「0」をレジスタFLに書込む
(62)。以上で、図3に示す「自車レーン検出」Dを
終了したことになり、自車レーン検出が成功している
と、レジスタFLのデータは「1」である。
【0072】再度図3を参照する。「自車レーン検出」
Dを終了するとCPU1は、レジスタFLのデータをチ
ェックしてそれが「1」であると、「隣接レーン推定」
Fを実行する。この内容を図24に示す。
【0073】 F.「隣接レーン推定」F(図24&図24) 図24を参照すると、ここではまずカメラ6bの下向き
角αを算出する(117)。ステップ117の計算式中
のYoは画面中心のY座標値、Ychは「画面の校正」
Cの「直線交点計算」C4で定めた画面下端のY座標値
である。次に、車両の進行方向に対する自車レーンの右
端白線のなす角φRおよび左端白線のなす角φLを算出し
て、それらの平均値φを算出する。「画面の校正」Cを
終えた画面(補正画像メモリの画像)では、先の「画面
の校正」Cで、車両進行方向が画面を左右に2等分する
中央線(Y=255)に合致しているので、φRはこの
線に対して右端白線が交鎖する角度、φLは左端白線が
交鎖する角度である。図25に示すように、それらの平
均値φの角度の直線が、自車レ−ンの中央線である。次
のステップ119には、カメラ6bの視野中心線が路面
と交わる点に対する右端白線の距離XRおよび左端白線
の距離XLを算出する式を示すが、これらXRおよびXL
は、「左右白線間隔(WL)計算」D5で算出している
ので、そこでの算出値を用いる。次に、自車レ−ン右端
白線の右側のレ−ン(右隣接レ−ン)の右端白線の有無
にかかわらず、これが存在すると仮定して、XRの点を
水平方向右側にレ−ン幅WL(D5で算出済)をとった
点と、無限遠点とを結ぶ直線が、右レ−ンの右端白線で
あるとして、その直線を表わす式Y=AX+Bの比例項
係数Aの値Aex1(水平線(X軸)となす角TmRRのta
n値)を算出し、定数項Bの値Bex1を算出する(12
0)。同様にして、左レ−ンの左端白線を表わす値Aex
2およびBex2を算出する(121)。そしてこれらの値
Aex1,Bex1およびAex2,Bex2を、それぞれρ−θ極
座標に変換する(122,123)。以上で、自車走行
レ−ンの両端白線(2直線)に加えて、左隣接レ−ンお
よび右隣接レ−ンを規定する2直線を更に追加決定した
ことになる。
【0074】再度図3を参照する。「隣接レ−ン推定」
Fを終了するとCPU1は、「カ−ブ推定」Gを実行す
る。この内容を図26に示す。
【0075】G.「カ−ブ推定」G(図26&図27) 「画面の校正」Cを終えた画面(補正画像メモリの画
像)では、車両の縦軸線が実質上画面の中央線(X=2
55)に合致しており、自車レ−ンが直線であると、無
限遠点(Xv,Yv)は実質上該中央線上にある(Xv
=255)。ところが、無限遠点(Xv,Yv)は車両
直前の左,右白線の延長線の交点であるので、自車レ−
ンがカ−ブしていると、無限遠点(Xv,Yv)は前記
画面の中央線X=255より右方(右カ−ブの場合)又
は左方(左カ−ブの場合)となる。「カ−ブ推定」Gで
は、したがって、大要では、図27に示すように、無限
遠点(Xv,Yv)の、画面の中央線から左,右へのず
れの値と方向からカ−ブを判定し、自車レ−ンの遠方点
(レ−ン左,右端の白線が交わって見える点)を推定す
る。ところで、自車両は運転状態や路面状態等により揺
れ、しかも車体姿勢が変化するので、カメラ6bから前
方を見ると、前方シ−ンが縦揺れやロ−リングを生じ、
また一時的には自車レ−ンに対して車両進行方向(車両
の縦軸線)が平行からずれることもあるので、時々刻々
の車両進行方向(画面の中央線)を基準線とすると、カ
−ブ検出を誤ることがありうる。そこでこの実施例で
は、検出した無限遠点(Xv,Yv)のX座標値Xvの
時系列平均値Xvsを通るY軸平行線を基準線としてカ
−ブを推定する。以下詳細に説明する。
【0076】ここではまず、偏差累算レジスタSxvと
平均値レジスタXvsの内容の和から、前述の「無限遠
点計算」D4で得た無限遠点のX座標値Xvを減算した
値を、偏差累算レジスタSxvに更新メモリする(12
4)。次にカウントレジスタNxvの内容を1インクレメ
ントして(125)、その内容が3000に達したかを
チェックし(126)、達したときには、レジスタXvs
の内容よりSxv/Nxvを減算した値をレジスタXvsに更
新メモリして、レジスタNxvおよびSxvをクリアする
(128)。
【0077】この処理により、「カ−ブ推定」Gを30
00回実行する毎に、レジスタXvsの内容が、その時点
の値からSxv/3000を減算した値に更新されて、レ
ジスタNxvおよびSxvがクリアされる。これにより、レ
ジスタXvsのデ−タは、現在の計算時点から過去に逆登
った3000回の「無限遠点計算」(最新1区間)、の
直前から更に過去に逆登った3000回の「無限遠点計
算」(前1区間)、のXv平均値(前回平均値)Xvsよ
り、「最新1区間」の間の、該平均値Xvsに対する各回
Xvの偏差の平均値を減算した値に更新される。すなわ
ちレジスタXvsには、算出されるXvの時系列重み付け
平均値が格納される。
【0078】そして「カ−ブ推定」Gに一回進入する毎
に、Xvs(カ−ブ判定基準値)に対する、最新に算出し
たXvの偏差を算出し、これに実験に基づいて定めた係
数KL(例えば4.7)を乗算した値ΔXLを算出し(1
29)、これにXvを加算した値XvcをレジスタXvcに
格納する(130)。以上で、カ−ブの遠点(左,右端
白線が交わって見える点)は、(Xvc,Yv)と決定さ
れた。
【0079】再度図3を参照する。「カ−ブ推定」Gを
終了するとCPU1は、「自車レ−ン先行車両認識及び
測距」Hを実行する。この内容を図28に示す。
【0080】H.「自車レ−ン先行車両認識及び測距」
H(図28&図29〜46) ここではまず「車両候補位置の検出1」H1を実行す
る。この内容を図29に示す。
【0081】 H1.「車両候補位置の検出1」H1(図29) まず「特徴点メモリクリア」131で、補正画像メモリ
の画素(アドレス)数と対応する画素数の、多階調デ−
タメモリD(x,y)および2値デ−タメモリE(x,
y)をクリアする。その処理の詳細を図30に示す。次
に「水平特徴点の検出」132を実行する。この内容を
図31に示す。
【0082】「水平特徴点の検出」132 図31および図27を参照するとここでは、図27に示
される画面上の、Y=350の横線(Y=350を通るX
軸平行線)を低辺とし、自車レ−ンの左,右端白線の交
点を頂点とする三角形に、(Xv,Yv),(Xvc,Y
v)、および、(Xvc,Yv)を始点にY座標値が増大す
る方向に延びるY軸平行線と左端白線又は右端白線との
交点で囲まれる三角形、を加えた領域(図27に斜線で
塗りつぶして示す領域=自車レ−ン領域)の、X=Xvc
なるY軸平行線で区分される左半分領域を規定して、該
左半分領域の内部を、下から上へY方向走査し、X位置
を更新しつつこの走査を繰返して(図31の146L〜
150L,152L〜153L)、補正画像メモリ上の
画像デ−タのY方向微分値を算出し、微分値がしきい値
以上の点を特徴点と検出する(151L)。すなわち
「1ライン水平特徴点検出」151Lを実行する。この
内容を図32に示す。この処理151Lは、図6に示す
「特徴点検出(UP)」C2と同様であるので、詳細な
説明は省略する。 次に、前記自車レ−ン領域の、X=
XvcなるY軸平行線で区分される右半分領域を規定し
て、該右半分領域の内部(X=Xvcは含む)を、下から
上へY方向走査し、X位置を更新しつつこの走査を繰返
して(図31の146R〜150R,152R〜153
R)、補正画像メモリ上の画像デ−タのY方向微分値を
算出し、微分値がしきい値以上の点を特徴点と検出する
(151R)。
【0083】以上により、前記自車レ−ン領域の特徴点
検出を行なったことになり、2値デ−タメモリE(x,
y)の、特徴点に対応するアドレスに、そこが特徴点で
あることを示す「1」が書込まれている。なお、前述の
「特徴点メモリクリア」131で、2値デ−タメモリE
(x,y)を予めクリアしている(全アドレスに「0」
書込み)ので、2値デ−タメモリE(x,y)上では、
自車レ−ン領域内の特徴点に対応するアドレスのみに
「1」(特徴点である)が書込まれていることになる。
【0084】次にCPU1は、ヒストグラムメモリをク
リアする(図29の133)。この内容は図33に示
す。CPU1は次に、「y方向ヒストグラム作成」13
4を行なう。この内容を図34に示す。
【0085】 「y方向ヒストグラム作成」134(図34) ここでは、2値デ−タメモリE(x,y)上の、Y=0
〜Y=511のX軸平行線(X走査線;X方向の画素の
連なり)のそれぞれにつき、線上にある「1」(特徴
点)の数を、カウントして、ヒストグラムメモリH
(y)に走査線(Yアドレス)対応でカウント値を書込
む。
【0086】「y方向極大点検出」135(図35) ヒストグラムメモリH(y)のY=511のアドレス
(Y=511のX軸走査線)から順次にY=1まで、各
アドレスを注目線(y)に定めて、注目線(y)の特徴
点カウント値H(y),それよりY座標値が1つ小さい
走査線(y−1)の特徴点カウント値H(y−1)、お
よび、注目線(y)よりY座標値が1つ大きい走査線
(y+1)の特徴点カウント値H(y+1)を比較して
(図35の174,175)、H(y)がH(y−1)
およびH(y+1)のいずれよりも大きいと、すなわち
注目線(y)が特徴点数のピ−ク位置であると、注目線
(y)の位置(Yアドレス)での自車レ−ン左端点(X
1)と右端点(X2)を算出する(176,177;計算
式は図36に示す)。そして、しきい値Th2を(X2-
X1)/8に設定して(178)、注目線(y)の特徴点
カウント値H(y)がしきい値Th2以上であると、注
目線(y)上に横方向に延びる像輪郭線があると見なし
て、注目線(y)のアドレス(Y座標値)をメモリMy
(N)のアドレスNに書込む(180)。そしてレジス
タNを1インクレメントする。レジスタNの値が5以上
(異なった6走査線で像輪郭線を検出した)になると、
あるいは最後の走査線Y=1を注目線とする上記処理を
終了すると、そこで、「y方向極大点検出」135を終
了する。
【0087】図16に示すように、自車レ−ン前方に車
両(先行車両)があると、先行車両の後部像がウィンド
ウ2内に現われ、後部像には、バンパ−(その下縁が特
に高いコントラストの横線として現われる),ナンバ−
プレ−ト,ブレ−キランプパネル,後部窓,ル−フ等々
の、横(X)方向に延びる像輪郭線が多数あるので、メ
モリMy(N)のアドレス0〜5に、自車に近い(Y座
標値が大きい)6個の像輪郭線の位置(Y座標)が書込
まれていることになる。
【0088】なお、ステップ178で、しきい値Th2
を(X2−X1)/8に設定するのは、カメラ6bに近い
ほど像輪郭線のコントラストが高く、特徴点が多く摘出
されるが、遠くの像輪郭線のコントラストは低く、特徴
点の摘出が少くなるので、(X2−X1)により注目線
(y)上にある像輪郭の、カメラ6bからの距離を推定
し、距離に応じてしきい値を変更するためである。
【0089】「X方向重心計算」136(図37) 次に、メモリMy(N)に書込んだ、像輪郭線の位置
(Y座標値)のそれぞれにつき、該位置よりW1(設定
値)小さくW2(設定値)大きい領域内の、2値デ−タ
メモリE(x,y)上の特徴点(図27に斜線で塗りつ
ぶした自車レ−ン領域内の特徴点)のX座標値を累算レ
ジスタSumxに加算し、加算回数をレジスタNxでカウ
ントして(187〜197)、重心X座標値(平均座標
値)を算出してメモリMx(N)に書込む(198)。
これにより、「y方向極大点検出」135で検出した、
横方向に延びる像輪郭線それぞれのX方向重心位置(X
座標値)がメモリMx(N)に存在することになる。な
お、Y方向重心位置はメモリMy(N)に存在する。
【0090】以上で、図28(詳細は図29)に示す
「車両候補位置の検出」H1を終了し、CPU1は次
に、後に使用するレジスタNRをクリアして(H2)、
「車両左右端の検出」H3を実行する。この内容を図3
8に示す。
【0091】H3.「車両左右端の検出」H3(図3
8) ここではまず「車両左右端位置推定」201を実行す
る。その内容を図39に示す。
【0092】「車両左右端位置推定」201(図39) まず、メモリMy(N)にある、像輪郭線のY座標値の
最も大きい値のものMy(NR)(N=NR=0のアドレ
スのデ−タ)、すなわち自車に最も近い前方物体の像輪
郭線(横線)のY位置、を読出して、カメラ6bからそ
こまでの水平距離(路面上の距離)L1を算出する(2
08)。次に前方物体が車両であると仮定(この仮定の
正誤は後述する「車両の検定」H4で検証する)して、
画面上の車幅Wv2Dpおよび車高Hv2Dpを算出する(20
9)。この算出に使用するWv3Dは、車幅学習値を格納
したレジスタWv3D(図46を参照して後述)のデ−タ
(先行車両を過去に検出していなと最も代表的な実物車
両の車幅1.7m)であり、Hv3Dは、ミニカ−もカバ
−する車高1.2mである。次に、画面上の車幅Wv2Dp
と、メモリMx(N)にある像輪郭線の重心位置Mx
(NR)から、前方物体の画面上の左右端位置XvLp,X
vRpを推定演算する(210)。そして画面上の上下端
yvHp,yvLpを推定演算する(211)。
【0093】次に多階調デ−タメモリD(x,y)およ
び2値デ−タメモリE(x,y)をクリアして(202
L)、「左端垂直特徴点検出」203Lを実行する。こ
の内容を図40に示す。
【0094】 「左端垂直特徴点検出」203L(図40) 前記画面上の上下端yvHp,yvLpの間の、前記画面上の
左端位置XvLpを中心に、±Wv2Dp/4の領域の、補正
画像メモリ上の画像デ−タのY方向微分値を算出して多
階調デ−タメモリD(x,y)に書込み、かつ、多階調
デ−タをしきい値Th3と比較して、Th3以上である
と、2値デ−タメモリE(x,y)に「1」を書込む。
この特徴点検出処理は、すでに説明した「特徴点検出
(UP)」C2の処理と同様である。次にCPU1はヒ
ストグラムメモリ(先に使用したH(y))をクリアし
て(204L)、「x方向ヒストグラム作成」205L
を実行する。この内容を図41に示す。
【0095】 「x方向ヒストグラム作成」205L(図41) 前記「左端垂直特徴点検出」203Lで特徴点を検出し
た領域内の、Y軸平行線(画素の連なり)上の特徴点
を、線単位でカウントして、線アドレス(X座標値)対
応でヒストグラムメモリ(ここではH(x)と表記す
る)に書込む。そして「x方向最大点検出」206Lを
実行する。その内容を図42に示す。
【0096】「x方向最大点検出」206L(図42) この処理は大要では、先に説明した「y方向極大点検
出」135と同様な処理を、Y軸をX軸に置き換えて、
「左端垂直特徴点検出」203Lで特徴点を検出した領
域内で行なうものである。詳しくは、ここでは領域が狭
いので、極大点摘出のためのしきい値Th4は、Hv2Dp
/4なる固定値とするのに加えて、また、極大点の検出
ごとに、極大点の特徴点カウント数を極大値メモリHm
のデ−タと比較して、今回検出の極大点の方が大きいと
これを極大値メモリHmに更新書込みし、そのX座標値
を極大点レジスタXmに書込む。前記領域内すべてのこ
の処理を終えると、前記領域の中で、特徴点が最も多く
存在するY軸平行線(先行車両の左エッジ)のX座標値
がレジスタXmに格納されていることになる。このX座
標値を車両左端位置レジスタXvLに書込む(207
L)。
【0097】以上の「特徴点メモリクリア」202L〜
「x方向最大点検出」206Lと同様な処理を、画面上
の上下端yvHp,yvLpの間の、右端位置XvRpを中心
に、±Wv2Dp/4の領域について行って(図38の20
2R〜206R)、該領域内で特徴点が最も多く存在す
るY軸平行線(先行車両の右エッジ)のX座標値を車両
右端位置レジスタXvRに書込む(207R)。「右端垂
直特徴点の検出」203Rの内容を図43に示す。
【0098】以上で、「車両左右端の検出」H3を終了
する。CPU1は次に「車両の検定」H3を実行する。
その内容を図44に示す。
【0099】H4.「車両の検定」H4(図44) ここでは、車幅学習値を格納したレジスタWv3D(図4
6を参照して後述)が保持する先行車両の車幅Wv3D
を、「車両左右端位置推定」201で算出した前方物体
の自車からの距離L1とカメラ6bのスケ−ルファクタ
Sxを用いて画面上の車幅Wv2Dに変換し(247)、
前述の車両左,右端位置XvL,XvRより画面上の車幅W
vを算出して(248)、両者の差Wv−Wv2Dが、±Wv
2D/4の範囲内にあるかをチェックする(249)。す
なわち、画面上の車幅計算値Wvが、車幅学習値を格納
したレジスタWv3Dの車幅(実物幅)の画面上の幅Wv2D
と実質上合致するかをチェックする。実質上合致する
と、先行車両検出/非検出を表わす情報「1」/「0」
を格納するレジスタFvに「1」を書込む(250
a)。合致しないとレジスタFvをクリアする(250
b)。
【0100】次にCPU1は、レジスタFvに「1」を
書込んだときには後述する「車間距離計算」H6に進む
が、レジスタFvに「0」を書込んだときには、レジス
タNRを1インクレメントして(H5−H8−H9)ま
た「車両左右端の検出」H3を実行する。「車両左右端
の検出」H3は、まずNR=0(自車両に最も近い)の
横方向輪郭線からこれを実行するので、2回目以降の
「車両左右端の検出」H3では、NR=1,2,・・と
なるので、2番目,3番目,・・・と、対象とする横方
向輪郭線を順次に自車両から遠いものに変更することに
なる。NRの最大値は5である(図35のN=0〜4で
5本の横方向輪郭線しか検出していない)ので、最大で
5回の「車両左右端の検出」H3を実行しそれでもFv
=「1」にならないと後述の「車幅学習計算」H7に進
み、次に説明する「車間距離計算」H6は実行しない。
【0101】H6.「車間距離計算」H6(図45) レジスタFvに「1」を書込んだときには、車間距離L2
(0)を算出する(251)。車幅学習値を格納したレ
ジスタWv3Dの車幅(実物幅)Wv3D,画面上の車幅計算
値Wv,「車両左右端位置推定」201で算出した前方
物体の自車からの水平距離L1(路上実物距離)、およ
び、カメラ6bのスケ−ルファクタSxを用いて、車間
距離L2(0)を算出する(251)。今回算出値L2
(0)と、前回算出値L2(1),前々回算出値L2
(2)および前々々回算出値L2(3)の平均値を算出
してレジスタL3に書込み(252)、前回算出値L2
(1),前々回算出値L2(2)および前々々回算出値
L2(3)を更新する(253)。以上により、レジス
タL3には、自車レ−ンの先行車との車間距離(最近の
時系列平均値)を格納したことになる。
【0102】H7.「車幅学習計算」H7(図46) レジスタL3の車間距離を前述のように更新するとCP
U1は、画面上の車幅Wvを実物車幅Wvaに変換し、レ
ジスタWv3Dのデ−タ(時間軸上で、今回の車間距離計
算までに保持する車幅学習値Wv3D)と今回の車幅計算
値Wvaを、47対1の重み付けで加算し、和を48で割
った値、すなわち重み付け平均値、をレジスタWv3Dに
更新メモリする(254,255a,255b)。自車
レ−ン先行車両を検出しない(Fv=「0」)でこの
「車幅学習計算」H7に進んだときには、レジスタWv3
Dに、この実施例では、最も代表的な車両(乗用車)の
車幅値1.7mを書込む(254,256)。
【0103】以上で「自車レ−ン先行車両認識及び測
距」Hを終了する。次にCPU1は、「右隣接レ−ン先
行車両認識及び測距」Iを実行する。この内容を図47
に示す。なお、先に説明した「左右白線検出」D3で自
車レ−ン右端白線を表わすデ−タ(TmR,RmR)および
左端白線を表わすデ−タ(TmL,RmL)をレジスタに格
納し、しかも、「隣接レ−ン推定」Fで、右隣接レ−ン
の右端白線(推定)を表わすデ−タ(TmRR,RmRR)お
よび左隣接レ−ンの左端白線(推定)を表わすデ−タ
(TmLL,RmLL)をレジスタに格納している点に注意さ
れたい。
【0104】I.「右隣接レ−ン先行車両認識及び測
距」I(図47,図48,図49) ここでは、ウィンドウ2の下辺(Y=350),自車レ
−ン右端白線(TmR,RmR)ならびに右隣接レ−ンの右
端白線(TmRR,RmRR)で囲まれる領域(右隣接レ−ン
領域)に、前述の「自車レ−ン先行車両認識及び測距」
Hの処理を同様に適用して、右隣接レ−ン領域の、自車
から見て前方の物体を検出し、自車からの距離を算出す
る。
【0105】J.「左隣接レ−ン先行車両認識及び測
距」J(図50,図51,図52) これにおいても、ウィンドウ2の下辺(Y=350),
自車レ−ン左端白線(TmL,RmL)ならびに左隣接レ−
ンの左端白線(TmLL,RmLL)で囲まれる領域(左隣接
レ−ン領域)に、前述の「自車レ−ン先行車両認識及び
測距」Hの処理を同様に適用して、左隣接レ−ン領域
の、自車から見て前方の物体を検出し、自車からの距離
を算出する。
【0106】以上でCPU1は、図3に示す「画像入
力」Bで読込んだ一画面の画像デ−タに基づいた、一回
の、「画面の校正」C〜「左隣接レ−ン車両認識及び測
距」Kを実行したことになる。そして前述のように「出
力」Kで、画像認識結果を出力する。そしてまた「画像
入力」Bを実行し、同様な処理を行なう。すなわち、図
3に示す「画像入力」B〜「出力」Kを繰返し実行す
る。
【0107】
【発明の効果】前方の路上にある物体の距離を、撮影画
面上の寸法(Wv),実際の寸法(Wv3D)およびスケ
−ルファクタ(Sx)に基づいて算出するので、この算
出値は、路面の上下(登り/下り),カ−ブ,バンク等
に影響されない。すなわち、実際の寸法(Wv3)が正確
に与えられると、該算出値は信頼性が高い。したがって
本発明によれば、原理的に、信頼性が高い距離値が得ら
れる。
【図面の簡単な説明】
【図1】 本発明を一態様で実施する、車両上の、前方
路面上白線検出システムを示すブロック図である。
【図2】 図1に示すテレビカメラ6bの、車両上の配
置位置を示す側面概要図である。
【図3】 テレビカメラ6bの撮影画像デ−タに基づい
た、図1に示すマイクロプロセッサ(CPU)1の、自
車両前方の路面上白線および先行車両を検出する処理の
概要を示すフロ−チャ−ト(メインル−チン)である。
【図4】 図3に示す「画面の校正」Cの内容を示すフ
ロ−チャ−ト(サブル−チン)である。
【図5】 (a)は図4に示す「特徴点検出ウィンドウ
1セット」C1の内容を示すフロ−チヤ−ト、(b)は
図1に示すテレビカメラ6bの撮影画面を示す平面図で
ある。
【図6】 (a)は図4に示す「特徴点検出(UP)」
C2の内容を示すフロ−チャ−ト、(b)は撮影画面の
Y方向の画像デ−タの微分値を算出するときの、注目点
(算出点画素:×印)と、参照点(参照画素:白四角)
を示す平面図である。
【図7】 (a)は図4に示す「ボンネット検出」C3
の内容を示すフロ−チャ−ト、(b)は撮影画面上のボ
ンネットエッジを近似する直線を示す平面図である。
【図8】 (a)は図4に示す「ロ−ル角,パン移動量
計算」C5で算出するロ−ル角とパン移動量を撮影画面
上に示す平面図、(b)は図4に示す「画像回転平行移
動」C7で撮影画面上の画素アドレスを、ロ−ル角分回
転しパン移動量分平行移動した補正画面上の画素アドレ
スに、変換する変換式を示す平面図である。
【図9】 図4に示す「補正画像メモリイニシャライ
ズ」C6の内容を示すフロ−チャ−トである。
【図10】 図4に示す「画像回転平行移動」C7の内
容を示すフロ−チャ−トである。
【図11】 図4に示す「補間」C8の内容の一部を示
すフロ−チャ−トである。
【図12】 図4に示す「補間」C8の内容の残りの部
分を示すフロ−チャ−トである。
【図13】 図3に示す「自車レ−ン検出」Dの内容を
示すフロ−チャ−ト(サブル−チン)である。
【図14】 (a)は図13に示す「特徴点検出ウィン
ドウ2セット」D1の内容を示すフロ−チヤ−ト、
(b)は前記補正画面上に設定するウィンドウ2の領域
を示す平面図である。
【図15】 図13に示す「左右白線検出」D3の内容
を示すフロ−チャ−トである。
【図16】 前記補正画面の画像とウィンドウ2を示す
平面図である。
【図17】 図15に示す「直線当てはめ」63Rの内
容の一部を示すフロ−チャ−トである。
【図18】 図15に示す「直線当てはめ」63Rの内
容の残りの部分を示すフロ−チャ−トである。
【図19】 図17および図18に示す「ハフグリッド
クリア(HG1)」65,「ハフグリッドクリア(HG
2)」70および「ハフグリッドクリア(HG3)」7
5の内容を、汎用形式で示すフロ−チャ−トであり、図
19中のnは、1,2又は3である。
【図20】 図17および図18に示す「ハフ変換(H
G1)」67,「ハフ変換(HG2)」72および「ハ
フ変換(HG3)」77の内容を、汎用形式で示すフロ
−チャ−トであり、図20中のnは、1,2又は3であ
る。
【図21】 図17および図18に示す「最大点探索
(HG1)」68,「最大点探索(HG2)」73およ
び「最大点探索(HG3)」78の内容を、汎用形式で
示すフロ−チャ−トであり、図21中のnは、1,2又
は3である。
【図22】 図13に示す「無限遠点計算」D4の内容
を示すフロ−チャ−トである。
【図23】 図1に示すテレビカメラ6b内のレンズお
よび撮像素子と車両前方の先行車両との幾何学的関係を
示す側面概要図である。
【図24】 図3に示す「隣接レ−ン推定」Fの内容を
示すフロ−チャ−トである。
【図25】 前記補正画面上の、前記「隣接レ−ン推
定」Fで推定した隣接レ−ンを斜線で塗りつぶして示す
平面図である。
【図26】 図3に示す「カ−ブ推定」Gの内容を示す
フロ−チャ−トである。
【図27】 前記補正画面上の、前記「自車レ−ン検
出」Dおよび前記「カ−ブ推定」Gで推定した自車レ−
ン領域を斜線で塗りつぶして示す平面図である。
【図28】 図3に示す「自車レ−ン先行車両認識及び
測距」Hの内容を示すフロ−チャ−トである。
【図29】 図28に示す「車両候補位置の検出1」H
1の内容を示すフロ−チャ−トである。
【図30】 図29に示す「特徴点メモリクリア」13
1の内容を示すフロ−チャ−トである。
【図31】 図29に示す「水平特徴点の検出1」13
2の内容を示すフロ−チャ−トである。
【図32】 (a)は図31に示す「1ライン水平特徴
点の検出」151Lの内容を示すフロ−チャ−ト、
(b)は水平特徴点の検出のため前記補正画面のY方向
の画像デ−タの微分値を算出するときの、注目点(算出
点画素:×印)と、参照点(参照画素:白四角)を示す
平面図である。
【図33】 図29に示す「ヒストグラムメモリクリ
ア」133の内容を示すフロ−チャ−トである。
【図34】 図29に示す「y方向ヒストグラム作成」
134の内容を示すフロ−チャ−トである。
【図35】 図29に示す「y方向ヒストグラム作成」
134の内容を示すフロ−チャ−トである。
【図36】 図35に示す「レ−ン左端点検出」176
および「レ−ン右端点検出」177の内容を示すフロ−
チャ−トである。
【図37】 図29に示す「x方向重心計算」136の
内容を示すフロ−チャ−トである。
【図38】 図28に示す「車両左右端の検出」H3の
内容を示すフロ−チャ−トである。
【図39】 図38に示す「車両左右端位置推定」20
1の内容を示すフロ−チャ−トである。
【図40】 図38に示す「左端垂直特徴点検出」20
3Lの内容を示すフロ−チャ−トである。
【図41】 図38に示す「x方向ヒストグラム作成」
205Lの内容を示すフロ−チャ−トである。
【図42】 図38に示す「x方向最大点検出」206
Lの内容を示すフロ−チャ−トである。
【図43】 図38に示す「右端垂直特徴点検出」20
3Rの内容を示すフロ−チャ−トである。
【図44】 図28に示す「車両の検定」H4の内容を
示すフロ−チャ−トである。
【図45】 図28に示す「車間距離計算」H6の内容
を示すフロ−チャ−トである。
【図46】 図28に示す「車幅学習計算」H7の内容
を示すフロ−チャ−トである。
【図47】 図3に示す「右隣接レ−ン車両認識及び測
距」Iの内容を示すフロ−チャ−トである。
【図48】 図47に示す「車両候補の位置の検出2」
I1の内容を示すフロ−チャ−トである。
【図49】 図48に示す「水平特徴点の検出2」25
8の内容を示すフロ−チャ−トである。
【図50】 図3に示す「左隣接レ−ン車両認識及び測
距」Jの内容を示すフロ−チャ−トである。
【図51】 図50に示す「車両候補の位置の検出3」
J1の内容を示すフロ−チャ−トである。
【図52】 図51に示す「水平特徴点の検出3」27
7の内容を示すフロ−チャ−トである。
【符号の説明】
1:マイクロプロセッサ(CPU) 2:ROM 3:RAM 4〜6:入出力ポ
−ト 4a:CRTドライバ 4b:CRT 5a:イメ−ジメモリ 6a:カメラコ
ントロ−ラ 6b:テレビカメラ 6c:A/Dコ
ンバ−タ 7:通信コントロ−ラ 8:ホストマイク
ロプロセッサ(CPU)
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G08G 1/16 G01C 3/06 G06T 1/00 G06T 7/00 H04N 1/40

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】車両に搭載された撮影装置より所定周期で
    繰返し得る、車両前方の路面を含むシ−ンをX,Y直交
    座標系画面に表わす画像デ−タに基づいて、車両前方の
    路面上の物体を検出し、前記撮像装置からの前記物体の
    距離を算出する、車両前方の物体の距離検出方法におい
    て、 該所定周期で得る各時点の画像デ−タが表わす画面上
    の、路面上物体を検出し、該物体の画面上の寸法Wvを
    算出し、この寸法Wv,メモリ手段に保持する実物寸
    Wv3Dおよび前記撮影装置のスケ−ルファクタSxに基づ
    いて、前記実物寸法Wv3Dが前記画面上の寸法Wvで現わ
    れる、前記撮影装置からの前記物体の距離L2(0) L2(0)=Wv3D×Sx/Wv 算出することを特徴とする、車両前方の物体の距離検
    出方法。
  2. 【請求項2】算出した画面上の寸法(Wv)の実物寸法を
    前記メモリ手段に保持する実物寸法(Wv3D)と重み付け
    平均して得た値を、前記メモリ手段に更新記憶する、請
    求項1記載の、車両前方の物体の距離検出方法。
  3. 【請求項3】画像デ−タの、所定方向の微分値を算出し
    てそれが設定値以上のX,Y直交座標上の位置を特徴点
    (Xs,Ys)とし、特徴点(Xs,Ys)のそれぞれを、ρ,θ極座
    標系の極座標値(ρ,θ)に変換し、極座標値(ρ,
    θ)に割当てた記憶手段の度数デ−タをインクレメント
    し、度数デ−タが最大値となった極座標値(ρm,θm)
    を摘出してこの極座標値(ρm,θm)で表わされる直線
    を、車両走行レ−ン端白線を表わす直線として決定する
    近似直線の算出により、車両走行レ−ン左,右端白線を
    近似する二直線を求め、二直線の間の領域を探策して車
    両前方の路面上の物体を検出する、請求項1又は請求項
    2記載の、車両前方の物体の距離検出方法。
  4. 【請求項4】前記極座標変換を複数回繰返し、この繰返
    しにおいてρ,θは、先行の極座標変換では低密度かつ
    広い範囲とし、後行の極座標変換では高密度かつ先行の
    極座標変換で得た極座標値(ρm,θm)を中心とする狭
    い範囲とする、請求項3記載の、車両前方の物体の距離
    検出方法。
  5. 【請求項5】第1回の極座標変換では、特徴点(Xs,Ys)
    のそれぞれを、X,Y直交座標系の(Xch,Ych)を原点と
    するρ,θ極座標系に対して ρ=r/d1+c1, θ=a1・t+b1,t=0,1,2,・・・ なる関係のr,t極座標系の座標値(r,t)に、 r/d1+c1= (Xs−Xch)・cos(a1・t+b1) +(Ych−Ys)・sin(a1・t+b1) なる関係で変換し、極座標値(r,t)に割当てた記憶
    手段の度数デ−タをインクレメントし、度数デ−タが最
    大値となった座標値(rm1,tm1)を摘出し、第2回の
    極座標変換では、特徴点(Xs,Ys)のそれぞれを、X,Y
    直交座標系の(Xch,Ych)を原点とするρ,θ極座標系に
    対して ρ=r/d2+c2, θ=a2・t+b2,t=0,1,2,・・・ なる関係のr,t極座標系の座標値(r,t)に、 r/d2+c2= (Xs−Xch)・cos(a2・t+b2) +(Ych−Ys)・sin(a2・t+b2) なる関係で変換し、これにおいてa2はa1より小さい
    値、b2はb1よりもtm1に近い値、c2はc1よりもrm1
    に近い値、かつd2はd1よりも大きい値とし、極座標値
    (r,t)に割当てた記憶手段の度数デ−タをインクレ
    メントし、度数デ−タが最大値となった座標値(rm2,
    tm2)を摘出する、請求項4記載の、車両前方の物体の
    距離検出方法。
  6. 【請求項6】第3回の極座標変換で、特徴点(Xs,Ys)の
    それぞれを、X,Y直交座標系の(Xch,Ych)を原点とす
    るρ,θ極座標系に対して ρ=r/d3+c3, θ=a3・t+b3,t=0,1,2,・・・ なる関係のr,t極座標系の座標値(r,t)に、 r/d3+c3= (Xs−Xch)・cos(a3・t+b3) +(Ych−Ys)・sin(a3・t+b3) なる関係で変換し、これにおいてa3はa2より小さい
    値、b3はb2よりもtm2に近い値、c3はc2よりもrm2
    に近い値、かつd3はd2よりも大きい値とし、極座標値
    (r,t)に割当てた記憶手段の度数デ−タをインクレ
    メントし、度数デ−タが最大値となった座標値(rm3,
    tm3)を摘出する、請求項5記載の、車両前方の物体の
    距離検出方法。
JP05007019A 1993-01-19 1993-01-19 車両前方の物体の距離検出方法 Expired - Fee Related JP3143814B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP05007019A JP3143814B2 (ja) 1993-01-19 1993-01-19 車両前方の物体の距離検出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP05007019A JP3143814B2 (ja) 1993-01-19 1993-01-19 車両前方の物体の距離検出方法

Publications (2)

Publication Number Publication Date
JPH06215291A JPH06215291A (ja) 1994-08-05
JP3143814B2 true JP3143814B2 (ja) 2001-03-07

Family

ID=11654332

Family Applications (1)

Application Number Title Priority Date Filing Date
JP05007019A Expired - Fee Related JP3143814B2 (ja) 1993-01-19 1993-01-19 車両前方の物体の距離検出方法

Country Status (1)

Country Link
JP (1) JP3143814B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5877897A (en) 1993-02-26 1999-03-02 Donnelly Corporation Automatic rearview mirror, vehicle lighting control and vehicle interior monitoring system using a photosensor array
US6822563B2 (en) 1997-09-22 2004-11-23 Donnelly Corporation Vehicle imaging system with accessory control
US6891563B2 (en) 1996-05-22 2005-05-10 Donnelly Corporation Vehicular vision system
US7655894B2 (en) 1996-03-25 2010-02-02 Donnelly Corporation Vehicular image sensing system
RU2000128606A (ru) * 2000-11-15 2002-10-27 Тойота Дзидося Кабусики Кайся (Jp) Устройство распознавания дорожной поверхности
EP1504276B1 (en) 2002-05-03 2012-08-08 Donnelly Corporation Object detection system for vehicle
US7526103B2 (en) 2004-04-15 2009-04-28 Donnelly Corporation Imaging system for vehicle
WO2008024639A2 (en) 2006-08-11 2008-02-28 Donnelly Corporation Automatic headlamp control system
JP5959245B2 (ja) * 2012-03-14 2016-08-02 アルパイン株式会社 レーンマーク検出装置およびレーンマークの信頼度算出方法

Also Published As

Publication number Publication date
JPH06215291A (ja) 1994-08-05

Similar Documents

Publication Publication Date Title
JPH06213660A (ja) 像の近似直線の検出方法
US10573068B2 (en) Method, device, terminal and system for visualization of vehicle's blind spot and a vehicle
CN109859278B (zh) 车载相机系统相机外参的标定方法及标定系统
EP3566903B1 (en) Method and apparatus for vehicle position detection
US5892855A (en) Apparatus for detecting an object located ahead of a vehicle using plural cameras with different fields of view
JP3268325B2 (ja) 車上認識対象画像デ−タの前処理方法
CN103448634B (zh) 与图像裁剪叠加的动态参考
Muad et al. Implementation of inverse perspective mapping algorithm for the development of an automatic lane tracking system
KR20190132404A (ko) 신경망 이미지 프로세싱을 사용하는 3d 경계 박스들로서의 직접 차량 검출
JP2004117078A (ja) 障害物検出装置及び方法
CN108944668B (zh) 一种基于车载360度环视输入的辅助驾驶预警方法
JP2002197469A (ja) 車線検出装置
JP3143814B2 (ja) 車両前方の物体の距離検出方法
US11833968B2 (en) Imaging system and method
CN107796373A (zh) 一种基于车道平面几何模型驱动的前方车辆单目视觉的测距方法
KR20200063311A (ko) 자율주행용 영상인식 알고리즘 성능 강화 장치 및 방법
JP4296287B2 (ja) 車両認識装置
JPH0935197A (ja) 車輌認識方法
JP3588728B2 (ja) 車両前方の路上線検出装置
JP3146427B2 (ja) 車両前方の物体検出方法
JP3395393B2 (ja) 車両周囲表示装置
JPH06213659A (ja) 車両前方の物体検出方法
JP3456843B2 (ja) 前方車間距離計測装置
CN111881878A (zh) 一种环视复用的车道线识别方法
JPH0935059A (ja) 移動体上照度識別装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080105

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090105

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100105

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100105

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110105

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120105

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130105

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees