JP7468254B2 - 位置姿勢算出方法および位置姿勢算出プログラム - Google Patents

位置姿勢算出方法および位置姿勢算出プログラム Download PDF

Info

Publication number
JP7468254B2
JP7468254B2 JP2020144088A JP2020144088A JP7468254B2 JP 7468254 B2 JP7468254 B2 JP 7468254B2 JP 2020144088 A JP2020144088 A JP 2020144088A JP 2020144088 A JP2020144088 A JP 2020144088A JP 7468254 B2 JP7468254 B2 JP 7468254B2
Authority
JP
Japan
Prior art keywords
moving body
orientation
map
target moving
acquisition device
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.)
Active
Application number
JP2020144088A
Other languages
English (en)
Other versions
JP2022039188A (ja
Inventor
麻子 北浦
卓志 藤田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2020144088A priority Critical patent/JP7468254B2/ja
Priority to US17/324,504 priority patent/US20220065634A1/en
Priority to EP21175928.7A priority patent/EP3961155A1/en
Publication of JP2022039188A publication Critical patent/JP2022039188A/ja
Application granted granted Critical
Publication of JP7468254B2 publication Critical patent/JP7468254B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/28Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
    • G01C21/30Map- or contour-matching
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/38Electronic maps specially adapted for navigation; Updating thereof
    • G01C21/3804Creation or updating of map data
    • G01C21/3807Creation or updating of map data characterised by the type of data
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/42Determining position
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30244Camera pose
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects

Landscapes

  • Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Electromagnetism (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Navigation (AREA)
  • Image Analysis (AREA)
  • Traffic Control Systems (AREA)

Description

本発明は、移動体が取得するデータの取得位置と姿勢を算出する位置姿勢算出方法および位置姿勢算出プログラムに関する。
従来、移動体が移動中に取得した周辺状況に関するデータを入力とし、移動体の走行経路と周辺環境地図を同時に作成するSLAM(Simultaneous Localization and Mapping)という技術がある。また、SLAM技術の中でも、移動体が撮影した映像などの動画像を入力として、移動体の走行時のカメラ位置・姿勢を推定する技術は、Visual-SLAM(以後、「V-SLAM」という)と呼ばれる。
V-SLAMは、移動体が取得するデータ(以下「車載データ」という)の一例である車載カメラで撮影した動画像を入力とし、撮影した動画像に映る被写体の変化を用いて、自車走行経路(自車位置・姿勢)と周辺環境地図(周辺の被写体の画像特徴点群の3次元位置マップ、以下、「3D環境マップ」あるいは、単に「マップ」という)を推定作成することができる技術であり、動画像から移動体の自車位置と姿勢を算出し、推定することができる。
また、LiDAR(Light Detection and Ranging)は、光を用いたリモートセンシング技術の一つであり、パルス状に発光するレーザー照射に対する散乱光を測定し、遠距離にある対象までの距離やその対象の性質を分析することができる。SLAMでは、車載データの一例であるLiDARデータのような任意の電磁波やレーザー光を用いた測距センサデータを使って、移動体の自車位置と姿勢を算出し、推定することもできる。
近年、コネクテッドカーの普及などに伴い、車両などの移動体の車載機・ドライブレコーダーのデータ(映像など)をセンターに集めて分析することで、車両を周辺地物状況を把握するセンサとして活用するサービスが検討されている。たとえば、落下物の場所を特定して利用するイベント発生検知サービスや、地図更新のため、地物の設置位置変化を把握する地図変化検知サービスなどがある。
関連する先行技術としては、V-SLAMを用いた高精度な位置・姿勢推定をおこなう技術がある。
特開2020-67439号公報
しかしながら、周辺変化に迅速に対応してこれらのサービスを実現するには、動画像やLiDARデータなどの車載データ取得時の自車位置・姿勢、すなわち、車載画像を撮影したカメラ位置・姿勢あるいは車載データの取得位置・姿勢を実座標系で、できるだけ高速にかつ高精度に推定する必要がある。
一つの側面では、本発明は、移動体または当該移動体に搭載される取得装置が取得するデータの取得位置と姿勢を高速にかつ高精度に求めることを目的とする。
一つの実施態様では、情報処理装置が、移動体または当該移動体に搭載された取得装置がデータを取得する際の取得位置を含む複数の環境マップの経路情報と、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報との比較をおこない、前記比較の結果に基づいて、前記複数の環境マップの中から、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出に用いる算出用環境マップを特定する位置姿勢算出方法が提供される。
本発明の一側面によれば、移動体または当該移動体に搭載される取得装置が取得するデータの取得位置と姿勢を高速にかつ高精度に求めることができる。
図1は、各3D環境マップに対応する道路のイメージを示す説明図である。 図2は、各3D環境マップ群に属する3D画像特徴群を模式的に示す説明図(その1)である。 図3は、各3D環境マップ群に属する3D画像特徴群を模式的に示す説明図(その2)である。 図4は、本実施の形態にかかる位置姿勢算出方法および位置姿勢算出プログラムの概要の一例を示す説明図である。 図5は、実施の形態1にかかる位置姿勢算出方法を実現するシステム構成の一例を示す説明図である。 図6は、サーバのハードウェア構成の一例を示すブロック図である。 図7は、車載機のハードウェア構成の一例を示すブロック図である。 図8は、実施の形態1にかかる3D環境マップの構成の一例を示す説明図である。 図9は、実施の形態1にかかる環境マップ作成部およびマップ登録部の処理の一例を示すフローチャートである。 図10は、マップの経路情報を形状とした例を示す説明図である。 図11は、実施の形態1にかかる移動経路・移動方向比較部、マップ取得部および位置姿勢推定部の処理の一例を示すフローチャートである。 図12は、実施の形態2にかかる位置姿勢算出方法を実現するシステム構成の一例を示す説明図である。 図13は、実施の形態2にかかる3D環境マップの構成の一例を示す説明図である。 図14は、実施の形態2にかかる環境マップ作成部およびマップ展開登録部の処理の一例を示すフローチャートである。 図15は、実施の形態2にかかる移動経路・移動方向比較部および位置姿勢推定部の処理の一例を示すフローチャートである。
以下に図面を参照して、本発明にかかる位置姿勢算出方法および位置姿勢算出プログラムの実施の形態を詳細に説明する。
(位置姿勢算出方法および位置姿勢算出プログラムの概要)
周辺環境地図である3D環境マップは、車載データのデータ特徴の3D位置群(3Dデータ特徴点群)からなり、任意の車載データに対し、マップのどの3Dマップ要素(3D画像特徴点)が車載データのどこに写りこんでいるか、を解析して、どこから周辺状況のデータを取得したか、すなわち、車載データのセンサ(たとえば撮影装置や測距装置)の位置姿勢を推定(算出)する。
3D環境マップを用いた、車載データの一例である動画像の撮影位置姿勢を推定するには、一般的にV-SLAMを用いることができる。V-SLAMは、動画像を入力して、各画像の画像特徴点群を抽出し、各画像特徴点群の画像内の見え変化から画像特徴3D位置(3D画像特徴群のマップ)と同時に、各画像の撮影位置姿勢を推定する。さらに、動画像取得時のGNSS(Global Navigation Satellite System)情報(たとえばGPS(Global Positioning System))を入力として用いることで、実座標系での撮影位置姿勢を高精度に推定することができる。
実座標系とは、世界座標系とも呼ばれ、世界における場所および方向を一意に表現可能な座標系であり、緯度・経度、標高、方位などが定義される。実座標系の定義方法は多種あるが、相互変換可能である。
また、撮影位置姿勢を推定するたびに毎回、3D環境マップを作成するのではなく、作成した3D環境マップを保存しておく。そして、同じ道路を走行した別の動画像の撮影位置姿勢を推定する際に、その作成保存済の3D環境マップを使うことで、撮影位置姿勢の推定処理を省力化し、利用する3D環境マップと同じ座標系(同じ精度の実座標系)で撮影位置姿勢を算出することができる。
このように、3D環境マップを整備しておけば、より高速かつ少ない計算量で位置姿勢推定(算出)を実行することができるため、広範囲にサービスを実施する際は、サービス範囲内の各道路の3D環境マップを蓄積管理することが望ましい。さらに、シーンによる映像変化に耐性のある3D環境マップを配備するためには、地物の見えが変わる道路の上り下りや、天候や昼夜などの時刻、街路樹変化の大きな季節などによって、同じ道路でも複数の3D環境マップを作成管理する場合が考えられ、より多くの3D環境マップを蓄積管理することが望ましい。
このため、作成管理した3D環境マップを使ってリアルタイムかつ低コストで撮影位置姿勢を推定するには、より迅速に大量の3D環境マップ群から利用するマップを特定する方法が必要である。
一般的に、従来の広範囲の地図群の蓄積データベースから、任意の走行に合致する地図を検索する方法として、地域メッシュを用いる方法がある。すなわち、配備地図群を地域メッシュごとに分け、地図を要する任意走行時の位置情報(緯度経度情報、撮影位置姿勢推定の場合は、推定対象の動画像に付随するGPS情報)から現在の地域メッシュを特定して、該地域メッシュに対応する地図群を取得する方法である。
地域メッシュとは、日本全国を緯度経度で分割した地図上の方眼区域のことである。国土情報のデジタル化、統計情報の管理区域として使うため、総務省が規定している(JISX040)。緯度経度値から1つの地域メッシュ番号を計算特定することができる。そして、特定したメッシュ番号の3D環境マップのデータと、車載データおよびGNSSデータを用いて、車載データの取得センサおよび移動体の位置姿勢を従来の方法、SLAMなどを用いて推定する。
この地図検索取得方法は、地域メッシュに属する道路が膨大になり、それらの道路のどれが車載データに関係する道路なのかを特定することができない。したがって、不要なマップを含んだ多数の3D環境マップを取得することになってしまい、取得時の時間およびメモリコストがかかることから、リアルタイムな位置姿勢推定ができない。
また、V-SLAMは、間違った3D環境マップの場合は位置姿勢推定に失敗し、正しい3D環境マップの場合だけ位置姿勢推定できるため、間違った3D環境マップかどうかは位置姿勢推定を実施してみないとわからないので、位置姿勢推定に成功するまで取得したマップを変えて位置姿勢推定処理を繰り返す必要がある。したがって、不要なマップの実行コストがかかる。特に、各マップを順に実行すると、本当に実施すべきマップの実行が遅れ、位置姿勢推定ができるまでに時間がかかって、リアルタイムの位置姿勢推定ができない。
また別の一般的な、従来の広範囲の地図群の蓄積データベースから任意の走行に合致する地図を検索する方法として、道路ネットワーク情報などの全国道路の道路位置・接続情報(接続形状を含めた緯度経度情報)を用いる方法がある。すなわち、道路ネットワーク情報などの全国道路の道路位置・接続情報をあらかじめ用意しておき、配備地図群をそれぞれ道路ネットワーク情報の道路リンクのどれに関係しているのかを事前に対応づける。そして、地図を要する任意走行の位置情報(同、緯度経度情報)に関係する道路リンクを特定し、同じ道路リンクに対応づけた配備地図を取得する、という方法である。
道路ネットワークとは、全国の道路を交差点などの特徴(緯度経度値を持つノード)をつなぐ接続経路(リンク(道路リンク))として表したデータ情報である。道路ネットワークには、規制速度や、道路幅員、道路車線数、リンクの旅行速度(所要時間)など様々な情報を属性として保持する場合もある。
この地図検索手法は、配備する3D環境マップと、位置姿勢推定したい走行時データ(GPSなど)の双方に対し、あらかじめ準備した全道路の道路位置・接続情報(道路リンク情報など)にそれぞれ対応づけして検索をおこなう。そのため、配備する3D環境マップ群とは別に、全道路の道路位置・接続情報(道路リンク情報)を別途配備しないと、位置姿勢推定を実施することができない。特に、この全道路の道路位置・接続情報(道路リンク情報)は、任意地点でGPSと比較できる程度の位置精度が必要である。そのため、道路形状に沿った情報である必要があり、かつ、常に道路変化に合わせて情報内容を更新管理する必要がある。また、データ量も膨大になり、配備後のメンテナンスコストが高い。さらに、道路ネットワーク情報DBの内容が更新されるたびに、3D環境マップDBの対応付けも見直す必要があるため、3D環境マップDBのメンテナンスコストも高くなる。
以上のように、従来の方法では、作成した3D環境マップ群を保持しておいても、位置姿勢推定したい車載データに対応する3D環境マップを正しく特定することができないため、位置姿勢推定がリアルタイムに実施できなかったり、3D環境マップを特定するための膨大なデータ管理コストが必要である。本実施の形態にかかる位置姿勢算出方法および位置姿勢算出プログラムは、道路ネットワーク情報などの道路地図情報を用いずに、撮影位置姿勢推定したい車載データに関する3D環境マップを特定することができる。
図1は、各3D環境マップに対応する道路のイメージを示す説明図である。図1においては、3本の道路101、102、103が示されている。道路101は上りと下りの二車線からなる道路であり、道路102は、道路101と交差する、上りと下りの二車線からなる道路であり、道路103は、道路101と交差する、上りの一車線(一方通行)からなる道路である。
また、図2および図3は、各3D環境マップ群に属する3D画像特徴群を模式的に示す説明図である。図2は、上空俯瞰図を示しており、図2においては、図1に示した道路と同じ道路における3D環境マップ群を示している。したがって、上りと下りの二車線からなる道路102が、上りと下りの二車線からなる道路101と交差しており、また、上りの一車線(一方通行)からなる道路103が、道路102と同様に、道路101と交差しているのがわかる。
そして、図2では、各道路の3D環境マップは、作成に用いた各車載映像の取得時の走行区間に対応して、複数の異なる道路区間の3D環境マップとして分割作成されている。よって、3道路101~103の各上り、下りの合計5つに対して、合計12個の3D環境マップが存在する。各道路での各3D環境マップの範囲、すなわち、どの走行区間の車載映像を用いて3D環境マップを作成するかは自由であり、たとえば、他の道路と交差する地点(交差点)までの間の区間の3D環境マップ群として分割作成することができる。あるいは、交差点を跨いだ区間として作成することもできる。
図2では、後述する3D環境マップ522の2つの要素である「3Dマップ要素」801と「データ構造化要素」802を示す。「3Dマップ要素」801は、該当する3次元位置に多数の『〇』(丸形のドット)201で示している。図2からもわかるように、多数の『○』は、3D環境マップ522の3D画像特徴点『○』群を示しており、実座標3D位置を有する、道路を走行時に画像に写る画像特徴点群である。
また、「データ構造化要素」802は、一例として「データ構造化要素」802を、ある瞬間の車載データで参照できる「3Dマップ要素」801群を纏めるものとした場合であり、図2では便宜的に、瞬間の車載データを取得した車載装置(カメラ)の3次元位置に置いた複数の「■」(矩形のドット)202として示している。
すなわち、実際の3D環境マップ522の「データ構造化要素」802は、「データ構造化要素」802の『■』202の位置で取得した車載データごとに、閲覧できる3Dマップ要素801を纏めるデータである。ただし、データ構造化要素802は、3D環境マップ522で必須な要素ではない。
図2においては、12個の3D環境マップの複数の「3Dマップ要素」801(『○』201)および12個の3D環境マップの複数の「データ構造化要素」802(『■』202)を同時に示している。したがって、複数の『○』201および『■』202の集合によって、上空俯瞰図における3本の道路101、102、103の位置の概要がわかる。
従来技術では、明らかに異なる他2つの道路や反対車線の3D環境マップを含め、これら同じ地域メッシュに属する12個の3D環境マップ群すべてを検索結果として特定取得し、位置姿勢推定を試すことになり、データ取得コスト、および、位置姿勢推定での計算コストがかかる。また、3D環境マップを順に用いて位置姿勢の算出処理を実行する場合には、最後の12番目の3D環境マップになってようやく位置姿勢推定が成功することもあり、リアルタイムでの位置姿勢算出が難しい。なお、実際の地域メッシュは、もっと範囲が広いため(たとえば3次メッシュは一辺約1kmの区間である)、さらに大量の道路と、それに付随して大量の3D環境マップが存在することになる。
図3は、図2と同様に、上空俯瞰図を示しており、図3においては、図2と同様に、図1に示した道路と同じ道路における3D環境マップを示している。したがって、道路101は上りと下りの二車線からなる道路を示しており、道路102は、道路101と交差する、上りと下りの二車線からなる道路であり、道路103は、道路101と交差する。上りの一車線(一方通行)からなる道路を示している。
さらに、図3においては、図2とは異なり、3D環境マップの経路情報803の車載データの経路情報831を示す折れ線矢印301~312を記載している。これは、作成時の車載データの経路情報であり、データ構造化要素802は、図2と同様にある瞬間の車載データの3次元位置『■』202で示しているので、この経路情報上の位置となる。
具体的には、中折れ線矢印301~305の5個は、道路101の上りにおける車載データの経路情報であり、中折れ線矢印306~309の4個は、道路101の下りにおける車載データの経路情報であり、中折れ線矢印310は、道路102の上りにおける車載データの経路情報であり、中折れ線矢印311は、道路102の下りにおける車載データの経路情報であり、中折れ線矢印312は、道路103の上りにおける車載データの経路情報である。
なお、簡単のため、図3で示した3D環境マップ群の経路情報803は、すべて、3D環境マップ作成時の取得センサのデータ取得方向(撮影方向や測距装置の設置向きなど)が、移動体の移動方向とほぼ等しい(前方カメラや前向き設置した測距装置で取得した)場合の3D環境マップ群を例として示している。後述するように、後方カメラや後ろ向き設置した測距装置で取得した車載データの場合のように、データ取得方向が移動体の移動方向と逆の場合は、たとえば3D環境マップの経路情報803の向き(図3の中折れ線矢印)の方向は逆とする。もし、道路101の上りの3D環境マップであれば、中折れ線矢印301~305のような右向き方向ではなく、逆向きの左向き方向になる。このように、データ取得方向が逆の3D環境マップが混じると、中折れ線の矢印方向が混在して図として分かりにくいため、図3では、データ取得方向が移動方向とほぼ等しいマップ群だけを示した。
図4は、本実施の形態にかかる位置姿勢算出方法および位置姿勢算出プログラムの概要の一例を示す説明図である。図4においては、位置姿勢推定部515で用いるために、移動経路・移動方向比較部513が、位置姿勢推定対象である任意車載データに対する3D環境マップ522を図3の3D環境マップ群から絞り込む様子を示している。
図4において、点線矢印400は、位置姿勢推定の対象である任意の車載データの走行経路を示している。位置姿勢推定の対象となる車載データの走行経路400は、車載データと同時に取得したGNSS情報を、取得順に並べてベクトル化したものであり、ベクトル方向が車載データの取得装置を搭載した移動体の進行方向を意味する。
なお、図4の位置姿勢推定の対象である車載データに対しても、簡単のため、図3および図4のマップ群と同様に、当該車載データのデータ取得方向(撮影方向や測距装置の設置向きなど)も移動体の移動方向とほぼ等しい(前方カメラや前向き設置した測距装置で取得した)ものとする。図4と異なり、データ取得方向が逆の場合は、後述するマップの経路情報と同様に、走行経路400の向きを反対方向などに補正加工する。
点線矢印で示す車載データの走行経路400と、中折れ線矢印で示すマップ群の経路情報301~312の移動経路・移動方向を、以下の2つのステップ(「ステップS1」:移動経路比較処理、「ステップS2」:移動方向比較処理)の処理によって比較をする。
(「ステップS1」:移動経路比較処理)
まず、「ステップS1」において、走行経路400と各マップ群の経路情報301~312を比較して、走行経路と経路情報の位置が近く、当該走行経路が一部で重なるか否かを判断する。ここで、マップ301、305、306、310、311の5個は、いずれも走行経路400と経路情報が遠くて重ならないことがわかる。したがって、これらのマップ群(3D環境マップ301、305、306、310、311)は算出用3D環境マップとしては選択されないと判断し、それらのマップ群を除外することができる。
(「ステップS2」:移動方向比較処理)
つぎに、走行経路と経路情報が近く、当該経路情報が一部で重なると判断されて選択されたマップ群302~304、307~309、312について、「ステップS2」において、経路情報の進行方向が走行経路400の進行方向と等しいか否かを判断する。ここで、マップ307、308、309の3個は、進行方向が走行経路400と逆方向であることがわかる。また、マップ312は、進行方向が走行経路400に対して略直交していることがわかる。したがって、これらのマップ群(3D環境マップ307、308、309、312)は算出用3D環境マップとしては選択されないと判断し、それらのマップ群を除外することができる。
その結果、残ったマップ群(3D環境マップ302、303、304)に絞り込むことができる。その後、絞り込まれたマップ群(3D環境マップ302、303、304)は、それぞれ、算出用3D環境マップ(利用対象マップ)として3D環境マップDB510から取得され、位置姿勢推定(算出)に用いられる。
そして、取得された算出用3D環境マップに基づいて、位置姿勢の推定(算出)をおこなう。この位置姿勢推定処理は、取得された位置姿勢算出用の3D環境マップのデータと、位置姿勢推定対象である処理対象車載データおよびGNSS情報を用いて、たとえばV-SLAMなどを用いて撮影位置姿勢を推定(算出)する。
これにより、無用な3D環境マップのデータ取得コストおよび位置姿勢推定実施コストを削減し、位置姿勢推定完了までの時間を短縮することで、位置姿勢推定をリアルタイムで実施することが可能となる。
以下、位置姿勢算出方法および位置姿勢算出プログラムの詳細な内容について、実施の形態1および実施の形態2において説明する。
(実施の形態1)
(システム構成例)
図5は、実施の形態1にかかる位置姿勢算出方法を実現するシステム構成の一例を示す説明図である。図5において、実施の形態1にかかる位置姿勢算出方法を実現するシステム(移動***置姿勢算出システム500)は、サーバ501と、移動体503に搭載される車載機502とを備える。車載機502は、移動体503に搭載され、衛星505からのGNSS情報および車載カメラ(後述する図7に示す撮像装置706)の動画像を収集する。
そして、サーバ501と車載機502とが、ネットワーク504によって接続されることにより、移動***置姿勢算出システム500を構成する。また、移動***置姿勢算出システム500は、図示は省略するが、クラウドコンピューティングシステムを用いて、その機能を実現するようにしてもよい。
移動体503は、具体的には、たとえば、データを収集するコネクテッドカーである。また、一般乗用車やタクシーなどの営業車、二輪車(自動二輪や自転車)、大型車(バスやトラック)などであってもよい。また、移動体503は、水上を移動する船舶や上空を移動する航空機、無人航空機(ドローン)、自動走行ロボットなどであってもよい。
取得装置の一例である車載機502は、車載カメラ(撮像装置706)の動画像に関する情報を収集する。また、車載機502は、測位情報の一例であるGNSS情報を含む移動体503の情報を収集する。移動体503の情報には、移動体503から収集する、移動体503の姿勢情報なども含んでもよい。また、車載機502は、撮影時刻などに関する情報も収集するようにしてもよい。
車載機502は、移動体503に搭載された専用の装置であってもよく、取り外し可能な機器であってもよい。また車載機502は、一般乗用車やタクシーなどの営業車などに搭載されているドライブレコーダーなどであってもよい。さらには、スマートフォンやタブレット端末装置などの通信機能を備えた携帯端末装置を移動体503において利用するものであってもよい。また、車載機502の各種機能の全部または一部を、移動体503が備えている機能を用いて実現するようにしてもよい。
したがって、車載機502における『車載』という表現は、移動体503に搭載されているという意味ではあるが、移動体503に搭載された専用装置という意味には限定されない。車載機502は、移動体503における情報を収集し、収集した情報をサーバ501に対して送信できる機能を持った装置であれば、どのような形態の装置であってもよい。
車載機502は、車載データに関する情報およびGNSS情報を含む移動体503の情報(車載データ)を取得し、取得した車載データを保存する。そして、保存した車載データを、無線通信によって、ネットワーク504を介して、サーバ501へ送信する。また、サーバ501から配信されたプログラムを含む各種データを、ネットワーク504を介して、無線通信により受信する。
また、車載機502は、近距離通信機能により、近くを走行中の別の移動体503の情報を取得し、サーバ501へ送信するようにしてもよい。また、車載機502どうしが、近距離通信機能により、通信をおこない、他の車載機502を介して、サーバ501との通信をおこなうようにしてもよい。
このようにして、移動***置姿勢算出システム500において、サーバ501は、移動体503に搭載された車載機502から車載データを取得するとともに、各車載機502へ各種データを配信することができる。
また、車載機502は、通信手段を備えていなくてよい。すなわち、車載機502は、サーバ501とは、ネットワーク504を介して接続されていなくてもよい。その場合は、車載機502に蓄積されたデータは、オフラインで(たとえば、記録メディアを介して人手などにより)、サーバ501に入力することができる。
サーバ501は、環境マップ作成部511、マップ登録部512、移動経路・移動方向比較部513、マップ取得部514、位置姿勢推定部515を有する。また、サーバ501は、車載データおよびGNSS情報(「車載データ+GNSS情報」521)を持つ。また、サーバ501は、内部処理データとして、3D環境マップDB510を有していてもよい。
車載データは、位置姿勢推定部515が3D環境マップ522を使って位置姿勢推定処理をおこなう対象となる車載データである。具体的には、移動体の装置で取得した移動体周辺に関するデータであり、たとえば、車載カメラの動画像、車載LiDAR装置などによる周辺測距データ、などであってもよい。
なお、環境マップ作成部511が入力するデータ(3D環境マップ作成用のデータ)と、移動経路・移動方向比較部513および位置姿勢推定部515が用いるデータ(3D環境マップを使って位置姿勢推定をおこなう対象のデータ)とは、ここでは異なる移動体の異なるシーンの車載データとして説明するが、同じ移動体および同じシーンの車載データであってもよい。
GNSS情報は、移動体503の測位位置データであり、車載データと同時に取得することができる。たとえば、一般車のGPS情報であってもよいし、それ以外の手段で取得した位置情報であってもよい。また、緯度経度値だけではなく、標高などの高さ値を含めるようにしてもよい。
環境マップ作成部511は、「車載データ+GNSS情報」521を入力し、その「車載データ+GNSS情報」521から3D(3次元)環境マップ522を作成する。
マップ登録部512は、環境マップ作成部511において作成された3D環境マップ522を3D環境マップDB510に登録する。その際、検索用のインデックスを作成してもよい。たとえば、任意のデータベース項目を検索用の別テーブルとして保持するようにしてもよい。インデックスを用いることによって、3D環境マップDB510を、より高速に検索することができる。
移動経路・移動方向比較部513は、移動体503または当該移動体503に搭載された取得装置の一例である車載機502が3D環境マップ作成用のデータを取得する際の当該取得位置を含む複数の3D環境マップ522の経路情報(後述する図8に示す経路情報803)と、位置姿勢の算出の対象となる対象移動体503または当該対象移動体に搭載された取得装置(車載機502)から取得した経路情報との比較をおこなう。
マップ取得部514は、移動経路・移動方向比較部513による比較の結果に基づいて、3D環境マップDB510に登録されている複数の環境マップの中から、対象移動体503または当該対象移動体503に搭載された取得装置(車載機502)がデータを取得する際の取得位置姿勢の算出に用いる算出用環境マップを特定(取得)する。
ここで、算出用環境マップは、対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報(図4に示した車載データ走行経路400)のうちの移動経路および移動方向の少なくともいずれかが類似する経路情報を有する3D環境マップ(図3および図4に示したマップ群302~304、307~312)であってもよい。
また、算出用環境マップは、対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報(車載データ走行経路400)のうちの移動経路および移動方向が類似する経路情報を有する3D環境マップ(図3および図4に示したマップ群302~304)であってもよい。
また、移動経路・移動方向比較部513、マップ取得部514は、移動経路および移動方向が、取得装置の種類、前記取得装置の設置位置、取得装置が取得するデータの取得方向の少なくともいずれか一つ、具体的には、たとえば、取得装置が撮影装置である場合に、当該撮影装置が後ろ向きカメラである場合に、後述する図9のフローチャートに示すように、その各種情報に基づいて移動経路および移動方向を補正するようにしてもよい。
また、移動経路・移動方向比較部513、マップ取得部514は、環境マップの経路情報、または、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得したデータ(図2~図4に示した3Dマップ要素201)の各取得位置を中心とした任意の大きさの2次元または3次元の所定形状(たとえば、円、楕円、球、楕円体など)を設定し、当該所定形状の形状内外判定を用いて、経路の重なり度を判定し、当該判定の結果に基づいて、算出用3D環境マップ522を特定するようにしてもよい。
また、移動経路・移動方向比較部513、マップ取得部514は、環境マップの経路情報、または、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報における経路(後述する図10における矢印1000)を含む任意の大きさ(図10におけるGPS誤差1001)の2次元または3次元の所定形状1002を設定し、当該所定形状1002の形状内外判定を用いて、経路の重なり度を判定し、当該判定の結果に基づいて、算出用環境マップを特定するようにしてもよい。
また、移動経路・移動方向比較部513、マップ取得部514は、複数の算出用3D環境マップ522が特定された場合に、経路の重なり度に基づいて、特定された算出用3D環境マップ522の利用優先度を算出するようにしてもよい。
位置姿勢推定部515は、マップ取得部514によって取得された算出用環境マップを用いて、対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の取得位置姿勢(「推定位置姿勢」523)を算出する。
図5においては、サーバ501が、環境マップ作成部511と、マップ登録部512と、移動経路・移動方向比較部513と、マップ取得部514と、位置姿勢推定部515と、を有する構成とした。図示は省略するが、これらの各機能部の少なくとも一つを、サーバ501に加えて、あるいは、サーバ501に代えて、車載機502が有するようにしてもよい。車載機502が、各機能部511、512、513、514、515の少なくとも一つを有する場合は、サーバ501が実施する処理の内容と同じであってもよい。また、サーバ501は複数のサーバから構成されてもよく、各機能部を分散して処理をおこなってもよい。
(サーバのハードウェア構成例)
図6は、サーバのハードウェア構成の一例を示すブロック図である。情報処理装置の一例であるサーバ501は、1つ以上のCPU(Central Processing Unit)601と、メモリ602と、ネットワークI/F(Interface)603と、記録媒体I/F604と、記録媒体605と、を有する。また、各構成部は、バス600によってそれぞれ接続される。
ここで、CPU601は、サーバ501の全体の制御を司る。メモリ602は、たとえば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、たとえば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU601のワークエリアとして使用される。メモリ602に記憶されるプログラムは、CPU601にロードされることで、コーディングされている処理をCPU601に実行させる。
ネットワークI/F603は、通信回線を通じてネットワーク504に接続され、ネットワーク504を介して他の装置(たとえば、車載機502や、他のサーバやシステム)に接続される。そして、ネットワークI/F603は、ネットワーク504と自装置内部とのインターフェースを司り、他の装置からのデータの入出力を制御する。ネットワークI/F603には、たとえば、モデムやLANアダプタなどを採用することができる。
記録媒体I/F604は、CPU601の制御にしたがって記録媒体605に対するデータのリード/ライトを制御する。記録媒体605は、記録媒体I/F604の制御で書き込まれたデータを記憶する。記録媒体605としては、たとえば、磁気ディスク、光ディスクなどが挙げられる。
なお、サーバ501は、上述した構成部のほかに、たとえば、SSD(Solid State Drive)、キーボード、ポインティングデバイス、ディスプレイなどを有していてもよい。
(車載機のハードウェア構成例)
図7は、車載機のハードウェア構成の一例を示すブロック図である。情報収集装置の一例である車載機502は、CPU701と、メモリ702と、無線通信装置703と、移動体I/F704と、受信装置705と、撮像装置(測距装置)706と、を有する。また、各構成部は、バス700によってそれぞれ接続される。
CPU701は、車載機502の全体の制御を司る。メモリ702は、たとえば、ROM、RAMおよびフラッシュROMなどを有する。具体的には、たとえば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU701のワークエリアとして使用される。メモリ702に記憶されるプログラムは、CPU701にロードされることで、コーディングされている処理をCPU701に実行させる。
無線通信装置703は、発信された電波を受信したり、電波を発信したりする。アンテナと受信装置とを含む構成であり、各種通信規格による移動通信(具体的には、たとえば、3G、4G、5G、PHS通信など)、Wi-Fi(登録商標)などの通信を送受信する機能を備えている。
移動体I/F704は、移動体503と車載機502の自装置内部とのインターフェースを司り、移動体503からのデータの入出力を制御する。したがって、車載機502は、たとえば、移動体I/F704を介して移動体503が備えるECU(各種センサなどを含む)707から情報を収集することができる。移動体I/F704は、具体的には、たとえば、有線により接続する際に用いるコネクタや近距離無線通信(具体的には、たとえば、Bluetooth(登録商標))装置などであってもよい。
受信装置(たとえばGPS受信装置などのGNSS受信装置)705は、複数の衛星505からの電波を受信し、受信した電波に含まれる情報から、地球上の現在位置を算出する。
撮像装置(たとえばカメラなど)706は、静止画や動画を撮像し、画像情報として出力する機器である。具体的には、たとえば、レンズと撮像素子とを備える構成である。具体的には、単眼カメラの映像以外に、複数カメラ(ステレオカメラ)の画像対などを含む。このように、撮影装置706は、映像(動画)や単画像(静止画)を含む動画像からなる画像情報を取得することができる。また、撮像装置706は、一般乗用車やタクシーなどの営業車に搭載されるドライブレコーダーなどであってもよい。
撮像装置706による撮像画像は、メモリ702に保存される。また、カメラなどの撮像装置706は、画像認識機能や、バーコードやQRコード(登録商標)を読み取る機能や、OMR(Optical Mark Reader)、OCR(Optical Character Reader)機能などを備えていてもよい。
また、撮影装置706は、測距装置であってもよい。測距装置706は、レーザー光を照射し、物体に当たって跳ね返ってくるまでの時間を計測し、物体までの距離や方向を測定する。具体的には、LiDARユニットなどによって、その機能を実現することができる。
図7に示したように、GNSS受信装置705および撮像装置706は、車載機502が備えていてもよく、また、移動体503が備えていたり、別途、外付けされたものを用いるようにしてもよい。その際、GNSS受信装置705あるいは撮像装置706と、車載機502とのデータのやりとりは、有線または無線通信によりおこなうようにしてもよい。
GNSS受信装置705や撮像装置706を、車載機502が備えていない場合は、移動体I/F704などを介して、それらの情報を取得するようにしてもよい。また、車載機502は、図示は省略するが、各種入力装置、ディスプレイ、メモリカードなどの記録媒体の読み書き用のインターフェース、各種入力端子などを備えていてもよい。
(3D環境マップの内容)
図8は、実施の形態1にかかる3D環境マップの構成の一例を示す説明図である。図8において、3D環境マップ522(522a~522c)は、3Dマップ要素(3D画像特徴要素)801と、データ構造化要素802と、経路情報803と、を有する。
また、3D環境マップ522は、図示は省略するが、保持するデータ構成要素の、3Dマップ要素801や、データ構造化要素802、経路情報803、のそれぞれに対し、各要素や情報を識別する一意の識別情報である「ID」情報を有していてもよい。なお、これらの3D環境マップ522のデータ構造化要素802は、精度のよい位置姿勢推定をおこなうためのものであり、省略することも可能である。
3Dマップ要素801は、位置姿勢推定(算出)処理で用いる車載データの特徴要素に関するデータである。たとえば、図8は、具体的な位置姿勢推定で用いる車載データの例として、車載データが画像情報(動画像)の場合を示しており、特徴要素は画像特徴であり、3Dマップ要素801は3D画像特徴である。また、3Dマップ要素(3D画像特徴要素)801は、「3次元実座標位置」811と「(特徴要素を特定するための)特定情報」812を含むが、それぞれ、画像特徴の3次元実座標位置であり、画像特徴を特定するための特定情報である。具体的な画像特徴としては、任意の画像処理手法で車載データの画像から抽出できる画像特徴点や画像特徴線などが考えられる。
なお、車載データとしてLiDARデータを用いる場合には、3Dマップ要素801は3DLiDAR特徴要素となり、LiDAR特徴要素としては、LiDAR測距データからスキャンニング角度などを用いた任意の解析処理手法で抽出できる3次元点群、同3次元点群から求めた平面群(3Dメッシュ群)や微小立体群(3Dボクセル群)などが考えられる。
3Dマップ要素801の実座標3次元位置である「3次元実座標位置」811は、特徴要素が画像特徴の場合は、V-SLAMなどの処理内で、同じ特徴要素が複数時刻の車載データ内に出現する時のデータ内位置の変化などを用いて、既知の三角測量や微小位置変化に対する最適化計算などを使って算出することができる。また、特徴要素がLiDAR特徴要素の場合は、LiDARの測距データの3次元点群の3D座標そのものを使ってもよいし、LiDARデータから既知の物体復元手法などの解析処理手法を用いて、近傍の3次元点群を繋いだ3D平面である3Dメッシュ群や点群の存在微小立体空間として作成した3Dボクセル群などの特徴要素を抽出し、それらの3次元位置を使ってもよい。
また、「特定情報」812は、特徴要素を特定するための情報であり、特徴要素を抽出した時の任意の属性情報である。たとえば画像特徴であれば画像特徴量などであってもよい。また、LiDARであれば、各3次元点周辺の3D点群密度や、または各3D平面(3Dメッシュ)の法線ベクトル、各3Dボクセル内の3D点群密度などであってもよい。さらに、LiDARデータに加えて同時撮影した動画像がある場合は、当該動画像から抽出したLiDAR3次元点に対応する画素色などであってもよい。このように、特徴要素どうしの比較および対応付けに使う属性要素であればよい。
位置姿勢推定部515は、3D環境マップ522内の3次元実座標位置811が既知である各3Dマップ要素801群が、位置姿勢推定対象の車載データ(動画像あるいはLiDAR測距結果)内に実際に現れた位置と、推定中の位置姿勢値から幾何的に計算できる車載データ内に現れるはずの位置とをそれぞれ比較する。そして、実際の位置と現れるはずの位置の差が少なくなるように最適化をおこなうことで、車載データ装置(カメラあるいはLiDAR)の(撮影あるいは測距)位置姿勢を推定することができる。このとき、多数の3Dマップ要素801群内から、位置姿勢推定対象の車載データから実際に抽出した特徴と等しいものを、比較対象としてを特定する必要があり、「特定情報」812は、この特定に用いることができる。
「特定情報」812が画像特徴量である場合は、当該画像特徴量は、一般的な画像処理で画像特徴を抽出する際に算出することができる。たとえば、画像特徴量として、画像特徴となる画素と周辺画素との輝度差状況をバイナリ値に変換した値などであってもよい。したがって、画像特徴量は、利用する画像処理の種類(画像処理で抽出する画像特徴の種類)に依存する。一般的に同じ画像特徴種類の画像特徴量どうしは比較が可能なため、任意の画像特徴量の比較方法を通して、3D環境マップ522内で、位置姿勢推定対象の画像から抽出した画像特徴に対応する特定情報812を持つ3D画像特徴要素801を特定することができる。
データ構造化要素802は、3Dマップ要素801を纏めるもので、たとえば3Dマップ要素801群を纏めるグループのようなものであってもよい。データ構造化要素802は、主に3D環境マップ522を位置姿勢推定部515で用いる際に、位置姿勢推定対象である車載データに関係しそうな3Dマップ要素801を、大まかに選別するのに用いることができる。
一般的にロバストで正確な位置姿勢推定(算出)をおこなうために、3D環境マップ522は多数の3Dマップ要素801を保持する。しかし、多数の3Dマップ要素801のどれが位置姿勢推定に使えるのかを、3Dマップ要素801の「特定情報(特徴要素を特定するための特定情報)」812を使って比較していたのでは、効率が悪い。また、比較対象が多すぎると、同じ環境マップ522内に同じ特定情報812を持つ3Dマップ要素が複数存在してしまうことも考えられ、比較によって誤った3Dマップ要素を特定してしまう可能性も高くなる。これに対し、あらかじめ車載データを取得する瞬間ごとに、同時に参照できた3Dマップ要素801を纏めた「データ構造化要素」802を用意しておくことで、間違った3Dマップ要素801を使ってしまうことを防止することができる。
たとえば、車載データとして動画像を用いる場合には、3D環境マップ作成に使った各画像をデータ構造化要素802とする。動画像内の全画像をデータ構造化要素802にしてもよい。特に動画像内で見え変化が大きい重要な画像(「キーフレーム」と呼ぶ)のみをデータ構造化要素802にしてもよい。このとき、3Dマップ要素(3D画像特徴要素)801群の中から各画像で抽出したものだけを、当該画像であるデータ構造化要素802の「関係する3Dマップ要素群」821として纏めて保持する。
同様に、3D環境マップ522の作成に用いたLiDAR測距データの各時刻で、その時参照できたLiDAR特徴要素(3次元点群や、3Dメッシュ群、3Dボクセル群など)を纏めて、「関係する3Dマップ要素群」821として保持してもよい。
あるいは、データ構造化要素802として、3Dマップ要素801が属する物体(地物)をとらえ、同じ地物に属する3Dマップ要素801群を保持するようにしてもよい。同じ物体かどうかは、3次元実座標位置811が近いものを纏めてもよいし、任意の画像認識などの認識手段で車載データ内の物体領域を特定して該領域内の特徴要素か否かから判断してもよいし、点群密度や法線ベクトルなどの特定情報が似ているかどうかから判断してもよい。このように、物体単位で纏めることで、似た存在位置の3Dマップ要素801を纏めることになり、同時に閲覧しやすい3Dマップ要素801をある程度絞り込むことができる。
一般的な3D環境マップとは異なり、実施の形態1にかかる3D環境マップ522は、さらに経路情報803を保持する。これは、3D環境マップ522を作成するときに用いた「車載データの経路情報」831を含む。この「車載データの経路情報」831は、たとえば、車載データと同時取得したGNSS情報を取得順に並べたものであってもよい。また、「車載データの経路情報」831は、実際には、GNSS情報の値をそのまま保持してもよいし、測位失敗部分の補間や、任意のフィルタを用いてノイズ除去をした情報を保持してもよい。
また、「車載データの経路情報」831は、データ構造化要素802に合わせた位置情報に加工したものであってもよい。たとえば、データ構造化要素802が画像キーフレームの場合は、一般的なGPS測位センサ(一般的に1Hz)と映像(たとえば30fps、すなわち30Hz相当)では取得間隔が異なるため、GNSS情報を画像キーフレームの取得時刻に相当する位置情報に加工して保持するようにしてもよい。
また、「車載データの経路情報」831は、経路の各位置(実座標位置)と、その通過順または各位置の通過時刻を保持してもよい。ここで、通過時刻は絶対時刻ではなく、車載データ取得開始時からの相対時刻でもよい。これらの通過順または通過時刻を用いて、各位置の次の位置(次の時刻の位置)へ向けた向き(ベクトル)を求めることによって、簡易的に各位置での進行方向情報を得ることができる。また、「車載データの経路情報」831は、経路の位置(実座標位置)および通過順(各位置の通過時刻)の代わり、またはそれらに加えて、経路の各位置での進行方向情報を保持するようにしてもよい。
さらに、「車載データの経路情報」831は、車載データの取得センサの移動体内の設置位置が既知であれば、設置位置によってGNSSの経路情報を加工したものを使ってもよい。たとえば、GNSS情報による経路情報の位置を、「GNSS装置の移動体内設置位置」-「車載データ取得装置の移動体内設置位置」の位置差分を加えた位置としてもよい。これによって、より正確に車載データに対応する経路とすることができる。
また、「車載データの経路情報」831は、車載データの取得センサが移動体外のどの方向の状況を取得するよう搭載されているかの情報が既知であれば、当該情報によってGNSSの経路情報を加工したものを使うようにしてもよい。たとえば、車載データが移動体の進行方向と180度反対方向に向けたカメラ、すなわち移動体の後方を撮影する後方カメラで取得したデータだった場合には、GNSSの経路情報から得た移動方向を180度反対方向に向けた方向を、「車載データの経路情報」831の移動方向とすることができる。
このように、取得装置のデータ取得方向(撮影方向など)となるよう補正加工した場合には、厳密は移動方向ではないが、簡単のため、以後はどちらのケースでも移動方向とするものとする。
なお、後方カメラ・前方カメラのような、車載データの取得装置(センサ)の種類から、あらかじめ設置位置や取得方向が特定される場合に、それらのセンサ種類を車載データと共に取得して、自動的に「車載データの経路情報」831の位置や移動方向を加工修正するようにしてもよい。
「車載データの経路情報」831には、これら車載データの取得センサの位置や取得方向にともない、実際に位置や移動方向を加工した値を保持するようにしてもよい。また、「車載データの経路情報」831において、加工するためのデータを保持して、経路位置や移動方向が必要なときに値を加工して使うようにしてもよい。
なお、SLAMを使って3D環境マップ522を作成する場合には、車載データの各時刻データ(動画像の場合は各画像)の位置姿勢推定と3D環境マップ作成を同時に実施するため、作成時に使ったGNSS情報またはGNSS情報を加工した情報を「車載データの経路情報」831とするのではなく、3D環境マップ作成時に同時推定した車載装置の位置姿勢の位置や姿勢を「車載データの経路情報」831の位置および進行方向(移動方向)として保持するようにしてもよい。
この推定位置姿勢の位置姿勢値を使うことで、疎な取得間隔のGNSS情報と車載データの取得間隔を考慮した加工を実施する処理を不要にすることができ、GNSSによる経路情報より高精度で正確な経路情報を保持管理できる。
さらに、3D環境マップ522はその他の情報として、「車載データの経路情報」831のほかに、作成時の車載データの取得時の情報、たとえば車載データの取得年月日や取得時刻、取得車両種類などの情報をさらに保持するようにしてもよい。
(環境マップ作成部511の内容)
図5に示した環境マップ作成部511は、「車載データ+GNSS情報」521を入力として、位置姿勢推定部515において用いるための3D環境マップ522を、任意の既知の方法で作成する。たとえば、車載データがLiDARデータである場合は、LiDAR情報の測距装置からの距離、すなわち測距センサからの相対3次元位置(3D位置)が既知な測距点群をLiDAR特徴要素としてもよい。あるいは、測距による相対3次元位置を持つ点群データから既知の物体復元手法などの解析処理手法を用いて、近傍点群を繋いだ3D平面である3Dメッシュ群や点群の存在する微小立体空間を抽出した3Dボクセル群などを、LiDAR特徴要素としてもよい。
これらLiDAR特徴要素の3D位置は、LiDARデータ(LiDAR特徴要素)を用いたSLAMなどの時系列解析をおこなうことで、さらにより正確な3D位置とすることができる。GNSSデータによってこれら3D位置を実座標系の緯度経度値に変換して算出し、3D環境マップ511とすることができる。
また、車載データが動画像データである場合は、動画像を用いたV-SLAMを実施して、画像特徴要素の3D位置を求め、GNSS情報によって相対位置から実座標系での緯度経度値に変換して算出し、3D環境マップ522とすることができる。
このとき、実座標系への変換を3D位置算出と同時に実施してもよいし、あるいは、LiDAR情報の特徴要素、または動画像の画像特徴の3D位置は相対値として保持して、実座標系への変換方法、たとえば座標系変換行列の値などを別途保持していてもよい。
環境マップ作成部511において作成した3D環境マップ522を用いて位置姿勢推定部515で位置姿勢を求めるため、一般的に、環境マップ作成部511と位置姿勢推定部515で用いる3D位置つきの特徴要素(3D環境マップ522の3Dマップ要素(3D画像特徴要素)801)は、同じである必要がある。
また、環境マップ作成部511は、従来の3D環境マップ(図8の3Dマップ要素801とデータ構造化要素802)以外に、新たに経路情報803を作成する。なお、経路情報803は、便宜的に環境マップ作成部511が算出するものとしたが、続く、マップ登録部512において3D環境マップ522を登録する際に算出するようにしてもよい。
環境マップ作成部511は、具体的には、たとえば、図5に示したサーバ501において、メモリ602に記憶されたプログラムをCPU601が実行することによって、その機能を実現することができる。また、具体的には、たとえば、図7に示した車載機502において、メモリ702に記憶されたプログラムをCPU701が実行することによって、その機能を実現するようにしてもよい。
(マップ登録部512の内容)
マップ登録部は512、環境マップ作成部511において作成された、3Dマップ要素801、データ構造化要素802、経路情報803を含む(なお、データ構造化要素802は省略可能)3D環境マップ522を、移動経路・移動方向比較部513で比較特定し、また、位置姿勢推定部515で簡単に引用できるように、3D環境マップDB510などに登録管理することをおこなう。
そのために、上述したように、3D環境マップDB510内で検索にかかわる要素を用いて検索専用の別テーブルを作成するようにしてもよい。これにより、検索速度向上が図れることから、あらかじめ3D環境マップをDB510登録する際に、データベースの一般的な既知のIndexまたは空間Index情報の作成手段を用いて、検索用Indexとして経路情報803の一部を用いた検索用のIndex情報または空間Index情報をあらかじめ準備しておくようにしてもよい。このようにすることで、移動経路・移動方向比較部513の比較を高速化することが可能となる。
マップ登録部512は、具体的には、たとえば、図6に示したサーバ501において、メモリ602に記憶されたプログラムをCPU601が実行することによって、あるいは、ネットワークI/F603、記録媒体I/F604などによって、その機能を実現することができる。また、具体的には、たとえば、図7に示した車載機502において、メモリ702に記憶されたプログラムをCPU701が実行することによって、あるいは、無線通信装置703などによって、その機能を実現するようにしてもよい。
(環境マップ作成部511、マップ登録部512の処理手順)
図9は、実施の形態1にかかる環境マップ作成部およびマップ登録部の処理の一例を示すフローチャートである。図9のフローチャートにおいて、入力車載データとGNSS情報とから、3D環境マップ522、より具体的には、3D環境マップ522の3D画像特徴801を作成する(ステップS901)。
そして、3D環境マップ522(3D画像特徴801)が作成できて有ったか否かを判断する(ステップS902)。ここで、3D環境マップ522(3D画像特徴801)が作成できず、なかった場合(ステップS902:No)は、何もせずに、一連の処理を終了する。
一方、3D環境マップ522(3D画像特徴801)が作成できて有った場合(ステップS902:Yes)は、つぎに、マップ作成時の車載データセンサ設置位置・データ取得方向・車載データ種類のいずれかが既知であり、車載データの経路情報831を加工する必要があるか否かを判断する(ステップS903)。
ここで、マップ作成時の車載データセンサ設置位置・データ取得方向・車載データ種類のいずれかが既知であり、車載データの経路情報831を加工する必要がある場合(ステップS903:Yes)は、マップ作成時の車載データの経路情報831と、車載データセンサ設置位置・データ取得方向・車載データ種類のいずれかを用いて、3D環境マップ522の経路情報803を作成する(ステップS904)。その後、ステップS906へ移行する。
一方、マップ作成時の車載データセンサ設置位置・データ取得方向・車載データ種類のいずれかが既知ではないか、車載データの経路情報831を加工する必要がない場合(ステップS903:No)は、マップ作成時の車載データの経路情報831から、3D環境マップ522の経路情報803を作成する(ステップS905)。その後、ステップS906へ移行する。ここまでの処理(ステップS901~S905の各処理)は、たとえば、環境マップ作成部511によっておこなうことができる。
その後、経路情報803を含む3D環境マップ522を、3D環境マップDB510に登録する(ステップS906)。これにより、一連の処理を終了する。このステップS906の処理は、たとえば、マップ登録部512によっておこなうことができる。
このようなステップS901~S906の各処理の手順によって、車載データおよびGNSS情報(「車載データ+GNSS情報」521)から3D環境マップ522を作成し、作成された3D環境マップ522を3D環境マップDB510に登録することができる。
(移動経路・移動方向比較部513の内容)
移動経路・移動方向比較部513は、位置姿勢を推定したい車載データおよび車載データと同時取得した、GPSなどの測位情報であるGNSS情報(「車載データ+GNSS情報」521)を入力し、当該車載データに関係する3D環境マップ群を、マップ登録部512が登録済の3D環境マップDB510から特定する。このとき、3D環境マップ522の経路情報803を、車載データセンサの設置位置や、取得方向、センサ種類などから補正加工したように、推定したい車載データのGNSS情報も加工するようにしてもよい。
移動経路・移動方向比較部513は、具体的には、たとえば、図5に示したサーバ501において、メモリ602に記憶されたプログラムをCPU601が実行することによって、その機能を実現することができる。また、具体的には、たとえば、図7に示した車載機502において、メモリ702に記憶されたプログラムをCPU701が実行することによって、その機能を実現するようにしてもよい。
移動経路・移動方向比較部513は、具体的には、以下の手順によって、当該車載データに関係する3D環境マップ群を特定(絞り込み)することができる。
移動経路・移動方向比較部513は、まず、3D環境マップDB510内の3D環境マップ522群から、車載データの走行経路400の各位置と、3D環境マップの関連情報の経路の位置が近いものを選定する。たとえば、2つの経路を構成する各3D位置点どうしで、他方の点と重なるかどうかを判定してもよい。
このとき、車載データの走行経路400や、3D環境マップ522の関連情報の経路の実座標3D位置には、測位装置による位置誤差が存在することを想定する。そして、それぞれを構成する3D位置の点を中心として想定位置誤差に相当する半径の円または楕円を考えて、円どうしが重なるか否かを判定するようにしてもよい。
あるいは、片方の経路だけを構成する3D位置の点(または誤差を考慮した円)とし、もう片方の経路は折れ線(または誤差を考慮して幅を持たせた太い線=線を囲うような形状)とみなして、点(または円)と折れ線(形状)との重なり判定をおこなうようにしてもよい。
図10は、マップの経路情報を形状とした例を示す説明図である。図10において、重なり比較をする際に、3D環境マップ522の「車載データの経路情報」831の走行経路の位置折れ線に、太さを持たせた形状を使う。具体的には、GPS誤差1001を考慮して、太さを持たせることができる。「□」202および「□」202から延びる矢印1000によって、「車載データの経路情報」831の経路位置および進行方向を示している。
位置姿勢推定したい車載データのGNSS(GPS)経路が、この形状領域内であれば、この3D環境マップを使うと判断する。さらに、マップの各経路位置での撮影方向と、GNSSによる経路方向が合致するかを判定する。たとえば、対向車線のマップなら、逆方向になる。また、図示省略するが、逆に位置姿勢推定したい車載データのGNSS(GPS)経路を誤差1001を考慮した太さのある形状とみなし、マップ走行軌跡折れ線と比較してもよい。このように、誤差を考慮して幅を持たせた太い線(線を囲うような所定形状1002)を用いて重なりを判定するようにしてもよい。
このとき、たとえば、単に重なるかどうかだけではなく、経路のどれだけが重なったかも合わせて算出するようにしてもよい。ここで、点(円)どうしの判定の場合には、双方の経路を構成する全点数のうち、他経路の点群と重なったと判定された点群の割合を調べて、重なった割合とすることができる。本実施の形態1では、双方の経路の重なった割合を簡単に算出できる、円どうしの判定を実行する。また、点(円)と折れ線(形状)の判定の場合は、同様に全点数に対して重なった点群の割合を求めて、重なった割合とすることができる。
このようにして、位置姿勢推定対象経路において、各3D環境マップごとに重なった割合を求めると同時に、各3D環境マップにおいても、位置姿勢推定対象経路と重なった割合を求めることができる。なお、本経路の点や円、折れ線、形状を用いた重なり判定計算方法は一例であり、これらの方法以外の他の方法で重なりを求めてもよい。
移動経路・移動方向比較部513は、算出した重なった割合を見て、位置姿勢対象経路において重なった割合が無かった3D環境マップを、利用対象候補の3D環境マップ群から除外することができる(「ステップS1」)。図4では、重なり判定をおこなった結果、12個の3D環境マップのうち、5個の3D環境マップ(3D環境マップ301、305、306、310、311)のマップ群は重なりがないことから、算出用3D環境マップの候補から削除する。
つぎに、移動経路・移動方向比較部513は、利用対象候補に残った7個の3D環境マップ(302~304、307~309、312)のマップ群に対して、進行方向に関する判定、すなわち、重なると判定した経路位置で類似する進行方向であるか否かを判定する(「ステップS2」)。
具体的には、3D環境マップの経路情報803の進行方向情報と、位置姿勢推定対象経路の進行方向を比較する。たとえば、各経路の各ベクトルどうしの方向を比較し、ベクトルの内積や成す角を求めて、明らかに反対方向だったり、直交したりするような3D環境マップを除外する。これにより、反対車線または交差道路と判断できる経路に関係する3D環境マップや、車載データのデータ取得方向が反対方向で見えが大きく異なると思われる車載データから作成した3D環境マップを除外することができる。なお、この除外方法は一例であり、3D環境マップが上下車線で1つのマップとして作成できる場合には、方向が正反対に近い、反対車線のマップを除外しなくてもよい。
図4では、重なり判定をおこなった結果、12個の3D環境マップのうち、4個の3D環境マップ(3D環境マップ307、308、309、312)のマップ群の進行方向が逆または直交に近いことから、算出用3D環境マップの候補から削除する。この結果、残りの3個の3D環境マップ(302、303、304)のマップ群が、移動経路・移動方向比較部513で選定される。
移動経路・移動方向比較部513は、このように、経路の位置と進行方向から経路の類似性を判断し、利用する3D環境マップを絞り込む。なお、移動経路・移動方向比較部513は、さらに、残った3D環境マップ群内で経路の重なり率が低いマップを除外するようにしてもよい。あるいは、位置姿勢推定部515において利用する優先度を、経路の重なり率が低いマップほど、他の3D環境マップに比べて低い優先度に決定するようにしてもよい。
位置姿勢推定対象経路に対する3D環境マップの重なり率が低い3D環境マップは、実際に位置姿勢推定部515において利用できる部分が少ないと考えられる。したがって、当該3D環境マップを読み込んで展開して位置姿勢推定処理を実行しても、すぐに位置姿勢が推定できなくなる。このように、位置姿勢推定処理を実行するための準備コスト(展開メモリ量や、読み込み展開処理コストなど)のわりに推定できる経路部分が少ないので、他に3D環境マップが存在する場合には、そちらの利用を優先した方が、位置姿勢推定処理の効率を上げることができる。また、位置姿勢推定対象の経路全体で位置姿勢推定を完了できる時間を短縮することができる。
なお、重なり率が低いマップであっても、マップ取得部514が3D環境マップ522の全部(丸ごと)取得するのではなく、重なり部分だけを特定して取得できるのであれば、マップ取得および読み込み展開コストは低くなるため、除外したり、優先度を下げなくてもよい。また、重なり率が低いマップしかなかった場合には、位置姿勢推定処理に用いる3D環境マップが見つからなかったとして、位置姿勢推定処理を断念するようにしてもよい。
移動経路・移動方向比較部513は、位置姿勢推定対象経路と3D環境マップ522に関する経路情報803との比較だけではなく、従来の探索方法のように、位置姿勢推定対象の車載データの取得年月日や取得時刻、取得車両種類などによっても、3D環境マップ522を選定(選別)することができる。年月日や時刻が近い3D環境マップほど、位置姿勢推定対象の車載データと類似するシーンで取得した車載データから作成されているので、シーン変化が少ない。そのため、位置姿勢推定部515における位置姿勢推定処理が確実に実行できる可能性が高くなる。この選定は、経路位置や進行方向での判定の前後、または判定中のいずれのタイミングで実施してもよい。
また、移動経路・移動方向比較部513は、経路の位置の判定を実施する際に、3D環境マップ522の高さの判定についておこなうようにしてもよい。高さを考慮しない緯度経度での判定の場合は、たとえば経路の重なり具合の判定として、2次元の点、または、円、折れ線、形状による判定などをおこなうことができる。一方で、高さを含んだ判定をおこなう場合は、たとえば経路の重なり具合の判定として、3次元の点、または球、3次元折れ線、3次元形状による判定などをおこなうことができる。
また、2次元での判定を実施した後で、位置姿勢推定対象経路の高さから求めた任意の高さ閾値、たとえば高さの最小値または最大値と、各3D環境マップ522を比較し、それらの高さ閾値に合致した3D環境マップ522の経路(たとえば、高さの最小値以上、かつ、最大値以下の高さの経路位置しかなかった経路)のみを、経路位置が類似するもの(重なるもの)と判断するようにしてもよい。
車載データと同時取得したGNSS情報に高さ情報が含まれる場合には、3D環境マップ522や、位置姿勢推定対象経路の高さに標高値が含まれており、高さの判定をおこなうことで、高架道路の上下道を区別した3D環境マップ522の選定をおこなうことができる。
さらに、移動経路・移動方向比較部513は、上述した経路の位置および進行方向による3D環境マップ522の選定処理をおこなう前に、従来と同様の地域メッシュによる選定をおこなうようにしてもよい。事前に明らかに地域が異なる地域メッシュの3D環境マップを排除することで、不要な3D環境マップとの重なり具合の計算などを省略することができる。
マップ登録部512において前述したように、移動経路・移動方向比較部513での本選定を高速化するために、一般的な空間データベースの空間クエリ高速化と同様に生成した、3D環境マップDB510のインデックス情報/空間インデックス情報を利用して、これら3D環境マップ522の特定をおこなうようにしてもよい。
なお、移動経路・移動方向比較部513での本選定を高速化するために、一般的なデータベースのクエリ高速化と同様に、3D環境マップDB510のデータ構造化要素802に関するインデックスを利用してもよい。一般的に、DB内で検索にかかわる要素を用いて検索専用の別テーブルを作成することで検索速度向上が図れることから、DBの一般的な既知のインデックス情報の作成手段を用いて、車載データの取得位置を用いた検索用のインデックス情報をあらかじめ準備しておくようにしてもよい。インデックスは、たとえば、上述したように、マップ登録部512により作成することができる。これにより、移動経路・移動方向比較部513における比較処理をより高速化することができる。
(マップ取得部514の内容)
マップ取得部514は、移動経路・移動方向比較部513において選定された3D環境マップ522群に対して、実際に3D環境マップDB510からマップデータを特定し、取得する。なお、移動経路・移動方向比較部513がマップデータの特定までおこない、マップ取得部514は、特定されたマップデータを取得するだけであってもよい。すなわち、マップデータの特定は、移動経路・移動方向比較部513、マップ取得部514のどちらかがおこなってもよい。
従来方法と異なり、緯度経度だけで選定した3D環境マップではなく、移動経路・移動方向比較部513の画像特徴比較処理を通して、位置姿勢推定対象の経路と同じ道路を同じ上り下り方向で走行した車載データで作成した3D環境マップ522に、データ取得対象を限定しているため、従来方法よりも低コストで3D環境マップ522を取得することができる。
また、3D環境マップ522を複数取得する場合などでは、移動経路・移動方向比較部513において算出した、重なり具合などから決定した優先度や、位置姿勢推定対象の経路のどこと重なるマップであるかを、取得したマップデータとともに保持するようにしてもよい。そして、位置姿勢推定部515においては、取得した優先度に基づいて、または、重なり具合が経路全体を網羅できるようなマップ群を使って算出することにより、より精度の高い位置姿勢の推定処理をおこなうことができる。
マップ取得部514は、具体的には、たとえば、図6に示したサーバ501において、メモリ602に記憶されたプログラムをCPU601が実行することによって、あるいは、ネットワークI/F603、記録媒体I/F604などによって、その機能を実現することができる。また、具体的には、たとえば、図7に示した車載機502において、メモリ702に記憶されたプログラムをCPU701が実行することによって、あるいは、無線通信装置703などによって、その機能を実現するようにしてもよい。
(位置姿勢推定部515の内容)
位置姿勢推定部515は、マップ取得部514によって取得された3D環境マップ522のデータと、位置姿勢推定対象である「車載データ+GNSS情報」521のデータを用いて、従来の方法、たとえばSLAMなどによって、車載データの取得センサ(車載機502)および移動体503の位置姿勢を推定する。具体的には、選定取得した3D環境マップ522のデータを読み込んでメモリ展開し、同様に読み込んでメモリ展開した車載データと比較して、SLAMなどによる計算方法を用いて位置姿勢を推定することができる。
選定したマップが複数ある場合に、どれを使うかを検討する材料が無かった従来方法と異なり、移動経路・移動方向比較部513で重なり具合などから決定した優先度を持つため、優先度が高い順に位置姿勢推定処理をおこなうことで、一度の位置姿勢推定処理の実行で位置姿勢推定対象の位置姿勢推定を完了できる可能性が増加する。また、できるだけ少ないマップで、位置姿勢推定対象経路のすべての3D位置に対して重なりを網羅するように、マップをさらに選定して位置姿勢推定処理をおこない、位置姿勢推定が失敗したときだけ残りのマップを使うようにすることで、最小限のマップによる、低処理コストな位置姿勢推定(算出)を実現することができる。
また、複数マップを優先順に位置姿勢推定(算出)して、位置姿勢推定が成功した場合に、他のマップによる位置姿勢推定をおこなわないようにしてもよい。一方、複数マップすべての位置姿勢推定結果を算出して、それらを比較して最終的な位置姿勢推定結果とするようにしてもよい。
たとえば、各マップの位置姿勢推定結果を比較し、そのうちの1つのマップ、たとえば位置姿勢推定できた車載データのデータ数(時刻数)が最も多いマップの結果を最終的な結果としてもよい。また、複数マップでの各車載データ(各時刻)の位置姿勢推定結果を統計処理、たとえば平均化して最終的な結果とすることで、より高精度で確実に位置姿勢推定をおこなうようにしてもよい。このとき、優先度を重みとして用いて、より優先度の高いマップの結果を重視反映させた統計処理としてもよい。
選定した全3D環境マップ522群のループ処理として、マップ取得部514の処理と位置姿勢推定部515の処理をマップ1つずつに対して纏めて実行するようにしてもよい。その場合には、3D環境マップ522のマップ取得コストもあわせて低コストに抑えることができる。
位置姿勢推定部515は、具体的には、たとえば、図6に示したサーバ501において、メモリ602に記憶されたプログラムをCPU601が実行することによって、その機能を実現することができる。また、具体的には、たとえば、図7に示した車載機502において、メモリ702に記憶されたプログラムをCPU701が実行することによって、その機能を実現するようにしてもよい。
(移動経路・移動方向比較部513、マップ取得部514、位置姿勢推定部515の処理手順)
図11は、実施の形態1にかかる移動経路・移動方向比較部、マップ取得部および位置姿勢推定部の処理の一例を示すフローチャートである。図11のフローチャートにおいて、移動経路比較処理、すなわち、3D環境マップDB510において、各マップの車載データの経路情報と、位置姿勢推定対象の走行経路であるGNSS情報(GPS)を比較し、マップ経路情報と走行経路の重複率を計算し、重複率が閾値以上の3D環境マップ群を選定する(ステップS1101)。
そして、3D環境マップは選定できて、選定された3D環境マップがあるか否かを判断する(ステップS1102)。ここで、3D環境マップが選定できずなかったか、または、選定された3D環境マップがない場合(ステップS1102:No)は、何もせずに、一連の処理を終了する。
一方、3D環境マップは選定でき、選定された3D環境マップがある場合(ステップS1102:Yes)は、つぎに、位置姿勢推定対象の車載データの車載データセンサ設置位置・データ取得方向・車載データ種類のいずれかが既知であり、車載データの走行経路の進行方向を加工する必要があるか否かを判断する(ステップS1103)。
ここで、位置姿勢推定対象の車載データの車載データセンサ設置位置・データ取得方向・車載データ種類のいずれかが既知であり、車載データの走行経路の進行方向を加工する必要がある場合(ステップS1103:Yes)は、車載データの走行経路と、車載データセンサ設置位置・データ取得方向・車載データ種類のいずれかを用いて、各経路位置の進行方向(A)を算出する(ステップS1104)。その後、ステップS1106へ移行する。
一方、位置姿勢推定対象の車載データの車載データセンサ設置位置・データ取得方向・車載データ種類のいずれかが既知ではないか、車載データの走行経路の進行方向を加工する必要がない場合(ステップS1103:No)は、車載データの走行経路から、各経路位置の進行方向(A)を算出する(ステップS1105)。その後、ステップS1106へ移行する。
つぎに、各選定マップにて、経路情報の走行位置と進行方向(B)を取得する(ステップS1106)。そして、移動方向比較処理、すなわち、各選定マップにて、推定対象データの各経路位置に最も近い経路位置を探し、その位置での進行方向(B)と、推定対象データの該当経路位置での進行方向(A)を比較し、当該マップの比較できた総数に対して、方向類似度が低かった(異なる方向だった)比較結果の割合が閾値以上なら、利用対象マップから外す(ステップS1107)。その後、ステップS1108へ移行する。ここまでの処理(ステップS1101~S1107の各処理)は、たとえば、移動経路・移動方向比較部513によっておこなうことができる。
つぎに、利用対象マップが残った(利用対象マップはある)か否かを判断する(ステップS1108)。ここで、利用対象マップが残らなかった場合(ステップS1108:No)は、一連の処理を終了する。一方、利用対象マップが残った場合(ステップS1108:Yes)は、残った利用対象マップの情報(3Dマップ要素801など)を3D環境マップDB510から取得する(ステップS1109)。その後、ステップS1110へ移行する。これらの処理(ステップS1108、S1109の各処理)は、たとえば、マップ取得部514によっておこなうことができる。
その後、取得した3D環境マップ522のDB情報(3Dマップ要素801など)と対象車載データとGNSS情報とを用いて、推定対象画像の位置姿勢推定処理を実行する(ステップS1110)。このステップS1110の処理は、たとえば、位置姿勢推定部515によっておこなうことができる。
以上説明したように、実施の形態1によれば、道路ネットワーク情報などの他の情報を用いることなく、位置姿勢推定したい車載データに関する3D環境マップを、より同じ道路を同じ方向で走行した車載データで作成した3D環境マップ522を優先する優先度付きで特定することができる。そのため、他のデータベースなどの作成管理コストを必要とせず、無駄な3D環境マップのデータ取得コストおよび位置姿勢推定処理の実行コストを削減し、位置姿勢推定完了までの時間を短縮し、位置姿勢推定をリアルタイムで実施することが可能となる。
他のデータベースの作成管理などを必要とせずに、地域メッシュごとのマップではなく、位置姿勢推定したい車載データの走行経路に似た経路を走行方向に似た方向で走行した車載データで作成したマップだけを、ピンポイントで探索することができる。
したがって、従来は、同じ地域メッシュ内の隣道路/交差路/路地/対向車線道路などの関係ない道路も含めた多数の3D環境マップ群の中で、どの3D環境マップが正しいかわからず、「多数の3D環境マップ群から一つを選択しては、選択された3D環境マップを使用して、対象画像を撮影した車両の位置姿勢推定を実行する」という処理を、位置姿勢推定ができるまで何度も繰り返していたが、実施の形態1にかかる位置姿勢算出方法を用いることで、正しい3D環境マップをピンポイントで探索でき、より高速に位置姿勢推定結果を得ることができる。
(実施の形態2)
つぎに、実施の形態2について説明する。実施の形態1においては、位置姿勢推定部515は、位置姿勢推定処理をおこなうごとに、選定取得した3D環境マップ522を読み込んでメモリ展開して、SLAMなどによる計算方法で位置姿勢推定処理をおこなうという構成である。これに対して、実施の形態2では、図11に示すように、あらかじめメモリ展開済のマップ展開の3D環境マップ522を保管したマップ展開・位置姿勢推定サーバ1202(1202a、1202b、1202c、・・・)を用意することを特徴とする。
そもそも3D環境マップはそのデータ量が多いため、位置姿勢推定処理をおこなうたびに、3D環境マップを読み込み展開していたのでは、リアルタイムな位置姿勢推定処理を実行することが難しい。このため実施の形態2では、位置姿勢推定対象の車載データとGNSS情報が入力されるごとに、3D環境マップを特定して読み込み展開するのではなく、あらかじめ3D環境マップを展開するマップ展開・位置姿勢推定サーバ1202を用意する。
そして、3D環境マップを特定する際に、あらかじめ該当する3Dマップを展開しているマップ展開・位置姿勢推定サーバ1202を特定して、当該マップ展開・位置姿勢推定サーバ1202を利用し、位置姿勢推定処理に必要な情報を取得する。これにより、3D環境マップを取得し、取得した後に当該3D環境マップを自サーバにおいて読み込み展開をするという処理をおこなうことなく、位置姿勢推定処理を実行することができる。このようにして、リアルタイムな位置姿勢推定を実現することができる。
図12は、実施の形態2にかかる位置姿勢算出方法を実現するシステム構成の一例を示す説明図である。また、図13は、実施の形態2にかかる3D環境マップの構成の一例を示す説明図である。図12において、実施の形態2にかかる位置姿勢算出方法を実現する移動***置姿勢算出システム1200は、サーバ1201と、移動体503に搭載される車載機502とを備える。
なお、図11に示す実施の形態2にかかる位置姿勢算出方法を実現する移動***置姿勢算出システム1200において、図5に示した実施の形態1にかかる位置姿勢算出方法を実現する移動***置姿勢算出システム500と同じ構成部については同一の符号を付して、その詳細な説明を省略する。同様に、図13に示す実施の形態2にかかる3D環境マップ1222において、図8に示した3D環境マップ522と同じ構成部については同一の符号を付して、その詳細な説明を省略する。
マップ展開登録部1212は、環境マップ作成部511で作成した3D環境マップ522を、3D環境マップDB510に登録するとともに、任意の処理サーバ(マップ展開・位置姿勢推定サーバ1202(1202a~1202c))に読み込み展開させ、当該マップ展開・位置姿勢推定サーバ1202の情報(図13に示す展開サーバ情報1301)を3D環境マップDB510に保持させる。
図13において、3D環境マップ1222(1222a~1222c)は、図8に示した3D環境マップ522(522a~522c)と同様に、3Dマップ要素(3D画像特徴)801、データ構造化要素802、経路情報803の各要素を保持する。3D環境マップ1222のこれらの各要素の内容も3D環境マップ522の各要素の内容と同じものである。3D環境マップ1222(1222a~1222c)では、3Dマップ要素801、データ構造化要素802、経路情報803の各要素に加えて、展開サーバ情報1301を含んでいる。
このようにして、複数の3D環境マップを、当該環境マップの任意の画像情報の撮影装置の位置姿勢の算出をおこなう他の情報処理装置であるマップ展開・位置姿勢推定サーバ1202にあらかじめメモリ展開しておくことができる。また、3D環境マップ1222に、当該環境マップがメモリ展開されている情報処理装置(マップ展開・位置姿勢推定サーバ1202)に関する「展開サーバ情報1301」を登録することができる。
なお、展開サーバ情報1301は、環境マップ1222の一部ではなく、環境マップ1222から参照できる別の情報およびDBに保持してもよい。すなわち、展開サーバ情報1301は、データを実装によっては、別データおよびDBに分割保持していてもよい。このように、展開サーバ情報1301は、当該環境マップがメモリ展開されている情報処理装置(マップ展開・位置姿勢推定サーバ1202)が容易に特定できるように保持されているとよい。
マップ展開・位置姿勢推定サーバ1202(1202a~1202c)は、SLAMなどの位置姿勢推定処理をおこなう処理サーバである。マップ展開登録部1212において指定された任意の3D環境マップ522をあらかじめ読み込んでメモリ展開しておき、ストリームや任意の通信手段によって任意タイミングで処理したい車載データおよびGNSS情報を取得して、位置姿勢推定を計算して出力する。
この結果、よりリアルタイムな位置姿勢推定処理が可能となる。1つのマップ展開・位置姿勢推定サーバ1202において展開する3D環境マップ522の数は任意であるが、3D環境マップ522を複数、展開した方が、一度に展開した3D環境マップ522群すべてを使った位置姿勢推定ができる。したがって、特に複数のマップからなる経路を走行した車載データの位置姿勢推定をおこなう場合などに、処理時間をより短くできるという利点がある。
移動経路・移動方向比較部1213は、実施の形態1における移動経路・移動方向比較部513と同様に、移動体503または当該移動体503に搭載された取得装置の一例である車載機502がデータを取得する際の取得位置を含む複数の3D環境マップ522の経路情報(図8に示した経路情報803)と、位置姿勢の算出の対象となる対象移動体503または当該対象移動体に搭載された取得装置(車載機502)から取得した経路情報との比較をおこなう。
そして、その比較結果に基づいて、3D環境マップ1222を特定する。さらに、特定した3D環境マップ1222に含まれるマップ展開・位置姿勢推定サーバ1202に関する情報である展開サーバ情報1301から、特定した3D環境マップ1222を展開しているマップ展開・位置姿勢推定サーバ1202を特定する。
このようにして、複数の環境マップを、当該環境マップの任意の車載データの取得位置姿勢の算出をおこなう他の情報処理装置であるマップ展開・位置姿勢推定サーバ1202にあらかじめメモリ展開しておき、特定したマップ展開・位置姿勢推定サーバ1202に関する情報である展開サーバ情報1301を含めて、3D環境マップ1222(1222a~1222c)とすることで、特定された算出用環境マップがメモリ展開されているマップ展開・位置姿勢推定サーバ1202を特定することができる。
位置姿勢推定部1214は、特定されたマップ展開・位置姿勢推定サーバ1202に対して、位置姿勢推定対象の車載データおよびGNSS情報を投入して位置姿勢を算出し、推定位置姿勢523を出力する。このようにして、特定されたマップ展開・位置姿勢推定サーバ1202によって算出された位置姿勢結果を取得することができる。
(環境マップ作成部511・マップ展開登録部1212の処理手順)
図14は、実施の形態2にかかる環境マップ作成部およびマップ展開登録部の処理の一例を示すフローチャートである。図14のフローチャートにおいて、ステップS1401~ステップS1405の各処理は、図9のフローチャートにおけるステップS901~ステップS905の各処理と同じ内容である。すなわち、ステップS1401~ステップS1405の処理は、環境マップ作成部511によっておこなうことができる。
ステップS1405に引き続き、3D環境マップ522(3D画像特徴801)をマップ展開・位置姿勢推定サーバ1202に展開する(ステップS1406)。そして、経路情報803、展開サーバ情報1301を含む3D環境マップ1222を、3D環境マップDB510に登録する(ステップS1407)。これにより、一連の処理を終了する。このステップS1406、S1407の各処理は、たとえば、マップ展開登録部1212によっておこなうことができる。
(移動経路・移動方向比較部1213、位置姿勢推定部1214の処理手順)
図15は、実施の形態2にかかる移動経路・移動方向比較部および位置姿勢推定部の処理の一例を示すフローチャートである。図15のフローチャートにおいて、ステップS1501~ステップS1508の各処理は、図11のフローチャートにおけるステップS1101~ステップS1108の各処理と同じ内容である。すなわち、ステップS1501~ステップS1508の処理は、移動経路・移動方向比較部1213によっておこなうことができる。
ステップS1508に引き続き、残った利用対象マップの展開サーバ情報1301を3D環境マップDB510から取得する(ステップS1509)。つぎに、対象車載データ・GNSS情報を、取得した展開サーバ情報1301によって特定したマップ展開・位置姿勢推定サーバ1202に入力する(ステップS1510)。そして、マップ展開・位置姿勢推定サーバ1202から位置姿勢推定結果を取得する(ステップS1511)。これにより、一連の処理を終了する。このステップS1509~S1511の各処理は、たとえば、位置姿勢推定部1214によっておこなうことができる。
なお、実施の形態1と実施の形態2を混合したシステムとすることもできる。すなわち、位置姿勢推定の要望が多い、または、よりリアルタイムな位置姿勢推定の要望のある道路に関する3D環境マップなどの一部の3D環境マップだけを、実施の形態2に示すように、マップ展開・位置姿勢推定サーバ1202に展開して、位置姿勢推定処理を実行する。一方、それら以外の道路、位置姿勢推定の要望が少ない、または、よりリアルタイムな位置姿勢推定の要望がない道路では、実施の形態1に示すように、位置姿勢推定の要望がくるたびに随時マップを展開して位置姿勢推定処理を実施するようにしてもよい。
たとえば、多数の車両が走行する幹線道路などの重要な道路だけ、マップ展開・位置姿勢推定サーバ1202に展開することで、サーバコストをできるだけ抑えつつ、かつ、できるだけ多くの位置姿勢推定の要求をリアルタイムに実現するシステムとすることができる。
以上説明したように、実施の形態2によれば、あらかじめマップ展開登録部1212において、マップ展開・位置姿勢推定サーバ1202にマップの読み込み展開を実施しておく。そして、位置姿勢推定処理をおこなうタイミングでは、マップの読み込み展開を不要とする。これにより、SLAMなどにおいて処理のボトルネックとなる読み込み展開時間を短縮(削減)することができる。したがって、より高速かつリアルタイムな位置姿勢推定を実現することができるようになる。
なお、本実施の形態で説明した位置姿勢算出方法は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。プログラム配信プログラムは、ハードディスク、フレキシブルディスク、CD(Compact Disc)-ROM、MO(Magneto-Optical Disk)、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)メモリなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、位置姿勢算出プログラムは、インターネットなどのネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)情報処理装置が、
移動体または当該移動体に搭載された取得装置がデータを取得する際の取得位置を含む複数の環境マップの経路情報と、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報との比較をおこない、
前記比較の結果に基づいて、前記複数の環境マップの中から、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出に用いる算出用環境マップを特定する、
ことを特徴とする位置姿勢算出方法。
(付記2)前記算出用環境マップは、前記対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報のうちの移動経路および移動方向の少なくともいずれかが類似する経路情報を有する環境マップである、
ことを特徴とする付記1に記載の位置姿勢算出方法。
(付記3)前記算出用環境マップは、前記対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報のうちの移動経路および移動方向が類似する経路情報を有する環境マップである、
ことを特徴とする付記1に記載の位置姿勢算出方法。
(付記4)移動経路および移動方向は、前記取得装置の種類、前記取得装置の設置位置、前記取得装置が取得するデータの取得方向の少なくともいずれか一つに基づいて補正する、
ことを特徴とする付記2または3に記載の位置姿勢算出方法。
(付記5)前記環境マップの経路情報の各位置、または、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得したデータの各取得位置を中心とした任意の大きさの2次元または3次元の所定形状を設定し、当該所定形状の形状内外判定を用いて、経路の重なり度を判定し、当該判定の結果に基づいて、前記算出用環境マップを特定する、
ことを特徴とする付記1~4のいずれか一つに記載の位置姿勢算出方法。
(付記6)前記環境マップの経路情報、または、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報における経路を含む任意の大きさの2次元または3次元の所定形状を設定し、当該所定形状の形状内外判定を用いて、経路の重なり度を判定し、当該判定の結果に基づいて、前記算出用環境マップを特定する、
ことを特徴とする付記1~4のいずれか一つに記載の位置姿勢算出方法。
(付記7)前記情報処理装置が、
前記経路の重なり度に基づいて、特定された前記算出用環境マップの利用優先度を算出する、
ことを特徴とする付記5または6に記載の位置姿勢算出方法。
(付記8)前記情報処理装置が、
前記複数の環境マップを、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出をおこなう他の情報処理装置にあらかじめメモリ展開しておき、
特定された前記算出用環境マップがメモリ展開されている情報処理装置を特定する、
ことを特徴とする付記1~7のいずれか一つに記載の位置姿勢算出方法。
(付記9)前記情報処理装置が、
前記環境マップに、当該環境マップがメモリ展開されている情報処理装置に関する情報を登録する、
ことを特徴とする付記8に記載の位置姿勢算出方法。
(付記10)前記情報処理装置が、
特定された情報処理装置によって算出された位置姿勢結果を取得する、
ことを特徴とする付記8または9に記載の位置姿勢算出方法。
(付記11)前記環境マップの前記経路情報に対して、検索用のインデックスを作成し、
前記インデックスを用いて、複数の環境マップを探索することを特徴とする付記1~8のいずれか一つに記載の位置姿勢算出方法。
(付記12)移動体または当該移動体に搭載された取得装置がデータを取得する際の取得位置を含む複数の環境マップの経路情報と、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報との比較をおこない、
前記比較の結果に基づいて、前記複数の環境マップの中から、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出に用いる算出用環境マップを特定する処理を情報処理装置に実行させる、
ことを特徴とする位置姿勢算出プログラム。
101、102、103 道路
201、801 3Dマップ要素(3D画像特徴要素)
202、802 データ構造化要素
301~312、831 車載データの経路情報
400 車載データ走行経路
500、1200 移動***置姿勢算出システム
501、1201 サーバ
502 車載機
503 移動体
504 ネットワーク
505 衛星
510 3D環境マップDB
511 環境マップ作成部
512 マップ登録部
513、1213 移動経路・移動方向比較部
514 マップ取得部
515、1214 位置姿勢推定部
521 車載データ+GNSS情報
522(522a~522c)、1222(1222a~1222c) 3D環境マップ
523 推定位置姿勢
803 経路情報
811 3次元実座標位置
812 特定情報(特徴要素を特定するための情報)
821 関係する3Dマップ要素群
1202(1202a~1202c) マップ展開・位置姿勢推定サーバ
1212 マップ展開登録部
1301 展開サーバ情報

