JP2022085320A - 情報処理装置、制御方法、プログラム及び記憶媒体 - Google Patents

情報処理装置、制御方法、プログラム及び記憶媒体 Download PDF

Info

Publication number
JP2022085320A
JP2022085320A JP2020196939A JP2020196939A JP2022085320A JP 2022085320 A JP2022085320 A JP 2022085320A JP 2020196939 A JP2020196939 A JP 2020196939A JP 2020196939 A JP2020196939 A JP 2020196939A JP 2022085320 A JP2022085320 A JP 2022085320A
Authority
JP
Japan
Prior art keywords
self
search range
voxel
positioning
calculation method
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2020196939A
Other languages
English (en)
Inventor
正浩 加藤
Masahiro Kato
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Pioneer Corp
Pioneer Smart Sensing Innovations Corp
Original Assignee
Pioneer Electronic Corp
Pioneer Smart Sensing Innovations Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Pioneer Electronic Corp, Pioneer Smart Sensing Innovations Corp filed Critical Pioneer Electronic Corp
Priority to JP2020196939A priority Critical patent/JP2022085320A/ja
Publication of JP2022085320A publication Critical patent/JP2022085320A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Navigation (AREA)
  • Optical Radar Systems And Details Thereof (AREA)

Abstract

Figure 2022085320000001
【課題】自己位置推定を好適に実行することが可能な情報処理装置を提供する。
【解決手段】情報処理装置1のコントローラ13は、対象移動体を第1位置算出方法であるGNSSによる測位位置を取得する。そして、コントローラ13は、GNSSによる測位位置に基づきイニシャル位置探索範囲Riを設定し、当該イニシャル位置探索範囲Ri内において第2位置算出方法であるNDTスキャンマッチングの基準位置を設定する。そして、コントローラ13は、設定した基準位置に基づき、NDTスキャンマッチングによる対象移動体の位置推定を行う。この場合、コントローラ13は、GNSSの測位位置の測位の精度を表す精度情報に基づいて、イニシャル位置探索範囲Riのサイズを決定する。
【選択図】図15

Description

