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

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

Info

Publication number
JP2022039187A
JP2022039187A JP2020144087A JP2020144087A JP2022039187A JP 2022039187 A JP2022039187 A JP 2022039187A JP 2020144087 A JP2020144087 A JP 2020144087A JP 2020144087 A JP2020144087 A JP 2020144087A JP 2022039187 A JP2022039187 A JP 2022039187A
Authority
JP
Japan
Prior art keywords
image
map
environment map
information
image feature
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.)
Withdrawn
Application number
JP2020144087A
Other languages
English (en)
Inventor
麻子 北浦
Asako Kitaura
卓志 藤田
Takushi Fujita
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 JP2020144087A priority Critical patent/JP2022039187A/ja
Priority to US17/329,365 priority patent/US20220067964A1/en
Priority to EP21177097.9A priority patent/EP3961156A1/en
Publication of JP2022039187A publication Critical patent/JP2022039187A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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/36Input/output arrangements for on-board computers
    • G01C21/3602Input other than that of destination using image analysis, e.g. detection of road signs, lanes, buildings, real preceding vehicles using a camera
    • 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
    • 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
    • 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
    • G01S19/48Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system
    • G01S19/485Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system whereby the further system is an optical system or imaging system
    • 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
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/16Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using electromagnetic waves other than radio waves
    • G01S5/163Determination of attitude
    • 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
    • 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
    • G01S19/13Receivers
    • G01S19/14Receivers specially adapted for specific applications
    • 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/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows
    • 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

Landscapes

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

Abstract

【課題】撮影位置と姿勢を高速にかつ高精度に求めること。【解決手段】画像特徴比較処理(S1)において、処理対象画像100のGPS位置『◎』120から所定距離以内に「画像の撮影位置」を持つ、高架下の3D環境マップA111と、高架上の3D環境マップB112とを3D環境マップDB110から選定する。2つのマップ内でそれぞれ最も撮影位置が近い「作成画像情報」(『○』121および『○』122における作成画像情報)を特定する。特定された2つのマップの作成画像情報の画像内の画像特徴出現情報と、算出済の処理対象画像100の画像特徴(ヒストグラムなど)を比較する。3D環境マップ取得処理(S2)において、比較結果に基づき3D環境マップDB110から3D環境マップ(類似度が高いと判断された「3D環境マップA」111)を特定(取得)し、位置姿勢推定処理(S3)において、位置姿勢を推定する。【選択図】図1

Description

