JP2009109200A - Position attitude estimation system, position attitude estimation device, and position attitude estimation method - Google Patents

Position attitude estimation system, position attitude estimation device, and position attitude estimation method Download PDF

Info

Publication number
JP2009109200A
JP2009109200A JP2007278496A JP2007278496A JP2009109200A JP 2009109200 A JP2009109200 A JP 2009109200A JP 2007278496 A JP2007278496 A JP 2007278496A JP 2007278496 A JP2007278496 A JP 2007278496A JP 2009109200 A JP2009109200 A JP 2009109200A
Authority
JP
Japan
Prior art keywords
map
evaluation
pixel
distance
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007278496A
Other languages
Japanese (ja)
Inventor
Toshio Moriya
俊夫 守屋
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2007278496A priority Critical patent/JP2009109200A/en
Publication of JP2009109200A publication Critical patent/JP2009109200A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Navigation (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a position attitude estimation system 10 reducing furthermore a calculation amount, in a matching method based on a sensing data list. <P>SOLUTION: In this position attitude estimation system 10, a means 150 for generating a reference data group performs: a processing 102 for generating the first reference data group 103 from an environmental map 101: and a processing 104 for generating the second reference data group 105 by a differential processing of the first reference data group 103. A means 170 for estimating a position attitude, performs: a processing 120 for selecting necessary data from the first reference data group 103 and the second reference data group 105 based on sensing data 107; a processing 121 for generating data 122 for new evaluation by adding a plurality of selected reference data to data 122 for evaluation generated in the last time; and a processing 123 for determining a position attitude estimation value 124 from the data 122 for evaluation. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、移動ロボットの自律移動制御等において利用される、実環境内における自己の位置姿勢を認識する技術に関する。特に、移動ロボットが目的地まで人の操作なしに自動的に到達することを目的とし、移動ロボットの位置姿勢を、移動ロボットに搭載された距離センサからのセンシングデータと、環境の幾何状況を示した二次元の環境地図とを用いて算出する技術に関する。   The present invention relates to a technique for recognizing a position and orientation of a self in an actual environment, which is used in autonomous movement control of a mobile robot. In particular, for the purpose of the mobile robot reaching the destination automatically without human operation, the position and orientation of the mobile robot are shown by sensing data from the distance sensor mounted on the mobile robot and the geometric state of the environment. The present invention relates to a technique for calculating using a two-dimensional environmental map.

まず、距離センサと二次元の環境地図を用いて移動ロボットの位置姿勢を推定する従来の方法について説明する。   First, a conventional method for estimating the position and orientation of a mobile robot using a distance sensor and a two-dimensional environment map will be described.

ここで距離センサとは、距離センサの周辺の複数の方向について、障害物までの距離を計測できるものである。仕様としてさまざまなものが考えられるが、ここでは図13および図14に示すように、ある高さの水平面上を距離センサ421の正面に対して-90°から+90°の方向に、1°毎の合計181通りの異なる方向について、障害物422までの距離データが瞬時に計測できるものを想定する。よって各センシングデータ431は、角度φと距離dの組み合わせとして(d00),(d11),...,(d180180)としてあらわされる。 Here, the distance sensor can measure the distance to an obstacle in a plurality of directions around the distance sensor. Various specifications can be considered, but here, as shown in FIGS. 13 and 14, 1 ° in a direction from −90 ° to + 90 ° with respect to the front of the distance sensor 421 on a horizontal plane at a certain height. Assume that distance data to the obstacle 422 can be instantaneously measured for a total of 181 different directions for each. Therefore, each sensing data 431 is expressed as (d 0 , φ 0 ), (d 1 , φ 1 ),..., (D 180 , φ 180 ) as a combination of the angle φ and the distance d.

ここで各変数の数字の添え字はデータ番号で、φiはi番目の測定方向を示す。測定方向とは、反時計回りを正方向とし、距離センサの主方向となす角度であり、主方向とのなす角度が小さい順にデータ番号が割り当てられる。すなわちφ0=-90°,φ1=-89°,...,φ180=+90.0°を示す。また、diは、それぞれの方向における障害物までの距離を示す。 Here, the numerical subscript of each variable is a data number, and φ i indicates the i-th measurement direction. The measurement direction is an angle made counterclockwise as the positive direction and the main direction of the distance sensor, and data numbers are assigned in ascending order of the angle made with the main direction. That is, φ 0 = −90 °, φ 1 = −89 °,..., Φ 180 = + 90.0 °. D i indicates the distance to the obstacle in each direction.

なお、ここでは距離センサの測定能力を考慮し、測定可能距離を0.0mより大きく4.0m以下と想定し、diの値の範囲を、0.0m<di≦4.0mに制限することとする。また、この181個の距離データを1まとまりとして、1フレーム分のセンシングデータ群430と呼ぶこととする。また、(dii)であらわされたパラメータは、センシングデータの位置、すなわち障害物の位置を、距離センサの原点位置を原点とした極座標で表現したものと等価になるが、これをxi=di・cos(φi)、yi=di・sin(φi)とすることで、(xi,yi)の形の直交座標表現に変換することもできる。 Here, considering the ability to measure the distance sensor, the measurable distance assumes greater 4.0m follows from 0.0 m, the range of values of d i, and be limited to 0.0 m <d i ≦ 4.0m . Further, the 181 distance data are grouped as one group and referred to as a sensing data group 430 for one frame. The parameter expressed by (d i , φ i ) is equivalent to the position of the sensing data, that is, the position of the obstacle expressed in polar coordinates with the origin of the distance sensor as the origin. By setting x i = d i · cos (φ i ) and y i = d i · sin (φ i ), it is also possible to convert to a rectangular coordinate representation of the form (x i , y i ).

一方、二次元の環境地図とは、距離センサ421による測定高さ断面での障害物422の存在を、図15に示すようなディジタル画像としてあらわしたものである。ここでは図15に示すように、障害物が存在しない場所を白を示す画素値441、障害物が存在する場所を黒を示す画素値442としてあらわすことにする。   On the other hand, the two-dimensional environment map represents the presence of the obstacle 422 on the cross section measured by the distance sensor 421 as a digital image as shown in FIG. Here, as shown in FIG. 15, a place where no obstacle exists is represented as a pixel value 441 indicating white, and a place where an obstacle exists is represented as a pixel value 442 indicating black.

移動ロボット420は、図13に示すように平らな地面上を移動するものと仮定する。よってその移動によって変化する位置姿勢に関する自由度は、位置について(x,y)の2パラメータ、姿勢については移動ロボットが向く方向角度に関するθの1パラメータの、合計3パラメータである。なお、これらのパラメータをあらわす座標系は、図15に示すような環境地図があらわわれる座標系と一致させるものとする。   It is assumed that the mobile robot 420 moves on a flat ground as shown in FIG. Therefore, the degree of freedom relating to the position and orientation that changes due to the movement is a total of three parameters, that is, two parameters (x, y) for the position and one parameter θ for the orientation angle that the mobile robot faces. Note that the coordinate system representing these parameters is made to coincide with the coordinate system representing the environment map as shown in FIG.

移動ロボットの位置姿勢を推定することとは、任意の位置姿勢にある移動ロボットのセンシングデータから、上記(x,y,θ)の3パラメータを求めることを意味する。よって、本発明が対象とする機能は、任意の位置姿勢にある移動ロボットの位置姿勢パラメータ(x,y,θ)を、移動ロボットに搭載された距離センサによるセンシングデータと、あらかじめ用意された環境地図を用いて求めることとなる。   Estimating the position and orientation of the mobile robot means obtaining the three parameters (x, y, θ) from the sensing data of the mobile robot in an arbitrary position and orientation. Therefore, the functions targeted by the present invention are the position and orientation parameters (x, y, θ) of a mobile robot in an arbitrary position and orientation, sensing data from a distance sensor mounted on the mobile robot, and an environment prepared in advance. It will be obtained using a map.

本機能を実現する手段として、いくつかの方法が考えられるが、ここではその最も基本的な方法となるマッチング方法を説明する。   Several methods can be considered as means for realizing this function. Here, a matching method which is the most basic method will be described.

マッチング方法とは、あるフレームにおいて計測されたセンシングデータ全体の位置および姿勢(方向)を変えながら、当該センシングデータを環境地図に重ね合わせ、センシングデータと環境地図とが最もマッチする位置および姿勢を探し出し、これをもって移動ロボットの位置姿勢パラメータの推定値とするというものである。その原理は、移動ロボットがその位置および姿勢にあるときに、計測されたデータと同じデータが最も高い確率で得られるであろうという考え方に基づいている。   The matching method is to superimpose the sensing data on the environment map while changing the position and orientation (direction) of the entire sensing data measured in a certain frame, and find the position and orientation where the sensing data and the environment map best match. This is the estimated value of the position and orientation parameter of the mobile robot. The principle is based on the idea that when the mobile robot is in its position and posture, the same data as the measured data will be obtained with the highest probability.

このようなマッチング方法は、具体的には以下に述べるような処理によって実施される。
(1) あるフレームにおけるすべてのセンシングデータ(前述した距離センサの例では181個)に対して、これを地図上でθだけ回転させ、(x,y)だけ平行移動させた位置を求める。
(2) それらの位置の環境地図上の画素値を参照し、1の値をもつもの(障害物があるもの)の数を数え、これをそのパラメータ (x,y,θ)における評価値とする。
(3) 上記(1)および(2)の処理を、考えられうるすべての値をもつ(x,y,θ)の組み合わせについて、評価値が最も大きい(x,y,θ)を解とする。
Such a matching method is specifically implemented by the processing described below.
(1) For all the sensing data in a certain frame (181 in the example of the distance sensor described above), this is rotated by θ on the map, and the position translated by (x, y) is obtained.
(2) Referring to the pixel values on the environment map at those positions, count the number of objects with a value of 1 (there is an obstacle), and use this as the evaluation value for that parameter (x, y, θ). To do.
(3) For the combinations of (x, y, θ) that have all possible values, the solution of (1) and (2) above is the solution with the highest evaluation value (x, y, θ) .

上記の手法を、基本手法によるマッチング方法と呼ぶことにする。図16に基本手法によるマッチング方法の概要を示す。図15に示した環境地図440と、図16(a)に示したセンシングデータ群430とが与えられたときに、この方法によって最もマッチすると判断された状況が図16(b)の位置450および方向451となる。このときの平行移動成分(x,y)と、回転成分θが、移動ロボット位置姿勢パラメータの推定値となる。   The above method will be referred to as a matching method based on the basic method. FIG. 16 shows an outline of the matching method based on the basic method. When the environment map 440 shown in FIG. 15 and the sensing data group 430 shown in FIG. 16 (a) are given, the situation determined to be the best match by this method is the position 450 and FIG. 16 (b). The direction is 451. The translation component (x, y) and the rotation component θ at this time are estimated values of the mobile robot position and orientation parameters.

さて、基本手法によるマッチング方法は、処理量が膨大になるという問題がある。具体的には、環境地図のサイズ、すなわち対象とする部屋等移動ロボットが移動可能なエリアのサイズを例えば10m×10mとし、マッチングの粒度、すなわちどの程度の細かさでマッチングの際のパラメータを変化させていくかについて、その最小単位を、位置すなわち(x,y)パラメータに関して例えば10cm、姿勢すなわちθパラメータに関して例えば1°とすると、上述した基本手法によるマッチング方法では、181×360×101×101 = 664,697,160回の画素値の参照演算が必要となる。   The matching method based on the basic method has a problem that the processing amount is enormous. Specifically, the size of the environment map, that is, the size of the area where the mobile robot can move, such as the target room, is 10 m × 10 m, for example, and the matching granularity, that is, how fine the parameters are changed Assuming that the minimum unit is 10 cm for the position, ie, (x, y) parameter, and 1 °, for example, the orientation, ie, the θ parameter, the matching method based on the basic method described above is 181 × 360 × 101 × 101. = 664,697,160 pixel value reference operations are required.

ここで、「181」はデータ数、「360」は回転角度θがとりうる値の数(0°,1°,2°,...,359°の360通り)、「101」はx方向の移動量がとりうる値の数(-5.0m,-4.9m,...,+5.0mの101通り、次の「101」は同じようにy方向の移動量がとりうる値の数(-5.0m,-4.9m,...,+5.0mの101通り)である。   Here, “181” is the number of data, “360” is the number of values that the rotation angle θ can take (360 degrees of 0 °, 1 °, 2 °,..., 359 °), and “101” is the x direction. The number of values that the movement amount of can take (101 of -5.0m, -4.9m, ..., + 5.0m, the next "101" is the number of values that the movement amount in the y direction can take ( -5.0m, -4.9m, ..., + 5.0m 101 ways).

マッチング方法は、一般にコンピュータ等の計算機で行うことが想定される。上述した基本手法によるマッチング方法で行われる画素値の参照演算は、1つ1つはそれほど大きな計算負荷にならないが、その量が膨大であれば、その量にほぼ比例して計算負荷が増大することになる。上述した参照演算回数の具体例は、一般的に流通している現在の計算機の能力を考慮すると、一般的に、実用上また実装上無視できないオーダの計算量となっている。   It is assumed that the matching method is generally performed by a computer or the like. Each of the pixel value reference calculations performed by the matching method based on the basic method described above is not so much computational load, but if the amount is enormous, the computational load increases in proportion to the amount. It will be. The above-described specific example of the number of reference computations generally has an order calculation amount that cannot be ignored in practical use or implementation in consideration of the ability of currently distributed computers.

このような、処理量が膨大になるという基本手法によるマッチング方法の問題点を解決する方法として、例えば非特許文献1には、センシングデータリストセンシングデータリストに基づくマッチング方法が提案されている。この考えに基づく処理について説明する。なお以降本処理を、センシングデータリストに基づくマッチング方法と呼ぶことにする。   As a method for solving such a problem of the matching method based on the basic method that the processing amount becomes enormous, for example, Non-Patent Document 1 proposes a matching method based on a sensing data list sensing data list. Processing based on this idea will be described. Hereinafter, this processing is referred to as a matching method based on the sensing data list.

ここで説明を簡単にするため、移動ロボットの移動は並進運動だけで、回転運動は行われないものと仮定する。すなわち、推定するパラメータは(x,y)の2つで、θについてはここでは0に固定するものとする。   In order to simplify the explanation here, it is assumed that the movement of the mobile robot is only a translational motion and no rotational motion is performed. That is, two parameters to be estimated are (x, y), and θ is fixed to 0 here.

まず、上述した基本手法によるマッチング方法を考える。ここでは、図17に示すようなセンシングデータ群460と環境地図463とが与えられることを想定する。なお以降用いる図では説明を簡単にするため、画素の詳細度を荒くし、センシングデータの数を少なくして解説するものとする。ここで、図17において、461はセンサ原点、462はセンシングデータであり、図17に示した(0)から(3)の数字の順に、第0番目のセンシングデータ、第1番目のセンシングデータ、第2番目のセンシングデータ、第3番目のセンシングデータと呼ぶこととする。   First, consider the matching method based on the basic method described above. Here, it is assumed that a sensing data group 460 and an environment map 463 as shown in FIG. 17 are given. In the drawings used hereinafter, in order to simplify the description, the detail level of pixels is rough and the number of sensing data is reduced. Here, in FIG. 17, reference numeral 461 denotes a sensor origin, 462 denotes sensing data, and the 0th sensing data, the first sensing data, in the order of the numbers (0) to (3) shown in FIG. It will be referred to as second sensing data and third sensing data.

基本手法によるマッチング方法では、図18に示すように、センシングデータ全体を平行移動させながら環境地図に重ね合わせ、各センシングデータが指し示す、すなわちセンシングデータが重なる画素の値が1であるものの数を、評価値として数えていくことになる。例えば、図18の(x,y)=(-3,-3)では評価値が0、(x,y)=(-1,-3)では評価値が1である。(x,y)=(-1,-1)では評価値が4となり、評価値として最大値となる。この場合、推定値は、(x,y)=(-1,-1)となる。   In the matching method based on the basic method, as shown in FIG. 18, the entire sensing data is overlapped on the environment map while being translated, and the number of pixels where each sensing data points, that is, the pixel value where the sensing data overlaps is 1, It will be counted as an evaluation value. For example, the evaluation value is 0 at (x, y) = (− 3, −3) in FIG. 18, and the evaluation value is 1 at (x, y) = (− 1, −3). When (x, y) = (− 1, −1), the evaluation value is 4, which is the maximum evaluation value. In this case, the estimated value is (x, y) = (− 1, −1).

次に、センシングデータリストに基づくマッチング方法を説明する。   Next, a matching method based on the sensing data list will be described.

いま、図17のセンシングデータ群460における第0番目のセンシングデータに着目すると共に、この第0番目のセンシングデータが指し示す環境地図上の画素値が1になるのは、センシングデータ群全体をどこに移動させた場合であるかを考える。図18からそのような移動は、図19に示した10通りであることがわかる。なお、図19に示す470が、第0番目のセンシングデータである。本例では、環境地図上に画素値が1となる点が10個あるので、移動方法も10通りあることになる。   Now, paying attention to the 0th sensing data in the sensing data group 460 of FIG. 17, the pixel value on the environment map pointed to by the 0th sensing data is 1 where the entire sensing data group is moved Think about what happened. It can be seen from FIG. 18 that there are 10 such movements as shown in FIG. In addition, 470 shown in FIG. 19 is 0th sensing data. In this example, since there are 10 points with a pixel value of 1 on the environment map, there are 10 movement methods.

次に、このときのセンシングデータの原点位置471を、白紙の地図上にプロットすると、その結果は図20に示すようになる。このように作成されたパターンを参照地図、より詳しくは、第0番目のセンシングデータに関する参照地図480と呼ぶこととする。   Next, when the origin position 471 of the sensing data at this time is plotted on a blank map, the result is as shown in FIG. The pattern created in this way is referred to as a reference map, more specifically, a reference map 480 relating to the 0th sensing data.

ところで、この第0番目のセンシングデータに関する参照地図480をよく見ると、色のついた画素パターンは、図17(b)に示した環境地図の画素パターンを図21(d)に示すベクトル成分495だけ平行移動させたものであることがわかる。また、このベクトル成分495は、センシングデータ群における第0番目のセンシングデータ494とセンサ原点493から決まるベクトルの逆方向であることがわかる。   By the way, if the reference map 480 relating to the 0th sensing data is looked closely, the colored pixel pattern is the pixel component of the environmental map shown in FIG. 17B and the vector component 495 shown in FIG. It can be seen that the translation is only performed. It can also be seen that this vector component 495 is in the opposite direction of the vector determined from the 0th sensing data 494 and the sensor origin 493 in the sensing data group.

よって、第0番目のセンシングデータを(d00)とすると、x0=d0・cos(φ0)、y0=d0・sin(φ0)の計算を行うことで、上記ベクトル成分を(x0,y0)の形の直交座標系で表現することができる。これを算出した後に、もとの環境地図をこのベクトル分だけ逆方向に平行移動させてやれば、この第0番目のセンシングデータに関する参照地図480が作成されることになる。 Therefore, if the 0th sensing data is (d 0 , φ 0 ), the calculation of x 0 = d 0 · cos (φ 0 ), y 0 = d 0 · sin (φ 0 ) The vector component can be expressed by an orthogonal coordinate system of the form (x 0 , y 0 ). After calculating this, if the original environmental map is translated in the opposite direction by this vector, the reference map 480 relating to the 0th sensing data is created.

このようにして作成された参照地図480(第0番目のデータに関する参照地図)における、センサ原点481がプロットされた画素の意味は次のようになる。それは、「この位置に原点位置がくるようにセンシングデータを平行移動させてやれば、第0番目のセンシングデータが、環境地図データの1の値を持つ画素に一致する」ということである。   In the reference map 480 created in this way (the reference map related to the 0th data), the meaning of the pixel on which the sensor origin 481 is plotted is as follows. That is, “if the sensing data is translated so that the origin position is at this position, the 0th sensing data matches the pixel having a value of 1 in the environmental map data”.

これは、第0番目のセンシングデータについて考えたときであるが、これを別のセンシングデータについても同様に考えることができる。すなわち、第n番目のセンシングデータについて、それとセンサ原点とがなすベクトルを考え、そのベクトル成分だけ環境地図を反対方向に平行移動させることにより、第n番目のセンシングデータに関する参照地図を作成することができる。   This is the case when the 0th sensing data is considered, but this can be similarly considered for other sensing data. That is, with respect to the nth sensing data, a vector formed by the sensor origin can be considered, and a reference map for the nth sensing data can be created by translating the environment map in the opposite direction by the vector component. it can.

具体的には、第0番目のセンシングデータのときと同様に第n番目のセンシングデータが(dnn)と得られたときに、まずこの直交座標表現の値(xn,yn)をxn=dn・cos(φn)、yn=dn・sin(φn)の計算を行うことにより求める。次に、この値(xn,yn)の分だけ地図画像を平行移動させる。このようにして作成される第n番目のセンシングデータに関する参照地図は、この中の斜線のついた画素にセンシングデータの原点を平行移動させれば、第n番目のセンシングデータが、環境地図の1の値を持つ画素に一致することを意味することになる。 Specifically, when the n-th sensing data is obtained as (d n , φ n ) as in the case of the 0-th sensing data, first, the value (x n , y n ) of this Cartesian coordinate expression is used. ) Is obtained by calculating x n = d n · cos (φ n ) and y n = d n · sin (φ n ). Next, the map image is translated by this value (x n , y n ). The reference map for the n-th sensing data created in this way is obtained by translating the origin of the sensing data to the hatched pixels in the reference map. It means that it matches the pixel having the value of.

上の例ではセンシングデータが4つあるので、それぞれについて参照地図、すなわち図22に示すように、第0番目のセンシングデータに関する参照地図500、第1番目のセンシングデータに関する参照地図501、第2番目のセンシングデータに関する参照地図502、第3番目のセンシングデータに関する参照地図503の合計4つを準備する。   Since there are four sensing data in the above example, as shown in FIG. 22, there are a reference map 500 relating to the 0th sensing data, a reference map 501 relating to the first sensing data, and a second as shown in FIG. A total of four reference maps 502 related to the sensing data of the reference data 503 and reference map 503 related to the third sensing data are prepared.

次に、図23に示すように、この4つの参照地図を重ね合わせ、それぞれの画素についていくつ色のついた画素が重なるかを足し合わせて数えることを考える。それぞれの参照地図の意味が上に述べたとおりなので、この数字は、それぞれの画素の位置にセンシングデータの原点が移動したときに、4つのセンシングデータの中で、環境地図の1の値を持つ画素と一致するものの数をあらわすことになる。   Next, as shown in FIG. 23, it is considered that these four reference maps are overlapped and the number of colored pixels overlapped for each pixel is added and counted. Since the meaning of each reference map is as described above, this number has a value of 1 in the environmental map among the four sensing data when the origin of the sensing data moves to the position of each pixel. It represents the number of objects that match the pixel.

この足し合わせた値を画素値とした画像データは、例えば図24に示すようになり、これを評価画像510と呼ぶことにする。すなわちこの評価画像510における(x,y)の位置の画素値が、上で述べた基本手法によるマッチング方法において、センサを(x,y)だけ移動させたときに算出される評価値をあらわすことになる。よって基本手法によるマッチング方法と同様に、この評価画像510の中で最も大きな画素値をもつものを見つけ、その点の画像上での座標位置を調べてやれば、これが求めるべき移動ロボット位置の推定値となることになる。   Image data in which the added value is a pixel value is as shown in FIG. 24, for example, and is referred to as an evaluation image 510. That is, the pixel value at the position (x, y) in the evaluation image 510 represents the evaluation value calculated when the sensor is moved by (x, y) in the matching method based on the basic method described above. become. Therefore, similarly to the matching method based on the basic method, if the image having the largest pixel value is found in the evaluation image 510 and the coordinate position of the point on the image is examined, the position of the mobile robot to be obtained is estimated. Value.

なお、ここで各参照地図を重ね合わせる処理は、各画像の画素値を調べていくのではなく、予め各参照地図の中で、1の値を持つ画素の位置を (x0,y0),(x1,y1), ... ,(xn,yn)の形で記録しておき、この記録された座標値が示す評価画像の画素の値を、1つずつ増やしていく、すなわちその画素に対して投票していく、という方法で行うものとする。これは後に述べる、参照地図の各画素に対する参照回数を少なくする、すなわち参照地図の中で0の値を持つ画素については参照する必要がなくなる、という効果をもたらすことになる。 Here, the process of superimposing each reference map does not check the pixel value of each image, but the position of a pixel having a value of 1 in each reference map in advance (x 0 , y 0 ) , (x 1 , y 1 ), ..., (x n , y n ) are recorded, and the pixel values of the evaluation image indicated by the recorded coordinate values are incremented one by one. That is, it is performed by a method of voting for the pixel. This has the effect of reducing the number of references to each pixel of the reference map, which will be described later, that is, it is not necessary to refer to a pixel having a value of 0 in the reference map.

この原理に基づき、センシングデータリストに基づくマッチング方法は、以下の手順で処理が行われる。
(1) 考えうるすべてのセンシングデータ位置について、それぞれ参照地図を作成しておく。これはすなわち上の説明で述べたとおり、考えうるすべてのセンシングデータ位置とセンサ原点がなすベクトル毎に、参照地図を作成することになる。なお、参照地図は、実際には画像データの形で記録するのではなく、上に述べたとおり、1の値を持つ画素の位置を順に(x0,y0),(x1,y1), ... ,(xn,yn)のように並べたものとして記録するものとする。
(2) 1フレーム分のセンシングデータ群が与えられたときに、各センシングデータ(合計181個)それぞれの位置と、センサ原点がなすベクトルを算出し、そのベクトルに関する参照地図を選んでくる(合計181枚)。
(3) 選ばれたすべての参照地図を重ね合わせ、画素毎に画素値を足し合わせた画像を、評価画像として作成する。これは、それぞれの画素について色のついているものの数を求めることになる。
(4) 作成された評価画像の中で、最大の画素値をもつ画素の位置(x,y)を探し、このときの(x,y)をマッチングの解とする。
Based on this principle, the matching method based on the sensing data list is processed in the following procedure.
(1) Create reference maps for all possible sensing data locations. That is, as described in the above description, a reference map is created for each vector formed by all possible sensing data positions and the sensor origin. Note that the reference map is not actually recorded in the form of image data, but as described above, the positions of the pixels having a value of 1 are sequentially (x 0 , y 0 ), (x 1 , y 1 ), ..., (x n , y n ) shall be recorded.
(2) When a group of sensing data for one frame is given, the position of each sensing data (total 181) and the vector made by the sensor origin are calculated, and the reference map for that vector is selected (total) 181).
(3) Superimpose all the selected reference maps, and create an image that adds pixel values for each pixel as an evaluation image. This will determine the number of colored ones for each pixel.
(4) Find the position (x, y) of the pixel having the maximum pixel value in the created evaluation image, and use (x, y) at this time as the matching solution.

ここで、上記の説明で述べた、考えうるすべてのセンシングデータという部分を補足する。冒頭でも述べたように、距離センサによるセンシングデータは、(d00),(d11), ... ,(d180180)の形であらわされる。ここで、角度φiについては、センシング方向が1°ずつに固定されているので、φ0=-90°,φ1=-89°, ... ,φ180=+90°の決まった値になる。 Here, the part of all the possible sensing data described in the above description will be supplemented. As described at the beginning, sensing data by the distance sensor is expressed in the form of (d 0 , φ 0 ), (d 1 , φ 1 ),..., (D 180 , φ 180 ). Here, with respect to the angle φ i , the sensing direction is fixed by 1 °, so that φ 0 = −90 °, φ 1 = −89 °,..., Φ 180 = + 90 ° become.

しかし、距離diについては、測定範囲内(0.0m<di≦4.0m)においてさまざまな値をとりうるので、これは無限に考えられることになる。そこでこれを、予め定められた離散的な値に代表させることを考える。すなわち、代表値として例えば0.1m,0.2m, ... ,4.0mの40通りを考え、di≦0.15mであれば、di=0.1m、0.15m<di≦0.25mであれば、di=0.2mのような規則で値を割り当てていく。このようにすれば、センシングデータ(dii)のとりうる値の組み合わせは、diについて40通り、φiについて180通りあることになるので、考えうるすべてのセンシングデータは、合計40×180通りの有限個になる。 However, since the distance d i can take various values within the measurement range (0.0 m <d i ≦ 4.0 m), this can be considered infinitely. Therefore, it is considered that this is represented by a predetermined discrete value. In other words, for example, 40 values of 0.1 m, 0.2 m,..., 4.0 m are considered as representative values, and if d i ≦ 0.15 m, then d i = 0.1 m and 0.15 m <d i ≦ 0.25 m. , Assign values with rules such as d i = 0.2m. In this way, the sensing data (d i, φ i) combinations of possible values of the 40 types for d i, it means that there 180 types for phi i, all the sensing data may think, Total 40 × 180 finite pieces.

これは、いわゆるディジタル処理における量子化の操作を行ったことにほかならないが、このような10cm程度の単位で行う量子化に伴う精度の劣化は、例えば位置姿勢推定における初期値の算出といった用途においてはほとんど問題がない。なお、センシングデータの量子化と同様に、参照地図についても、以下の説明では同様に10cm単位での量子化を行うことにする。すなわち画像上の1ピクセルが、実環境における10cm×10cmの領域を示すことになる。   This is nothing but the operation of quantization in so-called digital processing, but such deterioration in accuracy due to quantization performed in units of about 10 cm is used in applications such as initial value calculation in position and orientation estimation, for example. There is almost no problem. Similar to the quantization of the sensing data, the reference map is also quantized in units of 10 cm in the following description. That is, one pixel on the image indicates a 10 cm × 10 cm area in the real environment.

さて、以上の説明においては移動ロボットの移動が平行移動のみ行われることを仮定し、マッチングについては(x,y)の2パラメータのみで行われることとしたが、実際にはこれに加えて回転(姿勢)θに関するパラメータも求める必要がある。これについては、予め考えうるすべての回転θ、すなわちこれについても上に述べた量子化の考え方を導入し離散値としてθ=0°, 1°, 2°, ..., 359°の360通りの値を持つものとすると、これらの角度それぞれについて、予めセンシングデータ群全体を回転させ、これをもとに上述の評価画像をそれぞれ作成し(合計360枚)、この全ての評価画像の中で、最も値の大きな画素を見つけ、その画像が属するθ値およびその画素の位置(x,y)をもって求める解(x,y,θ)とすることになる。   In the above explanation, it is assumed that the mobile robot moves only in parallel, and the matching is performed with only two parameters (x, y). It is also necessary to obtain a parameter related to (attitude) θ. In this regard, all possible rotations θ, that is, the quantization concept described above is also introduced and 360 values of θ = 0 °, 1 °, 2 °,..., 359 ° as discrete values are introduced. For each of these angles, the entire sensing data group is rotated in advance, and the above-described evaluation images are created based on this (total of 360 images). The pixel having the largest value is found, and the solution (x, y, θ) obtained from the θ value to which the image belongs and the position (x, y) of the pixel is obtained.

以上の方法では、181×360×101×101×1/2=約5億回以下の画素値の参照演算が行われる。ここで、「181」、「360」、「101」、「101」の各数字の持つ意味は、基本手法によるマッチング方法のときと同様である。ここで新たに加わる「1/2」は、環境地図の画像内において全体の画素数に対する障害物が存在する画素数のおおよその割合である。すなわち、センシングデータリストに基づくマッチング方法は、基本手法によるマッチング方法に比べて、この数字の分、言い換えると環境地図画像中の障害物が存在しない画素の割合分、参照演算回数が削減されることになる。これがセンシングデータリストによる効果である。   In the above method, reference calculation of pixel values of 181 × 360 × 101 × 101 × 1/2 = about 500 million times or less is performed. Here, the meanings of the numbers “181”, “360”, “101”, and “101” are the same as in the matching method based on the basic method. Here, “1/2” newly added is an approximate ratio of the number of pixels with obstacles to the total number of pixels in the environment map image. In other words, the matching method based on the sensing data list reduces the number of reference computations by this number, in other words, the proportion of pixels in the environmental map image where there are no obstacles, compared to the matching method based on the basic method. become. This is the effect of the sensing data list.

ただし、一方で、予め参照地図を作成しておき、これを1の値を持つ画素の位置情報として(x0,y0),(x1,y1), ..., (xn,yn)のように記録しておかなければならないので、(1)参照地図を作る処理が必要になる、(2)メモリ使用量が膨大になる、という2つの問題が新たに発生する。(1)については、移動ロボットの駆動前に参照地図を予め作成しておけばよいので、実用上の問題は少ないものと考えられる。(2)については、おおよその見積もりで、上の例では必要なメモリ量は数ギガバイト程度と見込まれ、現在の主記憶あるいは補助記憶装置の性能から、実現可能なオーダとなっている。 However, on the other hand, a reference map is prepared in advance, and this is used as position information of pixels having a value of 1 as (x 0 , y 0 ), (x 1 , y 1 ), ..., (x n , Since it must be recorded as y n ), two new problems arise: (1) processing for creating a reference map is required, and (2) the memory usage is enormous. Regarding (1), since it is sufficient to create a reference map in advance before the mobile robot is driven, it is considered that there are few practical problems. As for (2), an approximate estimate. In the above example, the required amount of memory is expected to be several gigabytes, which is an order that can be realized based on the performance of the current main memory or auxiliary memory.

L. M. Paz, P. Pinies, J. Neira, J. D. Tardos, "Global Localization in SLAM in Bilinear Time," In Proc. International Conference on Intelligent Robots and Systems, 2005, pp. 1445-1450.L. M. Paz, P. Pinies, J. Neira, J. D. Tardos, "Global Localization in SLAM in Bilinear Time," In Proc. International Conference on Intelligent Robots and Systems, 2005, pp. 1445-1450.

距離センサによって測定されたセンシングデータと環境地図とを用いて移動ロボットの位置姿勢を推定する方法に関し、上述した基本手法によるマッチング方法では、処理量が膨大になり計算時間が長くなる問題がある。また、センシングデータリストに基づくマッチング方法では、これに比べ処理量がある程度削減されるものの、移動ロボットの軽量化・低コスト化等の観点から、さらなる計算処理の削減が望まれる。   Regarding the method for estimating the position and orientation of the mobile robot using the sensing data measured by the distance sensor and the environment map, the matching method based on the basic method described above has a problem that the processing amount becomes enormous and the calculation time becomes long. Further, in the matching method based on the sensing data list, although the processing amount is reduced to some extent, it is desired to further reduce the calculation processing from the viewpoint of reducing the weight and cost of the mobile robot.

本発明は上記事情を鑑みてなされたものであり、本発明の目的は、センシングデータリストに基づくマッチング方法において、さらなる計算量の削減を実現することにある。   The present invention has been made in view of the above circumstances, and an object of the present invention is to realize a further reduction in calculation amount in a matching method based on a sensing data list.

上記課題を解決するために本発明では、例えば図1に示すような構成により、以下の特徴を有する位置姿勢推定方法を提供する。   In order to solve the above-described problems, the present invention provides a position / orientation estimation method having the following features, for example, with the configuration shown in FIG.

すなわち、予め準備された環境地図101と、距離センサ106によって測定されたセンシングデータ107とに基づいて、マッチングにより距離センサ106の位置姿勢値124を推定する位置姿勢推定方法において、当該位置推定方法は、環境地図101からマッチングのための第1の参照データ群103および第2の参照データ群105を作成する手段150と、測定されたセンシングデータ107、第1の参照データ群103、および第2の参照データ群105に基づいて位置姿勢値124を推定する手段170とを有する位置姿勢推定システムにおいて、参照データ群を作成する手段150では、第1の参照データ群103を環境地図101から作成する処理102と、第2の参照データ群105を第1の参照データ群103の差分処理により作成する処理104とを行い、位置姿勢を推定する手段170では、センシングデータ107に基づいて、第1の参照データ群103および第2の参照データ群105の中から必要なデータを選択する処理120と、選択された複数の参照データと前回作成した評価のためのデータ122とを加算することで新たな評価のためのデータ122を作成する処理121と、評価のためのデータ122から位置姿勢推定値124を求める処理123とを行う。   That is, in the position / orientation estimation method for estimating the position / orientation value 124 of the distance sensor 106 by matching based on the environment map 101 prepared in advance and the sensing data 107 measured by the distance sensor 106, the position estimation method includes: , Means 150 for creating a first reference data group 103 and a second reference data group 105 for matching from the environment map 101, measured sensing data 107, first reference data group 103, and second In the position / orientation estimation system having the means 170 for estimating the position / orientation value 124 based on the reference data group 105, the means 150 for creating the reference data group creates the first reference data group 103 from the environment map 101. 102 and the difference between the second reference data group 105 and the first reference data group 103 The processing 170 created by the processing and the position / orientation estimating means 170 select necessary data from the first reference data group 103 and the second reference data group 105 based on the sensing data 107. A process 120, a process 121 for creating new evaluation data 122 by adding the selected reference data and the previously created evaluation data 122, and a position from the evaluation data 122 Processing 123 for obtaining the estimated posture value 124 is performed.

本発明によれば、センシングデータリストに基づくマッチング方法に比べて、さらなる計算量の削減を実現することができる。   According to the present invention, it is possible to further reduce the amount of calculation compared to the matching method based on the sensing data list.

以下、本発明の実施の形態について説明する。   Embodiments of the present invention will be described below.

図2は、本発明の一実施形態に係る位置姿勢推定システム10の構成を示すシステム構成図である。位置姿勢推定システム10は、参照データ作成サーバ20および移動ロボット30を備える。参照データ作成サーバ20は、LAN等の通信回線11に接続されている。移動ロボット30は、通信回線11に接続された基地局12と、無線LAN等の通信方式により無線通信を行い、当該基地局12を介して参照データ作成サーバ20と通信する。   FIG. 2 is a system configuration diagram showing the configuration of the position / orientation estimation system 10 according to an embodiment of the present invention. The position / orientation estimation system 10 includes a reference data creation server 20 and a mobile robot 30. The reference data creation server 20 is connected to a communication line 11 such as a LAN. The mobile robot 30 performs wireless communication with the base station 12 connected to the communication line 11 by a communication method such as a wireless LAN, and communicates with the reference data creation server 20 via the base station 12.

参照データ作成サーバ20は、二次元の環境地図から参照地図および後述する差分画像を作成し、作成した参照地図および差分画像を、通信回線11を介して移動ロボット30へ送る。   The reference data creation server 20 creates a reference map and a later-described difference image from the two-dimensional environment map, and sends the created reference map and difference image to the mobile robot 30 via the communication line 11.

移動ロボット30は、無線通信装置31、位置姿勢推定装置32、距離センサ33、および移動装置34を有する。無線通信装置31は、基地局12と無線通信を行い、基地局12を介して、参照データ作成サーバ20から参照地図および差分画像を受信して位置姿勢推定装置32に供給する。位置姿勢推定装置32は、無線通信装置31から供給された参照地図および差分画像と、距離センサ33によって測定されたセンシングデータとを用いて、環境地図内における移動ロボット30の位置および向き(姿勢)を推定する。移動装置34は、位置姿勢推定装置32によって算出された、環境地図内における移動ロボット30の位置および向きに基づき、予め設定された移動プランに従って、移動ロボット30を移動させる。   The mobile robot 30 includes a wireless communication device 31, a position / orientation estimation device 32, a distance sensor 33, and a movement device 34. The wireless communication device 31 performs wireless communication with the base station 12, receives a reference map and a difference image from the reference data creation server 20 via the base station 12, and supplies them to the position / orientation estimation device 32. The position / orientation estimation device 32 uses the reference map and difference image supplied from the wireless communication device 31 and the sensing data measured by the distance sensor 33 to determine the position and orientation (orientation) of the mobile robot 30 in the environment map. Is estimated. The moving device 34 moves the mobile robot 30 according to a preset movement plan based on the position and orientation of the mobile robot 30 in the environment map calculated by the position and orientation estimation device 32.

図3は、参照データ作成サーバ20の機能構成の一例を示すブロック図である。参照データ作成サーバ20は、環境地図格納部21、参照地図作成部22、参照地図格納部23、差分画像作成部24、差分画像格納部25、およびデータ送信部26を備える。   FIG. 3 is a block diagram illustrating an example of a functional configuration of the reference data creation server 20. The reference data creation server 20 includes an environment map storage unit 21, a reference map creation unit 22, a reference map storage unit 23, a difference image creation unit 24, a difference image storage unit 25, and a data transmission unit 26.

ここで、「背景技術」の欄で述べたセンシングデータリストに基づくマッチング方法において、平行移動だけでなく回転についての推定も同時に行う方法について述べる。すなわち移動ロボットは平行移動に関する自由度(x, y)に加え、回転(姿勢)に関する自由度θについてのパラメータ推定を同時に行うものとする。   Here, in the matching method based on the sensing data list described in the “Background Art” section, a method of performing not only translation but also estimation of rotation at the same time will be described. That is, it is assumed that the mobile robot simultaneously estimates the parameter for the degree of freedom θ related to rotation (posture) in addition to the degree of freedom (x, y) related to parallel movement.

本実施形態においても、「背景技術」の欄のセンシングデータリストに基づくマッチング方法の説明で述べた参照地図を用いる。すなわち、センシングデータとして考えられるすべての値(d,φ)毎に、参照地図を予め用意しておくものとする。なお以下の説明では、それぞれの値(d,φ)に関する参照地図を、クラス(d,φ)の参照地図と呼ぶこととする。   Also in the present embodiment, the reference map described in the description of the matching method based on the sensing data list in the “background art” column is used. That is, a reference map is prepared in advance for every value (d, φ) considered as sensing data. In the following description, the reference map for each value (d, φ) is referred to as a reference map of class (d, φ).

ここで、図4(a)に示すように、クラス(d,-φ)の参照地図400が与えられたときに、これがどのような意味を持つかについて説明する。   Here, as shown in FIG. 4 (a), the meaning of the reference map 400 when given the reference map 400 of the class (d, -φ) will be described.

移動ロボットの回転方向θが0°のときにクラス(d,-φ)の参照地図400を用いるのは、距離d、方向−φのセンシングデータ401(図4(b)参照)を対象にしたときであるが、移動ロボットの回転方向θを考えると、これを次のように解釈することもできる。それは、距離d、方向(-φ-θ)のセンシングデータ402(図4(c)参照)が得られたときに、移動ロボットの方向と環境地図の主方向(本実施形態ではx軸方向)とのなす角度がθ、すなわち、センシングデータ全体が環境地図に対してθだけ回転した場合である(図4(d)参照)。   The reference map 400 of the class (d, -φ) when the rotation direction θ of the mobile robot is 0 ° is used for the sensing data 401 (see FIG. 4B) of the distance d and the direction -φ. However, considering the rotational direction θ of the mobile robot, it can be interpreted as follows. That is, when sensing data 402 (see FIG. 4C) of distance d and direction (−φ−θ) is obtained, the direction of the mobile robot and the main direction of the environment map (in this embodiment, the x-axis direction). Is the case in which the entire sensing data is rotated by θ with respect to the environmental map (see FIG. 4D).

このような場合、回転していない(すなわちθ=0°)状態の距離センサにおいて、距離d、方向-φのセンシングデータが得られたときと全く等価なセンシングが行われることになるので、距離d、方向-φであり、且つ、距離センサ(移動ロボット)の回転方向がθ=0°のセンシングデータと、距離d、方向(-φ-θ)であり、且つ、距離センサ(移動ロボット)の回転θのセンシングデータとは、計算上は同様に扱うことができる。   In such a case, in the distance sensor in a non-rotating state (that is, θ = 0 °), sensing equivalent to that when the sensing data of the distance d and the direction −φ is obtained is performed. d, direction -φ, and the distance sensor (mobile robot) rotation direction θ = 0 ° sensing data, distance d, direction (-φ-θ), and distance sensor (mobile robot) In the calculation, the sensing data of the rotation θ can be handled in the same manner.

一方、「背景技術」の欄で説明したとおり、クラス(d,-φ)の参照地図400上で色がついた部分(1の値を持つ部分)は、センシングデータとして(d,-φ)の値が観測されたときに、センサ原点がこの位置にあればそのセンシングデータに関する評価値が1になることを示している。これは、環境地図と移動ロボットとの方向の差θが0°の場合であった。しかし上で述べた通り、移動ロボットが回転することも考慮に入れると、この状況はセンシングデータとして(d,-φ-θ)の値が観測されたときに、移動ロボットが環境地図に対してθだけ回転したときと等価になる。   On the other hand, as described in the “Background Art” column, a colored portion (a portion having a value of 1) on the reference map 400 of class (d, −φ) is (d, −φ) as sensing data. When the sensor value is observed, if the sensor origin is at this position, the evaluation value for the sensing data is 1. This was the case where the direction difference θ between the environment map and the mobile robot was 0 °. However, as mentioned above, taking into account the rotation of the mobile robot, the situation is that when the value of (d, -φ-θ) is observed as sensing data, the mobile robot Equivalent to rotating by θ.

よって、上記参照地図400上で1の値を持つ部分の意味は、下記のように360通りに解釈することができる。
(0) 移動ロボットの方向θがθ=0°で、なおかつセンシングデータとして(d,-φ)の値が観測されたときに、センサ原点がこの位置にあればそのセンシングデータに関する評価値が1になる。
(1) 移動ロボットの方向θがθ=1°で、なおかつセンシングデータとして(d,-φ-1°)の値が観測されたときに、センサ原点がこの位置にあればそのセンシングデータに関する評価値が1になる。
(2) 移動ロボットの方向θがθ=2°で、なおかつセンシングデータとして(d,-φ-2°)の値が観測されたときに、センサ原点がこの位置にあればそのセンシングデータに関する評価値が1になる。



(359) 移動ロボットの方向θがθ=359°で、なおかつセンシングデータとして(d,-φ-359°)の値が観測されたときに、センサ原点がこの位置にあればそのセンシングデータに関する評価値が1になる。
Therefore, the meaning of the portion having a value of 1 on the reference map 400 can be interpreted in 360 ways as follows.
(0) When the direction θ of the mobile robot is θ = 0 ° and the value of (d, -φ) is observed as sensing data, if the sensor origin is at this position, the evaluation value for the sensing data is 1. become.
(1) When the direction θ of the mobile robot is θ = 1 ° and the value of (d, -φ-1 °) is observed as sensing data, if the sensor origin is at this position, evaluation of the sensing data The value becomes 1.
(2) When the direction θ of the mobile robot is θ = 2 ° and the value of (d, -φ-2 °) is observed as sensing data, if the sensor origin is at this position, evaluation of the sensing data The value becomes 1.



(359) When the direction θ of the mobile robot is θ = 359 ° and the value of (d, -φ-359 °) is observed as sensing data, if the sensor origin is at this position, evaluation of the sensing data The value becomes 1.

このような原理に基づき、以下の手順で評価値画像を作成すれば、位置(x,y)に加え回転方向θについても同時に推定できるマッチングが実施できることになる。   If an evaluation value image is created according to the following procedure based on such a principle, matching that can simultaneously estimate the rotation direction θ in addition to the position (x, y) can be performed.

まず、参照地図を、図5に示すような(r,φ)の形の極座標表現であらわされる各クラス毎に予め作成しておく。ここでrおよびφはそれぞれr = 0.1m, 0.2m, ..., 4.0m、φ = 0°, 1°, ..., 359°の値をとりうるので、この全ての組み合わせについて並べている。これらの参照地図は、移動ロボットが移動する前で、なおかつ、移動ロボットが移動する部屋の環境地図画像が与えられた後に作成しておくものである。またその作成方法は、「背景技術」の項のセンシングデータリストに基づくマッチング方法の説明で述べた通りである。   First, a reference map is created in advance for each class represented by a polar coordinate expression in the form of (r, φ) as shown in FIG. Here, r and φ can take values of r = 0.1m, 0.2m, ..., 4.0m, φ = 0 °, 1 °, ..., 359 °, respectively, so all these combinations are arranged. . These reference maps are created before the mobile robot moves and after the environment map image of the room where the mobile robot moves is given. The creation method is as described in the description of the matching method based on the sensing data list in the section “Background Technology”.

次に移動ロボットが移動して、図14に示したセンシングデータ群430が、(d0, -90°),(d1, -89°), ... ,(d180, +90°)の181個のセンシングデータとして得られたときに、このセンシングデータと図5に示した参照地図230から、移動ロボットの位置姿勢を推定する方法を説明する。
(1) まず、移動ロボットの方向θを、θ=0°と仮定する。
(2) (d0, -90°),(d1, -89°),... ,(d180, +90°)の各クラスの参照地図(合計181枚)を図5における一連の参照地図群の中から選び出す。なお、選び出す際に、(di,ψ)におけるψの値が0より小さい場合は、これに360°を加えてψ+360°とすることで、0°≦ψ<360°の範囲にψの値が収まるようにする。このようにしても指し示す角度の意味は変わらない。この考え方は、以下の説明における、全ての角度を扱う処理においても同様に用いるものとする。
(3) 選び出された181枚の参照地図全てについて、これを各画素毎に足し合わせた評価値画像を作成する。この評価値画像の(x,y)の位置にある画素値が、(x,y,θ)(ただしθ=0°)のパラメータにおける評価値となる。
(4) 次にθ=1°と仮定する。
(5) (d0, -90°-θ),(d1, -89°-θ), ... ,(d180, +90°-θ)の各クラスの参照地図(合計181枚)を(2)と同様に図5における一連の参照地図群の中から選び出す。
(6) (3)と同様にこれを各画素毎に足し合わせた評価値画像を作成する。この評価値画像の(x,y)の位置にある画素値が、(x,y,θ)のパラメータにおける評価値となる。
(7) θの値を1°増やし、(5)、(6)の処理を行う。これをθ=359°になるまで繰り返す。
(8) 以上の処理により、θ=0°,1°,・・・,359°の合計360枚の評価値画像が作成されるが、この中で最も評価値が大きい画素を見つけ、この画素の環境地図上の位置(x,y)と、その評価値が属するθの値の組み合わせ(x,y,θ)が推定値となる。
Next, the mobile robot moves, and the sensing data group 430 shown in FIG. 14 becomes (d 0 , -90 °), (d 1 , -89 °), ..., (d 180 , + 90 °). A method for estimating the position and orientation of the mobile robot from the sensing data and the reference map 230 shown in FIG. 5 will be described.
(1) First, it is assumed that the direction θ of the mobile robot is θ = 0 °.
(2) (d 0 , -90 °), (d 1 , -89 °), ..., (d 180 , + 90 °) reference maps (181 total) in the series of Fig. 5 Select from the reference map group. When selecting, if the value of ψ in (d i , ψ) is smaller than 0, 360 ° is added to ψ + 360 ° so that ψ is within the range of 0 ° ≦ ψ <360 °. To fit the value of. Even in this way, the meaning of the pointing angle does not change. This concept is used in the same way in the processing that handles all angles in the following description.
(3) An evaluation value image is created by adding all the selected 181 reference maps for each pixel. The pixel value at the position (x, y) in this evaluation value image becomes the evaluation value in the parameter (x, y, θ) (where θ = 0 °).
(4) Next, it is assumed that θ = 1 °.
(5) (d0, -90 ° -θ), (d1, -89 ° -θ), ..., (d180, + 90 ° -θ) reference maps (total 181) for each class (2 In the same manner as in (), a selection is made from the series of reference map groups in FIG.
(6) As in (3), an evaluation value image is created by adding these together for each pixel. The pixel value at the position (x, y) of this evaluation value image becomes the evaluation value in the parameter (x, y, θ).
(7) The value of θ is increased by 1 °, and the processes (5) and (6) are performed. This is repeated until θ = 359 °.
(8) Through the above processing, a total of 360 evaluation value images of θ = 0 °, 1 °,..., 359 ° are created. The combination (x, y, θ) of the position (x, y) on the environment map and the value of θ to which the evaluation value belongs is an estimated value.

以上述べた方法は、本発明において、「背景技術」の欄で述べたセンシングデータリストに基づく方法を用いて、移動ロボットの回転方向θを移動ロボットの平行移動量(x,y)と同時に求める方法である。本方法を用いるだけでは、「背景技術」の欄で述べたセンシングデータリストに基づく方法に比べて特に効果は見出せないが、以下に述べる差分処理を用いる方法の説明をわかりやすくするためにここで詳しく述べた。なおこの方法を、センシングデータリストに基づく回転を含めたマッチング方法、と呼ぶことにする。   In the present invention, the method described above uses the method based on the sensing data list described in the “Background Art” section in the present invention to obtain the rotational direction θ of the mobile robot simultaneously with the parallel movement amount (x, y) of the mobile robot. Is the method. Using this method alone is not particularly effective compared to the method based on the sensing data list described in the “Background Art” section. However, in order to make the explanation of the method using the difference processing described below easier to understand, Detailed. This method is called a matching method including rotation based on the sensing data list.

次に、本発明において、差分処理を用いる方法について述べる。これは一言で言うと、上に述べたセンシングデータリストに基づく回転を含めたマッチング方法の考え方を基本にして、これに、参照地図に関する差分処理を加えるものである。   Next, a method using differential processing in the present invention will be described. In short, based on the concept of the matching method including the rotation based on the sensing data list described above, a difference process related to the reference map is added thereto.

まず、図6に示すように、2つの参照地図410および参照地図411から、差分画像412を作成することを考える。   First, as shown in FIG. 6, consider creating a difference image 412 from two reference maps 410 and a reference map 411.

ここで、差分画像412は、距離パラメータrが同じ値を持ち、角度パラメータφが隣り合う値を持つ組みを選んで作成するものとする。すなわち、クラス(r,ψ)の参照地図と、クラス(r,ψ+1°)の参照地図を選ぶことになる(ここでr = 0.1, 0.2, ..., 4.0m、ψ = 0°, 1°, ..., 359°である)。これによって作成される差分画像を、クラス (r,ψ+1°)の差分画像と呼ぶこととする。   Here, the difference image 412 is created by selecting a set in which the distance parameter r has the same value and the angle parameter φ has an adjacent value. That is, a reference map of class (r, ψ) and a reference map of class (r, ψ + 1 °) are selected (where r = 0.1, 0.2, ..., 4.0m, ψ = 0 ° , 1 °, ..., 359 °). The difference image created in this way is called a class (r, ψ + 1 °) difference image.

クラス(r,ψ)の差分画像G(r,ψ)は、クラス(r,ψ)の参照地図F(r,ψ)を用いて、下記の数式1により算出することができる。   The difference image G (r, ψ) of the class (r, ψ) can be calculated by the following Equation 1 using the reference map F (r, ψ) of the class (r, ψ).

G(r,ψ+1°)(x, y) = F(r,ψ+1°)(x, y) - F(r,ψ)(x, y) ・・・数式1
なお、(x,y)は、それぞれの画像における座標を示している。
G (r, ψ + 1 °) (x, y) = F (r, ψ + 1 °) (x, y) −F (r, ψ) (x, y) Equation 1
Note that (x, y) indicates coordinates in each image.

上に述べた通り、rの値としてはr = 0.1m, 0.2m, ..., 4.0mの40通り、ψの値としては、ψ= 0°, 1°, ..., 359°の360通りあるので、この差分画像Gは全部で 40×359枚作成されることになる。   As described above, r has a value of r = 0.1 m, 0.2 m, ..., 4.0 m, and ψ has a value of ψ = 0 °, 1 °, ..., 359 °. Since there are 360 patterns, a total of 40 × 359 difference images G are created.

ところで、差分画像Gを作るときに用いられる隣り合う角度、すなわちψとψ+1°のそれぞれの角度からなる2つのクラス(r,ψ+1°)と(r,ψ)の参照地図を考えたときに、前者の画像は、後者の画像を1°だけ微小に回転させたものであるので、画像の形状が非常に似たようなものになるという性質をもっている。このため上の式に基づいて差分画像Gを作成すると、2つの画像において各画素値が同一であるものが多いため、画像中の各画素の多くの部分の差分値は0になることになる。   By the way, consider the reference maps of two classes (r, ψ + 1 °) and (r, ψ) composed of adjacent angles, ie, ψ and ψ + 1 ° angles, used when creating the difference image G. Since the former image is obtained by rotating the latter image slightly by 1 °, it has the property that the shape of the image is very similar. For this reason, when the difference image G is created based on the above equation, since the pixel values in the two images are often the same, the difference values of many parts of the pixels in the image are zero. .

本発明では、差分画像Gについて、全ての画素の画素値を差分画像Gとして保持するのではなく、0以外の画素値を持つ画素について、その画素の位置と画素値を差分画像として保持する。具体的には、対応する画素の画素値をvkとして、(x0, y0, v0), (x1, y1, v1), ..., (xn, yn, vn) の形で記録しておくものとする。これにより、差分画像Gの各画素に対する参照回数を少なくする、すなわち差分画像Gの中で0の値を持つ画素については参照する必要がなくなる、という効果をもたらすことになる。従って、データ量の削減および演算量の削減を実現することができる。 In the present invention, for the difference image G, the pixel values of all the pixels are not held as the difference image G, but the pixel positions and pixel values are held as the difference image for pixels having pixel values other than 0. Specifically, assuming that the pixel value of the corresponding pixel is v k , (x 0 , y 0 , v 0 ), (x 1 , y 1 , v 1 ), ..., (x n , y n , v n ) shall be recorded. This brings about an effect that the number of times of reference to each pixel of the difference image G is reduced, that is, it is not necessary to refer to a pixel having a value of 0 in the difference image G. Therefore, it is possible to reduce the amount of data and the amount of calculation.

図3に戻り、説明を続ける。環境地図格納部21には、例えば図15を用いて説明した二次元の環境地図が格納される。参照地図作成部22は、環境地図格納部21に格納されている環境地図から、r(本実施形態では、r = 0.1m, 0.2m, ..., 4.0m)およびφ(本実施形態では、φ = 0°, 1°, ..., 359°)のそれぞれのクラスに対応する参照地図を、合計40×360枚作成し、作成した参照地図を参照地図格納部23に格納する。参照地図格納部23には、図5で説明した参照地図230が格納される。   Returning to FIG. 3, the description will be continued. The environmental map storage unit 21 stores, for example, the two-dimensional environmental map described with reference to FIG. The reference map creation unit 22 extracts r (r = 0.1 m, 0.2 m,..., 4.0 m in this embodiment) and φ (in this embodiment) from the environment map stored in the environment map storage unit 21. , Φ = 0 °, 1 °,..., 359 °), a total of 40 × 360 reference maps are created, and the created reference maps are stored in the reference map storage unit 23. The reference map storage unit 23 stores the reference map 230 described with reference to FIG.

差分画像作成部24は、上述した数式1に基づいて、参照地図格納部23に格納されている参照地図を用いて、各クラスの差分画像を作成し、作成した差分画像を差分画像格納部25に格納する。差分画像格納部25には、例えば図7に示すように、クラス250毎に、当該クラスに対応する差分画像中で画素値が0でない画素の位置を示す画素位置251、および、当該画素位置251にある画素の画素値252が格納される。   The difference image creation unit 24 creates a difference image of each class using the reference map stored in the reference map storage unit 23 based on Equation 1 described above, and uses the created difference image as the difference image storage unit 25. To store. For example, as illustrated in FIG. 7, the difference image storage unit 25 includes, for each class 250, a pixel position 251 indicating the position of a pixel whose pixel value is not 0 in the difference image corresponding to the class, and the pixel position 251. The pixel value 252 of the pixel at is stored.

データ送信部26は、環境地図格納部21に格納されている環境地図、参照地図格納部23に格納されている参照地図、および差分画像格納部25に格納されている差分画像を、通信回線11を介して移動ロボット30へ送信する。   The data transmission unit 26 receives the environment map stored in the environment map storage unit 21, the reference map stored in the reference map storage unit 23, and the difference image stored in the difference image storage unit 25 as the communication line 11. Is transmitted to the mobile robot 30.

図8は、位置姿勢推定装置32の機能構成の一例を示すブロック図である。位置姿勢推定装置32は、データ取得部320、データ格納部321、第一の評価画像作成部322、統合差分画像作成部323、第一の評価値算出部324、第二の評価画像作成部325、位置姿勢推定部326、評価値格納部327、および第二の評価値算出部328を備える。   FIG. 8 is a block diagram illustrating an example of a functional configuration of the position / orientation estimation apparatus 32. The position / orientation estimation apparatus 32 includes a data acquisition unit 320, a data storage unit 321, a first evaluation image creation unit 322, an integrated difference image creation unit 323, a first evaluation value calculation unit 324, and a second evaluation image creation unit 325. A position / orientation estimation unit 326, an evaluation value storage unit 327, and a second evaluation value calculation unit 328.

ここで、本発明において差分画像を用いてマッチングを行う方法を述べる。ここでは、各クラス(rjk)(rj = 0.1m, 0.2m, 0.3m, ..., 4.0m、ψk = 0°, 1°, ..., 359°)の参照地図、ならびにクラス(rjk)(rj = 0.1m, 0.2m, 0.3m, ..., 4.0m、ψk = 1°, 2°, ..., 359°)の差分画像が予め作成されており、センシングデータとして(d0 ,-90°),(d1 ,-89°), ..., (d180 ,+90°)の181個のデータが得られていることを想定する。
(1) まず、移動ロボットの方向θを、θ=0°と仮定する。
(2) (d0 ,-90°), (d1 ,-89°), ..., (d180 ,+90°)の各クラスの参照地図(合計181枚)を一連の参照地図群の中から選び出す。なお、角度は適宜360°を加えることで、0°以上360°未満の範囲に収まるようにするのは、上で述べた通りである。
(3) 選び出された181枚全ての参照地図について、これを各画素毎に足し合わせた評価値画像を作成する。この評価値画像の(x,y)の位置にある画素値が、(x,y,θ)(ただしθ=0°)のパラメータにおける評価値となる。
(4) 次にθ=1°と仮定する。
(5) (d0 ,-90°-θ),(d1 ,-89°-θ),...,(d180 ,+90°-θ)の各クラスの参照地図(合計181枚)を、今度は参照地図ではなく、差分画像群の中から選び出す。
(6) 選びだされた全ての差分画像について、これを各画素毎に足し合わせた画像データを作成する。このように作成された画像データを、統合差分画像と呼ぶ。
(7) 作成された統合差分画像と、前回、すなわち(3)で作成されたθ=0°のときの評価値画像を、各画素毎に足し合わせた画像データを作成する。これが移動ロボットの回転角度がθのときの評価値画像となる。すなわち、この評価値画像の(x,y)の位置にある画素値が、(x,y,θ)のパラメータにおける評価値となる。
(8) θの値を1° 増やし、(5), (6), (7) の処理を行う。これをθ=359°になるまで繰り返す。
(9) 以上の処理により、θ= 0°, 1°, ..., 359°の合計360枚の評価値画像が作成されるが、この中で最も値が大きい画素を見つけ、この画素の画像上の位置(x,y)と、その画像が属するθの値の組み合わせ(x,y,θ)が、パラメータの推定値となる。
Here, a method for performing matching using a difference image in the present invention will be described. Here, reference to each class (r j , ψ k ) (r j = 0.1m, 0.2m, 0.3m, ..., 4.0m, ψ k = 0 °, 1 °, ..., 359 °) Map and difference image of class (r j , ψ k ) (r j = 0.1m, 0.2m, 0.3m, ..., 4.0m, ψ k = 1 °, 2 °, ..., 359 °) Are created in advance, and 181 data of (d 0 , -90 °), (d 1 , -89 °), ..., (d 180 , + 90 °) are obtained as sensing data. Assume that.
(1) First, it is assumed that the direction θ of the mobile robot is θ = 0 °.
(2) A series of reference maps of (d 0 , -90 °), (d 1 , -89 °), ..., (d 180 , + 90 °) reference maps (total of 181) Choose from. As described above, the angle is set within the range of 0 ° to less than 360 ° by appropriately adding 360 °.
(3) With respect to all the selected 181 reference maps, an evaluation value image is created by adding the reference maps for each pixel. The pixel value at the position (x, y) in this evaluation value image becomes the evaluation value in the parameter (x, y, θ) (where θ = 0 °).
(4) Next, it is assumed that θ = 1 °.
(5) Reference maps for each class of (d 0 , -90 ° -θ), (d 1 , -89 ° -θ), ..., (d 180 , + 90 ° -θ) (181 in total) Are selected from the difference image group instead of the reference map.
(6) For all the selected difference images, image data is created by adding the difference images for each pixel. The image data created in this way is called an integrated difference image.
(7) Image data is created by adding the created integrated difference image and the evaluation value image created at the previous time, ie, (3) when θ = 0 °, for each pixel. This is an evaluation value image when the rotation angle of the mobile robot is θ. That is, the pixel value at the position (x, y) of the evaluation value image becomes the evaluation value in the parameter (x, y, θ).
(8) Increase the value of θ by 1 ° and perform the processing of (5), (6), and (7). This is repeated until θ = 359 °.
(9) Through the above processing, a total of 360 evaluation value images of θ = 0 °, 1 °, ..., 359 ° are created. Among these, the pixel with the largest value is found, and A combination (x, y, θ) of the position (x, y) on the image and the value of θ to which the image belongs becomes an estimated value of the parameter.

本発明による差分画像を用いる方法では、センシングデータリストに基づく回転を含めたマッチング方法に比べ、計算時に用いる画像データの枚数は変わらない。具体的には、センシングデータリストに基づく回転を含めたマッチング方法では、θ= 0°, 1°, ..., 359°のときにそれぞれ(d0 ,-90°-θ), (d1 ,-89°-θ), ..., (d180 ,+90°-θ) の合計181の異なるクラスの参照地図を用いることとなり、扱う総画像枚数は181×360枚となる。 In the method using the difference image according to the present invention, the number of image data used at the time of calculation does not change compared to the matching method including rotation based on the sensing data list. Specifically, in the matching method including rotation based on the sensing data list, (d 0 , -90 ° -θ), (d 1 ) when θ = 0 °, 1 °, ..., 359 ° respectively. , -89 ° -θ),..., (D 180 , + 90 ° -θ), a total of 181 different class reference maps are used, and the total number of images handled is 181 × 360.