本開示は、位置推定に関する。
従来から、レーザスキャナなどの計測装置を用いて計測した周辺物体の形状データを、予め周辺物体の形状が記憶された地図情報と照合(マッチング)することで、車両の自己位置を推定する技術が知られている。例えば、特許文献1には、空間を所定の規則で分割したボクセル中における検出物が静止物か移動物かを判定し、静止物が存在するボクセルを対象として地図情報と計測データとのマッチングを行う自律移動システムが開示されている。また、特許文献2には、ボクセル毎の静止物体の平均ベクトルと共分散行列とを含むボクセルデータとライダが出力する点群データとの照合により自己位置推定を行うスキャンマッチング手法が開示されている。
国際公開WO2013/076829 国際公開WO2018/221453
昨今、自動車分野だけでなく、船舶においても、自動操船システム検討が進められており、安全な自動操船には精度の良い自己位置推定は同様に重要である。外洋では周辺に構造物が少ないためGNSS(Global Navigation Satellite System)により自己位置を測位可能であるが、都市部の沿岸や河川では高層ビル等が隣接するため、受信衛星数の低下やマルチパスなどによりGNSS電波の受信環境は悪く、精度の良い測位はできないことが多い。よって、船舶の場合においても、上記のスキャンマッチングによる高精度な位置推定が好適に適用される。
一方、自己位置推定処理の開始時は、自動車も船舶も、GNSSによる測位位置をイニシャル位置としている。GNSSによる測位には誤差が伴うが、その誤差が大きくなければ,上記のスキャンマッチングのためのイニシャル位置として使用することができ,結果として高精度な位置推定が可能である。しかし、GNSS受信環境が悪い場合は,大きく離れた場所をイニシャル位置としてしまい、スキャンマッチングにおいて適切に最適解が求められない状況もあり得る。よって、このような場合において適切に位置推定を行うには、確からしいイニシャル位置を探索する必要がある。また,何らかの原因で推定自己位置が大きくずれた場合においても、確からしいイニシャル位置を同様に設定する必要がある。
本開示は、上記のような課題を解決するためになされたものであり、自己位置推定を好適に実行することが可能な情報処理装置を提供することを主な目的とする。
請求項に記載の発明は、
第1位置算出方法による移動体の測位位置を取得する位置取得手段と、
前記測位位置に基づき探索範囲を設定し、当該探索範囲内において第2位置算出方法の基準位置を設定する基準位置設定手段と、
前記基準位置に基づき、前記第2位置算出方法による前記移動体の位置推定を行う位置推定手段と、を有し、
前記基準位置設定手段は、前記測位位置の測位の精度を表す精度情報に基づいて、前記探索範囲のサイズを決定する、
情報処理装置である。
また、請求項に記載の発明は、
コンピュータが実行する制御方法であって、
第1位置算出方法による移動体の測位位置を取得する位置取得工程と、
前記測位位置に基づき探索範囲を設定し、当該探索範囲内において第2位置算出方法の基準位置を設定する基準位置設定工程と、
前記基準位置に基づき、前記第2位置算出方法による前記移動体の位置推定を行う位置推定工程と、を有し、
前記基準位置設定工程は、前記測位位置の測位の精度を表す精度情報に基づいて、前記探索範囲のサイズを決定する、制御方法である。
また、請求項に記載の発明は、
第1位置算出方法による移動体の測位位置を取得する位置取得手段と、
前記測位位置に基づき探索範囲を設定し、当該探索範囲内において第2位置算出方法の基準位置を設定する基準位置設定手段と、
前記基準位置に基づき、前記第2位置算出方法による前記移動体の位置推定を行う位置推定手段
としてコンピュータを機能させ、
前記基準位置設定手段は、前記測位位置の測位の精度を表す精度情報に基づいて、前記探索範囲のサイズを決定する、プログラムである。
運転支援システムの概略構成図である。 車載機の機能的構成を示すブロック図である。 自己位置推定部が推定すべき自己位置を2次元直交座標で表した図である。 ボクセルデータの概略的なデータ構造の一例を示す。 自己位置推定部の機能ブロックの一例である。 ワールド座標系における2次元平面上での、ボクセルデータが存在するボクセルとこれらのボクセル付近の位置を示す計測点との位置関係を示す。 立体交差がある道路付近での車両の俯瞰図を示す。 GNSSの測位位置及びイニシャル位置探索範囲を明示した道路の俯瞰図を示す。 (A)イニシャル位置探索範囲内におけるボクセルを明示した図である。(B)イニシャル位置探索範囲内のボクセルデータが示すz座標値の度数分布を示す。 候補ボクセル及び候補ボクセルの順番を明示した俯瞰図を示す。 簡易NDT処理を行った場合の対応付け比率の遷移を示すグラフである。 仮想ボクセル及び仮想ボクセルの順番を明示した俯瞰図を示す。 簡易NDT処理を行った場合の対応付け比率の遷移を示すグラフである。 実施例に係る自己位置推定処理の概要を示すフローチャートの一例である。 対象移動体が車両である場合の実施例に係るイニシャル位置設定処理の手順を示すフローチャートの一例である。 対象移動体が船舶である場合の実施例に係るイニシャル位置設定処理の手順を示すフローチャートの一例である。 変形例に係る自己位置推定処理の概要を示すフローチャートの一例である。 対象移動体が車両である場合の変形例に係るイニシャル位置設定処理の手順を示すフローチャートの一例である。 対象移動体が船舶である場合の変形例に係るイニシャル位置設定処理の手順を示すフローチャートの一例である。
本発明の好適な実施形態によれば、情報処理装置は、第1位置算出方法による移動体の測位位置を取得する位置取得手段と、前記測位位置に基づき探索範囲を設定し、当該探索範囲内において第2位置算出方法の基準位置を設定する基準位置設定手段と、前記基準位置に基づき、前記第2位置算出方法による前記移動体の位置推定を行う位置推定手段と、を有し、前記基準位置設定手段は、前記測位位置の測位の精度を表す精度情報に基づいて、前記探索範囲のサイズを決定する。この態様によれば、情報処理装置は、第2位置算出方法に用いる基準位置の探索範囲を第1位置算出方法の精度に応じて適切に定めることができる。
上記情報処理装置の一態様では、前記第1位置算出方法は、GNSSによる測位であり、前記前記基準位置設定手段は、前記GNSSの精度情報に基づいて、前記探索範囲のサイズを決定する。この態様により、情報処理装置は、第1位置算出方法をGNSSとし、第2位置算出方法に用いる基準位置を探索する範囲をGNSSの精度情報に応じて適切に定めることができる。
上記情報処理装置の他の一態様では、前記基準位置設定手段は、前記精度情報が示す精度が高いほど、前記探索範囲のサイズを小さくする。この態様により、情報処理装置は、第2位置算出方法に用いる基準位置の探索範囲のサイズを適切に定めることができる。
上記情報処理装置の他の一態様では、前記位置推定手段は、前記第2位置算出方法として、単位領域であるボクセルごとの物体の位置を表すボクセルデータと、前記移動体に設けられた計測装置の出力に基づく点群データとの照合に基づき、前記位置推定を行う。この態様により、情報処理装置は、移動体の位置推定を高精度に実行することができる。
上記情報処理装置の他の一態様では、前記位置推定手段は、直前の処理時刻において決定された前記移動体の推定位置が存在しない場合、前記基準位置に基づき、前記点群データの座標系を前記ボクセルデータの座標系に変換する。この態様により、情報処理装置は、基準位置設定手段が設定した基準位置を用いて第2位置算出手段の実行に必要な点群データの座標変換を好適に実行することができる。
上記情報処理装置の他の一態様では、前記移動体は車両であり、前記基準位置設定手段は、前記探索範囲内に存在するボクセルごとの高さ方向の位置の度数分布に基づき、前記車両が存在する候補ボクセルを決定する。この態様により、情報処理装置は、道路毎の道路面はおよそ高さが一致するという一般的傾向を鑑み、車両が存在する候補ボクセルを好適に決定することができる。
上記情報処理装置の他の一態様では、前記移動体は船舶であり、前記基準位置設定手段は、前記探索範囲内にボクセルデータが存在しない仮想のボクセルを、前記船舶が存在する候補ボクセルとして決定する。一般に、水上にはボクセルデータが存在しないという事情を鑑み、船舶が存在する候補ボクセルを好適に決定することができる。
上記情報処理装置の他の一態様では、前記基準位置設定手段は、前記候補ボクセルの各々を探索開始位置として簡易化した前記第2位置算出方法による位置の探索及び評価指標の算出を行い、前記評価指標が所定値より大きい前記簡易化した第2位置算出方法の結果を、前記基準位置として決定する。この態様により、情報処理装置は、処理負荷を考慮しつつ基準位置を高精度に決定することができる。
上記情報処理装置の他の一態様では、直前の処理時刻において決定された前記移動体の推定位置が存在し、かつ、前記直前の処理時刻での前記第2位置算出方法の評価指標が所定値未満である場合、前記基準位置設定手段は、前記基準位置を決定し、前記位置推定手段は、当該基準位置に基づき、現在の処理時刻の前記点群データの座標系を前記ボクセルデータの座標系に変換する。この態様により、情報処理装置は、第2位置算出方法の精度が悪化した場合に、基準位置設定手段が設定した基準位置を基準として点群データの座標変換を行うことで、第2位置算出方法において局所解に陥ることに起因したマッチングのずれ等が生じた状態から好適に復帰することができる。
上記情報処理装置の他の一態様では、前記位置推定手段は、直前の処理時刻において決定された前記移動体の推定位置が存在し、かつ、前記評価指標が前記所定値以上である場合、当該推定位置に基づき、現在の処理時刻の前記点群データの座標系を前記ボクセルデータの座標系に変換する。このように、情報処理装置は、第2位置算出方法の精度が保たれている場合には、第2位置算出方法の位置算出結果に基づいて点群データの座標変換を行う。
本発明の他の好適な実施形態によれば、コンピュータが実行する制御方法であって、第1位置算出方法による移動体の測位位置を取得する位置取得工程と、前記測位位置に基づき探索範囲を設定し、当該探索範囲内において第2位置算出方法の基準位置を設定する基準位置設定工程と、前記基準位置に基づき、前記第2位置算出方法による前記移動体の位置推定を行う位置推定工程と、を有し、前記基準位置設定工程は、前記測位位置の測位の精度を表す精度情報に基づいて、前記探索範囲のサイズを決定する。コンピュータは、この制御方法を実行することで、第2位置算出方法に用いる基準位置の探索範囲を第1位置算出方法の精度に応じて適切に定めることができる。
本発明のさらに別の好適な実施形態によれば、プログラムは、第1位置算出方法による移動体の測位位置を取得する位置取得手段と、前記測位位置に基づき探索範囲を設定し、当該探索範囲内において第2位置算出方法の基準位置を設定する基準位置設定手段と、前記基準位置に基づき、前記第2位置算出方法による前記移動体の位置推定を行う位置推定手段としてコンピュータを機能させ、前記基準位置設定手段は、前記測位位置の測位の精度を表す精度情報に基づいて、前記探索範囲のサイズを決定する。コンピュータは、プログラムを実行することで、第2位置算出方法に用いる基準位置の探索範囲を第1位置算出方法の精度に応じて適切に定めることができる。好適には、上記プログラムは、記憶媒体に記憶される。
以下、図面を参照して本発明の好適な実施例について説明する。なお、任意の記号の上に「^」または「-」が付された文字を、本明細書では便宜上、「A^」または「A」(「A」は任意の文字)と表す。
(1)運転支援システムの概要
図1は、本実施例に係る運転支援システムの概略構成である。運転支援システムは、移動体である車両又は船舶と共に移動する情報処理装置1と、当該車両又は船舶に搭載されたセンサ群2とを有する。以後では、情報処理装置1と共に移動する車両又は船舶を「対象移動体」とも呼ぶ。
情報処理装置1は、センサ群2と電気的に接続し、センサ群2に含まれる各種センサの出力に基づき、情報処理装置1が設けられた対象移動体の位置(「自己位置」とも呼ぶ。)の推定を行う。そして、情報処理装置1は、自己位置の推定結果に基づき、設定された目的地への経路に沿って走行するように、対象移動体の自動運転制御等の運転支援を行う。情報処理装置1は、対象移動体に設けられたナビゲーション装置であってもよく、車両又は船舶に内蔵された電子制御装置であってもよい。
また、情報処理装置1は、ボクセルデータ「VD」を含む地図データベース(DB:DataBase)10を記憶する。ボクセルデータVDは、3次元空間の最小単位となる立方体(正規格子)を示すボクセルごとに静止構造物の位置情報等を記録したデータである。ボクセルデータVDは、各ボクセル内の静止構造物の計測された点群データを正規分布により表したデータを含み、後述するように、NDT(Normal Distributions Transform)を用いたスキャンマッチングに用いられる。情報処理装置1は、NDTスキャンマッチングにより少なくとも対象移動体の平面上の位置及びヨー角の推定を行う。なお、情報処理装置1は、対象移動体の高さ位置、ピッチ角及びロール角の推定をさらに行ってもよい。特に言及がない限り、自己位置は、対象移動体のヨー角などの姿勢角も含まれるものとする。
センサ群2は、対象移動体に設けられた種々の外界センサ及び内界センサを含んでいる。本実施例では、センサ群2は、ライダ(Lidar:Light Detection and Ranging、または、Laser Illuminated Detection And Ranging)3と、対象移動体の速度を検出する速度センサ4と、GPS(Global Positioning Satellite)受信機5と、対象移動体の角速度を検出するジャイロセンサ6とを含んでいる。
ライダ3は、水平方向および垂直方向の所定の角度範囲に対してパルスレーザを出射することで、外界に存在する物体までの距離を離散的に測定し、当該物体の位置を示す3次元の点群データを生成する。この場合、ライダ3は、照射方向を変えながらレーザ光を照射する照射部と、照射したレーザ光の反射光(散乱光)を受光する受光部と、受光部が出力する受光信号に基づくスキャンデータ(点群データを構成する点であり、以後では「計測点」と呼ぶ。)を出力する出力部とを有する。計測点は、受光部が受光したレーザ光に対応する照射方向と、上述の受光信号に基づき特定される当該レーザ光の応答遅延時間とに基づき生成される。なお、一般的に、対象物までの距離が近いほどライダの距離測定値の精度は高く、距離が遠いほど精度は低い。ライダ3は、本発明における「計測装置」の一例である。
なお、センサ群2は、ジャイロセンサ6に代えて、又はこれに加えて、3軸方向における対象移動体の加速度及び角速度を計測する慣性計測装置(IMU:Inertial Measurement Unit)を有してもよい。また、センサ群2は、GPS受信機5に代えて、GPS以外のGNSSの測位結果を生成する受信機を有してもよい。
(2)情報処理装置の構成
図2は、情報処理装置1のハードウェア構成の一例を示すブロック図である。情報処理装置1は、主に、インターフェース11と、メモリ12と、コントローラ13と、を有する。これらの各要素は、バスラインを介して相互に接続されている。
インターフェース11は、情報処理装置1と外部装置とのデータの授受に関するインターフェース動作を行う。本実施例では、インターフェース11は、ライダ3、ジャイロセンサ6、速度センサ4、及びGPS受信機5などのセンサから出力データを取得し、コントローラ13へ供給する。また、インターフェース11は、例えば、コントローラ13が生成した対象移動体の制御に関する信号を、対象移動体の電子制御装置(ECU:Electronic Control Unit)へ供給する。インターフェース11は、無線通信を行うためのネットワークアダプタなどのワイヤレスインターフェースであってもよく、ケーブル等により外部装置と接続するためのハードウェアインターフェースであってもよい。インターフェース11は、入力装置、表示装置、音出力装置等の種々の周辺装置とのインターフェース動作を行ってもよい。
メモリ12は、RAM(Random Access Memory)、ROM(Read Only Memory)、ハードディスクドライブ、フラッシュメモリなどの各種の揮発性メモリ及び不揮発性メモリにより構成される。メモリ12は、コントローラ13が所定の処理を実行するためのプログラムが記憶される。なお、コントローラ13が実行するプログラムは、メモリ12以外の記憶媒体に記憶されてもよい。
また、メモリ12は、ボクセルデータVDを含む地図DB10を記憶する。
なお、地図DB10は、インターフェース11を介して情報処理装置1と接続されたハードディスクなどの情報処理装置1の外部の記憶装置に記憶されてもよい。上記の記憶装置は、情報処理装置1と通信を行うサーバ装置であってもよい。また、上記の記憶装置は、複数の装置から構成されてもよい。また、地図DB10は、定期的に更新されてもよい。この場合、例えば、コントローラ13は、インターフェース11を介し、地図情報を管理するサーバ装置から、自己位置が属するエリアに関する部分地図情報を受信し、地図DB10に反映させる。
また、メモリ12には、地図DB10の他、本実施例において情報処理装置1が実行する処理に必要な情報が記憶される。例えば、メモリ12には、ライダ3が1周期分の走査を行った場合に得られる点群データに対してダウンサンプリングを行う場合のダウンサンプリングのサイズの設定に用いられる情報が記憶される。
コントローラ13は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、TPU(Tensor Processing Unit)などの1又は複数のプロセッサを含み、情報処理装置1の全体を制御する。この場合、コントローラ13は、メモリ12等に記憶されたプログラムを実行することで、自己位置推定に関する処理を行う。
また、コントローラ13は、機能的には、自己位置推定部15を有する。そして、コントローラ13は、「位置取得手段」、「基準位置設定手段」、「位置推定手段」及びプログラムを実行するコンピュータ等として機能する。
自己位置推定部15は、ライダ3の出力に基づく点群データと、当該点群データが属するボクセルに対応するボクセルデータVDとに基づき、NDTに基づくスキャンマッチング(NDTスキャンマッチング)を行うことで、自己位置の推定を行う。ここで、自己位置推定部15による処理対象となる点群データは、ライダ3が生成した点群データであってもよく、当該点群データをダウンサンプリング処理した後の点群データであってもよい。
(3)NDTスキャンマッチングに基づく位置推定
次に、自己位置推定部15が実行するNDTスキャンマッチングに基づく位置推定に関する説明を行う。GNSSに基づく位置推定は、本発明における「第1位置算出方法」の一例であり、NDTスキャンマッチングに基づく位置推定は、本発明における「第2位置算出方法」の一例である。
図3は、自己位置推定部15が推定すべき自己位置を2次元直交座標で表した図である。図3に示すように、xyの2次元直交座標上で定義された平面での自己位置は、座標「(x、y)」、対象移動体の方位(ヨー角)「ψ」により表される。ここでは、ヨー角ψは、対象移動体の進行方向とx軸とのなす角として定義されている。座標(x、y)は、例えば緯度及び経度の組合せに相当する絶対位置、あるいは所定地点を原点とした位置を示すワールド座標である。そして、自己位置推定部15は、これらのx、y、ψを推定パラメータとする自己位置推定を行う。なお、自己位置推定部15は、x、y、ψに加えて、3次元直交座標系での対象移動体の高さ位置、ピッチ角、ロール角の少なくともいずれかをさらに推定パラメータとして推定する自己位置推定を行ってもよい。
次に、NDTスキャンマッチングに用いるボクセルデータVDについて説明する。ボクセルデータVDは、各ボクセル内の静止構造物の計測された点群データを正規分布により表したデータを含む。
図4は、ボクセルデータVDの概略的なデータ構造の一例を示す。ボクセルデータVDは、ボクセル内の点群を正規分布で表現する場合のパラメータの情報を含み、本実施例では、図4に示すように、ボクセルIDと、ボクセル座標と、平均ベクトルと、共分散行列とを含む。
「ボクセル座標」は、各ボクセルの中心位置などの基準となる位置の絶対的な3次元座標を示す。なお、各ボクセルは、空間を格子状に分割した立方体であり、予め形状及び大きさが定められているため、ボクセル座標により各ボクセルの空間を特定することが可能である。ボクセル座標は、ボクセルIDとして用いられてもよい。
「平均ベクトル」及び「共分散行列」は、対象のボクセル内での点群を正規分布で表現する場合のパラメータに相当する平均ベクトル及び共分散行列を示す。なお、任意のボクセル「n」内の任意の点「i」の座標を
(i)=[x(i)、y(i)、z(i)]
と定義し、ボクセルn内での点群数を「N」とすると、ボクセルnでの平均ベクトル「μ」及び共分散行列「V」は、それぞれ以下の式(1)及び式(2)により表される。
Figure 2022085320000002
Figure 2022085320000003
次に、ボクセルデータVDを用いたNDTスキャンマッチングの概要について説明する。
車両又は船舶を想定したNDTによるスキャンマッチングは、水平面(ここではxy座標とする)内の移動量及び車両又は船舶の向きを要素とした推定パラメータ
P=[t、t、tψ
を推定することとなる。ここで、「t」は、x方向の移動量を示し、「t」は、y方向の移動量を示し、「tψ」は、ヨー角を示す。
また、ライダ3が出力する点群データの座標を、
(j)=[x(j)、y(j)、z(j)]
とすると、X(j)の平均値「L´」は、以下の式(3)により表される。
Figure 2022085320000004
そして、上述の推定パラメータPを用い、平均値L´を座標変換すると、変換後の座標「L」は、以下の式(4)により表される。
Figure 2022085320000005
そして、自己位置推定部15は、地図DB10と同一の座標系である絶対的な座標系(「ワールド座標系」とも呼ぶ。)に変換した点群データに対応付けられるボクセルデータVDを探索し、そのボクセルデータVDに含まれる平均ベクトルμと共分散行列Vとを用い、ボクセルnの評価関数値(「個別評価関数値」とも呼ぶ。)「E」を算出する。この場合、自己位置推定部15は、以下の式(5)に基づき、ボクセルnの個別評価関数値Eを算出する。
Figure 2022085320000006
そして、自己位置推定部15は、以下の式(6)により示される、マッチングの対象となる全てのボクセルを対象とした総合的な評価関数値(「スコア値」とも呼ぶ。)「E(k)」を算出する。スコア値Eは、マッチングの適合度を示す指標となる。
Figure 2022085320000007
その後、自己位置推定部15は、ニュートン法などの任意の求根アルゴリズムによりスコア値E(k)が最大となるとなる推定パラメータPを算出する。そして、自己位置推定部15は、時刻kにおいてデッドレコニングにより算出した位置(「DR位置」とも呼ぶ。)「XDR(k)」に対し、推定パラメータPを適用することで、NDTスキャンマッチングに基づく自己位置(「NDT位置」とも呼ぶ。)「XNDT(k)」を算出する。ここで、DR位置XDR(k)は、推定自己位置X^(k)の算出前の暫定的な自己位置に相当し、予測自己位置「X(k)」とも表記する。この場合、NDT位置XNDT(k)は、以下の式(7)により表される。
Figure 2022085320000008
そして、自己位置推定部15は、NDT位置XNDT(k)を、現在の処理時刻kでの最終的な自己位置の推定結果(「推定自己位置」とも呼ぶ。)「X^(k)」とみなす。
図5は、自己位置推定部15の機能ブロックの一例である。図5に示すように、自己位置推定部15は、デッドレコニングブロック21と、DR位置算出ブロック22と、座標変換ブロック23と、点群データ対応付けブロック24と、NDT位置算出ブロック25とを有する。
デッドレコニングブロック21は、速度センサ4、GPS受信機5、ジャイロセンサ6等の出力に基づく対象移動体の移動速度と角速度を用い、前回時刻からの移動距離と方位変化を求める。DR位置算出ブロック22は、直前の処理時刻である時刻k-1の推定自己位置X(k-1)に対し、デッドレコニングにより求めた移動距離と方位変化を加えた時刻kでのDR位置XDR(k)を算出する。このDR位置XDR(k)は、デッドレコニングに基づき時刻kにおいて求められた自己位置であり、予測自己位置X(k)に相当する。
また、自己位置推定開始直後であって、時刻k-1の推定自己位置X(k-1)が存在しない場合等には、デッドレコニングブロック21は、後述する方法により、時刻k-1の推定自己位置X(k-1)に相当する初期位置(「イニシャル位置」とも呼ぶ。)を設定する。そして、デッドレコニングブロック21は、設定したイニシャル位置に対してデッドレコニングにより求めた移動距離と方位変化を加えたDR位置XDRを算出する。なお、イニシャル位置の設定は、自己位置推定処理の開始直後以外においても、NDTスキャンマッチングの信頼度が低下した場合においても同様に実行される。イニシャル位置の設定方法については、「(4)イニシャル位置の設定」のセクションで詳しく説明する。イニシャル位置は、本発明における「基準位置」の一例である。
座標変換ブロック23は、ライダ3の出力に基づく点群データを、地図DB10と同一の座標系であるワールド座標系に変換する。この場合、座標変換ブロック23は、例えば、時刻kでDR位置算出ブロック22が出力する予測自己位置に基づき、時刻kでの点群データの座標変換を行う。なお、移動体に設置されたライダを基準とした座標系の点群データを移動体の座標系に変換する処理、及び移動体の座標系からワールド座標系に変換する処理等については、例えば、国際公開WO2019/188745などに開示されている。
点群データ対応付けブロック24は、座標変換ブロック23が出力するワールド座標系の点群データと、同じワールド座標系で表されたボクセルデータVDとを照合することで、点群データとボクセルとの対応付けを行う。NDT位置算出ブロック25は、点群データと対応付けがなされた各ボクセルを対象として、式(5)に基づく個別評価関数値を算出し、式(6)に基づくスコア値E(k)が最大となるとなる推定パラメータPを算出する。そして、NDT位置算出ブロック25は、式(7)に基づき、DR位置算出ブロック22が出力するDR位置XDR(k)に対し、時刻kで求めた推定パラメータPを適用することで定まる時刻kでのNDT位置XNDT(k)を求める。NDT位置算出ブロック25は、NDT位置XNDT(k)を、時刻kでの推定自己位置X^(k)として出力する。
ここで、計測点とボクセルデータVDとの対応付けの具体的手順について、簡単な例を用いて補足説明する。
図6は、ワールド座標系におけるx-yの2次元平面上でのボクセルデータVDが存在するボクセル「Vo1」~「Vo6」とこれらのボクセル付近の位置を示す計測点61~65との位置関係を示す。ここでは、説明の便宜上、ボクセルVo1~Vo6の中心位置のワールド座標系のz座標と、計測点61~65のワールド座標系のz座標とは同一であるものとする。
まず、座標変換ブロック23は、計測点61~65を含む点群データをワールド座標系に変換する。その後、点群データ対応付けブロック24は、ワールド座標系の計測点61~65の端数等の丸め処理を行う。図6の例では、立方体である各ボクセルのサイズが1mであることから、点群データ対応付けブロック24は、各計測点61~65のx、y、z座標の夫々の小数点以下を四捨五入する。
次に、点群データ対応付けブロック24は、ボクセルVo1~Vo6に対応するボクセルデータVDと、各計測点61~65の座標との照合を行うことで、各計測点61~65に対応するボクセルを判定する。図6の例では、計測点61の(x,y)座標は、上述の四捨五入により(2,1)となることから、点群データ対応付けブロック24は、計測点61をボクセルVo1と対応付ける。同様に、計測点62及び計測点63の(x,y)座標は、上述の四捨五入により(3,2)となることから、点群データ対応付けブロック24は、計測点62及び計測点63をボクセルVo5と対応付ける。また、計測点64の(x,y)座標は、上述の四捨五入により(2,3)となることから、点群データ対応付けブロック24は、計測点64をボクセルVo6と対応付ける。一方、計測点65の(x,y)座標は、上述の四捨五入により(4,1)となることから、点群データ対応付けブロック24は、計測点65に対応するボクセルデータVDが存在しないと判定する。その後、NDT位置算出ブロック25は、点群データ対応付けブロック24が対応付けた計測点とボクセルデータVDとを用いて推定パラメータPの推定を行う。なお、この例では、ダウンサンプリング後の計測点数は5個であるが、対応計測点数Ncは4個となる。対応計測点数Ncは、周辺に構造物が少なく疎な空間の場合に少なくなり、また対象移動体の近くに他の移動体等が存在してライダの光ビームが遮られてしまう現象(オクルージョンと呼ぶ)が生じた場合も少なくなる。
(4)イニシャル位置の設定
次に、自己位置推定部15によるイニシャル位置の設定について説明する。
(4-1)概要
概略的には、自己位置推定部15は、GNSSの測位位置と精度情報とに基づきイニシャル位置の探索範囲を決定し、探索範囲内で候補となるボクセルの各々に対する簡易的なNDTスキャンマッチングの処理結果に基づき、イニシャル位置を決定する。
ここで、まず、GNSSの測位位置をイニシャル位置とする場合の問題点について、図7を参照して説明する。
図7(A)及び図7(B)は、立体交差がある道路付近での対象移動体(ここでは車両)の俯瞰図を示す。ここで、図7(A)は、GNSSの測位精度が良好である場合にGNSSの測位結果に基づきグローバル座標系に変換した計測点とライダ3の測距範囲(円70参照)とを示す。また、図7(B)は、GNSSの測位精度が悪い場合にGNSSの測位結果に基づきグローバル座標系に変換した計測点とライダ3の測距範囲(円71参照)とを示す。また、図7(B)では、GNSSの測位結果(位置及び向き)を矢印73により示している。
GNSS測位精度が良ければ、GNSSによる測位位置をイニシャル位置とすることで、NDTスキャンマッチングによる自己位置推定は問題なく実行される。図7(A)の例では、座標変換後の計測点は、計測された地物の表面位置とおよそ一致し、本来対応付けられるべきボクセルデータVDと適切に対応付けられるため、高精度にNDTスキャンマッチングが行われる。一方、GNSS測位精度が悪いと、図7(B)に示すように、点群データと本来対応付けられるべきボクセルデータVDとが大きくずれることもあり、NDTスキャンマッチングが最適解に至らず、局所解に陥る可能性がある。
以上を勘案し、本実施例に係る自己位置推定部15は、GNSSの測位位置と精度情報とに基づきイニシャル位置の探索範囲(「イニシャル位置探索範囲Ri」とも呼ぶ。)を決定し、イニシャル位置の探索を行う。以後では、対象移動体が車両の場合と対象移動体が船舶の場合とで個別に説明する。
(4-2)対象移動体が車両の場合
対象移動体が車両の場合のイニシャル位置探索範囲Riの設定について具体的に説明する。図8(A)は、GNSSの測位位置を明示した道路の俯瞰図を示し、図8(B)は、GNSSの測位位置に基づき設定したイニシャル位置探索範囲Riを明示した道路の俯瞰図を示す。
まず、自己位置推定部15は、GPS受信機5の出力信号に基づき、GNSSによる測位位置と精度情報とを取得する。ここで、精度情報は、例えば、位置精度低下率であるPDOP(Position Dilution Of Precision)であってもよく、誤差の標準偏差である2DRMS(Twice the Distance Root Mean Square)であってもよい。そして、自己位置推定部15は、図8(B)に示すように、GNSSの測位位置を中心とし、精度情報が示す精度に応じたサイズとなる正方形のイニシャル位置探索範囲Riを設定する。この場合、イニシャル位置探索範囲Riのサイズは、精度情報が示す精度が高いほど小さくなるように設定される。例えば、精度情報が示す精度とイニシャル位置探索範囲Riのサイズとの関係を示すルックアップテーブル又は式がメモリ12に記憶されており、自己位置推定部15は、メモリ12に記憶された情報に基づき精度情報からイニシャル位置探索範囲Riのサイズを決定する。なお、イニシャル位置探索範囲Riの形状は、正方形に限らず、円であってもよい。
次に、自己位置推定部15は、イニシャル位置探索範囲Ri内のボクセルデータVDが示すz座標値(高さ方向の座標値)の度数分布を作成し、高頻度のz座標値を有するボクセルデータVDに対応するボクセルを道路面の候補とみなす。図9(A)は、図8(B)に示すイニシャル位置探索範囲Ri内におけるボクセルを明示した図であり、図9(B)は、イニシャル位置探索範囲Ri内のボクセルデータVDが示すz座標値の度数分布を示す。
図9(A)に示すように、まず、自己位置推定部15は、設定したイニシャル位置探索範囲Ri内のボクセルを認識し、当該ボクセルに対応するボクセルデータVDを地図DB10から抽出する。そして、自己位置推定部15は、図9(B)に示すz座標値の度数分布を生成する。図9(B)に示す度数分布では、4mから6mの範囲と、12mから14mの範囲とで局所的なピークが形成されている。よって、自己位置推定部15は、度数分布における上述のピークの範囲に該当するボクセルを、道路面を含むボクセルであって対象移動体が存在する位置の候補となるボクセル(「候補ボクセル」とも呼ぶ。)とみなす。
なお、自己位置推定部15は、例えば、度数に対する所定の閾値(図9(B)の例では6)を設け、当該閾値以上となる1又は複数の範囲を、度数分布におけるピーク範囲とみなす。上述の閾値は、ボクセルデータVDが存在するイニシャル位置探索範囲Ri内のボクセルの数又はイニシャル位置探索範囲Riのサイズ等に応じて変動する可変値であってもよい。
次に、自己位置推定部15は、候補ボクセルを、矢印73が示すGNSSの測位位置に近い順に並べる(詳しくは、近い順に通し番号を付す)。図10(A)は、候補ボクセルを明示した俯瞰図を示し、図10(B)は、GNSSの測位位置に近い順となる順番を候補ボクセル上において明示した俯瞰図を示す。図10(A)に示すように、この場合、候補ボクセルとして、GNSSの測位位置に近い道路面を含むボクセル及び道路面と同一高さのボクセルが抽出される。そして、図10(B)に示すように、矢印73が示すGNSSの測位位置に近い順に、通し番号が候補ボクセルに割り当てられる。なお、図10(B)では20までの番号となっているが、実際にはすべての候補ボクセルに通し番号が割り当てられる。
次に、自己位置推定部15は、割り当てた順番に従い逐次的に候補ボクセルを選択し、選択した候補ボクセルの位置に基づく位置を探索開始位置として簡易的なNDTスキャンマッチング(簡易NDT処理)を実行する。そして、自己位置推定部15は、実行した簡易NDT処理の信頼度の指標が所定の閾値以上となった場合に、当該簡易NDT処理の結果を、イニシャル位置として設定する。
簡易NDT処理は、演算時間を短縮するため、最適解を求めるための繰り返し回数(スコア値E(k)の算出回数)をNDT位置の算出時よりも減らして粗いマッチングを行う処理に相当する。なお、簡易NDT処理では、繰り返し回数をNDT位置の算出時よりも減らすことに代えて、又はこれに加えて、ライダ3が出力する点群データに対して適用するダウンサンプリングのサイズを通常のNDT位置算出時よりも大きくしてもよい。これによっても、NDTスキャンマッチングの対象となる計測点数を減らし、簡易NDT処理の演算時間を短縮することができる。
また、本実施例では、簡易NDT処理の信頼度の指標の一例として、NDTスキャンマッチングに用いる点群データの計測点数のうちボクセルデータVDと対応付けられた計測点数の比率(「対応付け比率DAR(Data Association Ratio)」とも呼ぶ。)を用いる。一般的に、対応付け比率DARが低いほど、NDTスキャンマッチングによる位置推定精度が低下する傾向がある。
図11は、図10(B)に示す順番に従い簡易NDT処理を行った場合の対応付け比率DARの遷移を示すグラフである。図11では、イニシャル位置となるボクセルを決定するための対応付け比率DARに対して設定した閾値(ここでは0.7)を明示している。
図11に示すように、自己位置推定部15は、割り当てた順番に従い候補ボクセルを選択し、選択した候補ボクセルに対応する位置に基づき探索開始位置を設定して簡易NDT処理を行い、対応付け比率DARの算出及び閾値との比較を行う。この場合、例えば、探索開始位置のx、y座標値を、対象の候補ボクセルのx、y座標値と同一とし、探索開始位置のz座標値を、対象の候補ボクセルのz座標値に車両高を加えた値にするとよい。車両高は、例えばメモリ12に予め記憶されている。
そして、図11の例では、自己位置推定部15は、17番を割り当てた候補ボクセルに対応する位置に基づき探索開始位置を設定して簡易NDT処理を行った場合に、対応付け比率DARが0.7を超えたと判定する。よって、この場合、自己位置推定部15は、17番を割り当てた候補ボクセルに対応する簡易NDT処理の結果を、イニシャル位置として設定する。
(4-3)対象移動体が船舶の場合
次に、対象移動体が船舶の場合について説明する。まず、自己位置推定部15は、GPS受信機5の出力信号に基づき、GNSSによる測位位置と精度情報とを取得し、GNSSの測位位置を中心とし、精度情報が示す精度に応じたサイズとなる正方形(円形であってもよい)のイニシャル位置探索範囲Riを設定する。イニシャル位置探索範囲Riの設定については、対象移動体が車両の場合と同様であるため、ここでは詳細な説明を省略する。
次に、自己位置推定部15は、イニシャル位置探索範囲Ri内においてボクセルデータVDが存在しない場所は水上である可能性が高いと判定し、ボクセルデータVDが存在しない場所の座標を取得する。ここでは、ボクセル座標単位とするため、自己位置推定部15は、ボクセルデータVDが存在しない仮想的なボクセル(「仮想ボクセル」とも呼ぶ。)を、水上面を含むボクセルであって対象移動体が存在する位置の候補となる候補ボクセルとして取得する。そして、自己位置推定部15は、仮想ボクセルである候補ボクセルを、GNSSの測位位置に近い順に並べる。
図12(A)は、イニシャル位置探索範囲Ri内における候補ボクセルを明示した俯瞰図を示す。また、図12(B)は、候補ボクセルに対し、矢印73が示すGNSSの測位位置に近い順番を明示した俯瞰図を示す。
図12(A)に示すように、河川75の水上位置及びボクセルデータVDが存在しない地上位置に対応する仮想ボクセルが、候補ボクセルとして抽出されている。そして、そして、図12(B)に示すように、矢印73が示すGNSSの測位位置に近い順に、通し番号が候補ボクセルに割り当てられる。なお、図12(B)では13までの番号となっているが、実際にはすべての候補ボクセルに通し番号が割り当てられる。
次に、自己位置推定部15は、割り当てた順番に従い逐次的に候補ボクセルを選択し、選択した候補ボクセルの位置に基づく位置を探索開始位置として簡易NDT処理を実行する。そして、自己位置推定部15は、対応付け比率DARが所定の閾値以上となった場合に、対応する簡易NDT処理の結果を、イニシャル位置として設定する。
図13は、図12(B)に示す順番に従い簡易NDT処理を行った場合の対応付け比率DARの遷移を示すグラフである。図13では、イニシャル位置となるボクセルを決定するための対応付け比率DARに対して設定した閾値(ここでは0.7)を明示している。
図13に示すように、自己位置推定部15は、割り当てた順番に従い仮想ボクセルである候補ボクセルを選択し、選択した候補ボクセルに対応する位置に基づき探索開始位置を設定して簡易NDT処理を行い、対応付け比率DARの算出及び閾値との比較を行う。この場合、例えば、探索開始位置のx、y座標値を、対象の候補ボクセルのx、y座標値と同一とし、探索開始位置のz座標値を、予想潮位に船舶の水面からの高さを加算した値にするとよい。この場合、例えば、自己位置推定部15は、インターフェース11を介し、現在の各地点での予想潮位を管理するサーバ装置から、対象移動体が存在する地点に対応する予想潮位に関する情報を受信する。また、自己位置推定部15は、船舶の水面からの高さを、センサ群2の出力等に基づき算出してもよく、メモリ12に予め記憶された固定値であってもよい。
そして、図13の例では、自己位置推定部15は、6番を割り当てた候補ボクセルに対応する探索開始位置を設定して簡易NDT処理を行った場合に、対応付け比率DARが0.7を超えたと判定する。よって、この場合、自己位置推定部15は、6番を割り当てた候補ボクセルに対応する簡易NDT処理の結果を、イニシャル位置として設定する。
(5)処理フロー
次に、情報処理装置1の自己位置推定部15が実行する自己位置推定に関する処理フローについて、図14~図16を参照して説明する。
(5-1)処理概要
図14は、情報処理装置1の自己位置推定部15が実行する自己位置推定処理の概要を示すフローチャートの一例である。自己位置推定部15は、図14のフローチャートの処理を、電源がオンになった場合など、自己位置推定を行う必要が生じた場合に開始する。
まず、自己位置推定部15は、イニシャル位置を設定する処理であるイニシャル位置設定処理を実行する(ステップS11)。イニシャル位置設定処理の詳細については、図15及び図16を参照して後述する。
次に、自己位置推定部15は、速度センサ4とジャイロセンサ6等に基づき検出した対象移動体の移動速度及び角速度と、前回の推定自己位置とから、デッドレコニングを実行し、予測自己位置となるDR位置XDRを算出する(ステップS12)。次に、自己位置推定部15は、ライダ3の出力に基づく点群データを、ワールド座標系の点群データに変換する(ステップS13)。また、自己位置推定部15は、ステップS13の座標変換の直前又は直後において、ライダ3が出力した点群データのダウンサンプリングを実行してもよい。
そして、自己位置推定部15は、ステップS12で算出したDR位置XDRを初期値として、NDTマッチング処理を実施することで、推定自己位置X^とするNDT位置XNDTを算出する(ステップS14)。また、コントローラ13は、ワールド座標系に変換された点群データとボクセルデータVDが存在するボクセルとの対応付けの結果に基づき、対応付け比率DARの算出を行う。
そして、自己位置推定部15は、対応付け比率DARが所定値未満であるか否か判定する(ステップS15)。この所定値は、例えば、予めメモリ12に記憶されている。そして、自己位置推定部15は、対応付け比率DARが所定値未満であると判定した場合(ステップS15;Yes)、ステップS11へ処理を戻す。この場合、自己位置推定部15は、NDTスキャンマッチング(及び算出されたNDT位置XNDT)の信頼度が低下しており、次の処理時刻ではイニシャル位置の設定から位置推定を行うべきと判定し、ステップS11へ処理を戻す。一方、自己位置推定部15は、対応付け比率DARが所定値以上である場合(ステップS15;No)、NDT位置XNDTの信頼度が維持されていると判断し、ステップS16へ処理を進める。
次に、自己位置推定部15は、自己位置推定処理を終了すべきか否か判定する(ステップS16)。そして、コントローラ13は、自己位置推定処理を終了すべきと判定した場合(ステップS16;Yes)、フローチャートの処理を終了する。一方、コントローラ13は、自己位置推定処理を継続する場合(ステップS16;No)、ステップS12へ処理を戻し、ステップS14で算出した推定自己位置X^を用いて、次の処理時刻での自己位置の推定を行う。
(5-2)イニシャル位置設定処理:対象移動体が車両
図15は、対象移動体が車両である場合に図14のステップS11で実行するイニシャル位置設定処理の手順を示すフローチャートの一例である。
まず、自己位置推定部15は、GPS受信機5の出力信号等に基づき、GNSS測位による緯度及び経度の位置(即ちx、y座標値)と精度情報とを取得する(ステップS21)。そして、自己位置推定部15は、ステップS21で取得した精度情報に基づき、GNSSの測位位置を中心とするイニシャル位置探索範囲Riを設定する(ステップS22)。
次に、自己位置推定部15は、イニシャル位置探索範囲Riに存在するボクセルデータVDを地図DB10から取得する(ステップS23)。そして、自己位置推定部15は、ステップS23で取得した各ボクセルデータVDが示すz座標値(即ち高さ)の度数分布を作成する(ステップS24)。そして、自己位置推定部15は、頻度が高いz座標値を持つボクセルデータVDのボクセルを、候補ボクセルとして、イニシャル位置探索範囲Riに存在するボクセルから抽出する(ステップS25)。
そして、自己位置推定部15は、ステップS25で抽出したボクセルを、GNSS測位位置(ここでは、x座標値及びy座標値により定める2次元位置)に近い順に並べる(ステップS26)。そして、自己位置推定部15は、ステップS26で並べた順番において最初のボクセルを選択する(ステップS27)。
そして、自己位置推定部15は、選択されたボクセルの座標値(z座標値は車両高を加算した値)を仮のイニシャル位置とみなして簡易NDT処理を実施する(ステップS28)。また、自己位置推定部15は、簡易NDT処理における対応付け比率DARを算出する。
そして、自己位置推定部15は、対応付け比率DARが所定値より大きいか否か判定する(ステップS29)。そして、自己位置推定部15は、対応付け比率DARが所定値より大きい場合(ステップS29;Yes)、簡易NDT処理の結果は信頼性があるとみなし、簡易NDT処理の結果を、イニシャル位置に設定する(ステップS30)。
一方、自己位置推定部15は、対応付け比率DARが所定値以下である場合(ステップS29;No)、ステップS26で並べた順番において最後の順番となる候補ボクセルを対象としていたか否か判定する(ステップS31)。そして、自己位置推定部15は、最後の候補ボクセルを対象としていた場合(ステップS31;Yes)、イニシャル位置探索範囲Riを拡大する(ステップS32)。この場合、自己位置推定部15は、例えば、イニシャル位置探索範囲Riの境界を上下左右に5mずつ外側にずらし、イニシャル位置探索範囲Riを拡大する。その後、自己位置推定部15は、ステップS23へ処理を戻す。なお、この場合、自己位置推定部15は、ステップS26において候補ボクセルを並べる場合には、簡易NDT処理を実行済みの候補ボクセルを除外するとよい。
一方、自己位置推定部15は、最後の候補ボクセルを対象としていない場合(ステップS31;No)、次の順番となる候補ボクセルを選択する(ステップS33)。そして、ステップS28において、選択した候補ボクセルを対象として簡易NDT処理を行う。
(5-3)イニシャル位置設定処理:対象移動体が船舶
図16は、対象移動体が船舶である場合に図14のステップS11で実行するイニシャル位置設定処理の手順を示すフローチャートの一例である。
まず、自己位置推定部15は、対象移動体である船舶が存在する地点における予想潮位を、気象庁の公開情報等から取得する(ステップS41)。この場合、例えば、自己位置推定部15は、インターフェース11を介し、現在の各地点での予想潮位を管理するサーバ装置から、対象移動体が存在する地点に対応する予想潮位に関する情報を受信する。
そして、自己位置推定部15は、GPS受信機5の出力信号等に基づき、GNSS測位による緯度及び経度の位置(即ちx、y座標値)と精度情報とを取得する(ステップS42)。そして、自己位置推定部15は、ステップS42で取得した精度情報に基づき、GNSSの測位位置を中心とするイニシャル位置探索範囲Riを設定する(ステップS43)。
次に、自己位置推定部15は、イニシャル位置探索範囲Ri内でボクセルデータVDが存在しない仮想ボクセルを、候補ボクセルとして抽出する(ステップS44)。この場合、自己位置推定部15は、ボクセル座標単位による仮想的なボクセル座標リストを対象の仮想ボクセルのリストとして作成する。そして、自己位置推定部15は、GNSS測位位置に近い順から仮想ボクセルを並べる(ステップ45)。そして、自己位置推定部15は、順番が最小となる仮想ボクセルを選択する(ステップS46)。
次に、自己位置推定部15は、選択された仮想ボクセルの座標により簡易NDT処理を実行する(ステップS47)。この場合、自己位置推定部15は、簡易NDT処理においてイニシャル位置とするz座標値を、ステップS41で取得した予想潮位に対象移動体である船舶の水面からの高さを加算した値に設定する。
次に、自己位置推定部15は、対応付け比率DARが所定値より大きいか否か判定する(ステップS48)。そして、自己位置推定部15は、対応付け比率DARが所定値より大きい場合(ステップS48;Yes)、簡易NDT処理の結果を、イニシャル位置に設定する(ステップS49)。
一方、自己位置推定部15は、対応付け比率DARが所定値以下である場合(ステップS48;No)、ステップS45で並べた順番において最後のボクセルを対象としていたか否か判定する(ステップS50)。そして、自己位置推定部15は、最後のボクセルを対象としていた場合(ステップS50;Yes)、イニシャル位置探索範囲Riを拡大する(ステップS51)。この場合、自己位置推定部15は、イニシャル位置探索範囲Riの境界を上下左右に5mずつ外側にずらし、イニシャル位置探索範囲Riを拡大する。その後、自己位置推定部15は、ステップS44へ処理を戻す。なお、この場合、自己位置推定部15は、ステップS45においてボクセルを並べる場合には、簡易NDT処理を実行済みのボクセルを除外するとよい。
一方、自己位置推定部15は、ステップS45で並べた順番において最後のボクセルを対象としていない場合(ステップS50;No)、次の順番となるボクセルを選択する(ステップS52)。そして、ステップS47において、選択したボクセルを対象として簡易NDT処理を行う。
(6)変形例
以下、上述の実施例に好適な変形例について説明する。以下の変形例は、組み合わせてこれらの実施例に適用してもよい。
(変形例1)
図14のステップS15で対応付け比率DARが所定値未満である場合に実行するイニシャル位置設定処理では、自己位置推定部15は、イニシャル位置探索範囲RiをGNSS測位結果およびGNSS測位の精度情報に基づき設定する代わりに、前回の推定自己位置およびNDTスキャンマッチングの信頼度に基づきイニシャル位置探索範囲Riを設定してもよい。以後では、上記のイニシャル位置設定処理を、「復帰用イニシャル位置設定処理」とも呼ぶ。即ち、復帰用イニシャル位置設定処理は、自己位置推定処理を繰り返し実行中であってNDT位置XNDTの算出に関する信頼度の指標(ここでは対応付け比率DAR)が所定値未満の場合に実行するイニシャル位置設定処理である。
図17は、変形例1に係る自己位置推定処理の概要を示すフローチャートの一例である。自己位置推定部15は、図17のフローチャートの処理を、電源がオンになった場合など、自己位置推定を行う必要が生じた場合に開始する。
まず、自己位置推定部15は、図15又は図16において説明したイニシャル位置設定処理を実行する(ステップS61)。次に、自己位置推定部15は、速度センサ4とジャイロセンサ6等に基づき検出した対象移動体の移動速度及び角速度と、前回の推定自己位置とから、デッドレコニングを実行し、予測自己位置となるDR位置XDRを算出する(ステップS62)。次に、自己位置推定部15は、ライダ3の出力に基づく点群データを、ワールド座標系の点群データに変換する(ステップS63)。
そして、自己位置推定部15は、ステップS62で算出したDR位置XDRを初期値として、NDTマッチング処理を実施することで、推定自己位置X^となるNDT位置XNDTを算出する(ステップS64)。また、コントローラ13は、ワールド座標系に変換された点群データとボクセルデータVDが存在するボクセルとの対応付けの結果に基づき、対応付け比率DARの算出を行う。
そして、自己位置推定部15は、対応付け比率DARが所定値未満であるか否か判定する(ステップS65)。そして、自己位置推定部15は、対応付け比率DARが所定値未満であると判定した場合(ステップS65;Yes)、復帰用イニシャル位置設定処理を実行する(ステップS66)。この場合、自己位置推定部15は、NDTスキャンマッチング(及び算出されたNDT位置XNDT)の信頼度が低下しており、復帰用イニシャル位置設定処理を実行する必要があると判定する。復帰用イニシャル位置設定処理の詳細については、図18及び図19を参照して説明する。一方、自己位置推定部15は、対応付け比率DARが所定値以上である場合(ステップS65;No)、NDT位置XNDTの信頼度が維持されていると判断し、ステップS67へ処理を進める。
次に、自己位置推定部15は、自己位置推定処理を終了すべきか否か判定する(ステップS67)。そして、コントローラ13は、自己位置推定処理を終了すべきと判定した場合(ステップS67;Yes)、フローチャートの処理を終了する。一方、コントローラ13は、自己位置推定処理を継続する場合(ステップS67;No)、ステップS62へ処理を戻し、ステップS64で算出した推定自己位置X^を用いて、次の処理時刻での自己位置の推定を行う。
図18は、対象移動体が車両である場合に図17のステップS66で実行するイニシャル位置設定処理の手順を示すフローチャートの一例である。
まず、自己位置推定部15は、直前に実行したNDTスキャンマッチングにおける対応付け比率DARから信頼度情報を生成する(ステップS71)。なお、信頼度情報はイニシャル位置探索範囲Riのサイズを決定するための情報であり、対応付け比率DARそのものであってもよく、対応付け比率DARと正の相関を有し対応付け比率DARから所定の算出式により求められる指標値であってもよい。自己位置推定部15は、信頼度情報の値が小さいほど自己位置のずれは大きいと判断し、イニシャル位置探索範囲Riのサイズを大きくする。また、自己位置推定部15は、信頼度情報の値が比較的大きければ推定自己位置のずれは小さいと判断し、イニシャル位置探索範囲Riのサイズを小さくする。そして、自己位置推定部15は、信頼度情報からイニシャル位置探索範囲Riを設定する(ステップS72)。この場合、自己位置推定部15は、中心位置を直前に求めたNDT位置XNDT(推定自己位置X^)とし、サイズを信頼度情報の値が小さいほど大きくしたイニシャル位置探索範囲Riを設定する。
その後、自己位置推定部15は、設定したイニシャル位置探索範囲Riに基づき、ステップS73~ステップS83において、図15のステップS23~ステップS33と同一処理を実行する。これにより、自己位置推定部15は、イニシャル位置探索範囲Ri内の候補ボクセルを抽出し、対応付け比率DARが所定値より大きくなった候補ボクセルの簡易NDT処理の結果を、イニシャル位置として定める。
図19は、対象移動体が船舶である場合に図17のステップS66で実行するイニシャル位置設定処理の手順を示すフローチャートの一例である。
まず、自己位置推定部15は、対象移動体である船舶が存在する地点における予想潮位を、気象庁の公開情報等から取得する(ステップS91)。次に、自己位置推定部15は、直前に実行したNDTスキャンマッチングにおける対応付け比率DARから信頼度情報を生成する(ステップS92)。そして、自己位置推定部15は、信頼度情報からイニシャル位置探索範囲Riを設定する(ステップS93)。この場合、自己位置推定部15は、中心位置を直前に求めたNDT位置XNDT(推定自己位置X^)とし、サイズを信頼度情報の値が小さいほど大きくしたイニシャル位置探索範囲Riを設定する。
その後、自己位置推定部15は、設定したイニシャル位置探索範囲Riに基づき、ステップS94~ステップS102において、図16のステップS44~ステップS52と同一処理を実行する。これにより、自己位置推定部15は、イニシャル位置探索範囲Ri内の仮想ボクセルを抽出し、対応付け比率DARが所定値より大きくなった仮想ボクセルの簡易NDT処理の結果を、イニシャル位置として定める。
このように、本変形例によれば、直前のNDTスキャンマッチングの結果に基づいて復帰用イニシャル位置設定処理を好適に実行することができる。
(変形例2)
自己位置推定部15は、全候補ボクセルの各々の位置を探索開始位置とした簡易NDT処理を実行し、対応付け比率DARが最大となるボクセルに対する簡易NDT処理結果を、イニシャル位置として定めてもよい。例えば、図15に示す車両のイニシャル位置設定処理では、自己位置推定部15は、ステップS25で候補ボクセルを抽出後、抽出した全ボクセルの各々を対象としてステップS28の簡易NDT処理を実行する。そして、自己位置推定部15は、対応付け比率DARが最も高い簡易NDT処理の結果を、イニシャル位置として定める。
本変形例によれば、処理時間は増加するものの、決定されるイニシャル位置の信頼性を好適に向上させることができる。
(変形例3)
簡易NDT処理の結果をイニシャル位置とするか否かの判定(図15のステップS29、図16のステップS48等参照)に用いる評価指標として対応付け比率DARを用いる代わりに、他の指標を用いてもよい。
例えば、自己位置推定部15は、0~1の値域となるNDTスキャンマッチングの信頼度指標「NRI:NDT Reliability Index)」を上述の評価指標として用いてもよい。この場合、自己位置推定部15は、信頼度指標NRIが所定値より大きい簡易NDT処理の結果をイニシャル位置として定める。
ここで、信頼度指標NRIの算出について説明する。まず、自己位置推定部15は、各時刻でのダウンサンプリングサイズを「DSS」とすると、スコア値E及び対応付け比率DARを用いて、NDTスキャンマッチングの信頼度値「NRV(NDT Reliability Value)」を以下の式により算出する。
NRV=DSS×E×DAR (8)
なお、この場合、前提として、ダウンサンプリングサイズは、ダウンサンプリング後の点群データにおいてボクセルデータVDと対応付けられた計測点数(「対応計測点数」とも呼ぶ。)が所定の目標範囲となるように、各処理時刻において適応的に変更されるものとする。例えば、自己位置推定部15は、各処理時刻において、対応計測点数が目標範囲の上限より多い時には、次の処理時刻でのダウンサンプリングサイズを所定率(例えば1.1)又は所定値だけ大きくし、対応計測点数が目標範囲の下限より少ない時には、次の処理時刻でのダウンサンプリングサイズを所定率又は所定値だけ小さくする。一方、自己位置推定部15は、各処理時刻において、対応計測点数が目標範囲内である場合には、ダウンサンプリングサイズを維持する。このようなダウンサンプリングサイズの適応的設定では、対応計測点数が多いほどダウンサンプリングサイズが大きくなるため、ダウンサンプリングサイズが大きいほどNDT処理の信頼度が高くなることが推察される。
次に、自己位置推定部15は、信頼度値NRVを0~1の値域となるように正規化した信頼度指標NRIを算出する。例えば、自己位置推定部15は、以下の式(8)~式(11)のいずれかを用いて、信頼度値NRVを信頼度指標NRIに変換する。
Figure 2022085320000009
なお、式(8)~式(11)において、信頼度値NRVに所定の係数αを乗じてもよい。
信頼度指標NRIを上述の評価指標として用いた場合、スコア値Eも加味されるため、簡易NDT処理での繰り返し回数は多めにする必要があり、処理時間が増加するが、評価指標としての厳密性が向上する。なお、自己位置推定部15は、対応付け比率DAR及び信頼度指標NRIに代えて、スコア値Eを上述の評価指標として用いてもよい。この場合、自己位置推定部15は、スコア値Eが所定値より大きい簡易NDT処理の結果を、イニシャル位置として決定する。
同様に、自己位置推定部15は、イニシャル位置設定処理および復帰用イニシャル位置設定処理を行うか否かの判定(図14のステップS15、図17のステップS65等参照)に用いる評価指標として対応付け比率DARを用いる代わりに、信頼度指標NRI又はスコア値Eを用いてもよい。また、自己位置推定部15は、(変形例1)の図18のステップS71又は図19のステップS92においても、対応付け比率DARに代えて、信頼度指標NRI又はスコア値Eから信頼度情報を生成してもよい。
(変形例4)
ボクセルデータVDは、図4に示すように、平均ベクトルと共分散行列とを含むデータ構造に限定されない。例えば、ボクセルデータVDは、平均ベクトルと共分散行列を算出する際に用いられる計測整備車両が計測した点群データをそのまま含んでいてもよい。
以上説明したように、本実施例に係る情報処理装置1のコントローラ13は、対象移動体を第1位置算出方法であるGNSSによる測位位置を取得する。そして、コントローラ13は、GNSSによる測位位置に基づきイニシャル位置探索範囲Riを設定し、当該イニシャル位置探索範囲Ri内において第2位置算出方法であるNDTスキャンマッチングの基準位置を設定する。そして、コントローラ13は、設定した基準位置に基づき、NDTスキャンマッチングによる対象移動体の位置推定を行う。この場合、コントローラ13は、GNSSの測位位置の測位の精度を表す精度情報に基づいて、イニシャル位置探索範囲Riのサイズを決定する。これにより、情報処理装置1は、NDTスキャンマッチングにおいて基準となる基準位置を的確に探索して設定することができる。
なお、上述した実施例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータであるコントローラ等に供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記憶媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記憶媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記憶媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。
以上、実施例を参照して本願発明を説明したが、本願発明は上記実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。すなわち、本願発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。また、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。
1 情報処理装置
2 センサ群
3 ライダ
4 速度センサ
5 GPS受信機
6 ジャイロセンサ
10 地図DB

