JP3776094B2 - Monitoring device, monitoring method and monitoring program - Google Patents
Monitoring device, monitoring method and monitoring program Download PDFInfo
- Publication number
- JP3776094B2 JP3776094B2 JP2003130008A JP2003130008A JP3776094B2 JP 3776094 B2 JP3776094 B2 JP 3776094B2 JP 2003130008 A JP2003130008 A JP 2003130008A JP 2003130008 A JP2003130008 A JP 2003130008A JP 3776094 B2 JP3776094 B2 JP 3776094B2
- Authority
- JP
- Japan
- Prior art keywords
- vehicle
- flow
- camera
- optical flow
- image
- 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 - Lifetime
Links
Images
Landscapes
- Image Processing (AREA)
- Closed-Circuit Television Systems (AREA)
- Traffic Control Systems (AREA)
- Image Analysis (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、カメラを用いて車両の周囲の状況を監視し、接近する物体を検出する車両用監視技術に関する。
【0002】
【従来の技術】
従来から、車両の周囲の状況を監視し、接近する物体を検出する車両用監視装置について、様々なアプローチが行われてきた。
【0003】
その一つに、レーダー等の障害物センサを用いたものがある。ところがこの手法は、障害物を確実に検出できるものの、その障害物が近づいているのか遠ざかっているのかといった複雑な判断には不向きである。また、降雨などの影響も大きく、検出範囲も比較的狭いので、障害物センサ単独で接近物を検出するのは困難だった。
【0004】
一方、カメラ画像を用いたアプローチも行われている。この手法によると、現状ではレーダーほどの信頼性は得られないが、デジタル化された画像情報の加工が容易であることから、障害物が近づいているのか遠ざかっているのかといった複雑な判断が可能である。また、検出範囲がカメラの画角と分解能によって決定されるため、非常に広い領域を監視することができる。
【0005】
カメラ画像を用いた手法としては、複数のカメラ画像を用いるステレオ法と、オプティカルフローを用いる方法とが広く知られている。ステレオ法は、カメラ間の視差を利用する方法であるが、カメラ同士のキャリブレーションが複雑である、複数のカメラを用いる必要があるためコストがかかる、といった問題点がある。
【0006】
オプティカルフローを用いた車両用監視装置は、例えば、特許文献1(第1の従来例)に開示されている。すなわち、カメラを車両後方に向けて設置し、水平方向に分割した複数の領域を画面内に設定し、それぞれの領域内で、所定の閾値以上の大きさを持ち、かつ、接近物を仮定したときの画像上の動きと同一の方向を持つオプティカルフローを抽出する。そして、このオプティカルフローに基づいて、接近物を判別する。
【0007】
また、カーブ走行中における対応については、すでにいくつかの方法が提案されている。
【0008】
例えば、特許文献2(第2の従来例)では、車両の舵角および走行速度から旋回ベクトルを求め、この旋回ベクトルを、実際に求まったオプティカルフローから引くことによって、オプティカルフローを補正する。そして、この補正によりカーブの影響を除いた後に、移動物体を抽出する。
【0009】
また、特許文献3(第3の従来例)では、オプティカルフローを、車速センサおよびヨーレートセンサの出力と、予め測定した画像位置と距離との対応関係とによって補正し、カーブの影響を除いた後、移動物体を抽出する。
【0010】
また、画像内の無限遠点(FOE)を利用した手法(例えば特許文献4参照)が、オプティカルフローを用いた接近物検出において広く用いられているが、この手法をカーブ走行に対応させた方法についてもいくつか提案されている。
【0011】
例えば、特許文献5(第4の従来例)では、FOEの移動量に相当する量によってオプティカルフローを補正する。
【0012】
また、特許文献6(第5の従来例)では、画面を複数に分割し、白線決定手段によって求められた白線情報に基づいて仮想FOEを求める。
【0013】
また、特許文献7(第6の従来例)では、カーブの影響を受けないオプティカルフローを用いた接近物検出の手法が開示されている。この手法では、カメラの運動パラメータから理論的に計算された移動ベクトルVdiと、画像から検出された移動ベクトルViとの差異εi2 を、画像から検出された移動ベクトルの信頼性を表すベクトルr1i,r2iを用いて、次式によって計算し、その差異の値を用いて移動している物体を検出する。
εi2=((Vdi−Vi)・r1i)2+((Vdi−Vi)・r2i)2
【0014】
【特許文献1】
特許第3011566号公報
【特許文献2】
特開2000−168442号公報
【特許文献3】
特開平6−282655号公報
【特許文献4】
特開平7−50769号公報
【特許文献5】
特開2000−251199号公報
【特許文献6】
特開2000−90243号公報
【0015】
【特許文献7】
特許第2882136号公報
【0016】
【発明が解決しようとする課題】
ところが、上述の従来技術では、次のような問題がある。
【0017】
まず、第1の従来例では、自車が直進していることを仮定しており、カーブでの利用は難しい。すなわち、「接近物を仮定したときの画像上の動きの方向」を利用して接近物を検出しているが、この「動きの方向」は、カーブを走行中の場合には一様には求まらない。この点について、図34を用いて説明する。
【0018】
カメラが後方を向いているとすると、車両がカーブを走行中の場合には、図34(a)のような画像が撮影される。第1の従来例では、図34(a)に示すように、水平方向に領域Lと領域Rとを分割して設定する。ここで、図34(b)に示すように、領域L内の領域AR1に接近車が存在する場合を仮定すると、「仮定された接近車の動きの方向」は図の矢印のように右下を向く。一方、同じ領域L内にあるが、領域AR1とは垂直方向における位置が異なる領域AR2においては、「仮定された接近車の動きの方向」は図の矢印のように左下を向き、領域AR1における動きの向きとは全く異なってしまう。このように、車両がカーブを走行中の場合には、同じ領域L内においても、その位置によって「仮定された接近車の動きの方向」は一様ではなくなり、したがって、接近車の検出が困難になる。
【0019】
また、車両が直線道路を走行中の場合でも、画面の上部と下部とでは、オプティカルフローの大きさは著しく異なる。すなわち、画面上部では、自車から遠く離れた領域が映っているので、検出されるオプティカルフローは非常に小さい。これに対して、画面下部では、自車に非常に近い領域が映っているので、検出されるオプティカルフローは相対的に非常に大きい。
【0020】
このため、画面の上部と下部について、同一の閾値を用いて処理を行うと、接近車の検出精度が劣化する可能性が高い。例えば、画面上部の小さなフローを基準に閾値を定めたとき、閾値は非常に小さな値になるので、この閾値によって画面下部における処理を行うと、ノイズが出やすくなる。一方、画面下部の大きなフローを基準に閾値を定めた場合、閾値は非常に大きな値になるので、この閾値によって画面上部における処理を行うと、ほとんどのオプティカルフローが閾値よりも小さくなり、接近物は検出できなくなってしまう。
【0021】
さらに、第1の従来例では、所定値以上の大きさを持つオプティカルフローのみを用いて、接近車を検出している。このため、自車とほぼ等速度で走る並走車については、オプティカルフローの大きさがほぼ0になるので、検出することができない。
【0022】
また、第2の従来例については、自車の旋回によって生じる旋回ベクトルは、その旋回ベクトルに係る対象点のカメラからの3次元相対位置によって、その大きさおよび向きが異なる。このため、カメラ画像上での点と実世界3次元上での点との対応関係が求まっていないと、旋回ベクトルを推定することができない。
【0023】
この点を、図35を用いて説明する。図35はカメラ2で撮影されたカメラ画像と実世界上の3次元座標の関係を示したものである。カメラ画像の水平方向にXi軸、垂直方向にYi軸をとり、実世界座標系のXw,Yw,Zw軸も図35に示すようにとる。つまり、平面Xw−Zwは路面と平行な平面であり、Xw方向は自車両の左右方向、Yw方向は路面に対して垂直方向、Zw方向は自車両の前後方向とする。また、カメラの焦点位置を原点、カメラの光軸方向をZc軸としたカメラ座標系(Xc,Yc,Zc)を定める。もちろん、これらの軸方向はこれに限ったものではない。これらの座標系は、透視投影変換である(数1)と、座標変換である(数2)の関係をもつ。
【数1】
【数2】
【0024】
ただし、fはカメラの焦点距離、rはカメラの内部パラメータと、カメラの設置位置すなわち実世界座標系におけるカメラ座標系の位置関係とによって定まる定数であり、既知である。この関係式から、カメラ画像上の任意の点に対応する実世界の3次元座標は、カメラの焦点位置を通るある直線上にのることは分かるものの、それ以上の情報を得ることはできないので、その位置を一意に決定することはできない。
【0025】
すなわち、図36に示すように、実世界座標系からカメラ画像上の点への変換は透視投影変換(数1)および座標変換(数2)を用いることによって可能であるが、逆に、カメラ画像上の点から実世界座標系への変換は、これらの関係式のみでは不可能である。第2の従来例における旋回ベクトルは、カメラ座標系のそれぞれの点について求めなければならないが、図36に示したように他に条件がなければ、この変換は不可能である。
【0026】
第3の従来例についても、第2の従来例と同様に、画像位置と距離との対応関係の求め方には触れられておらず、このままでは実現できない。
【0027】
また、第4の従来例については、FOEは直進時のみしか存在せず、カーブではそもそも存在しないものであるので、FOEを用いてオプティカルフローを補正すると、直進を近似できないような急激なカーブでは誤差が非常に大きくなり、実用的ではない。
【0028】
また、第5の従来例については、当然のことながら、白線がない道路を走行する場合には利用できない。
【0029】
また、第6の従来例については、画像内では移動物体でないものが支配的であることを仮定しており、トラックのような大きな移動物体がカメラの近傍に存在する場合には、検出に失敗するという問題がある。
【0030】
前記の問題に鑑み、本発明は、オプティカルフローを用いて接近物を検出する車両用監視装置において、たとえカーブ走行中であっても、接近物を精度良く検出可能にすることを課題とする。
【0031】
【課題を解決するための手段】
前記の課題を解決するために、本発明は、車両の周囲を映すカメラを用いて、前記カメラによって撮影された画像からオプティカルフローを求め、当該車両の動きを基にして、背景と仮定した場合の前記画像のオプティカルフローである背景フローを求め、前記オプティカルフローと前記背景フローとを比較し、当該車両の周囲にある物体の動きを検出するものである。
【0032】
この発明によると、背景フローはカメラ画像を背景と仮定した場合のオプティカルフローであるので、この背景フローとカメラ画像から実際に求められたオプティカルフローとを比較することによって、車両周囲にある物体の動きを、精度良く検出することができる。また、たとえ車両がカーブ走行中であっても、画像上のそれぞれの点における背景フローとオプティカルフローとの比較によって検出を行うため、接近物を正確に検出することができる。また、画像から求めたオプティカルフローの大きさが小さくなってしまうような並走車や遠方の接近物についても、そのオプティカルフローは、画像上のその点における背景フローとは大きく異なるため、容易に検出可能である。
【0033】
【発明の実施の形態】
本発明の第1態様によれば、車両の周囲を映すカメラを用いた監視装置として、前記カメラによって撮影された画像からオプティカルフローを求め、当該車両の動きと、前記カメラが撮影している空間をモデル化した空間モデルとを用いて、背景と仮定した場合の前記画像のオプティカルフローである背景フローを求め、前記オプティカルフローと前記背景フローとを比較し、当該車両の周囲にある物体の動きを検出するものを提供する。
【0034】
本発明の第2態様によれば、前記空間モデルは、前記カメラが撮影している各物体の距離データに基づいて生成された第1態様の監視装置を提供する。
【0035】
本発明の第3態様によれば、前記距離データは、当該車両に設けられた障害物センサによって測定された第2態様の監視装置を提供する。
【0036】
本発明の第4態様によれば、前記空間モデルは、少なくとも、走行路面をモデル化した路面モデルを含む第1態様の監視装置を提供する。
【0037】
本発明の第5態様によれば、前記空間モデルは、少なくとも、走行路面に対して垂直な壁面を仮定した壁面モデルを含む第1態様の監視装置を提供する。
【0038】
本発明の第6態様によれば、前記壁面は、車両の後側方にあると仮定された第5態様の監視装置を提供する。
【0039】
本発明の第7態様によれば、オプティカルフローと背景フローとの比較の際に、前記オプティカルフローの大きさが所定値よりも大きいか否かを判定し、所定値よりも大きいときは、角度差を用いて比較を行う一方、そうでないときは、角度差を用いないで比較を行う第1態様の監視装置を提供する。
【0040】
本発明の第8態様によれば、前記所定値は、画像上の当該位置における背景フローの大きさに応じて設定されている第7態様の監視装置を提供する。
【0041】
本発明の第9態様によれば、オプティカルフローと背景フローとの比較によって、前記オプティカルフローの中から接近物候補フローを特定し、近傍にある前記接近物候補フローを関連付けることによって接近物候補領域を生成し、前記接近物候補領域の面積が所定値よりも小さいとき、この接近物候補領域に係る接近物候補フローはノイズであると判断する第1態様の監視装置を提供する。
【0042】
本発明の第10態様によれば、車両の周囲を映すカメラを用いた監視装置として、前記カメラによって撮影された画像からオプティカルフローを求め、前記オプティカルフローと、当該車両の動きと、前記カメラが撮影している空間をモデル化した空間モデルとを基にして、前記画像上の点の実世界座標上における動きである空間フローを求め、前記空間フローを基にして当該車両の周囲にある物体の動きを検出するものを提供する。
【0043】
本発明の第11態様によれば、監視方法として、車両の周囲を映すカメラによって撮影された画像から、オプティカルフローを求め、前記車両の動きと、前記カメラが撮影している空間をモデル化した空間モデルとを用いて、背景と仮定した場合の前記画像のオプティカルフローである背景フローを求め、前記オプティカルフローと前記背景フローとを比較し、前記車両の周囲にある物体の動きを検出するものを提供する。
【0044】
本発明の第12態様によれば、前記車両に設けられた車速センサおよび舵角センサの出力を用いて、前記車両の動きを推定する第11態様の監視方法を提供する。
【0045】
本発明の第13態様によれば、監視用プログラムとして、コンピュータに、車両の周囲を映すカメラによって撮影された画像について、オプティカルフローを得る手順と、前記車両の動きと、前記カメラが撮影している空間をモデル化した空間モデルとを用いて、背景と仮定した場合の前記画像のオプティカルフローである背景フローを求める手順と、前記オプティカルフローと前記背景フローとを比較し、当該車両の周囲にある物体の動きを検出する手順とを実行させるものを提供する。
【0046】
以下、本発明の実施の形態について、図面を参照して説明する。
【0047】
(第1の実施形態)
本発明の第1の実施形態では、次のようにして、車両周囲の監視を行う。まず、車両の周囲を映すカメラからの画像を用いて、オプティカルフローを求める。次に、カメラ画像上の点と実世界3次元座標との対応を「空間モデル」として推定する。図37に示すように、この空間モデルに透視投影変換を用いることによって、カメラ画像上の点と実世界3次元座標とを正確に対応付けることができる。そしてこの空間モデルと、推定された自車動き情報とを用いて、画像上の各点が移動物体ではなく背景であった場合を仮定したオプティカルフローを計算によって求める。このようにして求めたオプティカルフローを「背景フロー」と呼ぶ。この背景フローと、画像から実際に求めたオプティカルフローとを比較することによって、接近物を検出する。
【0048】
すなわち、背景フローは、カメラ画像上の点と実世界3次元座標との対応を正確に考慮して計算されたものであるので、本実施形態によると、従来例と比べて、車両周囲にある物体の動きを精度良く検出することができる。また、カーブ走行中であっても、画像上のそれぞれの点における背景フローとオプティカルフローとの比較によって検出を行うため、接近物を正確に検出することができる。また、画像から求めたオプティカルフローの大きさが小さくなってしまうような並走車や遠方の接近物についても、そのオプティカルフローは、その点における背景フローとは大きく異なるため、本実施形態では容易に検出可能になる。
【0049】
図1は本実施形態に係る車両用監視装置の基本構成を概念的に示すブロック図である。本実施形態に係る車両用監視装置は、車両の周囲を映すカメラ11を用いて、当該車両の周囲にある物体の動きを検出する。具体的には図1に示すように、基本構成として、カメラ11によって撮像された画像からオプティカルフローViを算出するオプティカルフロー検出部12と、当該車両の動きを検出する自車動き検出部13と、カメラ11が撮影している空間のモデルを推定する空間モデル推定部14と、自車動きと空間モデルとに基づいて背景フローVdiを推定する背景フロー推定部15と、オプティカルフローViと背景フローVdiとを比較することによって、接近物を検出する接近物検出部16とを備えている。
【0050】
カメラ11は、典型的には自車両に設置されており、当該車両の周囲の状況をセンシングする。また、道路上や信号機、建物などのインフラに取り付けられたカメラや周辺車両に取り付けられたカメラを、自車に設置されたカメラと併せて、または単独で、用いてもよい。これは、見通しの悪い交差点など、自車からは接近車が見えにくい状況などにおいて、有効である。
【0051】
<オプティカルフロー検出>
オプティカルフロー検出部12は、カメラ11によって撮影された時間的に異なる2枚の画像から、画像上における見かけの動きを示すベクトル、すなわち「オプティカルフロー」を検出する。オプティカルフローの検出には、画像の時空間微分の拘束方程式を用いる勾配法と、テンプレートマッチングを利用するブロックマッチング法とが広く知られている(「ダイナミックシーンの理解」浅田稔著、電子情報通信学会)。ここではブロックマッチング法を用いるものとする。
【0052】
ブロックマッチング法は、一般的には全探索を行うので、膨大な処理時間を必要とする。このため、画像の階層化という手法が、処理時間の削減のために広く用いられている(「3次元ビジョン」除剛、辻三郎共著、共立出版)。すなわち、与えられた画像から、縦横それぞれ1/2,1/4,1/8,…に圧縮した階層化画像をつくる。この画像の階層化によって、分解能が高い(サイズが大きい)画像では遠く離れた2点も、分解能が低い(サイズが小さい)画像では近くなる。そこでまず、分解能が低い画像についてテンプレートマッチングを行い、その結果求まったオプティカルフローの近傍のみで、次に分解能が高い画像についてテンプレートマッチングを行う。このような処理を繰り返すことによって、最終的に、分解能が高い原画像でのオプティカルフローを求めることができる。しかも、局所的な探索ですむので、処理時間を大幅に削減することができる。
【0053】
<自車動き推定>
自車動き推定部13は、自車の左右両車輪の回転速度とハンドルの舵角とを求め、これによって、自車の動きを推定する。この推定方法を図2および図3を用いて説明する。なお、ここでは、タイヤの横滑りが生じないと近似したいわゆるアッカーマンモデル(2輪モデル)を用いた。
【0054】
図2はアッカーマンステアリングのモデルを示す図である。タイヤの横滑りがないと仮定した場合、ステアリングを切ると、車両は後輪3b軸の延長線上の点Oを中心に旋回する。後輪3b中央の回転半径Rsは、前輪3aの切れ角βおよびホイールベースlを用いて(数3)のように表される。
【数3】
【0055】
図3は2次元上の車両の動きについて示したものである。図3に示すように、後輪3bの中央がCt からCt+1 に動いたとすると、その移動量hは、左右の車輪速Vl,Vr、または、後輪3b中央の回転半径Rsおよび移動回転角γを用いて(数4)のように表される。
【数4】
(数3)および(数4)より、移動回転角γは(数5)のように表される。
【数5】
したがって、車両の平面に対する回転量αは(数6)で表される。
【数6】
【0056】
またCt からCt+1 への移動ベクトルTは、車両進行方向にX軸、垂直方向にY軸をとると、(数7)で表される。
【数7】
(数6)および(数7)より、車両の左右車輪速Vl,Vrおよびハンドル舵角βが分かれば、車両の動きが推定できる。
【0057】
もちろん、車輪速とハンドルの舵角情報だけでなく、車速センサ、ヨーレートセンサを用いて直接、車両の動きを求めてもよい。さらには、GPSや地図情報を用いて車両の動きを求めてもよい。
【0058】
<空間モデル推定>
空間モデル推定部14は、カメラが撮影している空間をモデル化した空間モデルを推定する。空間モデルは上述したように、カメラ画像上の点と実世界3次元座標との対応関係を求めるために用いられる。すなわち、カメラ画像上の任意の点は、(数1)および(数2)を用いることによって、カメラの焦点位置を通る実世界空間上のある直線に対応付けることができる。この実世界空間上の直線と、推定した空間モデルとの交点を求めることによって、カメラ画像上の任意の点を実世界の3次元座標に射影することができる。
【0059】
ここでは、カメラ11が撮影している各物体の距離データに基づいて、空間モデルを生成するものとする。この距離データの測定は、例えば、両眼視、モーションステレオ法を利用したり、レーザ、超音波、赤外線、ミリ波などを用いた障害物センサが車両に設けられている場合には、これを利用したりすることによって実行できる。
【0060】
また、建物等のインフラに固定されたカメラを用いる場合には、カメラに映る建物等の形状はきわめてまれにしか変化しないので、カメラが撮影している空間の3次元情報は既知である。この場合は、空間モデルを推定する必要はなく、カメラごとに既知の空間モデルを予め定めておけばよい。
【0061】
さらに、カメラが車両に設置されている場合であっても、GPS等を用いてその位置を正確に知ることができるので、現在位置を詳細な地図データと照合することによって、空間モデルを推定することも可能である。例えば、車両がトンネルを走行中であることがGPSと地図データから分かったとすると、そのトンネルの高さや長さ等の形状情報から空間モデルを生成できる。このような形状情報は、地図データに予め持たせておいてもよいし、トンネルなどのインフラ側に保持させておき、通信によって得られるようにしてもよい。例えば、トンネルの形状情報を、トンネル入口等に設けたDSRC等の通信手段によって、トンネルに入ろうとする車両に送信する。もちろん、このような方法はトンネルに限ったものではなく、一般道、高速道路、住宅地または駐車場等において用いることも可能である。
【0062】
<背景フロー推定>
背景フロー推定部15は、空間モデルに対応する点が動いていない、すなわち、移動物体でなく背景であると仮定した場合の画像の動き(オプティカルフロー)を、背景フローとして検出する。
【0063】
図4は背景フロー推定部15の動作を示すフローチャートであり、図5は車両1がカーブなどで旋回している状況を想定した概念図である。図5ではカメラ2が車両1に設置されているので、カメラ2の動きと車両1の動きとは等しい。また、5はカメラ2に映された背景物体である。
【0064】
まず、時刻t−1において撮影されたカメラ画像上の任意の点(PreXi,PreYi )を、空間モデル推定部14によって推定された空間モデルを用いて、実世界3次元座標(Xw,Yw,Zw)に射影する(S11)。このとき、(数1)に示す透視投影変換式と(数2)に示す座標変換式とを用いる。なお、(数2)における実世界座標系でのカメラの焦点位置は、時刻t−1におけるカメラ2の焦点位置である。
【0065】
次に、自車動き推定部13によって推定された時刻t−1から時刻tまでの車両1の移動量hを基にして、時刻tにおける実世界での自車位置、すなわち実世界座標系におけるカメラ2の焦点位置を求める(ステップS12)。そして、この実世界座標系におけるカメラ2の焦点位置に基づき、(数2)の各定数rを変更する(ステップS13)。この処理を繰り返すことによって、(数2)における実世界座標系におけるカメラの焦点位置は、更新され続け、常に正確な位置を示すことになる。
【0066】
さらに、(数1)と更新した(数2)とを用いて、ステップS11で求めた実世界座標(Xw,Yw,Zw)をカメラ画像上の点(NextXi,NextYi)に再射影する(ステップS14)。このようにして求めたカメラ座標(NextXi,NextYi)は、時刻t−1でのカメラ画像上の点(PreXi,PreYi )が、時刻t−1から時刻tまでの間に動いていない背景物体5の一点であると仮定した場合の、時刻tでのカメラ画像上の位置を示している。そこで、時刻t−1におけるカメラ画像上での点(PreXi,PreYi )が背景の一部であると仮定した場合の背景フローとして、(NextXi-PreXi,NextYi-PreYi )を求める(ステップS15)。
【0067】
なお、ここでは説明を簡単にするために、車両がカーブする場合を例にとって説明したが、直進時や駐車時などであっても、同様の方法によって、背景フローを求めることができる。
【0068】
<接近物検出>
図6は接近物検出部16の構成を概念的に示すブロック図である。図6において、フロー比較部16aはオプティカルフロー検出部12によってカメラ画像から実際に求められたオプティカルフローViと、背景フロー検出部15によって求められた背景フローVdiとを比較し、接近物候補フローを検出する。そしてノイズ除去部16bはフロー比較部16aによって求められた接近物候補フローからノイズを除去し、接近物のフローのみを検出する。
【0069】
図7はフロー比較部16aの動作を示すフローチャートである。ここで、オプティカルフローViと背景フローVdiとの比較は、原則として、その角度差を用いて行う。ところが、オプティカルフローViの大きさが小さいときは、その方向情報の信頼性が低いため、判別精度が保てなくなる。例えば、自車とほぼ等速度で並走している他車両に係るオプティカルフローViは、大きさは非常に小さく、かつ、その方向は撮影タイミングに応じて自車を向いたり反対方向を向いたりして、刻々と変化する。そこで本実施形態では、オプティカルフローViの大きさが所定値よりも小さいときは、角度差を用いないで、別の比較基準(S43)を用いることによって、判別の信頼性を上げている。
【0070】
具体的にはまず、オプティカルフローViの大きさを調べる(S41)。オプティカルフローViが十分な大きさを有するとき(所定値THViよりも大きい場合)、オプティカルフローViは方向情報について十分な信頼性を持っていると考えられるので、背景フローVdiとの比較を角度差を用いて行う(S42)。すなわち、オプティカルフローViと背景フローVdiとの角度差の絶対値が所定値ThArg以上のとき、そのオプティカルフローViは背景フローVdiとは異なるものと考えられるので、接近物のフローと判別する(S44)。また角度差の絶対値が十分に小さいとき(S42でNo)、そのオプティカルフローViは背景フローVdiに近いので、接近物のフローではないと判別する(S45)。なお、閾値THViは0.1[Pixel]程度、閾値THArgはπ/2程度であるのが好ましい。ここで、ステップS41でYESと判断されたときに、角度情報のみを用い、大きさ情報を用いないのは、自車から離れていく移動物体を接近物と判別しないようにするためである。もちろん、フローのベクトル差の絶対値を判別基準として用いてもかまわない。
【0071】
また、オプティカルフローViが十分な大きさを有しないとき(S41でNo)、背景フローとの比較を角度差を用いて行うことはできない。そこで、この場合はフローの大きさに着目する。すなわち、オプティカルフローViと背景フローVdiとのベクトル差の絶対値が所定値THVdi以上であるか否かを判定し(S43)、所定値THVdi以上のときは接近物のフローと判別し(S44)、そうでないときは接近物のフローではないと判別する(S45)。オプティカルフローViの大きさが小さく、かつ、それが接近物である状況としては、
1. 接近物が自車とほぼ等速度で並走している
2. 接近車が遠方を走っている
の2つが考えられるが、いずれの状況においても背景フローVdiは正確に求められるので、高精度の接近物判別ができる。なお、閾値THVdiは0.1[Pixel]程度であるのが好ましい。
【0072】
また、ステップS43において、オプティカルフローViの大きさが十分小さいことに着目して、オプティカルフローViと背景フローVdiとのベクトル差の絶対値ではなく、背景フローVdiの大きさのみを所定値と比較するようにしてもよい。この場合、背景フローVdiが十分大きいときは、接近物フローであると判別し、十分小さければ接近物のフローではないと判別すればよい。
【0073】
また、ここでのフロー比較で用いた閾値THVi,THArg,THVdiは、画像上の位置の関数として設定してもよい。例えば、背景フローVdiが小さい位置では閾値THVi,THVdiを小さくし、背景フローVdiが大きい位置では閾値THVi,THVdiを大きくする。これにより、ノイズの影響を抑えつつ、かつ、遠方においても正確な判別を行うことができる。
【0074】
図8はノイズ除去部16bの動作を示すフローチャートである。フロー比較部16aによって接近物フローと検出されたものの中にはノイズが含まれているので、これらをすべて接近物であると検出してしまうと、検出精度の劣化をまねいてしまう。そこで、ノイズ除去部16bは、ノイズや接近物のモデル化を行い、そのモデルをフロー比較部16aによって検出された接近物フロー(接近物候補フロー)と比較することによって、接近物のみを検出する。
【0075】
まず、接近物候補フローがノイズである場合、時間的にも空間的にも、連続しては検出されないはずである。ところが、接近物候補フローがノイズでなく実際の接近物に係るものである場合は、接近物はある程度の大きさを有するため、類似の接近物候補フローが、空間的に、接近物の大きさ分の領域を占めるはずである。
【0076】
そこで、近傍にある接近物候補フローを関連付け、関連付けた接近物候補フローに係る領域同士を連結し、連結された領域を接近物候補領域Aiとする(S51)。そしてその接近物候補領域Aiの面積Siを求め(S52)、この面積Siを所定値THSiと比較する(S53)。ここで、接近物候補領域Aiがカメラから離れているときは所定値THSiを小さく設定する一方、接近物候補領域Aiがカメラに近いときは所定値THSiを大きく設定する。面積Siが所定値THSiよりも小さいとき(S53でNo)は、領域Aiはノイズであると判断する(S54)。一方、面積Siが所定値THSi以上のときはステップS55に進む。
【0077】
ステップS55では、接近物のモデル化によるノイズ除去処理を行う。カメラが車両に設置されていることを考慮すると、接近物は自動車やバイク、自転車等であるが、いずれの接近物も路面上を走行している物体である。そこで、接近物候補領域Aiが空間モデルの路面上に存在するか否かを判定し(S55)、存在していないときは領域Aiはノイズであると判断し(S54)、次のフレームの処理を行う。一方、接近物候補領域Aiの少なくとも一部が路面上に存在しているときは、ステップS56に進む。
【0078】
ステップS56では、時間方向のフィルタリング処理を行う。接近物は、画面上に急に現れたり、あるいは急に消えたりすることはありえないので、その領域は数フレーム連続して存在するはずである。図9は直進走行時に他の車両が後方から接近してくる状況を示している。現時刻tでは、図9(a)の左図のように接近車6が撮影されるので、接近物候補領域Atは図9(a)の右図のように検出される。また、現時刻tよりも少し前の時刻t−1,t−2,…,t−Nでは、接近物候補領域At−1,At−2,…,At−Nはそれぞれ図9(b),(c),(d)のように検出される。ここで、時間間隔が十分小さいものとすると、接近車6は画像上で大きく動かないので、領域At−1,At−2,…,At−Nは領域Atとその一部が重なる。これに対して、接近物候補領域がカメラの振動等に起因して生じたものであるとき、その候補領域は短時間しか検出されないはずである。
【0079】
そこで、接近物領域候補Aiに対応するその前数フレームの領域において、接近物領域候補が存在する割合を所定値と比較する(S56)。そして、その割合が所定値よりも低いとき、その接近物候補領域Aiは接近物である可能性は低いので、この接近物候補領域Aiを保持して(S57)、次のフレームの処理を行う。一方、その前数フレームにおいて接近物領域候補が存在する割合が所定値よりも高いとき、その接近物候補領域Aiは接近物によるものと判断し、次のフレームの処理を行う(S58)。例えば、前10フレーム中で6回以上検出されたとき、接近物であると判断する。
【0080】
また、カメラを車両の前方や後方に向けて設置し、かつ、接近物は乗用車のみであると仮定すると、カメラに映る接近物の画像は乗用車を前方か後方から見た画像のみになる。このため、接近物領域の大きさは、幅約2m、路面からの高さ約1.5mと限定できる。そこで、接近物候補領域をこの大きさに設定し、領域内に存在する接近物フローの個数が最大になるように、接近物候補領域の位置を設定してもよい。この場合、接近物候補領域に含まれる接近物フローの個数が所定値よりも大きいか否かによって、接近物とノイズとの判別を行うことができる。このような処理を、ステップS51〜S53の代わりに実行してもよい。
【0081】
以上のように本実施形態によると、背景フローとカメラ画像から実際に求められたオプティカルフローとを比較することによって、車両周囲にある物体の動きを、精度良く検出することができる。
【0082】
また、たとえ車両がカーブ走行中であっても、画像上のそれぞれの点における背景フローとオプティカルフローとの比較によって検出を行うため、接近物を正確に検出することができる。また、画像から求めたオプティカルフローの大きさが小さくなってしまうような並走車や遠方の接近物についても、そのオプティカルフローは、画像上のその点における背景フローとは大きく異なるため、容易に検出可能である。
【0083】
<背景フロー推定の他の例>
(その1)
図5のように、カメラ2が回転半径Rs、回転角γで動き、カメラ2に映っている物体5は全く動かなかったとすると、このときに求まるオプティカルフローは、図10のように、カメラ2は動いていないが、カメラ2に映る全ての物体5が回転角γで動いた場合に求まるオプティカルフローと等しくなる。すなわち、カメラが実世界座標系においてベクトルVだけ移動する場合に求められるオプティカルフローと、カメラに映る全ての物体がベクトル(−V)だけ移動する場合に求められるオプティカルフローとは、等しい。
【0084】
そこで、カメラの動きに基づいて背景フローを求めるのではなく、カメラは固定されており動かないと仮定し、空間モデルを動かすことによって背景フローを求めてもよい。図11はこのような場合の背景フロー推定の処理を示すフローチャートである。
【0085】
まず、図4のステップS11と同様に、時刻t−1において撮影されたカメラ画像上の任意の点(PreXi,PreYi )を、空間モデル推定部14によって推定された空間モデルを用いて、実世界3次元座標(PreXw,PreYw,PreZw )に射影する(S21)。このとき、(数1)に示す透視投影変換式と(数2)に示す座標変換式とを用いる。
【0086】
次に、自車動き推定部13によって推定された時刻t−1から時刻tまでの車両1の移動量hを基にして、ステップS21で求めた実世界座標(PreXw,PreYw,PreZw )を車両1に対して相対的に移動させる。すなわち、実世界座標(PreXw,PreYw,PreZw )を、移動量hに係る回転中心座標Oおよび回転角γを用いて回転させ、実世界座標(NextXw,NextYw,NextZw)を求める(S22)。さらに、(数1),(数2)を用いて、ステップS22で求めた実世界座標(NextXw,NextYw,NextZw)をカメラ画像上の点(NextXi,NextYi )に再射影する(S23)。そして、図4のステップS15と同様に、(NextXi-PreXi, NextYi-PreYi)を背景フローとして求める(S24)。
【0087】
なお、ステップS22で求められた(NextXw,NextYw,NextZw)は、時刻t−1の空間モデルから予測された時刻tにおける空間モデルともいえるので、このような処理を続けることによって空間モデルを更新してもよい。または、接近物検出部16によって背景と判定された部分のみ、このような空間モデルの更新処理を行い、それ以外の領域については上述の方法によって空間モデルを求め直すようにしてもよい。
【0088】
(その2)
上述の2つの方法はいずれも、カメラ画像上の点を実世界3次元座標に変換し、実世界座標系で仮定した空間モデルを用いて処理を行った。これに対して、カメラ座標系で全ての処理を行うことも可能である。図12はこのような場合の背景フロー推定の処理を示すフローチャートである。この場合には、空間モデルはカメラ座標系で記述する必要がある。カメラ座標系と実世界座標系とは1対1に対応するので、実世界座標系で仮定した空間モデルは、(数2)に従って、カメラ座標系に容易に変換することができる。
【0089】
まず、時刻t−1において撮影されたカメラ画像上の任意の点(PreXi,PreYi)を、カメラ座標系で記述された空間モデルを用いて、カメラ座標系での3次元位置(PreXc,PreYc,PreZc )に射影する(S31)。このとき、(数1)に示す透視投影変換式を用いる。
【0090】
次に、自車動き推定部13によって推定された時刻t−1から時刻tまでの車両1の移動量hを基にして、ステップS31で求めたカメラ座標(PreXc,PreYc,PreZc )を車両1に対して相対的に移動させる。すなわち、カメラ座標(PreXc,PreYc,PreZc )を、移動量hに係るカメラ画像系での回転中心座標C、回転角γc を用いて回転させ、カメラ座標(NextXc,NextYc,NextZc)を求める(S32)。さらに、(数1)を用いて、ステップS32で求めたカメラ座標(NextXc,NextYc,NextZc)をカメラ画像上の点(NextXi,NextYi )に再射影する(S33)。そして、図4のステップS15と同様に、(NextXi-PreXi,NextYi-PreYi )を背景フローとして求める(S34)。
【0091】
このように、空間モデルは、カメラ画像から実世界3次元座標系への変換、または、カメラ画像からカメラ座標系への変換のために、利用される。そこで、空間モデルを、カメラ画像から実世界3次元座標系への変換式、または、カメラ画像からカメラ座標系への変換式として記述することも可能である。
【0092】
図13は本発明に係る背景フローが矢印で示されたカメラ画像の例である。すでに説明したように、背景フローは、実際にカメラ画像から求められたオプティカルフローと比較を行うために用いられ、接近物の検出基準となる。図13を見ると分かるように、背景フローは、走行路面のカーブを考慮したものになっている。すなわち、本発明は、従来と比べて、カーブにおいても接近物を精度良く検出可能であることが、図13から直感的に理解できる。
【0093】
本発明によると、自車両に接近してくる物体のみを正確に検出することが可能である。そして、この検出結果を用いて、例えば、接近車のみを強調した画像を表示したり、接近車の存在を音や画像、ハンドルや椅子の振動、LEDのような危険告知ランプの点灯などによって警告したり、することができる。さらに、危険な状況のときに、ステアリングやブレーキを自動で制御して、接近車との接触や衝突を回避するようにしてもかまわない。
【0094】
ここでは、背景フローを利用した強調表示について説明する。
【0095】
図38はカーブ走行中の後方画像に、接近車に対応するオプティカルフローのみを重畳表示した例である。図38では、自車両からほぼ等距離だけ離れた車両A,Bがほぼ等速度で接近している。図38に示すように、カーブ外側の車Aについては、重畳表示されたオプティカルフロー(矢印)によって、利用者はその接近を認識できる。ところが、カーブ内側の車Bについては、オプティカルフローはほぼ0であり、利用者はその接近を認識できない。このように、カーブ走行中では、単にオプティカルフローを重畳表示しただけでは、接近物の存在が認識できない場合がある。
【0096】
この原因は、自車両のカーブ走行によって生じる背景フローと、接近車の動きによるフローとが互いに打ち消し合うことにある。図39は図38の画像の背景フローである。図39において、矢印A2,B2はそれぞれ車A,Bの位置に対応する背景フローである。図39から分かるように、車Bの位置での背景フローB2が車Bの動きと逆向きになっている。
【0097】
そこで、接近車の動きのみを際立たせるために、求めたオプティカルフローから背景フローをベクトル的に減算し、得られたフローをカメラ画像に重畳表示する。図40はその表示例である。図38と異なり、接近車A,Bともにフローが表示されており、したがって、利用者は接近車の存在を確実に認識することができる。
【0098】
もちろん、上述のように接近物フローを連結して接近物領域を求め、後述の図26(b)のように接近物領域に枠を描いて強調表示してもかまわない。さらに、接近物フローや接近物領域が大きいほど、接近車がより接近しており危険度が高い、と考えられるので、接近物フローや接近物領域の大きさに応じて、枠の色や太さ、線種等を切り替えてもよい。
【0099】
また、画像の代わりに、または画像とともに、音で警告してもかまわない。この場合、接近物が存在する位置の方から音が聞こえるようにすると効果的である。また、危険度に応じて、音の大きさやメロディ、テンポ、周波数などを変えてもよい。例えば、車が右後方からゆっくりと接近しているときは、運転者の右後方から小さな音を発し、車が左後方から急速に近づいているときは、左後方から大きな音を発するようにすればよい。
【0100】
また上述の実施形態では、自車の動きを車輪の回転速度とハンドルの舵角から推定した。これに対して、車両に設置されたカメラの画像を用いて、車両(カメラ自身)の動きを検出することも可能である。この手法について説明する。
【0101】
ここでは、静止平面である路面の式は既知であり、かつ車両の動きは微小であると仮定し、路面上の点の画像上での動きから、車両(カメラ)の動きパラメタを推定する。仮に車両が高速で移動していたとしても、撮像時のフレームレートを上げることによって、カメラの動きは画像間で微小となるので、この仮定は一般性を失わせるものではない。
【0102】
図41は本手法を説明するための模式図である。図41に示すように、カメラ2の動きによって、静止平面上の点Pのカメラ座標系における座標値が、PE=(x,y,z)からPE’=(x’,y’,z’)に変化したとする。カメラ2の動きは、回転R(wx,wy,wz)と平行移動T(Tx,Ty,Tz)によって表される。すなわち、カメラ2の動きは、次のように表される。
【数12】
【0103】
ここで、静止平面がz=ax+by+cと表されるものとすると、画像座標上での点Pの移動(u,v)→(u’,v’)について、次の式が成り立つ。
【数13】
【0104】
ここで、画像座標上の対応点(u,v)(u’,v’)と静止平面の式の係数a,b,cが既知であるとし、上の式を未知パラメタ(wx,wy,wz,tx,ty,tz)についてまとめると、次のようになる。
【数14】
【数15】
【0105】
これをAC=Rとおくと、車両の動きである回転と平行移動の項を,最小二乗法を用いて求めることができる。
C=(AtA)-1AtR
【0106】
(第2の実施形態)
図14は本発明の第2の実施形態に係る車両用監視装置の基本構成を概念的に示すブロック図である。図14において、図1と共通の構成要素には図1と同一の符号を付しており、ここではその詳細な説明を省略する。第1の実施形態と異なるのは、空間モデル推定部14Aが、自車動き推定部13によって推定された自車動き情報を用いて、比較的単純な空間モデルを推定する点である。
【0107】
一般に、車両が走行する状況では、路面上に、建物や電柱、看板、木など様々なものが存在している。このため、カメラ11には、路面、建物、電柱、看板、木、さらには空など様々なものが映される。ここでは、カメラ11に映される様々なものを単純な空間モデルによって仮定する方法を考える。
【0108】
カメラに映るものは様々であるが、カメラを車両の後方下向きに設置した場合、ほぼ間違いなく映るものがある。それは「車両が走行してきた路面」である。そこで、まず空間モデルとして、車両が走行してきた路面をモデル化した「路面モデル」を用いる。路面モデルは走行路面を無限に延長したものであるため、勾配が急激に変化しない限り、正確な路面モデルを推定することができる。また、坂道やアップダウンの激しい道のように路面の勾配が変化している場合でも、ジャイロのようなセンサを用いることによって、路面の勾配の影響を考慮した路面モデルを生成することが可能である。
【0109】
ところが、路面モデルは、カメラ画像上の全領域において用いることは必ずしもできない。なぜなら、カメラは通常ほぼ水平に近い状態で設置されると考えられるので、この場合、カメラ画像内の地平線よりも高い領域には、路面が映らないからである。もちろん、カメラ画像の全領域に路面が映るようにカメラを配置することも可能であるが、この場合、カメラで監視できる範囲が狭くなってしまうため、実用的ではない。
【0110】
そこで本実施形態では、路面モデルのほかに、走行路面に対して垂直な壁面を空間モデルとして仮定する。この空間モデルを「壁面モデル」と呼ぶ。
【0111】
図15は壁面モデルの一例を示す図である。図15において、1は車両、2は車両1に設置されたカメラ、カメラ2から延びた2本の直線によって囲まれた領域VAはカメラ2の撮影領域である。図15に示すように、車両1から距離Lだけ離れた後方に、走行路面に対して垂直な壁面を仮定した壁面モデルMWが、最も簡単なものである。この壁面モデルMWは、カメラ2の視野範囲VAのうち、路面モデルMSでカバーできない全ての領域をカバーするほど十分に大きいものと仮定する。カメラ2の視野範囲VAのうち、カメラ2と壁面モデルMWとの間に存在する領域が路面モデルMSの領域となる。このため、車両1が直進している場合、カメラ2によって撮影されたカメラ画像は、図示したように、上部は壁面モデルMW、下部は路面モデルMSによって占められる。
【0112】
図15のような壁面モデルを用いる場合、壁面モデルMWまでの距離Lをどのように決定するかが問題となる。図16は右カーブにおける背景フローの例を示す図であり、各矢印は求められた背景フローを示し、白線は路面上の白線を示している。また、MWAは壁面モデルMWによって背景フローを求めた領域、MSAは路面モデルMSによって背景フローを求めた領域である。同図中、(a)はLが十分に長いとき、(b)はLが十分に短いときを示しており、(a)と(b)の比較によって、距離Lの大小に応じた背景フローの変化が分かる。
【0113】
すなわち、図16(a),(b)を比較すると、まず壁面モデル領域MWAにおける背景フローの大きさが大きく異なっていることが分かる。ところが、上述したように、接近物検出処理において「路面に接近物の一部が接している」という条件を加えているので、路面モデル領域MSAにおける背景フローが正確に求まっていれば、壁面モデル領域MSAにおける背景フローは必ずしも正確に求まっている必要はない。
【0114】
また、路面モデルと壁面モデルの境界付近の領域BAにおける背景フローが、図16(a),(b)で相当異なっていることが分かる。この境界領域BAは、路面判定の際にも重要になる領域であり、したがって、壁面モデルMWまでの距離Lの設定如何によっては、検出精度の劣化を招いてしまう可能性がある。
【0115】
そこで、別の壁面モデルとして、図17のように車両1の両脇に壁(MW1,MW2)があるような空間モデルを想定する。これは、高さが無限のトンネルを走行している状況といえる。カメラ2の視野範囲VA内において左右の壁面モデルMW1,MW2間に存在する領域が、路面モデルMSの領域となる。このため、車両1が直進している場合、カメラ2によって撮影されたカメラ画像は、図示したとおり、上部は左右の壁面モデルMW1,MW2、下部は路面モデルMSによって占められる。なお図17では、説明を簡単にするために、車両1が直進しているものとしたが、車両がカーブを走行しているときは、壁面モデルもそのカーブの曲率に合わせて曲げればよい。
【0116】
図17に示すような空間モデルを、カメラ画像から実世界3次元座標系への変換式として記述した場合について、詳述する。
【0117】
まず、路面モデルについて説明する。走行路面を勾配のない平らな路面であると仮定すると、路面モデルは実世界3次元座標系のXw−Yw平面となる。そこで、この平面の関係式
Zw=0
を(数1),(数2)へ代入すると、カメラ画像上の点P(Xi,Yi)は、次式によって、実世界3次元座標Pw(Xw,Yw,Zw)に変換することができる。
【数8】
(数8)が路面モデルにおける画像座標系から実世界3次元座標系への変換式となる。
【0118】
次に、壁面モデルについて説明する。車両1は、時刻t−1から時刻tまでの間に回転半径Rで旋回走行していたとする。実世界3次元座標系の原点を時刻tにおける車両1の後輪中央位置と定め、回転中心を(R,0,0 )とする。ただし、回転半径Rの符号は正負両方をとり、車両1が反時計周りのときは正、時計周りのときは負であるものとする。
【0119】
このとき、壁面モデルは、実世界3次元座標系において、Xw−Zw平面における断面の中心が点 (R,0,0 )であり、Xw−Zw平面に垂直な半径(R±W/2)の円筒の一部であるので、次式によって表される。
【0120】
(Xw−R)2+Zw2=(R±W/2)2
この式と(数1),(数2)を用いることによって、カメラ画像上の点P(Xi, Yi)は、次式によって、実世界3次元座標Pw(Xw,Yw,Zw)に変換することができる。
【数9】
さらに、
1)カメラ画像に映っている物体はカメラ2の後ろには存在しない(Ze>0)
2)空間モデルは路面よりも高い位置にある(Yw≧0)
という条件を加えることによって、Pw(Xw,Yw,Zw)を一意に決定することができる。(数9)が画像座標系から実世界3次元座標系への変換式として表現された壁面モデルである。
【0121】
さて、図17のような壁面モデルを用いる場合、車両の左右に仮定した壁面MW1,MW2間の距離Wをどのように決定するかが問題となる。図18は右カーブにおける背景フローの例を示す図であり、各矢印は求められた背景フローを示し、白線は路面上の白線を示している。また、MW1Aはカメラ2から見て左側の壁面モデルMW1によって背景フローを求めた領域、MW2Aはカメラ2から見て右側の壁面モデルMW2によって背景フローを求めた領域、MSAは路面モデルMSによって背景フローを求めた領域である。同図中、(a)はWが十分に小さいとき、(b)はWが十分に大きいときを示しており、(a)と(b)の比較によって、距離Wの大小に応じた背景フローの変化が分かる。
【0122】
すなわち、図18(a),(b)を比較すると、左右の壁面モデルの境界付近の領域BA1における背景フローが大きく異なっていることが分かる。ところが、上述したように、接近物検出処理において「路面に接近物の一部が接している」という条件を加えているので、路面モデル領域MSAにおける背景フローが正確に求まっていれば、壁面モデル領域MW1A,MW1Bにおける背景フローに誤差が生じていたとしても、接近物検出には大きな問題とならない。
【0123】
すなわち、図17に示すような壁面モデルでは、図15に示すようなカメラ後方に壁面を仮定した場合と異なり、壁面モデルと路面モデルの境界領域においては、壁面の間隔Wの大小によって、背景フローにさほど大きな差は生じないので、接近物を精度良く検出することができる。例えば、壁面の間隔Wは10m程度にしておけばよい。
【0124】
もちろん、壁面間の距離Wを、レーザー、超音波、赤外線またはミリ波などの各種障害物検出センサを用いて測定したり、両眼視、モーションステレオ法を用いて測定してもよい。また、路面のテクスチャ情報を利用して、カメラ画像から路面以外の領域を抽出し、その領域を壁面として仮定することも可能である。さらに、空間モデルの一部のみを測距センサを用いて測定し、それ以外の領域を、ここで説明したように平面や曲面でモデル化することもできる。また、カメラ画像や通信を用いて、現在、車両が走行している道路の車線数を求め、その結果を利用して壁面間の距離Wを決定してもよい。カメラ画像から車線数を決定する方法としては、例えば、白線検出を行い、求まった白線の本数で車線数を決定する方法などがある。
【0125】
なお、空間モデルの形状を、カーナビゲーションシステムのようなGPS情報と地図データ、あるいは時計などによる時刻データや、車両のワイパー、ヘッドライトなどの作動データ等に基づいて、切り替えることも可能である。例えば、GPS情報と地図データから、車両がいまトンネルを走行中であるということが分かったとき、天井が存在するような空間モデルを求めてもよい。あるいは、トンネル入口等に取り付けられたDSRC等の通信手段によって、車両がトンネル走行中であるとの情報を得ることもできる。また、トンネル走行中には通常、ヘッドライトを点けるので、時間データやワイパーデータ、ヘッドライトデータと連動して、例えば、夜間でなく(時間データから推定)、雨も降っていない(ワイパーデータから推定)のに、ヘッドライトを点けたとき、トンネル走行中であると判断し、空間モデルを切り替えることもできる。
【0126】
図19は本実施形態に係る自車動き推定部13、空間モデル推定部14Aおよび背景フロー推定部15の動作を示すフローチャートである。まず、時刻t−1から時刻tまでの車両の左右両車輪の回転パルスとハンドル切れ角を測定することによって、時刻tにおける自車両の左右の車輪速Vl,Vrと前輪の切れ角βを求める(S61)。そして、こうして求めた車輪速Vl,Vrおよび切れ角βと既知のホイールベースlとから、上述のアッカーマンモデルを用い、(数7)に従って車両の動きベクトルTを推定する(S62)。
【0127】
ところで、時刻t−1以前の動きベクトルはこれまでに全て求まっているはずである。そこで、これまでの動きベクトルを繋ぎ合わせることによって、時刻t−1までの自車の軌跡を求める(S63)。図20はこのようにして求めた時刻t−1までの軌跡の例を示している。図20において、Tは現在の動きベクトル、TRはこれまでの動きベクトルを繋ぎ合わせることによって求めた軌跡を示している。
【0128】
次に、空間モデルを推定する(S64)。ここでは、上述した図17に示すような路面モデルと壁面モデルを用いるものとする。すなわち図21に示すように、軌跡TRを含む平面が、路面モデルMSとして求められ、軌跡TRの左右に長さW/2だけ離れた位置にある路面モデルMSに垂直な壁面が、壁面モデルMW1,MW2として求められる。
【0129】
次に、背景フローを推定する(S65〜S68)。まず、時刻t−1におけるカメラ画像上の任意の点PreCi(PreXi,PreYi)を実世界3次元座標PreRi(PreXw,PreYw,PreZw)に射影させる(S65)。図22はこの処理を示した図である。角度θはカメラ2の画角である。上述したように、(数1),(数2)に示すような透視投影変換式のみでは、カメラ画像上の点PreCiは、カメラ2の焦点を通る直線LN上に対応することしか分からず、実世界座標系の一点に射影することはできない。しかしながら、車両1は推定された空間モデル内を走行していると仮定すると、この直線LNと空間モデル(図22ではMW2)との交点として、点PreRiを求めることができる。
【0130】
次に、現在の動きベクトルTだけ車両1を動かすことによって、時刻tにおける自車位置を求め、座標変換式(数2)のパラメータをその位置に合うように更新する(S66)。そして、そのカメラ位置で実世界座標PreRiがカメラ画像上のどの位置に映るかを計算する。実世界座標からカメラ画像上への変換は、(数1)と更新された(数2)を用いることによって実現できる。こうして求めたカメラ画像上の点をNextCi(NexiXi,NextYi)とする(S67)。図23はここでの処理を模式的に示した図である。
【0131】
ここで求めたNextCi(NextXi,NextYi)は、点PreRiが時刻t−1から時刻tまでの間に動いていない、すなわち背景物体上の点であると仮定した場合の、時刻tにおけるカメラ画像上の位置を示している。そこで、時刻t−1におけるカメラ画像上の点PreCiが背景の一部であると仮定したときの背景フローBFLは、(NextXi-PreXi, NextYi-PreYi)と求めることができる(S68)。このような処理をカメラ画像上のすべての点について行うことによって、図13に示すような背景フローを求めることができる。
【0132】
本実施形態に係る接近物検出を行った例を、図24〜図26に示す。図24は車両後方に設置したカメラから撮像した画像である。車両は交差点を右折しようとしており、後方から白い乗用車VC1が接近している。なお、画像上で動いている物体は白い乗用車VC1のみであり、乗用車VC2,VC3は停止している。
【0133】
ここで、上述の第1の従来例について考える。第1の従来例では、まず図25(a)のように、水平方向に領域Lと領域Rを分割して設定する。そして、検出されたオプティカルフローのうち、領域Lにおいては左または左下方向を向いているものを、領域Rにおいては右または右下方向を向いているものを接近物として検出する。
【0134】
ここで、領域L内に領域AR1,AR2を仮定する。領域AR1には接近物である乗用車VC1が含まれ、領域AR2には静止している乗用車VC2が含まれる。しかし、領域AR1内の乗用車VC1は矢印のように右下方向のオプティカルフローをもつので、接近物としては検出されない。一方、領域AR2内の乗用車VC2は、当該車両がカーブを走行しているため、矢印のように左方向のオプティカルフローをもち、このため接近物として検出されてしまう。図25(b)はこのような処理を行った結果を示しており、矩形で囲われた領域が接近物として検出された領域である。このように、第1の従来例では、カーブにおいて接近物の検出がうまくいかない。
【0135】
一方、本実施形態によると、領域AR1,AR2における背景フローは、図26(a)の矢印のように求められる。すなわち、接近物である乗用車VC1を含む領域AR1では、オプティカルフローは図25(a)のように右下を向くのに対して、背景フローは図26(a)のように左向きとなり、全く異なる。このため、領域AR1は接近物であると判別される。一方、静止している乗用車VC2を含む領域AR2では、オプティカルフローは図25(a)のように左を向くが、背景フローも同様に図26(a)のように左向きとなり、非常に似通っている。このため、領域AR2は接近物ではなく、背景であると判別される。図26(b)はこのような処理を行なった結果を示しており、矩形で囲われた領域が接近物として検出された領域である。このように、本発明によると、従来例と異なり、カーブにおいても接近物を確実に検出することが可能である。
【0136】
なお、路面モデルを利用した車両用監視装置は、特開2000−74645号公報や特開2001−266160号公報に記載されている。ところがこれらの技術では、本願発明のように、背景フローを求めるために路面モデルを用いているのではない。また、カーブ走行時の接近物検出を目的としておらず、本願発明とは課題が相違する。
【0137】
具体的に説明すると、まず前者では、監視領域内の他車両から発生するオプティカルフローを検出し、検出したオプティカルフローを用いて自車両と周辺の他車両との相対関係を監視する。この技術の特徴は、処理時間を短縮するために、オプティカルフローを検出する領域を限定することにあり、これを実現するために路面モデルを利用している。すなわち、本発明のように空間モデルを接近物フローの検出に用いているわけではない。実際のところ、この技術では、カーブでの接近物フローの検出に上述の第5の従来例に示された仮想FOEを利用する方法を用いているため、第5の従来例と同様の問題点を抱える。すなわち、白線のないカーブにおいて正確な接近物検出を行うことはできない。
【0138】
また後者は、画面上の各点の3次元的な動きを利用している。すなわち、まず画面上の各点について、画面上での2次元的な動きであるオプティカルフローを求める。そして、求めたオプティカルフローと車両動き情報とを基にして、各点の実世界での3次元的な動きを計算する。この3次元的な動きを時間的に追跡することによって、実際に車両が走行している空間の空間モデルを推定する。こうして推定された空間モデルの中で、路面の動きと違うものを障害物として検出する。しかしながら、この技術では、各点の動きを完全に3次元的に求めるため、非常に計算コストがかかる、という問題があり、実現は難しい。
【0139】
<ハードウェア構成例>
図27は本発明を実現するためのハードウェア構成の一例を示す図である。図27において、例えば車両後方に設置されたカメラ2によって撮影された画像は、画像処理装置20において、画像入力部21によってデジタル信号に変換されてフレームメモリ22に格納される。そしてDSP23がフレームメモリ22に格納されたデジタル化された画像信号からオプティカルフローを検出する。検出されたオプティカルフローは、バス43を介してマイクロコンピュータ30に供給される。一方、車速センサ41は車両の走行速度を測定し、舵角センサ42は車両の走行舵角を測定する。測定結果を表す信号は、バス43を介してマイクロコンピュータ30に供給される。
【0140】
マイクロコンピュータ30はCPU31、所定の制御用プログラムが格納されたROM32、およびCPU31による演算結果を記憶するRAM33を備えており、カメラ2が撮影した画像内に接近物が存在しているか否かを判定する。
【0141】
すなわち、CPU31は、まず車速センサ41および舵角センサ42から供給された走行速度信号と舵角信号から、車両の動きを推定する。次に、推定した車両の動きを基にして、車両がこれまで走行してきた軌跡を推定する。RAM33には過去の軌跡情報が格納されているので、CPU31は、推定した車両の動きをRAM33に格納された過去の軌跡情報と繋ぎ合わせることによって、当該時刻までの軌跡を求める。この新たな軌跡情報はRAM33に格納される。
【0142】
そして、CPU31は、RAM33に格納された軌跡情報を用いて、空間モデルを推定し、背景フローを求める。そして、求めた背景フローを画像処理装置20から供給されたオプティカルフローと比較することによって、接近物のフローを検出し、接近物を検出する。
【0143】
(第3の実施形態)
図28は本発明の第3の実施形態に係る車両用監視装置の基本構成を概念的に示すブロック図である。図28において、図1と共通の構成要素には図1と同一の符号を付しており、ここではその詳細な説明を省略する。第1の実施形態と異なるのは、オプティカルフロー検出部12Aが、背景フロー推定部15によって推定された背景フローを用いてオプティカルフローを検出する点である。これにより、オプティカルフローの計算時間の削減や精度向上を図ることができる。
【0144】
カメラ画像上における物体の動きであるオプティカルフローViは、次式のように、対象物体が実際に動いていることによる動きVbと、カメラ自体の動きによる相対的な動きVcとの和によって表される。
【0145】
Vi=Vb+Vc
ここで、対象が動いていない、すなわち背景であるとすると、Vbは0であり、Vcは背景フローに等しくなる。また、対象が移動している物体であるとすると、Vbは対象物の移動ベクトルに依存するが、Vcは背景フローにほぼ等しくなる。このことは、対象物の移動量があまり大きくない場合、そのオプティカルフローは背景フローの近傍に存在することを示している。そこで、オプティカルフローを求める際、背景フローの近傍のみを検索することによって、探索領域を狭め、計算時間の削減を図ることができる。
【0146】
また、同様の方法によって、オプティカルフローの検出精度を向上させることもできる。これは、オプティカルフロー検出のために階層化画像を用いる場合に特に有効である。上述したように、階層化画像は計算時間を削減するために用いられるが、階層が上位になるほど画像の解像度は低くなり、このため、テンプレートマッチングで誤差が生じる可能性が高くなる。そしてもし、上位階層で誤差が生じ、誤った検出をしてしまうと、その誤差は下位階層では吸収されず、したがって、実際とは異なったオプティカルフローを検出してしまう。
【0147】
図29は階層化画像におけるブロックマッチング結果を模式的に示す図である。図29において、画像1は元画像である画像0を縮小してLPFをかけたもの、画像2は画像1をさらに縮小してLPFをかけたものである。画像内の各矩形はマッチングを行ったブロックを示しており、その中の数字は、当該ブロックGとテンプレートブロックFとの差分評価関数の値を示している。すなわち、ブロックの大きさをm×n、テンプレートブロックFの各画素の輝度をf(i,j)、当該ブロックGの各画素の輝度をg(x,y,i,j)とすると、差分評価関数E(x,y)は(数10)または(数11)によって示される。
【数10】
【数11】
すなわち、この差分評価関数E(x,y)の値が最小のものがテンプレートブロックFに対応するブロックであり、その画像でのオプティカルフローに対応するものになる。
【0148】
まず、最も解像度が低い画像2においてブロックマッチングを行う。いま、テンプレートブロックFは画像の右上方向に移動しているものとすると、本来ならブロックG(1,−1)との整合性が最も高くなり、差分評価関数E(1,−1)が最小になるはずである。ところが、階層化による分解能の低下や、テクスチャ、開口問題などの影響によって、図29のようにE(−1,1)が最小になってしまったとする。すると、画像1において、画像2のブロックG(−1,1)に対応するブロックが探索領域として設定され、さらにその中で差分評価関数値が最小になったブロックに対応するブロックが、画像2において探索領域として設定される。しかしながら、この探索領域内には正しいオプティカルフローに対応するブロックは存在せず、したがって、誤ったオプティカルフローが検出されてしまう。
【0149】
そこで本実施形態では、最も分解能が高い元画像0におけるブロックマッチングの際に、背景フロー近傍のブロックも探索領域に加えることによって、この問題を解決する。上述したように、背景フロー近傍には、オプティカルフローが存在する可能性が高い。また、接近物フロー検出には、オプティカルフローと背景フローとの相違が重要になるが、言い換えると、背景フロー近傍にオプティカルフローが存在しないときは、それは移動物体であるといえる。すなわち、背景フロー近傍を探索領域に入れることによって、オプティカルフローが背景か否かを判別できる。例えば、背景フロー近傍に差分評価関数値を最小にするブロックが存在するとき、これに係るオプティカルフローは背景であるが、差分評価関数値が背景フロー近傍よりも小さいブロックが背景フロー近傍以外に存在するとき、そのオプティカルフローは移動物体であると判別できる。
【0150】
(第4の実施形態)
図30は本発明の第4の実施形態に係る車両用監視装置の基本構成を概念的に示す図である。図30において、図1と共通の構成要素には図1と同一の符号を付しており、ここではその詳細な説明を省略する。第1の実施形態と異なるのは、背景フロー推定部15が省かれており、接近物検出部16Aが、対象物の空間的な動きを求めて、接近物を検出する点である。接近物検出部16Aにおいて、3次元動き推定部16cは、オプティカルフロー検出部12によってカメラ画像から実際に求められたオプティカルフローViと、自車動き推定部13によって求められた当該車両の動きベクトルTと、空間モデル推定部14によって推定された空間モデルとを用いて、オプティカルフローのような平面的な動きではなく、対象物の空間的な動きを求める。
【0151】
図31および図32を参照して、3次元動き推定部16cにおける処理について説明する。図31は時刻t−1における車両1と空間モデルとの関係を模式的に示した図であり、図17と同様の空間モデルMS,MW1,MW2が想定されている。ただし、空間モデルは実世界3次元座標系で表現されているものとする。また、カメラ2が撮影したカメラ画像も併せて図示している。ここで上述のように、透視投影変換式(数1、数2)および空間モデルMS,MW1,MW2を用いることによって、カメラ画像上の任意の点Ciを実世界3次元座標上に投影した点Riを求めることができる。また、Tは自車動き推定部13によって求められた,時刻t−1から時刻tまでの車両1の動きベクトルである。
【0152】
図32は時刻tにおける車両1と空間モデルとの関係を模式的に示した図である。一般に、時刻が変わると空間モデルは変化する。ここで、オプティカルフロー検出部12によって、時刻t−1における点Ciが時刻tにおける点NextCiに対応していることが分かったとする。このとき、点Ciに対する点Riと同様に、時刻tにおけるNextCiを実世界3次元座標上に投影した点NextRiを求めることができる。よって、点Riが時刻tまでに動いたベクトルVRiは次式のように求めることができる。
VRi=NextRi−Ri
【0153】
ところで、時刻t−1から時刻tまでの車両1の動きはベクトルTとして求められているので、ベクトル(VRi−T)を求めることによって、カメラ画像上の点Ciの実世界3次元座標上での動き、すなわち空間フローを、求めることができる。この処理を、カメラ画像上の全ての点について行うことによって、カメラ画像上の全ての点の実世界3次元座標上での動きを求めることができる。
【0154】
もちろん、空間モデルは、第1の実施形態のように様々なセンサや通信によって求めてもよいし、他の空間モデルを用いてもかまわない。
【0155】
接近物フロー検出部16dは、3次元動き推定部16cによって求められたカメラ画像上の各点の実世界3次元座標系での動き、すなわち空間フローを基にして、その点が自車に接近しているか否かを判断する。すなわち、ベクトル(VRi−T)が車両を向いているときは、点Ciは接近物のフローであり、そうでないときは、点Ciは接近物のフローではないと判定される。
【0156】
さらに、ノイズ除去部16eによって、第1の実施形態に係るノイズ除去部16bと同様の処理を行うことによって、接近物を検出することができる。
【0157】
ここまでの説明では、空間モデルは、実世界3次元座標系で記述されていると仮定したが、この代わりに、カメラ座標系で表現されていてもよい。この場合、カメラ画像上の点Ci,NextCiはそれぞれ、カメラ座標系における点Ri,NextRiに対応する。カメラ座標系の原点は、時刻t−1から時刻tまでの間に車両1の動きベクトルTに相当する分だけ動いているので、カメラ画像上の点Ciの動きVRiは次のように求めることができる。
VRi=NextRi−Ri−T
【0158】
このベクトルVRiが原点を向いているとき、点Ciは接近物フローであり、そうでないときは、点Ciは接近物フローではないと判定される。この処理を、カメラ画像上の全ての点で行い、ノイズ除去部16cがノイズ除去処理を行うことによって、接近物を検出することができる。
【0159】
<障害物センサとの兼用>
本発明は、画像情報を用いて接近物検出を行うものである。このため、レーザー、赤外線、ミリ波などの障害物センサを利用する場合に比べると、接近物が近づいているか遠ざかっているかといった複雑な検出が可能である。ところが、障害物が車両近傍に存在している場合は、このような複雑な情報よりも、障害物があるか否かという単純な情報を、いち早く、正確に検出することが重要である。
【0160】
そこで、車両近傍の領域については、障害物センサによる検出を行い、それ以外の広域な領域について、本発明に係る方法を用いて障害物検出を行うようにしてもよい。これにより、車両周辺の監視を、高速に、かつ、正確に行うことが可能になる。
【0161】
図33は障害物センサの設置例を示す図である。同図中、(a)では、レーザー、赤外線、ミリ波などを用いた障害物センサ51は、車両1のバンパーやエンブレム等に取り付けられている。また、(b)では、最も接触事故の可能性が高い車両1の四隅に障害物センサ52を設置している。障害物センサ52を設置する位置は、バンパーの下や上、またはバンパーや車体自体に組み込んでもよい。
【0162】
また、障害物センサは、雨などの天候による影響を大きく受けるため、ウインカーの動作情報等から降雨を認識したとき、障害物センサの利用を中止し、本発明に係る方法を用いるようにしてもよい。これにより、検出精度を向上させることが可能である。
【0163】
また、本発明に係る方法によって接近物があると検出された領域について、再度、障害物センサによって検出を行うようにしてもよい。これにより、接近物の検出精度が向上し、誤った警報が発生しないようにすることができる。
【0164】
さらに、障害物センサによる検出の結果、障害物があると判断された領域のみについて、本発明に係る方法によってそれが接近物か否かを判定するようにしてもよい。これにより、処理速度の向上を図ることが可能になる。
【0165】
なお、本発明の監視装置の各手段の機能の全部または一部を専用のハードウェアを用いて実現してもかまわないし、コンピュータのプログラムによってソフトウェア的に実現してもかまわない。
【0166】
【発明の効果】
以上のように本発明によると、オプティカルフローを用いて接近物を検出する車両用監視装置において、カーブにおいても検出精度を落とすことがなく、さらに、直進時においても、自車と並走する物体や、画面上での動きの小さな遠方の接近物も検出することができる。
【図面の簡単な説明】
【図1】 本発明の第1の実施形態に係る監視装置の構成を示すブロック図である。
【図2】 自車動きの推定方法を説明するための図であり、アッカーマンモデルを説明するための概念図である。
【図3】 自車動きの推定方法を説明するための図であり、2次元上での車両の動きを示す概念図である。
【図4】 背景フロー推定の処理の流れを示すフローチャートである。
【図5】 背景フローの推定方法を説明するための図であり、車両が旋回するときの動きを示す概念図である。
【図6】 接近物検出部の構成を概念的に示すブロック図である。
【図7】 フロー比較部の動作を示すフローチャートである。
【図8】 ノイズ除去部の動作を示すフローチャートである。
【図9】 ノイズ除去部における処理を説明するための概念図である。
【図10】 背景フローの推定方法を説明するための概念図である。
【図11】 背景フロー推定の他の例の処理の流れを示すフローチャートである。
【図12】 背景フロー推定の他の例の処理の流れを示すフローチャートである。
【図13】 本発明に係る背景フローが表示されたカメラ画像の例である。
【図14】 本発明の第2の実施形態に係る監視装置の構成を示すブロック図である。
【図15】 本発明に係る空間モデルの一例を示す図である。
【図16】 図15の空間モデルにおける距離Lと背景フローとの関係を示す図である。
【図17】 本発明に係る空間モデルの他の例を示す図である。
【図18】 図17の空間モデルにおける幅Wと背景フローとの関係を示す図である。
【図19】 本発明の第2の実施形態に係る背景フロー推定の処理の流れを示すフローチャートである。
【図20】 本発明の第2の実施形態に係る背景フローの推定方法を説明するための図である。
【図21】 本発明の第2の実施形態に係る背景フローの推定方法を説明するための図である。
【図22】 本発明の第2の実施形態に係る背景フローの推定方法を説明するための図である。
【図23】 本発明の第2の実施形態に係る背景フローの推定方法を説明するための図である。
【図24】 車両に設置されたカメラの画像の例である。
【図25】 図24のカメラ画像から第1の従来例によって接近物を検出した結果を示す図である。
【図26】 図24のカメラ画像から本発明によって接近物を検出した結果を示す図である。
【図27】 本発明に係るハードウェア構成の例を示す図である。
【図28】 本発明の第3の実施形態に係る監視装置の構成を示すブロック図である。
【図29】 階層化画像における問題点を説明するための概念図である。
【図30】 本発明の第4の実施形態に係る監視装置の構成を示すブロック図である。
【図31】 本発明の第4の実施形態に係る処理を説明するための図である。
【図32】 本発明の第4の実施形態に係る処理を説明するための図である。
【図33】 本発明における障害物センサの設置位置の例を示す図である。
【図34】 車両後方を映すカメラ画像の例であり、第1の従来例のカーブ走行中における問題を説明するための図である。
【図35】 カメラ画像と実世界の3次元座標の関係を示す図である。
【図36】 従来例におけるカメラ画像と実世界座標系の関係を示す図である。
【図37】 本発明におけるカメラ画像と実世界座標系の関係を示す図である。
【図38】 カーブ走行中のカメラ画像に、接近車のオプティカルフローを重畳表示した例である。
【図39】 図38の画像の背景フローである。
【図40】 背景フローを減算して得たフローをカメラ画像に重畳表示した例である。
【図41】 車両の動きを、カメラ画像を用いて検出する手法を説明するための概念図である。
【符号の説明】
1 車両
2 カメラ
11 カメラ
12,12A オプティカルフロー検出部
13 自車動き推定部
14,14A 空間モデル推定部
15 背景フロー推定部
16,16A 接近物検出部
51,52 障害物センサ
Vi オプティカルフロー
T 車両の動きベクトル
MS 路面モデル
MW,MW1,MW2 壁面モデル[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a vehicle monitoring technique for monitoring a situation around a vehicle using a camera and detecting an approaching object.
[0002]
[Prior art]
Conventionally, various approaches have been performed for a vehicle monitoring apparatus that monitors a situation around a vehicle and detects an approaching object.
[0003]
One of them uses an obstacle sensor such as a radar. However, although this method can reliably detect an obstacle, it is not suitable for a complicated judgment whether the obstacle is approaching or moving away. In addition, it is difficult to detect an approaching object with an obstacle sensor alone because it is affected by rainfall and the detection range is relatively narrow.
[0004]
On the other hand, an approach using a camera image is also performed. According to this method, reliability as high as radar is not obtained at present, but since it is easy to process digitized image information, it is possible to make a complicated judgment as to whether an obstacle is approaching or moving away. It is. Further, since the detection range is determined by the angle of view and resolution of the camera, a very wide area can be monitored.
[0005]
As methods using camera images, a stereo method using a plurality of camera images and a method using an optical flow are widely known. The stereo method uses a parallax between cameras, but there are problems that calibration between the cameras is complicated, and it is necessary to use a plurality of cameras, which is expensive.
[0006]
A vehicle monitoring apparatus using an optical flow is disclosed in, for example, Patent Document 1 (first conventional example). In other words, the camera is installed facing the rear of the vehicle, a plurality of horizontally divided areas are set in the screen, each area has a size greater than a predetermined threshold value, and an approaching object is assumed. An optical flow having the same direction as the motion on the image is extracted. And an approaching object is discriminate | determined based on this optical flow.
[0007]
In addition, several methods have already been proposed for handling during curve driving.
[0008]
For example, in Patent Document 2 (second conventional example), a turning vector is obtained from a steering angle and a traveling speed of a vehicle, and the optical flow is corrected by subtracting the turning vector from the actually obtained optical flow. Then, after removing the influence of the curve by this correction, the moving object is extracted.
[0009]
In Patent Document 3 (third conventional example), the optical flow is corrected based on the outputs of the vehicle speed sensor and the yaw rate sensor and the correspondence between the image position and the distance measured in advance, and the influence of the curve is removed. Extract moving objects.
[0010]
Further, a method using an infinite point (FOE) in an image (see, for example, Patent Document 4) is widely used in approaching object detection using an optical flow, and this method is adapted to curve driving. Some have been proposed.
[0011]
For example, in Patent Document 5 (fourth conventional example), the optical flow is corrected by an amount corresponding to the amount of movement of the FOE.
[0012]
Moreover, in patent document 6 (5th prior art example), a screen is divided | segmented into plurality and virtual FOE is calculated | required based on the white line information calculated | required by the white line determination means.
[0013]
Patent Document 7 (Sixth Conventional Example) discloses a method for detecting an approaching object using an optical flow that is not affected by a curve. In this method, the difference εi between the movement vector Vdi theoretically calculated from the motion parameter of the camera and the movement vector Vi detected from the image.2Is calculated by the following equation using the vectors r1i and r2i representing the reliability of the moving vector detected from the image, and the moving object is detected using the difference value.
εi2= ((Vdi−Vi) · r1i)2+ ((Vdi−Vi) · r2i)2
[0014]
[Patent Document 1]
Japanese Patent No. 3011566
[Patent Document 2]
JP 2000-168442 A
[Patent Document 3]
JP-A-6-282655
[Patent Document 4]
Japanese Patent Laid-Open No. 7-50769
[Patent Document 5]
JP 2000-251199 A
[Patent Document 6]
JP 2000-90243 A
[0015]
[Patent Document 7]
Japanese Patent No. 2882136
[0016]
[Problems to be solved by the invention]
However, the above-described conventional technique has the following problems.
[0017]
First, in the first conventional example, it is assumed that the vehicle is traveling straight, and it is difficult to use the vehicle on a curve. In other words, an approaching object is detected using the “direction of motion on the image when an approaching object is assumed”, but this “direction of motion” is uniform when driving on a curve. I don't want it. This point will be described with reference to FIG.
[0018]
Assuming that the camera is facing backward, when the vehicle is traveling on a curve, an image as shown in FIG. In the first conventional example, as shown in FIG. 34A, the region L and the region R are divided and set in the horizontal direction. Here, as shown in FIG. 34 (b), assuming that there is an approaching vehicle in the area AR1 in the area L, the “assumed direction of movement of the approaching vehicle” is lower right as indicated by the arrow in the figure. Facing. On the other hand, in the area AR2 that is in the same area L but has a different position in the vertical direction from the area AR1, the “assumed direction of approaching vehicle movement” is directed to the lower left as shown by the arrow in the figure, and The direction of movement is completely different. Thus, when the vehicle is traveling on a curve, even in the same region L, the “assumed approaching direction of approaching vehicle” is not uniform depending on the position, and therefore it is difficult to detect approaching vehicles. become.
[0019]
Even when the vehicle is traveling on a straight road, the size of the optical flow is significantly different between the upper part and the lower part of the screen. That is, since an area far from the vehicle is shown at the top of the screen, the detected optical flow is very small. On the other hand, in the lower part of the screen, since an area very close to the own vehicle is shown, the detected optical flow is relatively very large.
[0020]
For this reason, if processing is performed using the same threshold for the upper part and the lower part of the screen, there is a high possibility that the detection accuracy of approaching vehicles will deteriorate. For example, when the threshold value is set based on a small flow at the top of the screen, the threshold value is very small. Therefore, if processing is performed at the bottom of the screen using this threshold value, noise is likely to occur. On the other hand, if the threshold is set based on the large flow at the bottom of the screen, the threshold will be very large.If processing is performed at the top of the screen using this threshold, most of the optical flow will be smaller than the threshold, and the approaching object Can no longer be detected.
[0021]
Furthermore, in the first conventional example, an approaching vehicle is detected using only an optical flow having a magnitude equal to or greater than a predetermined value. For this reason, the size of the optical flow of a parallel running vehicle running at almost the same speed as that of the own vehicle cannot be detected because the size of the optical flow is almost zero.
[0022]
In the second conventional example, the turn vector generated by the turn of the vehicle differs in size and direction depending on the three-dimensional relative position of the target point related to the turn vector from the camera. For this reason, the turning vector cannot be estimated unless the correspondence between the points on the camera image and the points on the real world is determined.
[0023]
This point will be described with reference to FIG. FIG. 35 shows the relationship between the camera image taken by the
[Expression 1]
[Expression 2]
[0024]
Here, f is the focal length of the camera, r is a constant determined by the internal parameters of the camera and the positional relationship of the camera coordinate system in the real world coordinate system, that is, the camera is known. From this relational expression, it can be seen that the real-world three-dimensional coordinates corresponding to any point on the camera image are on a straight line passing through the focal point of the camera, but no further information can be obtained. The position cannot be determined uniquely.
[0025]
That is, as shown in FIG. 36, conversion from a real world coordinate system to a point on the camera image is possible by using perspective projection transformation (Equation 1) and coordinate transformation (Equation 2). Conversion from a point on the image to the real world coordinate system is impossible only with these relational expressions. The turning vector in the second conventional example must be obtained for each point in the camera coordinate system, but this conversion is impossible unless there are other conditions as shown in FIG.
[0026]
Similarly to the second conventional example, the third conventional example is not touched on how to obtain the correspondence between the image position and the distance, and cannot be realized as it is.
[0027]
In the fourth conventional example, the FOE exists only when the vehicle goes straight, and does not exist in the curve at all. Therefore, when the optical flow is corrected using the FOE, the straight curve cannot be approximated. The error becomes very large and is not practical.
[0028]
Also, the fifth conventional example cannot be used when traveling on a road without a white line.
[0029]
In the sixth conventional example, it is assumed that a non-moving object is dominant in the image, and detection fails when a large moving object such as a track exists in the vicinity of the camera. There is a problem of doing.
[0030]
In view of the above problems, an object of the present invention is to make it possible to detect an approaching object with high precision even when the vehicle is traveling in a curve in a vehicle monitoring apparatus that detects an approaching object using an optical flow.
[0031]
[Means for Solving the Problems]
In order to solve the above problem, the present invention uses a camera that reflects the surroundings of a vehicle, obtains an optical flow from an image captured by the camera, and assumes a background based on the movement of the vehicle. A background flow that is an optical flow of the image is obtained, the optical flow is compared with the background flow, and a motion of an object around the vehicle is detected.
[0032]
According to the present invention, since the background flow is an optical flow when the camera image is assumed to be the background, by comparing the background flow with the optical flow actually obtained from the camera image, the object flow around the vehicle is detected. The motion can be detected with high accuracy. Further, even when the vehicle is traveling on a curve, detection is performed by comparing the background flow and the optical flow at each point on the image, so that an approaching object can be detected accurately. Also, for parallel cars and distant approaching objects where the size of the optical flow obtained from the image is small, the optical flow is very different from the background flow at that point on the image, so it is easy to It can be detected.
[0033]
DETAILED DESCRIPTION OF THE INVENTION
According to the first aspect of the present invention, as a monitoring device using a camera that reflects the surroundings of a vehicle, an optical flow is obtained from an image photographed by the camera, and the movement of the vehicleAnd a space model that models the space that the camera is photographing,A background flow, which is an optical flow of the image when it is assumed to be a background, is obtained, and the optical flow and the background flow are compared to detect the movement of an object around the vehicle.
[0034]
Of the present inventionSecond aspectAccording to the above, the spatial model is generated based on distance data of each object photographed by the cameraFirst aspectMonitoring device is provided.
[0035]
Of the present inventionThird aspectAccording to the above, the distance data was measured by an obstacle sensor provided in the vehicleSecond aspectMonitoring device is provided.
[0036]
Of the present inventionFourth aspectAccording to the present invention, the space model includes at least a road surface model obtained by modeling a traveling road surface.First aspectMonitoring device is provided.
[0037]
Of the present invention5th aspectAccording to the above, the space model includes at least a wall surface model assuming a wall surface perpendicular to the road surface.First aspectMonitoring device is provided.
[0038]
Of the present inventionSixth aspectAccording to the above, the wall surface was assumed to be on the rear side of the vehicle5th aspectMonitoring device is provided.
[0039]
Of the present invention7th aspectAccording to the above, when comparing the optical flow and the background flow, it is determined whether or not the size of the optical flow is larger than a predetermined value. On the other hand, when this is not the case, a monitoring device according to a first aspect for performing comparison without using an angle difference is provided.
[0040]
Of the present inventionEighth aspectThe predetermined value is set according to the size of the background flow at the position on the image.7th aspectMonitoring device is provided.
[0041]
Of the present inventionNinth aspectAccording to the present invention, an approaching object candidate flow is identified from the optical flow by comparing the optical flow and the background flow, and an approaching object candidate region is generated by associating the approaching object candidate flow in the vicinity, and the approaching When the area of an object candidate area is smaller than a predetermined value, the monitoring apparatus according to the first aspect is provided that determines that the approaching object candidate flow related to the approaching object candidate area is noise.
[0042]
Of the present inventionTenth aspectAs a monitoring device using a camera that reflects the surroundings of a vehicle, an optical flow is obtained from an image taken by the camera, and the optical flow, the movement of the vehicle, and a space taken by the camera are obtained. Based on the modeled spatial model, a spatial flow that is a movement of a point on the image in real world coordinates is obtained, and a motion of an object around the vehicle is detected based on the spatial flow I will provide a.
[0043]
Of the present inventionEleventh aspectAccording to the above, as a monitoring method, an optical flow is obtained from an image taken by a camera that reflects the surroundings of the vehicle, and the movement of the vehicleAnd a space model that models the space that the camera is photographing,A background flow, which is an optical flow of the image when it is assumed to be a background, is obtained, and the optical flow and the background flow are compared to detect the movement of an object around the vehicle.
[0044]
Of the present invention12th aspectAccording to the above, the movement of the vehicle is estimated using the outputs of the vehicle speed sensor and the steering angle sensor provided in the vehicle.Eleventh aspectProvide a monitoring method.
[0045]
Of the present invention13th aspectAccording to the present invention, as a monitoring program, a procedure for obtaining an optical flow for an image photographed by a camera that reflects the surroundings of a vehicle on a computer, and the movement of the vehicleAnd a space model that models the space that the camera is photographing,A procedure for obtaining a background flow, which is an optical flow of the image when it is assumed to be a background, and a procedure for comparing the optical flow with the background flow and detecting a motion of an object around the vehicle I will provide a.
[0046]
Embodiments of the present invention will be described below with reference to the drawings.
[0047]
(First embodiment)
In the first embodiment of the present invention, vehicle surroundings are monitored as follows. First, an optical flow is obtained using an image from a camera that reflects the surroundings of the vehicle. Next, the correspondence between the points on the camera image and the real world three-dimensional coordinates is estimated as a “space model”. As shown in FIG. 37, by using perspective projection transformation for this space model, a point on the camera image and the real world three-dimensional coordinates can be associated with each other accurately. Then, using this spatial model and the estimated vehicle movement information, an optical flow is calculated by assuming that each point on the image is not a moving object but a background. The optical flow thus obtained is referred to as “background flow”. An approaching object is detected by comparing the background flow with the optical flow actually obtained from the image.
[0048]
That is, the background flow is calculated by accurately considering the correspondence between the points on the camera image and the real world three-dimensional coordinates, and according to this embodiment, the background flow is around the vehicle as compared with the conventional example. The movement of the object can be detected with high accuracy. Further, even while the vehicle is traveling on a curve, the approaching object can be accurately detected because the detection is performed by comparing the background flow and the optical flow at each point on the image. In addition, the parallel flow vehicle and the approaching object in the distance where the size of the optical flow obtained from the image is small, the optical flow is greatly different from the background flow at that point, so this embodiment is easy. Can be detected.
[0049]
FIG. 1 is a block diagram conceptually showing the basic structure of a vehicle monitoring apparatus according to this embodiment. The vehicle monitoring apparatus according to the present embodiment detects the movement of an object around the vehicle using the
[0050]
The
[0051]
<Optical flow detection>
The optical
[0052]
Since the block matching method generally performs a full search, it requires a huge amount of processing time. For this reason, a technique called image hierarchization is widely used to reduce processing time (“3D Vision” removal, co-authored by Saburo Tsubaki, Kyoritsu Publishing). That is, a hierarchized image compressed to 1/2, 1/4, 1/8,. By this image hierarchization, two distant points in an image with a high resolution (large size) become close in an image with a low resolution (small size). Therefore, template matching is first performed for an image with low resolution, and template matching is performed for an image with the next highest resolution only in the vicinity of the optical flow obtained as a result. By repeating such processing, the optical flow in the original image with high resolution can be finally obtained. Moreover, since a local search is required, the processing time can be greatly reduced.
[0053]
<Vehicle motion estimation>
The own vehicle
[0054]
FIG. 2 is a diagram illustrating an Ackermann steering model. Assuming that there is no tire skidding, turning the steering wheel turns the vehicle around a point O on the extension line of the
[Equation 3]
[0055]
FIG. 3 shows the movement of the vehicle in two dimensions. As shown in FIG. 3, if the center of the
[Expression 4]
From (Equation 3) and (Equation 4), the movement rotation angle γ is expressed as (Equation 5).
[Equation 5]
Therefore, the rotation amount α with respect to the plane of the vehicle is expressed by (Equation 6).
[Formula 6]
[0056]
Further, the movement vector T from Ct to Ct + 1 is expressed by (Expression 7) when the X axis is taken in the vehicle traveling direction and the Y axis is taken in the vertical direction.
[Expression 7]
From (Equation 6) and (Equation 7), if the left and right wheel speeds Vl, Vr and the steering angle β of the vehicle are known, the movement of the vehicle can be estimated.
[0057]
Of course, not only the wheel speed and the steering angle information of the steering wheel but also the vehicle motion may be obtained directly using a vehicle speed sensor and a yaw rate sensor. Further, the movement of the vehicle may be obtained using GPS or map information.
[0058]
<Spatial model estimation>
The space
[0059]
Here, it is assumed that a spatial model is generated based on the distance data of each object photographed by the
[0060]
In addition, when a camera fixed to an infrastructure such as a building is used, the shape of the building or the like reflected on the camera changes very rarely, so the three-dimensional information of the space captured by the camera is known. In this case, it is not necessary to estimate a spatial model, and a known spatial model may be determined in advance for each camera.
[0061]
Furthermore, even if the camera is installed in the vehicle, the position can be accurately known using GPS or the like, so the spatial model is estimated by comparing the current position with detailed map data. It is also possible. For example, if it is found from GPS and map data that the vehicle is traveling in a tunnel, a spatial model can be generated from shape information such as the height and length of the tunnel. Such shape information may be provided in advance in the map data, or may be retained on the infrastructure side such as a tunnel and obtained by communication. For example, the shape information of the tunnel is transmitted to the vehicle about to enter the tunnel by a communication means such as DSRC provided at the entrance of the tunnel. Of course, such a method is not limited to a tunnel, and can also be used on ordinary roads, highways, residential areas, parking lots, and the like.
[0062]
<Background flow estimation>
The background
[0063]
FIG. 4 is a flowchart showing the operation of the background
[0064]
First, an arbitrary point (PreXi, PreYi) on the camera image photographed at time t−1 is converted to real-world three-dimensional coordinates (Xw, Yw, Zw) using the spatial model estimated by the spatial
[0065]
Next, based on the movement amount h of the
[0066]
Further, using (Equation 1) and the updated (Equation 2), the real world coordinates (Xw, Yw, Zw) obtained in step S11 are re-projected to points (NextXi, NextYi) on the camera image (step) S14). The camera coordinates (NextXi, NextYi) obtained in this way are the
[0067]
In addition, here, in order to simplify the description, the case where the vehicle curves is described as an example, but the background flow can be obtained by the same method even when the vehicle is traveling straight or parked.
[0068]
<Approaching object detection>
FIG. 6 is a block diagram conceptually showing the configuration of the approaching
[0069]
FIG. 7 is a flowchart showing the operation of the
[0070]
Specifically, first, the size of the optical flow Vi is examined (S41). When the optical flow Vi has a sufficient size (predetermined value THViSince the optical flow Vi is considered to have sufficient reliability with respect to the direction information, the comparison with the background flow Vdi is performed using the angle difference (S42). That is, the absolute value of the angle difference between the optical flow Vi and the background flow Vdi is a predetermined value Th.ArgAt this time, since the optical flow Vi is considered to be different from the background flow Vdi, the flow is determined as an approaching object flow (S44). When the absolute value of the angle difference is sufficiently small (No in S42), since the optical flow Vi is close to the background flow Vdi, it is determined that the flow is not an approaching object (S45). The threshold value THViIs about 0.1 [Pixel], threshold THArgIs preferably about π / 2. Here, when YES is determined in step S41, only the angle information is used and the size information is not used in order to prevent a moving object moving away from the own vehicle from being determined as an approaching object. Of course, the absolute value of the flow vector difference may be used as a discrimination criterion.
[0071]
Further, when the optical flow Vi does not have a sufficient size (No in S41), the comparison with the background flow cannot be performed using the angle difference. In this case, attention is paid to the size of the flow. That is, the absolute value of the vector difference between the optical flow Vi and the background flow Vdi is a predetermined value TH.VdiIt is determined whether or not this is the case (S43), and a predetermined value THVdiIf it is above, it is determined that the flow is an approaching object (S44). Otherwise, it is determined that the flow is not an approaching object (S45). As a situation where the size of the optical flow Vi is small and it is an approaching object,
1. The approaching object is running at the same speed as the vehicle.
2. An approaching vehicle is running far away
However, since the background flow Vdi is accurately obtained in any situation, the approaching object can be determined with high accuracy. The threshold value THVdiIs preferably about 0.1 [Pixel].
[0072]
In step S43, paying attention to the fact that the size of the optical flow Vi is sufficiently small, not the absolute value of the vector difference between the optical flow Vi and the background flow Vdi, but only the size of the background flow Vdi is compared with a predetermined value. You may make it do. In this case, when the background flow Vdi is sufficiently large, it is determined that the flow is an approaching object, and when it is sufficiently small, it is determined that the flow is not an approaching object.
[0073]
Also, the threshold TH used in the flow comparison hereVi, THArg, THVdiMay be set as a function of the position on the image. For example, at a position where the background flow Vdi is small, the threshold value THVi, THVdiAt a position where the background flow Vdi is largeVi, THVdiIncrease As a result, it is possible to perform accurate discrimination at a distance while suppressing the influence of noise.
[0074]
FIG. 8 is a flowchart showing the operation of the
[0075]
First, when the approaching object candidate flow is noise, it should not be detected continuously in time and space. However, if the approaching object candidate flow is related to an actual approaching object instead of noise, the approaching object has a certain size, so that the similar approaching object candidate flow is spatially the size of the approaching object. Should occupy an area of minutes.
[0076]
Therefore, the approaching object candidate flows in the vicinity are associated, the areas related to the associated approaching object candidate flows are connected, and the connected area is set as the approaching object candidate area Ai (S51). Then, an area Si of the approaching object candidate area Ai is obtained (S52), and this area Si is set to a predetermined value TH.Si(S53). Here, when the approaching object candidate area Ai is away from the camera, the predetermined value THSiIs set small, while the approaching object candidate area Ai is close to the camera, the predetermined value THSiSet a larger value. Area Si is a predetermined value THSiIs smaller (No in S53), it is determined that the area Ai is noise (S54). On the other hand, the area Si is a predetermined value TH.SiIf so, the process proceeds to step S55.
[0077]
In step S55, noise removal processing is performed by modeling an approaching object. Considering that the camera is installed in the vehicle, the approaching object is an automobile, a motorcycle, a bicycle, or the like, but any approaching object is an object traveling on the road surface. Therefore, it is determined whether or not the approaching object candidate area Ai exists on the road surface of the space model (S55). If it does not exist, it is determined that the area Ai is noise (S54), and the next frame processing is performed. I do. On the other hand, when at least a part of the approaching object candidate area Ai exists on the road surface, the process proceeds to step S56.
[0078]
In step S56, filtering in the time direction is performed. Since an approaching object cannot appear suddenly on the screen or disappear suddenly, the area should exist several frames continuously. FIG. 9 shows a situation in which another vehicle approaches from the rear during straight traveling. At the current time t, the approaching vehicle 6 is photographed as shown in the left diagram of FIG. 9A, so the approaching object candidate region At is detected as shown in the right diagram of FIG. In addition, at the times t-1, t-2, ..., t-N slightly before the current time t, the approaching object candidate areas At-1, At-2, ..., At-N are respectively shown in Fig. 9B. , (C), (d). Here, if the time interval is sufficiently small, the approaching vehicle 6 does not move greatly on the image, so the region At-1, At-2,..., At-N overlaps with the region At. On the other hand, when an approaching object candidate area is generated due to camera vibration or the like, the candidate area should be detected only for a short time.
[0079]
Therefore, the ratio of the approaching object region candidates in the region of the previous few frames corresponding to the approaching object region candidate Ai is compared with a predetermined value (S56). When the ratio is lower than the predetermined value, it is unlikely that the approaching object candidate area Ai is an approaching object, so the approaching object candidate area Ai is held (S57), and the next frame is processed. . On the other hand, when the ratio of the approaching object region candidates in the previous few frames is higher than a predetermined value, it is determined that the approaching object candidate region Ai is due to the approaching object, and the next frame is processed (S58). For example, when it is detected six times or more in the previous 10 frames, it is determined that the object is approaching.
[0080]
Further, assuming that the camera is installed toward the front or rear of the vehicle and that the approaching object is only a passenger car, the image of the approaching object reflected on the camera is only an image of the passenger car viewed from the front or the rear. For this reason, the size of the approaching object region can be limited to a width of about 2 m and a height from the road surface of about 1.5 m. Therefore, the approaching object candidate area may be set to this size, and the position of the approaching object candidate area may be set so that the number of approaching object flows existing in the area is maximized. In this case, the approaching object and the noise can be discriminated depending on whether or not the number of approaching object flows included in the approaching object candidate area is larger than a predetermined value. Such processing may be executed instead of steps S51 to S53.
[0081]
As described above, according to the present embodiment, by comparing the background flow and the optical flow actually obtained from the camera image, it is possible to accurately detect the movement of the object around the vehicle.
[0082]
Further, even when the vehicle is traveling on a curve, detection is performed by comparing the background flow and the optical flow at each point on the image, so that an approaching object can be detected accurately. Also, for parallel cars and distant approaching objects where the size of the optical flow obtained from the image is small, the optical flow is very different from the background flow at that point on the image, so it is easy to It can be detected.
[0083]
<Other examples of background flow estimation>
(Part 1)
As shown in FIG. 5, when the
[0084]
Therefore, instead of obtaining the background flow based on the movement of the camera, the background flow may be obtained by moving the spatial model on the assumption that the camera is fixed and does not move. FIG. 11 is a flowchart showing background flow estimation processing in such a case.
[0085]
First, as in step S11 of FIG. 4, an arbitrary point (PreXi, PreYi) on the camera image taken at time t-1 is used to calculate the real world using the spatial model estimated by the spatial
[0086]
Next, based on the movement amount h of the
[0087]
Note that (NextXw, NextYw, NextZw) obtained in step S22 can be said to be a spatial model at time t predicted from the spatial model at time t-1, so that the spatial model is updated by continuing such processing. May be. Alternatively, such a spatial model update process may be performed only for the part determined to be the background by the approaching
[0088]
(Part 2)
In each of the two methods described above, the points on the camera image are converted into real world three-dimensional coordinates, and processing is performed using a spatial model assumed in the real world coordinate system. On the other hand, it is also possible to perform all processing in the camera coordinate system. FIG. 12 is a flowchart showing background flow estimation processing in such a case. In this case, the space model must be described in the camera coordinate system. Since the camera coordinate system and the real world coordinate system have a one-to-one correspondence, the spatial model assumed in the real world coordinate system can be easily converted into the camera coordinate system according to (Equation 2).
[0089]
First, an arbitrary point (PreXi, PreYi) on a camera image photographed at time t−1 is converted to a three-dimensional position (PreXc, PreYc, Project to PreZc) (S31). At this time, the perspective projection conversion equation shown in (Expression 1) is used.
[0090]
Next, the camera coordinates (PreXc, PreYc, PreZc) obtained in step S31 based on the movement amount h of the
[0091]
As described above, the space model is used for conversion from a camera image to a real world three-dimensional coordinate system, or from a camera image to a camera coordinate system. Therefore, the space model can be described as a conversion formula from the camera image to the real world three-dimensional coordinate system, or as a conversion formula from the camera image to the camera coordinate system.
[0092]
FIG. 13 is an example of a camera image in which the background flow according to the present invention is indicated by arrows. As described above, the background flow is used for comparison with the optical flow actually obtained from the camera image, and serves as a reference for detecting an approaching object. As can be seen from FIG. 13, the background flow takes into account the curve of the traveling road surface. That is, it can be intuitively understood from FIG. 13 that the present invention can detect an approaching object with high accuracy even in a curve as compared with the conventional case.
[0093]
According to the present invention, it is possible to accurately detect only an object approaching the host vehicle. Then, using this detection result, for example, an image highlighting only an approaching vehicle is displayed, or the presence of an approaching vehicle is warned by sound or image, vibration of a steering wheel or chair, lighting of a danger notification lamp such as an LED, etc. Or you can. Further, in a dangerous situation, the steering and brake may be automatically controlled to avoid contact with or collision with an approaching vehicle.
[0094]
Here, highlighting using a background flow will be described.
[0095]
FIG. 38 is an example in which only the optical flow corresponding to the approaching vehicle is superimposed and displayed on the rear image during the curve running. In FIG. 38, vehicles A and B that are separated from the host vehicle by an approximately equal distance are approaching at substantially the same speed. As shown in FIG. 38, the user can recognize the approach of the car A outside the curve by the optical flow (arrow) displayed in a superimposed manner. However, for the vehicle B inside the curve, the optical flow is almost zero, and the user cannot recognize the approach. As described above, when the vehicle is traveling on a curve, the presence of an approaching object may not be recognized by simply displaying the optical flow superimposed.
[0096]
The cause of this is that the background flow caused by the vehicle traveling on the curve and the flow caused by the movement of the approaching vehicle cancel each other. FIG. 39 is a background flow of the image of FIG. In FIG. 39, arrows A2 and B2 are background flows corresponding to the positions of the cars A and B, respectively. As can be seen from FIG. 39, the background flow B2 at the position of the car B is opposite to the movement of the car B.
[0097]
Therefore, in order to highlight only the movement of the approaching vehicle, the background flow is subtracted in vector from the obtained optical flow, and the obtained flow is superimposed on the camera image. FIG. 40 shows a display example. Unlike FIG. 38, the flow is displayed for both the approaching vehicles A and B, and thus the user can reliably recognize the presence of the approaching vehicle.
[0098]
Of course, the approaching object region may be obtained by connecting the approaching object flows as described above, and the approaching object region may be highlighted by drawing a frame as shown in FIG. Furthermore, since the approaching vehicle flow and approaching object area are larger, it is considered that the approaching vehicle is closer and the risk is higher, so the color and thickness of the frame depends on the size of the approaching object flow and approaching object region. The line type or the like may be switched.
[0099]
Moreover, you may warn with a sound instead of an image or with an image. In this case, it is effective that the sound can be heard from the position where the approaching object exists. Further, the loudness, melody, tempo, frequency, etc. may be changed according to the degree of danger. For example, when the car is approaching slowly from the right rear, make a small sound from the driver's right rear, and when the car is approaching rapidly from the left rear, make a loud sound from the left rear. That's fine.
[0100]
In the above-described embodiment, the movement of the host vehicle is estimated from the rotational speed of the wheel and the steering angle of the steering wheel. On the other hand, it is also possible to detect the movement of the vehicle (camera itself) using the image of the camera installed in the vehicle. This method will be described.
[0101]
Here, the equation of the road surface which is a stationary plane is known, and the movement of the vehicle is assumed to be minute, and the movement parameter of the vehicle (camera) is estimated from the movement of the point on the road surface on the image. Even if the vehicle is moving at high speed, increasing the frame rate at the time of imaging increases the camera movement between images, so this assumption does not lose generality.
[0102]
FIG. 41 is a schematic diagram for explaining the present method. As shown in FIG. 41, the coordinate value of the point P on the stationary plane in the camera coordinate system is changed from PE = (x, y, z) to PE ′ = (x ′, y ′, z ′) by the movement of the
[Expression 12]
[0103]
Here, if the stationary plane is expressed as z = ax + by + c, the following equation holds for the movement (u, v) → (u ′, v ′) of the point P on the image coordinates.
[Formula 13]
[0104]
Here, it is assumed that the corresponding points (u, v) (u ′, v ′) on the image coordinates and the coefficients a, b, c of the equation of the stationary plane are known, and the above equation is expressed as an unknown parameter (wx, wy, A summary of wz, tex, ty, tz) is as follows.
[Expression 14]
[Expression 15]
[0105]
If this is set to AC = R, the terms of rotation and translation, which are the movements of the vehicle, can be obtained using the method of least squares.
C = (AtA)-1AtR
[0106]
(Second Embodiment)
FIG. 14 is a block diagram conceptually showing the basic structure of a vehicle monitoring apparatus according to the second embodiment of the present invention. In FIG. 14, the same reference numerals as those in FIG. 1 are given to components common to those in FIG. 1, and detailed description thereof is omitted here. The difference from the first embodiment is that the spatial
[0107]
In general, in a situation where a vehicle travels, various things such as buildings, utility poles, signboards, and trees exist on the road surface. For this reason, various things, such as a road surface, a building, an electric pole, a signboard, a tree, and also the sky, are projected on the
[0108]
There are various things that can be seen on the camera, but there is almost certainly something that appears when the camera is placed in the downward direction of the vehicle. It is the “road surface on which the vehicle has traveled”. Therefore, a “road surface model” that models the road surface on which the vehicle has traveled is used as a space model. Since the road surface model is an infinite extension of the traveling road surface, an accurate road surface model can be estimated as long as the gradient does not change abruptly. In addition, even when the slope of the road surface is changing, such as on a slope or a road with intense ups and downs, it is possible to generate a road surface model that takes into account the influence of the slope of the road surface by using a sensor such as a gyroscope. is there.
[0109]
However, the road surface model cannot always be used in the entire area on the camera image. This is because the camera is generally considered to be installed almost horizontally, and in this case, the road surface is not reflected in an area higher than the horizon in the camera image. Of course, it is possible to arrange the camera so that the road surface is reflected in the entire area of the camera image, but in this case, the range that can be monitored by the camera becomes narrow, which is not practical.
[0110]
Therefore, in this embodiment, in addition to the road surface model, a wall surface perpendicular to the traveling road surface is assumed as a space model. This space model is called a “wall surface model”.
[0111]
FIG. 15 is a diagram illustrating an example of a wall surface model. In FIG. 15, 1 is a vehicle, 2 is a camera installed in the
[0112]
When the wall surface model as shown in FIG. 15 is used, how to determine the distance L to the wall surface model MW becomes a problem. FIG. 16 is a diagram illustrating an example of the background flow in the right curve. Each arrow indicates the obtained background flow, and the white line indicates a white line on the road surface. MWA is an area where the background flow is obtained by the wall surface model MW, and MSA is an area where the background flow is obtained by the road surface model MS. In the figure, (a) shows when L is sufficiently long, (b) shows when L is sufficiently short, and a background flow corresponding to the size of distance L is shown by comparing (a) and (b). You can see the change.
[0113]
That is, comparing FIGS. 16A and 16B, it can be seen that the background flow size in the wall surface model region MWA is greatly different. However, as described above, since the condition that “a part of the approaching object is in contact with the road surface” is added in the approaching object detection process, if the background flow in the road surface model area MSA is accurately obtained, the wall surface model The background flow in the region MSA does not necessarily have to be accurately obtained.
[0114]
It can also be seen that the background flow in the area BA near the boundary between the road surface model and the wall surface model is considerably different between FIGS. 16 (a) and 16 (b). This boundary area BA is an area that is also important in road surface determination. Therefore, depending on the setting of the distance L to the wall surface model MW, the detection accuracy may be deteriorated.
[0115]
Therefore, as another wall surface model, a space model is assumed in which walls (MW1, MW2) are present on both sides of the
[0116]
A case where a spatial model as shown in FIG. 17 is described as a conversion formula from a camera image to a real world three-dimensional coordinate system will be described in detail.
[0117]
First, the road surface model will be described. Assuming that the traveling road surface is a flat road surface without a gradient, the road surface model is an Xw-Yw plane of a real world three-dimensional coordinate system. Therefore, this plane relational expression
Zw = 0
Is substituted into (Equation 1) and (Equation 2), the point P (Xi, Yi) on the camera image can be converted into the real world three-dimensional coordinate Pw (Xw, Yw, Zw) by the following equation. .
[Equation 8]
(Equation 8) is a conversion formula from the image coordinate system to the real world three-dimensional coordinate system in the road surface model.
[0118]
Next, the wall surface model will be described. It is assumed that the
[0119]
At this time, in the real-world three-dimensional coordinate system, the wall surface model has a point (R, 0,0) at the center of the cross section in the Xw-Zw plane and a radius (R ± W / 2) perpendicular to the Xw-Zw plane. Since this is a part of the cylinder,
[0120]
(Xw-R)2+ Zw2= (R ± W / 2)2
By using this equation and (Equation 1) and (Equation 2), the point P (Xi, Yi) on the camera image is converted into the real world three-dimensional coordinate Pw (Xw, Yw, Zw) by the following equation. be able to.
[Equation 9]
further,
1) The object shown in the camera image does not exist behind the camera 2 (Ze> 0)
2) The space model is higher than the road surface (Yw ≧ 0)
Thus, Pw (Xw, Yw, Zw) can be uniquely determined. (Equation 9) is a wall surface model expressed as a conversion formula from the image coordinate system to the real world three-dimensional coordinate system.
[0121]
Now, when the wall surface model as shown in FIG. 17 is used, it becomes a problem how to determine the distance W between the wall surfaces MW1 and MW2 assumed on the left and right sides of the vehicle. FIG. 18 is a diagram showing an example of the background flow in the right curve. Each arrow indicates the obtained background flow, and the white line indicates the white line on the road surface. Further, MW1A is a region where the background flow is obtained by the left wall model MW1 when viewed from the
[0122]
That is, comparing FIGS. 18A and 18B, it can be seen that the background flows in the area BA1 near the boundary between the left and right wall models are greatly different. However, as described above, since the condition that “a part of the approaching object is in contact with the road surface” is added in the approaching object detection process, if the background flow in the road surface model area MSA is accurately obtained, the wall surface model Even if an error occurs in the background flow in the areas MW1A and MW1B, it does not cause a big problem in approaching object detection.
[0123]
That is, in the wall surface model as shown in FIG. 17, unlike the case where the wall surface is assumed behind the camera as shown in FIG. 15, in the boundary region between the wall surface model and the road surface model, the background flow depends on the size of the space W between the wall surfaces. Since there is no significant difference, an approaching object can be detected with high accuracy. For example, the interval W between the wall surfaces may be about 10 m.
[0124]
Of course, the distance W between the wall surfaces may be measured using various obstacle detection sensors such as a laser, an ultrasonic wave, an infrared ray, and a millimeter wave, or may be measured using a binocular vision or a motion stereo method. It is also possible to extract a region other than the road surface from the camera image using the texture information of the road surface, and assume that region as a wall surface. Furthermore, it is also possible to measure only a part of the space model using the distance measuring sensor and to model other regions by a plane or a curved surface as described here. Alternatively, the number of lanes of the road on which the vehicle is currently traveling may be obtained using a camera image or communication, and the distance W between the wall surfaces may be determined using the result. As a method of determining the number of lanes from a camera image, for example, there is a method of detecting a white line and determining the number of lanes based on the number of obtained white lines.
[0125]
The shape of the space model can be switched based on GPS information and map data as in a car navigation system, time data using a clock, operation data of a vehicle wiper, a headlight, or the like. For example, when it is found from the GPS information and map data that the vehicle is currently traveling through a tunnel, a space model in which a ceiling exists may be obtained. Alternatively, information that the vehicle is traveling in the tunnel can be obtained by a communication means such as DSRC attached to the tunnel entrance or the like. Also, since the headlights are usually turned on during tunnel travel, it is linked to time data, wiper data, and headlight data, for example, not at night (estimated from the time data), but it is not raining (wiper data) However, when the headlights are turned on, it can be determined that the tunnel is traveling and the space model can be switched.
[0126]
FIG. 19 is a flowchart showing the operations of the vehicle
[0127]
By the way, all the motion vectors before the time t−1 should have been obtained so far. Therefore, the trajectory of the vehicle up to time t-1 is obtained by connecting the motion vectors so far (S63). FIG. 20 shows an example of the locus up to time t-1 obtained in this way. In FIG. 20, T indicates the current motion vector, and TR indicates a trajectory obtained by connecting the motion vectors so far.
[0128]
Next, a spatial model is estimated (S64). Here, the road surface model and the wall surface model as shown in FIG. 17 are used. That is, as shown in FIG. 21, a plane including the trajectory TR is obtained as the road surface model MS, and a wall surface perpendicular to the road surface model MS at a position separated from the trajectory TR by a length W / 2 is a wall surface model MW1. , MW2.
[0129]
Next, a background flow is estimated (S65-S68). First, an arbitrary point PreCi (PreXi, PreYi) on the camera image at time t-1 is projected onto the real-world three-dimensional coordinates PreRi (PreXw, PreYw, PreZw) (S65). FIG. 22 shows this process. The angle θ is the angle of view of the
[0130]
Next, by moving the
[0131]
NextCi (NextXi, NextYi) obtained here is the value on the camera image at time t when it is assumed that the point PreRi is not moving between time t-1 and time t, that is, a point on the background object. Indicates the position. Therefore, the background flow BFL when it is assumed that the point PreCi on the camera image at time t-1 is a part of the background can be obtained as (NextXi-PreXi, NextYi-PreYi) (S68). By performing such processing for all points on the camera image, a background flow as shown in FIG. 13 can be obtained.
[0132]
The example which performed the approaching object detection which concerns on this embodiment is shown in FIGS. FIG. 24 is an image taken from a camera installed behind the vehicle. The vehicle is about to turn right at the intersection, and a white passenger car VC1 is approaching from behind. Note that the only moving object on the image is the white passenger car VC1, and the passenger cars VC2 and VC3 are stopped.
[0133]
Here, consider the first conventional example described above. In the first conventional example, first, as shown in FIG. 25A, the region L and the region R are divided and set in the horizontal direction. Of the detected optical flows, those that are directed to the left or lower left direction in the region L and those that are directed to the right or lower right direction in the region R are detected as approaching objects.
[0134]
Here, the areas AR1 and AR2 are assumed in the area L. The area AR1 includes a passenger car VC1 that is an approaching object, and the area AR2 includes a passenger car VC2 that is stationary. However, since the passenger car VC1 in the area AR1 has an optical flow in the lower right direction as shown by an arrow, it is not detected as an approaching object. On the other hand, the passenger car VC2 in the area AR2 has an optical flow in the left direction as indicated by an arrow because the vehicle is traveling on a curve, and is thus detected as an approaching object. FIG. 25B shows a result of such processing, and a region surrounded by a rectangle is a region detected as an approaching object. Thus, in the first conventional example, the approaching object cannot be detected well on the curve.
[0135]
On the other hand, according to the present embodiment, the background flow in the areas AR1 and AR2 is obtained as indicated by the arrows in FIG. In other words, in the area AR1 including the passenger vehicle VC1 that is an approaching object, the optical flow turns to the lower right as shown in FIG. 25A, while the background flow turns to the left as shown in FIG. . For this reason, it is determined that the area AR1 is an approaching object. On the other hand, in the area AR2 including the stationary passenger car VC2, the optical flow turns to the left as shown in FIG. 25A, but the background flow also turns to the left as shown in FIG. Yes. For this reason, it is determined that the area AR2 is not an approaching object but a background. FIG. 26B shows the result of such processing, and a region surrounded by a rectangle is a region detected as an approaching object. Thus, according to the present invention, unlike the conventional example, it is possible to reliably detect an approaching object even in a curve.
[0136]
In addition, the monitoring apparatus for vehicles using a road surface model is described in Unexamined-Japanese-Patent No. 2000-74645 and Unexamined-Japanese-Patent No. 2001-266160. However, these techniques do not use a road surface model to determine the background flow as in the present invention. Moreover, it is not aimed at detecting an approaching object when traveling on a curve, and the problem is different from the present invention.
[0137]
More specifically, in the former case, the optical flow generated from another vehicle in the monitoring area is detected, and the relative relationship between the own vehicle and other surrounding vehicles is monitored using the detected optical flow. The feature of this technique is to limit the region for detecting the optical flow in order to shorten the processing time, and a road surface model is used to realize this. That is, the space model is not used for detecting the approaching object flow as in the present invention. Actually, in this technique, the method using the virtual FOE shown in the fifth conventional example is used for detecting the approaching object flow in the curve, and therefore, the same problems as in the fifth conventional example are encountered. Hold. That is, accurate approaching object detection cannot be performed on a curve without a white line.
[0138]
The latter uses the three-dimensional movement of each point on the screen. That is, first, an optical flow that is a two-dimensional movement on the screen is obtained for each point on the screen. Then, based on the obtained optical flow and vehicle motion information, the three-dimensional motion in the real world of each point is calculated. By tracking these three-dimensional movements in time, a space model of the space where the vehicle is actually traveling is estimated. Among the spatial models estimated in this way, those different from the road surface motion are detected as obstacles. However, with this technique, since the movement of each point is obtained in a three-dimensional manner, there is a problem that it is very computationally expensive and difficult to implement.
[0139]
<Hardware configuration example>
FIG. 27 is a diagram showing an example of a hardware configuration for realizing the present invention. In FIG. 27, for example, an image captured by the
[0140]
The
[0141]
That is, the
[0142]
Then, the
[0143]
(Third embodiment)
FIG. 28 is a block diagram conceptually showing the basic structure of a vehicle monitoring apparatus according to the third embodiment of the present invention. 28, the same reference numerals as those in FIG. 1 are attached to the same components as those in FIG. 1, and detailed description thereof is omitted here. The difference from the first embodiment is that the optical
[0144]
The optical flow Vi, which is the movement of the object on the camera image, is expressed by the sum of the movement Vb due to the actual movement of the target object and the relative movement Vc due to the movement of the camera itself as in the following equation. The
[0145]
Vi = Vb + Vc
Here, if the object is not moving, that is, the background, Vb is 0 and Vc is equal to the background flow. If the target is a moving object, Vb depends on the movement vector of the target, but Vc is almost equal to the background flow. This indicates that when the amount of movement of the object is not so large, the optical flow exists in the vicinity of the background flow. Therefore, when obtaining the optical flow, by searching only the vicinity of the background flow, the search area can be narrowed and the calculation time can be reduced.
[0146]
In addition, the optical flow detection accuracy can be improved by the same method. This is particularly effective when using a layered image for optical flow detection. As described above, the hierarchical image is used to reduce the calculation time. However, the higher the hierarchy is, the lower the resolution of the image becomes, so that there is a high possibility that an error will occur in template matching. If an error occurs in the upper layer and an erroneous detection is made, the error is not absorbed in the lower layer, and therefore an optical flow different from the actual one is detected.
[0147]
FIG. 29 is a diagram schematically showing a block matching result in a hierarchized image. In FIG. 29,
[Expression 10]
## EQU11 ##
That is, the block having the smallest value of the difference evaluation function E (x, y) is a block corresponding to the template block F, and corresponds to the optical flow in the image.
[0148]
First, block matching is performed on the
[0149]
Therefore, in the present embodiment, this problem is solved by adding blocks in the vicinity of the background flow to the search area at the time of block matching in the
[0150]
(Fourth embodiment)
FIG. 30 is a diagram conceptually showing the basic structure of a vehicle monitoring apparatus according to the fourth embodiment of the present invention. 30, the same reference numerals as those in FIG. 1 are given to the same components as those in FIG. 1, and detailed description thereof is omitted here. The difference from the first embodiment is that the background
[0151]
With reference to FIG. 31 and FIG. 32, the process in the three-dimensional
[0152]
FIG. 32 is a diagram schematically showing the relationship between the
VRi = NextRi-Ri
[0153]
By the way, since the motion of the
[0154]
Of course, the space model may be obtained by various sensors and communication as in the first embodiment, or another space model may be used.
[0155]
The approaching object
[0156]
Furthermore, an approaching object can be detected by performing the same processing as the
[0157]
In the description so far, it is assumed that the space model is described in the real world three-dimensional coordinate system, but instead, it may be expressed in the camera coordinate system. In this case, the points Ci and NextCi on the camera image correspond to the points Ri and NextRi in the camera coordinate system, respectively. Since the origin of the camera coordinate system has moved by an amount corresponding to the motion vector T of the
VRi = NextRi-Ri-T
[0158]
When this vector VRi faces the origin, it is determined that the point Ci is an approaching object flow, and otherwise the point Ci is not an approaching object flow. This process is performed at all points on the camera image, and the
[0159]
<Combination with obstacle sensor>
The present invention performs approaching object detection using image information. For this reason, compared with the case where an obstacle sensor such as a laser, an infrared ray, or a millimeter wave is used, it is possible to detect more complicatedly whether an approaching object is approaching or moving away. However, when an obstacle is present in the vicinity of the vehicle, it is important to quickly and accurately detect simple information on whether or not there is an obstacle rather than such complicated information.
[0160]
Therefore, an area near the vehicle may be detected by an obstacle sensor, and an area other than that may be detected using the method according to the present invention. This makes it possible to monitor the periphery of the vehicle quickly and accurately.
[0161]
FIG. 33 is a diagram illustrating an installation example of an obstacle sensor. In FIG. 2A, an
[0162]
In addition, since the obstacle sensor is greatly affected by the weather such as rain, when the rain is recognized from the operation information of the turn signal, the use of the obstacle sensor is stopped and the method according to the present invention is used. Good. Thereby, it is possible to improve detection accuracy.
[0163]
Moreover, you may make it detect again with an obstacle sensor about the area | region detected that there was an approaching object by the method which concerns on this invention. Thereby, the detection accuracy of an approaching object can be improved and an erroneous alarm can be prevented from being generated.
[0164]
Furthermore, as a result of detection by the obstacle sensor, it may be determined whether or not it is an approaching object only by using the method according to the present invention for an area determined to have an obstacle. As a result, the processing speed can be improved.
[0165]
It should be noted that all or part of the functions of the respective means of the monitoring device of the present invention may be realized using dedicated hardware, or may be realized as software by a computer program.
[0166]
【The invention's effect】
As described above, according to the present invention, in the vehicle monitoring device that detects an approaching object using an optical flow, the detection accuracy is not lowered even in a curve, and an object that runs parallel to the host vehicle even when traveling straight It is also possible to detect distant approaching objects with small movements on the screen.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a monitoring device according to a first embodiment of the present invention.
FIG. 2 is a diagram for explaining a method for estimating own vehicle motion, and is a conceptual diagram for explaining an Ackermann model.
FIG. 3 is a diagram for explaining a method of estimating own vehicle movement, and is a conceptual diagram showing movement of the vehicle in two dimensions.
FIG. 4 is a flowchart showing a flow of background flow estimation processing.
FIG. 5 is a diagram for explaining a background flow estimation method, and is a conceptual diagram showing a movement when a vehicle turns.
FIG. 6 is a block diagram conceptually showing the structure of an approaching object detection unit.
FIG. 7 is a flowchart showing an operation of a flow comparison unit.
FIG. 8 is a flowchart showing the operation of a noise removal unit.
FIG. 9 is a conceptual diagram for explaining processing in a noise removing unit.
FIG. 10 is a conceptual diagram for explaining a background flow estimation method;
FIG. 11 is a flowchart showing a flow of processing of another example of background flow estimation.
FIG. 12 is a flowchart showing a flow of processing of another example of background flow estimation.
FIG. 13 is an example of a camera image on which a background flow according to the present invention is displayed.
FIG. 14 is a block diagram showing a configuration of a monitoring device according to a second embodiment of the present invention.
FIG. 15 is a diagram showing an example of a space model according to the present invention.
16 is a diagram showing a relationship between a distance L and a background flow in the space model of FIG.
FIG. 17 is a diagram showing another example of a space model according to the present invention.
18 is a diagram showing a relationship between a width W and a background flow in the space model of FIG.
FIG. 19 is a flowchart showing a background flow estimation process according to the second embodiment of the present invention;
FIG. 20 is a diagram for explaining a background flow estimation method according to the second embodiment of the present invention;
FIG. 21 is a diagram for explaining a background flow estimation method according to the second embodiment of the present invention;
FIG. 22 is a diagram for explaining a background flow estimation method according to the second embodiment of the present invention;
FIG. 23 is a diagram for explaining a background flow estimation method according to the second embodiment of the present invention;
FIG. 24 is an example of an image of a camera installed in a vehicle.
FIG. 25 is a diagram showing a result of detecting an approaching object from the camera image of FIG. 24 according to the first conventional example.
26 is a diagram showing the result of detecting an approaching object from the camera image of FIG. 24 according to the present invention.
FIG. 27 is a diagram illustrating an example of a hardware configuration according to the present invention.
FIG. 28 is a block diagram showing a configuration of a monitoring device according to a third embodiment of the present invention.
FIG. 29 is a conceptual diagram for explaining a problem in a hierarchized image.
FIG. 30 is a block diagram showing a configuration of a monitoring device according to a fourth embodiment of the present invention.
FIG. 31 is a diagram for explaining processing according to the fourth embodiment of the present invention;
FIG. 32 is a diagram for explaining processing according to the fourth embodiment of the present invention;
FIG. 33 is a diagram illustrating an example of an installation position of an obstacle sensor according to the present invention.
FIG. 34 is an example of a camera image showing the rear of the vehicle, and is a diagram for explaining a problem during the curve traveling of the first conventional example.
FIG. 35 is a diagram illustrating a relationship between a camera image and real-world three-dimensional coordinates.
FIG. 36 is a diagram illustrating a relationship between a camera image and a real world coordinate system in a conventional example.
FIG. 37 is a diagram showing a relationship between a camera image and a real world coordinate system in the present invention.
FIG. 38 is an example in which an optical flow of an approaching vehicle is superimposed and displayed on a camera image during running on a curve.
FIG. 39 is a background flow of the image in FIG. 38;
FIG. 40 is an example in which a flow obtained by subtracting a background flow is superimposed and displayed on a camera image.
FIG. 41 is a conceptual diagram for explaining a method of detecting the movement of a vehicle using a camera image.
[Explanation of symbols]
1 vehicle
2 Camera
11 Camera
12, 12A Optical flow detector
13 Vehicle motion estimation unit
14, 14A Spatial model estimation unit
15 Background flow estimation unit
16, 16A Approaching object detector
51,52 Obstacle sensor
Vi optical flow
T vehicle motion vector
MS road model
MW, MW1, MW2 Wall model
Claims (13)
前記カメラによって撮影された画像から、オプティカルフローを求め、
前記車両の動きと、前記カメラが撮影している空間をモデル化した空間モデルとを用いて、背景と仮定した場合の前記画像のオプティカルフローである背景フローを求め、
前記オプティカルフローと前記背景フローとを比較し、前記車両の周囲にある物体の動きを検出する
ことを特徴とする監視装置。A monitoring device using a camera that reflects the surroundings of a vehicle,
From the image taken by the camera, the optical flow is obtained,
Using a motion model of the vehicle and a space model obtained by modeling a space captured by the camera , a background flow that is an optical flow of the image when it is assumed to be a background is obtained.
A monitoring apparatus characterized in that the optical flow and the background flow are compared to detect the movement of an object around the vehicle.
前記空間モデルは、前記カメラが撮影している各物体の距離データに基づいて、生成されたものである
ことを特徴とする監視装置。 In claim 1 ,
The monitoring apparatus according to claim 1, wherein the spatial model is generated based on distance data of each object photographed by the camera.
前記車両は、障害物センサが設けられており、
前記距離データは、前記障害物センサによって測定されたものである
ことを特徴とする監視装置。 In claim 2 ,
The vehicle is provided with an obstacle sensor,
The monitoring apparatus according to claim 1, wherein the distance data is measured by the obstacle sensor.
前記空間モデルは、少なくとも、走行路面をモデル化した路面モデルを含むものである
ことを特徴とする監視装置。 In claim 1 ,
The monitoring apparatus according to claim 1, wherein the space model includes at least a road surface model obtained by modeling a traveling road surface.
前記空間モデルは、少なくとも、走行路面に対して垂直な壁面を仮定した壁面モデルを含むものである
ことを特徴とする監視装置。 In claim 1 ,
The monitoring apparatus according to claim 1, wherein the space model includes at least a wall surface model assuming a wall surface perpendicular to a traveling road surface.
前記壁面は、車両の後側方にあると仮定されたものである
ことを特徴とする監視装置。 In claim 5 ,
The monitoring apparatus according to claim 1, wherein the wall surface is assumed to be on a rear side of the vehicle.
オプティカルフローと背景フローとの比較の際に、
前記オプティカルフローの大きさが、所定値よりも大きいか否かを判定し、
所定値よりも大きいときは、角度差を用いて、比較を行う一方、そうでないときは、角度差を用いないで、比較を行う
ことを特徴とする監視装置。In claim 1,
When comparing the optical flow with the background flow,
Determining whether the size of the optical flow is greater than a predetermined value;
A monitoring device characterized in that, when the difference is larger than a predetermined value, the comparison is performed using the angle difference, and otherwise, the comparison is performed without using the angle difference.
前記所定値は、画像上の当該位置における背景フローの大きさに応じて、設定されている
ことを特徴とする監視装置。 In claim 7 ,
The monitoring apparatus according to claim 1, wherein the predetermined value is set according to a size of a background flow at the position on the image.
オプティカルフローと背景フローとの比較によって、前記オプティカルフローの中から、接近物候補フローを特定し、
近傍にある前記接近物候補フローを関連付けることによって、接近物候補領域を生成し、
前記接近物候補領域の面積が、所定値よりも小さいとき、この接近物候補領域に係る接近物候補フローは、ノイズであると判断する
ことを特徴とする監視装置。In claim 1,
By comparing the optical flow and the background flow, the approaching object candidate flow is identified from the optical flows,
Generating an approaching object candidate region by associating the approaching object candidate flows in the vicinity;
When the area of the approaching object candidate region is smaller than a predetermined value, it is determined that the approaching object candidate flow related to the approaching object candidate region is noise.
前記カメラによって撮影された画像から、オプティカルフローを求め、
前記オプティカルフローと、当該車両の動きと、前記カメラが撮影している空間をモデル化した空間モデルとを基にして、前記画像上の点の実世界座標上における動きである空間フローを求め、
前記空間フローを基にして、当該車両の周囲にある物体の動きを検出する
ことを特徴とする監視装置。A monitoring device using a camera that reflects the surroundings of a vehicle,
From the image taken by the camera, the optical flow is obtained,
Based on the optical flow, the movement of the vehicle, and a spatial model that models the space captured by the camera, obtain a spatial flow that is a movement of the point on the image in real world coordinates,
A monitoring apparatus that detects movement of an object around the vehicle based on the spatial flow.
前記車両の動きと、前記カメラが撮影している空間をモデル化した空間モデルとを用いて、背景と仮定した場合の前記画像のオプティカルフローである背景フローを求め、
前記オプティカルフローと前記背景フローとを比較し、前記車両の周囲にある物体の動きを検出する
ことを特徴とする監視方法。From the image taken by the camera that reflects the surroundings of the vehicle, the optical flow is obtained,
Using a motion model of the vehicle and a space model obtained by modeling a space captured by the camera , a background flow that is an optical flow of the image when it is assumed to be a background is obtained.
A monitoring method, wherein the optical flow and the background flow are compared to detect a motion of an object around the vehicle.
前記車両に設けられた車速センサおよび舵角センサの出力を用いて、前記車両の動きを推定する
ことを特徴とする監視方法。 In claim 11 ,
A monitoring method, wherein movement of the vehicle is estimated using outputs of a vehicle speed sensor and a rudder angle sensor provided in the vehicle.
車両の周囲を映すカメラによって撮影された画像について、オプティカルフローを得る手順と、
前記車両の動きと、前記カメラが撮影している空間をモデル化した空間モデルとを用いて、背景と仮定した場合の前記画像のオプティカルフローである背景フローを求める手順と、
前記オプティカルフローと前記背景フローとを比較し、当該車両の周囲にある物体の動きを検出する手順と
を実行させるためのプログラム。On the computer,
A procedure for obtaining an optical flow for an image taken by a camera that reflects the surroundings of the vehicle,
A procedure for obtaining a background flow, which is an optical flow of the image when assuming a background , using the movement of the vehicle and a space model obtained by modeling the space captured by the camera ;
A program for comparing the optical flow with the background flow and executing a procedure for detecting the movement of an object around the vehicle.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003130008A JP3776094B2 (en) | 2002-05-09 | 2003-05-08 | Monitoring device, monitoring method and monitoring program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002134583 | 2002-05-09 | ||
JP2003130008A JP3776094B2 (en) | 2002-05-09 | 2003-05-08 | Monitoring device, monitoring method and monitoring program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004056763A JP2004056763A (en) | 2004-02-19 |
JP3776094B2 true JP3776094B2 (en) | 2006-05-17 |
Family
ID=31948903
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003130008A Expired - Lifetime JP3776094B2 (en) | 2002-05-09 | 2003-05-08 | Monitoring device, monitoring method and monitoring program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3776094B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10248222B2 (en) | 2016-08-01 | 2019-04-02 | Samsung Electronics Co., Ltd. | Method for processing event signal and event-based sensor performing the same |
Families Citing this family (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005125208A1 (en) | 2004-06-15 | 2005-12-29 | Matsushita Electric Industrial Co., Ltd. | Monitor and vehicle periphery monitor |
KR100738522B1 (en) | 2004-12-21 | 2007-07-11 | 삼성전자주식회사 | Apparatus and method for distinction between camera movement and object movement and extracting object in video surveillance system |
EP1849123A2 (en) * | 2005-01-07 | 2007-10-31 | GestureTek, Inc. | Optical flow based tilt sensor |
JP4657765B2 (en) * | 2005-03-09 | 2011-03-23 | 三菱自動車工業株式会社 | Nose view system |
JP4529768B2 (en) * | 2005-04-05 | 2010-08-25 | 日産自動車株式会社 | On-vehicle object detection device and object detection method |
JP4493050B2 (en) * | 2005-06-27 | 2010-06-30 | パイオニア株式会社 | Image analysis apparatus and image analysis method |
JP4720386B2 (en) | 2005-09-07 | 2011-07-13 | 株式会社日立製作所 | Driving assistance device |
US20090231146A1 (en) * | 2005-09-07 | 2009-09-17 | Pioneer Corporation | Scene monotonousness calculation device and method |
JP4811201B2 (en) | 2005-12-06 | 2011-11-09 | 日産自動車株式会社 | Runway boundary line detection apparatus and runway boundary line detection method |
US7899211B2 (en) | 2005-12-07 | 2011-03-01 | Nissan Motor Co., Ltd. | Object detecting system and object detecting method |
JP4622889B2 (en) * | 2006-03-01 | 2011-02-02 | トヨタ自動車株式会社 | Image processing apparatus and image processing method |
JP4793685B2 (en) * | 2006-03-31 | 2011-10-12 | カシオ計算機株式会社 | Information transmission system, imaging apparatus, information output method, and information output program |
JP4676373B2 (en) * | 2006-04-27 | 2011-04-27 | 株式会社デンソー | Peripheral recognition device, peripheral recognition method, and program |
JP4958279B2 (en) * | 2006-05-17 | 2012-06-20 | 株式会社デンソーアイティーラボラトリ | Object detection device |
JP4797794B2 (en) | 2006-05-24 | 2011-10-19 | 日産自動車株式会社 | Pedestrian detection device and pedestrian detection method |
KR100791381B1 (en) * | 2006-06-01 | 2008-01-07 | 삼성전자주식회사 | System, apparatus and method to prevent collision for remote control of mobile robot |
JP4882571B2 (en) * | 2006-07-20 | 2012-02-22 | 日産自動車株式会社 | Vehicle monitoring device |
JP2008066953A (en) * | 2006-09-06 | 2008-03-21 | Sanyo Electric Co Ltd | Image monitoring apparatus |
JP4830958B2 (en) * | 2007-04-17 | 2011-12-07 | 株式会社デンソー | Vehicle object detection device |
JP5125214B2 (en) * | 2007-05-08 | 2013-01-23 | 富士通株式会社 | Obstacle detection method and obstacle detection device |
US8300887B2 (en) | 2007-05-10 | 2012-10-30 | Honda Motor Co., Ltd. | Object detection apparatus, object detection method and object detection program |
WO2009005025A1 (en) * | 2007-07-03 | 2009-01-08 | Konica Minolta Holdings, Inc. | Moving object detection device |
JP4883415B2 (en) * | 2007-09-27 | 2012-02-22 | サクサ株式会社 | Monitoring device and program |
JP4853444B2 (en) * | 2007-09-28 | 2012-01-11 | 株式会社デンソー | Moving object detection device |
JP4533936B2 (en) * | 2008-02-01 | 2010-09-01 | 日立オートモティブシステムズ株式会社 | Image processing apparatus and vehicle detection apparatus including the same |
JP5169320B2 (en) * | 2008-03-04 | 2013-03-27 | 日産自動車株式会社 | Vehicle object detection device and vehicle moving object discrimination method |
JP5421072B2 (en) * | 2008-11-19 | 2014-02-19 | クラリオン株式会社 | Approaching object detection system |
JP5363085B2 (en) * | 2008-12-03 | 2013-12-11 | 株式会社小糸製作所 | Headlight control device |
EP2209091B1 (en) * | 2009-01-16 | 2012-08-08 | Honda Research Institute Europe GmbH | System and method for object motion detection based on multiple 3D warping and vehicle equipped with such system |
JP2010204805A (en) * | 2009-03-02 | 2010-09-16 | Konica Minolta Holdings Inc | Periphery-monitoring device and method |
EP2256690B1 (en) * | 2009-05-29 | 2016-08-17 | Honda Research Institute Europe GmbH | Object motion detection system based on combining 3D warping techniques and a proper object motion detection |
JP5483535B2 (en) | 2009-08-04 | 2014-05-07 | アイシン精機株式会社 | Vehicle periphery recognition support device |
US8755634B2 (en) | 2009-08-12 | 2014-06-17 | Nec Corporation | Obstacle detection device and method and obstacle detection system |
JP2011128838A (en) * | 2009-12-17 | 2011-06-30 | Panasonic Corp | Image display device |
JP5539250B2 (en) * | 2011-03-23 | 2014-07-02 | 株式会社デンソーアイティーラボラトリ | Approaching object detection device and approaching object detection method |
DE112012005852T5 (en) * | 2012-02-10 | 2014-11-27 | Mitsubishi Electric Corporation | Driver assistance device and driver assistance method |
JP5878808B2 (en) * | 2012-03-27 | 2016-03-08 | 富士重工業株式会社 | Outside environment recognition device and outside environment recognition method |
JP5866238B2 (en) * | 2012-03-27 | 2016-02-17 | 富士重工業株式会社 | Outside environment recognition device and outside environment recognition method |
JP6151535B2 (en) * | 2013-02-27 | 2017-06-21 | 富士通テン株式会社 | Parameter acquisition apparatus, parameter acquisition method and program |
JP6156067B2 (en) * | 2013-11-01 | 2017-07-05 | 富士通株式会社 | Movement amount estimation apparatus and movement amount estimation method |
JP6206258B2 (en) * | 2014-03-06 | 2017-10-04 | 富士通株式会社 | Trajectory estimation device, trajectory estimation method, and program |
EP3057061B1 (en) | 2015-02-16 | 2017-08-30 | Application Solutions (Electronics and Vision) Limited | Method and device for the estimation of car egomotion from surround view images |
JP6651702B2 (en) * | 2015-03-23 | 2020-02-19 | 富士通株式会社 | Object detection device, object detection method, and information processing program |
JP6641715B2 (en) * | 2015-03-31 | 2020-02-05 | いすゞ自動車株式会社 | Road gradient estimation device and road gradient estimation method |
JP6564682B2 (en) * | 2015-10-26 | 2019-08-21 | トヨタ自動車東日本株式会社 | Object detection device, object detection method, and object detection program |
US10268901B2 (en) * | 2015-12-04 | 2019-04-23 | Texas Instruments Incorporated | Quasi-parametric optical flow estimation |
US10132933B2 (en) * | 2016-02-02 | 2018-11-20 | Qualcomm Incorporated | Alignment of visual inertial odometry and satellite positioning system reference frames |
JP6581519B2 (en) * | 2016-02-09 | 2019-09-25 | 日立建機株式会社 | Obstacle detection system for construction machinery |
US20180293735A1 (en) * | 2017-04-11 | 2018-10-11 | Sony Corporation | Optical flow and sensor input based background subtraction in video content |
EP3531337B1 (en) * | 2018-02-21 | 2022-03-16 | Honda Research Institute Europe GmbH | Optical flow based assistance for operation and coordination in dynamic environments |
CN112130136B (en) * | 2020-09-11 | 2024-04-12 | 中国重汽集团济南动力有限公司 | Comprehensive perception system and method for traffic targets |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3452268B2 (en) * | 1993-08-06 | 2003-09-29 | 矢崎総業株式会社 | Rear side monitoring method for vehicles |
JPH06203161A (en) * | 1993-01-05 | 1994-07-22 | Fujitsu Ltd | Extracting method for object from animation image and device therefor |
JP3239521B2 (en) * | 1993-03-30 | 2001-12-17 | トヨタ自動車株式会社 | Mobile object recognition device |
JP3463858B2 (en) * | 1998-08-27 | 2003-11-05 | 矢崎総業株式会社 | Perimeter monitoring device and method |
JP3580475B2 (en) * | 1998-09-14 | 2004-10-20 | 矢崎総業株式会社 | Perimeter monitoring device |
JP3515926B2 (en) * | 1999-06-23 | 2004-04-05 | 本田技研工業株式会社 | Vehicle periphery monitoring device |
US6535114B1 (en) * | 2000-03-22 | 2003-03-18 | Toyota Jidosha Kabushiki Kaisha | Method and apparatus for environment recognition |
JP4624594B2 (en) * | 2000-06-28 | 2011-02-02 | パナソニック株式会社 | Object recognition method and object recognition apparatus |
-
2003
- 2003-05-08 JP JP2003130008A patent/JP3776094B2/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10248222B2 (en) | 2016-08-01 | 2019-04-02 | Samsung Electronics Co., Ltd. | Method for processing event signal and event-based sensor performing the same |
Also Published As
Publication number | Publication date |
---|---|
JP2004056763A (en) | 2004-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3776094B2 (en) | Monitoring device, monitoring method and monitoring program | |
KR100909741B1 (en) | Monitoring device, monitoring method | |
KR102275310B1 (en) | Mtehod of detecting obstacle around vehicle | |
US6734787B2 (en) | Apparatus and method of recognizing vehicle travelling behind | |
JP4899424B2 (en) | Object detection device | |
US6993159B1 (en) | Driving support system | |
JP3904988B2 (en) | Image processing apparatus and method | |
WO2010032523A1 (en) | Device for detecting/judging road boundary | |
JP2007300181A (en) | Periphery monitoring apparatus and periphery monitoring method and program thereof | |
JP2008123462A (en) | Object detector | |
KR20150008056A (en) | Single-camera distance estimation | |
US20190362512A1 (en) | Method and Apparatus for Estimating a Range of a Moving Object | |
KR102031635B1 (en) | Collision warning device and method using heterogeneous cameras having overlapped capture area | |
JP2004257837A (en) | Stereo adapter imaging system | |
JP6699728B2 (en) | Inter-vehicle distance estimation method and inter-vehicle distance estimation device | |
JP4269862B2 (en) | On-vehicle moving body detection device | |
JP4106163B2 (en) | Obstacle detection apparatus and method | |
JP5472928B2 (en) | Object detection apparatus and method | |
JP3951734B2 (en) | Vehicle external recognition device | |
JP2002352249A (en) | Image processor and its method | |
JP7422704B2 (en) | Vehicle information processing device | |
CN215495425U (en) | Compound eye imaging system and vehicle using same | |
WO2023090170A1 (en) | Image processing device | |
WO2021145032A1 (en) | Nearby vehicle position estimation system, and nearby vehicle position estimation program | |
JP2019091327A (en) | Three-dimensional object detection device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050901 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051122 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060105 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060207 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060221 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3776094 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100303 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110303 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120303 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130303 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130303 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140303 Year of fee payment: 8 |
|
EXPY | Cancellation because of completion of term |