Claims (15)

  1. 情報処理装置が、
    移動体または当該移動体に搭載された取得装置がデータを取得する際の取得位置を含む複数の環境マップの経路情報と、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報との比較をおこない、
    前記比較の結果に基づいて、前記複数の環境マップの中から、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出に用いる算出用環境マップを特定
    前記算出用環境マップは、前記対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報のうちの移動方向が類似する経路情報を有する環境マップである、
    ことを特徴とする位置姿勢算出方法。
  2. 情報処理装置が、
    移動体または当該移動体に搭載された取得装置がデータを取得する際の取得位置を含む複数の環境マップの経路情報と、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報との比較をおこない、
    前記比較の結果に基づいて、前記複数の環境マップの中から、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出に用いる算出用環境マップを特定
    前記算出用環境マップは、前記対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報のうちの移動経路および移動方向が類似する経路情報を有する環境マップである、
    ことを特徴とする位置姿勢算出方法。
  3. 前記移動方向は、前記取得装置の種類、前記取得装置の設置位置、前記取得装置が取得するデータの取得方向の少なくともいずれか一つに基づいて補正する、
    ことを特徴とする請求項1または2に記載の位置姿勢算出方法。
  4. 前記移動経路は、前記取得装置の種類、前記取得装置の設置位置、前記取得装置が取得するデータの取得方向の少なくともいずれか一つに基づいて補正する、
    ことを特徴とする請求項に記載の位置姿勢算出方法。
  5. 情報処理装置が、
    移動体または当該移動体に搭載された取得装置がデータを取得する際の取得位置を含む複数の環境マップの経路情報と、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報との比較をおこない、
    前記比較の結果に基づいて、前記複数の環境マップの中から、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出に用いる算出用環境マップを特定し、
    前記算出用環境マップの特定は、前記環境マップの経路情報の各位置、または、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得したデータの各取得位置を中心とした任意の大きさの2次元または3次元の所定形状を設定し、当該所定形状の形状内外判定を用いて、経路の重なり度を判定し、当該判定の結果に基づいておこなう
    ことを特徴とする位置姿勢算出方法。
  6. 情報処理装置が、
    移動体または当該移動体に搭載された取得装置がデータを取得する際の取得位置を含む複数の環境マップの経路情報と、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報との比較をおこない、
    前記比較の結果に基づいて、前記複数の環境マップの中から、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出に用いる算出用環境マップを特定し、
    前記算出用環境マップの特定は、前記環境マップの経路情報、または、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報における経路を含む任意の大きさの2次元または3次元の所定形状を設定し、当該所定形状の形状内外判定を用いて、経路の重なり度を判定し、当該判定の結果に基づいておこなう
    ことを特徴とする位置姿勢算出方法。
  7. 前記情報処理装置が、
    前記経路の重なり度に基づいて、特定された前記算出用環境マップの利用優先度を算出する、
    ことを特徴とする請求項5または6に記載の位置姿勢算出方法。
  8. 情報処理装置が、
    移動体または当該移動体に搭載された取得装置がデータを取得する際の取得位置を含む複数の環境マップの経路情報と、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報との比較をおこない、
    前記比較の結果に基づいて、前記複数の環境マップの中から、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出に用いる算出用環境マップを特定し、
    前記情報処理装置が、
    前記複数の環境マップを、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出をおこなう他の情報処理装置にあらかじめメモリ展開しておき、
    特定された前記算出用環境マップがメモリ展開されている情報処理装置を特定する、
    ことを特徴とする位置姿勢算出方法。
  9. 前記情報処理装置が、
    前記環境マップに、当該環境マップがメモリ展開されている情報処理装置に関する情報を登録する、
    ことを特徴とする請求項8に記載の位置姿勢算出方法。
  10. 前記情報処理装置が、
    特定された情報処理装置によって算出された位置姿勢結果を取得する、
    ことを特徴とする請求項8または9に記載の位置姿勢算出方法。
  11. 移動体または当該移動体に搭載された取得装置がデータを取得する際の取得位置を含む複数の環境マップの経路情報と、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報との比較をおこない、
    前記比較の結果に基づいて、前記複数の環境マップの中から、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出に用いる算出用環境マップを特定する処理を情報処理装置に実行させ、
    前記算出用環境マップは、前記対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報のうちの移動方向が類似する経路情報を有する環境マップである、
    ことを特徴とする位置姿勢算出プログラム。
  12. 移動体または当該移動体に搭載された取得装置がデータを取得する際の取得位置を含む複数の環境マップの経路情報と、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報との比較をおこない、
    前記比較の結果に基づいて、前記複数の環境マップの中から、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出に用いる算出用環境マップを特定する処理を情報処理装置に実行させ、
    前記算出用環境マップは、前記対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報のうちの移動経路および移動方向が類似する経路情報を有する環境マップである、
    ことを特徴とする位置姿勢算出プログラム。
  13. 移動体または当該移動体に搭載された取得装置がデータを取得する際の取得位置を含む複数の環境マップの経路情報と、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報との比較をおこない、
    前記比較の結果に基づいて、前記複数の環境マップの中から、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出に用いる算出用環境マップを特定する処理を情報処理装置に実行させ、
    前記算出用環境マップを特定する処理は、前記環境マップの経路情報の各位置、または、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得したデータの各取得位置を中心とした任意の大きさの2次元または3次元の所定形状を設定し、当該所定形状の形状内外判定を用いて、経路の重なり度を判定し、当該判定の結果に基づいておこなう、
    ことを特徴とする位置姿勢算出プログラム。
  14. 移動体または当該移動体に搭載された取得装置がデータを取得する際の取得位置を含む複数の環境マップの経路情報と、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報との比較をおこない、
    前記比較の結果に基づいて、前記複数の環境マップの中から、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出に用いる算出用環境マップを特定する処理を情報処理装置に実行させ、
    前記算出用環境マップを特定する処理は、前記環境マップの経路情報、または、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報における経路を含む任意の大きさの2次元または3次元の所定形状を設定し、当該所定形状の形状内外判定を用いて、経路の重なり度を判定し、当該判定の結果に基づいておこなう、
    ことを特徴とする位置姿勢算出プログラム。
  15. 移動体または当該移動体に搭載された取得装置がデータを取得する際の取得位置を含む複数の環境マップの経路情報と、位置姿勢の算出の対象となる対象移動体または当該対象移動体に搭載された取得装置から取得した経路情報との比較をおこない、
    前記比較の結果に基づいて、前記複数の環境マップの中から、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出に用いる算出用環境マップを特定する処理を情報処理装置に実行させ、
    前記情報処理装置に、
    前記複数の環境マップを、前記対象移動体または当該対象移動体に搭載された取得装置がデータを取得する際の位置姿勢の算出をおこなう他の情報処理装置にあらかじめメモリ展開しておき、
    特定された前記算出用環境マップがメモリ展開されている情報処理装置を特定する処理を実行させる、
    ことを特徴とする位置姿勢算出プログラム。