Claims (13)

  1. 第1位置算出方法による移動体の測位位置を取得する位置取得手段と、
    前記測位位置に基づき探索範囲を設定し、当該探索範囲内において第2位置算出方法の基準位置を設定する基準位置設定手段と、
    前記基準位置に基づき、前記第2位置算出方法による前記移動体の位置推定を行う位置推定手段と、を有し、
    前記基準位置設定手段は、前記測位位置の測位の精度を表す精度情報に基づいて、前記探索範囲のサイズを決定する、
    情報処理装置。
  2. 前記第1位置算出方法は、GNSSによる測位であり、
    前記基準位置設定手段は、前記GNSSの精度情報に基づいて、前記探索範囲のサイズを決定する、請求項1に記載の情報処理装置。
  3. 前記基準位置設定手段は、前記精度情報が示す精度が高いほど、前記探索範囲のサイズを小さくする、請求項1または2に記載の情報処理装置。
  4. 前記位置推定手段は、前記第2位置算出方法として、単位領域であるボクセルごとの物体の位置を表すボクセルデータと、前記移動体に設けられた計測装置の出力に基づく点群データとの照合に基づき、前記位置推定を行う、請求項1~3のいずれか一項に記載の情報処理装置。
  5. 前記位置推定手段は、直前の処理時刻において決定された前記移動体の推定位置が存在しない場合、前記基準位置に基づき前記点群データの座標系を前記ボクセルデータの座標系に変換する、請求項4に記載の情報処理装置。
  6. 前記移動体は車両であり、
    前記基準位置設定手段は、前記探索範囲内に存在するボクセルごとの高さ方向の位置の度数分布に基づき、前記車両が存在する候補ボクセルを決定する、請求項4または5に記載の情報処理装置。
  7. 前記移動体は船舶であり、
    前記基準位置設定手段は、前記探索範囲内にボクセルデータが存在しない仮想のボクセルを、前記船舶が存在する候補ボクセルとして決定する、請求項4または5に記載の情報処理装置。
  8. 前記基準位置設定手段は、前記候補ボクセルの各々を探索開始位置として簡易化した前記第2位置算出方法による位置の探索及び評価指標の算出を行い、前記評価指標が所定値より大きい前記簡易化した第2位置算出方法の結果を、前記基準位置として決定する、請求項6または7に記載の情報処理装置。
  9. 直前の処理時刻において決定された前記移動体の推定位置が存在し、かつ、前記直前の処理時刻での前記第2位置算出方法の評価指標が所定値未満である場合、
    前記基準位置設定手段は、前記基準位置を決定し、
    前記位置推定手段は、当該基準位置に基づき、現在の処理時刻の前記点群データの座標系を前記ボクセルデータの座標系に変換する、請求項4~8のいずれか一項に記載の情報処理装置。
  10. 前記位置推定手段は、直前の処理時刻において決定された前記移動体の推定位置が存在し、かつ、前記評価指標が前記所定値以上である場合、当該推定位置に基づき、現在の処理時刻の前記点群データの座標系を前記ボクセルデータの座標系に変換する、請求項9に記載の情報処理装置。
  11. コンピュータが実行する制御方法であって、
    第1位置算出方法による移動体の測位位置を取得する位置取得工程と、
    前記測位位置に基づき探索範囲を設定し、当該探索範囲内において第2位置算出方法の基準位置を設定する基準位置設定工程と、
    前記基準位置に基づき、前記第2位置算出方法による前記移動体の位置推定を行う位置推定工程と、を有し、
    前記基準位置設定工程は、前記測位位置の測位の精度を表す精度情報に基づいて、前記探索範囲のサイズを決定する、制御方法。
  12. 第1位置算出方法による移動体の測位位置を取得する位置取得手段と、
    前記測位位置に基づき探索範囲を設定し、当該探索範囲内において第2位置算出方法の基準位置を設定する基準位置設定手段と、
    前記基準位置に基づき、前記第2位置算出方法による前記移動体の位置推定を行う位置推定手段
    としてコンピュータを機能させ、
    前記基準位置設定手段は、前記測位位置の測位の精度を表す精度情報に基づいて、前記探索範囲のサイズを決定する、プログラム。
  13. 請求項12に記載のプログラムを記憶した記憶媒体。