これに対して、本発明による差分画像を用いる方法では、θ=0°ときの(d0 ,-90°), (d1 ,-89°), ..., (d180 ,+90°)の合計181枚の異なるクラスの参照地図と、θ= 1°, 2°, ..., 359°のそれぞれのときに(d0 ,-90°-θ), (d1 ,-89°-θ), ..., (d180 ,+90°-θ) の合計181枚の異なる差分画像を用いるので、扱う総画像枚数は181×(1+359)枚となる。 On the other hand, in the method using the differential image according to the present invention, (d 0 , −90 °), (d 1 , −89 °), ..., (d 180 , + 90 ° when θ = 0 °. ) For a total of 181 different class reference maps and (d 0 , -90 ° -θ), (d 1 , -89 ° for θ = 1 °, 2 °, ..., 359 ° Since a total of 181 different difference images (−θ),..., (d 180 , + 90 ° −θ) are used, the total number of images handled is 181 × (1 + 359).

このように、計算に利用する画像の枚数は、センシングデータリストに基づく回転を含めたマッチング方法も、本発明による差分画像を用いる方法も変わらないことになる。しかし、それぞれの画像データに着目したとき、0以外の値を持つ画素の数、すなわち計算に用いられる画素の数という点において、参照地図に比べて、差分画像は大幅に削減されることになる。そのため、計算に用いられる画素の数はこの削減分と同じだけ削減されることになり、計算処理量もこれに比例して削減されることになる。   As described above, the number of images used for the calculation is the same as the matching method including rotation based on the sensing data list and the method using the difference image according to the present invention. However, when attention is paid to each image data, the difference image is greatly reduced compared to the reference map in terms of the number of pixels having a value other than 0, that is, the number of pixels used in the calculation. . Therefore, the number of pixels used for calculation is reduced by the same amount as the reduction, and the calculation processing amount is also reduced in proportion thereto.

これは、差分画像を作成するときに用いられる隣り合う角度の2つのクラスの参照地図が非常に似ているために、差分画像における大部分の画素値が0になる、という性質によってもたらされるものである。もし、この差分画像における0以外の値を持つ画素の数が、もとの参照地図の0以外の値を持つ画素の数の例えば1/3になれば、マッチング方法における画素値の参照演算の回数は以下のとおりとなる。
181×360×101×101×1/2×1/3 (回)
ここで、「181」、「360」、「101」、「101」、「1/2」の各数値の持つ意味は、センシングデータリストに基づくマッチング方法のときと同様である。これに新たに加わる「1/3」の数値が、上に述べた0以外の値を持つ画素の数の削減割合である。すなわち、本発明における差分処理を用いた方法は、この数字の分、参照演算数が処理が削減されることになる。これが本発明における差分処理の効果である。
This is due to the property that most of the pixel values in the difference image are zero because the two-level reference maps of adjacent angles used when creating the difference image are very similar It is. If the number of pixels having a non-zero value in the difference image is, for example, 1/3 of the number of pixels having a non-zero value in the original reference map, the pixel value reference calculation in the matching method is performed. The number of times is as follows.
181 × 360 × 101 × 101 × 1/2 × 1/3 (times)
Here, the meanings of the numerical values “181”, “360”, “101”, “101”, and “1/2” are the same as in the matching method based on the sensing data list. The newly added value “1/3” is the reduction ratio of the number of pixels having a value other than 0 as described above. That is, in the method using the difference processing in the present invention, the number of reference operations is reduced by the number. This is the effect of the difference processing in the present invention.

図8に戻って、位置姿勢推定装置32の機能構成の説明を続ける。データ取得部320は、無線通信装置31を介して参照データ作成サーバ20から、環境地図、各クラスの参照地図、および各クラスの差分画像を取得し、取得した環境地図、参照地図、および差分画像をデータ格納部321に格納する。   Returning to FIG. 8, the description of the functional configuration of the position / orientation estimation apparatus 32 will be continued. The data acquisition unit 320 acquires the environment map, the reference map of each class, and the difference image of each class from the reference data creation server 20 via the wireless communication device 31, and acquires the acquired environment map, reference map, and difference image. Is stored in the data storage unit 321.

第一の評価画像作成部322は、181個のセンシングデータ(dii)(i=0,1,・・・,180)を距離センサ33から取得する。そして、第一の評価画像作成部322は、取得したそれぞれのセンシングデータ(dii)について、当該センシングデータ(dii)に示される距離diおよび方向φiと同一の距離および方向に対応する参照地図(dii)をデータ格納部321から抽出する。そして、第一の評価画像作成部322は、抽出した181個の参照地図(dii)の画素値を画素毎に加算することにより、加算された画素値から構成される評価画像(θ0)を作成する。評価画像(θ0)は、移動ロボット30の向きと環境地図において予め定められた方向(本実施形態では図16におけるx軸方向)とのなす角がθ0(本実施形態ではθ0=0°)であると仮定した場合の評価画像を意味する。 The first evaluation image creation unit 322 acquires 181 sensing data (d i , φ i ) (i = 0, 1,..., 180) from the distance sensor 33. Then, the first evaluation image creation unit 322 has the same distance d i and direction φ i indicated by the sensing data (d i , φ i ) for each acquired sensing data (d i , φ i ). A reference map (d i , φ i ) corresponding to the distance and direction is extracted from the data storage unit 321. Then, the first evaluation image creation unit 322 adds the pixel values of the extracted 181 reference maps (d i , φ i ) for each pixel, thereby forming an evaluation image composed of the added pixel values ( θ 0 ) is created. In the evaluation image (θ 0 ), an angle formed by the direction of the mobile robot 30 and a predetermined direction in the environment map (in this embodiment, the x-axis direction in FIG. 16) is θ 0 (in this embodiment, θ 0 = 0). °) means an evaluation image assuming that

