以下、本発明による物体認識統合装置および物体認識統合方法を、好適な実施の形態にしたがって図面を用いて説明する。なお、図面の説明においては、同一部分または相当部分には同一符号を付し、重複する説明を省略する。
実施の形態1.
図1は、本発明の実施の形態1における物体認識統合装置4を含む物体認識統合システムの構成を示すブロック図である。図1における物体認識統合システムは、第1のセンサ1、第2のセンサ2、車両情報センサ3、物体認識統合装置4および表示部5を備える。
第1のセンサ1および第2のセンサ2の各センサは、検出可能な検出範囲に存在する物体に関する情報を、1つ以上の検出データを含む物体データとして検出し、その物体データを物体認識統合装置4に送信する。
ここで、検出データには、例えば、物体までの距離、物体の方位角または物体の相対速度等の情報が含まれる。また、一般的に、各センサにおいて、検出範囲に1つの物体が存在する場合、物体データには1つの検出データが含まれ、検出範囲に複数の物体が存在する場合、物体データには複数の検出データが含まれる。
以下では、第1のセンサ1によって検出された物体データを第1の物体データと表記し、第2のセンサ2によって検出された物体データを第2の物体データと表記する。
第1のセンサ1および第2のセンサ2として、例えば、物体から放射された光または電磁波等の検出波を受信し、受信した検出波に対して信号処理または画像処理等の処理が行われることで、その物体に関する情報を検出するタイプのセンサを用いればよい。第1のセンサ1および第2のセンサ2として、物体に検出波を照射し、その物体から反射した検出波を受信し、受信した検出波に対して処理が行われることで、その物体に関する情報を検出するタイプのセンサを用いてもよい。具体的には、第1のセンサ1および第2のセンサ2として、例えば、ミリ波レーダ、レーザレーダ、超音波センサ、赤外線センサまたは光学カメラ等を用いることができる。
第1のセンサ1および第2のセンサ2の自車への搭載位置、および第1のセンサ1および第2のセンサ2の各センサの検出範囲は、既知であるものとする。また、第1のセンサ1および第2のセンサ2の自車への搭載位置等は任意に設定することができる。
ここで、本発明では、第1のセンサ1によって検出された第1の物体データと、第2のセンサ2によって検出された第2の物体データとを統合するので、第1のセンサ1の検出範囲と、第2のセンサ2の検出範囲において、共通する部分、すなわち、重複する部分が存在することが望ましい。また、第1のセンサ1および第2のセンサ2の一方のセンサによって検出することができない物体を、他方のセンサによって検出可能とするため、第1のセンサ1および第2のセンサ2は、互いに相異なるセンサ方式とすることが望ましい。
具体的には、例えば、第1のセンサ1としてミリ波レーダを用い、第2のセンサ2として光学カメラを用い、第1のセンサ1を自車の前方バンパー部中央に搭載し、第2のセンサ2を自車のルームミラー裏側に搭載し、自車の前方を両センサの共通の検出範囲とすることが考えられる。
車両情報センサ3は、自車に関する情報を自車データとして検出し、検出された自車データを物体認識統合装置4に送信する。なお、自車データには、例えば、自車の速度、車輪速、ステアリング角またはヨーレート等の情報が含まれる。
なお、GPS(Global Positioning System)を用いて、自車の緯度、経度または進行方向を、自車データとして検出するように、車両情報センサ3を構成してもよい。
物体認識統合装置4は、第1のセンサ1および第2のセンサ2のそれぞれから受信した物体データから物体の状態値を推定する。物体認識統合装置4は、時刻計測部41、データ受信部42、更新処理部43、外挿処理部44および予測処理部45を有する。なお、物体認識統合装置4は、例えば、メモリに記憶されたプログラムを実行するCPUと、システムLSI等の処理回路によって実現される。
時刻計測部41は、物体認識統合装置4の時刻を計測する。なお、時刻計測部41によって計測された時刻を共通時刻と呼ぶ。
データ受信部42は、第1のセンサ1から第1の物体データを受信し、第2のセンサ2から第2の物体データを受信し、車両情報センサ3から自車データを受信する。また、データ受信部42は、受信したデータごとに、時刻計測部41によって計測された共通時刻を関連時刻として関連付けたものを、観測データとして加工する。データ受信部42は、その観測データを更新処理部43に出力する。
なお、各データと関連付けられる関連時刻について、各データを受信した順に各データの関連時刻が並んでいれば、各データに関連する時刻としてどのような時刻を採用してもよい。例えば、データ受信部42による各データの受信時刻を各データに対応する関連時刻とすればよい。
具体的には、データ受信部42は、受信したデータごとに、時刻計測部41によって計測された共通時刻から受信時刻を確定する。データ受信部42は、受信した第1の物体データ、第2の物体データおよび自車データのそれぞれを、受信時刻と関連付けたものを、観測データとして加工し、その観測データを更新処理部43に出力する。
更新処理部43は、後述する予測処理部45から入力された予測データと、データ受信部42から入力された観測データとから、物体の状態値を更新することで、その更新結果を航跡データとして生成する。また、更新処理部43は、生成された航跡データを外挿処理部44および予測処理部45に出力する。
ここで、物体の状態値とは、第1のセンサ1または第2のセンサ2によって検出された物体の位置、速度、加速度または種別等の情報である。また、更新処理部43は、例えば、最小二乗法、カルマンフィルタまたは粒子フィルタ等を用いて、物体の状態値を更新する。
外挿処理部44は、更新処理部43から入力された航跡データを用いて、物体認識統合装置4の処理時刻での物体の状態値を予測し、その予測結果を出力データとして生成する。また、外挿処理部44は、生成された出力データを、例えば、表示部5に出力する。この場合、表示部5は、外挿処理部44から入力された出力データを表示する。
予測処理部45は、更新処理部43から入力された航跡データを用いて、観測データに含まれている受信時刻での物体の状態値を予測し、その予測結果を予測データとして生成する。また、予測処理部45は、生成された予測データを更新処理部43に出力する。
次に、本実施の形態1における物体認識統合装置4の動作について、図2を参照しながら説明する。図2は、本発明の実施の形態1における物体認識統合装置4の動作を示すフローチャートである。なお、図2のフローチャートの各ステップの処理内容を説明するにあたって、重複する内容は適宜省略する。
なお、物体認識統合装置4は、例えば、あらかじめ設定された設定周期で図2のフローチャートの処理を繰り返し実行する。また、図2のフローチャートの処理は、ある処理時刻tk、すなわち、今回の処理時刻tkでの物体認識統合装置4の動作を示している。以下では、今回の処理時刻tkの1つ前の前回の処理時刻をtk−1と表記する。
まず、ステップS101において、データ受信部42は、処理時刻tk−1から処理時刻tkまでの期間に第1のセンサ1から第1の物体データを受信したか否かを判定する。
ここで、データ受信部42は、処理時刻tk−1から処理時刻tkまでの期間において、第1のセンサ1から第1の物体データを受信していれば、時刻計測部41によって計測された共通時刻から、その第1の物体データを受信した時刻を受信時刻として確定する。以下では、処理時刻tk−1から処理時刻tkまでの期間における第1の物体データの受信時刻を受信時刻T1と表記する。また、データ受信部42は、その第1の物体データと、その受信時刻T1とを関連付けたものを、観測データとして生成していることとなる。
ステップS101において、データ受信部42は、処理時刻tk−1から処理時刻tkまでの期間に第1のセンサ1から第1の物体データを受信した場合には、ステップS102へと進み、第1の物体データを受信していない場合には、ステップS114へと進む。なお、データ受信部42は、第1のセンサ1から第1の物体データを受信したものの、その第1の物体データの中身が空、すなわち、すべて無効な検出データであった場合、ステップS114へ進むように構成してもよい。
ステップS102において、データ受信部42は、処理時刻tk−1から処理時刻tkまでの期間に第2のセンサ2から第2の物体データを受信したか否かを判定する。
ここで、データ受信部42は、処理時刻tk−1から処理時刻tkまでの期間において、第2のセンサ2から第2の物体データを受信していれば、時刻計測部41によって計測された共通時刻から、その第2の物体データを受信した時刻を受信時刻として確定する。以下では、処理時刻tk−1から処理時刻tkまでの期間における第2の物体データの受信時刻を受信時刻T2と表記する。また、データ受信部42は、その第2の物体データと、その受信時刻T2とを関連付けたものを、観測データとして生成していることとなる。
ステップS102において、データ受信部42は、処理時刻tk−1から処理時刻tkまでの期間に第2のセンサ2から第2の物体データを受信した場合には、ステップS103へと進み、第2の物体データを受信していない場合には、ステップS112へと進む。なお、データ受信部42は、第2のセンサ2から第2の物体データを受信したものの、その第2の物体データの中身が空、すなわち、すべて無効な検出データであった場合、ステップS112へ進むように構成してもよい。
なお、データ受信部42は、処理時刻tk−1から処理時刻tkまでの期間において、第1のセンサ1および第2のセンサ2の両方のセンサから物体データを受信するわけでなく、どちらか一方のセンサのみから物体データを受信する場合もあるし、両方のセンサから物体データを受信しない場合もある。また、受信時刻T1およびT2は、処理時刻tk−1よりも後であって、かつ処理時刻tkよりも前の時刻である。
また、例えば、第1のセンサ1および第2のセンサ2の間で内部時刻を同期させておき、各センサにおいて、物体データに加えて、その物体データが検出された検出時刻も併せてデータ受信部42に出力するように構成してもよい。この場合、データ受信部42は、時刻計測部41によって計測された共通時刻を用いずに、各センサから入力された検出時刻を各受信時刻として確定するように構成される。
ただし、第1のセンサ1および第2のセンサ2の間で常に内部時刻を同期させることができるとは限らない。そこで、データ受信部42は、時刻計測部41によって計測された共通時刻を用いて、各センサによって検出された物体データを受信した時刻を各受信時刻として確定するように構成されることが望ましい。また、データ受信部42による物体データの受信に時間がかかる場合には、データ受信部42は、その物体データの受信が完了した時刻を各受信時刻として確定するように構成されることが望ましい。
また、データ受信部42は、必要に応じて、処理時刻tk−1から処理時刻tkまでの期間において、車両情報センサ3から受信した自車データに基づいて、第1のセンサ1および第2のセンサ2の各センサから受信した物体データを補正する。
ステップS103において、データ受信部42は、受信時刻T1と受信時刻T2とを比較し、受信時刻T1が受信時刻T2の前の場合には、ステップS104へと進み、受信時刻T1が受信時刻T2の前でない場合には、ステップS108へと進む。
ステップS104において、予測処理部45は、受信時刻T1よりも1つ前の受信時刻の航跡データを用いて、受信時刻T1での物体の状態値を予測することで、その予測結果を受信時刻T1の予測データとして生成し、ステップS105へと進む。
このように、予測処理部45は、データ受信部42によって確定された受信時刻T1に対応する物体の状態値を、1つ前の受信時刻の航跡データから予測し、その予測結果を受信時刻T1の予測データとして生成する。
ステップS105において、更新処理部43は、予測処理部45によって生成された受信時刻T1の予測データと、データ受信部42によって受信された受信時刻T1の第1の物体データとから、受信時刻T1での物体の状態値を更新することで、その更新結果を受信時刻T1の航跡データとして生成し、ステップS106へと進む。
このように、更新処理部43は、予測処理部45によって生成された受信時刻T1の予測データと、その受信時刻T1の物体データとから、物体の状態値を更新し、その更新結果を受信時刻T1の航跡データとして生成する。
なお、受信時刻T1における予測データおよび第1の物体データから、受信時刻T1での物体の状態値を更新する手法としては、任意に規定することができ、どのような手法を採用してもかまわない。
また、更新処理部43は、第1の物体データに1つ以上の検出データが含まれる場合、例えば、以下のような手法によって、各物体の状態値を更新する。すなわち、更新処理部43は、各物体において、受信時刻T1の予測データを基準とする一定範囲内に、第1の物体データの検出データが1つ以上含まれる場合、その予測データに最も近い検出データを、その予測データに対して割り当てる。更新処理部43は、各物体において、予測データと、その予測データに対して割り当てられた検出データとから、状態値を更新する。
また、更新処理部43は、第1の物体データに含まれる検出データにおいて、どの物体についても、受信時刻T1の予測データを基準とする一定範囲内に含まれない検出データが存在する場合、その検出データを新たな物体のものと捉え、その検出データから新たな物体の状態値を生成する。
さらに、更新処理部43は、各物体において、受信時刻T1の予測データを基準とする一定範囲内に、第1の物体データの検出データが含まれない場合、その予測データに対して検出データを割り当てることができないので、その予測データを航跡データとする。
なお、上記の場合、更新処理部43は、予測データに対して検出データが割り当てられなかった回数を計測するカウンタをインクリメントしてもよい。この場合、更新処理部43は、予測データに対して検出データが割り当てられた場合、カウンタを0にリセットする。また、例えば、カウンタが設定値を超えたとすると、予測処理部45は、予測データを削除する。
ステップS106において、予測処理部45は、更新処理部43によって生成された受信時刻T1の航跡データを用いて、受信時刻T2での物体の状態値を予測することで、その予測結果を受信時刻T2の予測データとして生成し、ステップS107へと進む。
このように、予測処理部45は、データ受信部42によって確定された受信時刻T2に対応する物体の状態値を、1つ前の受信時刻T1の航跡データから予測し、その予測結果を受信時刻T2の予測データとして生成する。
ステップS107において、更新処理部43は、予測処理部45によって生成された受信時刻T2の予測データと、データ受信部42によって受信された受信時刻T2の第2の物体データとを用いて、受信時刻T2での物体の状態値を更新することで、その更新結果を受信時刻T2の航跡データとして生成し、ステップS117へと進む。
このように、更新処理部43は、予測処理部45によって生成された受信時刻T2の予測データと、その受信時刻T2の物体データとから、物体の状態値を更新し、その更新結果を受信時刻T2の航跡データとして生成する。
なお、上記と同様に、受信時刻T2における予測データおよび第2の物体データを用いて、受信時刻T2での物体の状態値を更新する手法としては、任意に規定することができ、どのような手法を採用してもかまわない。
以上から分かるように、ステップS104〜S107では、処理時刻tk−1から処理時刻tkまでの期間に受信した物体データごとに関連付けられた受信時刻T1、T2ごとに、時系列順、すなわち、受信時刻T1、T2の順で予測処理部45による動作と更新処理部43による動作とが行われている。
ステップS103の判定処理によってステップS108へと進んだ場合、ステップS108において、予測処理部45は、受信時刻T2よりも1つ前の受信時刻の航跡データを用いて、受信時刻T2での物体の状態値を予測することで、その予測結果を受信時刻T2の予測データとして生成し、ステップS109へと進む。
このように、予測処理部45は、データ受信部42によって確定された受信時刻T2に対応する物体の状態値を、1つ前の受信時刻の航跡データから予測し、その予測結果を受信時刻T2の予測データとして生成する。
ステップS109において、更新処理部43は、予測処理部45によって生成された受信時刻T2の予測データと、データ受信部42によって受信された受信時刻T2の第2の物体データとを用いて、受信時刻T2での物体の状態値を更新することで、その更新結果を受信時刻T2の航跡データとして生成し、ステップS110へと進む。
このように、更新処理部43は、予測処理部45によって生成された受信時刻T2の予測データと、その受信時刻T2の物体データとから、物体の状態値を更新し、その更新結果を受信時刻T2の航跡データとして生成する。
ステップS110において、予測処理部45は、更新処理部43によって生成された受信時刻T2の航跡データを用いて、受信時刻T1での物体の状態値を予測することで、その予測結果を受信時刻T1の予測データとして生成し、ステップS111へと進む。
このように、予測処理部45は、データ受信部42によって確定された受信時刻T1に対応する物体の状態値を、1つ前の受信時刻T2の航跡データから予測し、その予測結果を受信時刻T1の予測データとして生成する。
ステップS111において、更新処理部43は、予測処理部45によって生成された受信時刻T1の予測データと、データ受信部42によって受信された受信時刻T1の第1の物体データとを用いて、受信時刻T1での物体の状態値を更新することで、その更新結果を受信時刻T1の航跡データとして生成し、ステップS117へと進む。
このように、更新処理部43は、予測処理部45によって生成された受信時刻T1の予測データと、その受信時刻T1の物体データとから、物体の状態値を更新し、その更新結果を受信時刻T1の航跡データとして生成する。
以上から分かるように、ステップS108〜S111では、処理時刻tk−1から処理時刻tkまでの期間に受信した物体データごとに関連付けられた受信時刻T1、T2ごとに、時系列順、すなわち、受信時刻T2、T1の順で予測処理部45による動作と更新処理部43による動作とが行われている。
ステップS102の判定処理によってステップS112へと進んだ場合、ステップS112において、予測処理部45は、受信時刻T1よりも1つ前の受信時刻の航跡データを用いて、受信時刻T1での物体の状態値を予測することで、その予測結果を受信時刻T1の予測データとして生成し、ステップS113へと進む。
このように、予測処理部45は、データ受信部42によって確定された受信時刻T1に対応する物体の状態値を、1つ前の受信時刻の航跡データから予測し、その予測結果を受信時刻T1の予測データとして生成する。
ステップS113において、予測処理部45は、予測処理部45によって生成された受信時刻T1の予測データと、データ受信部42によって受信された受信時刻T1の第1の物体データとを用いて、受信時刻T1での物体の状態値を更新することで、その更新結果を受信時刻T1の航跡データとして生成し、ステップS117へと進む。
このように、更新処理部43は、予測処理部45によって生成された受信時刻T1の予測データと、その受信時刻T1の物体データとから、物体の状態値を更新し、その更新結果を受信時刻T1の航跡データとして生成する。
ステップS101の判定処理によってステップS114へと進んだ場合、ステップS114において、データ受信部42は、処理時刻tk−1から処理時刻tkまでの期間に第2のセンサ2から第2の物体データを受信したか否かを判定する。
ステップS114において、データ受信部42は、処理時刻tk−1から処理時刻tkまでの期間に第2のセンサ2から第2の物体データを受信した場合には、ステップS115へと進み、第2の物体データを受信していない場合には、ステップS117へと進む。
ステップS115において、予測処理部45は、受信時刻T2よりも1つ前の受信時刻の航跡データを用いて、受信時刻T2での物体の状態値を予測することで、その予測結果を受信時刻T2の予測データとして生成し、ステップS116へと進む。
このように、予測処理部45は、データ受信部42によって確定された受信時刻T2に対応する物体の状態値を、1つ前の受信時刻の航跡データから予測し、その予測結果を受信時刻T2の予測データとして生成する。
ステップS116において、更新処理部43は、予測処理部45によって生成された受信時刻T2の予測データと、データ受信部42によって受信された受信時刻T2の第2の物体データとを用いて、受信時刻T2での物体の状態値を更新することで、その更新結果を受信時刻T2の航跡データとして生成し、ステップS117へと進む。
このように、更新処理部43は、予測処理部45によって生成された受信時刻T2の予測データと、その受信時刻T2の物体データとから、物体の状態値を更新し、その更新結果を受信時刻T2の航跡データとして生成する。
以上から分かるように、ステップS117が実行される前の処理として、処理時刻tkにおいて、処理時刻tk−1から処理時刻tkまでの期間に受信した物体データごとに関連付けられた受信時刻ごとに、時系列順で予測処理部45による動作と更新処理部43による動作とが行われている。
前段ステップ、すなわち、ステップS107、S111、S113およびS116のいずれかが実行された後、ステップS117において、外挿処理部44は、前段ステップの処理で生成された航跡データを用いて、処理時刻tkでの物体の状態値を予測することで、その予測結果を処理時刻tkの出力データとして生成し、一連の処理を終了する。
このように、外挿処理部44は、処理時刻tkで最後に行われた、予測処理部45による動作と更新処理部43による動作とによって生成された航跡データから、処理時刻tkでの物体の状態値を予測し、その予測結果を処理時刻tkの出力データとして生成する。
なお、ステップS114が実行された後、ステップS117が実行される場合、ステップS117において、外挿処理部44は、以下の処理を行う。すなわち、ステップS117において、外挿処理部44は、処理時刻tk−1に最も近い受信時刻の航跡データを用いて、処理時刻tkでの物体の状態値を予測することで、その予測結果を処理時刻tkの出力データとして生成し、一連の処理を終了する。
このように、外挿処理部44は、処理時刻tk−1から処理時刻tkまでの期間にデータ受信部42によって物体データが受信されなかったとき、処理時刻tk−1よりも早い受信時刻の航跡データから、処理時刻tkでの物体の状態値を予測し、その予測結果を処理時刻tkの出力データとして生成する。
次に、本実施の形態1における物体認識統合装置4の動作について、図3を参照しながらさらに説明する。図3は、本発明の実施の形態1における物体認識統合装置4の動作の一例を説明するためのタイムチャートである。
なお、図3において、点線矢印は、第1のセンサ1から受信した第1の物体データを示し、破線矢印は、第2のセンサ2から受信した第2の物体データを示す。また、各矢印で示される物体データの中身は、空でないものとする。
また、図3から分かるように、第1のセンサ1の出力である第1の物体データの受信タイミングと、第2のセンサ2の出力である第2の物体データの受信タイミングとは、非同期である。
第1に、処理時刻t1から処理時刻t2までの期間において、データ受信部42は、受信時刻T1(1)に第1のセンサ1から第1の物体データを受信し、受信時刻T1(1)よりも後の受信時刻T2(1)に第2のセンサ2から第2の物体データを受信したと想定する。
この場合、処理時刻t2において、予測処理部45は、受信時刻T1(1)よりも1つ前の受信時刻の航跡データを用いて、受信時刻T1(1)での物体の状態値を予測することで、その予測結果を受信時刻T1(1)の予測データとして生成する。
続いて、更新処理部43は、受信時刻T1(1)の予測データと、受信時刻T1(1)の第1の物体データとを用いて、受信時刻T1(1)での物体の状態値を更新することで、その更新結果を受信時刻T1(1)の航跡データとして生成する。
続いて、予測処理部45は、受信時刻T1(1)の航跡データを用いて、受信時刻T2(1)での物体の状態値を予測することで、その予測結果を受信時刻T2(1)の予測データとして生成する。
続いて、更新処理部43は、受信時刻T2(1)の予測データと、受信時刻T2(1)の第2の物体データとを用いて、受信時刻T2(1)での物体の状態値を更新することで、その更新結果を受信時刻T2(1)の航跡データとして生成する。
続いて、外挿処理部44は、受信時刻T2(1)の航跡データを用いて、処理時刻t2での物体の状態値を予測することで、その予測結果を処理時刻t2の出力データとして生成する。
上記から分かるように、処理時刻t2では、先の図2のフローチャートにおいて、ステップS101→S102→S103→S104→S105→S106→S107→S117の順に処理が実行されることとなる。
第2に、処理時刻t2から処理時刻t3までの期間において、データ受信部42は、受信時刻T1(2)に第1のセンサ1から第1の物体データを受信したと想定する。
この場合、処理時刻t3において、予測処理部45は、受信時刻T1(2)よりも1つ前の受信時刻T2(1)の航跡データを用いて、受信時刻T1(2)での物体の状態値を予測することで、その予測結果を受信時刻T1(2)の予測データとして生成する。
続いて、更新処理部43は、受信時刻T1(2)の予測データと、受信時刻T1(2)の第1の物体データとを用いて、受信時刻T1(2)での物体の状態値を更新することで、その更新結果を受信時刻T1(2)の航跡データとして生成する。
続いて、外挿処理部44は、受信時刻T1(2)の航跡データを用いて、処理時刻t3での物体の状態値を予測することで、その予測結果を処理時刻t3の出力データとして生成する。
上記から分かるように、処理時刻t3では、先の図2のフローチャートにおいて、ステップS101→S102→S112→S113→S117の順に処理が実行されることとなる。
第3に、処理時刻t3から処理時刻t4までの期間において、データ受信部42は、受信時刻T2(2)に第2のセンサ2から第2の物体データを受信し、受信時刻T2(2)よりも後の受信時刻T1(3)に第1のセンサ1から第1の物体データを受信したと想定する。
この場合、処理時刻t4において、予測処理部45は、受信時刻T2(2)よりも1つ前の受信時刻T1(2)の航跡データを用いて、受信時刻T2(2)での物体の状態値を予測することで、その予測結果を受信時刻T2(2)の予測データとして生成する。
続いて、更新処理部43は、受信時刻T2(2)の予測データと、受信時刻T2(2)の第2の物体データとを用いて、受信時刻T2(2)での物体の状態値を更新することで、その更新結果を受信時刻T2(2)の航跡データとして生成する。
続いて、予測処理部45は、受信時刻T2(2)の航跡データを用いて、受信時刻T1(3)での物体の状態値を予測することで、その予測結果を受信時刻T1(3)の予測データとして生成する。
続いて、更新処理部43は、受信時刻T1(3)の予測データと、受信時刻T1(3)の第1の物体データとを用いて、受信時刻T1(3)での物体の状態値を更新することで、その更新結果を受信時刻T1(3)の航跡データとして生成する。
続いて、外挿処理部44は、受信時刻T1(3)の航跡データを用いて、処理時刻t4での物体の状態値を予測することで、その予測結果を処理時刻t4の出力データとして生成する。
上記から分かるように、処理時刻t4では、先の図2のフローチャートにおいて、ステップS101→S102→S103→S108→S109→S110→S111→S117の順に処理が実行されることとなる。
第4に、処理時刻t4から処理時刻t5までの期間において、データ受信部42は、第1のセンサ1および第2のセンサ2のいずれからも物体データを受信していないと想定する。
この場合、処理時刻t5において、外挿処理部44は、処理時刻t4に最も近い受信時刻T1(3)の航跡データを用いて、処理時刻t5での物体の状態値を予測することで、その予測結果を処理時刻t5の出力データとして生成する。
上記から分かるように、処理時刻t5では、先の図2のフローチャートにおいて、ステップS101→S114→S117の順に処理が実行されることとなる。
第5に、処理時刻t5から処理時刻t6までの期間において、データ受信部42は、受信時刻T2(3)に第2のセンサ2から第2の物体データを受信し、受信時刻T2(3)よりも後の受信時刻T1(4)に第1のセンサ1から第1の物体データを受信したと想定する。
この場合、処理時刻t6において、予測処理部45は、受信時刻T2(3)よりも1つ前の受信時刻T1(3)の航跡データを用いて、受信時刻T2(3)での物体の状態値を予測することで、その予測結果を受信時刻T2(3)の予測データとして生成する。
続いて、更新処理部43は、受信時刻T2(3)の予測データと、受信時刻T2(3)の第2の物体データとを用いて、受信時刻T2(3)での物体の状態値を更新することで、その更新結果を受信時刻T2(3)の航跡データとして生成する。
続いて、予測処理部45は、受信時刻T2(3)の航跡データを用いて、受信時刻T1(4)での物体の状態値を予測することで、その予測結果を受信時刻T1(4)の予測データとして生成する。
続いて、更新処理部43は、受信時刻T1(4)の予測データと、受信時刻T1(4)の第1の物体データとを用いて、受信時刻T1(4)での物体の状態値を更新することで、その更新結果を受信時刻T1(4)の航跡データとして生成する。
続いて、外挿処理部44は、受信時刻T1(4)の航跡データを用いて、処理時刻t6での物体の状態値を予測することで、その予測結果を処理時刻t6の出力データとして生成する。
上記から分かるように、処理時刻t6では、先の図2のフローチャートにおいて、ステップS101→S102→S103→S108→S109→S110→S111→S117の順に処理が実行されることとなる。
なお、本実施の形態1では、処理時刻tkにおいて、処理時刻tk−1から処理時刻tkまでの期間に受信した物体データごとに関連付けられた受信時刻ごとに、時系列順で予測処理部45による動作と更新処理部43による動作とが行われる場合を例示したが、これに限定されない。
すなわち、処理時刻tkにおいて、処理時刻tk−1から処理時刻tkまでの期間に受信した物体データごとに関連付けられた受信時刻ごとに、予測処理部45による動作と更新処理部43による動作とが行われるのであれば、これらの動作が行われる順序は、時系列順でなく、どのような順序であってもよい。具体的には、例えば、あらかじめ定められた順序として、各物体データの受信時刻の時系列によらず、常に、第1の物体データの受信時刻、次いで第2の物体データの受信時刻の順序で、予測処理部45による動作と更新処理部43による動作とが行われるように構成してもよい。
また、本実施の形態1では、物体データを検出するセンサの個数が2個の場合を例示したが、3個以上の場合であっても、本願発明を適用可能である。
以上、本実施の形態1によれば、複数のセンサのそれぞれから物体データを受信し、受信した物体データごとに、時刻計測部によって計測された時刻を関連時刻として関連付けるデータ受信部と、データ受信部によって関連付けられた関連時刻に対応する物体の状態値を、1つ前の関連時刻の航跡データから予測し、予測結果を予測データとして生成する予測処理部と、予測処理部によって生成された予測データと、関連時刻に対応する物体データとから、状態値を更新し、更新結果を航跡データとして生成する更新処理部と、処理時刻ごとに状態値を予測し、予測結果を出力データとして生成する外挿処理部とを備えて構成されている。
また、今回の処理時刻において、1つ前の前回の処理時刻から今回の処理時刻までの期間に受信された物体データごとに関連付けられた関連時刻ごとに、予測処理部による動作と更新処理部による動作とが行われ、外挿処理部は、今回の処理時刻で最後に行われた、予測処理部による動作と更新処理部による動作とによって生成された航跡データから、今回の処理時刻での状態値を予測するよう構成されている。
これにより、複数のセンサの出力の受信タイミングに関わらず、物体の現在の状態を推定することができる。
なお、本実施の形態1では、今回の処理時刻において、前回の処理時刻から今回の処理時刻までの期間に受信された物体データごとに関連付けられた関連時刻ごとに、時系列順で予測処理部による動作と更新処理部による動作とが行われる場合を例示している。
また、本実施の形態1では、データ受信部は、物体データを受信し、受信した物体データごとに、時刻計測部によって計測された時刻から受信時刻を確定し、確定された受信時刻を関連時刻として関連付けるよう構成されている場合を例示している。
実施の形態2.
本発明の実施の形態2では、先の実施の形態1に対して、第1のセンサ1および第2のセンサの各センサによって物体データが検出された検出時刻と、その物体データがデータ受信部42によって受信された受信時刻との間の遅れ時間を考慮する場合を説明する。なお、本実施の形態2では、先の実施の形態1と同様である点の説明を省略し、先の実施の形態1と異なる点を中心に説明する。
ここで、検出時刻と受信時刻との間には、例えば、各センサの信号処理時間および画像処理時間と、各センサとデータ受信部42との間のデータ送受信時間等による遅れ時間が存在する。そこで、本実施の形態2における物体認識統合装置4は、受信時刻に対して遅れ時間を減算することで検出時刻を算出し、その受信時刻の代わりに、その算出された検出時刻を踏まえて、各処理時刻の出力データを生成する。なお、遅れ時間は、センサ方式等によって値が異なり、ここでは、第1のセンサ1と第2のセンサ2とで遅れ時間が異なるものとする。
次に、本実施の形態2における物体認識統合装置4の動作について、図4のフローチャートを参照しながら説明する。図4は、本発明の実施の形態2における物体認識統合装置4の動作を示すフローチャートである。なお、図4のフローチャートは、先の図2のフローチャートに対して、受信時刻T1およびT2が検出時刻T’1およびT’2に置き換わるとともに、さらにステップS118を備えている。
まず、ステップS118において、データ受信部42は、すでに確定されている処理時刻tk−1から処理時刻tkまでの期間における受信時刻から遅れ時間を減算した検出時刻を確定し、ステップS101へと進む。受信時刻T1から遅れ時間が減算された検出時刻を検出時刻T’1と表記し、受信時刻T2から遅れ時間が減算された検出時刻を検出時刻T’2と表記する。なお、処理時刻tk−1から処理時刻tkまでの期間における受信時刻が存在しなければ、ステップS118において、データ受信部42は、検出時刻を確定しない。
ここで、上記のとおり、受信時刻T1およびT2のそれぞれから減算する遅れ時間は、センサ方式等によって異なる。したがって、検出時刻T’1およびT’2は、処理時刻tkよりも早いが、1つ前の処理時刻tk−1よりも遅いとは限らない。また、検出時刻T’1およびT’2の前後関係は、受信時刻T1およびT2の前後関係を保存するとは限らない。さらに、遅れ時間によっては、例えば、処理時刻tk−1から処理時刻tkまでの期間に受信した第1の物体データの検出時刻T’1よりも、処理時刻tkから1つ後の処理時刻tk+1までの期間に受信した第2の物体データの検出時刻T’2の方が早くなることがある。
また、本実施の形態2における物体認識統合装置4は、ステップS118を実行した後、先の図2のフローチャートの各ステップと同様の処理を行い、一連の処理を終了する。
次に、本実施の形態2における物体認識統合装置4の動作について、図5を参照しながらさらに説明する。図5は、本発明の実施の形態2における物体認識統合装置4の動作の一例を説明するためのタイムチャートである。なお、図5に示す各受信時刻は、先の図3に示す各受信時刻と同様である。
第1に、処理時刻t1から処理時刻t2までの期間において、データ受信部42は、受信時刻T1(1)に第1のセンサ1から第1の物体データを受信し、受信時刻T1(1)よりも後の受信時刻T2(1)に第2のセンサ2から第2の物体データを受信したと想定する。
この場合、処理時刻t2において、データ受信部42は、受信時刻T1(1)から第1のセンサ1に対応する第1の遅れ時間を減算することで、検出時刻T’1(1)を確定するとともに、受信時刻T2(1)から第2のセンサ2に対応する第2の遅れ時間を減算することで、検出時刻T’2(1)を確定する。なお、ここでは、各検出時刻の前後関係は、各受信時刻の前後関係とは異なり、検出時刻T’1(1)は、検出時刻T’2(1)の後であるものとする。
続いて、予測処理部45は、検出時刻T’2(1)よりも1つ前の検出時刻の航跡データを用いて、検出時刻T’2(1)での物体の状態値を予測することで、その予測結果を検出時刻T’2(1)の予測データとして生成する。
続いて、更新処理部43は、検出時刻T’2(1)の予測データと、検出時刻T’2(1)の第2の物体データとを用いて、検出時刻T’2(1)での物体の状態値を更新することで、その更新結果を検出時刻T’2(1)の航跡データとして生成する。
続いて、予測処理部45は、検出時刻T’2(1)の航跡データを用いて、検出時刻T’1(1)での物体の状態値を予測することで、その予測結果を検出時刻T’1(1)の予測データとして生成する。
続いて、更新処理部43は、検出時刻T’1(1)の予測データと、検出時刻T’1(1)の第1の物体データとを用いて、検出時刻T’1(1)での物体の状態値を更新することで、その更新結果を検出時刻T’1(1)の航跡データとして生成する。
続いて、外挿処理部44は、検出時刻T’1(1)の航跡データを用いて、処理時刻t2での物体の状態値を予測することで、その予測結果を処理時刻t2の出力データとして生成する。
上記から分かるように、処理時刻t2では、先の図4のフローチャートにおいて、ステップS118→S101→S102→S103→S108→S109→S110→S111→S117の順に処理が実行されることとなる。
第2に、処理時刻t2から処理時刻t3までの期間において、データ受信部42は、受信時刻T1(2)に第1のセンサ1から第1の物体データを受信したと想定する。
この場合、処理時刻t3において、データ受信部42は、受信時刻T1(2)から第1の遅れ時間を減算することで、検出時刻T’1(2)を確定する。
続いて、予測処理部45は、検出時刻T’1(2)よりも1つ前の検出時刻T’1(1)の航跡データを用いて、検出時刻T’1(2)での物体の状態値を予測することで、その予測結果を検出時刻T’1(2)の予測データとして生成する。
続いて、更新処理部43は、検出時刻T’1(2)の予測データと、検出時刻T’1(2)の第1の物体データとを用いて、検出時刻T’1(2)での物体の状態値を更新することで、その更新結果を検出時刻T’1(2)の航跡データとして生成する。
続いて、外挿処理部44は、検出時刻T’1(2)の航跡データを用いて、処理時刻t3での物体の状態値を予測することで、その予測結果を処理時刻t3の出力データとして生成する。
上記から分かるように、処理時刻t3では、先の図4のフローチャートにおいて、ステップS118→S101→S102→S112→S113→S117の順に処理が実行されることとなる。
第3に、処理時刻t3から処理時刻t4までの期間において、データ受信部42は、受信時刻T2(2)に第2のセンサ2から第2の物体データを受信し、受信時刻T2(2)よりも後の受信時刻T1(3)に第1のセンサ1から第1の物体データを受信したと想定する。
この場合、処理時刻t4において、データ受信部42は、受信時刻T2(2)から第2の遅れ時間を減算することで、検出時刻T’2(2)を確定するとともに、受信時刻T1(3)から第1の遅れ時間を減算することで、検出時刻T’1(3)を確定する。
続いて、予測処理部45は、検出時刻T’2(2)よりも1つ前の検出時刻T’1(2)の航跡データを用いて、検出時刻T’2(2)での物体の状態値を予測することで、その予測結果を検出時刻T’2(2)の予測データとして生成する。
続いて、更新処理部43は、検出時刻T’2(2)の予測データと、検出時刻T’2(2)の第2の物体データとを用いて、検出時刻T’2(2)での物体の状態値を更新することで、その更新結果を検出時刻T’2(2)の航跡データとして生成する。
続いて、予測処理部45は、検出時刻T’2(2)の航跡データを用いて、検出時刻T’1(3)での物体の状態値を予測することで、その予測結果を検出時刻T’1(3)の予測データとして生成する。
続いて、更新処理部43は、検出時刻T’1(3)の予測データと、検出時刻T’1(3)の第1の物体データとを用いて、検出時刻T’1(3)での物体の状態値を更新することで、その更新結果を検出時刻T’1(3)の航跡データとして生成する。
続いて、外挿処理部44は、検出時刻T’1(3)の航跡データを用いて、処理時刻t4での物体の状態値を予測することで、その予測結果を処理時刻t4の出力データとして生成する。
上記から分かるように、処理時刻t4では、先の図4のフローチャートにおいて、ステップS118→S101→S102→S103→S108→S109→S110→S111→S117の順に処理が実行されることとなる。
第4に、処理時刻t4から処理時刻t5までの期間において、データ受信部42は、第1のセンサ1および第2のセンサ2のいずれからも物体データを受信していないと想定する。
この場合、処理時刻t5において、外挿処理部44は、処理時刻t4に最も近い検出時刻T’1(3)の航跡データを用いて、処理時刻t5での物体の状態値を予測することで、その予測結果を処理時刻t5の出力データとして生成する。
上記から分かるように、処理時刻t5では、先の図4のフローチャートにおいて、ステップS118→S101→S114→S117の順に処理が実行されることとなる。
第5に、処理時刻t5から処理時刻t6までの期間において、データ受信部42は、受信時刻T2(3)に第2のセンサ2から第2の物体データを受信し、受信時刻T2(3)よりも後の受信時刻T1(4)に第1のセンサ1から第1の物体データを受信したと想定する。
この場合、処理時刻t6において、データ受信部42は、受信時刻T2(3)から第2の遅れ時間を減算することで、検出時刻T’2(3)を確定するとともに、受信時刻T1(4)から第1の遅れ時間を減算することで、検出時刻T’1(4)を確定する。
続いて、予測処理部45は、検出時刻T’2(3)よりも1つ前の検出時刻T’1(3)の航跡データを用いて、検出時刻T’2(3)での物体の状態値を予測することで、その予測結果を検出時刻T’2(3)の予測データとして生成する。
続いて、更新処理部43は、検出時刻T’2(3)の予測データと、検出時刻T’2(3)の第2の物体データとを用いて、検出時刻T’2(3)での物体の状態値を更新することで、その更新結果を検出時刻T’2(3)の航跡データとして生成する。
続いて、予測処理部45は、検出時刻T’2(3)の航跡データを用いて、検出時刻T’1(4)での物体の状態値を予測することで、その予測結果を検出時刻T’1(4)の予測データとして生成する。
続いて、更新処理部43は、検出時刻T’1(4)の予測データと、検出時刻T’1(4)の第1の物体データとを用いて、検出時刻T’1(4)での物体の状態値を更新することで、その更新結果を検出時刻T’1(4)の航跡データとして生成する。
続いて、外挿処理部44は、検出時刻T’1(4)の航跡データを用いて、処理時刻t6での物体の状態値を予測することで、その予測結果を処理時刻t6の出力データとして生成する。
上記から分かるように、処理時刻t6では、先の図4のフローチャートにおいて、ステップS118→S101→S102→S103→S108→S109→S110→S111→S117の順に処理が実行されることとなる。
なお、本実施の形態2では、データ受信部42によって算出された検出時刻の時系列順に、更新処理部43によって各検出時刻での物体の航跡データが生成されるよう構成する場合を説明したが、単純に、遅れ時間は考慮しながら、受信時刻の時系列順に、更新処理部43によって各検出時刻での物体の航跡データが生成されるよう構成する場合も考えられる。
しかしながら、受信時刻の時系列順に、各検出時刻での物体の航跡データが生成されるよう構成される場合、遅れ時間の値によっては、最も古い検出時刻での物体の航跡データが最後に生成される可能性がある。この場合、外挿処理部44は、処理時刻での状態値を予測する際において、その最も古い検出時刻からその処理時刻まで遷移する外挿時間が、他の検出時刻での航跡データが最後に生成されるときと比較して、長くなる。その結果、外挿時間が長くなることで物体の状態の推定精度が劣化する。したがって、本実施の形態2で説明したように、検出時刻の時系列順に、更新処理部43によって各検出時刻での物体の航跡データが生成されるよう構成することが望ましい。
以上、本実施の形態2によれば、先の実施の形態1の構成に対して、データ受信部は、物体データを受信し、受信した物体データごとに、時刻計測部によって計測された時刻から受信時刻を確定し、確定された受信時刻から遅れ時間を減算した検出時刻をさらに確定し、確定された検出時刻を関連時刻として関連付けるよう構成される。
これにより、複数のセンサの出力の受信タイミングに関わらず、さらには、遅れ時間が存在する場合であっても、物体の現在の状態を推定することができる。