JP2020196939A 2020-11-27 2020-11-27 情報処理装置、制御方法、プログラム及び記憶媒体 Pending JP2022085320A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020196939A JP2022085320A (ja) 2020-11-27 2020-11-27 情報処理装置、制御方法、プログラム及び記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020196939A JP2022085320A (ja) 2020-11-27 2020-11-27 情報処理装置、制御方法、プログラム及び記憶媒体

Publications (1)

Publication Number Publication Date
JP2022085320A true JP2022085320A (ja) 2022-06-08

Family

ID=81892744

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020196939A Pending JP2022085320A (ja) 2020-11-27 2020-11-27 情報処理装置、制御方法、プログラム及び記憶媒体

Country Status (1)

Country Link
JP (1) JP2022085320A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102621780B1 (ko) * 2022-12-02 2024-01-09 주식회사 라이드플럭스 복수의 측위 기술 퓨전을 통한 자율주행 차량의 측위 방법, 장치 및 컴퓨터프로그램

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102621780B1 (ko) * 2022-12-02 2024-01-09 주식회사 라이드플럭스 복수의 측위 기술 퓨전을 통한 자율주행 차량의 측위 방법, 장치 및 컴퓨터프로그램

Similar Documents

Publication Publication Date Title
WO2018221453A1 (ja) 出力装置、制御方法、プログラム及び記憶媒体
JP6721784B2 (ja) 情報処理装置、サーバ装置、制御方法、プログラム及び記憶媒体
WO2018221455A1 (ja) 更新装置、制御方法、プログラム及び記憶媒体
JP2017072422A (ja) 情報処理装置、制御方法、プログラム及び記憶媒体
JP6980010B2 (ja) 自己位置推定装置、制御方法、プログラム及び記憶媒体
CN110262482A (zh) 一种无人船航速控制方法及无人船
WO2020085062A1 (ja) 計測精度算出装置、自己位置推定装置、制御方法、プログラム及び記憶媒体
JP6740470B2 (ja) 測定装置、測定方法およびプログラム
JP2018206038A (ja) 点群データ処理装置、移動ロボット、移動ロボットシステム、および点群データ処理方法
JP2022085320A (ja) 情報処理装置、制御方法、プログラム及び記憶媒体
KR102469164B1 (ko) 무인 수상선의 지구물리적 내비게이션 장치 및 방법
JP2022090373A (ja) 情報処理装置、制御方法、プログラム及び記憶媒体
US20240151849A1 (en) Information processing device, control method, program, and storage medium
WO2022124115A1 (ja) 情報処理装置、制御方法、プログラム及び記憶媒体
WO2021112177A1 (ja) 情報処理装置、制御方法、プログラム及び記憶媒体
US20240175687A1 (en) Map data structure, storage device, information processing device, program, and storage medium
WO2023037502A1 (ja) サーバ装置、制御方法、プログラム及び記憶媒体
WO2023037500A1 (ja) 情報処理装置、判定方法、プログラム及び記憶媒体
US20240175984A1 (en) Information processing device, control method, program, and storage medium
WO2023062782A1 (ja) 情報処理装置、制御方法、プログラム及び記憶媒体
JPWO2018212280A1 (ja) 測定装置、測定方法およびプログラム
JP2022129058A (ja) 情報処理装置、制御方法、プログラム及び記憶媒体
WO2022102577A1 (ja) 情報処理装置、制御方法、プログラム及び記憶媒体
WO2021112078A1 (ja) 情報処理装置、制御方法、プログラム及び記憶媒体
JP2022137864A (ja) 情報処理装置、制御方法、プログラム及び記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231020

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240614

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240625