第一の評価値算出部324は、第一の評価画像作成部322によって作成された評価画像(θ0)内の(x,y)の位置にある画素値を、(x,y,θ0)における評価値として評価値格納部327に格納する。評価値格納部327には、例えば図9に示すように、環境地図内の画素の位置を示すx座標3270およびy座標3271に対応付けて、当該位置にある画素の評価値3273、および、当該評価値3273が算出される際に仮定された、環境地図における所定の方向に対する移動ロボット30の向きを示す方向3272が格納される。 The first evaluation value calculation unit 324 uses the pixel value at the position (x, y) in the evaluation image (θ 0 ) created by the first evaluation image creation unit 322 as (x, y, θ 0). ) Is stored in the evaluation value storage unit 327 as an evaluation value. In the evaluation value storage unit 327, for example, as shown in FIG. 9, the evaluation value 3273 of the pixel at the position in association with the x coordinate 3270 and the y coordinate 3271 indicating the position of the pixel in the environment map, A direction 3272 indicating the direction of the mobile robot 30 with respect to a predetermined direction in the environment map assumed when the evaluation value 3273 is calculated is stored.

統合差分画像作成部323は、距離センサ33によって測定された181個のセンシングデータ(diij)のそれぞれについて、当該センシングデータ(diij)に示される距離diおよび方向φijと同一の距離および方向に対応する差分画像(diij)を、データ格納部321から抽出する。そして、統合差分画像作成部323は、抽出した181個の差分画像(diij)の画素値を画素毎に加算することにより、加算された画素値から構成される統合差分画像(θj)を作成する。統合差分画像(θj)は、移動ロボット30の向きと環境地図において予め定められた方向とのなす角がθjであると仮定した場合の統合差分画像を意味する。 Integrated differential image producing section 323, the distance 181 pieces of measured data (d i, φ i -θ j ) measured by the sensor 33 for each are shown in the sensing data (d i, φ i -θ j ) A difference image (d i , φ i −θ j ) corresponding to the same distance and direction as the distance d i and the direction φ i −θ j is extracted from the data storage unit 321. Then, the integrated difference image creation unit 323 adds the pixel values of the extracted 181 difference images (d i , φ i −θ j ) for each pixel, and thereby the integrated difference image composed of the added pixel values. Create an image (θ j ). The integrated difference image (θ j ) means an integrated difference image when it is assumed that the angle between the direction of the mobile robot 30 and a predetermined direction in the environment map is θ j .