JP2020144088A 2020-08-28 2020-08-28 位置姿勢算出方法および位置姿勢算出プログラム Active JP7468254B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020144088A JP7468254B2 (ja) 2020-08-28 2020-08-28 位置姿勢算出方法および位置姿勢算出プログラム
US17/324,504 US20220065634A1 (en) 2020-08-28 2021-05-19 Position and orientation calculation method, non-transitory computer-readable storage medium, and information processing apparatus
EP21175928.7A EP3961155A1 (en) 2020-08-28 2021-05-26 Pose calculation method, device and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020144088A JP7468254B2 (ja) 2020-08-28 2020-08-28 位置姿勢算出方法および位置姿勢算出プログラム

Publications (2)

Publication Number Publication Date
JP2022039188A JP2022039188A (ja) 2022-03-10
JP7468254B2 true JP7468254B2 (ja) 2024-04-16

Family

ID=76137965

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020144088A Active JP7468254B2 (ja) 2020-08-28 2020-08-28 位置姿勢算出方法および位置姿勢算出プログラム

Country Status (3)

Country Link
US (1) US20220065634A1 (ja)
EP (1) EP3961155A1 (ja)
JP (1) JP7468254B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10422648B2 (en) * 2017-10-17 2019-09-24 AI Incorporated Methods for finding the perimeter of a place using observed coordinates
JP2022132882A (ja) * 2021-03-01 2022-09-13 キヤノン株式会社 ナビゲーションシステム、ナビゲーション方法およびプログラム
CN116499457B (zh) * 2023-06-28 2023-11-10 中国人民解放军32035部队 基于单设备的光学望远镜和激光测距仪联合目标定位方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012173843A (ja) 2011-02-18 2012-09-10 Nissan Motor Co Ltd 走行経路生成装置、及び走行経路生成方法
JP2017142147A (ja) 2016-02-10 2017-08-17 富士通株式会社 情報処理装置、軌跡情報生成方法および軌跡情報生成プログラム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013003049A (ja) * 2011-06-20 2013-01-07 Sony Corp 経路比較装置、経路比較方法、及びプログラム
JP2015005080A (ja) * 2013-06-20 2015-01-08 株式会社日立製作所 ソフトウェア管理システムおよび計算機システム
JP7122968B2 (ja) * 2016-10-13 2022-08-22 日産自動車株式会社 駐車支援方法及び駐車支援装置
US20190333239A1 (en) * 2016-12-02 2019-10-31 Cloudminds (Shenzhen) Robotics Systems Co., Ltd. Positioning method and device
JP2018128367A (ja) * 2017-02-09 2018-08-16 株式会社トヨタマップマスター ナビゲーションシステム、案内方法及びそのプログラム、記録媒体
US11079241B2 (en) * 2017-12-29 2021-08-03 Intel Corporation Detection of GPS spoofing based on non-location data
KR20190109333A (ko) * 2019-09-05 2019-09-25 엘지전자 주식회사 V2x 메시지를 처리하는 방법 및 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012173843A (ja) 2011-02-18 2012-09-10 Nissan Motor Co Ltd 走行経路生成装置、及び走行経路生成方法
JP2017142147A (ja) 2016-02-10 2017-08-17 富士通株式会社 情報処理装置、軌跡情報生成方法および軌跡情報生成プログラム