本発明は、画像の撮影位置と姿勢を算出する位置姿勢算出方法および位置姿勢算出プログラムに関する。
従来、移動体が移動中に取得した周辺状況に関するデータを入力とし、移動体の走行経路と周辺環境地図を同時に作成するSLAM(Simultaneous Localization and Mapping)という技術がある。また、SLAM技術の中でも、移動体が撮影した映像などの動画像を入力として、移動体の走行時のカメラ位置・姿勢を推定する技術は、Visual-SLAM(以後、「V-SLAM」という)と呼ばれる。
V-SLAMは、車載カメラで撮影した動画像を入力とし、撮影した動画像に映る被写体の変化を用いて、自車走行経路(自車位置・姿勢)と周辺環境地図(周辺の被写体の画像特徴点群の3次元位置マップ、以下、「3D環境マップ」という)を推定作成することができる技術であり、動画像から自車位置と姿勢を算出し、推定することができる。
近年、コネクテッドカーの普及などに伴い、車両などの移動体の車載機・ドライブレコーダーのデータ(映像)をセンターに集めて分析することで、車両を周辺地物状況を把握するセンサとして活用するサービスが検討されている。たとえば、落下物の場所を特定して利用するイベント発生検知サービスや、地図更新のため、地物の設置位置変化を把握する地図変化検知サービスなどがある。
関連する先行技術としては、V-SLAMを用いた高精度な位置・姿勢推定をおこなう技術がある。
特開2020-67439号公報
しかしながら、周辺変化に迅速に対応して、これらのサービスを実現するには、車載データ取得時の自車位置・姿勢、すなわち、車載画像を撮影したカメラ位置・姿勢あるいは映像の撮影位置・姿勢を実座標系で、できるだけ高速にかつ高精度に推定する必要がある。
一つの側面では、本発明は、撮影位置と姿勢を高速にかつ高精度に求めることを目的とする。
一つの実施態様では、情報処理装置が、複数の環境マップに含まれる画像情報の画像特徴と、移動体または当該移動体の撮影装置から取得した画像情報の画像特徴との比較をおこない、前記比較の結果に基づいて、前記複数の環境マップの中から、前記移動体または当該移動体の撮影装置の位置姿勢の算出に用いる算出用環境マップを特定する位置姿勢算出方法が提供される。
本発明の一側面によれば、撮影位置と姿勢を高速にかつ高精度に求めることができる。
図1は、本実施の形態にかかる位置姿勢算出方法および位置姿勢算出プログラムの概要の一例を示す説明図である。 図2は、実施の形態1にかかる位置姿勢算出方法を実現するシステム構成の一例を示す説明図である。 図3は、サーバのハードウェア構成の一例を示すブロック図である。 図4は、車載機のハードウェア構成の一例を示すブロック図である。 図5は、実施の形態1にかかる3D環境マップの構成の一例を示す説明図である。 図6は、実施の形態1にかかる環境マップ作成部およびマップ登録部の処理の一例を示すフローチャートである。 図7は、処理対象画像の画像特徴出現情報の内容の一例を示す説明図である。 図8は、画像特徴Aの画像特徴出現情報の内容の一例を示す説明図である。 図9は、画像特徴Bの画像特徴出現情報の内容の一例を示す説明図である。 図10は、実施の形態1にかかるマップ画像特徴比較部、マップ取得部および位置姿勢推定部の処理の一例を示すフローチャートである。 図11は、実施の形態2にかかる位置姿勢算出方法を実現するシステム構成の一例を示す説明図である。 図12は、実施の形態2にかかる3D環境マップの構成の一例を示す説明図である。 図13は、実施の形態2にかかる環境マップ作成部およびマップ展開登録部の処理の一例を示すフローチャートである。 図14は、実施の形態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つの地域メッシュ番号を計算特定することができる。
また別の一般的な、従来の広範囲の地図群の蓄積データベースから任意の走行に合致する地図を検索する方法として、道路ネットワーク情報などの全国道路の道路位置・接続情報(接続形状を含めた緯度経度情報)を用いる方法がある。すなわち、道路ネットワーク情報などの全国道路の道路位置・接続情報をあらかじめ用意しておき、配備地図群をそれぞれ道路ネットワーク情報の道路リンクのどれに関係しているのかを事前に対応づける。そして、地図を要する任意走行の位置情報(同、緯度経度情報)に関係する道路リンクを特定し、同じ道路リンクに対応づけた配備地図を取得する、という方法である。
道路ネットワークとは、全国の道路を交差点などの特徴(緯度経度値を持つノード)をつなぐ接続経路(リンク(道路リンク))として表したデータ情報である。道路ネットワークには、規制速度や、道路幅員、道路車線数、リンクの旅行速度(所要時間)など様々な情報を属性として保持する場合もある。
これら、地域メッシュを用いるあるいは道路ネットワークを用いるいずれの方法においても、緯度経度値を使って地図群と対応づけた何らかのグループ(地域メッシュ、道路リンク)を用意する。そして、地図を探索している地点の緯度経度値からグループを特定し、グループに属する地図を取得している。そのため、車載データを使った位置姿勢推定に用いる地図の選定でも、車載データと同時取得したGNSS情報の緯度経度を使って、何らかのグループを介して、地図を選定することになる。
ここで、車載映像の位置姿勢推定において計算に使う3D環境マップを、車載映像と同時取得したGPS情報の緯度経度値を使って選定する場合に、以下の課題がある。たとえば、道路が上下に重なっている高架上道・下道のある場所には、高架上道の3D環境マップと高架下道の3D環境マップが存在するが、高架下道の画像を位置姿勢推定する際に、緯度経度値だけで3D環境マップを選定するため、高架上道のマップも含めて取得する可能性がある。すなわち、高架上道と高架下道の両方の3D環境マップを取得する可能性がある。
この結果、誤った高架上道の3D環境マップを用いて、高架下道の動画像の位置姿勢推定をおこなうことがある。したがって、見える風景が大きく異なる高架上道の3D環境マップに含まれる地物情報は高架下道の対象車両のデータと一致しないことから、位置姿勢推定が失敗する。そのため、他の3D環境マップに変更して位置姿勢推定を繰り返す必要がある。これにより、正しい高架下道の3D環境マップを取得して位置姿勢推定に成功するまで、不要なマップの実行コストがかかり、また、成功までに時間がかかることから、リアルタイムな位置姿勢推定ができない。
同様なことは、GPS情報の緯度経度の位置誤差内に道路どうしの位置差が収まってしまう併走する道路や、脇道などでも発生する可能性がある。この場合も、やはり位置姿勢推定が失敗したり、位置姿勢推定に成功するまでに、不要なマップの実行コストがかかり、成功までに時間がかかることになる。
このように、緯度経度だけで3D環境マップを選定すると、誤った3D環境マップにより位置姿勢推定を試み、結果として位置姿勢推定処理に時間を要し、リアルタイムの位置姿勢推定ができない可能性がある。したがって、高架上下道などの緯度経度だけでは分別できない3D環境マップを正しく選定する必要がある。
図1は、本実施の形態にかかる位置姿勢算出方法および位置姿勢算出プログラムの概要の一例を示す説明図である。図1において、符号100は、画像情報(たとえば、車載映像などの動画像や静止画像などを含む)の任意の画像(処理対象画像)である。また、符号101は高架下道路であり、符号102は高架上道路であり、それぞれ上空俯瞰図にて示している。この上空俯瞰図において、矢印は進行方向を示している。このように、高架下道路101と高架上道路102とは、緯度経度値においては重なっていることがわかる。
また、符号110は3D環境マップデータベース(DB)を示しており、3D環境マップDB110には、3D環境マップA111、3D環境マップB112を含む複数の3D環境マップが保存されている。3D環境マップA111は高架下(画像特徴A)のマップであり、この3D環境マップA111は上空俯瞰図における作成画像群の走行経路(点線の矢印111)で示すことができる。同様に、3D環境マップB112は高架上(画像特徴B)のマップであり、3D環境マップB112は上空俯瞰図における作成画像群の走行経路(実線の矢印112)で示すことができる。
また、上空俯瞰図における『◎』(二重丸印)120は、処理対象画像100のGPS位置すなわち緯度経度値を示しており、これは、たとえば、位置姿勢推定をおこないたい車載映像が高架下道を走った車載映像だった場合に、当該車載映像の任意の画像の撮影位置を示している。また、上空俯瞰図の矢印111における『○』(丸印)121は、3D環境マップA111の作成時に用いた画像群で最も処理対象画像100のGPS位置120に近い位置を示している。同様に、上空俯瞰図の矢印112における『○』(丸印)122は、3D環境マップB112の作成時に用いた画像群で最も処理対象画像100のGPS位置120に近い位置を示している。
このような状況において、位置姿勢算出方法および位置姿勢算出プログラムは、画像特徴比較(S1)、3D環境マップ取得(S2)、位置姿勢推定(S3)の各処理を実行することによって、位置姿勢の算出をおこなうことができる。
『画像特徴比較』(S1)の処理においては、まず、処理対象画像100のGPS位置『◎』120から所定距離以内に「画像情報の撮影位置」を持つ3D環境マップとして、高架下の3D環境マップA111と、高架上の3D環境マップB112とを3D環境マップDB110から選定する。選定された2つのマップ内でそれぞれ最も撮影位置が近い「作成画像の情報」、すなわち、『○』121における作成画像情報(後述する図8における符号800)および『○』122における作成画像情報(後述する図9における符号900)を特定する。
そして、特定された2つのマップの作成画像情報の画像内の画像特徴出現情報(後述する図8における符号800、図9における符号900)と、算出済の処理対象画像100の画像特徴出現情報(後述する図7における符号700)を比較する。具体的には、たとえば、当該画像の画像特徴の出現分布の比較や、画像輝度または画像特徴のヒストグラムなどの比較をおこなう。このようにして、処理対象画像の画像特徴出現情報に対して、各マップの作成時画像の画像特徴A、Bの出現情報(画像特徴出現情報)を比較することができる。
『3D環境マップ取得』(S2)の処理においては、『画像特徴比較』(S1)の処理における比較結果に基づいて、3D環境マップDB110から位置姿勢算出用の3D環境マップ(たとえば最も類似度が高いと判断された「3D環境マップA」111)を特定し、取得することができる。従来の方法とは異なり、緯度経度値だけで選定した3D環境マップではなく、画像特徴比較を通して同じ道路と思われる道路だけに絞り込んだ3D環境マップにデータ取得対象を限定しているため、従来の方法よりも低コストでより高速に正しい位置姿勢算出用の3D環境マップを取得することが可能となる。
『位置姿勢推定』(S3)の処理においては、取得された3D環境マップA111に基づいて位置姿勢の推定(算出)をおこなう。位置姿勢推定処理は、取得された位置姿勢算出用の3D環境マップ(3D環境マップA111)のデータと、位置姿勢推定対象である処理対象画像(車載映像)100およびGNSSデータを用いて、たとえばV-SLAMなどを用いて撮影位置姿勢を推定(算出)することができる。
撮影位置姿勢推定したい車載データに関する3D環境マップとして、近傍位置(緯度経度)の作成時画像内の画像特徴出現状況がより類似している3D環境マップを優先して特定できるため、経路上から見た風景が似ているはずの、高架上道・下道などの緯度経度だけでは判別ができない同じ経路の3D環境マップを、正しく選別することができる。それにより、無駄な3D環境マップのデータ取得コスト、位置姿勢推定実施コストおよび位置姿勢推定完了までの時間を削減し、位置姿勢推定をリアルタイムで実施することが可能となる。
以下、位置姿勢算出方法および位置姿勢算出プログラムの詳細な内容について、実施の形態1および実施の形態2において説明する。
(実施の形態1)
(システム構成例)
図2は、実施の形態1にかかる位置姿勢算出方法を実現するシステム構成の一例を示す説明図である。図2において、実施の形態1にかかる位置姿勢算出方法を実現するシステム(移動体位置姿勢算出システム200)は、サーバ201と、移動体203に搭載される車載機202とを備える。車載機202は、移動体203に搭載され、衛星205からのGNSS情報および車載カメラ(後述する図4に示す撮像装置406)の動画像を収集する。
そして、サーバ201と車載機202とが、ネットワーク204によって接続されることにより、移動体位置姿勢算出システム200を構成する。また、移動体位置姿勢算出システム200は、図示は省略するが、クラウドコンピューティングシステムを用いて、その機能を実現するようにしてもよい。
移動体203は、具体的には、たとえば、情報を収集するコネクテッドカーである。また、一般乗用車やタクシーなどの営業車、二輪車(自動二輪や自転車)、大型車(バスやトラック)などであってもよい。また、移動体203には、水上を移動する船舶や上空を移動する航空機、無人航空機(ドローン)、自動走行ロボットなどであってもよい。
車載機202は、車載カメラ(撮像装置406)の動画像に関する情報を収集する。また、車載機202は、測位情報の一例であるGNSS情報を含む移動体203の情報を収集する。移動体203の情報には、移動体203から収集する、移動体203の姿勢情報なども含んでもよい。また、車載機202は、撮影時刻などに関する情報も収集するようにしてもよい。
車載機202は、移動体203に搭載された専用の装置であってもよく、取り外し可能な機器であってもよい。また車載機202は、一般乗用車やタクシーなどの営業車などに搭載されているドライブレコーダーなどであってもよい。さらには、スマートフォンやタブレット端末装置などの通信機能を備えた携帯端末装置を移動体203において利用するものであってもよい。また、車載機202の各種機能の全部または一部を、移動体203が備えている機能を用いて実現するようにしてもよい。
したがって、車載機202における『車載』という表現は、移動体に搭載された専用装置という意味には限定されない。車載機202は、移動体203における情報を収集し、収集した情報をサーバ201に対して送信できる機能を持った装置であれば、どのような形態の装置であってもよい。
車載機202は、車載動画像に関する情報およびGNSS情報を含む移動体203の情報(車載データ)を取得し、取得した車載データを保存する。そして、保存した車載データを、無線通信によって、ネットワーク204を介して、サーバ201へ送信する。また、サーバ201から配信されたプログラムを含む各種データを、ネットワーク204を介して、無線通信により受信する。
また、車載機202は、近距離通信機能により、近くを走行中の別の移動体203の情報を取得し、サーバ201へ送信するようにしてもよい。また、車載機202どうしが、近距離通信機能により、通信をおこない、他の車載機202を介して、サーバ201との通信をおこなうようにしてもよい。
このようにして、移動体位置姿勢算出システム200において、サーバ201は、移動体203に搭載された車載機202から車載データを取得するとともに、各車載機202へ各種データを配信することができる。
また、車載機202は、通信手段を備えていなくてよい。すなわち、車載機202は、サーバ201とは、ネットワーク204を介して接続されていなくてもよい。その場合は、車載機202に蓄積されたデータは、オフラインで(たとえば、記録メディアを介して人手などにより)、サーバ201に入力することができる。
サーバ201は、環境マップ作成部211、マップ登録部212、マップ画像特徴比較部213、マップ取得部214、位置姿勢推定部215を有する。また、サーバ201は、車載動画像およびGNSS情報(3D環境マップ作成用の「車載動画像+GNSS情報」221a、位置姿勢推定用の「車載動画像+GNSS情報」221b))を持つ。また、サーバ201は、内部処理データとして、3D環境マップDB210を有していてもよい。
環境マップ作成部211は、3D環境マップ作成用の「車載動画像+GNSS情報」221aを入力し、その「車載動画像+GNSS情報」221aから環境マップ、たとえば、3D(3次元)環境マップ222を作成する。
マップ登録部212は、環境マップ作成部211において作成された3D環境マップ222を3D環境マップDB210に登録する。その際、検索用のインデックスを作成してもよい。たとえば、任意のデータベース項目を検索用の別テーブルとして保持するようにしてもよい。インデックスを用いることによって、3D環境マップDB210を、より高速に検索することができる。
マップ画像特徴比較部213は、処理対象画像100にかかる、位置姿勢推定用の「車載動画像+GNSS情報」221bを入力し、その「車載動画像+GNSS情報」221bにかかる画像特徴と、3D環境マップDB210に登録されている3D環境マップ222群の画像の画像特徴との比較をおこなう。
マップ取得部214は、マップ画像特徴比較部213による比較の結果に基づいて、複数の環境マップ222群の中から、移動体203または当該移動体の撮影装置の位置姿勢の算出に用いる算出用環境マップを特定(取得)する。
位置姿勢推定部215は、マップ取得部214によって取得された算出用環境マップを用いて、処理対象画像100の移動体203または当該移動体の撮影装置(車載機202)の位置姿勢(「推定位置姿勢」223)を算出する。
図2においては、サーバ201が、環境マップ作成部211と、マップ登録部212と、マップ画像特徴比較部213と、マップ取得部214と、位置姿勢推定部215と、を有する構成とした。図示は省略するが、これらの各機能部の少なくとも一つを、サーバ201に加えて、あるいは、サーバ201に代えて、車載機202が有するようにしてもよい。車載機202が、各機能部211、212、213、214、215の少なくとも一つを有する場合は、サーバ201が実施する処理の内容と同じであってもよい。また、サーバ201は複数のサーバから構成されてもよく、各機能部を分散して処理をおこなってもよい。
(サーバのハードウェア構成例)
図3は、サーバのハードウェア構成の一例を示すブロック図である。情報処理装置の一例であるサーバ201は、1つ以上のCPU(Central Processing Unit)301と、メモリ302と、ネットワークI/F(Interface)303と、記録媒体I/F304と、記録媒体305と、を有する。また、各構成部は、バス300によってそれぞれ接続される。
ここで、CPU301は、サーバ201の全体の制御を司る。メモリ302は、たとえば、ROM(Read Only Memory)、RAM(Random Access Memory)およびフラッシュROMなどを有する。具体的には、たとえば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU301のワークエリアとして使用される。メモリ302に記憶されるプログラムは、CPU301にロードされることで、コーディングされている処理をCPU301に実行させる。
ネットワークI/F303は、通信回線を通じてネットワーク204に接続され、ネットワーク204を介して他の装置(たとえば、車載機202や、他のサーバやシステム)に接続される。そして、ネットワークI/F303は、ネットワーク204と自装置内部とのインターフェースを司り、他の装置からのデータの入出力を制御する。ネットワークI/F303には、たとえば、モデムやLANアダプタなどを採用することができる。
記録媒体I/F304は、CPU301の制御にしたがって記録媒体305に対するデータのリード/ライトを制御する。記録媒体305は、記録媒体I/F304の制御で書き込まれたデータを記憶する。記録媒体305としては、たとえば、磁気ディスク、光ディスクなどが挙げられる。
なお、サーバ201は、上述した構成部のほかに、たとえば、SSD(Solid State Drive)、キーボード、ポインティングデバイス、ディスプレイなどを有していてもよい。
(車載機のハードウェア構成例)
図4は、車載機のハードウェア構成の一例を示すブロック図である。情報収集装置の一例である車載機202は、CPU401と、メモリ402と、無線通信装置403と、移動体I/F404と、受信装置405と、撮像装置406と、を有する。また、各構成部は、バス400によってそれぞれ接続される。
CPU401は、車載機202の全体の制御を司る。メモリ402は、たとえば、ROM、RAMおよびフラッシュROMなどを有する。具体的には、たとえば、フラッシュROMやROMが各種プログラムを記憶し、RAMがCPU401のワークエリアとして使用される。メモリ402に記憶されるプログラムは、CPU401にロードされることで、コーディングされている処理をCPU401に実行させる。
無線通信装置403は、発信された電波を受信したり、電波を発信したりする。アンテナと受信装置とを含む構成であり、各種通信規格による移動通信(具体的には、たとえば、3G、4G、5G、PHS通信など)、Wi-Fi(登録商標)などの通信を送受信する機能を備えている。
移動体I/F404は、移動体203と車載機202の自装置内部とのインターフェースを司り、移動体203からのデータの入出力を制御する。したがって、車載機202は、たとえば、移動体I/F404を介して移動体203が備えるECU(各種センサなどを含む)407から情報を収集することができる。移動体I/F404は、具体的には、たとえば、有線により接続する際に用いるコネクタや近距離無線通信(具体的には、たとえば、Bluetooth(登録商標))装置などであってもよい。
受信装置(たとえばGPS受信装置などのGNSS受信装置)405は、複数の衛星205からの電波を受信し、受信した電波に含まれる情報から、地球上の現在位置を算出する。
撮像装置(たとえばカメラなど)406は、静止画や動画を撮像し、画像情報として出力する機器である。具体的には、たとえば、レンズと撮像素子とを備える構成である。具体的には、単眼カメラの映像以外に、複数カメラ(ステレオカメラ)の画像対などを含む。このように、撮影装置406は、映像(動画)や単画像(静止画)を含む動画像からなる画像情報を取得することができる。また、撮像装置406は、一般乗用車やタクシーなどの営業車に搭載されるドライブレコーダーなどであってもよい。
撮像装置406による撮像画像は、メモリ402に保存される。また、カメラなどの撮像装置406は、画像認識機能や、バーコードやQRコード(登録商標)を読み取る機能や、OMR(Optical Mark Reader)、OCR(Optical Character Reader)機能などを備えていてもよい。
図4に示したように、GNSS受信装置405および撮像装置406は、車載機202が備えていてもよく、また、移動体203が備えていたり、別途、外付けされたものを用いるようにしてもよい。その際、GNSS受信装置405あるいは撮像装置406と、車載機202とのデータのやりとりは、有線または無線通信によりおこなうようにしてもよい。
GNSS受信装置405や撮像装置406を、車載機202が備えていない場合は、移動体I/F404などを介して、それらの情報を取得するようにしてもよい。また、車載機202は、図示は省略するが、各種入力装置、ディスプレイ、メモリカードなどの記録媒体の読み書き用のインターフェース、各種入力端子などを備えていてもよい。
(3D環境マップの内容)
図5は、実施の形態1にかかる3D環境マップの構成の一例を示す説明図である。図5において、3D環境マップ222(222a~222c)は、3Dマップ要素(3D画像特徴)501と、作成画像情報502と、を有する。
図5に示すように、3Dマップ要素501は、位置姿勢推定(算出)で用いる車載動画像の特徴要素(画像特徴)のデータである。具体的には、保持要素として、「3Dマップ要素(3D画像特徴)」501と「作成画像情報」502とを含む各種情報からなる。また、図示は省略するが、特徴点群情報を識別する一意の識別情報である「ID」情報を有していてもよい。このように、3D環境マップ222は、3D画像特徴および作成画像情報を持つデータ構成を有する。
3Dマップ要素501は、位置姿勢推定処理において用いる画像情報(動画像)の特徴要素(画像特徴)のデータである。具体的には、「画像特徴の3次元実座標位置」511と、「画像特徴量」512を含む。画像特徴は、たとえば、既知の画像処理手法で画像から抽出する画像特徴点や画像特徴線などが考えられる。画像特徴の3次元実座標位置511は、SLAMなどの処理によって、同じ画像特徴が複数画像に出現する時の画像内位置の変化などを用いて、既知の三角測量や微小位置変化に対する最適化計算などを使って算出することができる。
また、画像特徴量512は、SLAMなどの処理によって一般的な画像処理で抽出することができる。たとえば、画像特徴となる画素と周辺画素との輝度差状況をバイナリ値に変換した値などであってもよい。したがって、画像特徴量512は、利用する画像処理の種類(画像処理で抽出する画像特徴の種類)に依存する。一般的に画像特徴量どうしは比較が可能なため、任意の画像特徴量との比較を通して、3D環境マップ222内で対応する3D画像特徴を特定することができる。
図2に示した位置姿勢推定部215は、3D環境マップ222内の画像特徴の3次元実座標位置511が既知の各3Dマップ要素501群が撮影位置姿勢推定対象の車載動画像内に出現した実際の位置と、推定する撮影位置姿勢から幾何的に計算できる写りこむべき画像内位置とをそれぞれ比較する。そして、画像内位置の差が少なくなるように最適化をおこなうことによって、車載動画像の撮影位置姿勢を推定(算出)することができる。このとき、多数の各3Dマップ要素(3D画像特徴)501群内から、位置姿勢推定対象の車載動画像から抽出した画像特徴と等しいものを特定する必要があり、画像特徴量512はこの特定に用いることができる。
作成画像情報502は、環境マップ作成部211で3D環境マップ222を作成するのに用いた車載動画像の個々の任意画像の情報である。作成画像情報502は、少なくとも、3次元実座標位置などである「(画像の)撮影位置(に関する情報)」521と、「(画像内の)画像特徴出現情報」522を含む。これらの情報は、マップ画像特徴比較部213において用いる情報である。
作成画像情報502は、3D環境マップ222の作成時における車載映像の全画像に対して保持する必要はなく、1画像に対してだけ保持してもよい。ただしマップ画像特徴比較部213を用いた3D環境マップ222の特定精度向上のためには、動画像(映像)全体、特に映像の走行経路全体をなるべく網羅する画像群を保持することが望ましい。たとえば、走行距離が任意距離ごと、任意撮影時間間隔ごと、任意画像フレーム数ごと、などの任意の方法で映像を間引いた画像群に対して保持するようにしてもよい。
画像の撮影位置521は、たとえば、既知のSLAMなどの処理によって、3D環境マップ222の作成と同時に算出する画像撮影位置姿勢の情報であってもよい。3D環境マップ222の作成方式が、撮影位置姿勢を算出しない方式である場合には、3D環境マップ222の作成に使ったGNSS情報を使うようにしてもよい。
また、3D環境マップ222の作成後に改めて車載動画像を作成した3D環境マップ222を用いて位置姿勢推定をおこなって、撮影位置姿勢の情報を算出して用いるようにしてもよい。GNSS情報より高精度な位置姿勢推定部の結果を用いる方が、マップ画像特徴比較部213において、より正確な比較をおこなうことができ、それによりマップ選定をより正確に実施することができる。
画像内の画像特徴出現情報522は、マップ画像特徴比較部213において、画像の類似性を比較するのに用いるものである。画像内の画像特徴出現情報522は、位置姿勢推定部215において用いる画像特徴および該画像特徴を用いた情報と必ずしも同じである必要はなく、一般的な画像類似比較に用いる画像情報であってもよい。画像内の画像特徴出現情報522は、たとえば、画像内に出現した「画像特徴のリスト(画像特徴量と出現位置)」や、「画像の画像特徴分布」、「画像の輝度分布」などがある。このうち、できるだけ画像からの算出が簡単なものが好ましい。それにより、より高速な処理を実現することができる。
画像特徴のリスト(画像特徴量と画像内位置)は、たとえば画像から抽出した画像特徴量と画像内の出現位置である。画像特徴のリストは、画像特徴が3D画像特徴501と同じなら、3D画像特徴501を算出したときの画像内出現位置(画像特徴の3次元座標位置511)や画像特徴量512を流用することができる。
画像の画像特徴分布は、任意の画像特徴の画像内の分布状況である。画像の画像特徴分布は、たとえば、画像をN分割して、分割したN個の画像部分ごとの画像特徴の出現数を求めてもよいし、画像特徴を画像特徴量であらかじめグループ化しておき、分割画像部分あるいは画像全体に出現した各グループの数、出現割合、ヒストグラムなどの統計量、などを求めるようにしてもよい。
画像分割する場合は、画像の全分割領域ではなく、分割領域の一部を使ってもよいし、画像分割ではなく、画像の任意の一部領域だけを用いて算出してもよい。たとえば、画像の上半分だけ、あるいは、画像の上1/3を4分割、などで算出するようにしてもよい。この画像特徴分布は、3D画像特徴501と同じ画像特徴を用いて算出してもよいし、異なる画像特徴を使うようにしてもよい。
なお、画像特徴のリストに3D画像特徴501と同じ画像特徴を用いれば、画像特徴出現情報522は任意の画像で同時閲覧できる3D画像特徴501群のリストとして3D画像特徴501をまとめる構造化要素となる。このため、位置姿勢推定部215において、3D環境マップ内の全3D画像特徴501から位置姿勢推定計算中の画像で利用する3D画像特徴501を選定するのにも使うことができ、より正確な位置姿勢推定をおこなうことができる。すなわち、画像特徴量から3D画像特徴を特定する際に、画像特徴出現情報522で同時閲覧できない3D画像特徴を特定してしまっていないか判定し、間違った特定を避けることができる。
一方で、マップ画像特徴比較部213において用いる作成画像情報502は、各任意画像の画像全体の画像特徴傾向が把握できればよく、位置姿勢推定部215および環境マップ作成部211などにおける個々の画像特徴の正確な対応付けは必ずしも必須ではないため、3D画像特徴501の画像特徴以外の多様な画像特徴を用いることができる。
画像の輝度分布は、たとえば、画像の輝度ヒストグラムや、頻出する輝度などの輝度統計量を、画像全体、あるいは画像の一部、または画像をN分割した画像部分ごとに求めてもよい。なお、画像特徴出現情報522は全3D環境マップ222で1つの種類に限定するのではなく、1つの3D環境マップ222で複数種類を保持したり、場所や道路種類、作成時期などで異なる種類のものを保持するようにしてもよい。
また、画像特徴出現情報522は、作成画像情報502を保持する画像だけから求めたこれら画像特徴の位置や分布ではなく、保持する画像と同じ車載動画内の他の画像も使って求めるようにしてもよい。たとえば、作成画像情報502を保持する画像と他画像とで、同じ画像特徴点の出現位置や各画像内の輝度分布状況を比較し、それらの比較結果である差分変化量を使って画像特徴出現情報522を求めることができる。
他画像としては、たとえば、同じ車載動画内の作成画像情報502を保持する画像の近傍時刻で撮影した画像として、前フレーム画像または後フレーム画像などを使うことができる。また、2つの画像から求める画像特徴の差分変化量として、たとえば、2画像の同じ画像特徴点や輝度の画像内の出現位置変化量があり、一般的な画像処理による画像オプティカルフロー量として求めることができる。
他の画像を用いた画像特徴出現情報522として、画像特徴点の画像特徴量の代わりに、画像特徴点の画像内位置変化量(オプティカルフロー量)を用いて、作成画像情報502を保持する画像でのオプティカルフロー量と画像内のフロー出現位置のリストを求めるようにしてもよい。また、片方の画像の各画素または隣接する複数画素を纏めた画素ブロックが、他の画像内でどれだけ移動したかを類似輝度の位置変化状況から求めた画素または画素ブロックの画像内移動変化量(オプティカルフロー量)を用いて、輝度分布の代わりに保持する画像の各画素または各画素ブロックの画像内移動変化量分布(オプティカルフロー分布)を求めるようにしてもよい。
画像に写っている被写体が撮影位置の近くにあるほど画像内移動変化量が大きくなるため、画像内移動変化量(オプティカルフロー値)の大きさは周辺物体との距離の大きさに類似している。また、画像内移動変化量を用いて求めた画像特徴出現情報522は、画像内の周辺物体との距離状況を表している。このため、撮影時の天候などの周辺物体の見え変化の大きなシーンに依らず、どの車載動画像でも安定して同じ画像特徴出現情報522を求めることができる。したがって、マップ作成時の車載動画像と異なる画像を使って画像の類似性を比較するマップ画像特徴比較部213においても、より正確に画像の類似比較ができる。
なお、差分変化量、特にオプティカルフロー量の大きさは、算出に使った2画像の撮影位置の差(距離)に比例する。そのため、そのまま画像特徴出現情報522に用いるのではなく、画像全体の変化量の最大値や最小値、平均値で割った値にして正規化したり、画像全体での段階数を決めて段階的に変化するレベル変化量に変換したり、任意の統計的な補正をおこなって、2画像の撮影位置の差に依らない値にしてから用いるようにしてもよい。
(環境マップ作成部211の内容)
図2に示した環境マップ作成部211は、位置姿勢推定用の「車載動画像+GNSS情報」221bを入力として、位置姿勢推定部215において用いるための3D環境マップ222を、任意の既知の方法で作成する。たとえば、映像を用いたV-SLAMを実施して、画像特徴の3D位置を求める。そして、GNSS情報によってスケール不明の相対位置から実座標系での緯度経度値に変換して算出し、3D環境マップ222とすることができる。
このとき、実座標系への変換を3D位置算出と同時に実施してもよいし、あるいは、映像の画像特徴の3D位置自体を実座標系の値に変換して保持するのではなく、相対値として保持して、実座標系への変換方法、たとえば座標系変換行列の値などを別途保持していてもよい。
環境マップ作成部211において作成した3D環境マップ222を用いて位置姿勢推定部215で位置姿勢を求めるため、一般的に、環境マップ作成部211と位置姿勢推定部215で用いる3D位置つきの画像特徴(3D環境マップ222の3D画像特徴501)は、同じである必要がある。
一方で、3D環境マップ222は、作成画像情報502として、画像内の画像特徴出現情報522を持つが、この情報は3D位置を算出した画像特徴(3D画像特徴501)と同じ画像特徴から成るものでなくてもよい。その場合は、別途環境マップ作成部211で3D環境マップ222の画像内の画像特徴出現情報522の情報を算出する必要がある。たとえば、異なる画像特徴を抽出して分布を算出したり(画像の画像特徴分布)、画像の輝度分布を算出したり(画像の輝度分布)などである。
環境マップ作成部211は、具体的には、たとえば、図2に示したサーバ201において、メモリ302に記憶されたプログラムをCPU301が実行することによって、その機能を実現することができる。また、具体的には、たとえば、図4に示した車載機202において、メモリ402に記憶されたプログラムをCPU401が実行することによって、その機能を実現するようにしてもよい。
(マップ登録部212の内容)
マップ登録部212は、環境マップ作成部211において作成された3D環境マップ222を、マップ画像特徴比較部213で比較特定し、また、位置姿勢推定部215で簡単に引用できるように、3D環境マップDB210などに登録管理する。そのために、上述したように、検索用のインデックスを作成し、登録するようにしてもよい。3D環境マップDB210は、位置姿勢推定部215で利用する3D環境マップ222群のデータベースであり、作成した3D環境マップ222を保持管理するデータベースである。
マップ登録部212は、具体的には、たとえば、図3に示したサーバ201において、メモリ302に記憶されたプログラムをCPU301が実行することによって、あるいは、ネットワークI/F303、記録媒体I/F304などによって、その機能を実現することができる。また、具体的には、たとえば、図4に示した車載機202において、メモリ402に記憶されたプログラムをCPU401が実行することによって、あるいは、無線通信装置403などによって、その機能を実現するようにしてもよい。
(環境マップ作成部211・マップ登録部212の処理手順)
図6は、実施の形態1にかかる環境マップ作成部およびマップ登録部の処理の一例を示すフローチャートである。図6のフローチャートにおいて、入力車載動画像とGNSS情報とから、3D環境マップ222、より具体的には、3D環境マップ222の3D画像特徴501を作成する(ステップS601)。
そして、3D環境マップ222(3D画像特徴501)が作成できて有ったか否かを判断する(ステップS602)。ここで、3D環境マップ222(3D画像特徴501)が作成できず、なかった場合(ステップS602:No)は、何もせずに、一連の処理を終了する。
一方、3D環境マップ222(3D画像特徴501)が作成できて有った場合(ステップS602:Yes)は、つぎに、マップ画像特徴比較部213において用いる特徴が、画像特徴の出現リストか否かを判断する(ステップS603)。
ここで、マップ画像特徴比較部213で用いる特徴が、画像特徴の出現リストである場合(ステップS603:Yes)は、間引き画像ごとにマップ作成時の画像特徴の出現リストとして画像特徴を抽出する。そして、画像特徴量と画像内位置を求め、画像内の画像特徴出現情報522(「画像特徴のリスト(画像特徴量と出現位置)」)を作成する(ステップS604)。その後、ステップS609へ移行する。
ステップS603において、マップ画像特徴比較部213で用いる特徴が、画像特徴の出現リストではない場合(ステップS603:No)は、マップ画像特徴比較部213で用いる特徴が、画像特徴分布か否かを判断する(ステップS605)。
ここで、マップ画像特徴比較部213で用いる特徴が、画像特徴分布である場合(ステップS605:Yes)は、間引き画像ごとに画像特徴分布として、画像内の画像特徴出現情報522(「画像特徴分布」)を作成する(ステップS606)。その後、ステップS609へ移行する。
ステップS605において、マップ画像特徴比較部213で用いる特徴が、画像特徴分布ではない場合(ステップS605:No)は、マップ画像特徴比較部213で用いる特徴が、画像輝度分布か否かを判断する(ステップS607)。
ここで、マップ画像特徴比較部213で用いる特徴が、画像輝度分布である場合(ステップS607:Yes)は、間引き画像ごとに画像輝度分布として、画像内の画像特徴出現情報522(「画像輝度分布」)を作成する(ステップS608)。その後、ステップS609へ移行する。
ステップS607において、マップ画像特徴比較部213で用いる特徴が、画像輝度分布ではない場合(ステップS607:No)は、その後は何もせずに、一連の処理を終了する。ここまでの処理(ステップS601~S608の各処理)は、たとえば、環境マップ作成部211によっておこなうことができる。
その後、3D画像特徴501、間引き画像の作成画像情報502(撮影位置521、画像特徴出現情報522)を3D環境マップ222として、3D環境マップDB210に登録する(ステップS609)。これにより、一連の処理を終了する。このステップS609の処理は、たとえば、マップ登録部212によっておこなうことができる。
このような処理の手順により、車載動画像およびGNSS情報(3D環境マップ作成用の「車載動画像+GNSS情報」221a)から3D環境マップ222を作成し、作成された3D環境マップ222を3D環境マップDB210に登録することができる。
(マップ画像特徴比較部213の内容)
マップ画像特徴比較部213は、位置姿勢を推定したい車載映像(動画像)および車載動画像と同時取得した、GPSなどの測位情報であるGNSS情報(位置姿勢推定用の「車載動画像+GNSS情報」221b)を入力し、当該車載動画像に関係する3D環境マップ群を、マップ登録部212が登録済の3D環境マップDB210から特定する。
マップ画像特徴比較部213は、具体的には、たとえば、図2に示したサーバ201において、メモリ302に記憶されたプログラムをCPU301が実行することによって、その機能を実現することができる。また、具体的には、たとえば、図4に示した車載機202において、メモリ402に記憶されたプログラムをCPU401が実行することによって、その機能を実現するようにしてもよい。
マップ画像特徴比較部213は、具体的には、以下の手順によって、当該車載動画像に関係する3D環境マップ群を特定することができる。
まず、マップ画像特徴比較部213は、画像特徴比較をおこなう対象となる、位置姿勢推定対象の車載動画像の任意画像を抽出する。抽出する任意画像の数は任意である。たとえば、車載動画像の任意の1画像を抽出してもよいし、複数画像を抽出してもよい。比較処理が早く終了するためには、1画像を抽出するのが好ましい。一方、漏れなく特定する3D環境マップ222を選定するために、複数画像を用いて、各々の画像を画像特徴比較するようにしてもよい。
マップ画像特徴比較部213は、抽出した各任意画像について、3D環境マップDB210において、各3D環境マップ222の作成画像情報502の画像内の画像特徴出現情報522に相当する画像特徴を算出する。このとき、3D環境マップ222に複数種類の作成画像情報(画像特徴出現情報)522がある場合には、任意の1つ、たとえばより算出が用意なものを1つ選んで用いたり、任意の複数種類、たとえば全種類を用いてそれぞれの類似度を求め、それらの類似度を統計的にまとめて最終的に判断するようにしてもよい。
一例として、1種類の画像特徴出現情報522がある場合について説明する。たとえば、画像内の画像特徴出現情報522が画像に出現した画像特徴のリスト(画像特徴量と出現位置)である場合は、同じ画像特徴を画像から抽出して、画像特徴量とともに画像内の出現位置のリストを作成する。
なお、この画像特徴が、3D画像特徴501と同じ場合は、位置姿勢推定部215において該当画像の画像特徴として用いるために保持しておき、位置姿勢推定部215において再度画像特徴抽出をしないようにしてもよい。
また、画像内の画像特徴出現情報522が画像の画像特徴分布である場合は、画像内の画像特徴出現情報522と同様の、画像全体または一部の画像分布状況を算出する。同様に、画像内の画像特徴出現情報522が画像の輝度分布である場合は、画像内の画像特徴出現情報522と同様の、画像全体または一部の輝度分布を算出する。
なお、「画像内の画像特徴出現情報」522が他画像を用いて算出された差分変化量である場合は、マップ画像特徴比較部213でも同様に、位置姿勢推定をおこないたい画像に加えて同様に同じ車載動画像の他画像(たとえば近傍時刻の前画像フレームまたは後画像フレーム)をも使って差分変化量を求める。そして、「画像内の画像特徴出現情報」522と同じ、差分変化量とその画像内出現位置のリスト、または、画像内分布を算出するようにしてもよい。
つぎに、マップ画像特徴比較部213は、当該任意画像の撮影位置を、位置姿勢推定用の「車載動画像+GNSS情報」221bのうちのGNSS情報から取得する。そして、各3D環境マップ222のうち、画像の撮影位置521と当該撮影位置が所定距離以内の作成画像情報502を持つ3D環境マップ222を選定し、選定した3D環境マップ222の中で最も距離が近い画像の撮影位置521を持つ作成画像情報502を特定する。このとき、あらかじめ、既知の方法、たとえば、地域メッシュなどを用いて、ある程度、3D環境マップ222を選定しておいてから選定するようにしてもよい。
マップ画像特徴比較部213は、つぎに、特定した3D環境マップ222群の画像内の画像特徴出現情報522と抽出した各任意画像で算出済の同等の情報を比較し、2つの情報が類似するか否かを判定し、画像類似度を算出する。たとえば、画像内の画像特徴出現情報522が画像特徴のリスト(画像特徴量と出現位置)である場合は、双方の画像の該リストにある同じ画像特徴量の画像特徴数を比較してもよい。また、同じ画像特徴量で類似出現位置に出現した画像特徴数を比較してもよい。
また、画像内の画像特徴出現情報522が画像特徴分布である場合は、双方の画像の画像全体の画像特徴数が近いか、または画像の各部分と画像全体、または他画像部分との画像特徴数の比が類似するか、画像特徴グループの出現グループ数や画像内の頻出および出現傾向が類似するか、グループの出現割合やヒストグラムが類似するか、などを比較してもよい。
また、「画像内の画像特徴出現情報」522が画像の輝度分布である場合は、同様に、双方の画像の輝度ヒストグラムが類似するか、輝度頻出および出現傾向が類似するか、最頻出輝度などが類似するか、などを比較してもよい。
また、「画像内の画像特徴出現情報」522が他画像を用いて算出された差分変化量である場合は、画像内の画像特徴出現情報522が画像特徴のリスト(画像特徴量と出現位置)の場合や、画像輝度分布の場合のいずれかの比較方法と同じ方法を使って、比較するようにしてもよい。それぞれの方法で、画像特徴量の代わりに画像特徴の移動変化量を、画像の各画素または画素ブロックの輝度値の代わりに各画素または画素ブロックの移動変化量を使うことで、比較をすることができる。
これらの画像類似比較処理は、「画像内の画像特徴出現情報」522による任意の類似画像比較方法を用いることができる。
つぎに、任意画像ごとに各3D環境マップ222に対して求めた画像類似度にしたがって、3D環境マップ222を選定する。たとえば、任意画像が複数ある場合に、3D環境マップ222ごとに全任意画像の画像類似度の統計量(たとえば、平均値、最大値、最小値、中央値など)を求めて、各3D環境マップ222の位置姿勢推定対象の車載映像に対する最終的な類似度としてもよい。そして、この最終的な類似度を比べて、類似度の最も高いマップを1つ選定する。
なお、位置姿勢推定部215による位置姿勢推定処理において、高速リアルタイムに位置姿勢を推定することよりも、若干処理時間がかかったとしても高精度な位置姿勢を推定することを優先する場合や、最終的な類似度が似た3D環境マップ222があって、1つに絞り込むことが難しい場合などでは、マップ画像特徴比較部213は、最終的に1つの3D環境マップ222を選定するのではなく、画像内の画像特徴出現情報522の類似度がある程度以上の3D環境マップ222を複数選定するようにしてもよい。その際に、類似度の高い順に優先度を設定しておくようにしてもよい。
また、類似度が低い3D環境マップ222しか選定できなかった場合には、位置姿勢推定処理に用いる3D環境マップ222が見つからなかったとして、位置姿勢推定処理を断念(中止)するようにしてもよい。
具体的なマップ画像特徴比較処理内容の一例を図1および図7~図8を用いて説明する。図7は、処理対象画像の画像特徴出現情報の内容の一例を示す説明図であり、図8は、画像特徴Aの画像特徴出現情報の内容の一例を示す説明図であり、図9は、画像特徴Bの画像特徴出現情報の内容の一例を示す説明図である。
図7において、位置姿勢推定をおこないたい車載動画像である、図1に示した処理対象画像100、すなわち、高架下道を走った車載映像のうち、図1に示した上空俯瞰図における『◎』120のGPS位置における画像の画像特徴出現情報700の内容を示している。画像特徴出現情報700において、符号701は、処理対象画像100上に画像特徴の出現分布をプロットしたものを示しており、符号702は、処理対象画像100の画像輝度や、画像特徴や、差分変化量のヒストグラムを示しており、符号703は、処理対象画像100の画像特徴の出現分布のみを抽出して示している。
また、図8において、高架下道路のマップ(画像特徴A)の画像特徴出現情報800は、図1において、処理対象画像100の撮影位置『◎』120から所定距離以内に、画像の撮影位置521を持つ3D環境マップA111のうち、最も撮影位置が近いGPS位置『○』121の画像特徴の画像特徴出現情報の内容を示している。図7の画像特徴出現情報700と同様に、符号801は、画像上に画像特徴の出現分布をプロットしたものを示しており、符号802は、当該画像の画像輝度や、画像特徴や、差分変化量のヒストグラムを示しており、符号803は、当該画像の画像特徴の出現分布のみを抽出して示している。
また、図9において、高架上道路のマップ(画像特徴B)の画像特徴出現情報900は、図1において、処理対象画像100の撮影位置『◎』120から所定距離以内に、画像の撮影位置521を持つ3D環境マップB112のうち、最も撮影位置が近いGPS位置『○』122の画像特徴の画像特徴出現情報の内容を示している。図7の画像特徴出現情報700、図8の画像特徴出現情報800と同様に、符号901は、画像上に画像特徴の出現分布をプロットしたものを示しており、符号902は、当該画像の画像輝度や、画像特徴や、差分変化量のヒストグラムを示しており、符号903は、当該画像の画像特徴の出現分布のみを抽出して示している。
このように、マップ画像特徴比較部213は、高架上の3D環境マップB112と、高架下の3D環境マップA111を選定し、それら2つのマップ内でも、最も撮影位置が近い作成画像情報502を特定する。そして、特定した2つのマップの作成画像情報502の「画像内の画像特徴出現情報」522と、すでに算出済の処理対象画像の「画像内の画像特徴出現情報」522相当の画像特徴出現情報を比較する。
マップ画像特徴比較部213は、図7~図9に示した、画像特徴出現情報である分布703、803、903やヒストグラム702、802、903を比較し、2つのマップ(3D環境マップA111と3D環境マップB112)のうち、より画像特徴出現情報522が似ている3D環境マップA111を選定する。すなわち、分布903の上部に画像特徴または差分変化量の出現が少ない3D環境マップB112よりも、分布803の上部に出現の多い3D環境マップA111の方が、分布703に類似する。
高架の上下を判断する場合に、より具体的には、上部に画像特徴や、画像特徴点の出現位置変化量である差分変化量の出現が少ないのは、空(そら)が開けて(上側が抜けて)いて目立つ画像特徴が少ないからであり、高架上道路であると推測できる。一方、上部に画像特徴の出現が多いのは、上側に高架道路が存在して人工物特有の画像特徴が多く出現するからであり、高架下道路であると推測できる。ただし、マップ画像特徴比較部213の処理においては、どちらの3D環境マップが類似するかがわかればよく、高架下道路であるか高架上道路であるかの判断までおこなう必要はない。
また、ヒストグラム902において左だけ多い3D環境マップB112よりも、ヒストグラム802において両側が多い3D環境マップA111の方が、ヒストグラム702に類似する。したがって、3D環境マップA111を選定する。
マップ画像特徴比較部213は、この結果、近似する実座標位置で類似する画像を持つ車載映像で作成したマップ、すなわち、ほぼ同じ場所で同じような風景を撮影している映像から作成したマップを選定することができ、3D環境マップA111、3D環境マップB112が高架上下道どちらのマップであるかや、位置姿勢対象の映像が高架上下道どちらを走行した映像であるかを知らなくても、「画像内の画像特徴出現情報」522の類似性から、走行環境が類似する3D環境マップA111を選定することができる。
このようにして、移動体203または当該移動体203の撮影装置(車載機202)の位置を含む複数の3D環境マップ222の画像情報の画像特徴と、当該移動体203または当該移動体203の撮影装置(車載機202)から取得した処理対象画像100の画像特徴との比較をおこない、比較の結果に基づいて、複数の環境マップ222の中から、移動体203または当該移動体203の撮影装置(車載機202)の位置姿勢の算出に用いる算出用環境マップを特定することができる。
この算出用環境マップは、撮影装置(車載機202)から取得した画像情報の画像特徴と類似する画像特徴にかかる画像特徴出現情報522を有する環境マップ222とすることができる。
また、図1に示したように、撮影装置(車載機202)から取得した画像情報の第1の撮影位置(120)と距離が近い第2の撮影位置(121、122)の画像情報を有する3D環境マップ111、112)を特定し、第1の撮影位置の画像情報の画像特徴と、特定した環境マップの前記第2の撮影位置の画像情報の画像特徴との比較をおこなうことができる。
また、撮影装置(車載機202)から取得した画像情報の画像特徴と、環境マップの画像特徴との類似度に基づいて、特定された算出用環境マップの利用優先度を算出することができる。
また、画像特徴は、たとえば、
(1)画像の画像特徴量と画像内位置のリスト、
(2)画像の画像特徴分布、
(3)画像の輝度分布、
(4)画像の画像特徴の画像内位置変化量と画像内位置のリスト、
(5)画像の各画素または画素ブロックの画像内位置変化量の分布、
の少なくとも一つを含むものであってもよい。
さらには、上記(2)画像の画像特徴分布、(3)画像の輝度分布、(5)画像の各画素または画素ブロックの画像内位置変化量の分布の各分布は、ヒストグラムであってもよい。
なお、マップ画像特徴比較部213での本選定を高速化するために、一般的なデータベースのクエリ高速化と同様に、3D環境マップDB210の作成画像情報502に関するインデックスを利用してもよい。一般的に、DB内で検索にかかわる要素を用いて検索専用の別テーブルを作成することで検索速度向上が図れることから、DBの一般的な既知のインデックス情報の作成手段を用いて、当該画像特徴出現情報522の一部や画像の撮影位置521を用いた検索用のインデックス情報をあらかじめ準備しておくようにしてもよい。インデックスは、たとえば、上述したように、マップ登録部212により作成することができる。これにより、マップ画像特徴比較部213における比較処理をより高速化することができる。
(マップ取得部214の内容)
マップ取得部214は、マップ画像特徴比較部213において選定された3D環境マップ222群に対して、実際に3D環境マップDB210からマップデータを特定し、取得する。なお、マップ画像特徴比較部213がマップデータの特定までおこない、マップ取得部214は、特定されたマップデータを取得するだけであってもよい。すなわち、マップデータの特定は、マップ画像特徴比較部213、マップ取得部214のどちらかおこなってもよい。
従来方法と異なり、緯度経度だけで選定した3D環境マップではなく、マップ画像特徴比較部213の画像特徴比較処理を通して同じ道路と思われる道路だけに絞り込んだ3D環境マップ222にデータ取得対象を限定しているため、従来方法よりも低コストで3D環境マップ222を取得することができる。
また、3D環境マップ222を複数取得する場合などでは、マップ画像特徴比較部213において算出した、画像特徴出現情報522の類似度から設定した優先度を取得したマップデータとともに保持するようにしてもよい。そして、位置姿勢推定部215においては、取得した優先度に基づいて算出することにより、より精度の高い位置姿勢の推定処理をおこなうことができる。
マップ取得部214は、具体的には、たとえば、図3に示したサーバ201において、メモリ302に記憶されたプログラムをCPU301が実行することによって、あるいは、ネットワークI/F303、記録媒体I/F304などによって、その機能を実現することができる。また、具体的には、たとえば、図4に示した車載機202において、メモリ402に記憶されたプログラムをCPU401が実行することによって、あるいは、無線通信装置403などによって、その機能を実現するようにしてもよい。
(位置姿勢推定部215の内容)
位置姿勢推定部215は、マップ取得部214によって取得された3D環境マップ222のデータと、位置姿勢推定対象である「車載動画像+GNSS情報」221bのデータを用いて、従来の方法、たとえばV-SLAMなどを用いて撮影位置姿勢を推定し、推定位置姿勢223を出力する。具体的には、選定取得した3D環境マップ222のデータを読み込んでメモリ展開し、同様に読み込んでメモリ展開した車載動画像から抽出した画像特徴の位置と比較して、SLAMなどによる計算方法を用いて位置姿勢を推定することができる。
この際、マップ画像特徴比較部213において、位置姿勢推定対象の車載映像の任意画像に対して、3D環境マップ222の3D画像特徴501と同じ画像特徴をすでに抽出して、当該情報を保持している場合には、保持している当該情報を流用するようにしてもよい。
各3D環境マップ222は、マップ画像特徴比較部213で決定した優先度を持っている。したがって、選定された3D環境マップ222が複数ある場合でも、どのマップを用いるかを検討する材料が無かった従来方法と異なり、優先度が高い順に位置姿勢推定処理を実行することによって、一度の位置姿勢推定処理の実施で位置姿勢推定対象の位置姿勢推定を完了できる可能性を高めることができる。
また、複数マップを優先順に位置姿勢推定して、位置姿勢推定が成功した場合に、他のマップによる位置姿勢をおこなわなくてもよい。あるいは、複数マップすべての位置姿勢推定結果を算出して、それらを比較して最終的な位置姿勢推定結果とするようにしてもよい。たとえば、各3D環境マップ222の位置姿勢推定結果を比較し、そのうちの1つのマップ、たとえば位置姿勢推定できた映像内の画像フレーム数が多いマップの結果を最終的な結果としてもよい。
また、同じ画像フレームでの複数マップでの位置姿勢推定結果を統計処理、たとえば平均化して最終的な結果とするようにしてもよい。これにより、より高精度で確実に位置姿勢推定処理を実行することができる。このとき、優先度を重みとして用いて、より優先度の高いマップの結果を重視反映させた統計処理をおこなうようにしてもよい。
選定した全3D環境マップ222群のループ処理として、マップ取得部214の処理と位置姿勢推定部215の処理をマップ1つずつに対して纏めて実行するようにしてもよい。これにより、3D環境マップ222の取得コストについても低コストに抑えることができる。
位置姿勢推定部214は、具体的には、たとえば、図3に示したサーバ201において、メモリ302に記憶されたプログラムをCPU301が実行することによって、その機能を実現することができる。また、具体的には、たとえば、図4に示した車載機202において、メモリ402に記憶されたプログラムをCPU401が実行することによって、その機能を実現するようにしてもよい。
(マップ画像特徴比較部213・マップ取得部214・位置姿勢推定部215の処理手順)
図10は、実施の形態1にかかるマップ画像特徴比較部、マップ取得部および位置姿勢推定部の処理の一例を示すフローチャートである。図10のフローチャートにおいて、撮影位置姿勢推定したい車載映像の任意画像とGNSS(GPS)情報を入力する(ステップS1001)。
つぎに、画像の撮影位置521がGPS位置から規定距離以内にある3D環境マップ222を3D環境マップDB210から探索する(ステップS1002)。そして、3D環境マップ222群は探索できたか否かを判断する(ステップS1003)。ここで、3D環境マップ222群が探索できなかった場合(ステップS1003:No)は、何もせずに、一連の処理を終了する。
一方、3D環境マップ222群が探索できた場合(ステップS1003:Yes)は、探索した3D環境マップ222群で最も画像の撮影位置521がGPS位置に近い作成画像情報502を探索する(ステップS1004)。そして、任意画像から、作成画像情報502と同じ画像特徴を算出する(ステップS1005)。
つぎに、各3D環境マップ222と、任意画像の画像特徴出現情報522を比較して、各3D環境マップ222と、任意画像の画像特徴出現情報522とのそれぞれの類似度を算出する。そして、最も類似度が大きい3D環境マップ222を選定する(ステップS1006)。ここまでの処理(ステップS1001~S1006の各処理)は、たとえば、マップ画像特徴比較部213によっておこなうことができる。
そして、選定された3D環境マップ222のDB情報(3D画像特徴点群など)を取得する(ステップS1007)。このステップS1007の処理は、たとえば、マップ取得部214によっておこなうことができる。
その後、取得したマップのDB情報(3D画像特徴点群など)を用いて、推定対象画像の位置姿勢推定処理を実行する(ステップS1008)。このステップS1008の処理は、たとえば、位置姿勢推定部215によっておこなうことができる。
以上説明したように、実施の形態1によれば、撮影位置姿勢推定したい車載データに関する3D環境マップを、類似する位置(緯度経度)の作成時画像内の画像特徴出現状況が類似する3D環境マップか否かで判定し、より類似するマップを優先度つきで特定することができるため、高架上道・下道などの、緯度経度だけでは判別ができない位置が類似する経路の3D環境マップを正しく選別することができる。これにより、無駄な3D環境マップのデータ取得コスト、位置姿勢推定実施コスト、および位置姿勢推定完了までの時間を削減し、位置姿勢推定をリアルタイムで実施することが可能となる。
実施の形態1では、あらかじめ各3D環境マップ222に、環境マップ作成時に利用した車載画像の画像特徴出現情報(画像のヒストグラムや分布など)522を対応づけて記憶しておくことで、位置姿勢推定対象の車両と同じ位置だが高さが様々な道路を走行している車載映像から作成した3D環境マップ222群の中から、対象車両で撮影した画像と類似する画像特徴出現情報を持つ3D環境マップを探索して、対象車両と同じ高さの道路を走行した車載画像による3D環境マップを特定することができる。
このため、高架上下道路などの緯度経度位置が等しい3D環境マップ222群のなかから正しいマップを特定するので、確実に位置姿勢推定ができ、探索した3D環境マップ222群による位置姿勢推定を試行錯誤して繰り返す必要がなくなる。特に、従来は誤って3D環境マップを持ってきてしまった経路が重なった道路についても、正しく車載映像の移動体が走行した道路のマップを探索できるので、間違ったマップでの位置姿勢推定をすることが無くなり、省コストかつリアルタイムに位置姿勢推定結果を得ることができるようになる。
なお、実施の形態1では、高架上下道以外に、GPSの緯度経度だけでは特定ミスが起きやすい(位置姿勢推定対象の車載映像とともに用いるGNSS情報のGPS誤差でどちらを走行しているのか混同しやすい)、すぐ隣を並走する道路どうし(高速道路の本線と高速道路出口へ向かう脇道、など)の3D環境マップ特定にも利用することができる。
(実施の形態2)
つぎに、実施の形態2について説明する。実施の形態1においては、位置姿勢推定部215は、位置姿勢推定処理をおこなうごとに、選定取得した3D環境マップ222を読み込んでメモリ展開して、SLAMなどによる計算方法で位置姿勢推定処理をおこなうという構成である。これに対して、実施の形態2では、図11に示すように、あらかじめメモリ展開済のマップ展開の3D環境マップ222を保管したマップ展開・位置姿勢推定サーバ1102(1102a、1102b、1102c、・・・)を用意することを特徴とする。
そもそも3D環境マップはそのデータ量が多いため、位置姿勢推定処理をおこなうたびに、3D環境マップを読み込み展開していたのでは、リアルタイムな位置姿勢推定処理を実行することが難しい。このため実施の形態2では、位置姿勢推定対象の車載データとGNSS情報が入力されるごとに、3D環境マップを特定して読み込み展開するのではなく、あらかじめ3D環境マップを展開するマップ展開・位置姿勢推定サーバ1102を用意する。
そして、3D環境マップを特定する際に、あらかじめ該当する3D環境マップを展開しているマップ展開・位置姿勢推定サーバ1102を特定して、当該マップ展開・位置姿勢推定サーバ1102を利用し、位置姿勢推定処理に必要な情報を取得する。これにより、3D環境マップを取得し、取得した後に当該3D環境マップを自サーバにおいて読み込み展開をするという処理をおこなうことなく、位置姿勢推定処理を実行することができる。このようにして、リアルタイムな位置姿勢推定を実現することができる。
図11は、実施の形態2にかかる位置姿勢算出方法を実現するシステム構成の一例を示す説明図である。また、図12は、実施の形態2にかかる3D環境マップの構成の一例を示す説明図である。図11において、実施の形態2にかかる位置姿勢算出方法を実現する移動体位置姿勢算出システム1100は、サーバ1101と、移動体203に搭載される車載機202とを備える。
なお、図11に示す実施の形態2にかかる位置姿勢算出方法を実現する移動体位置姿勢算出システム1100において、図2に示した実施の形態1にかかる位置姿勢算出方法を実現する移動体位置姿勢算出システム200と同じ構成部については同一の符号を付して、その詳細な説明を省略する。同様に、図12に示す実施の形態2にかかる3D環境マップ1122において、図5に示した3D環境マップ222と同じ構成部については同一の符号を付して、その詳細な説明を省略する。
マップ展開登録部1112は、環境マップ作成部211で作成した3D環境マップ222を、3D環境マップDB210に登録するとともに、任意の処理サーバ(マップ展開・位置姿勢推定サーバ1102(1102a~1102c))に読み込み展開させ、当該マップ展開・位置姿勢推定サーバ1102の情報(図12に示す展開サーバ情報1201)を3D環境マップDB210に保持させる。したがって、3D環境マップDB210に登録される3D環境マップ1122(1122a~1122c)は、図5に示した3D環境マップ222における3Dマップ要素501、作成画像情報502のほか、展開サーバ情報1201を含む。
なお、展開サーバ情報1201は、環境マップ1122の一部ではなく、環境マップ1122から参照できる別の情報およびDBに保持してもよい。すなわち、展開サーバ情報1201は、データを実装によっては、別データおよびDBに分割保持していてもよい。このように、展開サーバ情報1301は、当該環境マップがメモリ展開されている情報処理装置(マップ展開・位置姿勢推定サーバ1202)が容易に特定できるように保持されているとよい。
このようにして、複数の環境マップを、当該環境マップの任意の画像情報の撮影装置の位置姿勢の算出をおこなう他の情報処理装置であるマップ展開・位置姿勢推定サーバ1102にあらかじめメモリ展開しておくことができる。また、環境マップ1122に、当該環境マップがメモリ展開されている情報処理装置(マップ展開・位置姿勢推定サーバ1102)に関する「展開サーバ情報1201」を登録することができる。
マップ展開・位置姿勢推定サーバ1102(1102a~1102c)は、SLAMなどの位置姿勢推定処理をおこなう処理サーバである。マップ展開登録部1112において指定された任意の3D環境マップ222をあらかじめ読み込んでメモリ展開しておき、ストリームや任意の通信手段によって任意タイミングで処理したい車載データおよびGNSS情報を取得して、位置姿勢推定を計算して出力する。
この結果、よりリアルタイムな位置姿勢推定処理が可能となる。1つのマップ展開・位置姿勢推定サーバ1102において展開する3D環境マップ222の数は任意であるが、3D環境マップ222を複数、展開した方が、一度に展開した3D環境マップ222群すべてを使った位置姿勢推定ができる。したがって、特に複数のマップからなる経路を走行した車載データの位置姿勢推定をおこなう場合などに、処理時間をより短くできるという利点がある。
マップ画像特徴比較部1113は、実施の形態1におけるマップ画像特徴比較部213と同様に、位置姿勢推定の対象となる車載映像の任意画像から画像内の画像特徴出現情報522相当の情報を抽出して、当該任意画像と似た画像の撮影位置521を持つ3D環境マップ1122を探索する。さらに、探索した3D環境マップ1122で最も画像の撮影位置521が近い作成画像情報502の画像内の画像特徴出現情報522と任意画像の同相当情報を比較し、類似度を求める。
そして、その類似度の高さから3D環境マップ1122を特定する。さらに、3D環境マップ1122に含まれるマップ展開・位置姿勢推定サーバ1102に関する情報である展開サーバ情報1201から、特定した3D環境マップ1122を展開しているマップ展開・位置姿勢推定サーバ1102を特定する。
このようにして、複数の環境マップを、当該環境マップの任意の画像情報の撮影装置の位置姿勢の算出をおこなう他の情報処理装置であるマップ展開・位置姿勢推定サーバ1102にあらかじめメモリ展開しておき、特定したマップ展開・位置姿勢推定サーバ1102に関する情報である展開サーバ情報1201を含めて、3D環境マップ1122(1122a~1122c)とすることで、特定された算出用環境マップがメモリ展開されているマップ展開・位置姿勢推定サーバ1102を特定することができる。
位置姿勢推定部1114は、特定されたマップ展開・位置姿勢推定サーバ1102に対して、位置姿勢推定対象の車載動画像およびGNSS情報を投入して位置姿勢を算出し、推定位置姿勢224を出力する。このようにして、特定されたマップ展開・位置姿勢推定サーバ1102によって算出された位置姿勢結果を取得することができる。
(環境マップ作成部211・マップ展開登録部1112の処理手順)
図13は、実施の形態2にかかる環境マップ作成部およびマップ展開登録部の処理の一例を示すフローチャートである。図13のフローチャートにおいて、ステップS1301~ステップS1308の各処理は、図6のフローチャートにおけるステップS601~ステップS608の各処理と同じ内容である。すなわち、ステップS1301~ステップS1308の処理は、環境マップ作成部211によっておこなうことができる。
ステップS1308に引き続き、3D環境マップ222(3D画像特徴501)をマップ展開・位置姿勢推定サーバ1102に展開する(ステップS1309)。そして、3D画像特徴501、間引き画像の作成画像情報502(撮影位置521、画像特徴出現情報522)、展開サーバ情報1201を3D環境マップ1122として、3D環境マップDB210に登録する(ステップS1310)。これにより、一連の処理を終了する。このステップS1309、S1310の各処理は、たとえば、マップ展開登録部1112によっておこなうことができる。
(マップ画像特徴比較部・位置姿勢推定部の処理手順)
図14は、実施の形態2にかかるマップ画像特徴比較部および位置姿勢推定部の処理の一例を示すフローチャートである。図14のフローチャートにおいて、ステップS1401~ステップS1406の各処理は、図10のフローチャートにおけるステップS1001~ステップS1006の各処理と同じ内容である。すなわち、ステップS1401~ステップS1406の処理は、マップ画像特徴比較部1113によっておこなうことができる。
ステップS1406に引き続き、マップ画像特徴比較部1113は、選定された3D環境マップ1122のDB情報として、マップ展開・位置姿勢推定サーバ1102の情報である展開サーバ情報1201を取得する(ステップS1407)。
その後、対象車載映像(動画像)・GNSS情報をマップ展開・位置姿勢推定サーバ1102に入力する(ステップS1408)。そして、マップ展開・位置姿勢推定サーバ1102から位置姿勢推定結果を取得する(ステップS1409)。これにより、一連の処理を終了する。このステップS1408、S1409の各処理は、たとえば、位置姿勢推定部1114によっておこなうことができる。
なお、実施の形態1と実施の形態2を混合したシステムとすることもできる。すなわち、位置姿勢推定の要望が多い、または、よりリアルタイムな位置姿勢推定の要望のある道路に関する3D環境マップなどの一部の3D環境マップだけを、実施の形態2に示すように、マップ展開・位置姿勢推定サーバ1102に展開して、位置姿勢推定処理を実行する。一方、それら以外の道路、位置姿勢推定の要望が少ない、または、よりリアルタイムな位置姿勢推定の要望がない道路では、実施の形態1に示すように、位置姿勢推定の要望がくるたびに随時マップを展開して位置姿勢推定処理を実施するようにしてもよい。
たとえば、多数の車両が走行する幹線道路などの重要な道路だけ、マップ展開・位置姿勢推定サーバ1102に展開することで、サーバコストをできるだけ抑えつつ、かつ、できるだけ多くの位置姿勢推定の要求をリアルタイムに実現するシステムとすることができる。
以上説明したように、実施の形態2によれば、あらかじめマップ展開登録部1112において、マップ展開・位置姿勢推定サーバ1102にマップの読み込み展開を実施しておく。そして、位置姿勢推定処理をおこなうタイミングでは、マップの読み込み展開を不要とする。これにより、SLAMなどにおいて処理のボトルネックとなる読み込み展開時間を削減することができる。したがって、より高速かつリアルタイムな位置姿勢推定を実現することができるようになる。
なお、本実施の形態で説明した位置姿勢算出方法は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。プログラム配信プログラムは、ハードディスク、フレキシブルディスク、CD(Compact Disc)-ROM、MO(Magneto-Optical Disk)、DVD(Digital Versatile Disk)、USB(Universal Serial Bus)メモリなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、位置姿勢算出プログラムは、インターネットなどのネットワークを介して配布してもよい。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)情報処理装置が、
複数の環境マップに含まれる画像情報の画像特徴と、移動体または当該移動体の撮影装置から取得した画像情報の画像特徴との比較をおこない、
前記比較の結果に基づいて、前記複数の環境マップの中から、前記移動体または当該移動体の撮影装置の位置姿勢の算出に用いる算出用環境マップを特定する、
ことを特徴とする位置姿勢算出方法。
(付記2)前記情報処理装置が、
前記撮影装置から取得した画像情報の第1の撮影位置と距離が近い第2の撮影位置の画像情報を有する環境マップを特定し、
前記第1の撮影位置の画像情報の画像特徴と、特定した環境マップの前記第2の撮影位置の画像情報の画像特徴との比較をおこなう、
ことを特徴とする付記1に記載の位置姿勢算出方法。
(付記3)前記情報処理装置が、
前記撮影装置から取得した画像情報の画像特徴と、前記環境マップの画像特徴との類似度に基づいて、特定された前記算出用環境マップの利用優先度を算出する、
ことを特徴とする付記1または2に記載の位置姿勢算出方法。
(付記4)前記画像特徴は、
画像の画像特徴量と画像内位置のリスト、
画像の画像特徴分布またはヒストグラム、
画像の輝度分布またはヒストグラム、
画像の画像特徴の画像内位置変化量と画像内位置のリスト、および
画像の各画素または画素ブロックの画像内位置変化量の分布またはヒストグラム、
の少なくとも一つを含む、
ことを特徴とする付記1~3のいずれか一つに記載の位置姿勢算出方法。
(付記5)前記情報処理装置が、
前記複数の環境マップを、当該環境マップの任意の画像情報の撮影装置の位置姿勢の算出をおこなう他の情報処理装置にあらかじめメモリ展開しておき、
特定された前記算出用環境マップがメモリ展開されている情報処理装置を特定する、
ことを特徴とする付記1~4のいずれか一つに記載の位置姿勢算出方法。
(付記6)前記情報処理装置が、
前記環境マップに、当該環境マップがメモリ展開されている情報処理装置に関する情報を登録する、
ことを特徴とする付記5に記載の位置姿勢算出方法。
(付記7)前記情報処理装置が、
特定された情報処理装置によって算出された位置姿勢結果を取得する、
ことを特徴とする付記5または6に記載の位置姿勢算出方法。
(付記8)前記環境マップの画像特徴出現情報に対して、検索用のインデックスを作成し、
前記インデックスを用いて、複数の環境マップを探索することを特徴とする付記1~7のいずれか一つに記載の位置姿勢算出方法。
(付記9)複数の環境マップに含まれる画像情報の画像特徴と、移動体または当該移動体の撮影装置から取得した画像情報の画像特徴との比較をおこない、
前記比較の結果に基づいて、前記複数の環境マップの中から、前記移動体または当該移動体の撮影装置の位置姿勢の算出に用いる算出用環境マップを特定する処理を情報処理装置に実行させる、
ことを特徴とする位置姿勢算出プログラム。
100、701 処理対象画像
101 高架下道路
102 高架上道路
110、210 3D環境マップDB
111、112、222(222a~222c)、1122(1122a~1122c)) 3D環境マップ
200、1100 移動体位置姿勢算出システム
201、1101 サーバ
202 車載機
203 移動体
204 ネットワーク
205 衛星
211 環境マップ作成部
212 マップ登録部
213、1113 マップ画像特徴比較部
214 マップ取得部
215、1114 位置姿勢推定部
221(221a、221b) 車載動画像+GNSS情報
223 推定位置姿勢
501 3Dマップ要素(3D画像特徴)
502 作成画像情報
521 (画像の)撮影位置
522、700、800、900 (画像内の)画像特徴出現情報
702、802、902 ヒストグラム
703、803、903 画像特徴分布
1102(1102a~1102c) マップ展開・位置姿勢推定サーバ
1112 マップ展開登録部
1201 展開サーバ情報