第二の評価画像作成部325は、評価画像(θj-1)と、統合差分画像(θj)とを、画素毎に加算することにより、評価画像(θj)を作成する。第二の評価値算出部328は、第二の評価画像作成部325によって作成された評価画像(θj)内の(x,y)の位置にある画素値を、(x,y,θj)における評価値として評価値格納部327に格納する。 The second evaluation image creation unit 325 creates an evaluation image (θ j ) by adding the evaluation image (θ j−1 ) and the integrated difference image (θ j ) for each pixel. The second evaluation value calculation unit 328 calculates the pixel value at the position (x, y) in the evaluation image (θ j ) created by the second evaluation image creation unit 325 as (x, y, θ j ) Is stored in the evaluation value storage unit 327 as an evaluation value.

なお、統合差分画像作成部323、第一の評価値算出部324、および第二の評価画像作成部325は、第一の評価画像作成部322によって評価画像(θ0)が作成された後に、j=1からj=m-1まで、統合差分画像(θj)を作成する処理、評価画像(θj)を作成する処理、および評価画像(θj)内の(x,y)の位置にある画素の評価値を格納する処理を、それぞれ実行する。 Note that the integrated difference image creation unit 323, the first evaluation value calculation unit 324, and the second evaluation image creation unit 325, after the evaluation image (θ 0 ) is created by the first evaluation image creation unit 322, From j = 1 to j = m-1, a process for creating an integrated difference image (θ j ), a process for creating an evaluation image (θ j ), and the position of (x, y) in the evaluation image (θ j ) The process of storing the evaluation value of the pixel in each is executed.

