(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024091630
(43)【公開日】2024-07-05
(54)【発明の名称】情報処理装置
(51)【国際特許分類】
G01S 17/875 20200101AFI20240628BHJP
G01S 17/89 20200101ALI20240628BHJP
【FI】
G01S17/875
G01S17/89
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022207702
(22)【出願日】2022-12-25
(71)【出願人】
【識別番号】508108903
【氏名又は名称】ヴァレオ・シャルター・ウント・ゼンゾーレン・ゲーエムベーハー
(74)【代理人】
【識別番号】100148301
【弁理士】
【氏名又は名称】竹原 尚彦
(74)【代理人】
【識別番号】100176991
【弁理士】
【氏名又は名称】中島 由布子
(74)【代理人】
【識別番号】100217696
【弁理士】
【氏名又は名称】川口 英行
(72)【発明者】
【氏名】ジェフ デストリメル
(72)【発明者】
【氏名】橋本 武
【テーマコード(参考)】
5J084
【Fターム(参考)】
5J084AA04
5J084AA05
5J084AA10
5J084AA20
5J084AB20
5J084CA31
5J084EA29
5J084EA40
(57)【要約】
【課題】ピッチ角の取得に冗長性を持たせる
【解決手段】情報処理装置1は、車両Vの位置情報を取得する位置情報取得部200と、車両Vから建物までの距離を取得する距離情報取得部203と、車両Vの位置情報と、建物までの第1距離に基づいて、建物の既知の高さ情報H_Knownを取得する高さ情報取得部205と、車両Vから建物までの第2距離に基づいて、建物の高さ情報H_Calを算出する高さ情報算出部206と、建物の既知の高さ情報H_Knownと、建物の高さ情報H_Calとを用いて、車両Vのピッチ角Pitchθを算出するピッチ角算出部207と、を有する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
移動体の位置情報を取得する位置情報取得部と、
前記移動体から対象物までの距離を取得する距離情報取得部と、
前記移動体の位置情報と前記対象物までの第1距離に基づいて、前記対象物の既知の高さ情報を取得する高さ情報取得部と、
前記移動体から前記対象物までの第2距離に基づいて、前記対象物の高さ情報を算出する高さ情報算出部と、
前記対象物の既知の高さ情報と、前記対象物の高さ情報とを用いて、前記移動体のピッチ角を算出するピッチ角算出部と、を有する、情報処理装置。
【請求項2】
請求項1において、
設定された照射範囲に向けて送信波を照射すると共に、前記照射範囲内にある物体で反射した反射波を受信する測定器と、
受信した前記反射波から生成される点群データに基づいて、前記照射範囲内にある対象物を検出する物体検出部と、を有し、
前記距離情報取得部は、
検出した対象物の点群データから、前記検出した対象物までの距離を算出する、情報処理装置。
【請求項3】
請求項2において、
前記照射範囲は、上下方向で複数層に分割されており、
前記高さ情報算出部は、
前記対象物の上辺で反射した送信波を送信した層と、前記対象物との第1交点の座標と、
前記測定器の設置状態を基準とした水平線に沿う層と、前記対象物との第2交点の座標と、
前記測定器の前記移動体での設置高さを用いて、前記対象物の高さ情報を算出する、情報処理装置。
【請求項4】
請求項3において、
前記測定器の設置状態を基準とした水平線に沿う層よりも上側に、少なくとも2つの層が設定されている、情報処理装置。
【請求項5】
請求項3において、
前記高さ情報算出部は、前記対象物の上辺で反射した送信波を送信した層の特定を繰り返し実行し、
新たに特定された層が、先に特定された層とは異なる層である場合に、前記第1交点の座標を、前記新たに特定された層で算出する、情報処理装置。
【請求項6】
請求項2において、
前記照射範囲は、上下方向で複数層に分割されており、
前記高さ情報算出部は、
前記測定器の前記移動体への設置状態を基準とした水平線に沿う方向にける前記対象物までの距離と、前記対象物の上辺で反射した送信波を送信した層における前記対象物の上辺までの距離と、前記対象物の上辺で反射した送信波を送信した層と前記水平線に沿う層との交差角と、前記測定器の前記移動体での設置高さと、を用いて、前記対象物の高さ情報を算出する、情報処理装置。
【請求項7】
請求項1から請求項6の何れか一項において、
前記距離情報取得部は、前記照射範囲内に複数の対象物が存在する場合、少なくとも2つの対象物までの距離をそれぞれ取得し、
前記高さ情報取得部は、前記距離を取得した対象物各々の既知の高さ情報を取得し、
前記高さ情報算出部は、前記距離を取得した対象物各々の高さ情報を算出し、
前記ピッチ角算出部は、前記距離を取得した対象物各々において、前記対象物の既知の高さ情報と、前記対象物の高さ情報とを用いてピッチ角を算出し、算出したピッチ角の平均値を前記移動体のピッチ角とする、情報処理装置。
【請求項8】
請求項1から請求項6の何れか一項において、
前記距離情報取得部は、前記照射範囲内に複数の対象物が存在する場合、少なくとも2つの対象物までの距離をそれぞれ取得し、
前記高さ情報取得部は、前記距離を測定した対象物のうち、前記既知の高さ情報を取得可能な対象物の既知の高さ情報を取得し、
前記高さ情報算出部は、前記既知の高さ情報を取得した対象物の高さ情報を算出し、
前記ピッチ角算出部は、前記既知の高さ情報を取得した対象物各々において、前記対象物の既知の高さ情報と、前記対象物の高さ情報とを用いてピッチ角を算出する、情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置に関するものである。
【背景技術】
【0002】
特許文献1には、車両の姿勢の推定を行う技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【0004】
車両の走行には、種々の情報が必要である。この種の情報の一例として、車両の路面に対する角度(以下、ピッチ角という)がある。ピッチ角は、水平面に対する車両の傾斜角に相当する。
このピッチ角は、例えば先進運転支援システム(ADAS:Advanced Driver Assistance Systems)や自動運転(AD:Automated Drive)において、物体検出、物体追跡、センサ融合、そして、アクチュエータの制御などに用いられる。
【発明の概要】
【発明が解決しようとする課題】
【0005】
ピッチ角は、一般に、慣性計測装置(IMU:Inertial Measurement Unit)から提供される。慣性計測装置は、加速度と角速度をそれぞれ3軸方向で検知するセンサである。
慣性計測装置が故障した場合や、慣性計測装置から提供される情報に誤りがあると、先進運転支援システムによる支援や自動運転などに支障が生じる可能性がある。そのため、先進運転支援システムによる支援や自動運転などを適切に実施するためには、ピッチ角の取得に冗長性を持たせる必要がある。
【課題を解決するための手段】
【0006】
本発明は、
移動体の位置情報を取得する位置情報取得部と、
前記移動体から対象物までの距離を取得する距離情報取得部と、
前記移動体の位置情報と前記対象物までの第1距離に基づいて、前記対象物の既知の高さ情報を取得する高さ情報取得部と、
前記移動体から前記対象物までの第2距離に基づいて、前記対象物の高さ情報を算出する高さ情報算出部と、
前記対象物の既知の高さ情報と、前記対象物の高さ情報とを用いて、前記移動体のピッチ角を算出するピッチ角算出部と、を有する構成の情報処理装置とした。
【発明の効果】
【0007】
本発明によれば、ピッチ角の取得に冗長性を持たせることができる。
【図面の簡単な説明】
【0008】
【
図1】情報処理装置の概略構成を説明する図である。
【
図2】車両に搭載されたセンサからのレーザ光の照射範囲を説明する図である。
【
図3】情報処理装置の処理ユニットの機能ブロック図である。
【
図4】建物の高さ情報の算出原理を説明する図である
【
図5】ピッチ算出処理を説明するフローチャートである。
【
図6】照射範囲における建物の検出過程を説明する模式図である。
【
図7】照射範囲内で検出した建物までの第1距離の算出を説明する模式図である。
【
図8】検出した建物の高さ情報の算出過程を説明するフローチャートである。
【
図9】照射範囲に複数の建物が検出された場合の第1距離の算出を説明する図である。
【
図10】照射範囲に複数の建物が検出された場合の第1距離の算出を説明する図である。
【
図11】建物の上辺に相当する点の並びを生成したスキャン層の特定の他の態様を説明する図である。
【
図12】建物の高さ算出ステップの変形例を説明するフローチャートである。
【
図13】変形例にかかるスキャン層を説明する図である。
【
図14】ピッチ角の算出の他の例を説明する図である。
【発明を実施するための形態】
【0009】
以下、本発明の実施形態を、車両Vに搭載された情報処理装置1に適用した場合を例に挙げて説明する。
図1は、情報処理装置1の概略構成を説明する図である。
図2は、車両Vに搭載されたセンサ15からのレーザ光の照射範囲IRを説明する図である。
【0010】
情報処理装置1は、車両Vの走行制御などに用いられる情報を生成する機能を有する。
情報処理装置1の機能として、次のものが例示される。
(a)車両Vの位置情報と、センサ15により取得した車両Vから対象物までの距離とを用いて、対象物の既知の高さ情報を取得する機能。
(b)センサ15により取得した車両Vから対象物までの距離と、対象物の既知の高さ情報とを用いて、車両Vのピッチ角(車両の水平線に対する傾き)を算出する機能。
【0011】
図1に示すように、情報処理装置1は、処理ユニット20と、記憶ユニット30と、入出力ポート(I/O)11と、を有する。処理ユニット20と、記憶ユニット30と、入出力ポート11は、バス10を介して互いに接続されている。
入出力ポート11には、IMU(Inertial Measurement Unit)12と、GPS(Global Positioning System)ユニット13と、通信ユニット14と、センサ15と、が接続されている。
【0012】
IMU12は、3次元の慣性運動(直交3事項方向の並進運動および回転運動)を検出する慣性計測装置である。IMU12は、3軸のジャイロ(図示せず)と、加速度計(図示せず)で構成される。IMU12は、角速度と、加速度と、姿勢角(ロール角、ピッチ角)と、方位角を算出する機能を有する。
【0013】
GPSユニット13は、複数の測位衛星STからの電波(GPS信号)を受信する機能を有する。
通信ユニット14は、無線、有線、そして携帯電話通信網などを介して、ネットワークNTに接続する機能を有する。通信ユニット14は、ネットワークNTを介して外部サーバESに接続する機能を有する。
【0014】
センサ15は、設定された照射範囲IRに向けて送信波を照射する照射部(図示せず)と、照射範囲内にある物体で反射した反射波を受信する受信部(図示せず)を、有する測定器である。
本実施形態では、センサ15として、LiDAR(ライダー)を採用している。
LiDARは、レーザ光(送信波)を照射範囲IRに向けて照射し、照射範囲IR内にある物体で反射したレーザ光(反射波)を受光する。
センサ15の計測データ(LiDARデータ)の処理により、照射範囲IR内にある物体までの距離や、物体の形状を計測できる。
【0015】
本実施形態では、
図2に示すように、センサ15は、車両Vの前部で、車両前方側を向いて設置されている。車両Vにおいてセンサ15は、路面Rから上方に設置高さh分だけ離れた位置に設置されている。センサ15は、車両Vの前方側に向けてレーザ光を照射する。センサ15は、上下方向の予め決められた範囲(
図2参照)内と、水平線方向(車両Vの幅方向)の予め決められた範囲(
図1参照)内に、レーザ光を照射する。本実施形態では、レーザ光が照射される範囲を「照射範囲IR」と標記する。
【0016】
本実施形態では、レーザ光の照射範囲IRが、上下方向で複数の層(スキャン層)に区画されている。
図2では、説明の便宜上、スキャン層の総数が「13」である場合が例示されている。
図2に示す例の照射範囲IRの場合、基準スキャン層L0を基準として、上側に6つのスキャン層(L1からL6)と、下側に6つのスキャン層(L-1からL-6)が設定されている。
ここで、基準スキャン層L0とは、センサ15を搭載した車両Vのピッチ角が0°である場合に、センサ15から水平線HL方向に照射されるレーザ光によるスキャン層である。
各スキャン層は、隣接する他のスキャン層に対して同じ角度差θを持っている。
【0017】
本実施形態では、隣接するスキャン層の間の角度差θは同じであるが、例えば、基準スキャン層L0の上側と、下側で異なる角度差となるように設定しても良い。
また、隣接するスキャン層の間の角度差θは同じである場合には、基準スキャン層L0を有さないセンサであっても良い。かかる場合、L1層とL-1層でスキャンした物体との距離の中間値を演算することで、基準スキャン層L0が存在する場合のL0による測定値を推定することができる。
なお、以下の説明においては、スキャン層を特定する場合に、スキャン層Lx(xは、任意の整数)と標記する場合がある。また、スキャン層の総数を示す場合に、Ln(nは、任意の整数)とも標記する場合がある。
【0018】
図1に示すように、処理ユニット20は、GPU(Graphics Processing Unit)などの演算処理装置である。
記憶ユニット30は、例えば、SSD(ソリッド・ステート・ドライブ)、HDD(ハードディスクドライブ)、そしてメモリなどの情報記録媒体である。
記憶ユニット30には、マップデータ31(高精度3次元地図:HDマップ)が記憶されている。マップデータ31では、道路やトンネルなどのインフラ構造物や、建物など周辺環境にあるオブジェクト(物体)に関する情報が、座標データに関連付けられて登録されている。ここで、座標データとは、インフラ構造物や物体の位置を、測地基準系における緯度・経度で表すデータである。
オブジェクトに関する情報には、オブジェクトの高さに関する情報(既知の高さ情報)や、建物の識別子が含まれている。また、道路に関する情報には、道路の水平線に対する傾斜角が含まれている。
ここで、建物の識別子とは、インフラ構造物や建物に割り当てられた固有の識別子である。識別子は、一例として、識別用の番号、記号、符号などを任意に組み合わせた識別用のラベルである。識別子の違いにより、インフラ構造物や建物を特定・識別・区別できるようになっている。なお、識別子は、インフラ構造物や建物に割り当てられた名称であっても良い。
【0019】
記憶ユニット30には、マップデータ31の他に、処理ユニット20で実施される各処理のプログラム32や、プログラム32による処理の過程で生成されるデータが記憶される。マップデータ31は、外部サーバESにも記憶されている。
【0020】
図3は、情報処理装置1の処理ユニット20の機能ブロック図である。なお、判定部209は、任意の構成であるが、後記する応用例の説明の都合で、機能ブロック中に記載している。
位置情報取得部200は、車両V(移動体)の位置情報を取得する。
具体的には、GPSユニット13が受信した複数の測位衛星ST(
図1参照)からの電波(GPS信号)に基づいて、車両Vの現在位置を示す位置情報を算出する。位置情報とは、車両Vの現在位置を、測地基準系における緯度・経度で表す座標データである。
【0021】
走査制御部201は、センサ15からの照射範囲IRへのレーザ光の照射を制御して、照射範囲IRの走査を制御する。
【0022】
物体検出部202は、照射範囲IR内に位置する対象物(物体)を検出する。
物体検出部202には、センサ15から計測データ(LiDARデータ)が入力される。物体検出部202は、計測データ(LiDARデータ)の処理により、照射範囲IR内に位置する対象物(物体)を検出する。
【0023】
前記したように、センサ15が照射したレーザ光は、照射範囲IR内にある物体の表面で反射する。センサ15は、物体の表面で反射したレーザ光(反射光)を受光する。センサ15では、受光したレーザ光(反射光)から、物体の表面のレーザ光を反射した点の集合である点群データを生成する。ここで、点群データの各点は、物体の表面に相当する。そのため、点群データを構成する各点の分布、そして各点までの距離から、レーザ光を反射した物体の表面の形状を計測できる。
よって、点群データを生成すると、照射範囲IR内に位置する対象物(物体)が、点の集合として特定される。
点群データの各点は、センサ15からの距離(距離情報)と、センサ15の設置面(水平線)に対する角度の情報(角度情報)を有している。
本実施形態のセンサ15では、物体の表面の各点までの距離と角度に基づいて、物体の表面の各点のセンサ基準系での位置情報(3次元空間におけるXYZ座標データ)が生成される。そして、センサ15が出力する計測データには、点群データと、点群データを構成する各点の距離情報、角度情報、位置情報が含まれている。
【0024】
よって、センサ15からの計測データが入力される物体検出部202では、点群データに基づいて、照射範囲IR内に位置する対象物(物体)を検出する。
【0025】
本実施形態では、検出する対象物として、マンションやビルディングなどの建物を想定している。
例えば、これらの建物は、直線状のエッジ(建物の角、建物の上辺など)を有しており、これら直線状のエッジに相当する部位が、点群テータにおいて特定が容易である。
一例として本実施形態では、エッジフィルタなどを利用して、点が直線状に連なった部位の有無などに基づいて、照射範囲IR内にある建物を検出している。
【0026】
距離情報取得部203は、センサ15から照射範囲IR内に存在する物体までの距離を取得する。
点群データの各点は、センサ15からの距離を特定する情報(距離情報)を含んでいる。
物体の表面の各点(点群データの各点)までの距離は、照射範囲IRへのレーザ光の照射から、照射範囲内の物体で反射した反射波を受信するまでの時間から算出される。
距離情報取得部203は、点群データの処理により、照射範囲IR内にある建物BLまでの距離、具体的には、建物の座標算出用の距離(第1距離)と、車両Vから建物までの距離(第2距離)と、車両Vから建物の上辺までの距離(第3距離)と、を取得する。
【0027】
図4は、建物の高さ情報H_Calの算出原理を説明する図である。
図4の(A)は、車両Vおよび基準スキャン層L0が、水平線HLに対して平行であり、ピッチ角Pitchθ=0である場合を示している。
図4の(B)は、車両Vのピッチ角が、路面上の凹凸により車両Vが水平線HLに対して僅かに傾いた場合、すなわち、ピッチ角Pitchθ≠0である場合を示している。
【0028】
建物の座標算出用の距離(第1距離:D1)は、車両Vから建物BL上の任意の1点までの距離である。
一例として、
図6の場合、建物BLaにおいて、車両V(センサ15)に最も近い位置にある角(エッジ)までの距離を算出している。ここで、建物の「角」とは、建物の2つの壁面が合流する部位を意味する。点群データでは、建物の角は、複数の点が上下方向に略直線状に連なった部位として検出される。この場合における「直線状に連なる」とは、建物の上から下まで一直線に連なっている必要は無い。少なくとも直線状のエッジを検出可能な長さで連なっていれば良い。
【0029】
なお、
図7に示すように、算出する建物BLaまでの距離D1は、道路の周囲にある設置物、例えば樹木やガードレールよりも高い位置にある建物上の点(
図7の場合には、点TG)までの距離であることが好ましい。
樹木やガードレールよりも上側では、建物以外にレーザ光を反射する可能性のある物体が存在する可能性が低い。そのため、樹木やガードレールの存在が、算出される建物までの距離に影響を及ぼす可能性を抑えることができる。
ここで、建物の座標算出用の距離D1は、必ずしも建物のエッジの部位で算出する必要は無い。距離を算出可能であれば、建物の壁面の部位で算出しても良い。
なお、道路の周囲に、建物以外の物体が存在しない場合には、距離D1を、建物までの最短距離、即ち基準スキャン層L0との交点TG’までの距離として採用しても良い。
【0030】
建物までの距離D2(第2距離)と、建物の上辺までの距離D3(第3距離)は、高さ情報算出部206における建物の高さ情報H_Calの算出時に参照される。
前記したようにセンサ15は、車両V前方の照射範囲IRに向けてレーザ光を照射する。
距離情報取得部203は、センサ15から基準スキャン層L0に沿って照射されたレーザ光の反射波から、センサ15から、基準スキャン層L0と建物との交点までの距離、すなわち、センサ15から建物までの距離D2を算出する(
図4参照)。
車両Vと建物が同じ水平線(水平面)上に位置する場合、照射範囲IR内の車両Vの正面側に位置する建物には、センサ15から基準スキャン層L0に沿って照射されるレーザ光が、最も短距離で到達する。そのため、センサ15から基準スキャン層L0に沿って照射されたレーザ光の反射波から算出した距離D2は、ピッチ角が0°の場合には車両Vから建物までの最短の距離となる。
なお、点群データの各点は、基準スキャン層との交差角の情報と対応づけられるので、この距離D2の算出と同時に、基準スキャン層L0と建物との交点のセンサ座標系での位置情報も算出される。
【0031】
建物の上辺までの距離D3は、距離情報取得部203が、建物の上辺に相当する点群を生成したスキャン層を特定し、センサ15から特定したスキャン層に沿って照射されたレーザ光の反射波から、センサ15から、特定したスキャン層と建物の上辺との交点までの距離、すなわち、センサ15から建物の上辺までの距離D3を算出する(
図4参照)。
なお、点群データの各点は、基準スキャン層との交差角の情報と対応づけられるので、この距離D3の算出と同時に、特定したスキャン層と、建物との交点のセンサ座標系での位置情報も算出される。
【0032】
建物座標算出部204は、位置情報取得部200が取得した車両V(移動体)の位置情報と、距離情報取得部203が取得した対象物までの距離D1(第1距離)に基づいて、検出した建物の位置情報(建物座標)、すなわち建物(対象物)の座標データを生成する。
【0033】
高さ情報取得部205は、座標データに基づいてマップデータ31を参照して、検出した建物(対象物)の既知の高さ情報H_Knownを取得する。
マップデータ31では、建物の識別子や、建物の高さ情報(既知の高さ情報)が、建物の座標データと関連付けて記憶されている。建物座標算出部204で算出した座標データに基づいてマップデータ31を参照すると、座標データに紐付けられた建物の識別子と、当該建物の高さ情報(既知の高さ情報)を取得できるようになっている。
高さ情報取得部205は、座標データ(測地基準系における緯度・経度)が一致するレコードに登録された建物の高さ情報を、検出した建物の既知の高さ情報として取得する。
なお、マップデータ31において、建物の識別子に関連付けて、高さの算出に利用できない旨のフラグがセットされている場合には、既知の高さ情報H_Knownの取得から除外されるようにしても良い。
【0034】
高さ情報算出部206は、照射範囲IR内で検出した建物の高さ情報H_Calを算出する。
具体的には、高さ情報算出部206は、(a)既知の高さ情報H_Knownを取得した建物の上辺に相当する点群を生成したスキャン層Lxを特定する。
(b)特定したスキャン層Lxと、既知の高さ情報H_Knownを取得した建物の上辺との交点の位置情報αを取得する。(c)既知の高さ情報H_Knownを取得した建物と、基準スキャン層L0との交点の位置情報βを取得する。(d)位置情報αと、位置情報βと、車両Vにおけるセンサの設置高さhとから、建物の高さ情報H_Calを算出する。
【0035】
図4の(A)の場合、スキャン層L4が、建物BLの上辺に相当する点群を生成したスキャン層Lxになる。
ここで、センサ15のレーザ光の出射点を点A、基準スキャン層L0に沿う方向における建物BLとの交点(レーザ光の反射点)を点B、スキャン層L4に沿う方向における建物BLの上辺との交点(レーザ光の反射点)を点C、基準スキャン層L0とスキャン層L4との交差角∠BACを、交差角θxとする。
【0036】
高さ情報算出部206は、センサ15から入力された計測データ(点群データ)から、スキャン層L4と建物BLとの交点Cの位置情報αを取得する。位置情報αでは、センサ座標系における交点Cの位置情報が、XYZ座標データとして規定されている。
さらに、高さ情報算出部206は、センサ15から入力された計測データ(点群データ)から、基準スキャン層L0と建物BLとの交点Bの位置情報βを取得する。位置情報βでは、センサ座標系における交点Bの位置情報が、XYZ座標データとして規定されている。
【0037】
ここで、位置情報α、βは、センサ15の位置を基準とした3次元空間における座標データである。すなわち、同じセンサ座標系のデータである。
そのため、位置情報αのZ成分座標と、位置情報βのZ成分座標との差分を取るだけで、
図4の(A)における点BC間の距離Dxが算出できる。
具体的には、位置情報αから位置情報βを減算する下記式(1)から距離Dxを算出できる。
Dx=位置情報αのZ座標-位置情報βのZ座標 ・・・(1)
【0038】
ここで、車両Vにおけるセンサ15の設置高さhを考慮すると、建物の高さ情報H_Calは、下記式(2)で表すことができる。
H_Cal=Dx+h ・・・(2)
【0039】
このように、高さ情報算出部206は、照射範囲IR内で検出した建物の高さ情報H_Calを、(a)既知の高さ情報H_Knownを取得した建物の上辺に相当する点群を生成したスキャン層Lxと、建物BLとの交点Cの位置情報αと、(b)基準スキャン層L0と建物BLとの交点Bの位置情報βと、(c)車両Vにおけるセンサの設置高さhと、から算出する。
なお、建物BLの高さと比べ、センサ15の設置高さは小さいため、精度を問題としない場合はhをゼロとみなしてもよい。
【0040】
ここで、
図4の(A)において車両Vが水平線HL上に位置しており、車両Vの水平線に対する傾きであるピッチ角がゼロ度(=0°)である場合、建物の既知の高さ情報H_Knownと、建物の算出した高さ情報H_Calとの関係は、下記式(3)で表現できる。
H_Known=H_Cal ・・・(3)
【0041】
一方、
図4の(B)に示すように、路面の凹凸等が原因で、車両Vが水平線HLに対して傾いていると、建物の既知の高さ情報H_Knownと、算出した建物の高さ情報H_Calとの間に、車両Vのピッチ角Pitchθに応じた差異Hが生じる。
この場合、上記式(3)は、下記式(4)で表すことができる。
H_Known=H_Cal+H ・・・(4)
【0042】
上記式(4)から、差異Hは、下記式(5)で表現できる。
H=H_Known-H_cal ・・・(5)
【0043】
ピッチ角算出部207は、建物の既知の高さ情報H_Knownと、算出した建物の高さ情報H_Calとの差異H(
図4の(B)参照)と、を用いて、車両Vのピッチ角Pitchθを算出する。
【0044】
車両Vが水平線に対して傾いているときのピッチ角Pitchθは、下記式(6)で表現できる。
Sin(Pitchθ)=H/D2 ・・・(6)
この式(6)から、ピッチ角(Pitchθ)は、下記式(7)で表現できる。
Pitchθ =sin-1(H/D2) ・・・(7)
【0045】
上記式(5)から、Hは、建物の既知の高さ情報H_Knownと、建物の算出した高さ情報H_Calから算出される値である。
建物の既知の高さ情報H_Knownは、記憶ユニット30に記憶されたマップデータ31から取得される。建物の算出した高さ情報H_CalとD2は、センサ15の計測データ(点群データ)から取得される。
【0046】
マップデータ更新部208は、通信ユニット14を介して外部サーバESに接続し、記憶ユニット30のマップデータ31よりも新しいマップデータが存在する場合には、外部サーバESから新しいマップデータをダウンロードして、記憶ユニット30に記憶されているマップデータ31を更新する。
【0047】
上記した処理ユニット20の機能ブロックの構成要素が実現する機能は、記憶ユニット30に記憶されたプログラム32や、外部サーバESに記憶されたプログラム(図示せず)により実現する。なお、処理ユニット20が実現する機能は、上記の態様にのみ限定されるものではない。
【0048】
以下、本実施形態にかかる情報処理装置1における処理の一例を説明する。
図5は、情報処理装置1で実施されるピッチ算出処理を説明するフローチャートである。
図6は、照射範囲IRにおける建物の検出過程を説明する模式図である。
図7は、照射範囲IR内で検出した建物までの距離D1の算出を説明する模式図である。
【0049】
情報処理装置1は、当該情報処理装置1を搭載した車両Vの走行時に、ピッチ算出処理を予め決められた実行間隔で繰り返し実行する。
【0050】
図5に示すように、ピッチ算出処理では、ステップS101において位置情報取得部200が、車両V(移動体)の現在位置を示す位置情報を取得する。
ステップS102において走査制御部201が、センサ15により、車両Vの前方に設定された照射範囲IR内にレーザ光を照射して、照射範囲IRの走査を実施する(ステップS102)。
センサ15は、照射範囲IR内にある物体の表面で反射したレーザ光(反射波)を受光すると、受光したレーザ光から、点群データを生成する。点群データは、物体の表面のレーザ光を反射した点(測定点)の集合である。
そして、センサ15は、生成した点群データを含む計測データを出力する。ここで、点群データは、以下の情報と対応づけることができる。
(a)点群データを構成する各点までの距離、
(b)点群データを構成する各点の角度(センサ15を通る水平線に対する角度)、
(c)点群データを構成する各点の位置情報(センサ座標系におけるXYZ座標データ)。
【0051】
物体検出部202は、センサ15から計測データが入力されると(ステップS103、Yes)、点群データの処理により、照射範囲IR内における建物の有無を確認する。
照射範囲IR内に少なくとも1つの建物の存在が確認されると(ステップS104、Yes)、ステップ105において、距離情報取得部203は、検出した建物までの距離D1(第1距離)を算出する。
【0052】
図6の場合、照射範囲IR内に建物BLaが位置している。そのため、物体検出部202は、ステップS103の処理により建物BLaの存在を検出することになる。
図7に示すように、ステップS105では、建物BLaの位置情報を取得するために、建物BLaまでの距離D1を算出する。そのため、建物BLa上の測定点TGは、周囲に存在する樹木やガードレール等の障害物の影響を受けない任意の高さ位置に設定される。これにより建物BLa上の測定点TGまでの距離D1が算出される。
【0053】
ステップS106において建物座標算出部204は、ステップS101で特定した車両Vの位置情報と、ステップS105で算出した建物までの距離D1に基づいて、検出した建物の座標を算出する。
図7の場合には、建物BLaの測地基準系の座標が算出されることになる。
【0054】
ステップS107において高さ情報取得部205は、算出した建物の座標に基づいてマップデータ31を参照して、検出された建物の既知の高さ情報H_Knownを取得する。
【0055】
ステップS108において、高さ情報算出部206は、点群データの処理により、検出した建物の高さ情報H_Calを算出する。
【0056】
図8は、検出した建物の高さ情報H_Calの算出過程を説明するフローチャートである。
高さ情報算出部206は、以下の手順を経て、建物の高さ情報H_Calを算出する。
始めに、高さ情報算出部206は、高さ情報H_Calを算出する対象となる建物を決定する(ステップS201)。具体的には、既知の高さ情報H_Knownを取得した建物を、高さ情報を算出する建物として決定する。
図6では、一つの建物BLaのみが検出されているので、建物BLaが、高さ情報を算出する建物として決定される。
【0057】
続いて、高さ情報算出部206は、高さ情報を算出する建物に対応する点群データにおいて、建物の上辺に対応する点の並びを検索して、建物の上辺を特定する(ステップS202)。
高さ情報算出部206は、建物の上辺に相当する点の並びを生成したスキャン層Lxを特定する(ステップS203)。
前記したように、照射範囲IRは上下方向で複数に区画されている。そのため、複数のスキャン層Ln(nは、任意の整数)のうち、どのスキャン層において建物の上辺に相当する点の並びが検出されたのかを確認する。
図2の場合には、スキャン層L4が、建物の上辺と一致しており、建物の上辺に相当する点の並びを検出したスキャン層Lxとなる。
【0058】
高さ情報算出部206は、特定したスキャン層Lxと建物との交点の位置情報αを、センサ15から入力された計測データ(点群データ)から取得する(ステップS204)
図4の(A)の場合には、特定したスキャン層L4と建物BLとの交点Cの位置情報、すなわち、センサ座標系のXYZ座標データが取得される。
【0059】
続いて、高さ情報算出部206は、基準スキャン層L0と建物との交点の位置情報βを、センサ15から入力された計測データ(点群データ)から取得する(ステップS205)。
図4の(A)の場合には、基準スキャン層L0と建物BLとの交点Bの位置情報、すなわち、センサ座標系のXYZ座標データが取得される。
【0060】
高さ情報算出部206は、特定したスキャン層Lxと建物との交点の位置情報αと、基準スキャン層L0と建物との交点の位置情報βと、センサ15の設置高さhを用いて、検出した建物の高さ情報H_Calを算出する(ステップS206)。
具体的には、位置情報αと位置情報βは、同じセンサ座標系での座標データ(XYZ座標データ)であるので、位置情報αのZ座標と、位置情報βのZ座標の差分が、点Bと点Cとの間の高さ方向の距離に相当する。
よって、位置情報αから位置情報βを減算する下記式(1)から距離Dxを算出し、これに、センサ15の設置高さhを加算して、建物の高さ情報H_Calを算出する(下記式(2)参照)。
Dx=位置情報αのZ座標-位置情報βのZ座標 ・・・(1)
H_Cal=Dx+h ・・・(2)
【0061】
図5のフローチャートに戻って、建物の高さ情報H_Calが算出されると、ステップS109においてピッチ角算出部207は、ステップS107で取得した既知の高さ情報H_Knownと、ステップS108で算出した建物の高さ情報H_Calに基づいて、ピッチ角Pitchθを算出する。
【0062】
ここで、
図4の(A)に示すように、車両Vのピッチ角が0°、すなわち車両が水平である場合には、上記式(2)で算出した建物の高さ情報H_Calは、既知の建物の高さ情報H_Knownと一致する。かかる場合には、ピッチ角算出部207は、「ゼロ(=0)」をピッチ角として算出する。
【0063】
一方、車両が水平でない場合には、
図4の(B)に示すように、ピッチ角に応じた高さ分だけ、既知の建物の高さ情報H_Knownとの間に差異Hが生じる。差異Hがある場合には、ピッチ角算出部207は、差異Hを用いてピッチ角として算出する。
ここで、差異Hは、下記式(5)で表わされる。
H=H_Known-H_cal ・・・(5)
【0064】
ここで、車両Vが水平線に対して傾いているときのピッチ角Pitchθは、下記式(6)で表現できる。
Sin(Pitch)=H/D2 ・・・(6)
この式(6)から、ピッチ角(Pitchθ)は、下記式(7)で表現できる。
Pitchθ =sin-1(H/D2) ・・・(7)
【0065】
このように、車両Vの傾きに応じて生じる差異Hは、既知の高さ情報H_Knownと、算出した高さ情報H_Calと、距離D2から算出される。
よって、これらの情報は、センサ15で取得する建物までの距離(距離D1、D2、D3)と、距離D1を利用して取得した建物の位置情報から取得できるので、車両Vに搭載したセンサ15を用いて、ピッチ角Pitchθを算出できる。
よって
図4(A)(B)を用いて述べた通り、センサ15により取得される建物までの距離(距離D1、D2、D3)と、距離D2、D3に基づき算出される交点B、Cの座標データと、に基づいて取得される既知の高さ情報H_Knownから、車両Vのピッチ角Pitchθが算出される。
【0066】
[変形例1]
図9および
図10は、照射範囲IRに3つの建物が検出された場合における距離D1(D1a~D1c)の算出を説明する図である。
前記した実施形態では、照射範囲IR内で1つの建物が検出された場合を例示した。
以下、照射範囲IR内で複数の建物が検出された場合を、3つの建物が検出された場合を例に挙げて説明する。
例えば、
図9および
図10に示すように、照射範囲IR内に3つの建物BLa、BLb、BLcが存在する場合、前記したピッチ算出処理(
図5参照)のステップS105では、3つの建物BLa、BLb、BLcの各々において、建物上の点(点TG)までの距離D1(D1a~D1c)が算出される。
そして、ステップS106では、車両Vの位置情報と、ステップS105で取得した3つの建物BLa、BLb、BLcの各々までの距離D1(D1a~D1c)から、3つの建物BLa、BLb、BLcの各々の座標が算出される。
これにより、3つの建物BLa、BLb、BLcの各々の既知の高さ情報H_Knownが取得される。
そして、ステップS108では、3つの建物BLa、BLb、BLcの各々について、センサ15の計測データ(点群データ)から、建物の高さ情報H_Calが算出される。
【0067】
ステップS109では、以下の何れかの方法で、車両Vのピッチ角が算出される。
(a)3つの建物BLa、BLb、BLcの各々から算出した3つのピッチ角の平均値を、ピッチ角算出部207が算出したピッチ角とする。
(b)3つの建物BLa、BLb、BLcの各々から算出した3つのピッチ角のうち、平均値との差が最も大きい1つのピッチ角を除外し、残りの2つのピッチ角差の平均値を、ピッチ角算出部207が算出したピッチ角とする。
【0068】
これにより、1つの建物のみから算出したピッチ角Pitchθを採用する場合に比べて、算出したピッチ角Pitchθの精度向上が期待できる。
また、移動平均値等の過去の情報を用いることなくピッチ角の精度を向上できるので、入力値の時間制限が厳しい先進運転支援や自動運転等のシステムに、特に有用である。
【0069】
なお、変形例1では、検出された3つの建物BLa、BLb、BLcの各々について、センサ15の計測データ(点群データ)から、建物の高さ情報H_Calを算出する場合を例示した。
しかし、少なくとも2つの建物について、センサ15の計測データから、建物の高さ情報H_Calを算出するようにしても良い。
例えば、4つ以上の建物が検出された場合などに、建物の高さ情報H_Calを算出する建物の総数を抑えることで、処理ユニット20における算出処理における負荷の低減が可能となる。
この場合において、車両Vとの距離が近い建物を除外する方法などで、高さ情報H_Calを算出する建物を絞ることができる。
【0070】
[変形例2]
図11は、スキャン型LiDARセンサ適用時に、建物の上辺に相当する点の並びを生成したスキャン層Lxを特定するための他の態様を説明する図である。
【0071】
前記した実施形態では、あるタイミングで取得した計測データ(点群データ)から、建物の上辺に相当する点の並びを生成したスキャン層Lxを特定した場合を例示した。
前記したように、ピッチ算出処理は、予め決められた時間間隔で繰り返し実行される。そのため、計測データ(点群データ)も、予め決められた時間間隔で順次生成される。
図11に示すように、車両が建物BLに近づく方向に移動しているときには、建物の上辺に相当する点の並びを生成したスキャン層Lxは、順番に切り替わることになる。具体的には、建物に近づくにつれて、建物の上辺に相当する点の並びを生成したスキャン層Lxが切り替わる。そのため、特定されるスキャン層Lxと、基準スキャン層L0との交差角が、スキャン層Lxが切り替わる度に大きくなる。
【0072】
変形例2では、車両の走行に伴って、建物の上辺に相当する並びを生成するスキャン層Lxが切り替わるタイミングで、建物の高さ情報H_Calを算出して、ピッチ角Pitchθを算出する。
【0073】
図11の(A)に示すタイミング(時刻tn)の計測データから算出した点群データでは、スキャン層Lnが建物の上辺よりも下側の位置で反射している。そして、スキャン層Lnのひとつ上のスキャン層Ln+1は、建物の上辺よりも上側を通過している。
よって、このタイミングの点群データでは、実際の建物の上辺よりも低い位置が、建物の上辺の位置であると認定される。そのため、算出される建物の高さ情報は、誤差を含むものとなる。
【0074】
建物が、車両Vの移動方向側に位置していると、車両Vが建物により近づいた別のタイミング(時刻tn+1)で、先のタイミングでは建物の上側の通過していたスキャン層Ln+1が、建物の上辺で反射することになる。
そのため、このタイミングを捉えて、建物の上辺の位置を特定して、建物の高さ情報H_Calを算出することで、より正確な建物の高さを算出できるようになる。
【0075】
そこで、前記した建物の高さを算出するステップS108(
図5)を、次のように変更することで、より正確な建物の高さを算出できるようになる。
図12は、変形例2の場合における建物の高さ算出ステップを説明するフローチャートである。
図12に示すように、高さ情報算出部206は、あるタイミング(時刻tn)で取得された計測データから生成された点群データにおいて、高さ情報H_Calを算出する建物を決定する(ステップS301)。
図11における建物BLが、高さ情報を算出する建物として決定される。
【0076】
高さ情報算出部206は、高さ情報を算出する対象の建物を決定(ステップS301)したのち、高さ情報を算出する対象の建物の点群データにおいて、建物の上辺に対応する点の並びを検索して、建物の上辺を特定する(ステップS302)。
高さ情報算出部206は、建物の上辺に相当する点の並びを生成したスキャン層Lxを特定する(ステップS303)。
【0077】
本変形例では、スキャン層Lxの特定を複数回実施してから、建物の高さ情報H_Calの算出に用いるスキャン層Lxを決定する。
そのため、初回のスキャン層の特定(ステップS303)の後、新たに取得された計測データが入力されると(ステップS304、Yes)、高さ情報算出部206は、前記したステップS301で決定した建物を、高さ情報を算出する対象の建物として再び設定する(ステップS305)。
【0078】
そして、高さ情報算出部206は、入力された計測データ(点群データ)において、建物の上辺に対応する点の並びを検索して、建物の上辺が特定される(ステップS306)。そして、新たに特定された建物の上辺に相当する点の並びを生成したスキャン層Lxを特定する(ステップS307)。
【0079】
高さ情報算出部206は、新旧のスキャン層Lxを比較する(ステップS308)。具体的には、先に特定したスキャン層Lxと、新たに特定したスキャン層Lxとを比較する。
そして、新たに特定したスキャン層Lxが、先に特定したスキャン層Lxとは異なるスキャン層である場合には(ステップS309、Yes)、新たに特定したスキャン層Lx上の点(交点)を用いて、建物の高さを算出することになる。
図12に示す処理は、ピッチ算出処理とあわせて予め決められた時間間隔で繰り返し実行されることが好ましい。
【0080】
ここで、
図11の場合を用いて、変形例2の場合を具体的に説明する。
車両Vが建物に近づく方向に移動している場合、建物の上辺で反射したレーザ光を照射したスキャン層Lxは、順番に切り替わる。
図11の場合には、あるタイミング(時刻tn)では、スキャン層Lnが、建物の上辺で反射したレーザ光を照射したスキャン層である。時刻tn以降の別のタイミング(時刻tn+1)では、スキャン層Ln+1が、建物の上辺で反射したレーザ光を照射したスキャン層である。
そのため、車両Vの走行に伴って、車両Vが近づくと、あるタイミングで、建物の上辺で反射したレーザ光を照射したスキャン層が切り替わることになる。
本変形例では、この切り替わりのタイミングで、新たに決定されたスキャン層を、建物の高さ情報の算出に用いるスキャン層として決定する。
【0081】
これにより、高さ情報算出部206は、新たに特定したスキャン層Lxと建物との交点の位置情報αの取得(ステップS310)と、基準スキャン層L0と建物との交点の位置情報βの取得(ステップS311)を行うことになる。
そして、高さ情報算出部206は、特定したスキャン層Lxと建物との交点の位置情報αと、基準スキャン層L0と建物との交点の位置情報βと、センサ15の設置高さhを用いて、検出した建物の高さ情報H_Calを算出する(ステップS312)。
【0082】
このように、変形例2では、車両が建物に近づく方向に移動しているときに、建物の上辺で反射したレーザ光のスキャン層が切り替わるタイミングを捉えて、建物の上辺の位置を特定して、建物の高さ情報H_Calを算出する一例を示した。
これにより、レーザ光の照射範囲IRにおいて、基準スキャン層L0よりも上側に少なくとも2つのスキャン層を有していれば、建物上辺の位置を特定して、建物の高さを精度良く算出できるようになる。スキャン層の総数が大きくなるほど建物の高さは精度よく算出可能であるが、スキャン層の総数が多くないLiDARを採用する場合は誤差が大きいため、変形例2による精度向上の効果は特に大きい。
【0083】
なお、変形例2では、スキャン層が切り替わるタイミングを捉えて、建物の高さを算出する場合を例示した。
ここで、最初のスキャン層の特定(ステップS303)ののち、スキャン層が切り替わらないままで、スキャン層の特定(ステップS307)が所定回数行われた場合には、最初に特定したスキャン層と、基準スキャン層L0との交差角を算出して(ステップS310)、建物の高さ情報H_Calを算出するようにしても良い。
【0084】
車両Vの低速走行時には、スキャン層の切り替わりが遅いので、かかる場合であってもピッチ角Pitchθを算出できるようにしておくことが、好ましいからである。
【0085】
[変形例3]
図13は、変形例3にかかるスキャン層を説明する図である。
前記した実施形態では、基準スキャン層L0よりも上側のスキャン層が、同じ角度差を持って設定されている場合を例示した。例えば、
図13に示すように、照射範囲IRの上側の領域のスキャン層の角度差θ2を、照射範囲IRの下側の領域のスキャン層の角度差θ1よりも小さくして、建物の上側の領域におけるスキャン層の密度が、下側の領域よりも多くなるようにしても良い。
かかる場合、建物の上辺に相当する点の並びを生成したスキャン層Lxをより正確に特定できる。
特に、前記した変形例2との組み合わせで、算出された建物の高さ情報H_Calの精度向上が期待できる。
【0086】
[変形例4]
図14は、ピッチ角の算出の他の例を説明する図である。
前記した実施形態では、
図4の(A)、(B)に示したように、車両Vと建物BLとがおよそ同一平面上にある前提でのピッチ角Pitchθの算出例を例示した。
本件発明は、車両Vと建物BLとが同一平面上にない場合、例えば、建物BLが水平線に沿う路面GD上に位置し、車両Vが、斜面SLを路面GDに向けて登坂走行する場合にも適用可能である。
【0087】
例えば、車両Vが斜面SLを登坂走行している時には、車両Vの搭載されたセンサ15が、鉛直線方向における路面GDに沿う直線LVと交差するタイミングがある。
このタイミングでは、センサ15の設置高さhを、ゼロ(=0)として取り扱うことができる。
そうすると、その時点でのスキャン層Lxと建物との交点の位置情報αと、基準スキャン層L0と建物との交点の位置情報βと、から算出した建物の高さ情報H_Calは、
既知の建物の高さ情報H_Knownと、前記したピッチ角に応じて決まる際Hとの間で、下記式(8)の関係が成立する。
H=H_Known-Dx ・・・(8)
【0088】
そして、このときの車両Vのピッチ角Pitchθは、下記式(6)で表現できる。
Sin(pitch)=H/D2 ・・・(6)
この式(6)から、ピッチ角(Pitchθ)は、下記式(7)で表現できる。
Pitchθ =sin-1(H/D2) ・・・(7)
【0089】
なお、
図14の場合において、ピッチ角(Pitchθ)は、下記式(9)を用いて算出することもできる。
Pitchθ =Tan
-1(H_known-Dx/D4) ・・・(9)
ここで、D4は、センサ15から、直線LVと建物BLとの交点Eまでの距離である。
直線LVは、センサ15と建物BLの下縁とを結ぶ水平線である。
【0090】
ここで、周囲に存在する樹木やガードレール等の障害物の影響から、建物BLの底部はセンサ15で直接計測できない場合があり、その場合には水平面に平行な直線上における車両Vと建物BLの底部との距離D4は算出できない。また、車両Vが建物BLに近づく傾斜途中において、車両Vに搭載されたセンサ15情報に基づいてD4を算出できるタイミングも限られている。よって、
図14の状況下よりも、
図4の(A)、(B)の状況下でピッチ角Pitchθを推定する方が好ましい。
【0091】
[応用例1]
前記した実施形態および変形例では、車両のピッチ角Pitchθを算出する場合を例示した。算出したピッチ角Pitchθの応用例を以下に説明する。
【0092】
例えば、算出したピッチ角Pitchθは、車両Vに搭載されたIMU12が生成するピッチ角の妥当性の判断に用いることができる。
かかる判断処理を行う機能ブロックとして、情報処理装置1の処理ユニット20は、判定部209を備えていても良い(
図3参照)。
【0093】
なお、以下の説明においては、説明の都合で、ピッチ角算出部207で算出したピッチ角Pitchθを、ピッチ角Bと標記する。IMU12が生成したピッチ角Pitchθを、ピッチ角Aと標記する。
【0094】
判定部209は、ピッチ角算出部207で算出したピッチ角Bと、IMU12が生成したピッチ角Aとの差異Δθを算出する。
算出した差異△θが、閾値Th未満である場合には、IMU12が生成したピッチ角が適切であると判断できる。これにより、IMU12が生成したピッチ角が、例えば、車両Vの自動走行制御装置(図示せず)のパラメータとして利用されて、車両Vの自動走行制御などが実施される場合には、
また、算出した差異△θが、閾値Th以上である場合には、IMU12が生成したピッチ角が不適切であると判断できる。かかる場合、ピッチ角算出部207で算出したピッチ角が、車両Vの自動走行制御装置(図示せず)のパラメータとして利用されて、車両Vの自動走行制御などが実施される。
【0095】
また、算出した差異△θが閾値Th以上である場合に、さらにピッチ角Aとピッチ角Bのうち、いずれが不適切かを判断したうえで、適切なピッチ角を利用してもよい。例えば、ピッチ角Aとピッチ角B各々について前回値と最新値の差分を確認し、値の急変が確認された方を不適切であると判断してもよい。
適切なピッチ角の利用例は上述した自動走行制御に限定されない。例えば、アクティブダンパを備える車両において車両の傾きを制御する場合、荷室の支持にエアサスペンションを用いる車両において、荷室の傾きを調整する場合などにも利用できる。
また、ピッチ角Bが不適切と判断できる場合は、既知の高さ情報H_Knownを更新すべき旨や、ピッチ角Aから逆算した建物の高さ情報のうち、少なくとも一方をマッププロバイダへ提供してもよい。
【0096】
以上の通り、本実施形態にかかる情報処理装置1は、以下の構成を有する。
(1)情報処理装置1は、
車両V(移動体)の位置情報を取得する位置情報取得部200と、
車両Vから建物(対象物)までの距離を取得する距離情報取得部203と、
車両Vの位置情報と、建物までの距離D1(第1距離)に基づいて、建物の既知の高さ情報H_Knownを取得する高さ情報取得部205と、
車両Vから建物までの距離D2(第2距離)、D3(第3距離)に応じて決まる位置情報α、βに基づいて、建物の高さ情報H_Calを算出する高さ情報算出部206と、
建物の既知の高さ情報H_Knownと、建物の高さ情報H_Calとを用いて、車両Vのピッチ角Pitchθを算出するピッチ角算出部207と、を有する。
【0097】
車両Vの位置情報と、車両Vから建物までの距離D1と、車両Vから建物までの距離D2、D3に応じて決まる位置情報α、βを用いて、ピッチ角Pitchθを簡単に算出できる。車両Vの位置情報と、車両Vから建物までの距離は、車両Vに搭載された既存の機器(センサ15)で取得できるので、追加設備を必要とすることなく車両Vのピッチ角Pitchθを算出できる。
簡単に算出できるピッチ角Pitchθを、例えば慣性計測装置(IMU12)で取得したピッチ角に代えて利用できるので、ピッチ角の取得に冗長性を持たせることができる。
【0098】
(2)情報処理装置1は、
設定された照射範囲IRに向けてレーザ光(送信波)を照射すると共に、照射範囲IR内にある物体で反射した反射波を受信するセンサ15(測定器)と、
センサ15が受信した反射波から生成される点群データに基づいて、照射範囲IR内にある建物(対象物)を検出する物体検出部202と、を有する。
距離情報取得部203は、検出した建物の点群データから、検出した建物までの距離D1、D2、D3を算出する。
【0099】
点群データを構成する各点は、照射範囲IR内での座標値を有しており、照射範囲IR内にある物体の位置を算出できる。照射範囲IR内での建物の位置から、車両Vから建物までの距離D1を算出できる。そして、位置情報取得部200で取得した車両Vの位置情報と、建物までの距離D1から、建物(対象物)の位置を特定できる。これにより、車両Vの位置情報を基準として、地図データ上での建物の位置を算出できるので、例えばマップデータを参照することで、照射範囲IR内にある建物の高さ情報を取得できる。
【0100】
(I)センサ15は、照射範囲IRにレーザ光を照射して、照射範囲IR内の物体で反射したレーザ光(反射波)を受光するLiDARセンサである。
【0101】
LiDARセンサは、車両Vへの搭載頻度の高い測定機である。車両に搭載されたLiDARセンサを用いて、照射範囲IR内にある建物の高さ情報を取得できる。別途専用の装置を搭載することなく車両のピッチ角を算出できるので、ピッチ角の算出のために、車両Vのコストが上昇することを好適に防止できる。
【0102】
(3)照射範囲IRは、センサ15の車両Vへの設置状態を基準とした上下方向で複数のスキャン層Ln(nは整数)に分割されている。
高さ情報算出部206は、
建物の上辺で反射した反射波を送信したスキャン層Lxと、対象物である建物BLとの第1交点(
図4の(A)における交点C)の座標値と、
車両Vが水平面上に位置する時のセンサ15の車両Vへの設置状態を基準とした水平線に沿う基準スキャン層L0と、対象物である建物BLとの第2交点(
図4の(A)における交点B)の座標値と、
センサ15の車両Vでの設置高さhを用いて、建物の高さ情報H_Calを算出する。
【0103】
センサ15の計測データである点群データでは、(a)点群データを構成する各点までの距離、(b)各点のセンサ座標系での位置情報(座標値)、(c)基準スキャン層L0を基準とした各点の角度、を取得できる。
基準スキャン層L0に沿う方向における建物までの距離D2を算出したときのレーザ光の照射角度は、車両Vが水平面上に位置する時のセンサ15の車両Vへの設置状態を基準とした水平面に沿う方向であり、車両Vのピッチ角Pitchθが0°であるときに0°となる。
基準スキャン層L0に沿う方向における建物までの距離D2に応じて決まる座標値は、基準スキャン層L0と建物との交点Bの位置情報βであり、建物の上辺までの距離D3に応じて決まる建物の上辺の座標値は、建物の上辺を通るスキャン層Lxと建物との交点Cの位置情報αである。
交点Bの位置情報βと、交点Cの位置情報αは、同じセンサ座標系の値であるので、交点Bの位置情報βのZ成分と交点Cの位置情報αのZ成分との差分と、センサ15の設置高さhから、建物の高さ情報H_Calを算出できる。
この算出した建物の高さ情報H_Calは、理論上、移動体のピッチ角が0°のときの建物の高さ情報H_Knownとなる。
移動体のピッチ角(移動体の水平線に対する傾き)に応じて、算出した建物の高さ情報H_Calと、建物の既知の高さ情報H_Knownとの差異Hが異なるので、算出した建物の高さ情報H_Calを、移動体のピッチ角を算出に利用できる。
【0104】
(4)車両Vが水平面上に位置する時のセンサ15(測定器)の車両Vへの設置状態を基準とした水平線に沿う基準スキャン層L0よりも上側に、少なくとも2つのスキャン層Lnが設定されている。
【0105】
照射範囲IRの分割数を多くすると、対象物の上辺までの高さの算出精度が向上する。
【0106】
(5)高さ情報算出部206は、建物の上辺で反射したレーザ光を送信したスキャン層Lxの特定を、繰り返し実行する。
新たに特定されたスキャン層Ln+1が、先に特定されたスキャン層Lnとは異なる層である場合に、対象物である建物BLとの第1交点の座標値を、新たに特定されたスキャン層Ln+1で算出する(
図11参照)。
【0107】
車両Vが建物に近づく方向に移動している場合、建物の上辺で反射したレーザ光を照射したスキャン層Lxは、順番に切り替わる。
図11の場合には、あるタイミング(時刻tn)では、スキャン層Lnが、建物の上辺で反射したレーザ光を照射したスキャン層である。時刻tn以降の別のタイミング(時刻tn+1)では、スキャン沿うLn+1が、建物の上辺で反射したレーザ光を照射したスキャン層である。
そのため、車両Vの走行に伴って、車両Vが近づくと、あるタイミングで、建物の上辺で反射したレーザ光を照射したスキャン層が切り替わることになる。
車両Vの走行に伴って、建物の上辺に相当する並びを生成するスキャン層Lxが切り替わるタイミングで、建物の高さ情報H_Calを算出して、ピッチ角Pitchiθを算出することで、算出される建物の高さ情報H_Calと、ピッチ角Pitchθの精度の向上が期待できる。
【0108】
(7)距離情報取得部203は、照射範囲IR内に複数の建物(対象物)が存在する場合、少なくとも2つの建物までの距離D1をそれぞれ取得する。
高さ情報取得部205は、距離D1を取得した建物各々の既知の高さ情報H_Knownを取得する。
高さ情報算出部206は、距離D1を取得した建物物各々の高さ情報H_Calを算出する。
ピッチ角算出部207は、距離D1を取得した建物各々において、既知の高さ情報H_Knownと、高さ情報H_Calとを用いてピッチ角Pitchθを算出し、算出したピッチ角Pitchθの平均値を車両V(移動体)のピッチ角とする。
【0109】
照射範囲IR内に複数の建物が存在する場合には、建物各々からピッチ角を算出し、算出したピッチ角の平均値を移動体のピッチ角とすることで、ピッチ角の算出精度の向上が期待できる。
【0110】
(I)ピッチ角算出部207は、距離D1を取得した建物各々において、既知の高さ情報H_Knownと、高さ情報H_Calとを用いてピッチ角Pitchθを算出する。
算出したピッチ角Pitchθのうち、算出したピッチ角Pitchθの平均値との差が大きい1つのピッチ角Pitchθを除外して、残りのピッチ角Pitchθの平均値を、車両V(移動体)のピッチ角とする。
【0111】
平均値から大きく外れたピッチ角Pitchθが除外されるので、残りのピッチ角Pitchθの平均値である移動体のピッチ角は、より精度の高いものとなる。
【0112】
(8)距離情報取得部203は、照射範囲IR内に複数の建物(対象物)が存在する場合、少なくとも2つの建物までの距離D1をそれぞれ取得する。
高さ情報取得部205は、距離D1を取得した建物のうち、既知の高さ情報H_Knownを取得可能な建物について既知の高さ情報H_Knownを算出する。
高さ情報算出部206は、既知の高さ情報H_Knownを取得した建物物各々の高さ情報H_Calを算出する。
ピッチ角算出部207は、既知の高さ情報H_Knownを取得した建物各々において、既知の高さ情報H_Knownと、高さ情報H_Calとを用いてピッチ角Pitchθを算出する。
【0113】
例えば、上辺が直線状ではない建物のように、上辺の位置を検出し難い建物を既知の高さ情報H_Knownを取得不可能な建物として、マップデータ31に登録し、上辺の位置を検出し易い建物を、既知の高さ情報H_Knownを取可能な建物として、マップデータ31に登録しておく。
これにより、照射範囲IR内に複数の建物が存在する場合には、上辺の位置を検出し易い建物を、既知の高さ情報H_Knownを取得する建物として選択できる。そうすると、高さ情報H_Calの取得が容易な建物を、既知の高さ情報H_Knownを取得する建物として決定できるので、算出される高さ情報H_Calの算出精度が向上する。さらに、高さ情報H_Calの算出ミスの減少が期待できるので、ピッチ角の算出をより短時間で、かつ精度良く行うことができる。
また、急斜面上に存在するなどの理由で、建物の角の選択次第で路面と上辺との距離が大きく変わって誤差が無視できないような建物も、利用し難い建物として同様にマップデータ31に登録しておくことも可能である。
【0114】
(II)照射範囲IRは、センサ15の車両Vへの設置状態を基準とした上下方向で複数のスキャン層Ln(nは整数)に分割されている。照射範囲IRでは、上下方向における上側の領域のスキャン層の密度が、下側の領域のスキャン層の密度よりも高い。
【0115】
このように構成すると、建物の上辺に相当する点の並びを生成したスキャン層Lxをより正確に特定できる。算出された建物の高さ情報H_Calの精度向上が期待できる。
【0116】
(III)ピッチ角算出部207は、
建物の既知の高さ情報H_Knownと、算出された建物の高さ情報H_Calと、基準スキャン層L0に沿う方向における建物までの距離D2とに基づいて、ピッチ角Pitchθを算出する。
【0117】
建物の既知の高さ情報H_Knownをマップデータ31から取得可能としておくことで、センサ15(LiDARセンサ)の計測データ(LiDARデータ)から、建物の高さ情報H_Calと、基準スキャン層L0に沿う方向における建物までの距離D2を算出するだけで、ピッチ角Pitchθを算出できる。これにより、車両Vに追加すべき機器は、LiDARセンサのみであり、LiDARセンサは、車両Vに搭載されている頻度が高いので、LiDARセンサを既に搭載している車両の場合には、ピッチ角の算出のために発生するコストを抑えることができる。
【0118】
また、車両V(移動体)のピッチ角(移動体の水平線に対する傾き)に応じて、算出した建物の高さ情報H_Calと、既知の高さ情報H_Knownとの差異Hが異なる。そのため、既知の高さ情報H_Knownとの差異Hを算出し、算出した差異Hと、基準スキャン層L0に沿う方向における建物までの距離D2から、差異Hを生じた原因である車両Vのピッチ角Pitchθを算出できる。
【0119】
(IV)建物(対象物)の位置情報と、建物の既知の高さ情報H_Knownとを関連付けたマップデータ31を記憶する記憶ユニット30(記憶部)を有する。
高さ情報取得部205は、車両Vの位置情報と、車両Vから建物までの距離D2から、建物の位置情報を算出し、算出した位置情報に基づいてマップデータ31から、建物の既知の高さ情報H_Knownを取得する。
【0120】
建物の位置情報と建物の既知の高さ情報H_Knownとを関連付けたマップデータ31を用意しておくことで、車両Vの周囲にある建物の既知の高さ情報を取得できる。
【0121】
(V)車両Vのピッチ角を測定する姿勢センサとしての機能を有するIMU12と、
IMU12から出力されるピッチ角の適否を判定する判定部209と、を有し、
判定部209は、IMU12から入力されたピッチ角が不適切であると判定した場合に、ピッチ角算出部207が算出したピッチ角を、IMU12から入力されたピッチ角に置き換える。
【0122】
このように構成すると、IMU12の姿勢センサとしての機能に支障が生じた場合に、IMU12が算出したピッチ角を、ピッチ角算出部207で算出したピッチ角に置き換えることができるので、ピッチ角の算出の冗長性が向上する。
また、ピッチ角を用いて車両の自動運転を制御する装置が搭載されている場合には、IMU12の姿勢センサとしての機能に支障が生じたときに、係る装置による自動運転に支障が及ぶことを好適に防止できる。
【0123】
(VI)判定部209は、ピッチ角算出部207が算出したピッチ角を用いて、IMU12から入力されたピッチ角の適否を判定する。
【0124】
このように構成すると、IMU12が算出したピッチ角の適否が判るので、IMU12が算出したピッチ角に支障がある場合に、IMU12が算出したピッチ角を、ピッチ角算出部207が算出したピッチ角に置き換えることができる。これにより、ピッチ角の算出の冗長性が向上する。
【0125】
[変形例4]
前記した実施形態では、照射範囲IR内で検出した建物の高さ情報H_Calの算出を、建物の上辺を特定したスキャン層Lxと建物との交点の位置情報αと、基準スキャン層L0と建物との交点の位置情報βと、センサ15の設置高さhを用いて行う場合を例示した。
建物の高さ情報H_Calを、余弦定理を用いて算出しても良い。以下、余弦定理を用いる場合の一例を説明する。
【0126】
高さ情報算出部206は、(a)既知の高さ情報H_Knownを取得した建物の上辺に相当する点群を生成したスキャン層Lxを特定し、センサ15の基準スキャン層L0と特定したスキャン層Lxとの交差角θx(仰角)を取得する。(b)建物の上辺に相当する点群を生成したスキャン層Lxに沿う方向における建物までの距離D3を、点群データから取得する。(c)基準スキャン層L0に沿う方向における建物までの距離D2を、点群データから取得する。
【0127】
図4の(A)の場合、スキャン層L4が、建物BLの上辺に相当する点群を生成したスキャン層Lxになる。
ここで、センサ15のレーザ光の出射点を点A、基準スキャン層L0に沿う方向における建物BLとの交点(レーザ光の反射点)を点B、スキャン層L4に沿う方向における建物BLの上辺との交点(レーザ光の反射点)を点C、基準スキャン層L0とスキャン層L4との交差角∠BACを、交差角θxとする。
そうすると、点Aから点Cまでの距離が、スキャン層L4に沿う方向における建物までの距離D3となる。点Aから点Cまでの距離が、基準スキャン層L0に沿う方向における建物までの距離D2となる。交差角θx、距離D2、距離D3は、センサ15の計測データ(点群データ)から算出可能である。
【0128】
ここで、3つの点A、点B、点Cを繋いだ三角形ABCでは、距離D2、D3が既知であり、辺ABと辺ACの間の交差角θxが既知であるので、残りの一辺BCの距離を、距離Dxと規定すると、余弦定理から下記式(10)が成立する。
(Dx)2=(D2)2+(D3)2-2(D2)(D3)cosθx ・・・(10)
【0129】
ここで、車両Vにおけるセンサ15の設置高さhを考慮すると、建物の高さ情報H_Calは、下記式(2)で表すことができる。
H_Cal=Dx+h (2)
【0130】
このように、高さ情報算出部206は、照射範囲IR内で検出した建物の高さ情報H_Calを、既知の高さ情報H_Knownを取得した建物の上辺に相当する点群を生成したスキャン層Lxと、センサ15の基準スキャン層L0との交差角θx(仰角)と、建物の上辺に相当する点群を生成したスキャン層Lx方向における建物までの距離D3と、基準スキャン層L0方向における建物までの距離D2と、から算出する。
【0131】
このようにすることによっても、センサ15の計測データから得られる値を用いて、建物の高さを算出できる。
【0132】
変形例4にかかる情報処理装置は、以下の構成を有する。
(1)情報処理装置1は、
車両V(移動体)の位置情報を取得する位置情報取得部200と、
車両Vから建物(対象物)までの距離を取得する距離情報取得部203と、
車両Vの位置情報と、建物までの距離D1(第1距離)に基づいて、建物の既知の高さ情報H_Knownを取得する高さ情報取得部205と、
車両Vから建物までの距離D2(第2距離)、D3(第3距離)に基づいて、建物の高さ情報H_Calを算出する高さ情報算出部206と、
建物の既知の高さ情報H_Knownと、建物の高さ情報H_Calとを用いて、車両Vのピッチ角Pitchθを算出するピッチ角算出部207と、を有する。
【0133】
車両Vの位置情報と、車両Vから建物までの距離D1、D2、D3を用いて、ピッチ角Pitchθを簡単に算出できる。車両Vの位置情報と、車両Vから建物までの距離は、車両Vに搭載された既存の機器(センサ15)で取得できるので、追加設備を必要とすることなく車両Vのピッチ角Pitchθを算出できる。
簡単に算出できるピッチ角Pitchθを、例えば慣性計測装置(IMU12)で取得したピッチ角に代えて利用できるので、ピッチ角の取得に冗長性を持たせることができる。
【0134】
(6)高さ情報算出部206は、
建物の上辺で反射したレーザ光(送信波)を送信したスキャン層Lxと、基準スキャン層L0(車両Vが水平面上に位置する時の車両へのセンサ15の設置状態を基準とした水平面に沿う層)との交差角θxと、基準スキャン層L0に沿う方向における建物までの距離D2と、建物の上辺までの距離D3と、センサ15の車両Vにおける設置高さhと、を用いて、対象物の高さ情報H_Calを算出する。
【0135】
建物の上辺で反射したレーザ光を照射したスキャン層Lxを特定すると、建物の上辺までの距離D3と、基準スキャン層L0に沿う方向における建物までの距離D2と、スキャン層Lxと基準スキャン層L0との交差角θxを、点群データから算出できる。
建物と基準スキャン層L0との交点から建物の上辺までの距離Dxに、センサ15の車両Vにおける設置高さhを加算して得られる高さ情報H_Calは、理論上、車両Vのピッチ角が0°のときの対象物の既知の高さ情報H_Knownとなる。
車両Vのピッチ角(車両Vの水平線HLに対する傾き)に応じて、算出した対象物の高さ情報H_Calと、既知の高さ情報H_Knownとの差異Hが異なるので、算出した対象物の高さ情報H_Calを、車両Vのピッチ角を算出に利用できる。
【0136】
(VII)照射範囲IRは、センサ15の車両Vへの設置状態を基準とした上下方向で複数のスキャン層Ln(nは整数)に分割されている。
基準スキャン層L0に沿う方向における建物までの距離D2は、車両Vが水平面上に位置する時のセンサ15の車両Vへの設置状態を基準とした水平面に沿う基準スキャン層L0で算出される。
【0137】
車両Vのピッチ角が0°であるときに、車両Vが水平面上に位置する時のセンサ15の車両Vへの設置状態を基準とした水平面に沿う層(基準スキャン層L0)に沿う方向での建物までの距離は、最小となる。
基準スキャン層L0を基準として、建物の高さ情報H_Calを算出することで、算出した建物の高さ情報H_Calと、取得した建物の既知の高さ情報H_Knownとを、基準を揃えて比較できる。これにより、ピッチ角の算出精度の向上が期待できる。
【0138】
以上、本発明の実施形態および変形例を説明したが、本発明は、これらのものに限定されるものではなく、発明の技術的な思想の範囲内で適宜変更可能である。また、実施形態、変形例を任意に組み合わせた構成の情報処理装置としても良い。
【0139】
前記した実施形態では、車両Vの前方側に照射範囲IRが設定されている場合を例示した。
例えば、センサ15を車両Vの屋根に設置して、車両Vの周囲360°の範囲が、照射範囲として設定されるようにしても良い。ピッチ角の算出は、車両Vの後方側に位置する建物を用いても実施可能である。
【0140】
前記した実施形態では、
図2に示すように、基準スキャン層L0の上側に6つ、下側に6つのスキャン層が設定されている場合を例示した。照射範囲の設定態様は、この態様にのみ限定されない。基準スキャン層L0の上側のスキャン層の数と、下側のスキャン層の数を異ならせてもよい。
また、基準スキャン層L0のない、照射領域としても良い。この場合には、スキャン層L1とL-1の中間値を、基準スキャン層L0の値として算出できる。
【0141】
さらに、前記した実施形態では、センサ15が、照射範囲IRにレーザ光を照射して、照射範囲IR内の物体で反射したレーザ光(反射波)を受光するLiDARセンサである場合を例示した。そして、このLiDARセンサが、スキャン層毎に点群データを生成するスキャン型のLiDARである場合を例に挙げて説明した。
センサ15は、スキャン層という概念を用いずに、レーザ光を周囲に照射して、周囲にある物体で反射したレーザ光から、点群データを一括で生成するフラッシュ型のLiDARであっても良い。
【0142】
前記した実施形態では、対象物が、マンションやビルディングなどの建物である場合を例示した。
対象物は、点群データにおいて、水平線方向に並んだ上辺を持つ建物であることが、検出性の兼ね合いで好ましいが、電波塔のように1点の頂点を有する建物であっても、マップデータ等から頂点までの高さ情報を取得できる限り利用可能である。また、対象物は建物以外の他の物であっても良い。例えば、道路上やその周囲に設置された標識も、対象物として利用可能であり、同様に水平線方向に並んだ上辺を持つことが好ましい。
【0143】
前記した実施形態では、車両Vに搭載した情報処理装置1で、建物の検出から、検出した建物までの距離の算出と、建物の高さ情報H_Calの算出、そして、既知の高さ情報H_Knownとの比較によるピッチ角Pitchθの算出を行う場合を例示した。
この情報処理装置1の機能の少なくとも一部を、外部サーバESに持たせて、車両V側では、IMU12から入力されるピッチ角の適否のみを判定するようにしても良い。
前記した実施形態では、センサが、LiDARセンサである場合を例示したが、本発明で用いるセンサは、LiDARセンサにのみ限定されない。LiDARセンサと同等の機能、すなわち、照射範囲に向けて送信波を送信し、照射範囲内の物体で反射した送信波を受信して、受信した送信波(反射波)の処理により、物体の形状計測と、物体までの距離を算出できる機能を持つ測定機であれば良い。また、前記した実施形態ではLiDARセンサとしてスキャン型LiDARを例示したが、フラッシュ型LiDARを用いることもできる。
【符号の説明】
【0144】
1 :情報処理装置
13 :GPSユニット
14 :通信ユニット
15 :センサ(LiDARセンサ)
20 :処理ユニット
30 :記憶ユニット
31 :マップデータ
200 :位置情報取得部
201 :走査制御部
202 :物体検出部
203 :距離情報取得部
204 :建物座標算出部
205 :高さ情報取得部
206 :高さ情報算出部
207 :ピッチ角算出部
208 :マップデータ更新部
BL、BL1、BLa~BLc :建物
D1~D3、Dx :距離
ES :外部サーバ
H :差異
HL :水平線
H_Cal :高さ情報(算出された高さ情報)
H_Known :既知の高さ情報
IR :照射範囲
L0 :基準スキャン層
L1~L6、L-1~L-3、Ln、Lx:スキャン層
Pitchθ :ピッチ角
R :路面
TG :測定点
V :車両
h :設置高さ
h :高さ
θ :交差角