Claims (8)

  1. 情報処理装置が、
    複数の環境マップに含まれる画像情報の画像特徴と、移動体または当該移動体の撮影装置から取得した画像情報の画像特徴との比較をおこない、
    前記比較の結果に基づいて、前記複数の環境マップの中から、前記移動体または当該移動体の撮影装置の位置姿勢の算出に用いる算出用環境マップを特定する、
    ことを特徴とする位置姿勢算出方法。
  2. 前記情報処理装置が、
    前記撮影装置から取得した画像情報の第1の撮影位置と距離が近い第2の撮影位置の画像情報を有する環境マップを特定し、
    前記第1の撮影位置の画像情報の画像特徴と、特定した環境マップの前記第2の撮影位置の画像情報の画像特徴との比較をおこなう、
    ことを特徴とする請求項1に記載の位置姿勢算出方法。
  3. 前記情報処理装置が、
    前記撮影装置から取得した画像情報の画像特徴と、前記環境マップの画像特徴との類似度に基づいて、特定された前記算出用環境マップの利用優先度を算出する、
    ことを特徴とする請求項1または2に記載の位置姿勢算出方法。
  4. 前記画像特徴は、
    画像の画像特徴量と画像内位置のリスト、
    画像の画像特徴分布またはヒストグラム、
    画像の輝度分布またはヒストグラム、
    画像の画像特徴の画像内位置変化量と画像内位置のリスト、および
    画像の各画素または画素ブロックの画像内位置変化量の分布またはヒストグラム、
    の少なくとも一つを含む、
    ことを特徴とする請求項1~3のいずれか一つに記載の位置姿勢算出方法。
  5. 前記情報処理装置が、
    前記複数の環境マップを、当該環境マップの任意の画像情報の撮影装置の位置姿勢の算出をおこなう他の情報処理装置にあらかじめメモリ展開しておき、
    特定された前記算出用環境マップがメモリ展開されている情報処理装置を特定する、
    ことを特徴とする請求項1~4のいずれか一つに記載の位置姿勢算出方法。
  6. 前記情報処理装置が、
    前記環境マップに、当該環境マップがメモリ展開されている情報処理装置に関する情報を登録する、
    ことを特徴とする請求項5に記載の位置姿勢算出方法。
  7. 前記情報処理装置が、
    特定された情報処理装置によって算出された位置姿勢結果を取得する、
    ことを特徴とする請求項5または6に記載の位置姿勢算出方法。
  8. 複数の環境マップに含まれる画像情報の画像特徴と、移動体または当該移動体の撮影装置から取得した画像情報の画像特徴との比較をおこない、
    前記比較の結果に基づいて、前記複数の環境マップの中から、前記移動体または当該移動体の撮影装置の位置姿勢の算出に用いる算出用環境マップを特定する処理を情報処理装置に実行させる、
    ことを特徴とする位置姿勢算出プログラム。