位置姿勢推定部326は、評価値格納部327を参照して、最大の評価値が対応付けられている(x,y,θ)を特定し、環境地図の所定方向とのなす角度がθの向きで、環境地図内の(x,y)の位置に、移動ロボット30の向きおよび位置を推定し、推定した向きおよび位置を移動装置34に通知する。   The position / orientation estimation unit 326 refers to the evaluation value storage unit 327, identifies (x, y, θ) associated with the maximum evaluation value, and the angle formed with the predetermined direction of the environmental map is θ. The direction and the position of the mobile robot 30 are estimated at the position (x, y) in the environment map, and the estimated direction and position are notified to the moving device 34.

図10は、参照データ作成サーバ20の動作の一例を示すフローチャートである。例えば環境地図が環境地図格納部21に格納される等の所定のタイミングで、参照データ作成サーバ20は、本フローチャートに示す動作を開始する。   FIG. 10 is a flowchart showing an example of the operation of the reference data creation server 20. For example, the reference data creation server 20 starts the operation shown in this flowchart at a predetermined timing such as when the environment map is stored in the environment map storage unit 21.

まず、参照地図作成部22は、jの値を1に、kの値を0に、それぞれ初期化し(S100)、環境地図格納部21を参照して、環境地図からクラス(rjk)の参照地図を作成し、作成した参照地図を参照地図格納部23に格納する(S101)。そして、参照地図作成部22は、jの値が40か否かを判定し、jの値が40未満の場合(S102:No)、jの値を1増やし(S103)、再びステップS101に示した処理を実行する。 First, the reference map creating unit 22 initializes the value of j to 1 and the value of k to 0 (S100), and refers to the environment map storage unit 21 to class (r j , ψ k) from the environment map. ) Is created, and the created reference map is stored in the reference map storage unit 23 (S101). Then, the reference map creation unit 22 determines whether or not the value of j is 40. If the value of j is less than 40 (S102: No), the value of j is incremented by 1 (S103), and is shown again in step S101. Execute the process.

jの値が40の場合(S102:Yes)、参照地図作成部22は、jの値を0に初期化すると共に、kの値を1増やし(S104)、kの値が181よりも大きいか否かを判定する(S105)。kの値が181以下の場合(S105:No)、参照地図作成部22は、再びステップS101に示した処理を実行する。   When the value of j is 40 (S102: Yes), the reference map creation unit 22 initializes the value of j to 0, increases the value of k by 1 (S104), and is the value of k greater than 181? It is determined whether or not (S105). When the value of k is 181 or less (S105: No), the reference map creation unit 22 executes the process shown in step S101 again.

kの値が181よりも大きい場合(S105:Yes)、差分画像作成部24は、jおよびkの値を1に初期化し(S106)、参照地図格納部23を参照して、下記の数式2を用いて、クラス(rjk)における差分画像を算出し、算出した差分画像(rjk)を差分画像格納部25に格納する(S107)。 When the value of k is larger than 181 (S105: Yes), the difference image creation unit 24 initializes the values of j and k to 1 (S106), and refers to the reference map storage unit 23 to obtain the following formula 2. Is used to calculate a difference image in the class (r j , ψ k ), and the calculated difference image (r j , ψ k ) is stored in the difference image storage unit 25 (S107).

差分画像(rjk)=参照地図(rjk)−参照地図(rjk-1) ・・・数式2
次に、差分画像作成部24は、kの値が181であるか否かを判定し、kの値が181未満の場合(S108:No)、kの値を1増やし(S109)、再びステップS107に示した処理を実行する。kの値が181の場合(S108:Yes)、差分画像作成部24は、jの値を1増やすと共に、kの値を1に初期化し(S110)、jの値が40よりも大きいか否かを判定する(S111)。
Difference image (r j , ψ k ) = reference map (r j , ψ k ) −reference map (r j , ψ k−1 ) Equation 2
Next, the difference image creation unit 24 determines whether or not the value of k is 181. If the value of k is less than 181 (S108: No), the value of k is increased by 1 (S109), and the step again The process shown in S107 is executed. When the value of k is 181 (S108: Yes), the difference image creation unit 24 increments the value of j by 1 and initializes the value of k to 1 (S110), and whether the value of j is larger than 40 or not. Is determined (S111).

jの値が40以下の場合(S111:No)、差分画像作成部24は、再びステップS107に示した処理を実行する。jの値が40より大きい場合(S111:Yes)、データ送信部26は、環境地図格納部21に格納されている環境地図、参照地図格納部23に格納されている参照地図、および差分画像格納部25に格納されている差分画像を、通信回線11を介して移動ロボット30へ送信し(S112)、参照データ作成サーバ20は、本フローチャートに示した動作を終了する。   When the value of j is 40 or less (S111: No), the difference image creation unit 24 executes the process shown in step S107 again. When the value of j is larger than 40 (S111: Yes), the data transmission unit 26 stores the environmental map stored in the environmental map storage unit 21, the reference map stored in the reference map storage unit 23, and the difference image storage. The difference image stored in the unit 25 is transmitted to the mobile robot 30 via the communication line 11 (S112), and the reference data creation server 20 ends the operation shown in this flowchart.

図11は、位置姿勢推定装置32の動作の一例を示すフローチャートである。移動ロボット30は、環境地図、参照地図、および差分画像を、参照データ作成サーバ20から受信した後に、所定のタイミングで本フローチャートに示す動作を開始する。   FIG. 11 is a flowchart showing an example of the operation of the position / orientation estimation apparatus 32. The mobile robot 30 starts the operation shown in this flowchart at a predetermined timing after receiving the environment map, the reference map, and the difference image from the reference data creation server 20.

まず、第一の評価画像作成部322は、iの値を0に初期化し(S200)、距離センサ33によって測定されたセンシングデータ(dii)に対応する参照地図(dii)をデータ格納部321から抽出する(S201)。そして、第一の評価画像作成部322は、iの値が180であるか否かを判定し、iの値が180未満である場合には(S202:No)、iの値を1増やし(S203)、再びステップS201に示した処理を実行する。 First, the first evaluation image creation unit 322 initializes the value of i to 0 (S200), and the reference map (d i , φ i ) corresponding to the sensing data (d i , φ i ) measured by the distance sensor 33. i ) is extracted from the data storage unit 321 (S201). Then, the first evaluation image creation unit 322 determines whether or not the value of i is 180. If the value of i is less than 180 (S202: No), the value of i is increased by 1 ( S203), the process shown in step S201 is executed again.

iの値が180である場合(S202:Yes)、第一の評価画像作成部322は、抽出した参照地図(dii)を画素毎に加算することにより、評価画像(θ0)を作成する(S204)。そして、第一の評価値算出部324は、第一の評価画像作成部322によって作成された評価画像(θ0)内の(x,y)の位置にある画素値を、(x,y,θ0)における評価値として評価値格納部327に格納する(S205)。 When the value of i is 180 (S202: Yes), the first evaluation image creation unit 322 adds the extracted reference map (d i , φ i ) for each pixel, thereby evaluating the evaluation image (θ 0 ). Is created (S204). Then, the first evaluation value calculation unit 324 converts the pixel value at the position (x, y) in the evaluation image (θ 0 ) created by the first evaluation image creation unit 322 to (x, y, The evaluation value in θ 0 ) is stored in the evaluation value storage unit 327 (S205).

次に、統合差分画像作成部323、第二の評価画像作成部325、および第二の評価値算出部328は、iの値を0に、jの値を1に、それぞれ初期化する(S206)。そして、統合差分画像作成部323は、距離センサ33によって測定されたセンシングデータ(diij)に対応する差分画像(diij)をデータ格納部321から抽出し(S207)、iの値が180であるか否かを判定する(S208)。iの値が180未満である場合(S208:No)、統合差分画像作成部323は、iの値を1増やし(S203)、再びステップS207に示した処理を実行する。 Next, the integrated difference image creation unit 323, the second evaluation image creation unit 325, and the second evaluation value calculation unit 328 initialize the i value to 0 and the j value to 1, respectively (S206). ). Then, the integrated difference image creation unit 323 obtains a difference image (d i , φ i −θ j ) corresponding to the sensing data (d i , φ i −θ j ) measured by the distance sensor 33 from the data storage unit 321. It is extracted (S207), and it is determined whether or not the value of i is 180 (S208). If the value of i is less than 180 (S208: No), the integrated difference image creation unit 323 increases the value of i by 1 (S203), and executes the process shown in step S207 again.

iの値が180である場合(S208:Yes)、統合差分画像作成部323は、抽出した181個の差分画像(diij)の画素値を画素毎に加算することにより、加算された画素値から構成される統合差分画像(θj)を作成する(S210)。そして、第二の評価画像作成部325は、評価画像(θj-1)と、統合差分画像(θj)とを、画素毎に加算することにより、評価画像(θj)を作成する(S211)。 When the value of i is 180 (S208: Yes), the integrated difference image creation unit 323 adds the pixel values of the extracted 181 difference images (d i , φ i −θ j ) for each pixel. Then, an integrated difference image (θ j ) composed of the added pixel values is created (S210). Then, the second evaluation image creation unit 325 creates an evaluation image (θ j ) by adding the evaluation image (θ j−1 ) and the integrated difference image (θ j ) for each pixel ( S211).

次に、第二の評価値算出部328は、第二の評価画像作成部325によって作成された評価画像(θj)内の(x,y)の位置にある画素値を、(x,y,θj)における評価値として評価値格納部327に格納し(S212)、jの値が359であるか否かを判定する(S213)。jの値が359未満である場合(S213:No)、統合差分画像作成部323は、jの値を1増やし(S214)、再びステップS207に示した処理を実行する。 Next, the second evaluation value calculation unit 328 calculates the pixel value at the position (x, y) in the evaluation image (θ j ) created by the second evaluation image creation unit 325 as (x, y , θ j ) is stored in the evaluation value storage unit 327 as an evaluation value (S212), and it is determined whether or not the value of j is 359 (S213). When the value of j is less than 359 (S213: No), the integrated difference image creation unit 323 increases the value of j by 1 (S214), and executes the process shown in step S207 again.

jの値が359である場合(S213:Yes)、位置姿勢推定部326は、評価値格納部327を参照して、最大の評価値が対応付けられている(x,y,θ)を特定し、環境地図の所定方向とのなす角度がθの向きで、環境地図内の(x,y)の位置に、移動ロボット30の向きおよび位置を推定し(S215)、位置姿勢推定装置32は、本フローチャートに示した動作を終了する。   When the value of j is 359 (S213: Yes), the position / orientation estimation unit 326 refers to the evaluation value storage unit 327 and identifies (x, y, θ) associated with the maximum evaluation value. Then, the direction and position of the mobile robot 30 are estimated at the position (x, y) in the environment map with the angle formed with the predetermined direction of the environment map being θ, and the position and orientation estimation device 32 is Then, the operation shown in this flowchart is finished.

図12は、参照データ作成サーバ20または位置姿勢推定装置32の機能を実現するコンピュータ40のハードウェア構成の一例を示すハードウェア構成図である。コンピュータ40は、CPU(Central Processing Unit)41、RAM(Random Access Memory)42、ROM(Read Only Memory)43、HDD(Hard Disk Drive)44、通信インターフェイス(I/F)45、入出力インターフェイス(I/F)46、およびメディアインターフェイス(I/F)47を備える。   FIG. 12 is a hardware configuration diagram illustrating an example of a hardware configuration of the computer 40 that realizes the functions of the reference data creation server 20 or the position / orientation estimation apparatus 32. The computer 40 includes a central processing unit (CPU) 41, a random access memory (RAM) 42, a read only memory (ROM) 43, a hard disk drive (HDD) 44, a communication interface (I / F) 45, an input / output interface (I). / F) 46 and a media interface (I / F) 47.

CPU41は、ROM43またはHDD44に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM43は、コンピュータ40の起動時にCPU41が実行するブートプログラムや、コンピュータ40のハードウェアに依存するプログラム等を格納する。HDD44は、CPU41によって実行されるプログラムを格納する。通信インターフェイス45は、通信回線を介して他の機器からデータを受信してCPU41へ送ると共に、CPU41が生成したデータを、通信回線を介して他の機器へ送信する。   The CPU 41 operates based on a program stored in the ROM 43 or the HDD 44 and controls each part. The ROM 43 stores a boot program executed by the CPU 41 when the computer 40 is started up, a program depending on the hardware of the computer 40, and the like. The HDD 44 stores a program executed by the CPU 41. The communication interface 45 receives data from other devices via a communication line and sends the data to the CPU 41, and transmits data generated by the CPU 41 to other devices via the communication line.

CPU41は、入出力インターフェイス46を介して、モニタ等の出力装置、および、キーボードやマウス等の入力装置を制御する。CPU41は、入出力インターフェイス46を介して、入力装置からデータを取得する。また、CPU41は、生成したデータを、入出力インターフェイス46を介して出力装置へ出力する。なお、コンピュータ40が位置姿勢推定装置32として機能する場合、コンピュータ40には通信インターフェイス45が設けられず、コンピュータ40は、入出力インターフェイス46に接続された無線通信装置31を介して通信を行う。また、コンピュータ40が位置姿勢推定装置32として機能する場合、距離センサ33および移動装置34とのデータやり取りは、入出力インターフェイス46を介して行われる。   The CPU 41 controls an output device such as a monitor and an input device such as a keyboard and a mouse via the input / output interface 46. The CPU 41 acquires data from the input device via the input / output interface 46. Further, the CPU 41 outputs the generated data to the output device via the input / output interface 46. When the computer 40 functions as the position / orientation estimation device 32, the computer 40 is not provided with the communication interface 45, and the computer 40 performs communication via the wireless communication device 31 connected to the input / output interface 46. When the computer 40 functions as the position / orientation estimation device 32, data exchange with the distance sensor 33 and the moving device 34 is performed via the input / output interface 46.

メディアインターフェイス47は、記録媒体48に格納されたプログラムまたはデータを読み取り、RAM42に提供する。RAM42を介してCPU41に提供されるプログラムは、記録媒体48に格納されている。当該プログラムは、記録媒体48から読み出されて、RAM42を介してコンピュータ40にインストールされ、CPU41によって実行される。記録媒体48は、例えばDVD(Digital Versatile Disk)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。   The media interface 47 reads a program or data stored in the recording medium 48 and provides it to the RAM 42. A program provided to the CPU 41 via the RAM 42 is stored in the recording medium 48. The program is read from the recording medium 48, installed in the computer 40 via the RAM 42, and executed by the CPU 41. The recording medium 48 is, for example, an optical recording medium such as a DVD (Digital Versatile Disk) or PD (Phase change rewritable disk), a magneto-optical recording medium such as an MO (Magneto-Optical disk), a tape medium, a magnetic recording medium, or a semiconductor memory. Etc.

コンピュータ40が参照データ作成サーバ20として機能する場合、コンピュータ40にインストールされて実行されるプログラムは、コンピュータ40を、環境地図格納部21、参照地図作成部22、参照地図格納部23、差分画像作成部24、差分画像格納部25、およびデータ送信部26として機能させる。   When the computer 40 functions as the reference data creation server 20, the program installed and executed on the computer 40 includes the environment map storage unit 21, the reference map creation unit 22, the reference map storage unit 23, and difference image creation. Function as the unit 24, the difference image storage unit 25, and the data transmission unit 26.

また、コンピュータ40が位置姿勢推定装置32として機能する場合、コンピュータ40にインストールされて実行されるプログラムは、コンピュータ40を、データ取得部320、データ格納部321、第一の評価画像作成部322、統合差分画像作成部323、第一の評価値算出部324、第二の評価画像作成部325、位置姿勢推定部326、評価値格納部327、および第二の評価値算出部328として機能させる。   Further, when the computer 40 functions as the position / orientation estimation device 32, a program installed and executed on the computer 40 includes the data acquisition unit 320, the data storage unit 321, the first evaluation image creation unit 322, The integrated difference image creation unit 323, the first evaluation value calculation unit 324, the second evaluation image creation unit 325, the position / orientation estimation unit 326, the evaluation value storage unit 327, and the second evaluation value calculation unit 328 are caused to function.

コンピュータ40は、これらのプログラムを、記録媒体48から読み取って実行するが、他の例として、他の装置から、通信媒体を介してこれらのプログラムを取得してもよい。通信媒体とは、有線もしくは無線の通信回線、または、当該通信回線を伝搬するディジタル信号もしくは搬送波を指す。   The computer 40 reads these programs from the recording medium 48 and executes them, but as another example, these programs may be acquired from other devices via a communication medium. The communication medium refers to a wired or wireless communication line, or a digital signal or a carrier wave that propagates through the communication line.

以上、本発明の実施の形態について説明した。   The embodiment of the present invention has been described above.

上記説明から明らかなように、本実施形態の位置姿勢推定システム10によれば、センシングデータリストに基づくマッチング方法に比べて、さらなる計算量の削減を実現することができる。   As is clear from the above description, according to the position / orientation estimation system 10 of the present embodiment, it is possible to realize a further reduction in the amount of calculation compared to the matching method based on the sensing data list.

