以下、一実施形態について、図面を参照しながら説明する。なお、図面の説明において同一要素には同一符号を付し、重複する説明を省略する。図面には必要に応じてXYZ直交座標系が示され、本実施形態では、X軸方向及びY軸方向が水平方向に対応し、Z軸方向が鉛直方向に対応する。
図1は、一実施形態に係る物体検出装置を含む検出システムを示す概略構成図である。図2は、図1に示されるレーザ走査ユニットからのレーザ光の照射領域を水平方向から見た図である。図3は、図1に示されるレーザ走査ユニットからのレーザ光の照射領域を鉛直方向から見た図である。図4の(a)~図4の(c)は、レーザ走査ユニットによるフレーム走査を説明するための図である。
図1に示される検出システム1は、監視地点に位置する物体を検出するシステムである。監視地点は、任意に設定され、例えば、交差点、合流地点、又は直進道路の途中に設定される。検出対象となる物体は、例えば、車両、自転車、又は人である。検出システム1は、監視地点に向けてレーザ光を照射し、当該レーザ光の反射光に基づいて物体を検出する。検出システム1は、レーザ光の反射光に基づいて、例えば、ある時刻の監視地点に存在する物体の位置及び姿勢(向き)を特定し、特定した物体に関する情報を検出結果として出力する。検出システム1は、レーザレーダ、ライダー(LiDAR:Light Detection and Ranging)、又はLaser Range Finderとも称される。検出システム1は、レーザ走査ユニット2と、ユニット制御部3と、物体検出装置10と、を備えている。
レーザ走査ユニット2は、監視地点に向けてレーザ光を照射し、照射したレーザ光の反射光を受光するセンサ装置である。図2に示されるように、レーザ走査ユニット2は、地上に設置された電柱又は支柱等の支持部材30に固定されている。なお、支持部材30は、電柱に限られず、建築物の壁等であってもよい。レーザ走査ユニット2は、物体を上方から見下ろすことができる高さにおいて支持部材30に固定されている。レーザ走査ユニット2は、地面Gに向けてレーザ光を照射する。
レーザ走査ユニット2は、レーザ光の照射方向(照射位置)を変更可能に構成されている。レーザ走査ユニット2は、レーザ光を発生する1又は複数の発光素子を備えている。レーザ走査ユニット2は、例えば、レーザ光の照射方向を変更するミラーを備えている。あるいは、レーザ走査ユニット2は、レーザ光の照射方向を変更するために、発光素子の向きを変更する回転機構等を備えていてもよい。レーザ走査ユニット2は、照射領域IR内に複数のレーザ光を照射する。照射領域IRは、レーザ走査ユニット2によるレーザ光の照射が可能な範囲である。
レーザ走査ユニット2は、照射領域IRに対してライン走査(ラインスキャン)を繰り返し行う。具体的には、レーザ走査ユニット2は、照射領域IRに含まれる複数の走査線のそれぞれに向けて順にレーザ光を照射することでライン走査を繰り返し行う。複数の走査線のそれぞれは、照射領域IR内に設定される仮想的な線であり、レーザ走査ユニット2から照射されるレーザ光の照射位置(照射目標位置)を結ぶことによって構成される。複数の走査線は、例えば地面G上に設定される。本実施形態では、複数の走査線は、X軸方向(第1方向)に沿って延びており、Y軸方向(第2方向)に一定の間隔で配列されている。ここでは、レーザ走査ユニット2に最も近い走査線から、レーザ走査ユニット2から最も遠い走査線に向かう走査線の順番を配列順と称する。複数の走査線のそれぞれは、X軸方向に沿って直線状に延びていてもよく、X軸方向に沿って円弧状に延びていてもよい。なお、レーザ走査ユニット2は、1つの走査線に対して複数のレーザ光を互いに略同一のタイミングで照射してもよく、互いに異なるタイミングで当該走査線上の複数の照射位置に向けて複数のレーザ光を当該走査線の端から順に照射してもよい。
本実施形態では、レーザ走査ユニット2は、複数の走査線に対してライン走査を順に行う。以降の説明では、複数の走査線に対してライン走査を一通り行うことによって照射領域IRの全領域にわたってレーザ光を照射することを「フレーム走査」と称する。レーザ走査ユニット2は、レーザ走査ユニット2に最も近い走査線から、レーザ走査ユニット2から最も遠い走査線に向かう方向、又は、レーザ走査ユニット2から最も遠い走査線から、レーザ走査ユニット2に最も近い走査線に向かう方向に、フレーム走査を行う。
図4の(a)~図4の(c)に示されるように、本実施形態では、レーザ走査ユニット2は、1回のフレーム走査あたりN回(Nは2以上の整数)のライン走査を行う。レーザ走査ユニット2は、1回目のフレーム走査では、配列順に、N回のライン走査を行う(図4の(a)参照)。レーザ走査ユニット2は、2回目のフレーム走査では、配列順と反対の順番に、N回のライン走査を行う(図4の(b)参照)。以降、レーザ走査ユニット2は、1回目のフレーム走査と同様のフレーム走査と、2回目のフレーム走査と同様のフレーム走査と、を交互に繰り返す。つまり、奇数番目のフレーム走査では、レーザ走査ユニット2は、配列順にN回のライン走査を行う。偶数番目のフレーム走査では、レーザ走査ユニット2は、配列順と反対の順番にN回のライン走査を行う。
照射領域IR内には、監視領域SRが含まれる。監視領域SRは、略直方体状に区画される空間であり、監視対象として予め設定される。つまり、検出システム1では、監視領域SR内に位置している物体が検出され得る。監視領域SRは、鉛直方向(Z軸方向)から見て矩形状である(図3参照)。レーザ走査ユニット2は、レーザ光の反射光を受光し、受光した反射光に応じた電気信号(受光信号)を生成する。レーザ走査ユニット2は、レーザ光の照射位置を示す情報とともに、生成した受光信号を物体検出装置10に出力する。
ユニット制御部3は、レーザ走査ユニット2の制御を行うコンピュータである。ユニット制御部3は、CPU(Central Processing Unit)、RAM(Random Access Memory)及びROM(Read Only Memory)等を備えている。ユニット制御部3は、例えば、レーザ走査ユニット2を収容する筐体内に設けられる。ユニット制御部3は、レーザ走査ユニット2に制御信号を送信することにより、レーザ光の照射位置、及びレーザ光を照射するタイミングを制御する。例えば、ユニット制御部3は、レーザ走査ユニット2のミラーを駆動させる制御信号を送信することで、ミラーの角度を調整し、レーザ光の照射位置を変化させる。ユニット制御部3は、レーザ走査ユニット2に対する制御内容に関する制御情報を物体検出装置10に送信する。制御情報は、例えば、レーザ光の照射位置、及び当該レーザ光の照射タイミング(照射開始時刻)を示す情報を含む。
物体検出装置10は、レーザ走査ユニット2から出力される受光信号を処理する装置である。具体的には、物体検出装置10は、レーザ走査ユニット2から出力される受光信号及びユニット制御部3から出力される制御情報に基づいて監視領域SRに位置している物体を検出するとともに、検出結果を外部に出力する。物体検出装置10は、物理的には、CPU、RAM及びROM、並びに入力装置及び出力装置等のハードウェアを備えるコンピュータとして構成される。物体検出装置10は、例えば、レーザ走査ユニット2を収容する筐体内に設けられる。なお、ユニット制御部3と物体検出装置10とは、物理的に同一のコンピュータによって構成されてもよい。
物体検出装置10は、機能的には、取得部11と、生成部12と、除去部13と、合成部14と、付与部15と、補正部16と、出力部17と、を備えている。
取得部11は、ライン走査ごとに、複数の計測点に関する複数の計測点情報を取得する。複数の計測点情報のそれぞれは、計測点の位置を示す位置情報及び計測点を生成(反射光を受光)した時刻情報を含む。計測点情報に含まれる計測点の位置情報は、照射領域IR内におけるレーザ光の反射位置を示しており、レーザ光の反射光に基づいて得られる。本実施形態では、計測点の位置情報は、XYZ直交座標系で表され、水平方向におけるレーザ光の反射位置を示すX軸方向及びY軸方向の座標、及び鉛直方向でのレーザ光の反射位置を示すZ軸方向の座標(高さ情報)を含む。なお、計測点の位置情報は、極座標系によって表されてもよい。取得部11は、生成(取得)した複数の計測点情報を生成部12に出力する。
生成部12は、ライン走査ごとに、取得部11から複数の計測点情報を受け取ると、複数の計測点情報に基づいて、仮想的な矩形物体を生成する。具体的には、生成部12は、仮想的な基準線SL(図8の(a)参照)に対する傾きを示す物体角度を算出する。生成部12は、Z軸方向から見た監視領域SRに対応する仮想的な領域内に、基準線SLに対して物体角度を有する矩形状の矩形物体を生成する。本実施形態では、生成部12は、複数の計測点情報に含まれる位置情報に基づいて、矩形状の矩形物体を生成する。生成部12は、抽出部21と、グループ化部22と、角度算出部23と、変換部24と、を備えている。
抽出部21は、ライン走査ごとに、取得部11から受け取った複数の計測点情報から監視領域SR内に含まれる計測点の計測点情報を抽出する。抽出部21は、抽出した複数の計測点情報をグループ化部22に出力する。
グループ化部22は、ライン走査ごとに、抽出部21から複数の計測点情報を受け取ると、複数の計測点情報をグループ化(クラスタリング)する。グループ化部22は、複数の計測点情報に基づいて、互いに近接する計測点同士を一つの集合(クラスタ)に設定する。グループ化部22は、グループ化された複数の計測点情報を角度算出部23に出力する。
角度算出部23は、ライン走査ごとに、グループ化部22から複数の計測点情報を受け取ると、物体角度を算出する。具体的には、角度算出部23は、集合ごとに、当該集合に含まれる計測点情報に基づいて矩形物体の物体角度を算出する。角度算出部23は、物体角度を示す物体角度情報、及び集合ごとに物体角度情報が対応付けられた複数の計測点情報を変換部24に出力する。
変換部24は、ライン走査ごとに、角度算出部23から物体角度情報及び複数の計測点情報を受け取ると、集合ごとに、物体角度情報及び複数の計測点情報に基づいて、仮想的な矩形物体を生成する。変換部24は、基準線SLに対して物体角度情報によって示される物体角度を有する矩形状の矩形物体を生成する。また、変換部24は、ライン走査ごとに、計測点情報に基づいて矩形物体の高さを算出する。変換部24(生成部12)は、生成した矩形物体を特定するための矩形情報を除去部13に出力する。矩形情報は、矩形物体の位置情報(例えば、矩形物体の四隅のX座標及びY座標)、矩形物体の高さを示す高さ情報、及び矩形物体に含まれる計測点に関する計測点情報を含む。
除去部13は、ライン走査ごとに、生成部12から矩形情報を受け取ると、少ない数の計測点情報に基づいて生成された矩形物体をノイズとして除去する。除去部13は、ノイズとして除去した矩形物体の矩形情報を除いた矩形情報を合成部14に出力する。
合成部14は、ライン走査ごとに、除去部13から矩形情報を受け取ると、矩形情報によって示される矩形物体に基づいて合成物体を生成する。合成物体は、仮想的な物体であり、基準線SLに対する傾きを示す合成角度を有する矩形状の物体である。また、合成部14は、ライン走査ごとに、矩形物体の高さに基づいて、合成物体の高さを算出する。合成物体の高さの算出では、物体の高さを示す物体高さと、合成物体を生成する際に用いられる角度算出高さと、が算出される。以降では、特に説明がない限り「合成物体の高さ」は角度算出高さを示している。合成部14は、フレーム走査ごとに、N回目のライン走査(最後のライン走査)で得られた合成物体を、検出物体として設定する。合成部14は、検出物体を特定するための検出物体情報を付与部15に出力する。検出物体情報は、例えば、検出物体の位置を示す物体位置情報と、検出物体の大きさを示す物体サイズ情報と、検出物体が有する物体高さを示す高さ情報と、を含む。物体位置情報は、例えば、検出物体の四隅のX座標及びY座標である。
付与部15は、フレーム走査ごとに、合成部14から検出物体情報を受け取ると、異なるフレーム(異なる時刻)において検出された検出物体に対し、物体ID(Identifier)の対応付けを行う。物体IDは、検出物体を一意に識別可能な識別情報である。付与部15は、検出物体を追跡することによって検出物体に物体IDを付与し、追跡結果を生成する。付与部15は、生成した追跡結果を補正部16に出力する。追跡結果は、物体ID、物体位置情報、及び物体サイズ情報を含む。
補正部16は、フレーム走査ごとに、付与部15から追跡結果を受け取ると、物体サイズ情報によって特定される検出物体の大きさ(サイズ)を補正する。補正部16は、検出物体の大きさを補正した場合、当該検出物体に関する物体サイズ情報を補正後の大きさを示す物体サイズ情報に更新する。また、補正部16は、例えば、フレーム走査の回数を示す情報とともに、追跡結果を物体検出装置10が備える記憶部(不図示)に保存する。補正部16は、追跡結果を出力部17に出力する。
出力部17は、フレーム走査ごとに、検出結果を出力する。本実施形態では、出力部17は、補正部16から追跡結果を受け取ると、追跡結果に基づいて検出結果を生成するとともに、検出結果を物体検出装置10の外部に出力する。検出結果は、例えば、物体ID及び物体位置情報を含む。なお、検出結果は、検出物体における互いに隣り合う二つの頂点それぞれの座標、検出物体の角度及び物体サイズ情報であってもよい。
次に、物体検出装置10が行う検出方法について説明する。図5は、物体検出装置が行う物体検出方法の一連の処理を示すフローチャートである。図6は、図5の矩形物体の生成処理を詳細に示すフローチャートである。図7は、図5の物体合成の生成処理を詳細に示すフローチャートである。図5に示される一連の処理は、例えば、一定の時間ごとに実施される。
まず、取得部11が、複数の計測点に関する複数の計測点情報を取得する(ステップS01)。ステップS01(取得ステップ)では、取得部11は、レーザ走査ユニット2から受光信号を受け取り、ユニット制御部3から制御情報を受け取る。取得部11は、受光信号及び制御情報に基づいて、レーザ光の計測点の位置(反射位置)を演算し、複数の計測点情報を生成する。例えば、取得部11は、制御情報から得られるレーザ光の照射位置と、制御情報から得られる当該レーザ光の照射開始時刻から反射光を受光した受光時刻までの時間と、に基づいてレーザ光の計測点の位置(反射位置)を演算する。なお、ユニット制御部3が、複数の計測点情報を生成し、複数の計測点情報を取得部11に出力してもよい。取得部11は、生成(取得)した複数の計測点情報を生成部12に出力する。
続いて、生成部12は、取得部11から複数の計測点情報を受け取ると、計測点情報に基づいて、仮想的な矩形物体を生成する(ステップS02)。本実施形態では、生成部12は、複数の計測点情報に含まれる計測点のX座標及びY座標に基づいて、矩形物体を生成する。
図6に示されるように、ステップS02の矩形物体の生成処理(生成ステップ)では、まず、抽出部21が、取得部11から受け取った複数の計測点情報から、監視領域SR内に含まれる計測点の計測点情報を抽出する(ステップS21)。これにより、監視領域SR以外の領域に存在する計測点(例えば、地面Gに位置する計測点)が除外される。抽出部21は、抽出した複数の計測点情報をグループ化部22に出力する。
続いて、グループ化部22は、抽出部21から複数の計測点情報を受け取ると、複数の計測点情報をグループ化(クラスタリング)する(ステップS22)。具体的には、グループ化部22は、複数の計測点情報に含まれる計測点のX座標及びY座標に基づいて、互いに近接する計測点同士を、同一の物体によって反射された反射光に基づいた計測点であると推定し、一つの集合(クラスタ)に設定する。グループ化部22は、例えば、複数の計測点のうちの一の計測点と他の計測点との間の距離が所定値未満である場合に、当該一対の計測点同士を同一の物体からの反射光に基づいた計測点であると推定する。一方、グループ化部22は、一の計測点と他の計測点との間の距離が所定値以上である場合、当該一対の計測点同士を異なる物体からの反射光に基づいた計測点であると推定する。上記所定値は、例えば、検出対象の物体の種別に応じて定められる。グループ化部22は、集合ごとにグループ化された複数の計測点情報を角度算出部23に出力する。
続いて、角度算出部23は、グループ化部22から複数の計測点情報を受け取ると、集合ごとに、矩形物体の物体角度を算出する(ステップS23)。具体的には、角度算出部23は、集合ごとに、当該集合に含まれる計測点情報に基づいて物体角度を算出する。例えば、角度算出部23は、集合ごとに、複数の計測点情報によって示される複数の計測点の位置情報のうちXY平面における座標から仮想的な近似直線を演算し、当該近似直線の基準線SLに対する傾きを物体角度に設定する。なお、角度算出部23は、物体角度を算出できない場合、物体角度を0°に設定する。
角度算出部23による物体角度の算出方法の一例を説明する。例えば、物体が車両である場合、複数の計測点は、Z軸方向から見た場合の車両が有する矩形形状の二辺(長辺及び短辺)に沿って、取得され得る。この算出方法の一例では、二辺のうちの基準線SLに対する傾きが小さい一方から取得された計測点が抽出され、当該計測点の位置情報に基づいて物体角度が算出される。
まず、角度算出部23は、一つの集合の中に含まれる複数の計測点情報(以下「算出対象の計測点情報」という)を一定数ごとに細分化することで、複数の部分集合を生成する。角度算出部23は、例えば、Y軸方向において端から順に、予め定められた点数ごとに、算出対象の計測点情報を細分化する。そして、角度算出部23は、部分集合ごとに、当該部分集合に含まれる複数の計測点情報の位置情報から最小二乗法を用いて近似直線を演算し、基準線SLと近似直線とのなす角度を基準線SLに対する傾きとして算出する。
続いて、角度算出部23は、複数の部分集合から傾きの変動が小さい範囲を特定する。例えば、角度算出部23は、部分集合ごとに、当該部分集合において算出された傾きが所定の閾値よりも小さいかどうかを判断する。角度算出部23は、傾きが所定の閾値よりも小さく、かつ互いに隣り合う部分集合同士をグループ化する。角度算出部23は、グループ化された部分集合を、傾きの変動が小さい範囲であると判定し、角度算出を行う算出範囲に設定する。複数の算出範囲が設定される場合には、角度算出部23は、算出範囲に含まれる計測点の数又は計測点同士の間の距離に基づいて、複数の算出範囲から1つの算出範囲を選択する。
続いて、角度算出部23は、算出範囲に含まれる全ての部分集合における複数の計測点の位置情報から、再度、最小二乗法を用いて近似直線を演算し、当該近似直線の基準線SLに対する傾きを物体角度として設定する。これにより、矩形物体の物体角度が算出される。なお、角度算出部23は、所定角度(例えば10度)単位で、矩形物体の物体角度を算出してもよい。角度算出部23は、物体角度を示す物体角度情報、及び集合ごとに物体角度情報が対応付けられた複数の計測点情報を変換部24に出力する。
続いて、変換部24は、角度算出部23から物体角度情報及び複数の計測点情報を受け取ると、集合ごとに、物体角度情報及び計測点情報に基づいて、物体角度を有する矩形物体を生成する(ステップS24)。具体的には、変換部24は、物体角度に応じて矩形物体の外縁が延びる方向を定め、計測点情報に含まれる複数の計測点のX座標及びY座標から矩形物体の外縁を定めることによって、矩形物体を生成する。例えば、変換部24は、基準線SLに対して物体角度を有する矩形物体が1つの集合内の全ての計測点を含むように、矩形物体の外縁を定める。
図8の(a)~図8の(c)は、生成部12による矩形物体の生成結果の一例を示す図である。図8の(a)~図8の(c)のそれぞれには、N回のライン走査のうちのA回目、B回目、及びC回目(A,B,CはN以下の正の整数)のライン走査において得られた計測点及び矩形物体が示されている。例えば、図8の(a)~図8の(c)に示される例では、物体Tが、X軸方向及びY軸方向に対して傾いた傾斜状態で監視領域SRに位置している。なお、説明を容易にするために、図8の(a)~図8の(c)に示される例では、物体Tは、A回目、B回目及びC回目のライン走査において互いに略同一の位置に存在している。図8の(a)に示されるように、A回目のライン走査における矩形物体A1は、基準線SLに対して傾いている。一方、図8の(b)及び(c)に示されるように、B回目及びC回目のライン走査における矩形物体B1,C1は、0°の物体角度を有する。
また、変換部24は、ステップS24において、矩形物体に含まれる計測点情報に基づいて当該矩形物体の高さを算出する。本実施形態では、変換部24は、矩形物体の高さを、当該矩形物体を生成する際に用いられた複数の計測点のうち最も高い計測点の高さ(Z座標)に設定する。例えば、変換部24は、矩形物体A1、矩形物体B1、及び矩形物体C1それぞれの高さを、矩形物体A1、矩形物体B1、及び矩形物体C1に含まれる複数の計測点のうちの最も高い計測点の高さに設定する。そして、変換部24(生成部12)は、生成した矩形物体を特定するための矩形情報を除去部13に出力する。これにより、ステップS02の矩形物体の生成処理が終了する。なお、変換部24は、矩形物体の高さを、当該矩形物体の物体角度を算出する際に定められた算出範囲に含まれる複数の計測点のうち最も高い計測点の高さに設定してもよい。
続いて、除去部13は、生成部12から矩形情報を受け取ると、少ない数の計測点に基づいて生成された矩形物体をノイズとして除去する(ステップS03)。例えば、除去部13は、所定数以下の計測点から生成された矩形物体をノイズとして除去する。なお、所定数は、ライン走査に応じて変更されてもよい。レーザ走査ユニット2から離間した走査線に対するライン走査では、互いに隣り合うレーザ光同士の間隔が大きいので、所定数は、レーザ走査ユニット2に近い走査線に対するライン走査の所定数よりも小さくしてもよい。例えば、所定数は、レーザ走査ユニット2に近い走査線に対するライン走査では3つに設定されてもよく、レーザ走査ユニット2から離間した走査線に対するライン走査では2つに設定されてもよい。除去部13は、ノイズとして除去した矩形物体の矩形情報を除いた矩形情報を合成部14に出力する。
続いて、合成部14は、除去部13から矩形情報を受け取ると、合成物体を生成する(ステップS04)。ステップS04の合成物体の生成処理(合成ステップ)では、合成部14は、今回のライン走査より1つ前の前回のライン走査において生成された前回の合成物体と、今回のライン走査において生成された今回の矩形物体と、に基づいて今回の合成物体を生成する。
なお、「今回」とは、1つのフレーム走査におけるn回目(nは1からNまでの整数)のライン走査において合成物体を生成する際の「n回目」のことを意味している。つまり、「今回のライン走査」とは、「n回目のライン走査」のことであり、「今回の合成物体」及び「今回の矩形物体」とは、n回目のライン走査において生成される合成物体及び矩形物体である。また、「前回」とは、「(n-1)回目」のことを意味している。つまり、「前回のライン走査」とは、n回目のライン走査の1つの前に行われる「(n-1)回目のライン走査」のことであり、「前回の合成物体」及び「前回の矩形物体」とは、(n-1)回目のライン走査において生成される合成物体及び矩形物体である。なお、(n-1)回目のライン走査における走査線とn回目のライン走査における走査線とは、互いに隣り合う。
図7を用いて、ステップS04の合成物体の生成処理について詳細に説明すると、まず、合成部14は、今回の矩形物体が前回の合成物体と重なるかどうかを判断する(ステップS41)。合成部14は、1又は複数の今回の矩形物体から1つの矩形物体を選択し、1又は複数の前回の合成物体から1つの合成物体を比較対象として選択する。合成部14は、1回目のライン走査では、前回の合成物体が存在しないので、今回の矩形物体は前回の合成物体と重ならないと判断する。なお、2回目以降のライン走査において、当該ライン走査よりも前のライン走査において矩形物体が生成されずに、前回の合成物体が存在しない場合も、1回目のライン走査と同様に、今回の矩形物体は前回の合成物体と重ならないと判断する。合成部14は、今回の矩形物体の一部と前回の合成物体の一部とが互いに重なれば、今回の矩形物体が前回の合成物体と重なると判断する。
ステップS41において、合成部14は、今回の矩形物体が前回の合成物体と重なると判断した場合(ステップS41:YES)、今回の矩形物体の物体角度が前回の合成物体の合成角度と一致するかどうかを判断する(ステップS42)。合成部14は、今回の矩形物体の物体角度と前回の合成物体の合成角度とが一致すると判断した場合(ステップS42:YES)、前回の合成物体の合成角度(今回の矩形物体の物体角度)を今回の合成物体の合成角度として用いる(設定する)。そして、合成部14は、今回の合成物体を生成する(ステップS43)。ステップS43の処理は後述する。
なお、合成部14は、前回の合成物体の合成角度と今回の矩形物体の物体角度とが互いに完全に一致する場合だけでなく、前回の合成物体の合成角度と今回の矩形物体の物体角度との間に多少の差がある場合にも、前回の合成物体の合成角度と今回の矩形物体の物体角度とが互いに一致すると判断してもよい。例えば、合成部14は、前回の合成物体の合成角度と今回の矩形物体の物体角度との角度差が、所定の閾値よりも小さい場合に、前回の合成物体の合成角度と今回の矩形物体の物体角度とが互いに一致すると判断してもよい。また、合成部14は、上述の角度差が、所定の閾値以上である場合に、前回の合成物体の合成角度と今回の矩形物体の物体角度とが互いに一致しないと判断してもよい。所定の閾値は、例えば、10度以下の値に設定されてもよい。
一方、ステップS42において、合成部14は、今回の矩形物体の物体角度が前回の合成物体の合成角度と一致しないと判断した場合(ステップS42:NO)、前回の合成物体と今回の矩形物体との高さを比較する(ステップS44)。続いて、合成部14は、今回の合成物体の合成角度を算出する(ステップS45)。ステップS45では、合成部14は、前回の合成物体の高さと今回の矩形物体の高さとの大小関係に応じて、異なる合成角度を算出(設定)する。具体的には、合成部14は、前回の合成物体の高さが今回の矩形物体の高さよりも小さい場合には、前回の合成物体の合成角度を今回の合成物体の合成角度として用いる(設定する)。一方、合成部14は、今回の矩形物体の高さが前回の合成物体の高さよりも小さい場合には、今回の矩形物体の物体角度を今回の合成物体の合成角度として用いる(設定する)。
続いて、合成部14は、フレーム走査の方向が、レーザ走査ユニット2から離れる向きであるかどうかを判断する(ステップS46)。ステップS46において、合成部14は、フレーム走査の方向がレーザ走査ユニット2から離れる向きであると判断した場合(つまり、奇数番目のフレーム走査の場合)(ステップS46:YES)、合成部14は、今回の合成物体を生成する(ステップS43)。具体的には、合成部14は、今回の合成角度を有するとともに前回の合成物体及び今回の矩形物体を包含するように、前回の合成物体と今回の矩形物体とを合成することによって今回の合成物体を生成する。ステップS42において、今回の矩形物体の物体角度が前回の合成物体の合成角度と一致すると判断された場合も、同様に合成が行われることで今回の合成物体が生成される。ステップS43では、前回の合成物体の全体と今回の矩形物体の全体とを包含するように、今回の合成物体が生成される(図9の(a)及び図10の(a)参照)。
一方、ステップS46において、合成部14は、フレーム走査の方向が、レーザ走査ユニット2から離れる向きではないと判断した場合(つまり、偶数番目のフレーム走査の場合)(ステップS46:NO)、前回の合成物体の一部と今回の矩形物体とを合成する(ステップS47)。具体的には、合成部14は、前回の合成物体の一部と今回の矩形物体とを包含するように前回の合成物体の一部と今回の矩形物体とを合成することで、今回の合成物体を生成する。合成部14は、今回の合成物体の大きさ(面積)が、前回の合成物体の全体と今回の矩形物体の全体とを包含する矩形状の領域よりも小さくなるように、今回の合成物体の外縁を設定する。本実施形態では、合成部14は、今回の矩形物体を包含し、かつ、外縁が前回の合成物体の中心EPを通るように、前回の合成物体の一部と今回の矩形物体とを合成することによって今回の合成物体を生成する(図10の(b)参照)。また、合成部14は、ステップS45で算出された今回の合成角度を有するように今回の合成物体を生成する。なお、ステップS47において、合成部14は、今回の矩形物体を今回の合成物体として用いてもよい(設定してもよい)。換言すると、合成部14は、今回の矩形物体と、前回の合成物体のうちの今回の矩形物体と重なる一部と、を合成してもよい。この場合、今回の合成物体の合成角度及び高さは、今回の矩形物体の物体角度及び高さに設定されてもよい。
また、ステップS43及びステップS47では、合成部14は、今回の合成物体の高さを算出する。本実施形態では、今回の矩形物体の物体角度が前回の合成物体の合成角度と一致するかどうかによらずに、前回の合成物体の高さと今回の矩形物体の高さとの大小関係に応じて、今回の合成物体の高さを設定する。具体的には、合成部14は、前回の合成物体の高さが今回の矩形物体の高さよりも小さい場合には、前回の合成物体の高さを今回の合成物体の高さとして用いる(設定する)。一方、合成部14は、今回の矩形物体の高さが前回の合成物体の高さよりも小さい場合には、今回の矩形物体の高さを今回の合成物体の高さとして用いる(設定する)。このように、今回の合成物体の高さ(角度算出高さ)は、前回の合成物体の高さ(角度算出高さ)と今回の矩形物体の高さとのうちの小さい値の高さに設定される。
このように、合成部14は、今回の矩形物体の物体角度と前回の合成物体の合成角度とが一致しないと判断した場合には、フレーム走査ごとに、フレーム走査の方向に応じた方法で合成物体を生成する。つまり、合成部14は、奇数番目のフレーム走査と偶数番目のフレーム走査とにおいて、互いに異なる方法で合成物体を生成する。
一方、ステップS41において、合成部14は、今回の矩形物体が前回の合成物体と重ならないと判断した場合(ステップS41:NO)、今回の矩形物体と前回の合成物体との合成を行わない。
続いて、合成部14は、今回の矩形物体(1つの矩形物体)を前回のライン走査において生成された合成物体全てと比較したかどうかを判断する(ステップS48)。合成部14は、今回の矩形物体を前回の合成物体全てと比較していないと判断した場合(ステップS48:NO)、前回のライン走査において生成された他の合成物体を比較対象として選択し、ステップS41~ステップS48の処理を再び行う。一方、合成部14は、今回の矩形物体を前回の合成物体全てと比較したと判断した場合(ステップS48:YES)、今回のライン走査において生成された矩形物体全てを前回の合成物体と比較したかどうかを判断する(ステップS49)。
合成部14は、今回のライン走査において生成された矩形物体全てを前回の合成物体と比較していないと判断した場合(ステップS49:NO)、次の矩形物体を選択し、ステップS41~ステップS49の処理を再び行う。一方、合成部14は、今回のライン走査において生成された矩形物体全てを前回の合成物体と比較したと判断した場合(ステップS49:YES)、ステップS04の合成物体の生成処理を終了する。
このように、ステップS04の処理において、合成部14は、当該ライン走査において生成された矩形物体(今回の矩形物体)と、前回のライン走査において生成された合成物体(前回の合成物体)との全ての組合せにおいて、互いの重なりの有無を判断する。合成部14は、前回の合成物体のいずれにも重ならない今回の矩形物体、及び、今回の矩形物体のいずれにも重ならない前回の合成物体を、今回の合成物体とする。なお、合成部14は、今回の矩形物体のいずれにも重ならなかった前回の合成物体を、この時点で(フレーム走査の途中で)、検出物体として設定してもよい。
ここで、図9の(a)~図10の(b)を用いて、合成部14による合成物体の生成処理の一例を説明する。図9の(a)及び図9の(b)並びに図10の(a)及び図10の(b)は、合成部14による合成物体の生成方法を説明するための図である。図9の(a)及び図9の(b)には、奇数番目のフレーム走査での合成物体の生成方法の一例が示されており、図10の(a)及び図10の(b)には、偶数番目のフレーム走査での合成物体の生成方法の一例が示されている。
図9の(a)には、A回目のライン走査(第1ライン走査)の次に行われるB回目のライン走査(第2ライン走査)における合成物体の生成方法が示されている。図9の(b)には、B回目のライン走査(第1ライン走査)の次に行われるC回目のライン走査(第2ライン走査)における合成物体の生成方法が示されている。A回目のライン走査における走査線(第1走査線)とB回目のライン走査における走査線(第2走査線)とは互いに隣り合っており、B回目のライン走査における走査線(第1走査線)とC回目のライン走査における走査線(第2走査線)とは互いに隣り合っている。A回目のライン走査における走査線、B回目のライン走査における走査線、及びC回目のライン走査における走査線は、この順で、レーザ走査ユニット2から離れる方向に配列されている。
なお、ここでは、A回目のライン走査がN回のライン走査のうち1回目のライン走査であると仮定する。A回目のライン走査では、前回の合成物体が存在しないので、合成部14は、A回目のライン走査で生成された矩形物体A1(第1矩形物体)(図8の(a)参照)をA回目のライン走査における合成物体A2(第1合成物体)とすることによって、合成物体A2を生成する。なお、矩形物体A1と合成物体A2とは同一であるので、合成物体A2の合成角度(第1合成角度)及び高さは、矩形物体A1の物体角度(第1物体角度)及び高さと同一である。
続いて、図9の(a)に示されるように、B回目のライン走査では、合成物体A2と、B回目のライン走査において生成された矩形物体B1(第2矩形物体)とが互いに重なっているので、合成物体A2と矩形物体B1とに基づいて、合成物体B2(第2合成物体)が生成される。具体的には、合成物体A2の合成角度と矩形物体B1の物体角度(第2物体角度)とが異なっており、合成物体A2の高さ(第1高さ)が矩形物体B1の高さ(第2高さ)よりも小さいので、合成部14は、合成物体A2の合成角度を、合成物体B2の合成角度(第2合成角度)として設定し、合成物体A2の高さを合成物体B2の高さとして設定する。そして、合成部14は、合成物体B2の外縁を、合成物体B2が合成物体A2及び矩形物体B1の全体を包含するように設定する。ここでは、合成物体B2の外縁は、合成物体A2の三辺に重なり、かつ、矩形物体B1の1つの頂点を通るように、設定される。このようにして、合成物体B2が生成される。
続いて、図9の(b)に示されるように、C回目のライン走査では、合成物体B2(第1合成物体)と、C回目のライン走査において生成された矩形物体C1(第2矩形物体)と、が互いに重なっているので、合成物体B2と矩形物体C1とに基づいて、合成物体C2(第2合成物体)が生成される。具体的には、合成物体B2の合成角度と矩形物体C1の物体角度とが異なっており、合成物体B2の高さ(第1高さ)が矩形物体C1の高さ(第2高さ)よりも小さいので、合成部14は、合成物体B2の合成角度を、合成物体C2の合成角度(第2合成角度)として設定し、合成物体B2の高さを合成物体C2の高さとして設定する。そして、合成部14は、合成物体C2の外縁を、合成物体C2が合成物体B2及び矩形物体C1の全体を包含するように設定する。ここでは、合成物体C2の外縁は、合成物体B2の四辺に重なる(一致する)ように設定される。このようにして、合成物体C2が生成される。
図10の(a)には、D回目のライン走査(第1ライン走査)の次に行われるE回目のライン走査(第2ライン走査)における合成物体の生成方法が示されている。図10の(b)には、E回目のライン走査(第1ライン走査)の次に行われるF回目のライン走査(第2ライン走査)における合成物体の生成方法が示されている。D回目のライン走査における走査線(第1走査線)とE回目のライン走査における走査線(第2走査線)とは互いに隣り合っており、E回目のライン走査における走査線(第1走査線)とF回目のライン走査における走査線(第2走査線)とは互いに隣り合っている。F回目のライン走査における走査線、E回目のライン走査における走査線、及びD回目のライン走査における走査線は、この順で、レーザ走査ユニット2から離れる方向に配列されている。
なお、ここでは、D回目のライン走査がN回のライン走査のうち1回目のライン走査であると仮定する。D回目のライン走査では、前回の合成物体が存在しないので、合成部14は、D回目のライン走査において生成された矩形物体(第1矩形物体)を、D回目のライン走査における合成物体D2(第1合成物体)とすることによって、合成物体D2を生成する。なお、D回目の矩形物体と合成物体D2とは同一であるので、合成物体D2の合成角度(第1合成角度)及び高さは、D回目の矩形物体の物体角度(第1物体角度)及び高さと同一である。
続いて、図10の(a)に示されるように、E回目のライン走査では、合成物体D2と、E回目のライン走査において生成された矩形物体E1(第2矩形物体)とが互いに重なっているので、合成物体D2と矩形物体E1とに基づいて、合成物体E2(第2合成物体)が生成される。具体的には、合成物体D2の合成角度と矩形物体E1の物体角度とが一致しているので、合成部14は、合成物体D2の合成角度(矩形物体E1の物体角度)を合成物体E2の合成角度(第2合成角度)として設定する。矩形物体E1の高さが合成物体D2の高さよりも小さいので、合成部14は、矩形物体E1の高さを合成物体D2の高さとして設定する。そして、合成部14は、合成物体E2の外縁を、合成物体E2が合成物体D2及び矩形物体E1の全体を包含するように設定する。ここでは、合成物体E2の外縁が、合成物体D2の二辺及び矩形物体E1の三辺に重なるように設定される。このようにして、合成物体E2が生成される。
続いて、図10の(b)に示されるように、F回目のライン走査では、合成物体E2(第1合成物体)と、F回目のライン走査において生成された矩形物体F1(第2矩形物体)とが互いに重なっているので、合成物体E2と矩形物体F1とに基づいて合成物体F2(第2合成物体)が生成される。具体的には、合成物体E2の合成角度と矩形物体F1の物体角度とが異なっており、矩形物体F1の高さ(第2高さ)が合成物体E2の高さ(第1高さ)よりも小さいので、合成部14は、矩形物体F1の物体角度(第1物体角度)を、合成物体F2の合成角度(第2合成角度)として設定し、矩形物体F1の高さを合成物体F2の高さとして設定する。そして、合成部14は、合成物体F2の外縁を、合成物体F2が矩形物体F1の全体を包含し、かつ、当該外縁が合成物体E2の中心EPを通るように設定する。ここでは、合成物体F2の外縁は、矩形物体F1の三辺と重なるように設定される。このようにして、合成物体F2が生成される。合成物体の中心は、合成物体の一対の長辺の中点同士を結ぶ線と、合成物体の一対の短辺の中点同士を結ぶ線と、の交点である。合成物体F2の大きさ(面積)は、矩形物体F1の全体と合成物体E2の全体とを包含する矩形状の領域よりも小さい。なお、矩形物体F1の全体と合成物体E2の全体とを包含する矩形状の領域の外縁は、例えば、矩形物体F1の三辺と重なり、かつ、合成物体E2の1つの頂点を通るように定められる。
次に、図11の(a)~図11の(c)を用いて、フレーム走査の方向に応じて、互いに異なる方法で合成物体を生成する理由を説明する。図11の(a)~図11の(c)は、フレーム走査の方向が異なる場合における合成結果を比較して説明するための図である。図11の(a)は、A回目、B回目、及びC回目のライン走査が、この順で行われる場合において、物体検出装置10(合成部14)による合成物体の生成結果を示している。図11の(b)は、C回目、B回目、及びA回目のライン走査が、この順で行われる場合において、第1比較例に係る物体検出装置による合成物体の生成結果を示している。第1比較例に係る物体検出装置は、本実施形態の物体検出装置10による合成物体の生成処理とは異なり、偶数番目のフレーム走査において前回の合成物体と今回の矩形物体との角度が異なっても、前回の合成物体の全体と今回の矩形物体の全体とを包含するように、これらの合成が行われる。図11の(c)は、物体検出装置10による合成結果と第1比較例に係る物体検出装置による合成結果との大きさを比較した結果を示している。
A回目のライン走査における走査線、B回目のライン走査における走査線、及びC回目のライン走査における走査線は、この順で、レーザ走査ユニット2から離れる方向に配列されている。A回目、B回目、及びC回目のライン走査で得られる矩形物体A1、矩形物体B1、及び矩形物体C1それぞれの大きさは、物体検出装置10及び第1比較例の物体検出装置のいずれの場合であっても同一であるとしている。また、A回目のライン走査において物体角度が適切に算出され、B回目及びC回目のライン走査では物体角度が適切に算出されなかった(物体角度の信頼性が低い)とする。ここでは、B回目及びC回目のライン走査では、物体角度が0°に設定されている。
図11の(a)では、適切に物体角度が算出された合成物体A2に、適切に物体角度が算出されなかった矩形物体B1が合成され、合成物体B2が生成されている。そして、合成物体B2に、適切に物体角度が算出されなかった矩形物体C1が合成され、合成物体C2が生成されている。一方、図11の(b)では、ともに適切に物体角度が算出されなかった合成物体C2及び矩形物体B1が最初に合成されて、合成物体B2が生成される。そして、合成物体B2に、適切に物体角度が算出された矩形物体A1が合成されて、合成物体A2が生成される。
図11の(c)に示されるように、A回目、B回目、及びC回目のライン走査それぞれにおいて、物体検出装置10及び第1比較例のいずれの場合でも同じ大きさの矩形物体が生成されたとしても、フレーム走査の方向(合成する順番)に応じて、得られる合成物体の大きさが異なっている。具体的には、フレーム走査の方向がレーザ走査ユニット2に近づく向きである場合(つまり、偶数番目のフレーム走査の場合)において、物体の高い位置から得られた矩形物体(合成物体)から順に合成が行われていくと、最終的に得られる合成物体A2が、フレーム走査の方向がレーザ走査ユニット2から離れる向きである場合(つまり、奇数番目のフレーム走査の場合)において最終的に得られる合成物体C2よりも大きくなるおそれがある。
これに対して、物体検出装置10では、偶数番目のフレーム走査において、前回の合成物体と今回の矩形物体との互いの角度が異なる場合には、今回の合成物体の外縁が、物体の低い位置での計測点に基づいて生成される今回の矩形物体の全体を囲み、かつ、物体の高い位置での計測点に基づいて生成される前回の合成物体の中心を通るように設定される。つまり、今回の合成物体は、前回の合成物体の全体及び今回の矩形物体の全体を包含しない。このため、今回の合成物体が奇数番目のフレーム走査で得られた合成物体よりも大きくなり過ぎることが抑制される。
ステップS04の合成物体の生成処理が終了すると、合成部14は、1つのフレーム走査が完了したかどうかを判断する(ステップS05)。物体検出装置10は、合成部14が1つのフレーム走査が完了していないと判断した場合(ステップS05:NO)、ステップS01~ステップS05の処理を再び行う。一方、合成部14は、1つのフレーム走査が完了したと判断した場合(ステップS05:YES)、検出物体の設定処理を行う。具体的には、合成部14は、N回目のライン走査において生成された合成物体(N回目の合成物体)を今回のフレーム走査における検出物体として設定する。そして、合成部14は、検出物体を特定するための検出物体情報を付与部15に出力する。検出物体情報は、例えば、検出物体の位置を示す物体位置情報と、検出物体の大きさを示すサイズ情報と、検出物体が有する物体高さを示す高さ情報と、を含む。検出物体が有する物体高さは、N回目の合成物体が有する物体高さに設定される。合成物体が有する物体高さの設定(算出)方法では、今回の合成物体を生成する際に、今回の合成物体における物体高さが、前回の合成物体が有する物体高さと今回の矩形物体の高さとのうちの大きい値の高さに設定される。
続いて、付与部15は、合成部14から検出物体情報を受け取ると、検出物体情報によって特定される検出物体に対して物体IDの対応付けを行う(ステップS06)。具体的には、付与部15は、検出物体の位置及び大きさ、並びに、過去の観測結果から推定される速度及び角速度等に基づいて、今回のフレーム走査において検出された検出物体が、過去のフレーム走査において検出された検出物体のいずれかと対応しているかを判断する。付与部15は、今回のフレーム走査において検出された検出物体が、過去のフレーム走査において検出された検出物体のいずれとも対応しないと判断した場合に、新規の検出物体として当該検出物体に新しい物体IDを付与する。付与部15は、今回のフレーム走査において検出された検出物体が、過去のフレーム走査において検出された検出物体と対応すると判断した場合に、対応する検出物体に付与されている物体IDを今回のフレーム走査において検出された検出物体に付与する。付与部15は、公知のアルゴリズムを用いて、各検出物体を追跡する。付与部15は、追跡結果を補正部16に出力する。追跡結果は、物体ID、物体位置情報、及び物体サイズ情報を含む。
続いて、補正部16は、付与部15から追跡結果を受け取ると、物体サイズ情報によって特定される検出物体の大きさ(サイズ)を補正する(ステップS07)。具体的には、補正部16は、今回のフレーム走査で得られた検出物体(今回の検出物体)の大きさを、今回の検出物体と同一の物体IDを有する前回のフレーム走査で得られた検出物体(前回の検出物体)の大きさに基づいて補正する。なお、補正部16は、前回の検出物体の大きさを、例えば、記憶部(不図示)に記憶されている前回のフレーム走査の追跡結果から取得する。
本実施形態では、補正部16は、物体IDが互いに同一である今回の検出物体と前回の検出物体との大きさを比較する。補正部16は、前回の検出物体の大きさが今回の検出物体よりも大きい場合、今回の検出物体の大きさを前回の検出物体の大きさに合わせるように補正する。具体的には、補正部16は、今回の検出物体の幅及び奥行きが、前回の検出物体の幅及び奥行きと略同一となるように、今回の検出物体の大きさを補正する。補正部16は、今回の検出物体の大きさを補正した場合、当該検出物体に関する物体サイズ情報を更新する。一方、補正部16は、前回の検出物体の大きさが今回の検出物体の大きさよりも小さい場合、今回の検出物体の大きさを変更しない。なお、検出物体同士の大きさの比較は、例えば、検出物体の幅と奥行きとを乗算することで得られる検出物体の面積を算出して行われる。そして、補正部16は、追跡結果を出力部17に出力する。
例えば、1番目のフレーム走査(第1フレーム走査)において、図9の(b)に示される合成物体C2が検出物体(第1検出物体)として検出され、2番目のフレーム走査(第2フレーム走査)において、図10の(b)に示される合成物体F2が検出物体(第2検出物体)として検出されたとする。第2検出物体は、第1検出物体よりも小さいので、補正部16は、第2検出物体の大きさを、第1検出物体の大きさに合わせる。この場合、補正部16は、第2検出物体の角度については変更せずに、第2検出物体の大きさ(幅及び奥行き)のみを変更する。
続いて、補正部16は、追跡結果を不図示の記憶部(例えば、フラッシュメモリ等の半導体メモリ)に保存する(ステップS08)。補正部16は、例えば、フレーム走査の回数を示す情報とともに、追跡結果を物体検出装置10が備える記憶部に保存する。
続いて、出力部17は、追跡結果を受け取ると、検出結果を出力する(ステップS09)。本実施形態では、出力部17は、追跡結果に基づいた検出結果を物体検出装置10の外部に出力する。出力部17は、例えば、追跡結果から物体IDと、物体IDに対応する検出物体の位置情報(例えば、検出物体の四隅それぞれのX座標及びY座標)とを検出結果として生成し、検出結果を外部の装置に出力する。検出結果を受け取った外部の装置は、例えば、検出結果に含まれる検出物体の位置情報に基づいて画面上に物体に対応する検出物体を描画する。
図12の(a)は、第2比較例に係る物体検出装置による検出結果の表示例を示す図である。図12の(b)は、図1に示される物体検出装置による検出結果の表示例を示す図である。図12の(a)及び図12の(b)に示される表示例では、交差点が監視領域SRとして設定されている。第2比較例に係る物体検出装置は、物体の姿勢によらずに、鉛直方向から見た監視領域SRの外縁と平行に延びる外縁を有する検出物体を生成する。監視領域SRに対応する領域内に、検出結果に含まれる検出物体に対応する画像が描画される。図12の(a)及び図12の(b)では、監視領域SR内において、車両T1がY軸方向に沿った姿勢で位置しており、車両T2がX軸方向及びY軸方向に対して傾いた姿勢で位置しており、車両T3がX軸方向に沿った姿勢で位置している。
図12の(a)に示されるように、第2比較例に係る物体検出装置による検出結果の表示例では、車両T1,T3に対応する検出物体G1,G3だけでなく、車両T2に対応する検出物体G2も、外縁がX軸方向及びY軸方向に延びる矩形状に生成される。これに対して、図12の(b)に示されるように、物体検出装置10による検出結果の表示例では、ライン走査ごとに物体角度が算出されるので、車両T1,T3に対応する検出物体G4,G6と異なり、車両T2に対応する検出物体G5は、車両T2の傾斜状態(姿勢)に応じた傾きを有する矩形状に生成される。
以上説明したように、物体検出装置10及び物体検出装置10が行う物体検出方法では、ライン走査ごとに、複数の計測点情報に基づいて、仮想的な基準線SLに対する傾きを示す物体角度を有する仮想的な矩形物体が生成される。このため、監視領域SRの外縁に対して傾いた傾斜状態で物体が監視領域SRに位置している場合、ライン走査ごとに生成される矩形物体には、当該物体の傾斜状態が反映され得る。また、ライン走査ごとの合成物体の生成処理において、今回の合成物体が、前回の合成物体と今回の矩形物体とに基づいて生成され、今回の合成物体の合成角度が、前回の合成物体の合成角度と今回の矩形物体の物体角度とに基づいて算出される。これにより、今回の合成物体の傾きを示す合成角度は、今回の矩形物体の物体角度とともに、前回の合成物体の合成角度に基づいて定まる。従って、N回のライン走査を行うことで得られる合成物体により設定される検出物体に、物体の傾斜状態を反映させることができるので、物体が監視領域SRの外縁に対して傾いた姿勢で位置していても、物体の実際の向きと、検出物体の向きとの間のずれが低減される。その結果、物体の検出精度を向上させることが可能となる。
前回の合成物体の合成角度と今回の矩形物体の物体角度とが同じ角度である場合、その角度が物体の傾きを示している可能性が高い。このため、ライン走査ごとの合成物体の生成処理において、今回の合成物体の合成角度もこれらの角度と同じ角度に設定され、前回の合成物体と今回の矩形物体とを包含するように今回の合成物体が生成される。その結果、今回の合成物体を精度よく生成することが可能となる。
一般に車両等の物体では、物体の高い位置よりも低い位置の表面積が大きい。このため、物体の低い位置にレーザ光が照射された場合には、より多くの計測点に基づいて物体角度が算出されるので、物体角度の信頼性が高い(例えば、図8の(a)及び図8の(c)参照)。物体検出装置10では、前回の合成物体と今回の矩形物体とのうち高さが小さい一方の角度が今回の合成角度として用いられるので、より信頼性が高い角度を有するように今回の合成物体が生成され得る。これにより、今回の合成物体の合成角度を、実際の物体の傾きに近づけることができる。その結果、物体の検出精度をより向上させることが可能となる。
奇数番目のフレーム走査では、フレーム走査の方向がレーザ走査ユニット2から離れる向きである。このため、物体の低い位置から順にレーザ光が照射されるので、前回の合成物体の合成角度のほうが、今回の矩形物体の物体角度よりも信頼性が高い。信頼性が高い角度を有する前回の合成物体を基準として、前回の合成物体に今回の矩形物体が合成され、さらに次回(n+1回目)以降のライン走査において生成された矩形物体が順に合成されていく。その結果、検出物体が物体の実際の大きさに比べ大きくなり過ぎることが抑制できる。
偶数番目のフレーム走査では、フレーム走査の方向がレーザ走査ユニット2に近づく向きである。このため、物体の高い位置から順にレーザ光が照射されるので、前回の合成物体の合成角度のほうが、今回の矩形物体の物体角度よりも信頼性が低い。信頼性が低い角度を有する前回の合成物体を基準として、前回の合成物体に今回の矩形物体が合成され、さらに次回以降のライン走査において生成された矩形物体が順に合成されていくと、合成物体が大きくなり過ぎてしまうおそれがある。これに対して、物体検出装置10では、偶数番目のフレーム走査において、前回の合成物体の合成角度と今回の矩形物体の物体角度とが一致しない場合、今回の合成物体の外縁が、今回の矩形物体の全体を囲み、かつ、前回の合成物体の中心を通るように設定される。このため、今回の合成物体では、物体の高い位置での計測点から得られる前回の合成物体の影響が低減される。その結果、物体の高い位置での計測点に基づいた矩形物体の影響を抑えつつ、今回の合成物体が生成されるので、合成物体が大きくなり過ぎることが抑制され得る。その結果、検出物体が物体の実際の大きさに比べ大きくなり過ぎることを抑制できる。なお、前回の合成物体の合成角度と今回の矩形物体の物体角度とが一致しない場合に、今回の矩形物体が今回の合成物体として設定されることによっても、同様の効果が奏される。
また、物体検出装置10では、一のフレーム走査において生成された検出物体(今回の検出物体)の大きさが、前回のフレーム走査において生成された検出物体(前回の検出物体)の大きさに基づいて補正される。このため、今回の検出物体が精度よく検出されなかったとしても、物体の実際の大きさと、今回の検出物体の大きさとのずれが抑制される。
具体的には、偶数番目のフレーム走査では、今回の矩形物体の全体及び前回の合成物体の全体を包含するように合成が行われることなく、今回の合成物体の外縁が、今回の矩形物体の全体を囲み、かつ、前回の合成物体の中心を通るように設定される場合がある。この場合に、検出物体が大きくなり過ぎることは抑制されるが、反対に検出物体が物体の実際の大きさよりも小さくなってしまうおそれがある。これに対して、本実施形態では、今回の検出物体の大きさが前回の検出物体の大きさよりも小さい場合に、今回の検出物体の大きさが前回の検出物体の大きさに合わせられる。従って、偶数番目のフレーム走査において、今回の検出物体が小さくなったとしても、1つ前に行われる奇数番目のフレーム走査で得られた前回の検出物体の大きさに合わせて、今回の検出物体の大きさが補正される。これにより、今回の合成物体の外縁が前回の合成物体の中心を通るように合成が行われることに起因して、物体の実際の大きさと今回の検出物体の大きさとにずれが生じることが抑制される。その結果、物体の検出精度を向上させることができる。
本発明の一実施形態について説明したが、本発明は上記実施形態に限られない。
奇数番目のフレーム走査において、フレーム走査の方向がレーザ走査ユニット2に近づく向きであってもよい。偶数番目のフレーム走査において、フレーム走査の方向がレーザ走査ユニット2から離れる向きであってもよい。レーザ走査ユニット2は、全てのフレーム走査において、フレーム走査の方向を単一の向きに設定してもよい。
鉛直方向から見た監視領域SRの形状は、矩形状でなくてもよい。例えば、鉛直方向から見た監視領域SRの形状は、円形状又は円弧(扇状)であってもよい。鉛直方向から見た監視領域SRの外縁の一部が外に向かって突出していてもよい。基準線SLは、任意に設定されてよく、いずれの方向に沿って延びていてもよい。
合成部14は、偶数番目のフレーム走査において、前回の合成物体と今回の矩形物体との角度が互いに一致しない場合に、前回の合成物体の全体と今回の矩形物体の全体とを包含するように、これらの合成を行ってもよい。
合成部14は、高さの大小関係に代えて、異なる条件に応じて、前回の合成物体の合成角度と今回の矩形物体とのいずれか一方の角度を、今回の合成物体の合成角度として設定してもよい。具体的には、合成部14は、前回の合成物体と今回の矩形物体とのうち計測点の数が多い一方の角度を、今回の合成物体の合成角度として設定してもよい。