JP2020144087A 2020-08-28 2020-08-28 位置姿勢算出方法および位置姿勢算出プログラム Withdrawn JP2022039187A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020144087A JP2022039187A (ja) 2020-08-28 2020-08-28 位置姿勢算出方法および位置姿勢算出プログラム
US17/329,365 US20220067964A1 (en) 2020-08-28 2021-05-25 Position and orientation calculation method, non-transitory computer-readable storage medium and information processing apparatus
EP21177097.9A EP3961156A1 (en) 2020-08-28 2021-06-01 Position and orientation calculation method, position and orientation calculation program, and information processing apparatus

Applications Claiming Priority (1)

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

Publications (1)

Publication Number Publication Date
JP2022039187A true JP2022039187A (ja) 2022-03-10

Family

ID=76269573

Family Applications (1)

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

Country Status (3)

Country Link
US (1) US20220067964A1 (ja)
EP (1) EP3961156A1 (ja)
JP (1) JP2022039187A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024018726A1 (ja) * 2022-07-21 2024-01-25 株式会社アーバンエックステクノロジーズ プログラム、方法、システム、道路マップ、および道路マップの作成方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022132882A (ja) * 2021-03-01 2022-09-13 キヤノン株式会社 ナビゲーションシステム、ナビゲーション方法およびプログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5500388B2 (ja) * 2011-02-16 2014-05-21 アイシン・エィ・ダブリュ株式会社 撮影位置特定システム、撮影位置特定プログラム、及び撮影位置特定方法
JP2018028489A (ja) * 2016-08-18 2018-02-22 トヨタ自動車株式会社 位置推定装置、位置推定方法
US10739142B2 (en) * 2016-09-02 2020-08-11 Apple Inc. System for determining position both indoor and outdoor
WO2018098811A1 (zh) * 2016-12-02 2018-06-07 深圳前海达闼云端智能科技有限公司 定位方法和装置
CN111201420A (zh) * 2017-10-10 2020-05-26 索尼公司 信息处理装置、自身位置推定方法、程序和移动体
JP7326720B2 (ja) 2018-10-26 2023-08-16 富士通株式会社 移動体位置推定システムおよび移動体位置推定方法
JP7338369B2 (ja) * 2019-09-27 2023-09-05 富士通株式会社 環境地図調整値算出方法および環境地図調整値算出プログラム
CN115398314A (zh) * 2020-02-13 2022-11-25 奇跃公司 使用多分辨率帧描述符进行地图处理的交叉现实系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024018726A1 (ja) * 2022-07-21 2024-01-25 株式会社アーバンエックステクノロジーズ プログラム、方法、システム、道路マップ、および道路マップの作成方法