Also Published As

Publication number Publication date
JP2022039188A (ja) 2022-03-10
US20220065634A1 (en) 2022-03-03
EP3961155A1 (en) 2022-03-02

Similar Documents

Publication Publication Date Title
JP7430277B2 (ja) 障害物検出方法及び装置、コンピュータデバイス、並びにコンピュータプログラム
US11474247B2 (en) Methods and systems for color point cloud generation
JP7468254B2 (ja) 位置姿勢算出方法および位置姿勢算出プログラム
JP7326720B2 (ja) 移動***置推定システムおよび移動***置推定方法
KR101534056B1 (ko) 교통 신호 맵핑 및 검출
WO2021038294A1 (en) Systems and methods for identifying potential communication impediments
CA3027921A1 (en) Integrated sensor calibration in natural scenes
US11294387B2 (en) Systems and methods for training a vehicle to autonomously drive a route
US20210095992A1 (en) Adjustment value calculation method
JP6950832B2 (ja) 位置座標推定装置、位置座標推定方法およびプログラム
JP2020073915A (ja) 情報処理装置、情報処理方法、及びプログラム
CN117576652B (zh) 道路对象的识别方法、装置和存储介质及电子设备
JP2020153956A (ja) 移動***置推定システムおよび移動***置推定方法
US20220067964A1 (en) Position and orientation calculation method, non-transitory computer-readable storage medium and information processing apparatus
CN113435237A (zh) 物体状态识别装置、识别方法和识别用程序以及控制装置
CN114771548A (zh) 用于高级驾驶辅助***测试和验证的数据记录
JP7136138B2 (ja) 地図生成用データ収集装置及び地図生成用データ収集方法ならびに車両
CN116892949A (zh) 地上物检测装置、地上物检测方法以及地上物检测用计算机程序
CN115683142A (zh) 一种感兴趣区域确定方法及装置
JP7211513B2 (ja) 地図データ生成装置
CN117516559A (zh) 一种联合地图生成方法、终端、服务器及通信***
US11461944B2 (en) Region clipping method and recording medium storing region clipping program
CN113874681B (zh) 点云地图质量的评估方法和***
AU2018102199A4 (en) Methods and systems for color point cloud generation
Long et al. Automatic Vehicle Speed Estimation Method for Unmanned Aerial Vehicle Images.

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230511

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240116

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240305

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240318

R150 Certificate of patent or registration of utility model

Ref document number: 7468254

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150