ここで、今まで述べた説明をもとに、「課題を解決するための手段」の欄で図1を参照して述べた本発明の構成と、上記した実施形態との対応関係を補足する。   Here, based on the description given so far, the correspondence between the configuration of the present invention described with reference to FIG. 1 in the column of “Means for Solving the Problems” and the above-described embodiment will be supplemented. .

図1において、環境地図101は、「背景技術」の項で説明したように、距離センサ106による測定高さ断面での障害物の存在を、ディジタル画像としてあらわしたものである。ここでは、障害物が存在しない場所を画素値0(白色)、障害物が存在する場所を画素値1(黒色)としてあらわすことにする。   In FIG. 1, the environment map 101 is a digital image representing the presence of an obstacle at a height cross section measured by the distance sensor 106 as described in the section “Background Art”. Here, a place where an obstacle does not exist is represented as a pixel value 0 (white), and a place where an obstacle exists is represented as a pixel value 1 (black).

距離センサ106は、「背景技術」の項で説明したように、自分の周辺の予め決められた複数の方向について、障害物までの距離を計測できるものである。ここでは、測定は正面に対して-90°から+90°に1°毎の合計181の異なる方向について行われるものとする。   As described in the “Background Art” section, the distance sensor 106 can measure the distance to the obstacle in a plurality of predetermined directions around the user. Here, it is assumed that the measurement is performed in a total of 181 different directions every 1 ° from −90 ° to + 90 ° with respect to the front.

センシングデータ107は、「背景技術」の項で説明したように、上記距離センサ106によって障害物の位置が、角度と距離の組み合わせとして(d0 ,-90°),(d1 ,-89°), ...,,(d180 ,+90°)の合計181個の極座標表現によるデータとしてあらわされるものである。また、d0, d1, ..., d180 は、0.1m, 0.2m, 0.3m, ..., 4.0mのいずれかの値として量子化されているものである。 As described in the “Background Art” section, the sensing data 107 is obtained by detecting the position of the obstacle as a combination of an angle and a distance (d 0 , −90 °), (d 1 , −89 °). ),..., (D 180 , + 90 °) are represented as a total of 181 polar coordinate data. Further, d 0 , d 1 ,..., D 180 are quantized as any value of 0.1 m, 0.2 m, 0.3 m,.

位置姿勢推定値124とは、「背景技術」の欄で説明したように、移動ロボットが平面運動を行うことを想定するので、位置と方向に関する合計3パラメータ(x, y,θ)としてあらわされるものである。   The position / orientation estimated value 124 is expressed as a total of three parameters (x, y, θ) related to the position and direction since it is assumed that the mobile robot performs a planar motion as described in the “Background Art” section. Is.