Also Published As

Publication number Publication date
EP3961156A1 (en) 2022-03-02
US20220067964A1 (en) 2022-03-03

Similar Documents

Publication Publication Date Title
JP7326720B2 (ja) 移動体位置推定システムおよび移動体位置推定方法
CN113034960B (zh) 用于更新精密路线地图的对象变化检测系统及其方法
US11474247B2 (en) Methods and systems for color point cloud generation
CN107194989B (zh) 基于无人机飞机航拍的交通事故现场三维重建系统及方法
CN110648389A (zh) 基于无人机和边缘车辆协同的城市街景3d重建方法和系统
WO2018229549A2 (en) System and method for digital environment reconstruction
JP7468254B2 (ja) 位置姿勢算出方法および位置姿勢算出プログラム
US7860269B2 (en) Auxilliary navigation system for use in urban areas
JP7259454B2 (ja) 移動体位置推定システムおよび移動体位置推定方法
CN113593017A (zh) 露天矿地表三维模型构建方法、装置、设备及存储介质
KR102308456B1 (ko) 라이다 및 카메라 수집정보 기반 수종탐지 시스템 및 이를 이용한 수종탐지방법, 수종탐지방법을 수행하는 프로그램이 수록된 기록매체
EP3961156A1 (en) Position and orientation calculation method, position and orientation calculation program, and information processing apparatus
CN117576652B (zh) 道路对象的识别方法、装置和存储介质及电子设备
CN112991487A (zh) 一种多线程实时构建正射影像语义地图的系统
CN113593022A (zh) 一种用于矿山无人驾驶场景的高精地图制作方法
CN116097128A (zh) 用于对车辆位置进行确定的方法和设备
CN115409910A (zh) 一种语义地图构建方法、视觉定位方法及相关设备
JP2012159373A (ja) データ管理システム、データ管理方法、及びデータ管理プログラム
US11461944B2 (en) Region clipping method and recording medium storing region clipping program
CN114419180A (zh) 重构高精地图的方法、装置和电子设备
CN113781639A (zh) 一种大场景道路基础设施数字化模型快速构建方法
KR102581962B1 (ko) 영역별로 감지 이벤트를 독립적으로 설정 가능한 실시간 정밀 도로지도 갱신 시스템
KR102660425B1 (ko) 블랙박스 영상 합성 기반 3차원 객체 정보 획득 서버 및 방법
JP7211513B2 (ja) 地図データ生成装置
JP7094432B1 (ja) 情報処理システム、情報処理装置、プログラム、及び情報処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230511

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20240129