JPWO2012176249A1 - Self-position estimation device, self-position estimation method, self-position estimation program, and moving object - Google Patents

Self-position estimation device, self-position estimation method, self-position estimation program, and moving object Download PDF

Info

Publication number
JPWO2012176249A1
JPWO2012176249A1 JP2013521307A JP2013521307A JPWO2012176249A1 JP WO2012176249 A1 JPWO2012176249 A1 JP WO2012176249A1 JP 2013521307 A JP2013521307 A JP 2013521307A JP 2013521307 A JP2013521307 A JP 2013521307A JP WO2012176249 A1 JPWO2012176249 A1 JP WO2012176249A1
Authority
JP
Japan
Prior art keywords
position information
self
movement amount
coincidence
time
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.)
Granted
Application number
JP2013521307A
Other languages
Japanese (ja)
Other versions
JP5892663B2 (en
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.)
Nara Institute of Science and Technology NUC
Original Assignee
Nara Institute of Science and Technology NUC
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 Nara Institute of Science and Technology NUC filed Critical Nara Institute of Science and Technology NUC
Priority to JP2013521307A priority Critical patent/JP5892663B2/en
Publication of JPWO2012176249A1 publication Critical patent/JPWO2012176249A1/en
Application granted granted Critical
Publication of JP5892663B2 publication Critical patent/JP5892663B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0272Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising means for registering the travel distance, e.g. revolutions of wheels
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Automation & Control Theory (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Optics & Photonics (AREA)
  • Electromagnetism (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Navigation (AREA)
  • Optical Radar Systems And Details Thereof (AREA)

Abstract

一致度算出部12は、位置情報取得部11により時刻tで取得された位置情報を、時刻t−1で取得された位置情報に対して平行移動及び回転移動させたときの両位置情報の一致度を算出する。推定部13は、時刻tの位置情報の平行移動量T及び回転移動量Rを変更させて、一致度を最大にする平行移動量T及び回転移動量Rを探索し、自己位置を推定する。そして、一致度算出部12は、時刻tの位置情報のある計測点が時刻t−1の位置情報のある計測点を中心として距離ε以内に存在した場合、一致度に所定ポイント付与する。  The degree of coincidence calculation unit 12 matches the position information obtained when the position information acquired by the position information acquisition unit 11 at the time t is translated and rotated with respect to the position information acquired at the time t-1. Calculate the degree. The estimation unit 13 changes the parallel movement amount T and the rotational movement amount R of the position information at time t, searches for the parallel movement amount T and the rotational movement amount R that maximize the degree of coincidence, and estimates its own position. Then, the coincidence calculation unit 12 gives a predetermined point to the coincidence when a measurement point with position information at time t exists within a distance ε centering on a measurement point with position information at time t−1.

Description

本発明は、移動体の自己位置を推定する技術に関し、特に、未知環境下で動作する移動体の自己位置を推定する技術に関するものである。   The present invention relates to a technique for estimating the self-position of a mobile object, and more particularly to a technique for estimating the self-position of a mobile object that operates in an unknown environment.

未知環境内をロボットが移動するためには、環境を計算機上にモデリングする必要がある。未知環境をモデリングする手法として、Simultaneous Localization and Mapping(SLAM)が知られている(例えば、非特許文献1)。これは、未知環境下での相対的自己位置推定と地図生成を同時に行うことによって環境のモデリングを行う。SLAMでは周囲の環境は静的であるという仮定に基づくものが多く、動的環境下では、マッチング誤差が発生してしまうという問題があった。   In order for a robot to move in an unknown environment, it is necessary to model the environment on a computer. As a technique for modeling an unknown environment, simultaneous localization and mapping (SLAM) is known (for example, Non-Patent Document 1). It models the environment by simultaneously performing relative self-location estimation and map generation in an unknown environment. Many SLAMs are based on the assumption that the surrounding environment is static, and there is a problem that a matching error occurs in a dynamic environment.

そのため、作業領域を人と共有するような実環境下でロボットを運用する場合、人の往来など動的な環境変化に対応する必要がある。動的環境下で利用可能なSLAMとして、外れ値を考慮したランドマークに基づくアプローチが提案されている(例えば、非特許文献2)。   Therefore, when operating a robot in an actual environment where the work area is shared with people, it is necessary to cope with dynamic environmental changes such as traffic of people. As a SLAM that can be used in a dynamic environment, a landmark-based approach that considers outliers has been proposed (for example, Non-Patent Document 2).

しかしながら、非特許文献2の手法には十分な数のランドマークが観察される必要性や、動的障害物による隠れの問題がある。   However, the method of Non-Patent Document 2 has a need to observe a sufficient number of landmarks and a problem of hiding due to a dynamic obstacle.

また、センシング対象の形状(非特許文献3)や、フレーム間の最近傍点距離(非特許文献4)によって、静止物体と移動物体とを区別し、マッチングを行う手法も提案されている。   In addition, a method is also proposed in which a stationary object and a moving object are distinguished and matched based on the shape of a sensing target (Non-Patent Document 3) and the nearest point distance between frames (Non-Patent Document 4).

しかしながら、非特許文献3、4の手法は、測定精度が移動物体かどうかを判定する判別器の性能に強く依存するという問題がある。   However, the methods of Non-Patent Documents 3 and 4 have a problem that the measurement accuracy strongly depends on the performance of the discriminator that determines whether the measurement accuracy is a moving object.

また、レーザレンジファインダで計測される2次元の位置情報のように、複数の計測点により構成された位置情報同士のマッチングを行う手法として、L2ノルムを最小化する手法であるIterative Closest Point(ICP)も知られている(非特許文献5)。   Also, as a technique for matching position information composed of a plurality of measurement points, such as two-dimensional position information measured by a laser range finder, iterative closest point (ICP) is a technique for minimizing the L2 norm. ) Is also known (Non-patent Document 5).

図23は、ICPを用いた場合のマッチングの誤差を示した図である。図23においては、ロボットの移動面を示す2次元の座標空間に、ロボットに搭載された位置センサにより計測された計測点と、移動体の周囲に存在する物体の実際の位置とが重ね合わせてプロットされている。そして、図23の円の点線で囲んだ領域に計測点と実際の位置との誤差が生じている。   FIG. 23 is a diagram showing matching errors when using ICP. In FIG. 23, a measurement point measured by a position sensor mounted on the robot and an actual position of an object existing around the moving body are superimposed on a two-dimensional coordinate space indicating the moving surface of the robot. It is plotted. Then, an error between the measurement point and the actual position occurs in the area surrounded by the dotted line of the circle in FIG.

このように、非特許文献5に示す手法では、図23に示すように、動的な環境下において多くのマッチング誤差が発生してしまう。   Thus, in the method shown in Non-Patent Document 5, many matching errors occur in a dynamic environment as shown in FIG.

S.Thrunet al. : “Simultaneous Mapping and Localization with Sparse ExtendedInformation Filters: Theory and Initial Results”, Algorithmic Foundations ofRobotics V, Vol.7, pp.363-380, 2003.S. Thrunet al .: “Simultaneous Mapping and Localization with Sparse Extended Information Filters: Theory and Initial Results”, Algorithmic Foundations of Robotics V, Vol.7, pp.363-380, 2003. Denis F Wolf, Gaurav s Sukhatme : “Mobile Robot Simultaneous Localization and Mapping inDynamic Environments”Denis F Wolf, Gaurav s Sukhatme: “Mobile Robot Simultaneous Localization and Mapping in Dynamic Environments” A. Ess, B. Leibe, K. Schindler, L. vanGool : “Moving ObstacleDetection in Highly Dynamic Scenes”, ICRA09, 2009.A. Ess, B. Leibe, K. Schindler, L. vanGool: “Moving Obstacle Detection in Highly Dynamic Scenes”, ICRA09, 2009. 識名拓, 油田信一: “多く通行人がいる廊下環境での移動ロボットによる地図作成”, ROBOMEC2010,1A2-D29, June 14-16, 2010.Taku Shikina, Shinichi Yuta: “Making a map with a mobile robot in a corridor with many passersby”, ROBOMEC2010, 1A2-D29, June 14-16, 2010. Sebastian Thrun , Wolfram Burgard , Dieter Fox : “Probabilistic robotics”, The MIT Press,2005.Sebastian Thrun, Wolfram Burgard, Dieter Fox: “Probabilistic robotics”, The MIT Press, 2005.

本発明の目的は、移動物体が存在する未知環境下において移動体の自己位置を精度良く推定することができる技術を提供することである。   The objective of this invention is providing the technique which can estimate the self-position of a moving body accurately in the unknown environment where a moving object exists.

本発明の一局面による自己位置推定装置は、移動体の自己位置を推定する自己位置推定装置であって、前記移動体の周辺空間に存在する各物体の位置情報を時系列に取得する位置情報取得部と、前記位置情報取得部により第1時刻で取得された第1位置情報を、前記第1時刻と時系列的に前又は後の時刻である第2時刻で取得された第2位置情報に対して平行移動及び回転移動させたときの前記第1位置情報と前記第2位置情報との一致度を算出する一致度算出部と、前記第1位置情報の平行移動量及び回転移動量を変更させて、前記一致度を最大にする前記平行移動量及び前記回転移動量を探索し、前記自己位置を推定する推定部とを備え、前記一致度算出部は、前記第1位置情報を構成するある計測点に対し、一定距離内に前記第2位置情報を構成するある計測点が存在すれば、前記一致度に所定のポイントを付与し、付与したポイントの合計値を前記一致度として算出する。   A self-position estimation apparatus according to an aspect of the present invention is a self-position estimation apparatus that estimates a self-position of a moving body, and is position information that acquires position information of each object existing in a surrounding space of the moving body in time series The second position information acquired at the second time which is the time before or after the first time, the first position information acquired at the first time by the acquisition unit and the position information acquisition unit. A degree of coincidence calculation unit for calculating a degree of coincidence between the first position information and the second position information when the first position information and the second position information are translated, and a parallel movement amount and a rotation movement amount of the first position information. And an estimation unit that searches the parallel movement amount and the rotational movement amount to maximize the degree of coincidence and estimates the self position, and the coincidence degree calculation unit configures the first position information The second position within a certain distance with respect to a certain measurement point If there is measurement points constituting the broadcast, the coincidence degree in imparting a predetermined point, and calculates the total value of the grant and the point as the matching degree.

また、本発明の別の一局面による移動体は、上記の自己位置推定装置と、前記位置情報を取得する位置センサとを備えている。また、本発明の更に別の一局面による自己位置推定方法及び自己位置推定プログラムは上記の自己位置推定装置と同じ特徴を備えている。   A mobile object according to another aspect of the present invention includes the above-described self-position estimation device and a position sensor that acquires the position information. A self-position estimation method and a self-position estimation program according to still another aspect of the present invention have the same features as the above self-position estimation apparatus.

本発明の実施の形態による自己位置推定装置が適用された移動体のブロック図である。It is a block diagram of the mobile body to which the self-position estimation apparatus by embodiment of this invention was applied. 本発明の実施の形態による自己位置推定装置の動作を示すフローチャートである。It is a flowchart which shows operation | movement of the self-position estimation apparatus by embodiment of this invention. 図2のS2に示す探索処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the search process shown to S2 of FIG. 評価値の算出処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the calculation process of an evaluation value. (A)は評価値の算出手法を説明する概念図である。(B)は第1位置情報を構成する計測点a〜aが回転移動される様子を示している。(A) is a conceptual diagram explaining the calculation method of an evaluation value. (B) shows how the measurement points a 1 to a 3 constituting the first position information are rotationally moved. 評価値としてL2ノルムを採用した場合において、動的環境下で時刻t−1の位置情報と時刻tの位置情報とにおいてマッチング誤差が生じる理由を示した図である。When L2 norm is employ | adopted as an evaluation value, it is the figure which showed the reason a matching error arises in the positional information of the time t-1 and the positional information of the time t in a dynamic environment. (A)はSICKのLSM100の外観図である。(B)は本発明の実施の形態による移動体の外観図である。(A) is an external view of SICK LSM100. (B) is an external view of the mobile body by embodiment of this invention. 位置センサの仕様を示した表である。It is the table | surface which showed the specification of the position sensor. 探索候補が生成される処理を説明する図である。It is a figure explaining the process in which a search candidate is produced | generated. ハッシュテーブルを示した概念図である。It is the conceptual diagram which showed the hash table. (A)は実験場所を示した図であり、(B)はこの実験場所に人物が行き来する動的環境を示した図である。(A) is a diagram showing an experiment place, and (B) is a diagram showing a dynamic environment in which a person moves to and from this experiment place. 実験場所に人物が行き来していない静的環境下で生成した周辺空間の2次元マップを示している。A two-dimensional map of the surrounding space generated in a static environment in which no person goes to and from the experimental place is shown. 評価値として、L2ノルム、M−estimator、及びL0ノルムを用いた場合の実験結果を示した表である。It is the table | surface which showed the experimental result at the time of using L2 norm, M-estimator, and L0 norm as an evaluation value. L2ノルムを採用した場合に作成した2次元マップである。It is a two-dimensional map created when the L2 norm is adopted. M−estimatorを採用した場合に作成した2次元マップである。It is a two-dimensional map created when M-estimator is adopted. L0ノルムを採用した場合に作成した2次元マップである。It is a two-dimensional map created when the L0 norm is adopted. Brute−force、kd−tree、LSHを用いて計算時間を比較する実験を行った場合の実験結果をまとめた表である。It is the table | surface which put together the experimental result at the time of conducting the experiment which compares calculation time using Brute-force, kd-tree, and LSH. 静的環境下でRBPF−SLAMを用いて生成した2次元マップである。It is the two-dimensional map produced | generated using RBPF-SLAM in a static environment. 動的環境下で移動体を移動させながら計測した位置情報を利用し、L0ノルムを用いた評価値Eで位置情報同士のマッチングを行って生成した2次元マップである。It is a two-dimensional map generated by matching position information with an evaluation value E using an L0 norm using position information measured while moving a moving body in a dynamic environment. L2ノルムを用いた評価値で位置情報同士のマッチングを行って生成した2次元マップである。It is the two-dimensional map produced | generated by matching position information with the evaluation value using L2 norm. RBPF−SLAMを用いて生成した2次元マップである。It is the two-dimensional map produced | generated using RBPF-SLAM. 本実施の形態による自己位置推定装置を用いて生成された2次元マップである。It is the two-dimensional map produced | generated using the self-position estimation apparatus by this Embodiment. ICPを用いた場合のマッチングの誤差を示した図である。It is the figure which showed the error of the matching at the time of using ICP.

以下、本発明の実施の形態による自己位置推定装置について説明する。図1は、本発明の実施の形態による自己位置推定装置が適用された移動体のブロック図である。自己位置推定装置は、位置情報取得部11、一致度算出部12、推定部13、マップ生成部14、及びオドメトリ算出部15を備えている。そして、自己位置推定装置は、位置センサ16により取得された位置情報に基づき、移動体の自己位置を推定する。移動体は、自己位置推定装置、位置センサ16、及び回転量センサ17を備えている。   Hereinafter, a self-position estimation apparatus according to an embodiment of the present invention will be described. FIG. 1 is a block diagram of a moving body to which a self-position estimation apparatus according to an embodiment of the present invention is applied. The self-position estimation apparatus includes a position information acquisition unit 11, a coincidence calculation unit 12, an estimation unit 13, a map generation unit 14, and an odometry calculation unit 15. Then, the self-position estimation device estimates the self-position of the moving body based on the position information acquired by the position sensor 16. The moving body includes a self-position estimation device, a position sensor 16, and a rotation amount sensor 17.

本実施の形態では、自己位置推定装置は例えばCPU、ROM、RAM、及びハードディスク等を備えるコンピュータにより構成されている。そして、位置情報取得部11、一致度算出部12、推定部13、マップ生成部14、及びオドメトリ算出部15は、ハードディスクに格納された自己位置推定プログラムを例えばCPUが実行することで実現される。なお、自己位置推定プログラムは、DVD−ROM等のコンピュータ読み取り可能な記録媒体に記録されてユーザに提供される。ユーザはこの記録媒体をコンピュータにインストールすることで、コンピュータを自己位置推定装置として機能させる。   In the present embodiment, the self-position estimation device is configured by a computer including a CPU, a ROM, a RAM, a hard disk, and the like, for example. The position information acquisition unit 11, the matching degree calculation unit 12, the estimation unit 13, the map generation unit 14, and the odometry calculation unit 15 are realized by, for example, the CPU executing a self-position estimation program stored in the hard disk. . The self-position estimation program is recorded on a computer-readable recording medium such as a DVD-ROM and provided to the user. The user installs this recording medium in the computer, thereby causing the computer to function as a self-position estimation device.

位置情報取得部11は、位置センサ16により計測された移動体の周辺空間に存在する各物体の位置情報を一定の周期で時系列に取得する。ここで、位置情報は、物体が存在する箇所を示す計測点から構成されている。本実施の形態では、位置センサ16として、レーザレンジファインダが採用されている。そのため、計測点は、位置センサ16の位置を原点とし、位置センサ16の正面方向を基準方向とする2次元のローカル座標空間において、その基準方向からの角度と、原点からの距離とを含む2次元の極座標データにより表される。以下の説明では、ローカル座標空間は、基準方向にy軸が設定され、原点を通り、かつ、基準方向に直交する方向にx軸が設定されているものとする。   The position information acquisition unit 11 acquires the position information of each object existing in the space around the moving body measured by the position sensor 16 in a time series at a constant cycle. Here, the position information is composed of measurement points indicating locations where objects exist. In the present embodiment, a laser range finder is employed as the position sensor 16. Therefore, the measurement points include an angle from the reference direction and a distance from the origin in a two-dimensional local coordinate space in which the position of the position sensor 16 is the origin and the front direction of the position sensor 16 is the reference direction. Represented by dimensional polar coordinate data. In the following description, in the local coordinate space, it is assumed that the y axis is set in the reference direction, the x axis is set in a direction that passes through the origin and is orthogonal to the reference direction.

一致度算出部12は、位置情報取得部11により第1時刻で取得された第1位置情報を、第1時刻と時系列的に前又は後の時刻である第2時刻で取得された第2位置情報に対して平行移動及び回転移動させたときの第1位置情報と第2位置情報との一致度を算出する。本実施の形態では、第1時刻を時刻tとし、第2時刻を時刻t−1として説明するが、これに限定されず、第1時刻を時刻t−1とし、第2時刻を時刻tとしてもよい。また、時刻tとは、位置センサが時系列に取得する位置情報の取得タイミングを示す。また、必要に応じて、位置情報の取得タイミングをフレームと記述する。   The degree-of-match calculation unit 12 acquires the first position information acquired at the first time by the position information acquisition unit 11 at the second time acquired at the second time which is the time before or after the first time. The degree of coincidence between the first position information and the second position information when the position information is translated and rotated is calculated. In the present embodiment, the first time is assumed to be time t and the second time is assumed to be time t-1, but the present invention is not limited to this, and the first time is assumed to be time t-1 and the second time is assumed to be time t. Also good. The time t indicates the acquisition timing of the position information acquired by the position sensor in time series. Moreover, the acquisition timing of position information is described as a frame as needed.

また、本実施の形態では、時刻tの位置情報と時刻t−1の位置情報との一致の度合いを評価する評価値を用いて一致度を表す。具体的には、評価値Eは、式(1)により表される。   In this embodiment, the degree of coincidence is expressed using an evaluation value that evaluates the degree of coincidence between the position information at time t and the position information at time t-1. Specifically, the evaluation value E is represented by Expression (1).

E(R,T)=Σi=1 f(Ra+T,{b}) (1)
f(a,{b})=0(∋j,|a−b|≦ε) or 1 (otherwise)
E (R, T) = Σ i = 1 n f (Ra i + T, {b j }) (1)
f (a i , {b j }) = 0 (∋j, | a i −b j | ≦ ε) or 1 (otherwise)

但し、aは時刻tの位置情報の各計測点を表し、bは時刻t−1の位置情報の各計測点を表している。また、Rは時刻t−1を基準としたときの時刻tの各計測点の回転移動量を示し、Tは時刻t−1を基準としたときの時刻tの各計測点の平行移動量を示す。iは時刻tの位置情報の計測点を特定するためのインデックスであり、jは時刻t−1の位置情報の計測点を特定するためのインデックスでる。εはレーザレンジファインダの精度を考慮した距離である。nは計測点の個数を示している。However, a i represents each measurement point of position information at time t, and b j represents each measurement point of position information at time t−1. R represents the rotational movement amount of each measurement point at time t with respect to time t−1, and T represents the parallel movement amount of each measurement point with respect to time t−1 with respect to time t−1. Show. i is an index for specifying a measurement point of position information at time t, and j is an index for specifying a measurement point of position information at time t-1. ε is a distance considering the accuracy of the laser range finder. n indicates the number of measurement points.

式(1)は、計測点aをR回転移動させ、かつ、T平行移動させたときにおいて、計測点aが計測点bを中心として距離ε以内に存在しなかった場合、評価値Eに1のペナルティが課されると解釈することができる。したがって、式(1)では評価値Eが小さいほど時刻t−1の位置情報と時刻tの位置情報との一致度が高いことを示す。Equation (1) is a measurement point a i is R rotational movement, and, at the time obtained by T translated, when the measurement points a i does not exist within distance ε around the measurement point b j, evaluation value It can be interpreted that a penalty of 1 is imposed on E. Therefore, in formula (1), the smaller the evaluation value E, the higher the degree of coincidence between the position information at time t-1 and the position information at time t.

なお、式(1)において、f(a,{b})=1 (∋j,|a−b|≦ε) or 0 (otherwise)としてもよい。この場合、計測点aが計測点bを中心として距離ε以内に存在する場合、評価値Eに1ポイントが付与され、一致度が高いほど評価値Eが大きくなる。In the expression (1), f (a i , {b j }) = 1 (∋j, | a i −b j | ≦ ε) or 0 (otherwise) may be used. In this case, when the measurement point a i exists within the distance ε with the measurement point b j as the center, 1 point is given to the evaluation value E, and the evaluation value E increases as the matching degree increases.

式(1)の計算では、明示的に対応点を決定する必要はなく、単に、計測点bを中心として、距離ε内に計測点aが存在するか否かを判定すればよい。つまり、式(1)ではL0ノルムを用いて評価値Eが定義されている。このようにして、計測点bに対して距離ε内に計測点aが存在するか否かを探索する手法はr近傍探索と呼ばれている。In the calculation of Expression (1), it is not necessary to explicitly determine the corresponding point, and it is only necessary to determine whether or not the measurement point a i exists within the distance ε with the measurement point b j as the center. That is, in the expression (1), the evaluation value E is defined using the L0 norm. In this manner, a method for searching whether or not the measurement point a i exists within the distance ε with respect to the measurement point b j is called r-neighbor search.

なお、ノルムとは距離を意味し、L0ノルムの他、L2ノルム等が存在する。L2ノルムは距離の2乗和であり、従来より広く用いられている。   The norm means a distance, and there are an L2 norm and the like in addition to the L0 norm. The L2 norm is the sum of squared distances, and has been widely used.

図5(A)は、評価値Eの算出手法を説明する概念図である。図5(A)に示すように、時刻t−1の位置情報を構成するある計測点bに対し、時刻tの位置情報を構成するある計測点aは距離ε内に位置している。よって、式(1)はf(x)=0となり、評価値Eにはペナルティが課されない。一方、時刻tの位置情報を構成する別の計測点aは計測点bに対し、距離ε内に位置していない。よって、式(1)はf(x)=1となり、評価値Eには1のペナルティが課される。FIG. 5A is a conceptual diagram illustrating a method for calculating the evaluation value E. As shown in FIG. 5A, a certain measurement point a 2 constituting the position information at time t is located within a distance ε with respect to a certain measurement point b constituting the position information at time t−1. Therefore, Formula (1) becomes f (x) = 0, and no penalty is imposed on the evaluation value E. On the other hand, another measurement point a 1 constituting the position information at time t is not located within the distance ε with respect to the measurement point b. Therefore, Formula (1) becomes f (x) = 1, and a penalty of 1 is imposed on the evaluation value E.

図5(B)は、時刻tの位置情報を構成する計測点a〜aが回転移動される様子を示している。図5(C)は、回転移動された計測点a〜aと計測点b〜bとにおいて評価値Eが算出される様子を示した図である。FIG. 5B shows a state where the measurement points a 1 to a 3 constituting the position information at time t are rotationally moved. FIG. 5C is a diagram showing how the evaluation value E is calculated at the measurement points a 1 to a 3 and the measurement points b 1 to b 3 that have been rotated and moved.

図5(C)では計測点b,bから距離ε内に計測点a,aが位置しているが、計測点bから距離ε内に計測点aが存在していない。そのため、評価値Eは1となる。In FIG. 5C, the measurement points a 1 and a 2 are located within the distance ε from the measurement points b 1 and b 2 , but the measurement point a 3 does not exist within the distance ε from the measurement point b 3. . Therefore, the evaluation value E is 1.

図1に戻り、推定部13は、時刻tの位置情報の平行移動量T及び回転移動量Rを変更させて、一致度を最大にする平行移動量T及び回転移動量Rを探索し、自己位置を推定する。つまり、推定部13は、式(1)に示す評価値Eを最小にする回転移動量R及び平行移動量Tを探索する。このような探索を行い、その探索結果に基づいてマップを作成し、自己位置を推定する手法はSLAMと呼ばれている。   Returning to FIG. 1, the estimating unit 13 changes the parallel movement amount T and the rotational movement amount R of the position information at time t, searches for the parallel movement amount T and the rotational movement amount R that maximize the degree of coincidence, and Estimate the position. That is, the estimation unit 13 searches for the rotational movement amount R and the parallel movement amount T that minimize the evaluation value E shown in Expression (1). A technique for performing such a search, creating a map based on the search result, and estimating the self-position is called SLAM.

具体的には、推定部13は、時刻t−1における位置情報において、時刻tにおける位置情報のローカル座標空間を平行移動量Tで平行移動し、かつ、回転移動量Rで回転させ、時刻t−1の位置情報と時刻tの位置情報との評価値Eを算出する処理を繰り返し、評価値Eを最小にする平行移動量T及び回転移動量Rを探索する。   Specifically, in the position information at time t−1, the estimation unit 13 translates the local coordinate space of the position information at time t by the parallel movement amount T and rotates it by the rotational movement amount R, and at time t The process of calculating the evaluation value E between the position information of −1 and the position information at time t is repeated, and the parallel movement amount T and the rotational movement amount R that minimize the evaluation value E are searched.

そして、推定部13は、評価値Eを最小にする平行移動量Tを時刻t−1から時刻tまでの移動体の移動量として求め、時刻t−1における移動体の位置に移動量を加えた値を時刻tにおける移動体の位置として求める。   Then, the estimation unit 13 obtains the parallel movement amount T that minimizes the evaluation value E as the movement amount of the moving body from time t-1 to time t, and adds the movement amount to the position of the moving body at time t-1. Is obtained as the position of the moving body at time t.

また、推定部13は、評価値Eを最小にする回転移動量Rを時刻t−1から時刻tまでの移動体の向きの変化量として求め、時刻t−1における移動体の向きに変化量を加えた値を時刻tにおける移動体の向きとして求める。   Further, the estimation unit 13 obtains the rotational movement amount R that minimizes the evaluation value E as the amount of change in the direction of the moving body from time t-1 to time t, and the amount of change in the direction of the moving body at time t-1. Is added as the direction of the moving object at time t.

ここで、時刻tにおける移動体の向きとしては、例えば、移動体の周辺空間を示す2次元のグローバル座標空間において、所定の基準方向に対する、時刻tにおける移動体の基準方向の角度を採用することができる。また、時刻tにおける移動体の位置としては、例えばグローバル座標空間における移動体の位置を採用することができる。   Here, as the direction of the moving object at the time t, for example, an angle of the reference direction of the moving object at the time t with respect to a predetermined reference direction in a two-dimensional global coordinate space indicating the surrounding space of the moving object is adopted. Can do. As the position of the moving body at time t, for example, the position of the moving body in the global coordinate space can be employed.

また、回転移動量Rとしては、例えば、時刻t−1における移動体の向きに対する時刻tにおける移動体の向きの回転を示す2×2の行列を採用することができる。また、平行移動量Tとしては、例えば、時刻t−1から時刻tまでの移動体の移動量を示すx成分とy成分との値を示す採用することができる。   As the rotational movement amount R, for example, a 2 × 2 matrix indicating rotation of the moving body at time t with respect to the moving body at time t−1 can be employed. Further, as the parallel movement amount T, for example, it is possible to employ values indicating x and y components indicating the movement amount of the moving body from time t-1 to time t.

図6は、評価値EとしてL2ノルムを採用した場合において、動的環境下で時刻t−1の位置情報と時刻tの位置情報とにおいてマッチング誤差が生じる理由を示した図である。時刻tにおいて、移動物体41は例えば人間のような移動する物体である。静止物体42は例えば壁のような静止している物体である。時刻t及び時刻t−1の位置情報において、静止物体42のみが存在していれば、評価値Eの最小値を求めると、時刻t−1における静止物体42を時刻tにおける静止物体42に一致させることができ、誤差は生じない。   FIG. 6 is a diagram illustrating the reason why a matching error occurs between the position information at time t-1 and the position information at time t in a dynamic environment when the L2 norm is adopted as the evaluation value E. At time t, the moving object 41 is a moving object such as a human. The stationary object 42 is a stationary object such as a wall. If only the stationary object 42 exists in the position information at the time t and the time t-1, when the minimum value of the evaluation value E is obtained, the stationary object 42 at the time t-1 matches the stationary object 42 at the time t. And no error occurs.

しかしながら、移動物体41が存在すると、移動物体41は時々刻々移動するため、時刻tにおける移動物体41及び静止物体42の位置関係と、時刻t−1における移動物体41及び静止物体42の位置関係とは異なってしまう。   However, since the moving object 41 moves every moment when the moving object 41 exists, the positional relationship between the moving object 41 and the stationary object 42 at time t and the positional relationship between the moving object 41 and the stationary object 42 at time t−1. Will be different.

よって、評価値Eの最小値を求めたとしても、評価値EとしてL2ノルムを用いた場合は、移動物体41の影響により、時刻tにおける静止物体42に対して、時刻t−1における静止物体42を一致させることができない。その結果、静止物体42においてマッチング誤差が生じてしまうのである。   Therefore, even if the minimum value of the evaluation value E is obtained, when the L2 norm is used as the evaluation value E, the stationary object at time t−1 is affected by the moving object 41 with respect to the stationary object 42 at time t−1. 42 cannot be matched. As a result, a matching error occurs in the stationary object 42.

このように動的環境下ではマッチング誤差が発生するが、本発明者らはL0ノルムを用いて評価値Eを算出すると、マッチング誤差を低減させることができることを見出した。そこで、本実施の形態では、評価値EをL0ノルムを用いて算出している。   Thus, although a matching error occurs in a dynamic environment, the present inventors have found that the matching error can be reduced by calculating the evaluation value E using the L0 norm. Therefore, in this embodiment, the evaluation value E is calculated using the L0 norm.

ノルムとは距離を示し、一般的によく用いられるのは、距離の2乗和であるL2ノルムである。L2ノルムを用いて最小の評価値Eを探索する場合、最適解を求める際に非線形最小二乗法を用いることができる。一方、L0ノルムを用いて最小の評価値Eを求める処理は、離散最適化問題に分類されるため、NP困難である。そのため、L0ノルムを採用した場合、時刻tに計測した位置情報の平行移動量T及び回転移動量Rを総当たり的に変化させて最小の評価値Eを探索する必要がある。   The norm indicates a distance, and the L2 norm, which is the sum of squares of the distance, is commonly used. When searching for the minimum evaluation value E using the L2 norm, a non-linear least square method can be used when obtaining an optimal solution. On the other hand, the process for obtaining the minimum evaluation value E using the L0 norm is classified as a discrete optimization problem, and thus is NP-hard. Therefore, when the L0 norm is adopted, it is necessary to search for the minimum evaluation value E by changing the parallel movement amount T and the rotational movement amount R of the position information measured at time t in a brute force manner.

図1に戻り、マップ生成部14は、推定部13により推定された時刻tでの移動体の位置及び向きをグローバル座標空間にプロットし、かつ、プロットした位置及び向きを基準とし、時刻tでの位置情報をプロットすることで、周辺空間の2次元マップを生成する。   Returning to FIG. 1, the map generation unit 14 plots the position and orientation of the moving object at time t estimated by the estimation unit 13 in the global coordinate space, and uses the plotted position and orientation as a reference at time t. A two-dimensional map of the surrounding space is generated by plotting the position information.

位置センサ16は、レーザレンジファインダにより構成され、一定周期で時系列に位置情報を取得し、位置情報取得部11に供給する。レーザレンジファインダとしては、SICKのLMS100を採用することができる。図7(A)はSICKのLSM100の外観図である。図7(B)は本発明の実施の形態による移動体の外観図である。図7(B)に示すように、位置センサ16は移動体の前側に取り付けられている。   The position sensor 16 is configured by a laser range finder, acquires position information in time series at a constant period, and supplies the position information to the position information acquisition unit 11. As the laser range finder, SICK's LMS100 can be adopted. FIG. 7A is an external view of the LCK 100 of SICK. FIG. 7B is an external view of a moving body according to the embodiment of the present invention. As shown in FIG. 7B, the position sensor 16 is attached to the front side of the moving body.

図8は、位置センサ16の仕様を示した表である。図8に示すように位置センサ16は、画角が270度であり、解像度が0.5度であり、測定可能な範囲が20mであり、周波数が30Hzであり、取得できる計測点の個数が540個である。   FIG. 8 is a table showing the specifications of the position sensor 16. As shown in FIG. 8, the position sensor 16 has an angle of view of 270 degrees, a resolution of 0.5 degrees, a measurable range of 20 m, a frequency of 30 Hz, and the number of measurement points that can be acquired. 540.

図1に戻り、オドメトリ算出部15は、移動体の車輪に取り付けられた回転量センサ17から供給さされる計測データにしたがって移動体のオドメトリを算出し、推定部13に供給する。ここで、オドメトリは回転量センサ17からの計測データに従って推定される時刻t−1を基準としたときの時刻tでの移動体の自己位置である。本実施の形態では、オドメトリ算出部15は、位置センサ16と同じ周期で時系列にオドメトリを算出する。   Returning to FIG. 1, the odometry calculation unit 15 calculates the odometry of the moving body according to the measurement data supplied from the rotation amount sensor 17 attached to the wheel of the moving body, and supplies the odometry to the estimation unit 13. Here, odometry is the self-position of the moving body at time t with respect to time t-1 estimated according to the measurement data from the rotation amount sensor 17. In the present embodiment, the odometry calculation unit 15 calculates odometry in time series with the same cycle as the position sensor 16.

回転量センサ17は、移動体の左右一対の車輪のそれぞれに取り付けられ、移動体の車輪の回転量を示す計測データをオドメトリ算出部15に供給する。ここで、回転量センサ17は、位置センサ16と同じ周期で計測データを取得する。   The rotation amount sensor 17 is attached to each of the pair of left and right wheels of the moving body, and supplies measurement data indicating the rotation amount of the wheels of the moving body to the odometry calculation unit 15. Here, the rotation amount sensor 17 acquires measurement data at the same cycle as the position sensor 16.

図7(B)に示すように移動体は、前方に設けられた左右一対の車輪91,91、後方に設けられた左右一対の車輪92,92を備えている。そして、一対の回転量センサ17は、それぞれ、車輪92,92に取り付けられ、車輪92,92の回転量を計測する。   As shown in FIG. 7B, the moving body includes a pair of left and right wheels 91 and 91 provided at the front and a pair of left and right wheels 92 and 92 provided at the rear. The pair of rotation amount sensors 17 are attached to the wheels 92 and 92, respectively, and measure the rotation amounts of the wheels 92 and 92, respectively.

その他、移動体は図7(B)に示すように、車輪91,92の上部に設けられたフレーム93、フレーム93の底面931の表側に載置されたコンピュータ94、底面931の裏側に取り付けられたモータ95等を備えている。位置センサ16は、フレーム93の上部に設けられたバー932に取り付けられている。   In addition, as shown in FIG. 7B, the moving body is attached to the frame 93 provided on the upper part of the wheels 91, 92, the computer 94 placed on the front side of the bottom surface 931 of the frame 93, and the back side of the bottom surface 931. Motor 95 and the like. The position sensor 16 is attached to a bar 932 provided on the upper part of the frame 93.

コンピュータ94は、上記の位置情報取得部11〜オドメトリ算出部15の機能を実現する。また、コンピュータ94は、移動体の駆動制御プログラムが実装され、移動体の駆動制御を司る。例えば、コンピュータ94は、マップ生成部14により生成された2次元マップを参照し、物体との衝突を回避しながら、所定のゴールに向けて移動するようにモータ95を駆動させる。   The computer 94 implements the functions of the position information acquisition unit 11 to the odometry calculation unit 15 described above. The computer 94 is mounted with a drive control program for the moving body, and controls the driving of the moving body. For example, the computer 94 refers to the two-dimensional map generated by the map generation unit 14 and drives the motor 95 so as to move toward a predetermined goal while avoiding a collision with an object.

モータ95は例えば、車輪92,92に取り付けられた一対のモータにより構成され、コンピュータ94からの信号に基づいて駆動する。左右一対のモータ95は、コンピュータ94からの信号にしたがって、車輪92,92の回転量を変えることで移動体を旋回させる。   The motor 95 is constituted by a pair of motors attached to the wheels 92 and 92, for example, and is driven based on a signal from the computer 94. The pair of left and right motors 95 turns the moving body by changing the amount of rotation of the wheels 92 and 92 in accordance with a signal from the computer 94.

次に、図1に示す自己位置推定装置の動作について説明する。図2は、本発明の実施の形態による自己位置推定装置の動作を示すフローチャートである。まず、位置情報取得部11は時刻tにおける位置情報を取得する(S1)。   Next, the operation of the self-position estimation apparatus shown in FIG. 1 will be described. FIG. 2 is a flowchart showing the operation of the self-position estimation apparatus according to the embodiment of the present invention. First, the position information acquisition unit 11 acquires position information at time t (S1).

次に、推定部13は、時刻tにおける位置情報の平行移動量Tと回転移動量Rとを変化させて複数の探索候補を生成し、各探索候補の評価値Eを一致度算出部12に算出させ、評価値Eを最小にする探索候補を探索する(S2)。   Next, the estimation unit 13 generates a plurality of search candidates by changing the parallel movement amount T and the rotational movement amount R of the position information at time t, and sends the evaluation value E of each search candidate to the matching degree calculation unit 12. A search candidate that minimizes the evaluation value E is calculated (S2).

次に、推定部13は、S2で探索した探索候補の回転移動量Rと平行移動量Tとから移動体の自己位置を推定する(S3)。次に、マップ生成部14は、推定部13により推定された自己位置を2次元の座標空間にプロットし、移動体の周辺空間の2次元マップを生成する(S4)。S4の処理が終了すると、処理がS1に戻され、S1〜S4の処理が繰り返される。   Next, the estimation unit 13 estimates the self position of the moving body from the rotational movement amount R and the parallel movement amount T of the search candidate searched in S2 (S3). Next, the map generation unit 14 plots the self-position estimated by the estimation unit 13 in a two-dimensional coordinate space, and generates a two-dimensional map of the surrounding space of the moving object (S4). When the process of S4 ends, the process returns to S1, and the processes of S1 to S4 are repeated.

図3は、図2のS2に示す探索処理の詳細を示すフローチャートである。まず、推定部13は、変数kに0を代入し、変数kを初期化する(S21)。   FIG. 3 is a flowchart showing details of the search process shown in S2 of FIG. First, the estimation unit 13 assigns 0 to the variable k and initializes the variable k (S21).

次に、推定部13は、n1(n1は2以上の整数)個の探索候補を生成する。具体的には、推定部13は、オドメトリ算出部15により推定された移動体の自己位置から移動体の位置の事前確率を求め、この事前確率にしたがって、ランダムにn1パターンの回転移動量R及び平行移動量Tを決定し、決定したn1パターンの回転移動量Rと平行移動量Tとを用いて時刻tの位置情報を時刻t−1の位置情報に対してずらし、n1個の探索候補を生成する(S22)。   Next, the estimation unit 13 generates n1 (n1 is an integer of 2 or more) search candidates. Specifically, the estimation unit 13 obtains a prior probability of the position of the moving object from the self position of the moving object estimated by the odometry calculation unit 15, and randomly determines the rotational movement amount R of the n1 pattern according to the prior probability. The parallel movement amount T is determined, the position information at time t is shifted with respect to the position information at time t-1 using the determined rotational movement amount R and parallel movement amount T of the n1 pattern, and n1 search candidates are obtained. Generate (S22).

ここで、事前確率としては、オドメトリ算出部15が推定した自己位置に近い位置ほど探索候補が多くなるような確率を採用することができる。そして、この事前確率にしたがった抽選処理によってn1個の探索候補が生成される。   Here, as the prior probability, a probability that the number of search candidates increases as the position is closer to the self-position estimated by the odometry calculation unit 15 can be employed. And n1 search candidates are produced | generated by the lottery process according to this prior probability.

図9は探索候補が生成される処理を説明する図である。図9では、(A)〜(D)に向けて処理が進む。図9の各点は時刻tの位置情報の回転移動量Rと平行移動量Tとの要素をまとめたものを点の位置として現してある。図9(A)では、S22の処理によってn1個の探索候補が生成されている。   FIG. 9 is a diagram for explaining processing for generating search candidates. In FIG. 9, the process proceeds toward (A) to (D). Each point in FIG. 9 represents the position of a point obtained by collecting the elements of the rotational movement amount R and the parallel movement amount T of the position information at time t. In FIG. 9A, n1 search candidates are generated by the process of S22.

次に、一致度算出部12は、n1個の探索候補のそれぞれにつき、式(1)を用いて時刻tの位置情報との評価値Eを算出する(S23)。   Next, the degree-of-matching calculation unit 12 calculates an evaluation value E with respect to the position information at time t using Equation (1) for each of the n1 search candidates (S23).

次に、推定部13は、変数kが定数K未満の場合(S24でNO)、n1個の探索候補の評価値Eからn1個の探索候補のそれぞれの重み値wjを算出する(S25)。ここで、重み値wjは式(2)によって規定される。   Next, when the variable k is less than the constant K (NO in S24), the estimation unit 13 calculates the weight value wj of each of the n1 search candidates from the evaluation value E of the n1 search candidates (S25). Here, the weight value wj is defined by Equation (2).

wj=exp((m−E(R,T))/k) (2)
ここで、m、kは定数である。mとしては例えば想定される評価値Eの最大値を採用することができる。jは探索候補を特定するインデックスである。式(2)に示すように評価値Eが小さくなるほど、重み値wjは大きくなる。
wj = exp ((m−E (R, T)) / k) (2)
Here, m and k are constants. As m, for example, the assumed maximum value of the evaluation value E can be adopted. j is an index for specifying a search candidate. As shown in Expression (2), the weight value wj increases as the evaluation value E decreases.

次に、推定部13は、重み値wjに基づき、n1個の探索候補の中からn2(n2<n1)個の探索候補を抽出する(S26)。この場合、推定部13は、重み値wjの値が大きいほど抽選確率が高くなるような抽選処理を行い、n2個の探索候補を抽出してもよいし、重み値wjが大きい順にn2個の探索候補を抽出してもよい。   Next, the estimation unit 13 extracts n2 (n2 <n1) search candidates from the n1 search candidates based on the weight value wj (S26). In this case, the estimation unit 13 may perform a lottery process in which the lottery probability becomes higher as the value of the weight value wj is larger, and may extract n2 search candidates. Search candidates may be extracted.

S26の処理により、図9(A)に示すn1個の探索候補から図9(B)に示すようにn2個の探索候補が抽出される。図9(B)の例では、n2=3と設定されているため、3個の探索候補が抽出されていることが分かる。   By the process of S26, n2 search candidates are extracted as shown in FIG. 9B from the n1 search candidates shown in FIG. 9A. In the example of FIG. 9B, since n2 = 3 is set, it can be seen that three search candidates are extracted.

図3に戻り、S27において、推定部13は、n2個の探索候補のそれぞれにつき、n3個の探索候補を生成する。この場合、推定部13は、n2個の探索候補の原点を基準とし、(σx,σy,σθ)の正規分布にしたがって、n3パターンの回転移動量R及び平行移動量Tを決定し、n3個の探索候補を生成すればよい。   Returning to FIG. 3, in S27, the estimation unit 13 generates n3 search candidates for each of the n2 search candidates. In this case, the estimation unit 13 determines the rotational movement amount R and the parallel movement amount T of the n3 pattern according to the normal distribution of (σx, σy, σθ) with reference to the origin of n2 search candidates, and n3 pieces The search candidates may be generated.

例えば、n2=3の場合、3個の探索候補の原点を基準としてn3個の探索候補が生成される。この場合、n2個の探索候補の重み値wjの値に応じてn3個の個数を変えても良い。例えば、n2=3の場合の探索候補をZ1〜Z3とし、探索候補Z1〜Z3の重み値がw1〜w3であったとする。但し、w1>w2>w3である。この場合、探索候補Z1〜Z3から生成される探索候補の個数をそれぞれn3(1)〜n3(3)とすると、重み値w1に応じて、n3(1)〜n3(3)の値を決定し、探索候補を生成すればよい。なお、n3(1)>n3(2)>n3(3)である。   For example, when n2 = 3, n3 search candidates are generated with reference to the origin of three search candidates. In this case, the number of n3 pieces may be changed according to the value of the weight value wj of n2 search candidates. For example, it is assumed that search candidates in the case of n2 = 3 are Z1 to Z3, and the weight values of the search candidates Z1 to Z3 are w1 to w3. However, w1> w2> w3. In this case, if the number of search candidates generated from the search candidates Z1 to Z3 is n3 (1) to n3 (3), the values of n3 (1) to n3 (3) are determined according to the weight value w1. Then, search candidates may be generated. Note that n3 (1)> n3 (2)> n3 (3).

図9(C)に示すように、S27の処理により、n2個の探索候補を基準としてn3個の探索候補が生成され、合計、n2×n3個の探索候補が生成されていることが分かる。   As shown in FIG. 9C, it can be seen that the processing of S27 generates n3 search candidates based on n2 search candidates, and a total of n2 × n3 search candidates are generated.

次に、推定部13は変数kを1インクリメントし(S28)、処理をS23に戻す。S24において、変数kが定数K以上になった場合(S23でNO)、推定部13は、評価値Eが最小の探索候補を特定する(S29)。   Next, the estimation unit 13 increments the variable k by 1 (S28), and returns the process to S23. In S24, when the variable k becomes equal to or greater than the constant K (NO in S23), the estimation unit 13 specifies a search candidate having the smallest evaluation value E (S29).

なお、2ループ目以降のS23において、S27で算出された全探索候補に対して評価値Eが算出される。このように、推定部13は、S23〜28の処理をK回繰り返し、評価値Eが最小の探索候補を特定する。そして、探索候補を生成するにあたり、解となる可能性が高い回転移動量R及び平行移動量Tを持つ探索候補を重点的に生成する重点的サンプリングを行う。そのため、解となる探索候補を効率良く求めることが可能となる。   In S23 after the second loop, the evaluation value E is calculated for all search candidates calculated in S27. In this way, the estimation unit 13 repeats the processes of S23 to 28 K times, and specifies a search candidate having the smallest evaluation value E. Then, in generating search candidates, priority sampling is performed in which search candidates having a rotational movement amount R and a parallel movement amount T that are likely to be solutions are generated preferentially. Therefore, it becomes possible to efficiently obtain search candidates as solutions.

評価値Eを最小化する解を求める手法として、ベイズ推定を用いる手法が知られている。この手法は、L2ノルムを用いて評価値Eを算出する手法において、位置推定の信頼性が移動物体の影響によって一時的に乏しくなることを防止し、位置推定の頑強性を高めるために用いられる。   As a method for obtaining a solution for minimizing the evaluation value E, a method using Bayesian estimation is known. This technique is used in the technique of calculating the evaluation value E using the L2 norm to prevent the reliability of position estimation from becoming temporarily poor due to the influence of a moving object and to increase the robustness of position estimation. .

本実施の形態では、S26に示すように、n1個からn2個に探索候補を絞り、以降の処理が行われている。このように、本実施形態ではベイズ推定ではなく、maximuma-posteriori(MAP)推定のように、解を絞り込んで次のステップに処理を進める手法を採用している。そのため、解の正確性に懸念が残るが、L0ノルムは移動する物体に対して頑健であるため、MAP推定を適用しても問題はない。その結果、探索候補の個数の増大を抑制し、最小の評価値Eを探索する処理を高速化することができる。   In the present embodiment, as shown in S26, the search candidates are narrowed down from n1 to n2, and the subsequent processing is performed. As described above, this embodiment employs a technique of narrowing down the solution and proceeding to the next step, such as maximuma-posteriori (MAP) estimation instead of Bayesian estimation. For this reason, there remains concern about the accuracy of the solution, but the L0 norm is robust against moving objects, so there is no problem even if MAP estimation is applied. As a result, an increase in the number of search candidates can be suppressed, and the process for searching for the minimum evaluation value E can be speeded up.

なお、図3において、S22が第1処理に相当し、S25,S26が第2処理に相当し、S27が第3処理に相当し、S24,S29が第4処理に相当する。   In FIG. 3, S22 corresponds to the first process, S25 and S26 correspond to the second process, S27 corresponds to the third process, and S24 and S29 correspond to the fourth process.

次に、図3のS23に示す評価値の算出処理の詳細について説明する。ベクトルデータをハッシュ値に変換するアルゴリズムとして、LSH(Locality Sensitive Hashing)が知られている(Alexandr Andoni, Mayur Datar, Nicole Immorlica, Piotr Indyk, and Vahab Mirrokni : “Locality-Sensitive Hashing Scheme Based on p-Stable Distributions” , Nearest Neighbor Methods in Learning and Vision, MIT Press, 2006.)。   Next, details of the evaluation value calculation process shown in S23 of FIG. 3 will be described. LSH (Locality Sensitive Hashing) is known as an algorithm for converting vector data into hash values (Alexandr Andoni, Mayur Datar, Nicole Immorlica, Piotr Indyk, and Vahab Mirrokni: “Locality-Sensitive Hashing Scheme Based on p-Stable Distributions ”, Nearest Neighbor Methods in Learning and Vision, MIT Press, 2006.).

上記のようにL0ノルムを用いた評価値Eにおいて、最小の評価値Eを探索する処理は最適化が困難であり、総当り法で計算されることが多い。したがって、探索範囲及び解像度によっては計算量が爆発的に増大してしまう。そのため、評価値Eの算出手法としては、可能な限り高速な手法を採用することが好ましい。   As described above, in the evaluation value E using the L0 norm, the process of searching for the minimum evaluation value E is difficult to optimize and is often calculated by the brute force method. Accordingly, the amount of calculation increases explosively depending on the search range and resolution. Therefore, as a method for calculating the evaluation value E, it is preferable to employ a method as fast as possible.

L0ノルムを用いた評価値Eにおいて最小の評価値Eを探索する場合、r近傍を求める際の計算の負荷が大きい。r近傍を求める単純なアルゴリズム(例えば、Bruteforce)の計算量はO(n)であるが、kd−treeやボロノイ図を用いれば、計算量をO(logn)まで減らすことができる。   When searching for the minimum evaluation value E in the evaluation value E using the L0 norm, the calculation load when obtaining the vicinity of r is large. The amount of calculation of a simple algorithm for obtaining the vicinity of r (for example, Bruteforce) is O (n), but if kd-tree or a Voronoi diagram is used, the amount of calculation can be reduced to O (logn).

しかしながら、LSHは、近似的ではあるがこれらの手法よりも更に高速であることが知られている。そこで、本実施の形態では、LSHを採用している。LSHは、データの距離が近いほど、高い確率で同じハッシュ値をとる性質を有する。同じハッシュ値に分類されたデータのみが近傍点の候補であるとみなすことで、計算量を大幅に削減することができる。   However, LSH is known to be much faster than these approaches, though approximate. Therefore, in this embodiment, LSH is adopted. LSH has the property of taking the same hash value with higher probability as the data distance is closer. Considering that only data classified into the same hash value is a candidate for a neighboring point, the amount of calculation can be greatly reduced.

図4は、評価値Eの算出処理の詳細を示すフローチャートである。まず、一致度算出部12は、時刻t−1の位置情報から複数のハッシュテーブルを生成する(S41)。ここで、ハッシュテーブルは、時刻t−1の位置情報の各計測点を所定のハッシュ関数を用いて格子空間に投影し、格子空間の各位置における計測点の存在の有無を示すテーブルである。格子空間は、時刻t−1における位置情報のローカル座標空間を距離εに基づき、格子状に区切ることで生成される空間である。ここで、ハッシュ関数hは式(3)により表される。   FIG. 4 is a flowchart showing details of the calculation process of the evaluation value E. First, the coincidence calculation unit 12 generates a plurality of hash tables from the position information at time t−1 (S41). Here, the hash table is a table indicating whether or not there is a measurement point at each position in the lattice space by projecting each measurement point of the position information at time t-1 onto the lattice space using a predetermined hash function. The lattice space is a space generated by dividing the local coordinate space of the position information at time t-1 into a lattice shape based on the distance ε. Here, the hash function h is expressed by Expression (3).

h(b)=<(p・b+q)/ε> (3)
但し、<>は(p・b+q)/ε以下の最大の整数を示す。pは1を平均とする正規分布により決定される。qは一様分布により0からεの範囲でランダムに決定される。bは計測点を示している。
h (b) = <(p · b + q) / ε> (3)
However, <> represents a maximum integer of (p · b + q) / ε or less. p is determined by a normal distribution with 1 as an average. q is randomly determined in the range of 0 to ε by a uniform distribution. b indicates a measurement point.

本実施の形態では、以下に示す2つのハッシュ関数hx,hyを採用する。   In this embodiment, the following two hash functions hx and hy are employed.

hx(b)=<(p・bx+qx)/ε> (3−1)
hy(b)=<(p・by+qy)/ε> (3−2)
なお、qx,qyは、qのx,y成分であり、一様分布により0からεの範囲でランダムに決定される。bx,byは計測点bのx,y成分である。
hx (b) = <(p · bx + qx) / ε> (3-1)
hy (b) = <(p · by + qy) / ε> (3-2)
Note that qx and qy are x and y components of q, and are randomly determined in the range of 0 to ε by uniform distribution. bx and by are x and y components of the measurement point b.

計測点bはx軸及びy軸で規定されるローカル座標空間に位置している。したがって、一致度算出部12は、式(3−1)に示すように、hx(b)を用いて計測点bの格子空間におけるx座標の値を求め、式(3−2)に示すように、hy(b)を用いて計測点bの格子空間におけるy座標の値を求める。   The measurement point b is located in the local coordinate space defined by the x axis and the y axis. Therefore, the coincidence calculation unit 12 obtains the value of the x coordinate in the lattice space of the measurement point b using hx (b) as shown in the equation (3-1), and as shown in the equation (3-2). Then, the value of the y coordinate in the lattice space of the measurement point b is obtained using hy (b).

図10はハッシュテーブルを示した概念図である。図10(A)は時刻t−1の位置情報のローカル座標空間に設定された格子空間を示している。   FIG. 10 is a conceptual diagram showing a hash table. FIG. 10A shows a lattice space set in the local coordinate space of the position information at time t-1.

図10(B)は、図10(A)に示す格子空間に基づいて生成されたハッシュテーブルT1〜T3を示している。図10(A)において、計測点bは式(3−1),(3−2)の<>の演算が施される前の位置にプロットされている。図10(A)において、例えば1行1列目の格子には計測点bが存在している。よって、この計測点bに<>の演算を施してハッシュ値hx(b),hy(b)を求めると、図10(B)に示すように、計測点bはハッシュテーブルT1の1行1列目のビンに位置することになる。よって、ハッシュテーブルT1の1行1列目のビンには計測点bの存在を示す、例えば1のラベルが設定される。一方、図10(A)において、例えば1行3列目の格子には計測点bが存在していない。よって、図10(B)に示すように、ハッシュテーブルT1の1行3列目のビンには計測点bの非存在を示す例えば0のラベルが設定される。   FIG. 10B shows hash tables T1 to T3 generated based on the lattice space shown in FIG. In FIG. 10A, the measurement point b is plotted at a position before the calculation of <> in the expressions (3-1) and (3-2). In FIG. 10A, for example, a measurement point b exists on the grid in the first row and the first column. Accordingly, when the hash value hx (b), hy (b) is obtained by performing <> operation on the measurement point b, the measurement point b is one line 1 in the hash table T1, as shown in FIG. 10B. It will be located in the bin of the row. Therefore, for example, a label of 1 indicating the presence of the measurement point b is set in the bin of the first row and the first column of the hash table T1. On the other hand, in FIG. 10A, for example, the measurement point b does not exist in the grid in the first row and the third column. Therefore, as shown in FIG. 10B, for example, a label of 0 indicating that the measurement point b does not exist is set in the bin of the first row and the third column of the hash table T1.

このようにして、計測点bが式(3−1)、(3−2)を用いて格子空間に投影され、ハッシュテーブルT1が生成される。   In this way, the measurement point b is projected onto the lattice space using the equations (3-1) and (3-2), and the hash table T1 is generated.

ここで、一致度算出部12は、式(3−1)、(3−2)に示すハッシュ関数を複数種類用意して、複数のハッシュテーブルを生成する。図10(B)の例では、3種のハッシュ関数h1(=(h1x(b),h1y(b)))〜h3(=(h3x(b),h3y(b)))を用いて3個のハッシュテーブルT1〜T3が生成されている。   Here, the coincidence degree calculation unit 12 prepares a plurality of types of hash functions represented by the expressions (3-1) and (3-2), and generates a plurality of hash tables. In the example of FIG. 10B, three hash functions h1 (= (h1x (b), h1y (b))) to h3 (= (h3x (b), h3y (b))) are used. Hash tables T1 to T3 are generated.

この場合、一致度算出部12は、式(3−1)、(3−2)に示す、p,qx,qyの値を異なる値に設定することで複数種類のハッシュ関数を生成すればよい。   In this case, the coincidence degree calculation unit 12 may generate a plurality of types of hash functions by setting the values of p, qx, and qy shown in equations (3-1) and (3-2) to different values. .

このように、複数のハッシュテーブルT1〜T3を採用することで、計測点aが計測点bの距離εの範囲内にあるにも関わらず、たまたまハッシュテーブルにはハッシュ値が存在しなかったというような、探索ミスを防止することができる。   In this way, by adopting a plurality of hash tables T1 to T3, it is said that there is no hash value in the hash table even though the measurement point a is within the distance ε of the measurement point b. Such a search error can be prevented.

なお、上記では、(3−1)、(3−2)で示すハッシュ関数を用いたが、(3−1’)、(3−2’)で示すハッシュ関数を採用してもよい。   In the above description, the hash functions indicated by (3-1) and (3-2) are used, but the hash functions indicated by (3-1 ') and (3-2') may be adopted.

hx(b)=<(bx+qx)/pε> (3−1’)
hy(b)=<(by+qy)/pε> (3−2’)
hx (b) = <(bx + qx) / pε> (3-1 ′)
hy (b) = <(by + qy) / pε> (3-2 ′)

(3−1)、(3−2)との違いは、pが分母に移され、εに乗じられている点である。これにより、ローカル座標空間に設定される格子の長さが変わり、ハッシュテーブルにより多くの多様性を持たせることができる。   The difference from (3-1) and (3-2) is that p is moved to the denominator and multiplied by ε. As a result, the grid length set in the local coordinate space changes, and the hash table can have more diversity.

図4に戻り、S42において、一致度算出部12は、時刻tの位置情報の各計測点aをハッシュ関数h1〜h3を用いて投影空間に投影し、計測点aのハッシュ値h1(a)〜h3(a)を求める。   Returning to FIG. 4, in S <b> 42, the coincidence calculation unit 12 projects each measurement point a of the position information at time t onto the projection space using the hash functions h <b> 1 to h <b> 3, and the hash value h <b> 1 (a) of the measurement point a. -H3 (a) is obtained.

次に、一致度算出部12は、求めたハッシュ値h1(a)〜h3(a)のいずれかが対応するハッシュテーブルT1〜T3に存在すれば、評価値Eにペナルティを課さずに評価値Eを算出する(S43)。   Next, if any of the obtained hash values h1 (a) to h3 (a) exists in the corresponding hash tables T1 to T3, the coincidence calculation unit 12 evaluates the evaluation value E without penalizing the evaluation value E. E is calculated (S43).

例えば、ハッシュ値h1(a)で示されるハッシュテーブルT1のビンに1のラベルが設定されていれば、ハッシュ値h2(a),h3(a)で示されるハッシュテーブルT2,T3のビンに0のラベルが設定されていても、計測点aから距離ε内に計測点bが位置するとみなされ、評価値Eにペナルティが課されない。   For example, if a label of 1 is set in the bin of the hash table T1 indicated by the hash value h1 (a), 0 is set in the bins of the hash tables T2 and T3 indicated by the hash values h2 (a) and h3 (a). Is set, the measurement point b is regarded as being located within the distance ε from the measurement point a, and no penalty is imposed on the evaluation value E.

一致度算出部12は、このような処理を各計測点aに対して行い、付与したペナルティの合計値を評価値Eとして算出する。このように時刻t−1の計測点bに基づいて予めハッシュテーブルを生成しておくことで、ハッシュテーブルの参照にかかる計算量をO(1)にすることができる。   The coincidence degree calculation unit 12 performs such processing for each measurement point a, and calculates the total value of the assigned penalty as the evaluation value E. Thus, by generating a hash table in advance based on the measurement point b at time t−1, it is possible to reduce the amount of calculation required for referring to the hash table to O (1).

なお、上記実施の形態では、位置情報は2次元としたが、これに限定されず3次元であってもよい。この場合、位置センサ16として、例えば深度センサを採用すればよい。そして、周辺空間を3次元のグローバル座標空間で表し、推定した移動体の自己位置プロットしていき、3次元マップを採用してもよい。   In the above embodiment, the position information is two-dimensional. However, the position information is not limited to this and may be three-dimensional. In this case, for example, a depth sensor may be employed as the position sensor 16. Then, the surrounding space may be represented by a three-dimensional global coordinate space, and the estimated position of the moving body may be plotted to adopt a three-dimensional map.

<実験例>
次に、本発明の実施の形態による自己位置推定装置が適用された移動体の実験について説明する。
<Experimental example>
Next, an experiment of a moving body to which the self-position estimation apparatus according to the embodiment of the present invention is applied will be described.

<実験環境>
本実験では、移動体として、車椅子型移動ロボットEMC-230を採用し、これに図8に示す仕様のレーザレンジファインダ(LRF)を取りつけ、センシングを行った。LRFがセンシングした情報は極座標で表現され、角度方向に等間隔である。センサからの距離が増大すると点の密度が疎になるため、セグメンテーションを行い、セグメント内の点の間隔がε以下になるよう補間した。
<Experimental environment>
In this experiment, a wheelchair-type mobile robot EMC-230 was adopted as a moving body, and a laser range finder (LRF) having the specifications shown in FIG. 8 was attached thereto for sensing. Information sensed by the LRF is expressed in polar coordinates and is equally spaced in the angular direction. Since the density of points becomes sparse as the distance from the sensor increases, segmentation is performed and interpolation is performed so that the distance between points in the segment is equal to or less than ε.

実験場所として、奈良先端科学技術大学院大学情報棟1階を用いた。動的環境をLRFで計測し、時刻t,時刻t−1の位置情報のマッチングを行った。この実験において、移動体は静止した状態で動的環境の計測を行った。動的環境は幅10m程の廊下で奥行き20mの範囲で、25人前後の歩行者が移動していた。   The first floor of the information building of the Nara Institute of Science and Technology Graduate School was used as the experiment site. The dynamic environment was measured by LRF, and the position information at time t and time t−1 was matched. In this experiment, the dynamic environment was measured while the moving body was stationary. The dynamic environment was a hallway with a width of about 10m, and a range of 20m in depth, and about 25 pedestrians were moving.

図11(A)は実験場所を示した図であり、図11(B)はこの実験場所に人物が行き来する動的環境を示した図である。   FIG. 11 (A) is a diagram showing an experimental place, and FIG. 11 (B) is a diagram showing a dynamic environment in which a person moves to and from this experimental place.

図12は、実験場所に人物が行き来していない静的環境下で生成した周辺空間の2次元マップを示している。この2次元マップはRBPF−SLAMを用いて生成されたものであり真値とみなせる。   FIG. 12 shows a two-dimensional map of the surrounding space generated in a static environment in which no person goes to the experimental place. This two-dimensional map is generated using RBPF-SLAM and can be regarded as a true value.

<実験結果>
この実験では最小の評価値Eを探索する際の探索範囲を、x軸方向、y軸方向にそれぞれプラスマイナス 20[cm]とし、角度を プラスマイナス0.3[rad]と設定した。そして、この探索範囲において、1.0[cm]、0.01[rad](=約0.57[deg])刻みで総当たり法で、回転移動量R、平行移動量Tを変化させて、評価値Eの最小値を探索した。
<Experimental result>
In this experiment, the search range when searching for the minimum evaluation value E was set to plus or minus 20 [cm] in the x-axis direction and y-axis direction, respectively, and the angle was set to plus or minus 0.3 [rad]. In this search range, the rotational movement amount R and the parallel movement amount T are changed by the round robin method in steps of 1.0 [cm] and 0.01 [rad] (= about 0.57 [deg]). The minimum value of the evaluation value E was searched.

そして、評価値EとしてL0ノルムを採用した場合、L2ノルムを採用した場合、M−estimatorを採用した場合のマッチングの位置推定精度の比較を行った。この際、M−estimatorにはBiweight法に基づき、距離dに対し、以下の評価関数ρ(d)を用いた。   And when L0 norm was employ | adopted as the evaluation value E, when the L2 norm was employ | adopted, the position estimation precision of the matching at the time of employ | adopting M-estimator was compared. At this time, the following evaluation function ρ (d) was used for the distance d based on the Biweight method for the M-estimator.

ρ(d)=B/2 (d≧B)
or
(B/2)(1−(1−(d/B)) (d<B)
ρ (d) = B 2/ 2 (d ≧ B)
or
(B 2/2) (1- (1- (d / B) 2) 3) (d <B)

ここで、Bは任意の残差値であり、0.01[m]とした。図13は、評価値Eとして、L2ノルム、M−estimator、及びL0ノルムを用いた場合の実験結果を示した表である。   Here, B is an arbitrary residual value and is set to 0.01 [m]. FIG. 13 is a table showing experimental results when the L2 norm, M-estimator, and L0 norm are used as the evaluation value E.

L2ノルムでは最大14[cm]のマッチング誤差が発生しており、平均二乗誤差(RMSE)も10[cm]ほどあった。一方、L0ノルムではマッチング誤差は最大1[cm]であり、LRFの計測誤差内に収まっていることがわかる。   In the L2 norm, a matching error of a maximum of 14 [cm] occurs, and the mean square error (RMSE) is also about 10 [cm]. On the other hand, in the L0 norm, the matching error is 1 [cm] at the maximum, and is found to be within the measurement error of the LRF.

次に、LRFにより200フレーム分の位置情報を測定し、L2ノルム、M−estimator、及びL0ノルムをそれぞれ用いて隣接するフレーム同士の位置情報のマッチングを行い、2次元マップを生成した。   Next, the position information for 200 frames was measured by LRF, and the position information of adjacent frames was matched using the L2 norm, M-estimator, and L0 norm to generate a two-dimensional map.

図14は、L2ノルムを採用した場合に作成した2次元マップである。図15は、M−estimatorを採用した場合に作成した2次元マップである。図16は、L0ノルムを採用した場合に作成した2次元マップである。   FIG. 14 is a two-dimensional map created when the L2 norm is adopted. FIG. 15 is a two-dimensional map created when the M-estimator is employed. FIG. 16 is a two-dimensional map created when the L0 norm is adopted.

図14に示すようにL2ノルムを採用した場合、マッチング誤差により、移動体が移動していると誤認識され、2次元マップの生成に失敗していることが分かる。   As shown in FIG. 14, when the L2 norm is adopted, it can be seen that due to the matching error, the moving body is misrecognized as moving, and the generation of the two-dimensional map has failed.

図15に示すように、M−estimatorを採用した場合、大きなマッチング誤差はなかったが、累積したマッチング誤差により、移動体が移動していると誤認識され、2次元マップの生成に失敗している。一方、図16に示すように、L0ノルムを採用した場合、フレーム間のマッチング誤差がほとんど発生せず、自己位置推定装置は移動体が静止している状態を計測できている。   As shown in FIG. 15, when the M-estimator was adopted, there was no large matching error, but due to the accumulated matching error, the mobile object was misrecognized and the generation of the two-dimensional map failed. Yes. On the other hand, as shown in FIG. 16, when the L0 norm is adopted, matching errors between frames hardly occur, and the self-position estimation apparatus can measure the state where the moving body is stationary.

この実験結果から分かるようにL0ノルムを採用した場合、他の手法を採用した場合に比べ、動的環境下において、高い頑健性を有していることが分かる。   As can be seen from the experimental results, it can be seen that when the L0 norm is employed, the robustness is higher in a dynamic environment than when other methods are employed.

次に、本実施の形態による自己位置推定装置の優位性を検証するため、LSHを採用した場合、Brute−forceを採用した場合、及びkd−treeを採用した場合の計算時間の比較を行った。なお、評価値EとしてはL0ノルムを採用した。探索範囲は、上記の値と同じである。合計24000通りの評価値Eを計算し、総計算時間(Average calculation time)、1秒あたりに計算できるL0ノルムの数(Frequency of calculation aec.)、及びr近傍点が発見できた計測点の平均個数(Average match points)を求めた。   Next, in order to verify the superiority of the self-position estimation apparatus according to the present embodiment, the calculation time was compared when LSH was adopted, when Brute-force was adopted, and when kd-tree was adopted. . The evaluation value E was L0 norm. The search range is the same as the above value. Total 24,000 evaluation values E are calculated, the total calculation time (Average calculation time), the number of L0 norms that can be calculated per second (Frequency of calculation aec.), And the average of the measurement points where r neighbors were found The number (Average match points) was determined.

図17は、Brute−force、kd−tree、LSHを用いて計算時間を比較する実験を行った場合の実験結果をまとめた表である。   FIG. 17 is a table summarizing experimental results in an experiment in which calculation times are compared using True-force, kd-tree, and LSH.

図17に示すように、Brute−force、kd−treeに比べ、LSHを用いた場合、総計算時間が短いことがわかる。しかしながら、Brute−force及びkd−treeに比べ、LSHはr近傍点が発見できた計測点の平均個数(Average match points)が15個ほど少ない。これは、LSHによる近傍点探索が近似であることが原因である。   As shown in FIG. 17, it can be seen that the total calculation time is shorter when LSH is used compared to the true-force and kd-tree. However, LSH has as few as 15 average match points at which r neighboring points can be found, as compared to true-force and kd-tree. This is because the neighborhood point search by LSH is approximate.

この一致点数の差の影響を、複数フレームのマッチングにより2次元マップを生成することで調べる。図18は静的環境下でRBPF−SLAMを用いて生成した2次元マップである。この2次元マップを真値と見なす。   The influence of the difference in the number of coincidence points is examined by generating a two-dimensional map by matching a plurality of frames. FIG. 18 is a two-dimensional map generated using RBPF-SLAM in a static environment. This two-dimensional map is regarded as a true value.

図19は、動的環境下で移動体を移動させながら計測した位置情報を利用し、L0ノルムを用いた評価値Eで位置情報同士のマッチングを行って生成した2次元マップである。この2次元マップ内に存在する点は移動する人の軌跡を示している。   FIG. 19 is a two-dimensional map generated by using position information measured while moving a moving body in a dynamic environment and matching the position information with the evaluation value E using the L0 norm. The points present in this two-dimensional map indicate the trajectory of the moving person.

図20は、L2ノルムを用いた評価値Eで位置情報同士のマッチングを行って生成した2次元マップである。両2次元マップのエッジの形状を比較すると、L0ノルムの方が動的環境下でも比較的正確に2次元マップが生成されていることが分かる。   FIG. 20 is a two-dimensional map generated by matching the positional information with the evaluation value E using the L2 norm. Comparing the shapes of the edges of both two-dimensional maps, it can be seen that the L0 norm generates a two-dimensional map relatively accurately even in a dynamic environment.

更に、図21に示すような大規模な2次元マップを生成した。図21は、RBPF−SLAMを用いて生成した2次元マップである。この2次元マップを真値と見なす。   Furthermore, a large-scale two-dimensional map as shown in FIG. 21 was generated. FIG. 21 is a two-dimensional map generated using RBPF-SLAM. This two-dimensional map is regarded as a true value.

L0ノルムでは、フレーム間のマッチングしか行っていないため、微少なマッチング誤差が累積し、図22に示すように地図が歪んでしまう。図22は、L0ノルムを用いて生成された2次元マップである。この2次元マップは、図21と同じ環境下で生成されたものである。図22に現れた歪みは、例えばループクロージング等の手法を適用すれば改善することができる。   Since only matching between frames is performed in the L0 norm, minute matching errors accumulate, and the map is distorted as shown in FIG. FIG. 22 is a two-dimensional map generated using the L0 norm. This two-dimensional map is generated under the same environment as in FIG. The distortion appearing in FIG. 22 can be improved by applying a technique such as loop closing.

上記の自己位置推定装置及び移動体の技術的特徴は以下のようにまとめられる。   The technical features of the above-described self-position estimation apparatus and moving body are summarized as follows.

(1)上記の自己位置推定装置は、移動体の自己位置を推定する自己位置推定装置であって、前記移動体の周辺空間に存在する各物体の位置情報を時系列に取得する位置情報取得部と、前記位置情報取得部により第1時刻で取得された第1位置情報を、前記第1時刻と時系列的に前又は後の時刻である第2時刻で取得された第2位置情報に対して平行移動及び回転移動させたときの前記第1位置情報と前記第2位置情報との一致度を算出する一致度算出部と、前記第1位置情報の平行移動量及び回転移動量を変更させて、前記一致度を最大にする前記平行移動量及び前記回転移動量を探索し、前記自己位置を推定する推定部とを備え、前記一致度算出部は、前記第1位置情報を構成するある計測点に対し、一定距離内に前記第2位置情報を構成するある計測点が存在すれば、前記一致度に所定のポイントを付与し、付与したポイントの合計値を前記一致度として算出する。   (1) The above self-position estimation apparatus is a self-position estimation apparatus that estimates the self-position of a moving body, and obtains position information that obtains position information of each object existing in the surrounding space of the moving body in time series. And the first position information acquired at the first time by the position information acquisition unit into the second position information acquired at the second time which is the time before or after the first time in time series. A degree of coincidence calculation unit for calculating a degree of coincidence between the first position information and the second position information when the first position information and the second position information are translated, and a change in a parallel movement amount and a rotation movement amount of the first position information; And searching for the parallel movement amount and the rotational movement amount that maximize the degree of coincidence, and estimating the self-position, wherein the coincidence degree calculating unit constitutes the first position information The second position information is constructed within a certain distance for a certain measurement point. If there measurement point exists, the matching degree in imparting a predetermined point, and calculates the total value of the grant and the point as the matching degree.

この構成によれば、第2位置情報に対して第1位置情報がずらされて一致度を最大とする平行移動量及び回転移動量が探索される。そして、一致度は、第1位置情報を構成するある計測点に対し、一定距離内に第2位置情報のある計測点が位置すれば所定のポイントが付与される。つまり、本構成では、静止物体のみならず移動物体を含む動的環境下においても頑強なL0ノルムを用いて一致度が算出されている。そのため、移動物体を含む未知環境下において、移動体の自己位置を正確に推定することができる。   According to this configuration, the first position information is shifted with respect to the second position information, and the parallel movement amount and the rotational movement amount that maximize the matching degree are searched. The degree of coincidence is given a predetermined point if a measurement point having the second position information is located within a certain distance with respect to a measurement point constituting the first position information. That is, in this configuration, the degree of coincidence is calculated using a robust L0 norm even in a dynamic environment including a moving object as well as a stationary object. Therefore, the self position of the moving object can be accurately estimated in an unknown environment including the moving object.

(2)前記一致度算出部は、前記周辺空間を前記一定距離に基づいて格子状に区切ることで格子空間を生成し、前記第2位置情報の各計測点を所定のハッシュ関数を用いて前記格子空間に投影し、前記格子空間の各位置における前記計測点の存在の有無を示すハッシュテーブルを生成し、前記第1位置情報の各計測点を前記ハッシュ関数を用いて前記格子空間に投影し、ある計測点の前記格子空間における位置が前記ハッシュテーブルに存在した場合、前記一致度に前記ポイントを付与することが好ましい。   (2) The degree-of-match calculation unit generates a lattice space by dividing the peripheral space into a lattice shape based on the fixed distance, and uses the predetermined hash function to calculate each measurement point of the second position information. Projecting onto the lattice space, generating a hash table indicating the presence or absence of the measurement points at each position in the lattice space, and projecting each measurement point of the first position information onto the lattice space using the hash function When the position of a certain measurement point in the lattice space is present in the hash table, the point is preferably given to the degree of coincidence.

この構成によれば、第2位置情報の各計測点が所定のハッシュ関数を用いて格子空間に投影され、各計測点の存在の有無を示すハッシュテーブルが生成される。そして、第1位置情報の各計測点もハッシュ関数を用いて格子空間に投影され、投影された計測点の位置がハッシュテーブルに存在すれば、第1位置情報を構成するある計測点の近傍に第2位置情報を構成するある計測点が存在するとみなされ、一致度に所定のポイントが付与される。このように、本構成では、第1、第2位置情報の計測点のハッシュ値同士を比較することで一致度が算出されているため、一致度を最大とする平行移動量及び回転移動量を高速に求めることができる。   According to this configuration, each measurement point of the second position information is projected onto the lattice space using a predetermined hash function, and a hash table indicating the presence / absence of each measurement point is generated. Then, each measurement point of the first position information is also projected onto the lattice space using a hash function, and if the position of the projected measurement point exists in the hash table, it is in the vicinity of a certain measurement point constituting the first position information. A certain measurement point constituting the second position information is considered to exist, and a predetermined point is given to the degree of coincidence. As described above, in this configuration, since the degree of coincidence is calculated by comparing the hash values of the measurement points of the first and second position information, the parallel movement amount and the rotational movement amount that maximize the degree of coincidence are calculated. It can be obtained at high speed.

(3)前記一致度算出部は、種類の異なる複数のハッシュ関数を用いて前記ハッシュテーブルを複数生成し、前記第1位置情報のある計測点を各ハッシュ関数を用いて前記格子空間に投影し、いずれかの位置が対応するハッシュテーブルに存在した場合、前記一致度に前記ポイントを付与することが好ましい。   (3) The coincidence calculation unit generates a plurality of the hash tables using a plurality of different hash functions, and projects a measurement point having the first position information onto the lattice space using each hash function. When any position exists in the corresponding hash table, it is preferable to give the point to the degree of coincidence.

この構成によれば、複数のハッシュテーブルが採用されているため、第1位置情報のある計測点が第2位置情報のある計測点に対し、距離εの範囲内にあるにも関わらず、たまたまハッシュテーブルにはハッシュ値が存在しなかったというような、探索ミスを防止することができる。   According to this configuration, since a plurality of hash tables are employed, it happens to happen even though the measurement point with the first position information is within the range of the distance ε with respect to the measurement point with the second position information. Search errors such as no hash value in the hash table can be prevented.

(4)前記推定部は、前記平行移動量及び前記回転移動量をランダムに変化させて前記第1位置情報からn1(n1は正の整数)個の探索候補を生成する第1処理と、各探索候補の前記一致度に基づき、各探索候補の重み値を算出し、算出した重み値に基づいて、n2(n2<n1)個の探索候補を抽出する第2処理と、抽出したn2個の探索候補のそれぞれについて、所定の確率分布に基づいて前記平行移動量及び前記回転移動量を変化させてn3(n3は正の整数)個の探索候補を生成する第3処理と、前記n3個の探索候補のそれぞれに対し、前記重み値を算出し、算出した重み値が最大となる探索候補を探索解として求める第4処理とを備えることが好ましい。   (4) The estimation unit randomly changes the parallel movement amount and the rotational movement amount to generate n1 (n1 is a positive integer) search candidates from the first position information, and Based on the matching degree of the search candidates, a weight value of each search candidate is calculated, and based on the calculated weight value, n2 (n2 <n1) search candidates are extracted, and the extracted n2 pieces For each search candidate, a third process of generating n3 (n3 is a positive integer) search candidates by changing the parallel movement amount and the rotational movement amount based on a predetermined probability distribution, and the n3 It is preferable to include a fourth process for calculating the weight value for each search candidate and obtaining a search candidate having the maximum calculated weight value as a search solution.

この構成によれば、解となる可能性の高い位置に重点的に第1位置情報がずらされて、複数の探索候補が生成されて第2位置情報との一致度が求められている。そのため、一致度を最大にする探索候補を効率良く算出することができる。   According to this configuration, the first position information is shifted to a position that is likely to be a solution, a plurality of search candidates are generated, and the degree of coincidence with the second position information is obtained. Therefore, search candidates that maximize the degree of matching can be calculated efficiently.

(5)前記第4処理は、前記第2、第3処理を所定回数繰り返し、前記重み値が最大となる探索候補を前記探索解として求めることが好ましい。   (5) Preferably, in the fourth process, the second and third processes are repeated a predetermined number of times, and a search candidate that maximizes the weight value is obtained as the search solution.

この構成によれば、第2、第3処理が繰り返されるため、一致度を最大にする探索候補をより正確に算出することができる。   According to this configuration, since the second and third processes are repeated, a search candidate that maximizes the degree of coincidence can be calculated more accurately.

(6)前記移動体のオドメトリを算出するオドメトリ算出部を更に備え、前記第1処理は、前記オドメトリから得られる前記移動体の位置の事前確率に基づき、前記平行移動量及び前記回転移動量をランダムに変化させてn1個の探索候補を生成することが好ましい。   (6) An odometry calculating unit that calculates odometry of the moving body is further provided, and the first process calculates the parallel movement amount and the rotational movement amount based on a prior probability of the position of the moving body obtained from the odometry. It is preferable to generate n1 search candidates by randomly changing the search candidates.

この構成によれば、第1処理において、解となる可能性の高い位置に重点的に第1位置情報をずらして探索候補を生成することができ、探索精度をより高めることができる。   According to this configuration, in the first process, search candidates can be generated by shifting the first position information with a focus on positions that are likely to be solutions, and search accuracy can be further improved.

(7)上記の移動体は、(1)〜(6)のいずれかの移動体と、前記位置情報を取得する位置センサとを備える。   (7) The mobile body includes any one of (1) to (6) and a position sensor that acquires the position information.

この構成によれば、未知環境下において自己位置を精度良く推定しながら、移動することができる移動体を提供することができる。
According to this configuration, it is possible to provide a moving body that can move while accurately estimating its own position in an unknown environment.

Claims (9)

移動体の自己位置を推定する自己位置推定装置であって、
前記移動体の周辺空間に存在する各物体の位置情報を時系列に取得する位置情報取得部と、
前記位置情報取得部により第1時刻で取得された第1位置情報を、前記第1時刻と時系列的に前又は後の時刻である第2時刻で取得された第2位置情報に対して平行移動及び回転移動させたときの前記第1位置情報と前記第2位置情報との一致度を算出する一致度算出部と、
前記第1位置情報の平行移動量及び回転移動量を変更させて、前記一致度を最大にする前記平行移動量及び前記回転移動量を探索し、前記自己位置を推定する推定部とを備え、
前記一致度算出部は、前記第1位置情報を構成するある計測点に対し、一定距離内に前記第2位置情報を構成するある計測点が存在すれば、前記一致度に所定のポイントを付与し、付与したポイントの合計値を前記一致度として算出する自己位置推定装置。
A self-position estimation device for estimating a self-position of a moving object,
A position information acquisition unit that acquires, in a time series, position information of each object existing in the surrounding space of the moving body;
The first position information acquired at the first time by the position information acquisition unit is parallel to the second position information acquired at the second time which is the time before or after the first time in time series. A degree of coincidence calculation unit that calculates the degree of coincidence between the first position information and the second position information when moved and rotated;
An estimation unit that changes the parallel movement amount and the rotational movement amount of the first position information, searches for the parallel movement amount and the rotational movement amount that maximizes the degree of coincidence, and estimates the self-position;
The coincidence degree calculation unit assigns a predetermined point to the coincidence degree when a certain measurement point constituting the second position information exists within a certain distance with respect to a certain measurement point constituting the first position information. And a self-position estimation device that calculates the total value of the given points as the degree of coincidence.
前記一致度算出部は、前記周辺空間を前記一定距離に基づいて格子状に区切ることで格子空間を生成し、前記第2位置情報の各計測点を所定のハッシュ関数を用いて前記格子空間に投影し、前記格子空間の各位置における前記計測点の存在の有無を示すハッシュテーブルを生成し、前記第1位置情報の各計測点を前記ハッシュ関数を用いて前記格子空間に投影し、ある計測点の前記格子空間における位置が前記ハッシュテーブルに存在した場合、前記一致度に前記ポイントを付与する請求項1記載の自己位置推定装置。   The coincidence calculation unit generates a lattice space by dividing the surrounding space into a lattice shape based on the fixed distance, and uses the predetermined hash function to set each measurement point of the second position information in the lattice space. Projecting, generating a hash table indicating the presence / absence of the measurement point at each position in the lattice space, projecting each measurement point of the first position information onto the lattice space using the hash function, and performing a measurement The self-position estimating apparatus according to claim 1, wherein when the position of the point in the lattice space exists in the hash table, the point is given to the degree of coincidence. 前記一致度算出部は、種類の異なる複数のハッシュ関数を用いて前記ハッシュテーブルを複数生成し、前記第1位置情報のある計測点を各ハッシュ関数を用いて前記格子空間に投影し、いずれかの位置が対応するハッシュテーブルに存在した場合、前記一致度に前記ポイントを付与する請求項2記載の自己位置推定装置。   The coincidence calculation unit generates a plurality of the hash tables using a plurality of different hash functions, and projects a measurement point having the first position information onto the lattice space using each hash function, The self-position estimation apparatus according to claim 2, wherein the point is assigned to the degree of coincidence when the position of is present in a corresponding hash table. 前記推定部は、
前記平行移動量及び前記回転移動量をランダムに変化させて前記第1位置情報からn1(n1は正の整数)個の探索候補を生成する第1処理と、
各探索候補の前記一致度に基づき、各探索候補の重み値を算出し、算出した重み値に基づいて、n2(n2<n1)個の探索候補を抽出する第2処理と、
抽出したn2個の探索候補のそれぞれについて、所定の確率分布に基づいて前記平行移動量及び前記回転移動量を変化させてn3(n3は正の整数)個の探索候補を生成する第3処理と、
前記n3個の探索候補のそれぞれに対し、前記重み値を算出し、算出した重み値が最大となる探索候補を探索解として求める第4処理とを備える請求項1〜3のいずれかに記載の自己位置推定装置。
The estimation unit includes
A first process for generating n1 (n1 is a positive integer) search candidates from the first position information by randomly changing the parallel movement amount and the rotational movement amount;
A second process of calculating a weight value of each search candidate based on the matching degree of each search candidate and extracting n2 (n2 <n1) search candidates based on the calculated weight value;
A third process for generating n3 (n3 is a positive integer) search candidates by changing the parallel movement amount and the rotational movement amount based on a predetermined probability distribution for each of the extracted n2 search candidates; ,
4. A fourth process according to claim 1, further comprising: a fourth process for calculating the weight value for each of the n3 search candidates and obtaining a search candidate having the maximum calculated weight value as a search solution. Self-position estimation device.
前記第4処理は、前記第2、第3処理を所定回数繰り返し、前記重み値が最大となる探索候補を前記探索解として求める請求項4記載の自己位置推定装置。   5. The self-position estimation apparatus according to claim 4, wherein in the fourth process, the second and third processes are repeated a predetermined number of times, and a search candidate having the maximum weight value is obtained as the search solution. 前記移動体のオドメトリを算出するオドメトリ算出部を更に備え、
前記第1処理は、前記オドメトリから得られる前記移動体の位置の事前確率に基づき、前記平行移動量及び前記回転移動量をランダムに変化させてn1個の探索候補を生成する請求項4又は5記載の自己位置推定装置。
An odometry calculating unit for calculating odometry of the mobile body;
6. The first process generates n1 search candidates by randomly changing the parallel movement amount and the rotational movement amount based on a prior probability of the position of the moving body obtained from the odometry. The self-position estimation apparatus described.
請求項1〜6のいずれかに記載の自己位置推定装置と、
前記位置情報を取得する位置センサとを備える移動体。
A self-position estimation apparatus according to any one of claims 1 to 6;
A moving body comprising: a position sensor that acquires the position information.
移動体の自己位置を推定する自己位置推定方法であって、
コンピュータが、前記移動体の周辺空間に存在する各物体の位置情報を時系列に取得する位置情報取得ステップと、
コンピュータが、前記位置情報取得ステップにより第1時刻で取得された第1位置情報を、前記第1時刻と時系列的に前又は後の時刻である第2時刻で取得された第2位置情報に対して平行移動及び回転移動させたときの前記第1位置情報と前記第2位置情報との一致度を算出する一致度算出ステップと、
コンピュータが、前記第1位置情報の前記平行移動量及び前記回転移動量を変更させて、前記一致度を最大にする前記平行移動量及び前記回転移動量を探索し、前記自己位置を推定する推定ステップとを備え、
前記一致度算出ステップは、前記第1位置情報のある計測点から一定距離内に前記第2位置情報のある計測点が存在すれば、前記一致度に所定のポイントを付与し、前記ポイントの加算値を前記一致度として算出する自己位置推定方法。
A self-position estimation method for estimating a self-position of a moving object,
A position information acquisition step in which a computer acquires position information of each object existing in the surrounding space of the moving body in time series;
The computer replaces the first position information acquired at the first time by the position information acquisition step with the second position information acquired at the second time which is time before or after the first time. A degree of coincidence calculation step of calculating a degree of coincidence between the first position information and the second position information when translated and rotationally moved.
An estimation in which the computer searches the parallel movement amount and the rotational movement amount to maximize the matching degree by estimating the self-position by changing the parallel movement amount and the rotational movement amount of the first position information. With steps,
In the coincidence calculation step, if there is a measurement point with the second position information within a certain distance from the measurement point with the first position information, a predetermined point is given to the coincidence, and the addition of the points A self-position estimation method for calculating a value as the degree of coincidence.
移動体の自己位置を推定する自己位置推定プログラムであって、
前記移動体の周辺空間に存在する各物体の位置情報を時系列に取得する位置情報取得部と、
前記位置情報取得部により第1時刻で取得された第1位置情報を、前記第1時刻と時系列的に前又は後の時刻である第2時刻で取得された第2位置情報に対して平行移動及び回転移動させたときの前記第1位置情報と前記第2位置情報との一致度を算出する一致度算出部と、
前記第1位置情報の前記平行移動量及び前記回転移動量を変更させて、前記一致度を最大にする前記平行移動量及び前記回転移動量を探索し、前記自己位置を推定する推定部としてコンピュータを機能させ、
前記一致度算出部は、前記第1位置情報のある計測点から一定距離内に前記第2位置情報のある計測点が存在すれば、前記一致度に所定のポイントを付与し、前記ポイントの加算値を前記一致度として算出する自己位置推定プログラム。
A self-position estimation program for estimating the self-position of a moving object,
A position information acquisition unit that acquires, in a time series, position information of each object existing in the surrounding space of the moving body;
The first position information acquired at the first time by the position information acquisition unit is parallel to the second position information acquired at the second time which is the time before or after the first time in time series. A degree of coincidence calculation unit that calculates the degree of coincidence between the first position information and the second position information when moved and rotated;
A computer serving as an estimation unit that changes the parallel movement amount and the rotational movement amount of the first position information, searches for the parallel movement amount and the rotational movement amount that maximizes the degree of coincidence, and estimates the self-position. Function
The coincidence calculation unit gives a predetermined point to the coincidence when the measurement point with the second position information exists within a certain distance from the measurement point with the first position information, and adds the points A self-position estimation program for calculating a value as the degree of coincidence.
JP2013521307A 2011-06-21 2011-12-07 Self-position estimation device, self-position estimation method, self-position estimation program, and moving object Active JP5892663B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013521307A JP5892663B2 (en) 2011-06-21 2011-12-07 Self-position estimation device, self-position estimation method, self-position estimation program, and moving object

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2011137623 2011-06-21
JP2011137623 2011-06-21
JP2013521307A JP5892663B2 (en) 2011-06-21 2011-12-07 Self-position estimation device, self-position estimation method, self-position estimation program, and moving object
PCT/JP2011/006846 WO2012176249A1 (en) 2011-06-21 2011-12-07 Self-position estimation device, self-position estimation method, self-position estimation program, and mobile object

Publications (2)

Publication Number Publication Date
JPWO2012176249A1 true JPWO2012176249A1 (en) 2015-04-27
JP5892663B2 JP5892663B2 (en) 2016-03-23

Family

ID=47422131

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013521307A Active JP5892663B2 (en) 2011-06-21 2011-12-07 Self-position estimation device, self-position estimation method, self-position estimation program, and moving object

Country Status (2)

Country Link
JP (1) JP5892663B2 (en)
WO (1) WO2012176249A1 (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6272460B2 (en) * 2014-03-31 2018-01-31 株式会社日立産機システム 3D map generation system
JP6260509B2 (en) * 2014-10-06 2018-01-17 トヨタ自動車株式会社 robot
JP6500385B2 (en) * 2014-10-17 2019-04-17 村田機械株式会社 Moving amount estimation device, autonomous moving body, and moving amount estimation method
JP6626248B2 (en) 2014-11-12 2019-12-25 村田機械株式会社 Moving amount estimating apparatus, autonomous moving body, and moving amount estimating method
JP6481347B2 (en) * 2014-11-28 2019-03-13 村田機械株式会社 Travel amount estimation device, autonomous mobile body, and travel amount estimation method
EP3358294A4 (en) * 2015-09-30 2019-04-10 Sony Corporation Information processing device, information processing method and program
JP6430973B2 (en) * 2016-01-20 2018-11-28 ヤフー株式会社 Information processing apparatus, information processing method, and program
CN110998473A (en) * 2017-09-04 2020-04-10 日本电产株式会社 Position estimation system and mobile body having the same
CN108596409B (en) * 2018-07-16 2021-07-20 江苏智通交通科技有限公司 Method for improving accident risk prediction precision of traffic hazard personnel
CN110095788A (en) * 2019-05-29 2019-08-06 电子科技大学 A kind of RBPF-SLAM improved method based on grey wolf optimization algorithm
US11262759B2 (en) * 2019-10-16 2022-03-01 Huawei Technologies Co., Ltd. Method and system for localization of an autonomous vehicle in real time
JP7322799B2 (en) 2020-05-01 2023-08-08 株式会社豊田自動織機 Self-localization device
JP7452681B2 (en) 2020-09-28 2024-03-19 日本電気株式会社 Measuring device, information processing device, alignment method, and program

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08261719A (en) * 1995-03-17 1996-10-11 Toshiba Corp Device and method for calculating amount of relative movement
US20050216426A1 (en) * 2001-05-18 2005-09-29 Weston Jason Aaron E Methods for feature selection in a learning machine
US20070112700A1 (en) * 2004-04-22 2007-05-17 Frontline Robotics Inc. Open control system architecture for mobile autonomous systems
JP2007164783A (en) * 2005-11-29 2007-06-28 Mitsubishi Electric Research Laboratories Inc Computer implemented method for maximizing candidate solution to cardinally constrained combinatorial optimization problem of sparse principal component analysis and solving the optimization problem
JP2008040677A (en) * 2006-08-03 2008-02-21 Toyota Motor Corp Own-location estimation device
JP2010262546A (en) * 2009-05-09 2010-11-18 Univ Of Fukui Two-dimensional graphic matching method
JP2011048706A (en) * 2009-08-28 2011-03-10 Fujitsu Ltd Device, method, and program for automatically generating map by sensor fusion and moving mobile body by using the map automatically generated

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08261719A (en) * 1995-03-17 1996-10-11 Toshiba Corp Device and method for calculating amount of relative movement
US20050216426A1 (en) * 2001-05-18 2005-09-29 Weston Jason Aaron E Methods for feature selection in a learning machine
US20070112700A1 (en) * 2004-04-22 2007-05-17 Frontline Robotics Inc. Open control system architecture for mobile autonomous systems
JP2007164783A (en) * 2005-11-29 2007-06-28 Mitsubishi Electric Research Laboratories Inc Computer implemented method for maximizing candidate solution to cardinally constrained combinatorial optimization problem of sparse principal component analysis and solving the optimization problem
JP2008040677A (en) * 2006-08-03 2008-02-21 Toyota Motor Corp Own-location estimation device
JP2010262546A (en) * 2009-05-09 2010-11-18 Univ Of Fukui Two-dimensional graphic matching method
JP2011048706A (en) * 2009-08-28 2011-03-10 Fujitsu Ltd Device, method, and program for automatically generating map by sensor fusion and moving mobile body by using the map automatically generated

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
日永田佑介: "L0ノルム最小化を利用した動的な混雑環境下に適用可能なリアルタイムSLAM", 奈良先端科学技術大学院大学修士論文, JPN6012004091, 24 May 2011 (2011-05-24), ISSN: 0003250877 *

Also Published As

Publication number Publication date
WO2012176249A1 (en) 2012-12-27
JP5892663B2 (en) 2016-03-23

Similar Documents

Publication Publication Date Title
JP5892663B2 (en) Self-position estimation device, self-position estimation method, self-position estimation program, and moving object
JP6849330B2 (en) Map generation method, self-position estimation method, robot system, and robot
JP7270338B2 (en) Method and apparatus for real-time mapping and localization
JP6405778B2 (en) Object tracking method and object tracking apparatus
KR100926783B1 (en) Method for self-localization of a robot based on object recognition and environment information around the recognized object
KR100866380B1 (en) Method for esrimating location using ObjectionRecognition of a robot
KR101572851B1 (en) Method for building map of mobile platform in dynamic environment
JP5181704B2 (en) Data processing apparatus, posture estimation system, posture estimation method and program
CN110967711A (en) Data acquisition method and system
WO2016210227A1 (en) Aligning 3d point clouds using loop closures
US11703334B2 (en) Mobile robots to generate reference maps for localization
JP2005528707A (en) Feature mapping between data sets
Lee et al. Vision-based kidnap recovery with SLAM for home cleaning robots
Andreasson et al. Mini-SLAM: Minimalistic visual SLAM in large-scale environments based on a new interpretation of image similarity
Ahn et al. A practical approach for EKF-SLAM in an indoor environment: fusing ultrasonic sensors and stereo camera
WO2017038012A1 (en) Mapping method, localization method, robot system, and robot
Alcantarilla et al. Learning visibility of landmarks for vision-based localization
US20230117498A1 (en) Visual-inertial localisation in an existing map
Shoukat et al. Cognitive robotics: Deep learning approaches for trajectory and motion control in complex environment
Zhang et al. Continuous indoor visual localization using a spatial model and constraint
Heinemann et al. A combined monte-carlo localization and tracking algorithm for robocup
Sohn et al. Sequential modelling of building rooftops by integrating airborne LiDAR data and optical imagery: preliminary results
Kim et al. Vision-based navigation with efficient scene recognition
Monica et al. Vision only 3-d shape estimation for autonomous driving
Baligh Jahromi et al. Layout slam with model based loop closure for 3d indoor corridor reconstruction

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160118

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: 20160209

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160219

R150 Certificate of patent or registration of utility model

Ref document number: 5892663

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250