まず、図1における参照データ群を作成する手段150において、環境地図からマッチングのための第1の参照データ群103を作成する方法について説明する。ここで第1の参照データ群とは、「背景技術」の項で説明した一連の参照地図を示す。具体的には、(rjk)(ただし、rj = 0.1m, 0.2m, 0.3m, ..., 4.0mの40通り、ψk = 0°, 1°, ..., 359°の360通り)のクラスとして作成するので、合計40×360枚になる。このデータは、環境地図を(x,y)の方向に移動させることで作成される。なお、x = rj・cos(ψk), y = rj・sin(ψk) である。 First, a method for creating the first reference data group 103 for matching from the environment map in the reference data group creating unit 150 in FIG. 1 will be described. Here, the first reference data group indicates a series of reference maps described in the “Background Art” section. Specifically, (r j , ψ k ) (where, r j = 0.1 m, 0.2 m, 0.3 m, ..., 4.0 m, 40 ways, ψ k = 0 °, 1 °, ..., 360 classes (359 °), so the total is 40 × 360. This data is created by moving the environment map in the direction of (x, y). Note that x = rj · cos (ψ k ) and y = r j · sin (ψ k ).

また、各画素は実環境における10cm×10cmの大きさの領域を示すように量子化されるものとする。さらに、この参照地図は、画像そのものではなく、画像上において、1の値を持つ画素の座標値を列挙したデータとして、(x0, y0), (x1, y1), ..., (xn, yn) のように記録されるものとする。 Each pixel is quantized so as to indicate a region of 10 cm × 10 cm in the actual environment. Furthermore, this reference map is not the image itself, but the data that enumerates the coordinate values of pixels having a value of 1 on the image as (x 0 , y 0 ), (x 1 , y 1 ), ... , (x n, y n ).

次に、図1における参照データ群を作成する手段150において、第1の参照データ群から第2の参照データ群105を作成する方法について説明する。ここで、第2の参照データ群とは、第1の実施例で説明した一連の差分画像を示す。具体的には、(rjk)(ただし、rj = 0.1m, 0.2m, 0.3m, ..., 4.0mの40通り、ψk = 1°, 2°, ..., 359°の359通りのクラスとして作成するので、合計40×359枚になる。このデータは、上に述べた参照地図の中で角度パラメータについて隣り合うクラスのものを2つ組み合わせ、この画像の画素毎の差分処理を行うことで作成される。 Next, a method of creating the second reference data group 105 from the first reference data group in the means 150 for creating the reference data group in FIG. 1 will be described. Here, the second reference data group indicates a series of difference images described in the first embodiment. Specifically, (r j , ψ k ) (where r j = 0.1 m, 0.2 m, 0.3 m, ..., 4.0 m, 40 ways, ψ k = 1 °, 2 °, ..., Since it is created as 359 classes of 359 °, the total is 40 × 359. This data is a combination of two of the adjacent classes for the angle parameter in the reference map described above, and this image pixel It is created by performing difference processing for each.

すなわち、クラス(rj,ψ+1°)と、クラス(rj,ψ)の参照地図から、クラス(rj,ψ+1°)の差分画像が作成されることになる。その具体的な作成方法は、発明を実施するための最良の形態の前半部分で説明した通りである。この差分画像は、画像そのものではなく、画像上において、0以外の値をもつ画素の座標値と、その値を列挙したデータとして、(x0, y0 v0), (x1, y1, v1), ..., (xn, yn, vn) のように記録されるものとする。 That is, a difference image of class (r j , ψ + 1 °) is created from the reference map of class (r j , ψ + 1 °) and class (r j , ψ). The specific production method is as described in the first half of the best mode for carrying out the invention. This difference image is not the image itself but the coordinate values of pixels having values other than 0 on the image and the data enumerating the values as (x 0 , y 0 v 0 ), (x 1 , y 1 , v 1 ), ..., (x n , y n , v n ).

次に、図1における位置姿勢を推定する手段170における、センシングデータに基づいて、第1の参照データ群と第2の参照データ群の中から必要なデータを選択する処理について説明する。ここでは、移動ロボットの回転をθと仮定し、この値とセンシングデータとから算出される値に基づき、第1の参照データ群、すなわち各クラスの参照地図と、第2の参照データ群、すなわち各クラスの差分画像から、適切なクラスのものを選択する。選択されるものは複数枚になる。その具体的な選択方法は、発明を実施するための最良の形態の前半部分で説明したとおりである。   Next, processing for selecting necessary data from the first reference data group and the second reference data group based on the sensing data in the means 170 for estimating the position and orientation in FIG. 1 will be described. Here, assuming that the rotation of the mobile robot is θ, based on a value calculated from this value and sensing data, a first reference data group, that is, a reference map of each class, and a second reference data group, that is, An appropriate class is selected from the difference image of each class. Multiple items will be selected. The specific selection method is as described in the first half of the best mode for carrying out the invention.

次に、図1の位置姿勢を推定する手段170における、選択されたデータを加算することで評価のためのデータ122を作成する処理121について説明する。ここでは、仮定した移動ロボットの回転θの値毎に、上で選択した各クラスの参照地図と差分画像を画素毎に足し合わせ、さらにこれに、移動ロボットの回転(θ-1°)として作成した評価値画像を足し合わせ、これを移動ロボットの回転θの評価値画像とする。その具体的な方法は、発明を実施するための最良の形態の前半部分で説明したとおりである。なお、この評価値画像が、図1における評価のためのデータとなる。   Next, processing 121 for creating data 122 for evaluation by adding selected data in the means 170 for estimating the position and orientation of FIG. 1 will be described. Here, for each assumed value of the rotation θ of the mobile robot, the reference map of each class selected above and the difference image are added for each pixel, and further created as the rotation (θ-1 °) of the mobile robot. The obtained evaluation value images are added together to obtain an evaluation value image of the rotation θ of the mobile robot. The specific method is as described in the first half of the best mode for carrying out the invention. This evaluation value image becomes data for evaluation in FIG.

次に、図1の位置姿勢を推定する手段170における、評価のためのデータから位置姿勢推定値を求める処理123について説明する。これは、上で求められた各移動ロボットの回転θ毎に算出された評価値画像の中から、最大の値をもつ画素を見つけ出し、これが属する回転角度θと、その画素の画像上の位置(x,y)から、位置姿勢推定値を(x,y,θ)として求めるものである。その具体的な方法は、発明を実施するための最良の形態の前半部分で説明した通りである。   Next, processing 123 for obtaining a position / orientation estimation value from data for evaluation in the means 170 for estimating the position / orientation of FIG. 1 will be described. This is because the pixel having the maximum value is found from the evaluation value image calculated for each rotation θ of each mobile robot obtained above, and the rotation angle θ to which the pixel belongs and the position of the pixel on the image ( The position / orientation estimation value is obtained as (x, y, θ) from x, y). The specific method is as described in the first half of the best mode for carrying out the invention.

また、本発明は、上記した実施形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。   Further, the present invention is not limited to the above-described embodiment, and various modifications can be made within the scope of the gist thereof.

例えば、上記した実施形態において、位置姿勢推定装置32は、パラメータ推定時には、参照データ作成サーバ20によって予め作成された参照地図および差分画像の両方を利用するが、本発明はこれに限られない。他の形態として、位置姿勢推定装置32は、参照データ作成サーバ20によって予め作成された差分画像と一部の参照地図とを用いて各パラメータを推定するようにしてもよい。   For example, in the above-described embodiment, the position / orientation estimation device 32 uses both the reference map and the difference image created in advance by the reference data creation server 20 during parameter estimation, but the present invention is not limited to this. As another form, the position and orientation estimation device 32 may estimate each parameter using a difference image created in advance by the reference data creation server 20 and a part of the reference map.

例えば、参照データ作成サーバ20は、参照地図としてψ=0°のクラス、すなわちクラス(0.1m, 0°), クラス(0.2m, 0°), ..., クラス(4.0m, 0°)の参照地図を作成し、位置姿勢推定装置32は、参照データ作成サーバ20によって作成されたクラスの参照地図をデータ格納部321に保存する。これは、上記した実施形態においてψ= 0°, 1°, ..., 359°の全てのクラスの参照地図を記録しておくのに比べて1/360のメモリ量となる。なお、差分画像については、参照データ作成サーバ20は、上記した実施形態と同様に全てのクラスについて差分画像を作成し、位置姿勢推定装置32は、参照データ作成サーバ20によって作成された全てのクラスの差分画像をデータ格納部321に保存する。   For example, the reference data creation server 20 has a class of ψ = 0 ° as a reference map, that is, class (0.1 m, 0 °), class (0.2 m, 0 °), ..., class (4.0 m, 0 °). The position / orientation estimation apparatus 32 stores the reference map of the class created by the reference data creation server 20 in the data storage unit 321. This is a memory amount of 1/360 as compared with the case where reference maps of all classes of ψ = 0 °, 1 °,..., 359 ° are recorded in the above-described embodiment. As for the difference image, the reference data creation server 20 creates the difference image for all classes as in the above-described embodiment, and the position / orientation estimation device 32 creates all the classes created by the reference data creation server 20. Are stored in the data storage unit 321.

このような準備のもと、第一の評価画像作成部322は、以下のステップに従い、方向θをθ=0°と仮定したときの評価値画像を作成する。
(1) θ=0°とする。
(2) センシングデータ(d0 ,-90°), (d1,-89°), ..., (d180 ,+90°)について、距離パラメータはそれぞれの値とし、角度パラメータは0°に置き換えたクラスの参照地図を選び出す。すなわち(d0 ,0°), (d1 ,0°), ..., (d180 ,0°)のクラスの参照地図を選び出すことになる。
(3) これらのデータについて、角度パラメータがセンシングデータのものになるまで、差分画像を足し合わせていく。この足し合わせた画像データが、そのクラスの参照地図となる。例えば、(d0 ,-90°)のセンシングデータについては、-90° → -90°+ 360° = +270°の変換処理を行ったのちに、以下の計算を行うことで、目的となる (d0 ,+270°)のクラスの参照地図を作成する。
Based on this preparation, the first evaluation image creation unit 322 creates an evaluation value image when the direction θ is assumed to be θ = 0 ° according to the following steps.
(1) Set θ = 0 °.
(2) For the sensing data (d 0 , -90 °), (d 1 , -89 °), ..., (d 180 , + 90 °), the distance parameter is the respective value and the angle parameter is 0 ° Select the reference map of the class replaced with. That is, a reference map of a class of (d 0 , 0 °), (d 1 , 0 °), ..., (d 180 , 0 °) is selected.
(3) For these data, add the difference images until the angle parameter is that of the sensing data. The added image data becomes a reference map of the class. For example, for the sensing data of (d 0 , -90 °), after converting from -90 ° to -90 ° + 360 ° = + 270 °, the following calculation is performed, which is the purpose. Create a reference map of class (d 0 , + 270 °).

F(d0 ,270°) = F(d0 ,0°) + G(d0 ,1°) + G(d0 ,2°) + ... + G(d0 ,270°)
・・・数式3 ここで、F(d,ψ)およびG(d,ψ) は、それぞれ、クラス(d,ψ)の参照地図およびクラス(d,ψ)の差分画像である。
F (d 0 , 270 °) = F (d 0 , 0 °) + G (d 0 , 1 °) + G (d 0 , 2 °) + ... + G (d 0 , 270 °)
Expression 3 where F (d, ψ) and G (d, ψ) are a reference map of class (d, ψ) and a difference image of class (d, ψ), respectively.

以上の処理により、θ=0°のときの各クラスの参照地図が求められるので、それ以降は、この参照地図に、それぞれの角度における統合差分画像を加算していくことにより、目的となる推定値が求められることになる。このようにすることにより、センシングデータに対応する各クラスの参照地図を作成する処理が新たに必要になるものの、データ格納部321内に参照地図の大部分を記憶する必要がないため、メモリ量を削減することができる。   The reference map of each class when θ = 0 ° is obtained by the above processing, and thereafter, the target estimation is performed by adding the integrated difference image at each angle to the reference map. A value will be required. By doing so, a process for creating a reference map of each class corresponding to the sensing data is newly required, but it is not necessary to store most of the reference map in the data storage unit 321. Can be reduced.

また、上記した実施形態において、移動ロボット30は、有線または無線通信により、環境地図、参照地図、および差分画像を参照データ作成サーバ20から取得するが、他の形態として、移動ロボット30は、可搬性の記録媒体を介して、これらのデータを参照データ作成サーバ20から取得するようにしてもよい。   In the above-described embodiment, the mobile robot 30 acquires the environment map, the reference map, and the difference image from the reference data creation server 20 through wired or wireless communication. However, as another form, the mobile robot 30 is allowed. You may make it acquire these data from the reference data creation server 20 via a portable recording medium.

また、上記した実施形態において、位置姿勢推定システム10は、参照データ作成サーバ20と移動ロボット30とを備えるが、他の形態として、参照データ作成サーバ20の機能を移動ロボット30内に設けることにより、移動ロボット30単体で位置姿勢推定システム10の機能を実現するように構成されていてもよい。   In the above-described embodiment, the position / orientation estimation system 10 includes the reference data creation server 20 and the mobile robot 30. However, as another form, the function of the reference data creation server 20 is provided in the mobile robot 30. The mobile robot 30 alone may be configured to realize the function of the position / orientation estimation system 10.

また、上記した実施形態において用いられている様々な具体的な数値は、説明に対する理解を助けるために仮に設定したものであり、本発明の実施時にその値が使われることを限定するものではない。例えば、上記した実施形態では、角度の分解能が1°であったが、本発明を適用するシステムの仕様や要求される精度等に応じて、0.5°や0.1°等であってもよい。   In addition, various specific numerical values used in the above-described embodiments are provisionally set to help understanding of the description, and do not limit the use of the values when the present invention is implemented. . For example, in the above-described embodiment, the angular resolution is 1 °. However, depending on the specifications of the system to which the present invention is applied and the required accuracy, the angle resolution is 0.5 °, 0.1 °, etc. Also good.

本発明の位置姿勢推定システム10の全体構成の一例を説明するための概念図である。It is a conceptual diagram for demonstrating an example of the whole structure of the position and orientation estimation system 10 of this invention. 本発明の一実施形態に係る位置姿勢推定システム10の構成を示すシステム構成図である。1 is a system configuration diagram illustrating a configuration of a position and orientation estimation system 10 according to an embodiment of the present invention. 参照データ作成サーバ20の機能構成の一例を示すブロック図である。3 is a block diagram illustrating an example of a functional configuration of a reference data creation server 20. FIG. 参照地図400の意味を説明するための概念図である。It is a conceptual diagram for demonstrating the meaning of the reference map. 参照地図格納部23に格納されるデータ構造の一例を説明するための概念図である。5 is a conceptual diagram for explaining an example of a data structure stored in a reference map storage unit 23. FIG. 差分画像412の作成過程を説明するための概念図である。It is a conceptual diagram for demonstrating the creation process of the difference image 412. FIG. 差分画像格納部25に格納されるデータ構造の一例を示す図である。6 is a diagram illustrating an example of a data structure stored in a difference image storage unit 25. FIG. 位置姿勢推定装置32の機能構成の一例を示すブロック図である。3 is a block diagram illustrating an example of a functional configuration of a position / orientation estimation apparatus 32. FIG. 評価値格納部327に格納されるデータ構造の一例を示す図である。It is a figure which shows an example of the data structure stored in the evaluation value storage part 327. 参照データ作成サーバ20の動作の一例を示すフローチャートである。4 is a flowchart illustrating an example of an operation of a reference data creation server 20. 位置姿勢推定装置32の動作の一例を示すフローチャートである。5 is a flowchart showing an example of the operation of a position / orientation estimation apparatus 32. 参照データ作成サーバ20の機能を実現するコンピュータ40の一例を示すハードウェア構成図である。2 is a hardware configuration diagram illustrating an example of a computer 40 that realizes the function of the reference data creation server 20. FIG. 移動ロボット420の動作概要を説明するための概念図である。FIG. 11 is a conceptual diagram for explaining an outline of the operation of the mobile robot 420. 距離センサ421によって測定されたセンシングデータ群430の一例を示す図である。It is a figure which shows an example of the sensing data group 430 measured by the distance sensor 421. 環境地図440の一例を示す図である。It is a figure which shows an example of the environment map. 移動ロボットの位置を特定する過程を説明するための概念図である。It is a conceptual diagram for demonstrating the process which pinpoints the position of a mobile robot. センシングデータ群460および環境地図463の一例を示す概念図である。It is a conceptual diagram which shows an example of the sensing data group 460 and the environment map 463. 基本手法によるマッチング方法の過程を説明するための概念図である。It is a conceptual diagram for demonstrating the process of the matching method by a basic method. 第0番目のセンシングデータ470と環境地図内の黒い画素とが一致する場合を抜き出した図である。It is the figure which extracted the case where the 0th sensing data 470 and the black pixel in an environment map correspond. 第0番目のセンシングデータ470と環境地図内の黒い画素とが一致する場合のセンサ原点481の位置をプロットした図である。It is the figure which plotted the position of the sensor origin 481 in case the 0th sensing data 470 and the black pixel in an environment map correspond. 図20と環境地図との関係を説明するための概念図である。It is a conceptual diagram for demonstrating the relationship between FIG. 20 and an environmental map. 各センシングデータと参照地図との関係を説明するための概念図である。It is a conceptual diagram for demonstrating the relationship between each sensing data and a reference map. 評価画像が作成される過程を説明するための概念図である。It is a conceptual diagram for demonstrating the process in which an evaluation image is produced. 評価画像510の一例を示す図である。It is a figure which shows an example of the evaluation image 510. FIG.

符号の説明Explanation of symbols

10・・・位置姿勢推定システム、101・・・環境地図、102・・・第1の参照データ群の作成処理、103・・・第1の参照データ群、104・・・第2の参照データ群の作成処理、105・・・第2の参照データ群、106・・・距離センサ、107・・・センシングデータ、120・・・参照データ選択処理、121・・・加算処理、122・・・評価のためのデータ、123・・・位置姿勢推定値を求めるための処理、124・・・位置姿勢推定値、150・・・参照データ群を作成する手段、170・・・位置姿勢を推定する手段、11・・・通信回線、12・・・基地局、20・・・参照データ作成サーバ、21・・・環境地図格納部、22・・・参照地図作成部、23・・・参照地図格納部、24・・・差分画像作成部、25・・・差分画像格納部、26・・・データ送信部、30・・・移動ロボット、31・・・無線通信装置、32・・・位置姿勢推定装置、320・・・データ取得部、321・・・データ格納部、322・・・第一の評価画像作成部、323・・・統合差分画像作成部、324・・・第一の評価値算出部、325・・・第二の評価画像作成部、326・・・位置姿勢推定部、327・・・評価値格納部、328・・・第二の評価値算出部、33・・・距離センサ、34・・・移動装置 DESCRIPTION OF SYMBOLS 10 ... Position and orientation estimation system, 101 ... Environmental map, 102 ... Creation process of 1st reference data group, 103 ... 1st reference data group, 104 ... 2nd reference data Group creation processing, 105 ... second reference data group, 106 ... distance sensor, 107 ... sensing data, 120 ... reference data selection processing, 121 ... addition processing, 122 ... Data for evaluation, 123... Processing for obtaining position and orientation estimation values, 124... Position and orientation estimation values, 150... Means for creating a reference data group, 170. Means: 11 ... communication line, 12 ... base station, 20 ... reference data creation server, 21 ... environment map storage, 22 ... reference map creation, 23 ... reference map storage Part, 24... Difference image creation part, DESCRIPTION OF SYMBOLS 5 ... Difference image storage part, 26 ... Data transmission part, 30 ... Mobile robot, 31 ... Wireless communication apparatus, 32 ... Position and orientation estimation apparatus, 320 ... Data acquisition part, 321 ... Data storage unit, 322 ... First evaluation image creation unit, 323 ... Integrated difference image creation unit, 324 ... First evaluation value calculation unit, 325 ... Second evaluation image Creation unit, 326 ... Position and orientation estimation unit, 327 ... Evaluation value storage unit, 328 ... Second evaluation value calculation unit, 33 ... Distance sensor, 34 ... Moving device

Claims (4)

距離センサの主方向とのなす角度が異なり、主方向とのなす角度が小さい順にψ01,・・・ψm-1とするm個の方向ψk(k=0,1,・・・m-1)と、前記距離センサから異なる距離rとにおいて、方向ψkおよび距離rの組み合わせ毎にベクトルA(r,ψk)を定義し、
それぞれのベクトルA(r,ψk)毎に、複数の画素から構成される二次元の環境地図を、当該ベクトルA(r,ψk)で示される方向と逆方向へ、当該ベクトルA(r,ψk)で示される距離分平行移動することにより、参照地図(r,ψk)を作成し、
作成した参照地図(r,ψk)と、前記距離センサによって測定されたセンシングデータであって、前記距離センサの主方向とのなす角度が異なるn個の方向φi(i=0,1,・・・n-1)、および、それぞれの方向φiにおける前記距離センサから物体までの距離di(i=0,1,・・・n-1)を示すセンシングデータ(dii)とから、前記距離センサが搭載された装置の位置および向きを前記環境地図内で推定する位置姿勢推定システムにおける位置姿勢推定方法であって、
前記位置姿勢推定システムは、
参照データ作成サーバと、
前記距離センサが搭載された装置に搭載される位置姿勢推定装置と
を備え、
前記参照データ作成サーバが、
前記環境地図から参照地図(r,ψk)(k=0,1,・・・m-1)を作成する参照地図作成ステップと、
作成した参照地図(r,ψk)を参照して、同一の距離r毎に、参照地図(r,ψk)−参照地図(r,ψk-1)により、隣り合う方向における参照地図の差分を画素毎に算出し、算出した画素毎の差分において、0以外の画素値を有する画素を集めた差分画像(r,ψk)(k=1,2,・・・m-1)を作成する差分画像作成ステップと
を実行し、
前記位置姿勢推定装置が、
前記距離センサによって測定されたn個のセンシングデータ(dii)(i=0,1,・・・n-1)のそれぞれについて、当該センシングデータ(dii)に示される距離diおよび方向φiと同一の距離および方向に対応する参照地図(dii)を、前記参照データ作成サーバによって算出された参照地図の中から抽出し、抽出したn個の参照地図(dii)の画素値を画素毎に加算することにより、加算された画素値から構成される、前記距離センサが搭載された装置の向きと前記環境地図の主方向とのなす角をθ0とする評価画像(θ0)を作成する第一の評価画像作成ステップと、
前記評価画像(θ0)内の(x,y)の位置にある画素値を、(x,y,θ0)における評価値として算出する第一の評価値算出ステップと、
j=1からj=m-1まで、前記距離センサによって測定されたn個のセンシングデータ(diij)のそれぞれについて、当該センシングデータ(diij)に示される距離diおよび方向φijと同一の距離および方向に対応する差分画像(diij)を、前記参照データ作成サーバによって作成された差分画像の中から抽出し、抽出したn個の差分画像G(diij)の画素値を画素毎に加算することにより、加算された画素値から構成される、前記距離センサが搭載された装置の向きと前記環境地図の主方向とのなす角をθjとする統合差分画像(θj)を作成し、評価画像(θj-1)と、統合差分画像(θψj)とを、画素毎に加算することにより、評価画像(θj)を作成し、作成した評価画像(θj)内の(x,y)の位置にある画素値を、(x,y,θj)における評価値として算出する第二の評価値算出ステップと、
前記第一の評価値算出ステップにおいて算出した評価値、および、前記第二の評価値算出ステップにおいて算出した評価値の中で、最大の評価値に対応する(x,y,θ)を特定し、前記環境地図の主方向とのなす角度がθの向きで、前記環境地図内の(x,y)の位置に前記距離センサが搭載された装置の向きおよび位置を推定する位置姿勢推定ステップと
を実行することを特徴とする位置姿勢推定方法。
Different angle between the main direction of the distance sensor, the order in [psi 0 angle is smaller with the main direction, ψ 1, ··· ψ m- 1 to m-number of directions ψ k (k = 0,1, · A vector A (r, ψ k ) is defined for each combination of direction ψ k and distance r at m-1) and a different distance r from the distance sensor;
For each vector A (r, ψ k ), a two-dimensional environment map composed of a plurality of pixels is set in a direction opposite to the direction indicated by the vector A (r, ψ k ). , ψ k ) to create a reference map (r, ψ k ) by translating by the distance indicated by
Sensing data measured by the reference sensor (r, ψ k ) and the distance sensor, and n directions φ i (i = 0, 1, ··· n-1), and the distance from the distance sensor in each direction phi i to the object d i (i = 0,1, sensing indicating the ··· n-1) data (d i, phi i ) And a position and orientation estimation method in a position and orientation estimation system for estimating the position and orientation of the device in which the distance sensor is mounted in the environment map,
The position and orientation estimation system includes:
A reference data creation server;
A position and orientation estimation device mounted on a device on which the distance sensor is mounted;
The reference data creation server is
A reference map creating step for creating a reference map (r, ψ k ) (k = 0, 1, ... m-1) from the environmental map;
With reference to the created reference map (r, ψ k ), the reference map in the adjacent direction is referred to by the reference map (r, ψ k ) −reference map (r, ψ k−1 ) at the same distance r. A difference is calculated for each pixel, and a difference image (r, ψ k ) (k = 1, 2,..., M−1) that collects pixels having pixel values other than 0 in the calculated difference for each pixel. Execute the difference image creation step to be created,
The position / orientation estimation device comprises:
For each of n pieces of sensing data (d i , φ i ) (i = 0, 1,... N-1) measured by the distance sensor, the sensing data (d i , φ i ) is indicated. A reference map (d i , φ i ) corresponding to the same distance and direction as the distance d i and direction φ i is extracted from the reference map calculated by the reference data creation server, and extracted n references By adding the pixel values of the map (d i , φ i ) for each pixel, the orientation of the device in which the distance sensor is mounted and the main direction of the environmental map, which is composed of the added pixel values, is formed. A first evaluation image creating step for creating an evaluation image (θ 0 ) having an angle of θ 0 ;
A first evaluation value calculating step of calculating a pixel value at a position of (x, y) in the evaluation image (θ 0 ) as an evaluation value in (x, y, θ 0 );
For each of the n sensing data (d i , φ i −θ j ) measured by the distance sensor from j = 1 to j = m−1, the sensing data (d i , φ i −θ j ) The difference image (d i , φ ij ) corresponding to the same distance and direction as the distance d i and the direction φ ij shown in FIG. The distance sensor configured to extract and add the pixel values of the extracted n difference images G (d i , φ i −θ j ) for each pixel is mounted. Create an integrated difference image (θ j ) with the angle between the orientation of the device and the main direction of the environment map as θ j, and evaluate image (θ j-1 ) and integrated difference image (θψ j ), By adding for each pixel, an evaluation image (θ j ) is created, and the pixel value at the position of (x, y) in the created evaluation image (θ j ) is set to (x, y, θ j ) As an evaluation value A second evaluation value calculation step of leaving,
Among the evaluation values calculated in the first evaluation value calculation step and the evaluation values calculated in the second evaluation value calculation step, (x, y, θ) corresponding to the maximum evaluation value is specified. A position and orientation estimation step for estimating an orientation and a position of a device in which the distance sensor is mounted at a position (x, y) in the environment map, with an angle formed with the main direction of the environment map being a direction θ; A position / orientation estimation method comprising:
距離センサの主方向とのなす角度が異なり、主方向とのなす角度が小さい順にψ01,・・・ψm-1とするm個の方向ψk(k=0,1,・・・m-1)と、前記距離センサから異なる距離rとにおいて、方向ψkおよび距離rの組み合わせ毎にベクトルA(r,ψk)を定義し、
それぞれのベクトルA(r,ψk)毎に、複数の画素から構成される二次元の環境地図を、当該ベクトルA(r,ψk)で示される方向と逆方向へ、当該ベクトルA(r,ψk)で示される距離分平行移動することにより、参照地図(r,ψk)を作成し、
作成した参照地図(r,ψk)と、前記距離センサによって測定されたセンシングデータであって、前記距離センサの主方向とのなす角度が異なるn個の方向φi(i=0,1,・・・n-1)、および、それぞれの方向φiにおける前記距離センサから物体までの距離di(i=0,1,・・・n-1)を示すセンシングデータ(dii)とから、前記距離センサが搭載された装置の位置および向きを前記環境地図内で推定する位置姿勢推定システムであって、
参照データ作成サーバと、
前記距離センサが搭載された装置に搭載される位置姿勢推定装置と
を備え、
前記参照データ作成サーバは、
前記環境地図から参照地図(r,ψk)(k=0,1,・・・m-1)を作成する参照地図作成手段と、
前記参照地図作成手段によって作成された参照地図(r,ψk)を参照して、同一の距離r毎に、参照地図(r,ψk)−参照地図(r,ψk-1)により、隣り合う方向における参照地図の差分を画素毎に算出し、算出した画素毎の差分において、0以外の画素値を有する画素を集めた差分画像(r,ψk)(k=1,2,・・・m-1)を作成する差分画像作成手段と
を有し、
前記位置姿勢推定装置は、
前記距離センサによって測定されたn個のセンシングデータ(dii)(i=0,1,・・・n-1)のそれぞれについて、当該センシングデータ(dii)に示される距離diおよび方向φiと同一の距離および方向に対応する参照地図(dii)を、前記参照データ作成サーバによって算出された参照地図の中から抽出し、抽出したn個の参照地図(dii)の画素値を画素毎に加算することにより、加算された画素値から構成される、前記距離センサが搭載された装置の向きと前記環境地図の主方向とのなす角をθ0とする評価画像(θ0)を作成する第一の評価画像作成手段と、
前記評価画像(θ0)内の(x,y)の位置にある画素値を、(x,y,θ0)における評価値として算出する第一の評価値算出手段と、
j=1からj=m-1まで、前記距離センサによって測定されたn個のセンシングデータ(diij)のそれぞれについて、当該センシングデータ(diij)に示される距離diおよび方向φijと同一の距離および方向に対応する差分画像(diij)を、前記参照データ作成サーバによって作成された差分画像の中から抽出し、抽出したn個の差分画像(diij)の画素値を画素毎に加算することにより、加算された画素値から構成される、前記距離センサが搭載された装置の向きと前記環境地図の主方向とのなす角をθjとする統合差分画像(θj)を作成する統合差分画像作成手段と、
j=1からj=m-1まで、評価画像(θj-1)と、統合差分画像(θj)とを、画素毎に加算することにより、評価画像(θj)を作成する第二の評価画像作成手段と、
j=1からj=m-1まで、前記評価画像(θj)内の(x,y)の位置にある画素値を、(x,y,θj)における評価値として算出する第二の評価値算出手段と、
前記第一の評価値算出手段によって算出された評価値、および、前記第二の評価値算出手段によって算出された評価値の中で、最大の評価値に対応する(x,y,θ)を特定し、前記環境地図の主方向とのなす角度がθの向きで、前記環境地図内の(x,y)の位置に前記距離センサが搭載された装置の向きおよび位置を推定する位置姿勢推定手段と
を有することを特徴とする位置姿勢推定システム。
Different angle between the main direction of the distance sensor, the order in [psi 0 angle is smaller with the main direction, ψ 1, ··· ψ m- 1 to m-number of directions ψ k (k = 0,1, · A vector A (r, ψ k ) is defined for each combination of direction ψ k and distance r at m-1) and a different distance r from the distance sensor;
For each vector A (r, ψ k ), a two-dimensional environment map composed of a plurality of pixels is set in a direction opposite to the direction indicated by the vector A (r, ψ k ). , ψ k ) to create a reference map (r, ψ k ) by translating by the distance indicated by
Sensing data measured by the reference sensor (r, ψ k ) and the distance sensor, and n directions φ i (i = 0, 1, ··· n-1), and the distance from the distance sensor in each direction phi i to the object d i (i = 0,1, sensing indicating the ··· n-1) data (d i, phi i ) And a position and orientation estimation system for estimating the position and orientation of the device on which the distance sensor is mounted in the environmental map,
A reference data creation server;
A position and orientation estimation device mounted on a device on which the distance sensor is mounted;
The reference data creation server is
A reference map creating means for creating a reference map (r, ψ k ) (k = 0, 1, ... m-1) from the environmental map;
With reference to the reference map (r, ψ k ) created by the reference map creating means, the reference map (r, ψ k ) −reference map (r, ψ k−1 ) for the same distance r, A difference between reference maps in adjacent directions is calculated for each pixel, and a difference image (r, ψ k ) (k = 1, 2,...) That collects pixels having pixel values other than 0 in the calculated difference for each pixel. ..M-1) and a differential image creating means for creating
The position / orientation estimation apparatus includes:
For each of n pieces of sensing data (d i , φ i ) (i = 0, 1,... N-1) measured by the distance sensor, the sensing data (d i , φ i ) is indicated. A reference map (d i , φ i ) corresponding to the same distance and direction as the distance d i and direction φ i is extracted from the reference map calculated by the reference data creation server, and extracted n references By adding the pixel values of the map (d i , φ i ) for each pixel, the orientation of the device in which the distance sensor is mounted and the main direction of the environmental map, which is composed of the added pixel values, is formed. A first evaluation image creating means for creating an evaluation image (θ 0 ) having an angle of θ 0 ;
A first evaluation value calculating means for calculating a pixel value at a position of (x, y) in the evaluation image (θ 0 ) as an evaluation value in (x, y, θ 0 );
For each of the n sensing data (d i , φ i −θ j ) measured by the distance sensor from j = 1 to j = m−1, the sensing data (d i , φ i −θ j ) The difference image (d i , φ ij ) corresponding to the same distance and direction as the distance d i and the direction φ ij shown in FIG. An apparatus on which the distance sensor is mounted, which is configured by adding the pixel values of the extracted n extracted difference images (d i , φ ij ) for each pixel. An integrated difference image creating means for creating an integrated difference image (θ j ) with θ j as an angle formed between the orientation of the environment map and the main direction of the environment map;
From j = 1 to j = m−1, an evaluation image (θ j ) is created by adding the evaluation image (θ j-1 ) and the integrated difference image (θ j ) for each pixel. Evaluation image creation means,
A second pixel value is calculated as an evaluation value at (x, y, θ j ) from j = 1 to j = m−1 at the position (x, y) in the evaluation image (θ j ). An evaluation value calculating means;
Among the evaluation values calculated by the first evaluation value calculation means and the evaluation values calculated by the second evaluation value calculation means, (x, y, θ) corresponding to the maximum evaluation value is A position and orientation estimation that identifies and estimates the orientation and position of the device in which the distance sensor is mounted at the position (x, y) in the environment map with an angle of θ with the main direction of the environment map And a position and orientation estimation system.
距離センサの主方向とのなす角度が異なり、主方向とのなす角度が小さい順にψ01,・・・ψm-1とするm個の方向ψk(k=0,1,・・・m-1)と、前記距離センサから異なる距離rとにおいて、方向ψkおよび距離rの組み合わせ毎にベクトルA(r,ψk)を定義し、
それぞれのベクトルA(r,ψk)毎に、複数の画素から構成される二次元の環境地図を、当該ベクトルA(r,ψk)で示される方向と逆方向へ、当該ベクトルA(r,ψk)で示される距離分平行移動することにより、参照地図(r,ψk)を作成し、
作成した参照地図(r,ψk)と、前記距離センサによって測定されたセンシングデータであって、前記距離センサの主方向とのなす角度が異なるn個の方向φi(i=0,1,・・・n-1)、および、それぞれの方向φiにおける前記距離センサから物体までの距離di(i=0,1,・・・n-1)を示すセンシングデータ(dii)とから、前記距離センサが搭載された装置の位置および向きを前記環境地図内で推定する位置姿勢推定装置における位置姿勢推定方法であって、
前記位置姿勢推定装置は、
前記環境地図から参照地図(r,ψk)(k=0,1,・・・m-1)を作成する参照地図作成ステップと、
前記参照地図作成ステップにおいて作成した参照地図(r,ψk)を参照して、同一の距離r毎に、参照地図(r,ψk)−参照地図(r,ψk-1)により、隣り合う方向における参照地図の差分を画素毎に算出し、算出した画素毎の差分において、0以外の画素値を有する画素を集めた差分画像(r,ψk)(k=1,2,・・・m-1)を作成する差分画像作成ステップと、
前記距離センサによって測定されたn個のセンシングデータ(dii)(i=0,1,・・・n-1)のそれぞれについて、当該センシングデータ(dii)に示される距離diおよび方向φiと同一の距離および方向に対応する参照地図(dii)を参照地図の中から抽出し、抽出したn個の参照地図(dii)の画素値を画素毎に加算することにより、加算された画素値から構成される、前記距離センサが搭載された装置の向きと前記環境地図の主方向とのなす角をθ0とする評価画像(θ0)を作成する第一の評価画像作成ステップと、
前記評価画像(θ0)内の(x,y)の位置にある画素値を、(x,y,θ0)における評価値として算出する第一の評価値算出ステップと、
j=1からj=m-1まで、前記距離センサによって測定されたn個のセンシングデータ(diij)のそれぞれについて、当該センシングデータ(diij)に示される距離diおよび方向φijと同一の距離および方向に対応する差分画像(diij)を差分画像の中から抽出し、抽出したn個の差分画像(diij)の画素値を画素毎に加算することにより、加算された画素値から構成される、前記距離センサが搭載された装置の向きと前記環境地図の主方向とのなす角をθjとする統合差分画像(θj)を作成し、評価画像(θj-1)と、統合差分画像(θj)とを、画素毎に加算することにより、評価画像(θj)を作成し、前記評価画像(θj)内の(x,y)の位置にある画素値を、(x,y,θj)における評価値として算出する第二の評価値算出ステップと、
前記第一の評価値算出ステップにおいて算出した評価値、および、前記第二の評価値算出ステップにおいて算出した評価値の中で、最大の評価値に対応する(x,y,θ)を特定し、前記環境地図の主方向とのなす角度がθの向きで、前記環境地図内の(x,y)の位置に前記距離センサが搭載された装置の向きおよび位置を推定する位置姿勢推定ステップと
を実行することを特徴とする位置姿勢推定方法。
Different angle between the main direction of the distance sensor, the order in [psi 0 angle is smaller with the main direction, ψ 1, ··· ψ m- 1 to m-number of directions ψ k (k = 0,1, · A vector A (r, ψ k ) is defined for each combination of direction ψ k and distance r at m-1) and a different distance r from the distance sensor;
For each vector A (r, ψ k ), a two-dimensional environment map composed of a plurality of pixels is set in a direction opposite to the direction indicated by the vector A (r, ψ k ). , ψ k ) to create a reference map (r, ψ k ) by translating by the distance indicated by
Sensing data measured by the reference sensor (r, ψ k ) and the distance sensor, and n directions φ i (i = 0, 1, ··· n-1), and the distance from the distance sensor in each direction phi i to the object d i (i = 0,1, sensing indicating the ··· n-1) data (d i, phi i ) And a position and orientation estimation method in a position and orientation estimation device for estimating the position and orientation of the device in which the distance sensor is mounted in the environment map,
The position / orientation estimation apparatus includes:
A reference map creating step for creating a reference map (r, ψ k ) (k = 0, 1, ... m-1) from the environmental map;
Referring to reference maps created in the reference map creation step (r, ψ k), for each same distance r, the reference map (r, ψ k) - by reference map (r, ψ k-1) , next The difference between the reference maps in the matching direction is calculated for each pixel, and the difference image (r, ψ k ) (k = 1, 2,...) That collects pixels having pixel values other than 0 in the calculated difference for each pixel. A difference image creation step for creating m-1),
For each of n pieces of sensing data (d i , φ i ) (i = 0, 1,... N-1) measured by the distance sensor, the sensing data (d i , φ i ) is indicated. A reference map (d i , φ i ) corresponding to the same distance and direction as the distance d i and the direction φ i is extracted from the reference map, and the extracted n reference maps (d i , φ i ) pixels by adding the value for each pixel, and an adding pixel values, the evaluation image to the angle of theta 0 and direction as the main direction of the environmental map of the distance sensor is mounted device (theta 0 ) a first evaluation image creation step,
A first evaluation value calculating step of calculating a pixel value at a position of (x, y) in the evaluation image (θ 0 ) as an evaluation value in (x, y, θ 0 );
For each of the n sensing data (d i , φ i −θ j ) measured by the distance sensor from j = 1 to j = m−1, the sensing data (d i , φ i −θ j ) The difference image (d i , φ ij ) corresponding to the same distance and direction as the distance d i and direction φ ij shown in FIG. By adding the pixel values of (d i , φ i −θ j ) for each pixel, the orientation of the device in which the distance sensor is mounted and the main direction of the environment map, which are configured from the added pixel values, An integrated difference image (θ j ) with an angle formed by θ j is created, and the evaluation image (θ j-1 ) and the integrated difference image (θ j ) are added for each pixel to obtain an evaluation image ( The second evaluation value calculation step of creating θ j ) and calculating the pixel value at the position (x, y) in the evaluation image (θ j ) as the evaluation value in (x, y, θ j ) When,
Among the evaluation values calculated in the first evaluation value calculation step and the evaluation values calculated in the second evaluation value calculation step, (x, y, θ) corresponding to the maximum evaluation value is specified. A position and orientation estimation step for estimating an orientation and a position of a device in which the distance sensor is mounted at a position (x, y) in the environment map, with an angle formed with the main direction of the environment map being a direction θ; A position / orientation estimation method comprising:
距離センサの主方向とのなす角度が異なり、主方向とのなす角度が小さい順にψ01,・・・ψm-1とするm個の方向ψk(k=0,1,・・・m-1)と、前記距離センサから異なる距離rとにおいて、方向ψkおよび距離rの組み合わせ毎にベクトルA(r,ψk)を定義し、
それぞれのベクトルA(r,ψk)毎に、複数の画素から構成される二次元の環境地図を、当該ベクトルA(r,ψk)で示される方向と逆方向へ、当該ベクトルA(r,ψk)で示される距離分平行移動することにより、参照地図(r,ψk)を作成し、
作成した参照地図(r,ψk)と、前記距離センサによって測定されたセンシングデータであって、前記距離センサの主方向とのなす角度が異なるn個の方向φi(i=0,1,・・・n-1)、および、それぞれの方向φiにおける前記距離センサから物体までの距離di(i=0,1,・・・n-1)を示すセンシングデータ(dii)とから、前記距離センサが搭載された装置の位置および向きを前記環境地図内で推定する位置姿勢推定装置であって、
前記環境地図から参照地図(r,ψk)(k=0,1,・・・m-1)を作成する参照地図作成手段と、
前記参照地図作成手段によって作成された参照地図(r,ψk)を参照して、同一の距離r毎に、参照地図(r,ψk)−参照地図(r,ψk-1)により、隣り合う方向における参照地図の差分を画素毎に算出し、算出した画素毎の差分において、0以外の画素値を有する画素を集めた差分画像(r,ψk)(k=1,2,・・・m-1)を作成する差分画像作成手段と、
前記距離センサによって測定されたn個のセンシングデータ(dii)(i=0,1,・・・n-1)のそれぞれについて、当該センシングデータ(dii)に示される距離diおよび方向φiと同一の距離および方向に対応する参照地図(dii)を参照地図の中から抽出し、抽出したn個の参照地図(dii)の画素値を画素毎に加算することにより、加算された画素値から構成される、前記距離センサが搭載された装置の向きと前記環境地図の主方向とのなす角をθ0とする評価画像(θ0)を作成する第一の評価画像作成手段と、
前記評価画像(θ0)内の(x,y)の位置にある画素値を、(x,y,θ0)における評価値として算出する第一の評価値算出手段と、
j=1からj=m-1まで、前記距離センサによって測定されたn個のセンシングデータ(diij)のそれぞれについて、当該センシングデータ(diij)に示される距離diおよび方向φijと同一の距離および方向に対応する差分画像(diij)を差分画像の中から抽出し、抽出したn個の差分画像(diij)の画素値を画素毎に加算することにより、加算された画素値から構成される、前記距離センサが搭載された装置の向きと前記環境地図の主方向とのなす角をθjとする統合差分画像(θj)を作成する統合差分画像作成手段と、
j=1からj=m-1まで、評価画像(θj-1)と、統合差分画像(θj)とを、画素毎に加算することにより、評価画像(θj)を作成する第二の評価画像作成手段と、
j=1からj=m-1まで、前記評価画像(θj)内の(x,y)の位置にある画素値を、(x,y,θj)における評価値として算出する第二の評価値算出手段と、
前記第一の評価値算出手段によって算出された評価値、および、前記第二の評価値算出手段によって算出された評価値の中で、最大の評価値に対応する(x,y,θ)を特定し、前記環境地図の主方向とのなす角度がθの向きで、前記環境地図内の(x,y)の位置に前記距離センサが搭載された装置の向きおよび位置を推定する位置姿勢推定手段と
を有することを特徴とする位置姿勢推定装置。
Different angle between the main direction of the distance sensor, the order in [psi 0 angle is smaller with the main direction, ψ 1, ··· ψ m- 1 to m-number of directions ψ k (k = 0,1, · A vector A (r, ψ k ) is defined for each combination of direction ψ k and distance r at m-1) and a different distance r from the distance sensor;
For each vector A (r, ψ k ), a two-dimensional environment map composed of a plurality of pixels is set in a direction opposite to the direction indicated by the vector A (r, ψ k ). , ψ k ) to create a reference map (r, ψ k ) by translating by the distance indicated by
Sensing data measured by the reference sensor (r, ψ k ) and the distance sensor, and n directions φ i (i = 0, 1, ··· n-1), and the distance from the distance sensor in each direction phi i to the object d i (i = 0,1, sensing indicating the ··· n-1) data (d i, phi i ) To estimate the position and orientation of the device in which the distance sensor is mounted in the environmental map,
A reference map creating means for creating a reference map (r, ψ k ) (k = 0, 1, ... m-1) from the environmental map;
With reference to the reference map (r, ψ k ) created by the reference map creating means, the reference map (r, ψ k ) −reference map (r, ψ k−1 ) for the same distance r, A difference between reference maps in adjacent directions is calculated for each pixel, and a difference image (r, ψ k ) (k = 1, 2,...) That collects pixels having pixel values other than 0 in the calculated difference for each pixel. ..M-1) difference image creation means,
For each of n pieces of sensing data (d i , φ i ) (i = 0, 1,... N-1) measured by the distance sensor, the sensing data (d i , φ i ) is indicated. A reference map (d i , φ i ) corresponding to the same distance and direction as the distance d i and the direction φ i is extracted from the reference map, and the extracted n reference maps (d i , φ i ) pixels by adding the value for each pixel, and an adding pixel values, the evaluation image to the angle of theta 0 and direction as the main direction of the environmental map of the distance sensor is mounted device (theta 0 ) a first evaluation image creating means for creating
A first evaluation value calculating means for calculating a pixel value at a position of (x, y) in the evaluation image (θ 0 ) as an evaluation value in (x, y, θ 0 );
For each of the n sensing data (d i , φ i −θ j ) measured by the distance sensor from j = 1 to j = m−1, the sensing data (d i , φ i −θ j ) The difference image (d i , φ ij ) corresponding to the same distance and direction as the distance d i and direction φ ij shown in FIG. By adding the pixel values of (d i , φ i −θ j ) for each pixel, the orientation of the device in which the distance sensor is mounted and the main direction of the environment map, which are configured from the added pixel values, Integrated difference image creating means for creating an integrated difference image (θ j ) with an angle formed by θ j ,
From j = 1 to j = m−1, an evaluation image (θ j ) is created by adding the evaluation image (θ j-1 ) and the integrated difference image (θ j ) for each pixel. Evaluation image creation means,
A second pixel value is calculated as an evaluation value at (x, y, θ j ) from j = 1 to j = m−1 at the position (x, y) in the evaluation image (θ j ). An evaluation value calculating means;
Among the evaluation values calculated by the first evaluation value calculation means and the evaluation values calculated by the second evaluation value calculation means, (x, y, θ) corresponding to the maximum evaluation value is A position and orientation estimation that identifies and estimates the orientation and position of the device in which the distance sensor is mounted at the position (x, y) in the environment map with an angle of θ with the main direction of the environment map A position and orientation estimation device.
JP2007278496A 2007-10-26 2007-10-26 Position attitude estimation system, position attitude estimation device, and position attitude estimation method Pending JP2009109200A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007278496A JP2009109200A (en) 2007-10-26 2007-10-26 Position attitude estimation system, position attitude estimation device, and position attitude estimation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007278496A JP2009109200A (en) 2007-10-26 2007-10-26 Position attitude estimation system, position attitude estimation device, and position attitude estimation method

