以下、実施形態について、図面を参照しながら詳細に説明する。
図1は、実施形態にかかる車両検知装置が使用されるシステムの例を示す図である。以下の説明では、車線1〜3の各々を走行する車両を、車両検知装置20が検知するものとする。以下の説明では、車両の進行方向の左手側ほど小さい数となるように、各車線に車線番号を付すものとするが、車線の番号は任意に決定することができる。
レーダ11〜13は、車線1〜3に位置する対象物を検知するレーダである。ここで、用いられるレーダは、車線の進行方向と垂直の方向に対する位置分解能を備えておらず、検知範囲が複数の車線にまたがっている任意のレーダやセンサとすることができる。以下の説明では、レーダ11〜13は、ミリ波レーダであるものとする。以下の説明では、いずれのレーダも設置位置から42〜122メートルに位置する対象物を検知するものとする。さらに、いずれのレーダも、設置位置から60〜120メートルの範囲では、レーダが設置されている車線に隣接する車線をそのレーダの覆域4(4a〜4c)に含むものとする。ここで、覆域4aはレーダ11、覆域4bはレーダ12、覆域4cはレーダ13の覆域であるとする。また、以下の説明では、レーダ11〜13の車線の進行方向に対する設置位置は、いずれもほぼ同じであるとする。レーダ11〜13は、例えば、100msごとなどの一定の時間ごとに、覆域4に含まれている対象物を観測して、観測結果を車両検知装置20に出力する。なお、レーダ11〜13が対象物を観測する時間間隔は、任意である。
以下の説明では、レーダ11〜13の各々で検知された物体を対象物と記載することがある。従って、例えば、レーダ11が車両Aを検知した場合、車両Aに対応する対象物Aを検知したと表記することがある。また、レーダ11が車線2を走行している車両Cを検知した場合、レーダ11は、車両Cに対応する対象物Cdを検知していると表現する。ここで、走行している車線以外の車線に供えられたレーダに検知された車両は、車両を示すアルファベットに小文字のdをつけて、「Cd」のように示すものとする。一方、車線1〜3のいずれかを走行している実在する車両、もしくは、走行している車線が判定された車両は、車両Aのように、車両として表記する。
図1(a)は時刻t0での車両の走行状態の例を表す。以下の説明では、時刻t0の次にレーダ11〜13は、時刻t1に対象物を観測するものとする。図1(b)は時刻t1での車両の走行状態の例を表す。時刻t0では、車両A〜Eの5台の車両が走行しており、車両A〜Dの4台がレーダ11〜13の検知範囲に入っているものとする。ここで、Ad、Bd、Cdはいずれも、走行している車線の隣の車線に設置されたレーダによって検知された対象物を示す。次に、時刻t1で、車両Aはレーダ11〜13の検知範囲を抜けて、車両Eがレーダ11〜13の検知範囲に入ってきたものとする。以下の説明では、まず、時刻t0にレーダ11〜13で検知された情報を処理する場合を例として、車両検知装置20の動作について説明し、時刻t1の情報を処理する場合については後述する。
<第1の実施形態>
図2は、車両検知装置20の構成の一例を説明する図である。車両検知装置20は、通信部31(31a〜31c)、メモリ32、検知部33(33a〜33c)、制御部40、および、送信部34を備える。制御部40は、取得部41、統合部42、対象抽出部51、距離観測レーダ特定部53、判定部56、および、出力部43を備える。
車両検知装置20は、レーダ11〜13と接続されており、これらのレーダで計測されたデータを取得する。レーダ11〜13は、各々の覆域に含まれた対象物の位置などを車両検知装置20に通知する。車両検知装置20は、レーダ11〜13からデータを取得すると、設置位置テーブルを参照して、取得したデータを通信部31a〜31cに入力する。以下の説明では、設置位置テーブルはメモリ32に格納されているものとする。なお、メモリ32は、設置位置テーブルの他、後述する入力テーブルなどの車両検知装置20で用いられる任意のテーブルやデータ等を記憶することができる。
図3は、設置位置テーブルの一例を示す図である。図3の例では、車両検知装置20のポート番号、レーダの番号、および車線番号が対応付けて記録されている。なお、図3に示すテーブルは設置位置テーブルの例であり、設置位置テーブルに含まれる情報は、実装に応じて任意に変更することができる。車両検知装置20にデータが入力されると、車両検知装置20はデータが入力されたポートの番号を確認する。ポート番号が設置位置テーブルに記録されている場合、車両検知装置20は、レーダからの入力であると判断して、通信部31に入力されたデータを出力する。例えば、データが38811番のポートから入力された場合、車両検知装置20は、入力されたデータを通信部31aに出力するものとする。同様に、車両検知装置20は、38812番のポートから入力されたデータを通信部31bに、38813番のポートから入力されたデータを通信部31cに出力する。
通信部31a〜31cは、車両検知装置20から入力されたデータを検知部33a〜33cに出力する。検知部33は、通信部31a〜31cから、対象物の移動速度などのデータを受け取り、受け取ったデータに対してノイズ除去、背景処理、追跡処理等を行う。検知部33は、追跡処理で対象物の移動速度など基づいて対象物IDを付すことにより、レーダ11で計測されたデータに基づいて検知データテーブルを生成する。検知データテーブルの例や使用方法については後述する。なお、検知部33a〜33cは、ノイズ除去、背景処理、追跡処理等の処理のための任意の方法を用いることができる。
取得部41は、検知部33a〜33cから検知データテーブルを取得する。なお、検知部33a〜33cは、検知データテーブルをメモリ32に格納して、その旨を取得部41に通知することもできる。対象抽出部51は、レーダに探知された複数の対象物のうち1台の車両である可能性がある対象物の組み合わせを抽出する。前述のとおり、設置位置から60〜120メートルの範囲では、レーダが設置されている車線に隣接する車線を走行する車両がそのレーダの覆域4に含まれる。そこで、対象抽出部51は、設置位置テーブルを参照して、第1の車線と第1の車線に隣接する第2の車線を特定し、第1および第2の車線で検出された対象物のうち検出位置が近い2つの対象物は、1台の車両である可能性があると判断する。対象抽出部51は、抽出した組み合わせを距離観測レーダ特定部53と判定部56に出力する。対象抽出部51の動作については後で詳しく説明する。
距離観測レーダ特定部53は、各レーダの検知結果の履歴を比較することにより、対象抽出部51に抽出された対象物のいずれかをレーダに最も近い位置で検知したレーダを特定する。距離観測レーダ特定部53は、特定した結果を判定部56に通知する。距離観測レーダ特定部53の動作については後で詳しく説明する。
あるレーダが設置されている車線を走行している車両の検知開始位置は、そのレーダが設置されている車線に隣接した車線を走行している車両の検知開始位置よりも、そのレーダに近い位置になる。図1(a)の例では、レーダ11はレーダ11から42メートルで車線1を走行する車両を検知できるが、車線2を走行する車両はレーダ11から61.5メートル以降でなければ検知できない。そこで、判定部56は、距離観測レーダ特定部53が特定したレーダが設置されている車線を車両が走行していると判定する。対象抽出部51が抽出した組み合わせは、判定部56を含む制御部40の動作については、後で詳しく述べる。
判定部56は、判定結果を統合部42に出力する。統合部42は、判定部56の判定結果に従って、対象物のデータを統合する。統合部42は、統合したデータを出力部43に出力する。出力部43は、入力された結果を送信部34に出力する。送信部34は、出力部43から入力された結果を、車両検知装置20と通信する上位装置60に送信する。上位装置60は、光ビーコンなどを用いて、後続する車両に車両の走行状態を通知する。
このような車両検知装置20を用いることにより、レーダの覆域4が複数の車線にまたがっていて、さらに、レーダが車線の進行方向と垂直な方向の分解能を有さない場合でも、レーダで検出された対象物が走行する車線を特定することができる。
以下、図1(a)の場合の制御部40の処理を詳しく説明する。
図4は、検知部33a〜33cで生成された検知データテーブルの例を示す図である。検知部33aは、通信部31aから入力されたデータを用いて、図4(a)の検知データテーブルを生成する。同様に、検知部33b、33cは、通信部31b、31cから入力されたデータを検知部33aと同様に処理し、図4(b)、図4(c)に示す検知データテーブルを生成する。検知部33a〜33cで生成された検知データテーブルは、取得部41に出力される。
図4に示す検知データテーブルには、観測時刻、対象物の識別子、対象物の検知位置とその対象物を検知したレーダの間の距離、対象物の移動速度、対象物からレーダが受信した受信電力などが含まれる。なお、以下の説明では、対象物が検知された位置とその対象物を検知したレーダの間の距離を「検知距離」と記載することがある。また、以下の説明では、検知データテーブルに含まれている対象物ごとのデータの各々を「検知データ」と記載することがある。
図1(a)に示すように、レーダ11の検知範囲には車両AとBが含まれているので、レーダ11は対象物Aと対象物Bを検知する。さらに、レーダ11の設置位置から60m地点以降では、車線1と車線2がレーダ11の覆域4aに含まれている。従って、レーダ11は、車線2を走行している車両Cに対応する対象物Cdも検知する。なお、図4(a)〜図4(c)のテーブルに含まれている行の左側に記載されている対象物を示すアルファベットは、理解を助けるために示すものであり、検知データテーブルには含まれない。
レーダ12の検知範囲には、車両Cが含まれている。さらに、レーダ12の覆域4bは、設置位置から60m以降では車線1と車線3もふくむ。そこで、レーダ12は、車線1を走行している車両AとBに対応する対象物Adと対象物Bdも検知する。レーダ12は、車線3を走行している車両Dも覆域4bに含んでいるので車両Dから反射された反射波も受信している。しかし、図1(a)の例では、車両Dと車両Cは並走しているため、レーダ12は、車両Cと車両Dを区別することができず、車両Cと車両Dを合わせて1つの対象物を検知する。従って、車両Cと車両Dのように車両が併走している場合には、レーダは、そのレーダが設置されている車線を走行している車両を検知するものとする。例えば、図4(b)の3行目のデータは、車両Cに対応する対象物Cのデータとする。このように、レーダ12の観測結果に基づいて、図4(b)に示すように、対象物C、対象物Ad、対象物Bdに関する検知データが生成される。
レーダ13は、車線3を走行している車両Dを覆域4cに含む。車両Cと車両Dは併走しているので、前述のとおり、レーダ13は、車両Dに対応する対象物Dを検知する。なお、図4(a)〜図4(c)は検知データテーブルの例であって、検知データテーブルに含まれる情報は、実装に応じて任意に変更することができる。例えば、検知部33a〜33cは、対象物の移動速度と受信強度を含まない検知データテーブルを取得部41に出力してもよい。
次に、取得部41の動作を説明する。取得部41は、検知部33a〜33cから取得した検知データテーブルに基づいて、時刻t0での入力テーブルを生成する。図5は、入力テーブルの一例を示す図である。この例では、入力テーブルの1〜3行目のデータは図4(a)の検知データテーブルに対応する。また、入力テーブルの4〜6行目のデータは図4(b)の検知データテーブル、入力テーブルの7行目のデータは図4(c)の検知データテーブルに対応する。なお、入力テーブル中のデータと検知データの対応を見やすくするために、入力テーブルの左側に対象物を示すアルファベットを記載するが、このアルファベットは入力テーブルに含まれない。
入力テーブルは、検知データテーブルに含まれている情報の他に、各レーダで計測が行われた時刻、各々の対象物が最初に検知されたときの検知距離、受信電力の加重平均値、マーカを含む。マーカの使用方法については後述する。取得部41は、受信電力の加重平均値を、例えば、次式に従って算出するが、他の計算式により算出してもよい。
受信電力の加重平均=前回の受信電力値×α+今回の受信電力値×(1-α)
ここで、αは1未満の係数である。
なお、図5は入力テーブルの一例であり、取得部41は、例えば、マーカや受信電力の加重平均値を含まない入力テーブルを生成することができる。取得部41は、生成した入力テーブルをメモリ32に記録する。
図6は、入力テーブルを生成する際の取得部41の動作の一例を説明するフローチャートである。図6のフローチャートでは、取得部41は、前回の処理で生成した入力テーブルを用いて新たな入力テーブルを生成する。例えば、時刻t0の前に対象物が観測された時刻がtzであったとすると、取得部41は時刻tzの観測結果をもとに生成した入力テーブルを用いて時刻t0の観測結果を用いた入力テーブルを生成する。また、取得部41は、変数nおよびxと定数NおよびXを用いる。n、x、N、Xのいずれも、任意の正の整数とすることができる。nは、検知データテーブルを処理したレーダの数を計数するための変数、xは、入力テーブル中のデータと比較された検知データの数を計数するための変数である。また、Nは、車両検知装置20にデータを出力するレーダの総数、Xは、処理対象の検知データテーブルに含まれる検知データの総数を示す。ここでは、時刻tzの入力テーブルを用いて、図5に示す時刻t0の入力テーブルを生成する場合の動作について述べる。
取得部41は、nの値を1にする(ステップS1a)。取得部41は、xの値を1にする(ステップS1b)。次に、取得部41は、n番目の検知データテーブルに含まれている各々の検知データについて、レーダで観測されたx番目の対象物の識別子が、時刻tzの入力テーブルに存在するかを確認する(ステップS2)。n番目のレーダで観測されたx番目の対象物の識別子が時刻tzの入力テーブルに存在する場合、取得部41は、その対象物の入力情報を、時刻t0の検知データテーブルの情報に更新する(ステップS3)。一方、n番目のレーダで観測されたx番目の対象物の識別子が時刻tzの入力テーブルに存在しない場合、取得部41は、その対象物についての検知データテーブルの情報を、時刻t0の入力テーブルに追加する(ステップS4)。ステップS3もしくはS4の処理が終わると、取得部41は、xの値を1だけインクリメントしてXと比較する(ステップS5)。xがX以下の値である場合、取得部41は、ステップS2〜S4の処理を繰り返す。xがXより大きい値である場合、処理対象としている検知データテーブルに含まれる全ての対象物について入力テーブルと比較したことになる。そこで、取得部41は、nの値を1だけインクリメントしてNと比較する(ステップS6)。nがN以下の値である場合、取得部41は、まだ処理していない検知データテーブルがあると判断して、次の検知データテーブルについてステップS2〜S5の処理を繰り返す。nがNより大きい値である場合、すべての検知データテーブルが処理されたと判断する。そこで、取得部41は、入力テーブルに含まれている対象物のうち、情報が更新もしくは追加されていない対象物についてのデータを削除する(ステップS7)。
入力テーブルが生成されると、対象抽出部51は、入力テーブルから判定処理の対象を抽出する。対象抽出部51は、第1の車線に設置された第1のレーダで検知された対象物と、第1の車線に隣接した第2の車線に設置されている第2のレーダで検知された対象物について、検知距離を比較する。第1の対象物の第1のレーダからの距離(D1)と、第2の対象物の第2のレーダからの距離(D2)が近い場合、第1の対象物と第2の対象物は同一の車両である可能性があるため、対象抽出部51は、第1および第2の対象物を処理対象とする。そこで、判定処理の対象を抽出するために、対象抽出部51は、例えば、D1−D2の値の絶対値を第1の閾値と比較する。D1−D2の値の絶対値が第1の閾値よりも小さい場合、対象抽出部51は、第1の対象物と第2の対象物を判定処理の対象とする。ここで、判定処理の対象になる第1の対象物と第2の対象物は、同一の車両である可能性がある2つの対象物であることを意味する。従って、第1の閾値は、3.5mくらいの値など、大型車の前方もしくは中間からの反射波に基づいて検知された対象物と、大型車の後方からの反射波に基づいて検知された対象物が1台の車両である可能性があると判断できる程度の大きさの値である。
以下、対象抽出部51が対象物Aと対象物Adを入力テーブルから抽出するときの動作例を述べる。なお、対象抽出部51は、以下の手順の(1)よりも(2)を先に行っても良い。
(1)対象抽出部51は入力テーブルを参照して、レーダ11で検知された対象物ID=1の対象物(対象物A)の検知距離は106.5mであることを認識する。
(2)対象抽出部51は設置位置テーブルを参照して、レーダ11が車線1に設置されていることを確認する。さらに、対象抽出部51は、車線1に隣接している車線2に設置されているレーダがレーダ12であることも認識する。
(3)入力テーブルのうち、レーダ12からの計測データに基づいて得られた対象物の検知距離を、レーダ11で検知された対象物ID=1の対象物の検知距離と比較する。レーダ12で検知された対象物ID=1の対象物(対象物Ad)の検知距離は106.8mである。従って、レーダ11で検知された対象物ID=1の対象物(対象物A)とレーダ12で検知された対象物ID=1の対象物(対象物Ad)の検知距離の差は0.3mであるため、対象物Aと対象物Adは同一の車両である可能性がある。そこで、対象抽出部51は、対象物Aと対象物Adを処理対象とする。
対象抽出部51は同様の処理を他の対象物にも行う。その結果、対象物Bと対象物Bdも1台の車両である可能性があるので、処理対象とされる。また、対象物Cbと対象物Cの組み合わせと、対象物Cと対象物Dの組み合わせも同様に処理対象とされる。なお、ここでは、分かりやすくするために、対象物Bなどの記載をしているが、対象抽出部51は、各々の対象物を、その対象物を検出したレーダの識別子と対象物IDを用いて識別している。対象抽出部51は、処理対象を、距離観測レーダ特定部53と判定部56に通知する。
距離観測レーダ特定部53は、入力テーブルを参照して、処理対象に指定された各々の対象物についての検知距離の初期値を取得する。取得した検知距離の初期値を比較し、小さい方の値が検知されたレーダを特定する。例えば、レーダ11で検知された対象物ID=1の対象物(対象物A)の検知距離の初期値は41メートルである。一方、レーダ12で検知された対象物ID=1の対象物(対象物Ad)の検知距離の初期値は62.2メートルである。レーダ11で観測された検知距離の初期値の方がレーダ12で観測されたものよりも小さいので、距離観測レーダ特定部53は、レーダ11を特定する。以下の記載では、処理対象の対象物を観測したレーダのうち、検知距離の初期値が小さい方のレーダを「距離観測レーダ」と記載することがある。また、距離観測レーダは、処理対象の対象物の検知距離のうちで最も短い距離を観測したレーダであるともいえる。距離観測レーダ特定部53は、距離観測レーダを判定部56に通知する。
図7は、車両の走行状態とレーダの観測結果の組み合わせの例を説明する図である。図7を参照しながら、判定部56の動作について説明する。図7(a)は、図1の車両Aの走行状態と車線1、2を表した図である。図7(b)はレーダ11での対象物A(対象物ID=1)の検知距離の経時変化を表し、図7(c)はレーダ12での対象物Ad(対象物ID=1)の検知距離の経時変化を表す。車両が走行している第1の車線に設置された第1のレーダが車両を検知し始める地点は、第1の車線に隣接している第2の車線に設置された第2のレーダがその車両を検知する地点よりも、第1および第2のレーダに近い地点である。例えば、図7(a)〜(c)に示すように、レーダ11が車線1を走行している車両Aを検知し始める位置は、レーダ12が車線1を走行している車両を検知し始める位置よりもレーダ11に近い位置である。
判定部56は、距離観測レーダ特定部53から距離観測レーダを通知されると、距離観測レーダが設置されている車線に車両が位置すると判定する。また、判定部56は、適宜、設置位置テーブルを参照して、距離観測レーダが設置されている車線を確認する。例えば、対象物Aと対象物Adについて、距離観測レーダがレーダ11であることが判定部56に通知されたとする。すると、判定部56は、設置位置テーブルに基づいて、対象物Aと対象物Adは車線1を走行している1台の車両に対応すると判定する。
さらに、距離差分閾値を、距離観測レーダと他方のレーダでの検知距離の初期値の差分と比較することにより、判定部56は、2台の車両が併走している場合と、1台の車両が走行している場合の両方に対応して車両を検知することもできる。この場合、距離観測レーダ特定部53は、距離観測レーダと他方のレーダでの検知距離の初期値の差分を求めて、距離観測レーダの識別子と共に判定部56に出力するものとする。例えば、対象物Aと対象物Adの例では、62.2−41=21.2メートルが検知距離の初期値の差分であることが判定部56に通知される。
次に、距離差分閾値の求め方の一例を述べる。例えば、車両Aが走行している車線1の隣の車線2に設置されたレーダ12は、車線1が覆域4bに入るまで車両Aを検知することはできない。そこで、ある車両が、走行している車線のレーダによって検知され始めた位置から、隣接する車両に設置されたレーダの覆域4が重なる位置までの距離と同程度の長さが距離差分閾値に設定される。ただし、走行している車両の大きさなどによって、レーダに検知される位置が変動する場合がある。例えば、バスやトラックなどの大型車が1台だけ一方の車線を走行する場合には、大型車が走行していない車線に設置されたレーダでも反射波を受信しやすい。このため、大型車は、普通車や小型車に比べてレーダに近い位置から検知される。一方、二輪車や小型車は表面積が小さいため検知されにくい。そのため、例えば、車線1を二輪車が走行している場合、レーダ12は、覆域4bと車線1が重なった地点に二輪車が到達しても二輪車に対応する対象物を検知しないことがある。しかし、車線1をトラックが走行している場合、レーダ12は、覆域4bと車線1が重なった地点にトラックが到達した途端に、そのトラックに対応する対象物を検出することがある。従って、距離差分閾値は、レーダに近い位置で検知される車両が走行している場合でも、車両が走行している車線を正しく特定できるように設定される。
判定部56は、対象物の検知距離の初期値の差分が距離差分閾値以上の値であるかを確認する。検知距離の初期値の差分が距離差分閾値以上の値である場合、判定部56は、距離観測レーダが設置されている車線を1台の車両が走行していると判定する。例えば、距離差分閾値が18メートルであるとする。対象物Aと対象物Adの検知距離の初期値の差分は前述のとおり21.2メートルであり、距離観測レーダは車線1に設置されているレーダ11である。そこで、判定部56は、対象物Aと対象物Adは車線1を走行している1台の車両の検知結果であると判定する。ここでは、対象物Aと対象物Adの例について述べたが、対象物Bと対象物Bdも同様に処理される。
図7(d)は、図1の車両Cの走行状態と車線1および2を表した図である。図7(e)はレーダ11での対象物Cd(対象物ID=3)の検知距離の経時変化を表し、図7(f)はレーダ12での対象物C(対象物ID=3)の検知距離の経時変化を表す。入力テーブルに基づいて、距離観測レーダ特定部53は、距離観測レーダなどを求める。対象物Cと対象物Cdでは、距離観測レーダがレーダ12であり、検知距離の初期値の差分は、61.6−42.3=19.3メートルである。検知距離の初期値の差分が距離差分閾値以上の値であるため、判定部56は、対象物Cと対象物Cdは、車線2を走行している1台の車両の検知結果であると判定する。
レーダ11で検出された対象物とレーダ12で検出された対象物の間の判定が終わると、次に、判定部56は、レーダ12で検出された対象物とレーダ13で検出された対象物の間で判定を行う。ここで、対象物Cdと対象物Cの間の判定により、対象物Cdと対象物Cは車線2を走行している1台の車両であると判定されている。しかし、対象物Cと対象物Dが同じ車両に対応している可能性があるため、判定部56は、対象物Cと対象物Dの間の判定を行う。
図7(g)は、図1の車両Cと車両Dの走行状態と車線2、3を表した図である。図7(h)はレーダ12による対象物C(対象物ID=3)の検知距離の経時変化を表し、図7(i)はレーダ13による対象物D(対象物ID=1)の検知距離の経時変化を表す。図7(g)に示すケースでは、レーダ12は、車両Cが車線2の中のレーダ12の覆域4bに入ったときに対象物Cを検知し始める。従って、レーダ12は、レーダ12から42.3メートルの位置から対象物Cを検知する。一方、レーダ13は、車両Dが車線3の中のレーダ13の覆域4cに入ったときに対象物Dを検知し始めるので、レーダ13から41.3メートルの位置から対象物Dを検知する。すなわち、車線2と車線3のいずれにも車両が存在している場合には、レーダ12とレーダ13のいずれも、レーダからほぼ同じくらいの距離に車両が入ったときから各々のレーダが設置されている車線を走行している車両を検知する。入力テーブルに基づいて、距離観測レーダ特定部53は、距離観測レーダがレーダ12であり、対象物Cと対象物Dの検知距離の初期値の差分は、42.3−41.3=1.0メートルであることを求める。判定部56は、対象物Cと対象物Dの検知距離の初期値の差分が距離差分閾値より小さいため、車線1と車線2のいずれにも車両が位置していると判定する。判定部56は、判定結果を統合部42に出力する。
このように、車両検知装置20は、隣接する2つの車線の各々に設置されたレーダで対象物が検知され始めた位置とレーダとの間の距離を用いて、車両が走行している車線を特定する。図7を参照しながら、一方の車線を車両が走行している場合と、隣接した2車線を2台の車両が併走している場合について説明したが、車両検知装置20は、1台の車両が2車線にまたがって走行している場合も同様に処理できる。例えば、車両Fが車線1と車線2の両方にまたがって走行している場合、レーダ11とレーダ12のいずれも、車両Fが覆域4a、4bに入ると車両Fに対応する対象物を検知する。従って、検知距離の初期値はレーダ11とレーダ12の間で大きな違いは無い。そこで、判定部56は、検知距離の初期値の差分が距離差分閾値より小さいため、車線1と車線2のいずれにも車両が位置していると判定する。
図8は、制御部40の動作の一例を説明するフローチャートである。対象抽出部51は、入力テーブルに記録されている2つの対象物が隣り合った車線に設置されたレーダによって検知されたかを確認する(ステップS11)。隣り合った車線に設置されたレーダにより検知されている2つの対象物の間の距離が第1の閾値よりも小さい場合、対象抽出部51は、2つの対象物は同一の車両に対応している可能性があると判断する(ステップS12)。次に、判定部56は、2つの対象物の検知距離の初期値の差分が距離差分閾値以上であるかを確認する(ステップS13)。検知距離の初期値の差分が距離差分閾値以上である場合、判定部56は、2つの対象物はいずれも、検知距離の初期値が小さい方のレーダが設置された車線を走行している車両を検知したものであると判定する(ステップS14)。一方、検知距離の初期値の差分が距離差分閾値より小さい場合、判定部56は、2台の車両が併走しており、各レーダは設置されている車線を走行する車両を検知したと判定する(ステップS15)。また、隣り合った車線に設置されたレーダにより検知されている2つの対象物の間の距離が第1の閾値以上の場合、対象抽出部51は、2つの対象物はそれぞれ別の車両に対応していると判定する(ステップS16)。
図9は、統合データテーブルの一例を示す図である。統合データテーブルは、受信電力値やマージフラグを含まないテーブルにするなど、実装に応じて変更される場合がある。なお、マージフラグについては後述する。
統合部42は、同一の車両を検知したと判定された対象物のデータを統合して統合データテーブルを生成する。統合データテーブル中の車両IDは、判定部56の判定により走行していると考えられる車両に割り当てられる識別子である。対象物IDの欄には、車両の検知に用いられた対象物の対象物IDが記録される。また、統合部42は、車両の検出に用いられた対象物を検知していないレーダについての対象物IDの欄には、「−1」などの無効値を記録する。例えば車両ID=1は車両Aに対応するデータであるとする。車両Aに対応する対象物は、レーダ11で検出された対象物ID=1(対象物A)と、レーダ12で検出された対象物ID=1(対象物Ad)である。そこで、統合部42は、車両ID=1のレーダ11での対象物IDの欄には、対象物Aの対象物IDである「1」を記録する。同様に、統合部42は、レーダ12での対象物IDの欄に対象物Adの対象物IDである「1」を記録する。また、レーダ13では車両Aに対応する対象物が検出されていないので、統合部42は、レーダ13の対象物IDの欄に「−1」を記録する。統合部42は、車両が走行していると判定された車線に設置されたレーダで検知された対象物についての車線番号、検知距離、速度、受信電力などを入力テーブルから読み込み、車両IDと対応付けて統合データテーブルに記録する。例えば、対象物Aと対象物Adに基づいて、車両ID=1の車両(車両A)は、車線1を走行していると判定されている。そこで、統合部42は、入力テーブルから対象物Aについての車線番号、検知距離、速度、受信電力などを読み込んで統合データテーブルに記録する。同様に、統合部42は対象物Bと対象物Bdの判定結果に基づいて、車両ID=2のデータを記録する。
車両Cについては、対象物Cdと対象物Cのデータを用いた判定と、対象物Cと対象物Dのデータを用いた判定が行われている。対象物Cdと対象物Cの間の判定では、対象物Cdと対象物Cは車線2を走行する1台の車両に対応するという判定結果が得られている。一方、対象物Cと対象物Dの間の判定では、車線2と車線3に1台ずつ車両が併走しているという結果が得られている。そこで、統合部42は、車線2を走行する車両が存在すると判断し、対象物Cdと対象物Cのデータを統合データテーブルの車両ID=3のとおりに記録する。ここで、車両ID=3は車線2を走行する車両であると判定されているので、統合部42は、対象物Cについての検知距離などを統合データテーブルに記録する。さらに、車線3には対象物Dに対応する車両が走行していると判定されているため、統合部42は、対象物Dのデータに基づいて、車両ID=4のデータを記録する。
統合部42は、生成した統合データテーブルを出力部43に出力する。出力部43は、統合データテーブルからレーダ11〜13での対象物IDとマージフラグを削除した出力データテーブルを生成して、送信部34に出力する。送信部34は、出力データを上位装置60に送信する。
図10は、車両検知装置20とレーダ11、レーダ12を設置したシステムの例を示す図である。図10の例では、片側2車線の道路に車両検知装置20を設置した場合の例である。送信部34から上位装置60に出力結果を受信すると、上位装置60は、車両Gの前方の同じ車線に3台の車両が走行していることを光ビーコン61により通知する。なお、図10の例では、光ビーコン61によって車両Gに走行車両の情報を通知しているが、上位装置60は、電波ビーコンなど、路車間通信に用いられる任意の装置を用いて車両Gに情報を通知することができる。また、送信部34と上位装置60の間の通信、および、上位装置60から光ビーコン61などの間の通信は、回線を通じた通信とすることができ、また、無線通信とすることもできる。
このように、第1の実施形態に係る車両検知装置20によると、隣接する車線を覆域に含み、車両の進行方向と垂直方向には分解能を有さないレーダを用いて、個々の車線を走行する車両を検出することができる。このようなレーダは、スキャン型レーダではないため、スキャン方向を変更する可動部を備えていないので耐久性に優れている。従って、車両検知装置20を用いたシステムも耐久性に優れているといえる。また、車両検知装置20を用いると、電子スキャン型のレーダなどのように、高価なレーダを用いずに車両検知システムを作ることができる。さらに、ビームの形状が細いレーダを用いる場合に隣接車線よりの位置を走行する車両や二輪車などを検知できない場合も発生することがあるという問題も解消される。
<第2の実施形態>
図11は、第2の実施形態にかかる車両検知装置70の構成の一例を説明する図である。車両検知装置70は、通信部31(31a〜31c)、メモリ32、検知部33(33a〜33c)、送信部34、および、制御部71を備える。制御部71は、取得部44、統合部42、出力部43、対象抽出部51、時刻観測レーダ特定部54、および、判定部56を備える。通信部31、メモリ32、検知部33、送信部34、統合部42、出力部43、対象抽出部51の動作は、第1の実施形態と同様である。
取得部44は、取得部41と同様の方法で図12に示す入力テーブルを生成する。図12は、図5の入力テーブルに含まれる情報に加えて各対象物の検知開始時刻が記録されている。例えば、車両検知装置70がt0から車両の検知を開始してt10まで検知したとする。対象物Aはt4の時点でレーダ11に最初に検知されている。一方、対象物Adはt6の時点でレーダ12に検知され始めたものとする。
時刻観測レーダ特定部54は、処理対象に指定された各々の対象物についての検知開始時刻を取得し、検知開始時刻が早い方のレーダを特定する。以下の記載では、検知開始時刻が早い方のレーダを「時刻観測レーダ」と記載することがある。ここで、時刻観測レーダ特定部54は検知開始時刻同士のうちの早い時刻を観測したレーダであるので、対象物の検知時刻のうち、最も早い検知時刻を観測したレーダであるともいえる。対象抽出部51から処理対象の対象物が通知されると、時刻観測レーダ特定部54は、図12に示す入力テーブルを参照する。
図7(a)〜図7(f)を参照しながら、車両検知装置70に備えられた判定部56の動作について説明する。車両が走行している第1の車線に設置された第1のレーダが車両を検知し始める時刻は、第1の車線に隣接している第2の車線に設置された第2のレーダがその車両を検知する時刻よりも早い。そこで、判定部56は、車両が走行している車線は時刻観測レーダが設置されている車線であると判定する。例えば、車両Aが走行している車線1に備えられたレーダ11が対象物Aを検知した時刻(t4)は、車線2に備えられたレーダ12が対象物Adを検知した時刻(t6)よりも早い。従って、時刻観測レーダはレーダ11である。判定部56は、レーダ11が車線1に設置されているので、対象物Aと対象物Adは車線1を走行する車両に対応すると判定する。
判定部56は、図7(g)〜図7(i)のように隣接する車線を2台の車両が併走する場合を検出するために、さらに、時間閾値を用いることもできる。時間閾値は、例えば、車両が走行している第1の車線に設置された第1のレーダが車両を検知し始める時刻から、その車両が第1の車線に隣接している第2の車線に設置された第2のレーダの覆域に入るまでの時間とすることができる。また、前述のとおり、車種により検出されやすさが異なるため、例えば、車線1を走行しているトラックがレーダ11の覆域に入ってからレーダ12に検知されるまでの時間は、車線1を走行している二輪車がレーダ11の覆域に入ってからレーダ12に検知されるまでの時間よりも短いことがある。そこで、時間閾値は、走行している車両の車種に関わらず、その車両が走行している車線を特定できる値に設定される。ここでは、時間閾値がt1であるものとする。
時間閾値が判定部56の判定に用いられる場合、時刻観測レーダ特定部54は、時刻観測レーダの識別子と共に、検知開始時刻の差分も判定部56に通知する。例えば、対象物Aと対象物Adの組み合わせでは、検知開始時刻の差分はt2である。一方、対象物Cと対象物Dの組み合わせでは、検知開始時刻の差分は0である。
判定部56は、判定を行うときに、検知開始時刻の差分を時間閾値と比較する。検知開始時刻の差分が時間閾値より小さい場合、2つの対象物は併走している2台の車両の各々に対応していると判定される。例えば、対象物Cと対象物Dは、検知開始時刻の差分は0であるので、2台の車両が併走していると判定される。一方、検知開始時刻の差分が時間閾値以上である場合、判定部56は、2つの対象物は、時刻観測レーダが設置されている車線を走行する1台の車両に対応すると判定する。例えば、対象物Aと対象物Adでは検知開始時刻の差分は2tであるので、対象物Aと対象物Adは、時刻観測レーダが設置されている車線を走行する1台の車両に対応すると判定する。時刻観測レーダはレーダ11であるので、判定部56は、設置位置テーブルを参照して、対象物Aと対象物Adは車線1を走行する車両に対応づける。
図13は、制御部71の動作の一例を説明するフローチャートである。ステップS21、S22、S26は、図8を参照しながら説明したステップS11、S12、S16と同様である。ステップS23において、判定部56は、2つの対象物の検知開始時刻の差分が時間閾値以上であるかを確認する。2つの対象物の検知開始時刻の差分が時間閾値以上である場合、判定部56は、2つの対象物はいずれも、検知開始時刻が早い方のレーダが設置された車線を走行している車両の検知結果であると判定する(ステップS24)。一方、2つの対象物の検知開始時刻の差分が時間閾値より小さい場合、判定部56は、2台の車両が併走しており、各レーダは設置されている車線を走行する車両を検知したと判断する(ステップS25)。
このように、第2の実施形態によると、対象物の検知が開始された時刻の情報を用いることにより、車両が走行している車線を特定することができる。
<第3の実施形態>
図14は、第3の実施形態にかかる車両検知装置80の構成の一例を説明する図である。車両検知装置80は、通信部31(31a〜31c)、メモリ32、検知部33(33a〜33c)、送信部34、および、制御部81を備える。制御部81は、取得部41、統合部42、出力部43、対象抽出部51、受信レーダ特定部55、および、判定部56を備える。通信部31、メモリ32、検知部33、送信部34、取得部41、統合部42、出力部43、対象抽出部51の動作は、第1の実施形態と同様である。
受信レーダ特定部55は、処理対象に指定された各々の対象物についての受信電力値を取得し、受信電力値が大きい方のレーダを特定する。以下の記載では、受信電力値が大きい方のレーダを「受信レーダ」と記載することがある。対象抽出部51から処理対象の対象物が通知されると、受信レーダ特定部55は、図5に示すような入力テーブルを参照して受信電力の加重平均値を取得する。なお、加重平均値を用いるのは、ノイズの影響を小さくするためであり、ノイズが著しく小さい環境下では、受信レーダ特定部55は、受信電力値に基づいて受信レーダを特定しても良い。受信レーダ特定部55は、受信レーダを判定部56に通知する。
判定部56は、受信レーダ特定部55から通知を受けると、設置位置テーブルを参照して、受信レーダが設置されている車線を確認する。例えば、受信レーダがレーダ12であることが判定部56に通知されたとする。すると、判定部56は、設置位置テーブルに基づいて、対象物は車線2を走行している1台の車両に対応すると判定することができる。
受信電力値は、車両からの反射波が強いほど大きな値になる。車両が走行していない車両では、車両から反射されてくる電力値が小さい。従って、車両が走行している車線に設置されたレーダの受信電力値は、車両が走行していない車線よりも受信電力値が弱くなる。従って、レーダの受信電力値の大きさに基づいて、車両が走行している車線を特定することができる。
本実施形態は、特に、カーブしている道路での車線の特定に用いることができる。図15は、車両の走行状態とレーダの観測結果の組み合わせの例を説明する図である。図15(a)はカーブ状の道路の車線2を、1台の車両Hが走行する場合を示す図である。図15(b)はレーダ11による対象物Hd(対象物ID=4とする)の検知距離の経時変化、図15(d)はレーダ11の受信電力の経時変化を表す。図15(c)はレーダ12による対象物H(対象物ID=5とする)の検知距離の経時変化、図15(e)はレーダ12の受信電力の経時変化を表す。図15(a)に示すような右カーブでは、車線2を走行している車両は、レーダ11の覆域4aとレーダ12の覆域4bが重なる地点よりもレーダよりの地点で車線1に設置されているレーダ11に検知される。従って、対象物Hと対象物Hbは、検知開始時間と検知位置の初期値のいずれも大きな違いが無い。しかし、図15(d)と図15(e)に示すように、車両Hが走行している車線2に設置されているレーダ12の受信電力は、レーダ11の受信電力に比べて大きい。そこで、判定部56は、受信レーダが設置されている車線を車両が走行していると判定することにより、車両が走行している車線を正しく特定することができる。
しかし、図15(f)〜図15(j)のように隣接する車線を2台の車両が併走する場合には、図15(i)と図15(j)ではほとんど受信電力の差が無い。このような状態のときにも受信レーダが設置されている車線を1台の車両が走行していると判定すると、併走する車両の一方を見失うことになる。そこで、判定部56は、図15(f)〜図15(j)のように隣接する車線を2台の車両が併走する場合を検出するために、さらに、電力差分閾値を用いることもできる。判定部56は、判定対象となる対象物からの受信電力値の差分が電力差閾値より小さいと、判定対象の対象物は、隣接する車線を併走する2台の車両の各々を検知した結果であると判定する。なお、電力差閾値は、車両の走行状態を判定したときの誤り率が一定の値より小さくなるように、予め、設定することができる。ここで、誤り率の上限値は、車両検知装置80に求められる検知精度に対応して任意に設定することができる。
図16は、電力差閾値の決定方法の一例を説明する図である。電力差閾値が小さすぎると、車両検知装置80は、併走している車両の一方を検知できない。そこで、電力差閾値の下限値を求めるために、図16(a)に示すような併走状態で得られたデータが、様々な値の電力差閾値を用いて処理される。電力差閾値として用いられた各々の値について、判定の誤り率が計算され、誤り率に基づいて電力差閾値の下限値が求められる。図16(b)は、28回の評価を行ったときに判定が誤りであった回数と、判定に用いた電力差閾値の値の関係を示す実験結果の一例である。図16(c)は、図16(b)に示した誤り率を、電力差閾値の大きさの関数として示したグラフである。この実験例では、電力差閾値が3.0dBmVでは誤り率が4%で、6.0dBmVでは誤り率が0%であった。
一方、電力差閾値が小さすぎると、1台の車両しか走行していない場合にも、併走している車両がいると誤認してしまう。そこで、電力差閾値の上限値を求めるために、図16(d)に示すように、1台の車両が走行している状態で得られたデータが、様々な値の電力差閾値を用いて処理される。図16(e)は、29回の評価を行ったときに判定が誤りであった回数と、判定に用いた電力差閾値の値の関係を示す実験結果の一例である。図16(f)は、図16(e)に示した誤り率を、電力差閾値の大きさの関数として示したグラフである。この実験例では、電力差閾値が6.2dBmVまでは誤り率が0%であった。
車両検知装置80のオペレータ等は、車両検知装置80を設置する地点において、同様の実験を実施した結果に基づいて、電力差閾値の値を求めることができる。なお、図16に示す方法は、電力差閾値の求め方の一例であり、他の計算方法や実験方法は、オペレータ等が、適宜、変更してもよい。
図17は、制御部81の動作の一例を説明するフローチャートである。図17の例では車線1に設置されているレーダ11で検知された対象物と、車線2に設置されているレーダ12で検知された対象物についての判定の例を示す。なお、隣接する他の2つの車線で検知された対象物についても制御部81は同様に処理できる。ステップS31、S32の処理は、図8を参照しながら説明したステップS11、S12、S16と同様である。判定部56は、受信電力の加重平均値の差分を電力差閾値と比較する(ステップS33)。受信電力の加重平均値の差分が電力差閾値以上である場合、判定部56は、レーダ11で検知された対象物の受信電力値のほうが、レーダ12に検出された対象物の受信電力よりも大きいかを確認する(ステップS34)。判定部56は、レーダ11で検知された対象物の受信電力値のほうが大きい場合、車線1に車両が位置していると判定する(ステップS35)。一方、レーダ11で検知された対象物の受信電力値のほうが小さい場合、判定部56は、車線2に車両が位置していると判定する(ステップS36)。また、受信電力の加重平均値の差分が電力差閾値未満である場合、判定部56は、2つの対象物は併走している車両の各々を検出していると判定する(ステップS37)。
<第4の実施形態>
第1〜第3の実施形態を組み合わせることも可能である。以下、第1の実施形態と第3の実施形態を組み合わせた例について説明する。
図18は、第4の実施形態にかかる車両検知装置90の構成の一例を説明する図である。車両検知装置90は、検知距離が第2の閾値未満の場合、受信電力値に基づいて車両が位置する車線を判定し、検知距離が第2の閾値以上の対象物を処理する場合、検知距離の初期値を用いて車両が位置する車線を判定するものとする。車両検知装置90は、通信部31(31a〜31c)、メモリ32、検知部33(33a〜33c)、送信部34、および、制御部91を備える。制御部91は、取得部41、統合部42、出力部43、対象抽出部51、距離比較部52、距離観測レーダ特定部53、受信レーダ特定部55、および、判定部56を備える。距離比較部52と判定部56以外の動作は、第1もしくは第3の実施形態と同様である。ただし、対象抽出部51は、判定対象とする対象物の組み合わせを距離比較部52にも通知するものとする。
距離比較部52は、判定の対象となる対象物の位置とレーダの間の距離を、第2の閾値と比較する。第2の閾値は、例えば、レーダの覆域の全長の半分までの長さとすることができる。図1の例では、レーダの覆域が42〜122mにわたっているので、第2の閾値を例えば、82mとすることができる。
距離比較部52は、対象抽出部51から判定対象とする対象物の組み合わせが通知されると、組み合わせのうちの一方の対象物の検知距離を第2の閾値と比較し、比較結果を判定部56に通知する。例えば、対象物Aと対象物Adの組み合わせの場合、対象物Aの検知距離が106.5mであるので、距離比較部52は、対象物Aと対象物Adの組み合わせの検知距離は第2の閾値よりも大きいことを判定部56に通知する。一方、対象物Cdと対象物Cの組み合わせの場合、対象物Cの検知距離が61.5mであるので、距離比較部52は、対象物Cdと対象物Cの組み合わせの検知距離は第2の閾値よりも小さいことを判定部56に通知する。
さらに、判定部56は、受信レーダ特定部55から受信レーダと電力差閾値を通知される。また、判定部56は、距離観測レーダ特定部53から距離観測レーダと距離差分閾値を通知される。
判定部56は、距離比較部52からの通知により、受信電力値と検知距離の初期値のいずれを用いて車両が位置する車線を判定するかを決定する。例えば、対象物Aや対象物Adの検知距離は第2の閾値よりも大きいので、判定部56は、距離観測レーダを識別する情報と距離差分閾値を用いて、対象物Aと対象物Adに対応する車両の位置する車線を判定する。判定方法は、第1の実施形態と同様である。一方、対象物Cdや対象物Cの検知距離は第2の閾値よりも小さいので、判定部56は、受信レーダを識別する情報と電力差閾値を用いて、対象物Cdと対象物Cに対応する車両の位置する車線を判定する。判定方法は、第3の実施形態と同様である。
図19は、制御部91の動作の一例を説明するフローチャートである。図19の例では車線1に設置されているレーダ11で検知された対象物と、車線2に設置されているレーダ12で検知された対象物についての判定の例を示す。なお、隣接する他の2つの車線で検知された対象物についても制御部91は同様に処理できる。ステップS41、S42の処理は、図8を参照しながら説明したステップS11、S12、S16と同様である。ステップS43において、距離比較部52は、対象物の検知距離と第2の閾値を比較する。対象物の検知距離が第2の閾値未満の場合、ステップS44〜S48の処理が行われる。ステップS44〜S48の処理は、図17を参照しながら説明したステップS33〜S37の処理と同様である。一方、対象物の検知距離が第2の閾値以上の場合、ステップS49〜S51の処理が行われる。ステップS49〜S51の処理は、図8を参照しながら説明したステップS13〜S15の処理と同様である。
このように、複数の実施形態を組み合わせることにより、車両検知装置90が設置される道路の形状に合わせた車両の検知ができる。例えば、覆域4の中間点までにカーブがある道路では、受信電力値を用いた判定が検知距離の初期値や検知開始時刻を用いた判定よりも有効な場合がある。また、レーダの覆域のうちでレーダの設置位置から遠い場所では、受信電力が小さくなるので、受信電力に基づく判定よりも検知距離の初期値や検知開始時刻を用いた判定のほうが有効な場合がある。また、実装する装置の構成や処理能力などに合わせて組み合わせを変更することもできる。例えば、車両検知装置90にさらに、時刻観測レーダ特定部54を追加して、第1〜第3の実施形態を組み合わせることもできる。図20は、第1〜第3の実施形態を組み合わせたときの動作の一例を説明するフローチャートである。図20のフローチャートでは、検知距離が第2の閾値以下の場合、受信電力値に基づいて判定が行われる。また、検知距離が第2の閾値より大きく第3の閾値以下の場合は検知距離の初期値、検知距離が第3の閾値より大きいとい場合は検知開始時刻を用いて判定が行われる。第3の閾値は、第2の閾値より大きな値であって、車両検知装置の処理能力などに応じて、任意に変動させることができる。ステップS61〜S68の処理は、図19を参照しながら説明したステップS41〜S48と同様である。ステップS69において、距離比較部52は第3の閾値と検知距離の大きさを比較し、比較結果を判定部56に出力する。対象物の検知距離が第2の閾値以上で第3の閾値未満の場合、ステップS70〜S72の処理が行われる。ステップS70〜S72は、図8を参照しながら説明したステップS13〜S15と同様である。一方、第3の閾値以上の場合、ステップS73〜S75の処理が行われる。ステップS73〜S75は、図13を参照しながら説明したステップS23〜S25と同様である。なお、第2の実施形態と第3の実施形態を組み合わせることもできる。
<第5の実施形態>
第5の実施形態では、車両検知装置90の動作の一例を説明する。以下の説明では、時刻t0のデータの処理が終了し、車両検知装置90が時刻t1のデータを受け取ってから行う処理について述べる。なお、以下の説明は一例であって、取得部41、統合部42、出力部43、対象抽出部51、距離比較部52、距離観測レーダ特定部53、受信レーダ特定部55、もしくは、判定部56の動作は実装に応じて変更することができる。例えば、統合部42は、ステップS89〜S92の処理を省略することもできる。また、本実施形態では、対象物IDや車両IDの無効値を「−1」としているが、他の任意の値を予め無効値に設定することもできる。さらに、本実施形態では、左側の車線から処理が行われる場合について述べる。また、この実施形態では、入力テーブルや統合データテーブルはいずれもメモリ32に格納されているものとする。
通信部31と検知部33の処理は、第1の実施形態と同様である。ただし、本実施形態では、検知部33は、検知データテーブルを生成したことを制御部91に通知するものとする。図21は、時刻t1の検知データテーブルと入力テーブルの例を示す図である。図21(a)は検知部33a、図21(b)は検知部33b、図21(c)は検知部33cによって生成された時刻t1の検知データテーブルである。図1(b)に示すように、車両Aはレーダ11の覆域4aとレーダ12の覆域4bのいずれからも抜けているので、検知されない。従って、レーダ11は、車両Bと車両Cに対応する対象物Bと対象物Cdを検知する。レーダ12は、車両Eが新たに覆域4bに入ったため、車両B、C、Eに対応する対象物Bd、対象物C、対象物Eを検知している。レーダ13は、車両Dに対応する対象物Dを検知している。取得部41は、図5に示した時刻t0の入力テーブルに含まれているデータを、図21(a)〜図21(c)の検知データテーブルに従って変更し、マーカを0に設定する。ここで、マーカは、検知された対象物が統合データテーブルの生成の際に用いられたかを確認するために用いられる。統合データテーブルの生成に用いられたデータのマーカの値は「1」で、用いられていないデータのマーカの値は「0」であるものとする。取得部41は、図21(d)に示す入力データテーブルを生成する。入力データテーブルのデータの変更方法は、図6を参照しながら説明した方法と同様である。
制御部91は、検知データテーブルが生成された旨の通知を受けると、統合部42にその旨を通知する。統合部42は、時刻t0での処理が終了したときの統合データテーブル(図9)のマージフラグを図22(a)に示すように0に設定する。なお、統合データテーブルの一行分のデータを「統合データ」と記載することがある。また、図22(a)の1行目のデータを、車両ID=1(車両A)の統合データと記載することもある。
マージフラグは、ある統合データが、さらに他の対象物等のデータと統合される可能性があるかを示す。統合データがさらに統合される可能性がある場合、マージフラグは「0」であり、統合される可能性が無い場合、マージフラグは「1」であるものとする。
図23は、統合データテーブル中の対象物と入力テーブルの中の対象物の比較処理の一例を説明するフローチャートである。図23(a)は、対象物の存在確認、図23(b)は図23(a)の結果に基づいた統合データテーブルの変更を説明するフローチャートである。統合部42は、変数yを1に設定する(ステップS81a)。また、統合部42は、変数nを1に設定すると共に、対象物存在フラグを0に設定する(ステップS81b)。ここで、nはレーダの数を計数するための変数で、yは処理したデータの数を計数するための変数である。また、Nはレーダの数、Yは統合データテーブル中に記録されている統合データの数を示す定数である。統合部42は、y番目の統合データについてのn番目のレーダの対象物IDが「−1」であるかを確認する(ステップS82)。対象物IDが「−1」でないときは、入力テーブル中のn番目のレーダからの情報に基づいて、同じ対象物が繰り返し検出されているかを判断する(ステップS83、S84)。例えば、図22(a)に示す車両ID=1の統合データでは、レーダ11で検知された対象物の対象物IDは1である。そこで、統合部42は、図21(d)の入力テーブルを確認して、レーダ11により対象物ID=1の対象物が検知されているかを確認する。対象物が検知されているときは、統合部42は、対象物存在フラグを1にする(ステップS85)。また、統合部42は、確認した対象物について、入力テーブルのマーカの欄に1を記録する(ステップS86)。一方、対象物が検知されていないとき、統合部42は、統合データテーブルの対象物IDを「−1」に設定する(ステップS87)。例えば、図21(d)の入力テーブルには、レーダ11の対象物ID=1の対象物は記録されていない。そこで、図22(b)に示すように、車両ID=1の統合データのレーダ11での対象物IDを「−1」にする。一方、統合部42がレーダ11の対象物ID=2の対象物が存在するかを確認した場合、レーダ11での対象物ID=2の対象物が入力テーブルに記録されている。そこで、統合部42は、図22(c)に示すように、レーダ11で検知された対象物ID=2のマーカを1に設定する。その後、統合部42は、nを1だけインクリメントしてからNと比較し、nがNより大きくなるまで、ステップS82〜S88の処理を繰り返す(ステップS88)。
次に、統合部42は、対象物存在フラグが1になっている場合は、その車両について継続回数を1だけインクリメントする(ステップS89、S90)。一方、対象物存在フラグが0の場合、統合部42は、y番目の車両の車両IDを「−1」に設定し、継続回数を0にする(ステップS91、S92)。ここで、継続回数は、同じ車両を継続して検知した回数である。統合部42は、yを1だけインクリメントしてからYと比較し、yがYより大きくなるまで、ステップS81b〜S93の処理を繰り返す(ステップS93)。
図23(a)の処理が終わると、統合部42は、各統合データの車両IDを調べる。車両IDが「−1」である場合、その車両に対応して検知された対象物が存在しないので、その車両に関するデータを削除する(ステップS95〜S97)。図24は、対応する対象物が検知されていない車両に関するデータを削除した後の統合データテーブルの一例を示す図である。図24では、図22(b)から車両Aの情報が削除されている。
図25Aおよび図25Bは、統合データテーブルの生成方法の一例を説明するフローチャートである。統合データテーブル中の対象物と入力テーブルの中の対象物の比較処理が終わると、統合部42は、再度、変数yを1に設定する(ステップS101a)。さらに、統合部42は、変数nを1に設定する(ステップS101b)。統合部42は、y番目の統合データ中のn番目のレーダにより検出された対象物の対象物IDが−1でない場合、代表レーダの番号を確認する(ステップS102、S103)。代表レーダは、判定部56によって判定される対象物を検知したレーダのうち、レーダ番号が小さい方のレーダである。本実施形態では、図1などに示すように、左側の車線に設置されたレーダほど若い番号になる。代表レーダの番号が−1ならば、統合部42は、n番目のレーダを代表レーダに設定し、nの値をインクリメントする(ステップS104、S105)。一方、代表レーダが既に設定されている場合や、y番目の車両の統合データ中のn番目のレーダにより検出された対象物の対象物IDが−1である場合も、統合部42は、nの値をインクリメントする(ステップS105)。nの値がNより大きくなるまで、統合部42は、ステップS102〜S105を繰り返す。
nの値がNより大きくなると、統合部42は、y番目の統合データについて代表レーダで検出された対象物のデータを、y番目の統合データにセットする(ステップS106、S107)。統合データへのセットが終わったときの例を、図26(a)の車両ID=3、4に示す。統合部42は、y番目の統合データ中の無効値(−1)ではない対象物IDの数を確認し、有効な対象物IDが1つのとき、ステップS121へ遷移する(ステップS108)。一方、複数の対象物IDが有効値をとっている場合、統合部42は、変数zを1に設定する(ステップS109)。変数zは、レーダの台数を計数するために用いられる。
統合部42は、z番目のレーダが代表レーダかを確認する(ステップS110)。z番目のレーダが代表レーダではないとき、y番目の統合データではz番目のレーダでの対象物IDが−1であるかを確認する(ステップS111)。対象物IDが−1ではない場合、統合部42は、y番目の車両について、z番目のレーダでの対象物IDに対応付けられたデータを、入力テーブルから取得し、判定部56に通知する(ステップS112)。判定処理の例は後述する。なお、判定処理は第1〜第4の実施形態で述べた判定と同様にすることもできる。
統合部42は、判定部56の出力結果により、代表レーダで検知された対象物とz番目のレーダで検知された対象物は1台の車両の検知結果に統合されるかを確認する(ステップS113)。1台の車両に統合されないとき、統合部42は、y番目の統合データのマージフラグを0にし、y番目の統合データを他の対象物と統合できる状態に保つ(ステップS114)。また、統合部42は、判定処理に用いられたz番目のレーダでの対象物について、入力テーブルのマーカを0にする(ステップS115)。さらに、統合部42は、y番目の統合データのz番目のレーダでの対象物IDを-1にする(ステップS116)。
一方、判定に用いられた対象物が1台の車両に対応するものである場合、統合部42は、y番目の統合データにz番目のレーダで検知された対象物のデータが統合されるかを確認する(ステップS117)。y番目の統合データに統合される場合、統合部42は、y番目の統合データのマージフラグを1にする(ステップS118)。一方、y番目の統合データに統合されない場合、統合部42は、y番目の統合データのマージフラグを0にする(ステップS119)。さらに、統合部42は、統合データの統合処理を行う。統合処理については後述する。統合処理が終わると、統合部42は、zの値をインクリメントする(ステップS120)。zの値がNより大きくなるまで、ステップS110〜S120が繰り返される。zがNより大きくなると、統合部42は、yの値をインクリメントする(ステップS121)。yの値がYより大きくなるまで、ステップS101b〜S121が繰り返される。
なお、S117、S118、S119におけるマージフラグの設定の仕方は、この方法に限るものではない。例えば、S117において、y番目の統合データにz番目のレーダで検知された対象物を統合した場合であっても、代表レーダ(入力1)に隣り合う他のレーダがz番目のレーダ(入力2)以外に存在する場合、かつ、処理中の統合データにおいて、該他のレーダに対応する対象物IDが「−1」である場合にはマージフラグを0のままにしておくことが考えられる。これは、レーダが設置されている道路の形状や、検知時の車両の通行状態により、その後の時刻において、入力1へ統合したデータに対して、さらに該他のレーダのデータが統合される可能性がある場合もあるからである。
図27Aおよび図27Bは判定処理の一例を説明するフローチャートである。なお、図27の処理は、判定部56によって行われる。図27(a)は、判定処理が判定方法の決定と判定を含んでいることを示す。図27(b)は判定方法の決定方法、図27(c)は判定方法を示す。
判定部56は、2つの対象物が隣同士のレーダで検知されているかを判定する(ステップS131)。隣同士のレーダで検知されていない場合、判定部56は判定を行わない。一方、2つの対象物が隣同士のレーダで検知されているとき、2つの対象物の間の距離が第1の閾値未満か確認する(ステップS132)。2つの対象物の間の距離が第1の閾値以上の場合、判定部56は判定を行わない。2つの対象物の間の距離が第1の閾値未満のとき、検知距離が第2の閾値未満かを確認する(ステップS133)。検知距離が第2の閾値未満の場合、判定部56は、受信電力による判定を行う。一方、検知距離が第2の閾値以上の場合、判定部56は、2つの対象物の検知距離の初期値の差分が距離差分閾値以上であるかを確認する(ステップS134)。検知距離の初期値の差分が距離差分閾値以上の場合、判定部56は、検知距離の初期値による判定を行う。一方、検知距離の初期値の差分が距離差分閾値未満の場合、判定部56は、2つの対象物は併走車両であると判定して判定処理を終了する。この場合、戻り値は、「1台に統合しない」となる。
次に判定処理について述べる。判定部56は、判定方法を確認する(ステップS141)。受信電力による判定の場合、判定部56は、受信電力の加重平均値の差が電力差閾値未満かを確認する(ステップS142)。受信電力の加重平均値の差が電力差閾値未満の場合、判定部56は、2つの対象物は併走車両と判定し、戻り値を「1台に統合しない」に設定する。一方、受信電力の加重平均値の差が電力差閾値以上の場合、判定部56は、対象物1の加重電力値の方が対象物2の加重電力値より高いかを確認する(ステップS143)。対象物1の加重電力値の方が高い場合、判定部56は、戻り値を「対象物1に統合」とする。一方、対象物1の加重電力値の方が低い場合、判定部56は、戻り値を「対象物2に統合」とする。距離の初期値で判定する場合、判定部56は、対象物1の検知距離の初期値の方が対象物2の検知距離の初期値より小さいかを確認する(ステップS144)。対象物1の検知距離の初期値の方が小さい場合、判定部56は、戻り値を「対象物1に統合」とする。一方、対象物2の検知距離の初期値の方が小さい場合、判定部56は、戻り値を「対象物2に統合」とする。また、判定を行わない場合、判定部56は、戻り値を「1台に統合しない」に設定する。判定部56は、戻り値を統合部42に出力する。
図28は統合処理の一例を説明するフローチャートである。統合部42は、判定部56から取得した戻り値を確認する(ステップS151)。戻り値が「対象物1に統合」である場合、統合部42は、統合データに対象物1のデータをセットする(ステップS152)。戻り値が「対象物2に統合」である場合、統合部42は、統合データに対象物2のデータをセットする(ステップS153)。図25〜図28の処理の後の統合データの一例を、図26(a)に示す。
なお、S134の判定は、S141とS144との間で行っても構わない。その場合には、S133のNoの分岐は、そのまま「検知距離の初期値による判定」へ接続し、S134の判定をS141とS144と間に挿入する。そして、S134のNoの分岐先を「END 戻り値:1台に統合しない」に接続し、Yesの分岐先をS144に接続する。
図29は、新規登録の方法の一例を説明するフローチャートである。統合部42は、変数uと定数Uを用いる。uは処理した対象物の数の計数に用いられる。Uは、新規登録を開始したときに入力テーブルのマーカが0になっている対象物の数である。新規登録を開始するときに、統合部42は、入力テーブルを参照してUの値を取得し、uを1に設定する(ステップS161)。統合部42は、マーカが0のu番目の対象物についてデータとレーダ番号を取得する(ステップS162)。統合部42は、yの値を1に設定する(ステップS163)。
統合部42は、y番目の統合データがu番目の対象物と統合される可能性があるかを確認する(ステップS164)。すなわち、統合部42は、y番目の統合データのマージフラグが0であるかを確認する。さらに、統合部42は、y番目の統合データがu番目の対象物を検知したレーダと同じレーダによって検知された他の対象物と既に統合されていないことを確認する。統合が可能な場合、統合部42は、判定部56にその旨を通知し、判定結果を受け取る(ステップS165)。判定処理は、図27を参照しながら述べた方法と同様である。また、ステップS166〜S168は、図25Bを参照しながら説明したステップS117〜S119と同様である。統合処理は、図28を参照して説明したとおりである。ステップS169において、統合部42は、u番目の対象物IDを統合データテーブルに記録する。その後、統合部42は、yをインクリメントし、Yと比較する(ステップS170)。また、ステップS164、S165でNoと判定された場合も統合部42は、yをインクリメントし、Yと比較する。yがYよりも大きくなるまで、ステップS164〜S170が繰り返される。
u番目の対象物がいずれの統合データとも統合されていない場合、統合部42は、u番目の対象物のデータを統合データテーブルに新たに登録し、マージフラグを0にする(ステップS171〜S173)。また、統合部42は、入力テーブルのu番目の対象物のマーカを1に設定し、uの値を1だけインクリメントする(ステップS174、S175)。いずれかの統合データとu番目の対象物が統合されている場合も、ステップS174、S175の処理が行われる。ステップS162〜S175は、uがUよりも大きくなるまで繰り返される。新規登録処理で車両Eが登録された統合データテーブルの例を図26(b)、入力テーブルの例を図26(c)に示す。図30は、統合データ間での判定の一例を説明するフローチャートである。統合部42は、同一の車両に対応している複数の統合データがあるかを確認する。図30の処理では、統合部42は変数iを用いる。y番目の統合データは、y+i番目の統合データと比較される。
まず、統合部42は、変数yを1に設定する(ステップS180)。統合部42は、y番目の統合データが他のデータと統合できるかを確認する。すなわち、統合部42は、y番目の統合データについて、車両IDが−1であるかと、マージフラグが1であるかを確認する(ステップS181)。y番目の統合データが他のデータと統合できる場合、統合部42は、y番目の統合データに対応付けられた対象物を観測したレーダを特定する(ステップS182)。統合部42は、変数iを1に設定する(ステップS183a)。次に、統合部42は、y+i番目の統合データにも、ステップS181、S182と同様の処理を行う(ステップS183b、S184)。次に、統合部42は、y番目の統合データとy+i番目の統合データでは、同じレーダで観測された対象物があるかを確認する(ステップS185)。同じレーダで観測された対象物がない場合、統合部42はその旨を判定部56に通知し、判定部56は判定処理を行う。ステップS186〜S189は、図29を参照しながら説明したステップS165〜S168と同様である。統合部42は、変数nを1に設定する(ステップS190a)。さらに、統合部42は、y番目の統合データ中のn番目のレーダによる対象物IDが−1のとき、y+i番目の統合データ中のn番目のレーダによる対象物IDを代入する(ステップS190b)。統合部42は、nを1だけインクリメントしてnがNより大きくなるまでステップS190b、S191を繰り返す。
さらに、統合部42は統合処理を行い、y+i番目のデータの車両IDを−1に設定し、iを1だけインクリメントする(ステップS192、S193)。また、ステップS183bおよびS185でYesの場合と、S186でNoの場合も、統合部42は、iを1だけインクリメントする。iがY−2よりも大きくなるまで、ステップS183b〜S193が繰り返される。iがY−2よりも大きくなると、統合部42は、yを1だけインクリメントし、Y−1と比較する(ステップS194)。また、ステップS181でYesと判定された場合も、ステップS194の処理が行われる。yがY−1よりも大きくなるまでステップS181〜S194が繰り返される。
<その他>
なお、本発明は上記の実施形態に限られるものではなく、様々に変形可能である。以下にその例をいくつか述べる。
1台の車両に対応して検知された対象物は、位置と速度が互いに類似していると考えられる。そこで、第6の実施形態では、2つの対象物の間の距離が第1の閾値未満であって、さらに、速度の違いが所定の速度閾値以下の場合に、その2つの対象物は1台の車両である可能性があると判断して検知処理を行う。図4に示すように、検知データテーブルには、対象物の移動速度が含まれる。そこで、対象抽出部51は、位置と速度が互いに類似している2つの対象物が、隣接した車線に設置されたレーダで検知されている場合に、それらの2つの対象物を処理対象に指定することもできる。
左側の車線から処理したのは処理方法の一例であって、右側の車線から処理を行うなど、処理の順序は実装に応じて変更できる。
車両検知装置20がコンピュータで実現される場合、Central Processing Unit(CPU)は、プログラムを読み込むことにより、通信部31、検知部33、制御部40、71、81、91、送信部34として動作する。プログラムは、メモリ32に格納される。
上述の各実施形態に対し、さらに以下の付記を開示する。
(付記1)
複数の車線の各々に設置され、設置車線に隣接する車線を検知範囲に含むレーダからの情報を用いて車両を検知する車両検知装置であって、
各レーダから、検知された対象物と前記対象物を検知したレーダの間の距離を表す検知距離、前記対象物の検知時刻、および、前記対象物からの受信電力を取得する取得部と、
第1のレーダにより検知された第1の対象物と、前記第1のレーダの設置車線に隣接する車線に設置されている第2のレーダにより検出された第2の対象物の間の距離が第1の閾値以下の場合に、前記第1の対象物の最新の検知距離を第2の閾値と比較し、さらに、前記最新の検知距離を前記第2の閾値より大きい第3の閾値と比較する距離比較部と、
前記第1の対象物の検知距離と前記第2の対象物の検知距離のうち、最も短い距離を観測した距離観測レーダを特定する距離観測レーダ特定部と、
前記第1の対象物の検知時刻と前記第2の対象物の検知時刻のうち、最も早い検知時刻を観測した時刻観測レーダを特定する時刻観測レーダ特定部と、
前記第1および第2の対象物からの受信電力のうちで最も大きい受信電力を受信した受信レーダを特定する受信レーダ特定部と、
前記最新の検知距離が前記第3の閾値以上の場合、前記時刻観測レーダが設置されている車線を車両が走行していると判定し、前記最新の検知距離が前記第3の閾値未満で前記第2の閾値以上の場合、前記距離観測レーダが設置されている車線を車両が走行していると判定し、前記最新の検知距離が前記第2の閾値未満である場合、前記受信レーダが設置されている車線を車両が走行していると判定する判定部
を備えることを特徴とする車両検知装置。
(付記2)
複数の車線の各々に設置され、設置車線に隣接する車線を検知範囲に含むレーダからの情報を用いて車両を検知する車両検知装置であって、
各レーダから、検知された対象物と前記対象物を検知したレーダの間の距離を表す検知距離、および、前記対象物の検知時刻を取得する取得部と、
第1のレーダにより検知された第1の対象物の検知距離と、前記第1のレーダの設置車線に隣接する車線に設置されている第2のレーダにより検出された第2の対象物の検知距離のうち、最も短い距離を観測した距離観測レーダ、あるいは、前記第1の対象物の検知時刻と前記第2の対象物の検知時刻のうち、最も早い検知時刻を観測した時刻観測レーダを特定する観測レーダ特定部と、
前記第1の対象物と前記第2の対象物の間の距離が第1の閾値以下の場合に、前記時刻観測レーダ、もしくは、前記距離観測レーダが設置されている車線を車両が走行していると判定する判定部
を備えることを特徴とする車両検知装置。
(付記3)
複数の車線の各々に設置され、設置車線に隣接する車線を検知範囲に含むレーダからの情報を用いて車両を検知する車両検知装置であって、
各レーダから、検知された対象物と前記対象物を検知したレーダの間の距離を表す検知距離、および、前記対象物からの受信電力を取得する取得部と、
第1のレーダにより検知された第1の対象物と、前記第1のレーダの設置車線に隣接する車線に設置されている第2のレーダにより検出された第2の対象物の間の距離が第1の閾値以下の場合に、前記第1および第2の対象物からの受信電力のうちで最も大きい受信電力を受信した受信レーダを特定する受信レーダ特定部と、
前記受信レーダが設置されている車線を車両が走行していると判定する判定部
を備えることを特徴とする車両検知装置。
(付記4)
前記第1の対象物の最新の検知距離を第2の閾値と比較する距離比較部と、
前記第1の対象物の検知距離と前記第2の対象物の検知距離のうち、最も短い距離を観測した距離観測レーダを特定する距離観測レーダ特定部
をさらに備え、
前記判定部は、前記最新の検知距離が前記第2の閾値以上の場合、前記距離観測レーダが設置されている車線を車両が走行していると判定し、前記最新の検知距離が前記第2の閾値未満である場合、前記受信レーダが設置されている車線を車両が走行していると判定する
ことを特徴とする付記3に記載の車両検知装置。
(付記5)
前記判定部は、前記第1の対象物が前記第1のレーダに最初に検知されたときの検知距離と、前記第2の対象物が前記第2のレーダに最初に検知されたときの検知距離の差分を表す検知距離差分値を、所定の距離差分閾値と比較し、
前記検知距離差分値が前記距離差分閾値よりも小さい場合、前記第1のレーダが設置されている車線と、前記第2のレーダが設置されている車線のいずれも車両が走行していると判定する
ことを特徴とする付記1、2もしくは4に記載の車両検知装置。
(付記6)
前記判定部は、前記第1の対象物が前記第1のレーダに最初に検知された検知時刻と、前記第2の対象物が前記第2のレーダに最初に検知された検知時刻の差分を表す検知時刻差分値を、所定の時間閾値と比較し、
前記検知時刻差分値が前記時間閾値よりも小さい場合、前記第1のレーダが設置されている車線と、前記第2のレーダが設置されている車線のいずれも車両が走行していると判定する
ことを特徴とする付記1、2もしくは4に記載の車両検知装置。
(付記7)
前記判定部は、前記第1のレーダが前記第1の対象物から受信した受信電力と、前記第2のレーダが前記第2の対象物から受信した受信電力の差分を表す受信電力差分値を、所定の電力差閾値と比較し、
前記受信電力差分値が前記電力差閾値よりも小さい場合、前記第1のレーダが設置されている車線と、前記第2のレーダが設置されている車線のいずれも車両が走行していると判定する
ことを特徴とする付記1、3もしくは4に記載の車両検知装置。
(付記8)
第1の車線に設置された第1のレーダと、
前記第1の車線に隣接する第2の車線に設置された第2のレーダと、
各レーダから、検知された対象物と前記対象物を検知したレーダの間の距離を表す検知距離、前記対象物の検知時刻、および、前記対象物からの受信電力を取得する取得手段と、
前記第1のレーダにより検知された第1の対象物と、前記第2のレーダにより検出された第2の対象物の間の距離が第1の閾値以下の場合に、前記第1の対象物の最新の検知距離を第2の閾値と比較し、さらに、前記最新の検知距離を前記第2の閾値より大きい第3の閾値と比較する距離比較手段と、
前記第1の対象物の検知距離と前記第2の対象物の検知距離のうち、最も短い距離を観測した距離観測レーダを特定する距離観測レーダ特定手段と、
前記第1の対象物の検知時刻と前記第2の対象物の検知時刻のうち、最も早い検知時刻を観測した時刻観測レーダを特定する時刻観測レーダ特定手段と、
前記第1および第2の対象物からの受信電力のうちで最も大きい受信電力を受信した受信レーダを特定する受信レーダ特定手段と、
前記最新の検知距離が前記第3の閾値以上の場合、前記時刻観測レーダが設置されている車線を車両が走行していると判定し、前記最新の検知距離が前記第3の閾値未満で前記第2の閾値以上の場合、前記距離観測レーダが設置されている車線を車両が走行していると判定し、前記最新の検知距離が前記第2の閾値未満である場合、前記受信レーダが設置されている車線を車両が走行していると判定する判定手段
を備えることを特徴とする車両検知システム。