Publications (1)

Publication Number Publication Date
JP2009109200A true JP2009109200A (en) 2009-05-21

Family

ID=40777846

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007278496A Pending JP2009109200A (en) 2007-10-26 2007-10-26 Position attitude estimation system, position attitude estimation device, and position attitude estimation method

Country Status (1)

Country Link
JP (1) JP2009109200A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106153043A (en) * 2015-04-13 2016-11-23 Tcl集团股份有限公司 A kind of robot chamber inner position method and system based on infrared distance sensor
WO2016199338A1 (en) * 2015-06-12 2016-12-15 株式会社デンソー Moving body position and orientation estimation device and autonomous driving system for moving body
JP2017003561A (en) * 2015-06-12 2017-01-05 株式会社デンソー Device for estimating position and posture of mobile entity, and autonomous traveling system of mobile entity
US9804605B2 (en) 2013-03-29 2017-10-31 Hitachi Industrial Equipment Systems, Co., Ltd. Position identification device and mobile robot provided with same
KR20180039202A (en) * 2016-10-07 2018-04-18 전자부품연구원 3-dimensional remote control system and method, control device thereof
CN112824994A (en) * 2019-11-15 2021-05-21 株式会社东芝 Position estimation device, position estimation method, and program
CN113625296A (en) * 2021-07-30 2021-11-09 深圳市优必选科技股份有限公司 Robot positioning method and device based on reflector and robot

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9804605B2 (en) 2013-03-29 2017-10-31 Hitachi Industrial Equipment Systems, Co., Ltd. Position identification device and mobile robot provided with same
CN106153043A (en) * 2015-04-13 2016-11-23 Tcl集团股份有限公司 A kind of robot chamber inner position method and system based on infrared distance sensor
WO2016199338A1 (en) * 2015-06-12 2016-12-15 株式会社デンソー Moving body position and orientation estimation device and autonomous driving system for moving body
JP2017003561A (en) * 2015-06-12 2017-01-05 株式会社デンソー Device for estimating position and posture of mobile entity, and autonomous traveling system of mobile entity
KR20180039202A (en) * 2016-10-07 2018-04-18 전자부품연구원 3-dimensional remote control system and method, control device thereof
CN112824994A (en) * 2019-11-15 2021-05-21 株式会社东芝 Position estimation device, position estimation method, and program
CN113625296A (en) * 2021-07-30 2021-11-09 深圳市优必选科技股份有限公司 Robot positioning method and device based on reflector and robot
CN113625296B (en) * 2021-07-30 2023-11-21 深圳市优必选科技股份有限公司 Robot positioning method and device based on reflector and robot

Similar Documents

Publication Publication Date Title
JP7308597B2 (en) Resolution-adaptive mesh for performing 3-D measurements of objects
JP7278263B2 (en) Method and system for use in performing localization
Liu Robotic online path planning on point cloud
EP3401815B1 (en) Determining an architectural layout
Westman et al. Feature-based SLAM for imaging sonar with under-constrained landmarks
JP6349418B2 (en) Object positioning by high-precision monocular movement
JP7131994B2 (en) Self-position estimation device, self-position estimation method, self-position estimation program, learning device, learning method and learning program
JP5181704B2 (en) Data processing apparatus, posture estimation system, posture estimation method and program
CN113228114A (en) Computer vision system
JP2009109200A (en) Position attitude estimation system, position attitude estimation device, and position attitude estimation method
US20200320738A1 (en) Method and system for updating map for pose estimation based on images
JP2022547288A (en) Scene display using image processing
WO2016042779A1 (en) Triangulation device, triangulation method, and recording medium recording program therefor
JP7033859B2 (en) Identifying the two-dimensional position of the vehicle using geoarc
Raza et al. Comparing and evaluating indoor positioning techniques
JPWO2018168255A1 (en) Camera parameter estimation device, camera parameter estimation method, and program
KR102387797B1 (en) Method and Apparatus for localization in real space using 3D virtual space model
JP5365969B2 (en) Image processing apparatus and program
WO2008032375A1 (en) Image correcting device and method, and computer program
CN117136383A (en) Modeling an environment using image data
US11915449B2 (en) Method and apparatus for estimating user pose using three-dimensional virtual space model
JP2020041950A (en) Surveying device, surveying method, and program
Emaduddin et al. Accurate floor detection and segmentation for indoor navigation using RGB+ D and stereo cameras
WO2022009602A1 (en) Information processing device, information processing method, and program
Linåker et al. Real-time appearance-based Monte Carlo localization