KR20150068633A - Method for estimating location of mobile device, and apparatus thereof - Google Patents

Method for estimating location of mobile device, and apparatus thereof Download PDF

Info

Publication number
KR20150068633A
KR20150068633A KR1020130154506A KR20130154506A KR20150068633A KR 20150068633 A KR20150068633 A KR 20150068633A KR 1020130154506 A KR1020130154506 A KR 1020130154506A KR 20130154506 A KR20130154506 A KR 20130154506A KR 20150068633 A KR20150068633 A KR 20150068633A
Authority
KR
South Korea
Prior art keywords
particles
particle
mobile device
predicting
protected area
Prior art date
Application number
KR1020130154506A
Other languages
Korean (ko)
Other versions
KR101547025B1 (en
Inventor
박홍성
장준영
Original Assignee
강원대학교산학협력단
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 강원대학교산학협력단 filed Critical 강원대학교산학협력단
Priority to KR1020130154506A priority Critical patent/KR101547025B1/en
Publication of KR20150068633A publication Critical patent/KR20150068633A/en
Application granted granted Critical
Publication of KR101547025B1 publication Critical patent/KR101547025B1/en

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16ZINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS, NOT OTHERWISE PROVIDED FOR
    • G16Z99/00Subject matter not provided for in other main groups of this subclass

Landscapes

  • Position Fixing By Use Of Radio Waves (AREA)

Abstract

Disclosed is a method for predicting the location of a mobile device. According to an embodiment of the present invention, the invention comprises the steps of: grouping particles, which are distributed around a feature point, into a predetermined number of areas based on a particle center point; saving, in a memory, at least one particle having a weight value within a predetermined range among particles positioned within the grouped areas; replicating, except for the stored particles among the particles within the grouped area, the remaining particles by n number, respectively; and predicting a position of the mobile device based on at least one particle which is saved, and the replicated particles.

Description

이동 기기의 위치를 예측하는 방법, 및 장치{METHOD FOR ESTIMATING LOCATION OF MOBILE DEVICE, AND APPARATUS THEREOF}Field of the Invention [0001] The present invention relates to a method and apparatus for predicting a location of a mobile device,

아래 실시예들은 이동 기기의 위치를 예측하는 방법, 및 장치에 관한 것으로서, 보다 구체적으로, 알려지지 않은 환경 맵에서 파티클 재추출 과정을 통해 이동 기기의 위치를 보다 정확하게 예측하는 방법, 및 장치에 관한 것이다.The following embodiments relate to a method and apparatus for predicting the position of a mobile device, and more particularly, to a method and apparatus for more accurately predicting a position of a mobile device through re-extraction of particles in an unknown environment map .

이동 기기는 이동 중 센서를 통해 특징점(landmark)을 찾아 특징점의 위치 정보를 획득할 수 있다. 하지만, 이동 기기는 특징점의 정확한 위치를 획득할 수 없고, 특징점이 어떤 위치에 있을 것이라는 확률 정보를 얻을 수 있는데, 상기 확률 정보를 파티클이라고 한다.The mobile device can acquire the location information of the feature point by searching for the landmark through the sensor during the movement. However, the mobile device can not acquire the exact position of the feature point, and can obtain the probability information that the feature point is in a certain position, and the probability information is called a particle.

동시 자기 위치 인식 및 지도 작성(Simultaneous Localization and Mapping, SLAM)은 로봇이 이동 중 알려지지 않은 환경에 대해 맵을 만들고, 자동적으로 위치 추정을 하기 위한 기술로서, 로봇 자율 주행 분야에서 SLAM은 필수적이다. SLAM은 자기 위치 인식(Localization)과 비슷한 절차로 수행되나, 발견된 위치와 자세정보를 확인할 수 있는 센서 특이정보인 특징점의 위치정보, 및 식별정보가 사전에 주어지지 않는다. 특징점의 위치정보, 및 식별정보는 로봇이 주행하면서 생성되고, 추정되는 점에서 Localization과 다르다.Simultaneous Localization and Mapping (SLAM) is a technique for making a map for an unknown environment while the robot is moving and automatically performing position estimation. SLAM is indispensable in the robot autonomous navigation field. The SLAM is performed in a similar manner to the localization, but the location information of the feature point, which is sensor specific information for identifying the detected position and attitude information, and the identification information are not given in advance. The location information and the identification information of the minutiae are different from the localization in that the robot is generated while traveling and is estimated.

로봇의 주행과정에서 동작제어잡음과 환경센서 잡음이 존재하고, 예측된 로봇의 추정 오차가 커져, SLAM의 효율은 낮아진다. 이러한 SLAM의 문제를 해결하기 위한 방법으로 칼만 필터를 사용하는 확장형 칼만 필터기반의 SLAM(Extended Kalman Filter-SLAM, EKF-SLAM), 파티클 필터를 사용하여 로봇의 위치를 추정하고, 칼만 필터를 사용하여 특징점의 위치를 추정하는 SLAM(Factored Solution to the SLAM, FastSLAM) 등이 있다. 특히, FastSLAM은 계산 복잡도가 특징점 수의 비례적으로 증가하며, 파티클 마다 다른 추정치를 저장하여, 추정치간의 보완이 가능하다. 또한, FastSLAM은 파티클 필터와 칼만 필터를 동시에 사용하기 때문에, 부정확한 로봇 모델에 대해서 강인한 특성을 가진다. 하지만, FastSLAM은 파티클 재추출 과정에서 확률적으로 낮은 가중치를 갖는 파티클들이 삭제되고, 삭제된 파티클들이 가지고 있는 위치 정보 또한 삭제되기 때문에 파티클의 다양성이 상실될 수 있다. 즉, FastSLAM에서, 파티클 고갈(particle depletion) 문제가 발생한다.There are motion control noise and environmental sensor noise in the course of robot movement, and the estimation error of the predicted robot becomes large, and the efficiency of SLAM becomes low. In order to solve the problem of SLAM, the position of the robot is estimated by using extended Kalman filter-SLAM (EKF-SLAM) and particle filter based on Kalman filter and Kalman filter And SLAM (Factored Solution to the SLAM, FastSLAM) for estimating the location of the minutiae. In particular, FastSLAM increases the computational complexity in proportion to the number of minutiae points, and it can store different estimates for each particle and compensate between estimates. In addition, since FastSLAM uses particle filter and Kalman filter at the same time, it has robust characteristics for an inaccurate robot model. However, FastSLAM can lose the diversity of particles because the particles having a low probability weight are deleted and the position information of the deleted particles is also deleted in the process of re-extracting the particles. That is, in FastSLAM, a problem of particle depletion occurs.

파티클의 가중치가 낮아도 재추출 과정에서 가중치가 낮은 파티클은 제거되지 않을 수 있어, 기존의 파티클 재추출 기법에서 발생하는 파티클 고갈의 문제를 해결할 수 있다.Even if the weight of the particle is low, the particle with low weight can not be removed in the re-extraction process, and the problem of particle depletion occurring in the conventional particle re-extraction technique can be solved.

가중치가 낮은 파티클도 재추출 과정에서 살아남을 수 있어, 파티클의 다양성을 유지할 수 있다. 또한, 다양한 파티클이 유지되고, 재추출 과정에서 살아남은 파티클의 수도 많아져, 살아남은 파티클을 통해 이동 기기의 위치를 보다 정확하게 예측할 수 있다.Particles with low weights can survive the re-extraction process, thus maintaining the variety of particles. In addition, various particles are retained, and the number of surviving particles in the reextraction process increases, so that the position of the mobile device can be more accurately predicted through the surviving particles.

일 측에 따른 이동 기기의 위치를 예측하는 방법은 특징점 주위에 분포한 복수의 파티클들을 파티클 중심점을 기준으로 미리 정해진 개수의 지역들로 그룹핑하는 단계; 상기 그룹핑된 지역 내에 위치한 파티클들 중에서 미리 정해진 범위 내의 가중치를 갖는 적어도 하나의 파티클을 메모리에 저장하는 단계; 상기 그룹핑된 지역 내의 파티클들 중에서 상기 저장된 파티클들을 제외한 나머지 파티클들을 n개 만큼 각각 복제하는 단계; 및 상기 저장된 적어도 하나의 파티클, 및 상기 복제된 파티클들에 기초하여, 상기 이동 기기의 위치를 예측하는 단계를 포함한다.A method for predicting a position of a mobile device according to one side includes: grouping a plurality of particles distributed around a minutiae point into a predetermined number of regions based on a center point of the particle; Storing in the memory at least one particle having a weight within a predetermined range among the particles located within the grouped region; Duplicating the remaining particles except for the stored particles among the particles in the grouped region by n; And predicting a location of the mobile device based on the stored at least one particle and the replicated particles.

또한, 상기 n은, 상기 나머지 파티클들의 개수, 및 상기 나머지 파티클들의 가중치를 기초로 계산된다.Also, n is calculated based on the number of remaining particles and the weight of the remaining particles.

또한, 상기 그룹핑된 지역 내에 위치한 파티클들 중에서 상기 나머지 파티클들이 보호 지역에 있는지 판단하는 단계를 더 포함하고, 상기 나머지 파티클들이 상기 보호 지역외에 있다고 판단되는 경우, 상기 복제하는 단계는, 상기 n에 가산가중치를 부여하여 상기 나머지 파티클들을 복제한다.The method of claim 1, further comprising: determining whether the remaining particles are located in a protected area among the particles located within the grouped area, and when it is determined that the remaining particles are located outside the protected area, And weights are given to replicate the remaining particles.

다른 일 측에 따른 이동 기기의 위치를 예측하는 방법은 특징점에서 관찰한 복수의 파티클들을 기록하고, 상기 파티클들에 가중치를 부여하는 단계; 상기 파티클들을 미리 정해진 개수의 그룹으로 그룹핑하는 단계; 상기 그룹 내에서 보호 지역을 설정하는 단계; 상기 그룹 내에서 상기 가중치가 미리 정해진 범위 이내인 적어도 하나의 파티클, 상기 보호 지역 내에 위치한 적어도 하나의 파티클, 및 상기 보호 지역 외에 위치한 적어도 하나의 파티클을 기초로 파티클 집합을 구성하는 단계; 및 상기 파티클 집합을 기초로 이동 기기의 위치를 예측하는 단계를 포함한다.A method for predicting a position of a mobile device according to another side includes: recording a plurality of particles observed at a feature point and weighting the particles; Grouping the particles into a predetermined number of groups; Setting a protected area within the group; Constructing a set of particles based on at least one particle in the group, the weight being within a predetermined range, at least one particle located within the protected area, and at least one particle located outside the protected area; And predicting a position of the mobile device based on the set of particles.

또한, 상기 그룹 내에서 보호 지역을 설정하는 단계는, 지역 중심점, 및 미리 설정된 보호 반경을 기초로 상기 보호 지역을 설정하고, 상기 지역 중심점은, 상기 그룹 내에 있는 상기 파티클들의 좌표를 기초로 계산된다.In addition, the step of setting the protected area in the group sets the protected area based on the area center point and a preset protective radius, and the area center point is calculated based on the coordinates of the particles in the group .

일 측에 따른 이동 기기의 위치를 예측하는 장치는 특징점 주위에 분포한 복수의 파티클들을 파티클 중심점을 기준으로 미리 정해진 개수의 지역들로 그룹핑하고, 상기 그룹핑된 지역 내의 파티클들 중에서 미리 정해진 범위 내의 가중치를 갖는 적어도 하나의 파티클을 제외한 나머지 파티클들을 n개 만큼 각각 복제하는 프로세서; 상기 미리 정해진 범위 내의 가중치를 갖는 적어도 하나의 파티클을 저장하는 메모리; 및 상기 저장된 적어도 하나 이상의 파티클들, 및 상기 복제된 파티클들에 기초하여, 상기 이동 기기의 위치를 예측하는 예측부를 포함한다.An apparatus for predicting a position of a mobile device according to one side groups a plurality of particles distributed around a minutiae point into a predetermined number of regions with respect to a center point of a particle and calculates a weight within a predetermined range among the particles in the grouped region A processor for duplicating the remaining particles except for the at least one particle having n; A memory for storing at least one particle having a weight within the predetermined range; And a predictor for predicting a position of the mobile device based on the stored at least one particle and the copied particles.

또한, 상기 프로세서는, 상기 나머지 파티클들이 상기 보호 지역외에 있다고 판단하는 경우, 상기 n에 가산가중치를 부여하여 상기 나머지 파티클들을 복제하고, 상기 나머지 파티클들이 상기 보호 지역 내에 있다고 판단하는 경우, 상기 n이 미리 정해진 개수 미만일 때, 상기 n에 미리 정해진 개수를 더하여 상기 보호 지역내에 위치한 파티클들을 복제한다.In addition, when the processor determines that the remaining particles are outside the protected area, the processor replaces the remaining particles by assigning an addition weight to the n, and when determining that the remaining particles are within the protected area, When the number of particles is less than the predetermined number, n is multiplied by a predetermined number to replicate particles located in the protected area.

다른 일 측에 따른 이동 기기의 위치를 예측하는 장치는 특징점에서 관찰한 복수의 파티클들을 기록하고, 상기 파티클들에 가중치를 부여하는 업데이트부; 상기 파티클들을 미리 정해진 개수의 그룹으로 그룹핑하고, 상기 그룹 내에서 보호 지역을 설정하며, 상기 그룹 내에서 상기 가중치가 미리 정해진 범위 이내인 적어도 하나의 파티클, 상기 보호 지역 내에 위치한 적어도 하나의 파티클, 및 상기 보호 지역 외에 위치한 적어도 하나의 파티클을 기초로 파티클 집합을 구성하는 재추출부; 및 상기 파티클 집합을 기초로 이동 기기의 위치를 예측하는 예측부를 포함한다.An apparatus for predicting a position of a mobile device according to another aspect of the present invention includes an update unit for recording a plurality of particles observed at a feature point and assigning weights to the particles; Grouping the particles into a predetermined number of groups and setting a protected area within the group, wherein at least one particle within the group has a weight within a predetermined range, at least one particle located within the protected area, and A re-extractor configured to form a particle set based on at least one particle located outside the protected area; And a predictor for predicting a position of the mobile device based on the set of particles.

기존의 FastSLAM에서 사용되는 파티클 재추출 기법인 SIR, 및 PSR과 비교할 때, 본 발명에서 사용되는 재추출 기법은 재추출 과정에서 살아남은 파티클의 수가 많아 파티클의 다양성을 유지할 수 있다.Compared with SIR and PSR, which are re-extracting techniques used in the existing FastSLAM, the re-extraction technique used in the present invention can maintain the diversity of particles because the number of surviving particles is large.

또한, 본 발명에서 사용되는 재추출 기법은 기존의 파티클 재추출 기법에 비해 파티클 수에 따른 이동 기기의 위치의 오차가 감소하여, 이동 기기의 위치 예측의 정확도를 높일 수 있다.Also, the re-extraction technique used in the present invention can reduce the error of the position of the mobile device according to the number of particles as compared with the existing particle re-extraction technique, and can improve the accuracy of the position prediction of the mobile device.

도 1은 맵에서, 이동 기기가 특징점을 감지하고, 자신의 위치를 예측하는 것을 설명하기 위한 도면이다.
도 2은 FastSLAM에서 일반적으로 사용하는 반복적 중요도 재추출 기법을 설명하기 위한 도면이다.
도 3은 지역적으로 분산된 파티클의 정보를 사용하여 파티클을 재추출하는 기법을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 이동 기기의 위치를 예측하는 방법을 설명하기 위한 순서도이다.
도 5는 본 발명의 일 실시예에 따른 이동 기기의 위치를 예측하는 방법에서 미리 정해진 범위 내의 가중치를 갖는 파티클의 저장을 설명하기 위한 도면이다.
도 6은 본 발명의 다른 실시예에 따른 이동 기기의 위치를 예측하는 방법을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른 이동 기기의 위치를 예측하는 장치의 구성을 설명하기 위한 블록도이다.
도 8은 본 발명의 다른 실시예에 따른 이동 기기의 위치를 예측하는 장치의 구성을 설명하기 위한 블록도이다.
도 9는 본 발명에 따른 이동 기기와 기존의 재추출 기법이 적용된 이동 기기 간의 성능 비교를 설명하기 위한 도면이다.
Fig. 1 is a diagram for explaining how, in a map, a mobile device detects a feature point and predicts its position.
FIG. 2 is a diagram for explaining a repetitive importance re-extraction technique generally used in FastSLAM.
3 is a view for explaining a technique of re-extracting particles using information of locally distributed particles.
4 is a flowchart illustrating a method of predicting a location of a mobile device according to an embodiment of the present invention.
5 is a view for explaining storage of particles having a weight within a predetermined range in a method of predicting the position of a mobile device according to an embodiment of the present invention.
6 is a diagram for explaining a method of predicting a position of a mobile device according to another embodiment of the present invention.
7 is a block diagram for explaining a configuration of an apparatus for predicting a position of a mobile device according to an embodiment of the present invention.
8 is a block diagram for explaining a configuration of an apparatus for predicting a position of a mobile device according to another embodiment of the present invention.
9 is a view for explaining performance comparison between a mobile device according to the present invention and a mobile device to which the existing re-extraction technique is applied.

이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 일 실시예들에 의해 제한되거나 한정되는 것은 아니다. 또한, 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, the present invention is not limited to or limited by the embodiments. In addition, the same reference numerals shown in the drawings denote the same members.

일 실시예로서, 본 발명에 따른 이동 기기의 위치를 예측하는 장치는 독립된 기기로(standalone device) 제조되거나 또는 이동 기기에 임베디드된(내장된) 형태로 구현될 수 있다. 여기서, 이동 기기는 전원을 통해 전력을 공급받아 스스로 움직이는 기기로, 이동 로봇을 포함할 수 있다.
In one embodiment, the device for predicting the location of a mobile device according to the present invention may be embodied in a standalone device or embedded in a mobile device. Here, the mobile device is a device that receives power through a power source and moves itself, and may include a mobile robot.

도 1은 맵에서 이동 기기가 특징점을 찾고, 자신의 위치를 예측하는 것을 설명하기 위한 도면이다.Fig. 1 is a diagram for explaining how a mobile device searches for a feature point in a map and predicts its own position.

도 1을 참조하면, 이동 기기(110)는 이동 중 센서를 통해 복수의 특징점들(120 내지 127)을 감지할 수 있다. 여기서, 센서는 레이저 센서, 시각 센서 등을 포함할 수 있다. 이동 기기(110)는 특징점들(120 내지 127)을 감지할 때마다 특징점들(120 내지 127)의 위치 정보를 저장할 수 있다. 예를 들어, 이동 기기(110)는 센서를 통해 특징점까지의 거리를 측정할 수 있다.Referring to FIG. 1, the mobile device 110 may detect a plurality of minutiae 120 through 127 through a sensor during movement. Here, the sensor may include a laser sensor, a visual sensor, and the like. The mobile device 110 may store the location information of the minutiae 120-127 every time it detects the minutiae 120-127. For example, the mobile device 110 may measure a distance to a feature point through a sensor.

시뮬레이션 환경에서, 센서에 의해 감지된 특징점들(120 내지 127) 주위에는 복수의 파티클들이 분포할 수 있다. 특징점들(120 내지 127) 주위에 분포된 파티클들을 통해, 특징점들(120 내지 127)의 위치를 예측할 수 있다.In the simulation environment, a plurality of particles may be distributed around the feature points 120 to 127 sensed by the sensor. Through the particles distributed around the feature points 120 to 127, the position of the feature points 120 to 127 can be predicted.

또한, 시뮬레이션 환경에서, 이동 기기(110)는 자기 주변에 복수의 파티클들을 분포시킬 수 있다. 자기 주변의 분포된 파티클들을 통해, 이동 기기(110)는 자신의 위치를 예측할 수 있다.Also, in a simulated environment, the mobile device 110 may distribute a plurality of particles around itself. Through the distributed particles around the self, the mobile device 110 can predict its position.

이동 기기(110)는 특징점들(120 내지 127)을 감지하여, 파티클들을 특징점들(120 내지 127) 주위에 분포시키고, 자기 주변에 파티클들을 분포시키면서, 원의 경로를 그리면서 이동할 수 있다. 이동 초기에, 이동 기기(120)는 위치 정보가 많지 않아 주어진 경로와의 오차는 많이 발생할 수 있다. 하지만, 파티클의 재추출 과정을 통해, 이동 기기(120)는 자신의 위치를 보다 정확히 예측하면서, 이동할 수 있다.The mobile device 110 may sense the minutiae 120-127, move the particles around the minutiae 120-127, and distribute the particles around themselves, moving along the circle path. At the initial stage of the movement, the mobile device 120 does not have many location information, so that there may be a large error from a given route. However, through the re-extraction process of the particles, the mobile device 120 can move while predicting its position more accurately.

이동 기기(110)는 이동 중 엔코더(encoder) 정보를 획득할 수 있다. 엔코더 정보는 이동 기기(110)의 바퀴 회전 수를 포함할 수 있는데, 이동 기기(110)는 바퀴 회전 수를 통해 자신이 이동한 거리를 알 수 있다. 이동 기기(110)는 엔코더 정보, 및 파티클들을 이용하여 자신의 위치를 예측할 수 있다.
The mobile device 110 may obtain encoder information during movement. The encoder information may include the number of revolutions of the mobile device 110, and the mobile device 110 may know the distance that the mobile device 110 has moved through the number of revolutions of the wheel. The mobile device 110 may estimate its location using encoder information and particles.

도 2은 FastSLAM에서 일반적으로 사용하는 반복적 중요도 재추출 기법을 설명하기 위한 도면이다.FIG. 2 is a diagram for explaining a repetitive importance re-extraction technique generally used in FastSLAM.

FastSLAM은 시간 t에서 이동 로봇의 위치를 나타내는

Figure pat00001
와 맵 정보를 나타내는
Figure pat00002
를 기록한다. 맵 정보는
Figure pat00003
, 및
Figure pat00004
를 포함하고,
Figure pat00005
은 시간 t에서 관찰된 n개의 특징점들을 나타내고,
Figure pat00006
는 특징점의 수를 나타낸다. 기록된 이동 로봇의 위치, 및 맵 정보를 통해, 이동 로봇의 위치와 지도의 위치는 베이시안(Bayesian) 법칙에 의해
Figure pat00007
으로 나타낼 수 있다. 여기서,
Figure pat00008
는 관측(또는 센서정보),
Figure pat00009
는 로봇 제어 입력,
Figure pat00010
는 맵 정보를 나타내는
Figure pat00011
Figure pat00012
사이의 관계를 나타낸다.
Figure pat00013
은 맵 정보와 이동 로봇의 위치의 경험적 확률(posterior) 밀도를 추정하기 위해 필요하다.
Figure pat00014
은 베이시안 필터링(Basyesian filtering)을 통해 수학식 1로 표현될 수 있다.FastSLAM indicates the position of the mobile robot at time t
Figure pat00001
And map information
Figure pat00002
Lt; / RTI > The map information
Figure pat00003
, And
Figure pat00004
Lt; / RTI >
Figure pat00005
Represents the n feature points observed at time t,
Figure pat00006
Represents the number of feature points. The position of the mobile robot and the position of the map are recorded by the Bayesian rule through the recorded position of the mobile robot and the map information
Figure pat00007
. here,
Figure pat00008
(Or sensor information),
Figure pat00009
A robot control input,
Figure pat00010
Indicates map information
Figure pat00011
Wow
Figure pat00012
Lt; / RTI >
Figure pat00013
Is necessary to estimate the empirical posterior density of the map information and the position of the mobile robot.
Figure pat00014
Can be expressed by Equation (1) through Basyesian filtering.

[수학식 1][Equation 1]

Figure pat00015
Figure pat00015

로봇의 위치에 대한 posterior가 알려졌을 때, 수학식 1은 수학식 2와 같이 인수분해 될 수 있다.When the posterior of the position of the robot is known, Equation (1) can be factorized as Equation (2).

[수학식 2]&Quot; (2) "

Figure pat00016

Figure pat00016

맵에서 각 특징점에 대해, FastSLAM은 파티클의 위치

Figure pat00017
에 대해 분리된 추정함수를 사용한다. 인수분해로 인하여, FastSLAM은 각 특징점마다 분리된 EKF를 유지할 수 있고, EKF-SLAM보다 더 효율적으로 갱신된 추정값을 얻을 수 있다. 시간 t에서, m번째 파티클 정보
Figure pat00018
은 수학식 3과 같이 나타낼 수 있다.For each feature point in the map, FastSLAM uses the location of the particle
Figure pat00017
Using a separate estimation function. Due to the factorization, FastSLAM can maintain a separate EKF for each feature point, and can obtain updated estimates more efficiently than EKF-SLAM. At time t, the mth particle information
Figure pat00018
Can be expressed by Equation (3).

[수학식 3]&Quot; (3) "

Figure pat00019
Figure pat00019

여기서, [m]은 파티클의 인덱스,

Figure pat00020
은 [m]번째 파티클의 경로 추정치,
Figure pat00021
, 및
Figure pat00022
는 각각 파티클
Figure pat00023
와 관련된 특징점 위치를 나타내는 가우시안(gaussian) 평균과 공분산을 나타낸다.Here, [m] is the index of the particle,
Figure pat00020
Is the path estimate of the [m] th particle,
Figure pat00021
, And
Figure pat00022
Respectively,
Figure pat00023
And a gaussian mean and a covariance representing the location of the minutiae associated with the target.

FastSLAM은 추출(sampling), 측정데이터 갱신, 가중치부여, 및 재추출(re sampling)의 4단계를 반복적으로 수행한다. 추출단계에서, 이동 로봇이 이동할 때, 센서에 의해 측정된 특징점에서 관찰된 파티클들

Figure pat00024
이 기록된다. 측정데이터 갱신 단계에서, 특징점에서 관찰된 파티클들이 새로운 파티클들이 아닌 경우, 관찰된 파티클들 각각에 대한 평균
Figure pat00025
, 및 공분산
Figure pat00026
을 수행한다. 가중치부여 단계에서, 각각의 파티클들에 대한 가중치
Figure pat00027
가 계산되며,
Figure pat00028
는 수학식 4와 같이 나타낼 수 있다.The FastSLAM repeatedly performs four steps of sampling, updating measurement data, weighting, and re-sampling. In the extraction step, when the mobile robot moves, the particles observed at the feature point measured by the sensor
Figure pat00024
Is recorded. In the measurement data update step, when the particles observed at the feature point are not new particles, the average
Figure pat00025
, And covariance
Figure pat00026
. In the weighting step, the weight for each particle
Figure pat00027
Lt; / RTI >
Figure pat00028
Can be expressed by Equation (4).

[수학식 4]&Quot; (4) "

Figure pat00029
Figure pat00029

여기서, 대상 분포(target distribution)는 실제확률분포이고, 제안 분포(proposal distribution)는 추정확률분포이다.Here, the target distribution is the actual probability distribution, and the proposal distribution is the estimated probability distribution.

각각의 파티클에 가중치가 부여되면, 가중치에 비례한 확률을 가진 파티클들이 추출되고, 추출된 파티클은 복제된다.When each particle is weighted, particles with probabilities proportional to the weight are extracted, and the extracted particles are duplicated.

도 2를 참조하면, 대상 분포가 제안 분포보다 큰 파티클들은 높은 가중치를 부여받고, 대상 분포가 제안 분포보다 작은 파티클들은 낮은 가중치를 부여 받는다. 도 2에서, 스텝이 k-1일 때, 높은 가중치를 부여받은 [m]번째 파티클

Figure pat00030
은 재추출 단계에서 3배가 복제되고, 낮은 가중치를 부여받은 [m+m]번째 파티클
Figure pat00031
은 재추출 단계에서 자신과 동일한 개수가 복제된다. 또한, 일부 파티클들은 가중치가 낮게 부여되어 완전히 제거된다. 파티클들이 복제되고, 제거되는 과정이 반복되어, 파티클들이 기록하는 이동 로봇 경로, 및 특징점의 추정 값이 상실될 수 있다. 따라서, 시간이 지남에 따라 독특한 특성을 가진 파티클들의 수가 줄어드는 파티클 고갈(particle depletion) 문제가 발생하여, 파티클 다양성(particle diversity)이 상실될 수 있다.
Referring to FIG. 2, particles having a target distribution larger than the proposed distribution are given high weights, and particles having a target distribution smaller than the proposed distribution are given low weights. In Fig. 2, when the step is k-1, the [m] th particle
Figure pat00030
Is multiplied three times in the re-extraction step, and the [m + m] -th particles
Figure pat00031
The same number as that of itself is copied in the re-extraction step. In addition, some particles are given a low weight and are completely removed. The processes of copying and removing the particles are repeated so that the estimated values of the mobile robot path and the feature point recorded by the particles may be lost. Thus, over time, particle depletion problems may occur that reduce the number of particles with unique characteristics, which may result in loss of particle diversity.

도 3은 지역적으로 분산된 파티클의 정보를 사용하여 파티클을 재추출하는 기법을 설명하기 위한 도면이다.3 is a view for explaining a technique of re-extracting particles using information of locally distributed particles.

FastSLAM에서 발생하는 파티클 다양성 상실문제를 개선하기 위해, 본 발명은 지역적으로 분산된 파티클의 정보를 사용한다.In order to solve the problem of particle diversity loss occurring in FastSLAM, the present invention uses information of locally distributed particles.

도 3의 (a)를 참조하면, 파티클들의 중심좌표를 통해, 파티클들이 분포한 지역이 K개 지역(예를 들어, 4개의 지역)으로 분할될 수 있다. 각각의 지역 내에는, 다양한 가중치를 갖는 파티클들이 있다. 파티클들의 가중치 중에서 미리 정해진 범위 내의 가중치를 갖는 파티클들은(310) 재추출 과정에서 제외될 수 있다. 미리 정해진 범위 내의 가중치를 갖는 파티클들은 이동 로봇의 위치를 예측할 때 사용된다.Referring to FIG. 3 (a), through the center coordinates of the particles, the region where the particles are distributed can be divided into K regions (for example, four regions). Within each region, there are particles with different weights. Particles having a weight within a predetermined range among the weights of the particles may be excluded from the re-extraction process (310). Particles having weights within a predetermined range are used to predict the position of the mobile robot.

도 3의 (b)를 참조하면, 미리 정해진 범위 내의 가중치를 갖는 파티클들이 제외된 것을 알 수 있다. 미리 정해진 범위 내의 가중치를 갖는 파티클들은 메모리에 저장될 수 있다.Referring to FIG. 3 (b), particles having a weight within a predetermined range are excluded. Particles with weights within a predetermined range can be stored in memory.

도 3의 (c)를 참조하면, 지역 내의 파티클들 중 일부는 보호 지역(320) 내에 있다. 각각의 지역에 존재하는 파티클들의 위치 좌표를 통해, 지역 중심점의 위치가 계산될 수 있다. 파티클들이 분포한 지역이 K개의 지역으로 분할되므로, K개의 지역 중심점의 위치가 계산될 수 있다. 각각의 지역 내에서, 지역 중심점으로부터 일정 거리 이내에 존재하는 파티클들은 재추출과정에서 보호된다. 즉, 보호 지역(320)은 지역 중심점으로부터 일정 범위 이내로 설정될 수 있다. 보호 지역(320)에 존재하는 파티클들은 재추출 과정에서 제거되지 않으므로, 다양한 종류의 파티클들이 생존할 수 있다.Referring to FIG. 3 (c), some of the particles in the region are within the protected area 320. Through the position coordinates of the particles present in each region, the position of the local center point can be calculated. Since the region where the particles are distributed is divided into K regions, the positions of the K regional center points can be calculated. Within each region, particles that are within a certain distance from the local center point are protected during re-extraction. That is, the protected area 320 may be set within a certain range from the area center point. Since the particles present in the protected area 320 are not removed in the re-extraction process, various kinds of particles can survive.

도 3의 (d)를 참조하면, 보호 지역(320) 내에 위치한 파티클들은 제거되지 않고, 복제된다. 보호 지역(320) 외에 위치한 파티클들 중 일부는 복제가 되고, 일부는 제거가 된다. 보호 지역(320)에 외에 위치한 파티클들은 가산가중치가 부여될 수 있다. 파티클 재추출 기법을 통해, 파티클들이 넓은 지역에 분포될 수 있고, 파티클 다양성이 유지될 수 있다.
Referring to FIG. 3 (d), the particles located in the protected area 320 are not removed but are copied. Some of the particles located outside the protected area 320 are replicated and some are removed. Particles located outside the protected area 320 may be given an addition weight. With particle re-extraction techniques, particles can be distributed over a large area and particle diversity can be maintained.

도 4는 본 발명의 일 실시예에 따른 이동 기기의 위치를 예측하는 방법을 설명하기 위한 순서도이다.4 is a flowchart illustrating a method of predicting a location of a mobile device according to an embodiment of the present invention.

일 실시예에 따른 이동 기기의 위치를 예측하는 방법은 도 3에서 설명한 파티클 재추출 기법이 사용될 수 있다.The method for predicting the position of the mobile device according to an exemplary embodiment may use the particle re-extraction technique described in FIG.

도 4를 참조하면, 일 실시예에 따른 이동 기기의 위치를 예측하는 방법은 특징점 주위에 분포한 복수의 파티클들을 파티클 중심점을 기준으로 미리 정해진 개수의 지역들로 그룹핑할 수 있다(410). 다양한 지역에 분포된 파티클들을 일정 그룹으로 나누기 위해, 비 계층적 클러스터링 방법인 K-Means 알고리즘의 원리가 사용될 수 있다. K-Means 알고리즘은 클러스터의 수를 사전에 지정하고, 대상 객체들을 적절한 클러스터에 배정한다. n개의 객체가 주어진 경우, K-Means 알고리즘은 주어진 객체가 지정된 각각의 클러스터에 모두 포함할 때까지 객체를 클러스터한다. K-means 알고리즘은 다양한 형태의 데이터에 적용할 수 있고, 빠른 속도로 데이터를 클러스터할 수 있다.Referring to FIG. 4, in a method of predicting a position of a mobile device according to an exemplary embodiment, a plurality of particles distributed around a feature point may be grouped into a predetermined number of regions based on a center point of a particle (410). The principle of the K-Means algorithm, which is a non-hierarchical clustering method, can be used to divide the particles distributed in various regions into a certain group. The K-Means algorithm pre-assigns the number of clusters and assigns the objects to the appropriate clusters. If n objects are given, the K-Means algorithm clusters the objects until the given object is included in each of the specified clusters. The K-means algorithm can be applied to various types of data and can cluster data at high speed.

특징점 주위에 분포한 복수의 파티클들을 K개의 지역으로 클러스터하기 위해, 특징점 주위에 분포한 복수의 파티클들의 파티클 중심점을 계산해야 한다. 파티클 중심점

Figure pat00032
를 계산하기 위해, 이동 기기가 이동 중에 파티클들의 위치를 측정하는 경우
Figure pat00033
가 양수인지 음수인지 고려해야 한다. 보다 구체적으로, 측정된 파티클들의
Figure pat00034
가 180도와 -180도 일 때, 평균을 구하면 180도가 되지만 단순히 더하면 0도가 된다. 따라서, 각도에 따라 좌표 값을 별개로 저장하여, +영역의 값과 - 영역의 값의 차를 더한 평균좌표가 파티클 중심점으로 계산될 수 있으며, 수학식 5와 같다.In order to cluster a plurality of particles distributed around a feature point into K regions, the particle center point of a plurality of particles distributed around the feature point should be calculated. Particle center point
Figure pat00032
, The mobile device measures the position of the particles during movement
Figure pat00033
Is positive or negative. More specifically, the measured particles
Figure pat00034
Is 180 degrees and -180 degrees, the average is 180 degrees but merely 0 degrees. Accordingly, the coordinate values are separately stored according to the angle, and the average coordinate obtained by adding the difference between the value of the + area and the value of the area can be calculated as the center point of the particle.

[수학식 5]&Quot; (5) "

Figure pat00035
Figure pat00035

여기서,

Figure pat00036
는 파티클 중심점의 좌표,
Figure pat00037
, 및
Figure pat00038
은 각각
Figure pat00039
가 0보다 크거나 같을 때의 x좌표, 및 y좌표,
Figure pat00040
, 및
Figure pat00041
는 각각
Figure pat00042
가 0보다 작을 때의 x좌표, 및 y좌표를 나타낸다.
Figure pat00043
Figure pat00044
가 0보다 크거나 같을 때의 가중치, 및
Figure pat00045
Figure pat00046
가 0보다 작을 때의 가중치를 나타낸다. 파티클들의 좌표 값의 합과 가중치의 합의 평균을 이용하여 파티클 중심점이 계산될 수 있다. 또한, K지역의 지역 중심점
Figure pat00047
는 K지역 내에 위치한 파티클들의 좌표 값의 합과 가중치 합의 평균을 이용하여 계산될 수 있다. 또한, 파티클 중심점과 지역 중심점간의 거리
Figure pat00048
가 계산될 수 있으며, 이는 수학식 6과 같다.here,
Figure pat00036
The coordinates of the particle center point,
Figure pat00037
, And
Figure pat00038
Respectively
Figure pat00039
Is greater than or equal to zero, and the y coordinate,
Figure pat00040
, And
Figure pat00041
Respectively
Figure pat00042
The x coordinate, and the y coordinate when x is less than zero.
Figure pat00043
silver
Figure pat00044
Is greater than or equal to zero, and
Figure pat00045
The
Figure pat00046
Is less than zero. The particle center point can be calculated using the average of the sum of the coordinates of the particles and the sum of the weights. Also, the regional center point of K region
Figure pat00047
Can be calculated using the average of the sum of the coordinates of the particles located in the K region and the sum of the weights. Further, the distance between the center point of the particle and the center point of the region
Figure pat00048
Can be calculated, which is shown in Equation (6).

[수학식 6]&Quot; (6) "

Figure pat00049
Figure pat00049

여기서,

Figure pat00050
는 파티클 중심점,
Figure pat00051
는 K지역에 위치한 파티클들의 좌표이다.
Figure pat00052
는 파티클 중심점과 지역 중심점 사이의 거리로, 유클라디안 거리(Euclidean distance)이며, 수학식 7을 통해 구할 수 있다.here,
Figure pat00050
The particle center point,
Figure pat00051
Is the coordinates of the particles located in the K region.
Figure pat00052
Is the distance between the particle center point and the local center point, and is the Euclidean distance, which can be obtained from equation (7).

[수학식 7]&Quot; (7) "

Figure pat00053

Figure pat00053

일 실시예에 따른 이동 기기의 위치를 예측하는 방법은 그룹핑된 지역 내에 위치한 파티클들 중에서 미리 정해진 범위 내의 가중치를 갖는 적어도 하나의 파티클을 메모리에 저장할 수 있다(420). 도 5를 참조하면서, 상세히 설명한다.
The method of predicting the position of a mobile device according to an exemplary embodiment may store 420 at least one particle having a weight within a predetermined range among the particles located within a grouped region. Will be described in detail with reference to FIG.

도 5는 본 발명의 일 실시예에 따른 이동 기기의 위치를 예측하는 방법에서 미리 정해진 범위 내의 가중치를 갖는 파티클의 저장을 설명하기 위한 도면이다.5 is a view for explaining storage of particles having a weight within a predetermined range in a method of predicting the position of a mobile device according to an embodiment of the present invention.

각 지역의 지역 중심점이 정해지면, 파티클 중심점으로부터 미리 정해진 거리에 위치한 파티클들은 그룹화될 수 있고, 각각의 그룹은 그룹번호가 부여된다. 각각의 그룹에는 미리 정해진 범위 내의 가중치를 갖는 적어도 하나의 파티클이 있을 수 있다.Once the local center point of each region is determined, particles located at a predetermined distance from the particle center point can be grouped, and each group is assigned a group number. Each group may have at least one particle with a weight within a predetermined range.

도 5를 참조하면, 그룹 내의 파티클의 가중치는 내림차순으로 정렬될 수 있다. 일 실시예에 따르면, 가중치 w3 내지 w6은 미리 정해진 범위 내에 있는 가중치이고, 미리 정해진 범위의 상한은

Figure pat00054
이며, 하한은
Figure pat00055
이다. 미리 정해진 범위 내의 가중치를 갖는 적어도 하나의 파티클은 재추출 과정에서 제외될 수 있다.
Figure pat00056
, 및
Figure pat00057
을 구하는 방법은 수학식 8과 같다.Referring to FIG. 5, the weights of the particles in the group may be sorted in descending order. According to one embodiment, the weights w3 to w6 are weights within a predetermined range, and the upper limit of the predetermined range is
Figure pat00054
And the lower limit is
Figure pat00055
to be. At least one particle having a weight within a predetermined range may be excluded from the re-extraction process.
Figure pat00056
, And
Figure pat00057
Is expressed by Equation (8).

[수학식 8]&Quot; (8) "

Figure pat00058
Figure pat00058

여기서,

Figure pat00059
는 파티클의 개수를 나타내고,
Figure pat00060
는 사용자의 입력값을 나타내며,
Figure pat00061
는 0.1 내지 0.9의 값일 수 있다. 미리 정해진 범위 내의 가중치를 갖는 적어도 하나의 파티클은 복제과정을 거친 후,
Figure pat00062
에 저장될 수 있다.here,
Figure pat00059
Represents the number of particles,
Figure pat00060
Represents the input value of the user,
Figure pat00061
May be a value of 0.1 to 0.9. At least one particle having a weight within a predetermined range is subjected to a replication process,
Figure pat00062
Lt; / RTI >

미리 정해진 범위 밖에 있는 가중치 w1, w2, w7, 및 w8은 나머지 파티클 그룹(M)이다.
The weights w1, w2, w7, and w8 outside the predetermined range are the remaining particle groups (M).

다시 도 4로 돌아와서, 일 실시예에 따른 이동 기기의 위치를 예측하는 방법은 그룹핑된 지역 내의 파티클들 중에서 저장된 파티클들을 제외한 나머지 파티클들을 n개 만큼 복제할 수 있다(420). 여기서, n은 나머지 파티클들의 개수, 및 나머지 파티클들의 가중치를 기초로 계산될 수 있으며, 수학식 9와 같다. Referring again to FIG. 4, a method for predicting the location of a mobile device according to one embodiment may replicate (420) as many as n remaining particles except those stored in the grouped regions. Here, n can be calculated based on the number of remaining particles and the weight of the remaining particles, as shown in Equation (9).

[수학식 9]&Quot; (9) "

Figure pat00063
Figure pat00063

Figure pat00064
은 n을 나타내고, M은 나머지 파티클들의 개수를 나타내며,
Figure pat00065
는 가중치를 나타낸다.
Figure pat00064
Represents n, M represents the number of remaining particles,
Figure pat00065
Represents a weight.

일 실시예에 따른 이동 기기의 위치를 예측하는 방법은 저장된 적어도 하나의 파티클, 및 복제된 파티클들에 기초하여, 이동 기기의 위치를 예측할 수 있다(440).A method for predicting the location of a mobile device according to an embodiment may predict the location of the mobile device based on the stored at least one particle and the replicated particles (440).

일 실시예에 따르면, 이동 기기의 위치를 예측하는 방법은 상기 그룹핑된 지역 내에 위치한 파티클들 중에서 상기 나머지 파티클들이 보호 지역에 있는지 판단할 수 있다. 미리 정해진 범위의 가중치를 갖는 파티클을 제외한 나머지 파티클들 중에서, 파티클들의 분포를 기록하기 위하여

Figure pat00066
를 계산할 수 있다. 상기 보호 지역은 수학식 6으로부터 계산된
Figure pat00067
, 및
Figure pat00068
를 기초로 설정될 수 있다. 보호 지역에 존재하는 파티클들 중 가중치가 작게 부여된 파티클은 파티클 다양성 유지를 위해 제거되지 않는다. 파티클이 보호 지역에 존재하는지는 수학식 10을 통해 알 수 있다.According to one embodiment, a method for predicting a location of a mobile device may determine whether the remaining particles among the particles located within the grouped region are in a protected area. To record the distribution of particles among the remaining particles except those with a predetermined range of weights
Figure pat00066
Can be calculated. The protection area is calculated from Equation (6)
Figure pat00067
, And
Figure pat00068
As shown in FIG. Particles that are assigned a small weight in the protected area are not removed to maintain particle diversity. It can be seen from equation (10) whether the particle exists in the protected area.

[수학식 10]&Quot; (10) "

Figure pat00069
Figure pat00069

지역 중심점인

Figure pat00070
와 K지역에 위치하는 파티클의 좌표인
Figure pat00071
간의 거리가
Figure pat00072
Figure pat00073
를 곱한 값보다 작은 거리에 존재하는 파티클은 보호 지역에 존재하는 것으로 판단된다.Area center point
Figure pat00070
And the coordinates of the particle located in the K region
Figure pat00071
Distance between
Figure pat00072
Wow
Figure pat00073
It is judged that the particles existing at a distance smaller than the value obtained by multiplying the number of particles are present in the protected area.

일 실시예에 따르면, 나머지 파티클들이 보호 지역 내에 있다고 판단되고, n이 미리 정해진 개수 미만인 경우, n에 미리 정해진 개수를 더하여 보호 지역내에 위치한 파타클들이 복제될 수 있다. 예를 들어, 보호 지역 내의 파티클 중 n이 1이상인 경우 해당 파티클은 n만큼 복제되고, 보호 지역 내의 파티클 중 n이 1미만인 경우 해당 파티클은 n+1만큼 복제될 수 있다. 이는, 수학식 11과 같다.According to one embodiment, if the remaining particles are determined to be in the protected area and n is less than the predetermined number, then the predetermined number of n may be added to thereby replicate the patacles located within the protected area. For example, if n of the particles in the protected area is greater than 1, then that particle is replicated by n, and if n in the protected area is less than 1, that particle may be replicated by n + 1. This is expressed by Equation (11).

[수학식 11]&Quot; (11) "

Figure pat00074

Figure pat00074

일 실시예에 따르면, 나머지 파티클들이 보호 지역 외에 있다고 판단되는 경우, n에 가산가중치가 부여되어 나머지 파티클들이 복제될 수 있다. 가산가중치는 도 2에서 설명한 지역적 평준화 가중치이다. 가산가중치가 부여된

Figure pat00075
은 수학식 12를 통해 계산될 수 있다.According to one embodiment, when it is determined that the remaining particles are out of the protected area, an addition weight is given to n so that the remaining particles can be replicated. The addition weight is the regional equalization weight described in FIG. Weighted
Figure pat00075
Can be calculated through Equation (12).

[수학식 12]&Quot; (12) "

Figure pat00076
Figure pat00076

여기서,

Figure pat00077
는 K지역에 위치한 파티클들의 개수를 나타내고, M은 K지역에 위치한 파티클들 중에서 미리 정해진 범위의 가중치를 갖는 파티클들을 제외한 나머지 파티클들의 개수를 나타내며, K는 분할된 지역의 개수이다. 보호지역 외에 위치한 파티클들 중 파티클의 수가 적은 지역에 위치한 파티클의 n은
Figure pat00078
, 및 K를 이용하여 높은 가산가중치가 부여된다.
Figure pat00079
은 미리 정해진 범위의 가중치를 갖는 파티클을 제외한 나머지 파티클의 개수에서 각 지역에 분포해야할 파티클의 평균 수치를 구하는 것을 나타낸다. 예를 들어, 100개의 파티클들을 4개의 지역으로 나누었을 경우 각 지역마다 존재 해야 할 파티클의 수는 (100/4)/100으로 0.25가 된다.
Figure pat00080
은 각 지역에 존재하는 파티클의 실제 수를 구하기 위함이다.
here,
Figure pat00077
Represents the number of particles located in the K region, M represents the number of particles excluding the particles having a predetermined range weight among the particles located in the K region, and K is the number of the divided regions. Particles located outside the protected area with a small number of particles
Figure pat00078
, ≪ / RTI > and K are given.
Figure pat00079
Represents an average value of particles to be distributed in each region from the number of remaining particles excluding particles having a predetermined range of weights. For example, if 100 particles are divided into 4 regions, the number of particles to be present in each region is (100/4) / 100, which is 0.25.
Figure pat00080
Is to find the actual number of particles in each region.

도 6은 본 발명의 다른 실시예에 따른 이동 기기의 위치를 예측하는 방법을 설명하기 위한 도면이다.6 is a diagram for explaining a method of predicting a position of a mobile device according to another embodiment of the present invention.

다른 실시예에 따른 이동 기기의 위치를 예측하는 방법은 도 3에서 설명한 파티클 재추출 기법이 사용될 수 있다.The method of predicting the position of the mobile device according to another embodiment may be the particle re-extraction technique described in FIG.

다른 실시예에 따른 이동 기기의 위치를 예측하는 방법은 특징점에서 관찰한 복수의 파티클들을 기록하고, 파티클들에 가중치를 부여할 수 있다(610).A method of predicting the position of a mobile device according to another embodiment may record a plurality of particles observed at a feature point and weight particles 610.

다른 실시예에 따른 이동 기기의 위치를 예측하는 방법은 파티클들을 미리 정해진 개수의 그룹으로 그룹핑할 수 있다(620).A method of predicting the position of a mobile device according to another embodiment may group 620 particles into a predetermined number of groups.

다른 실시예에 따른 이동 기기의 위치를 예측하는 방법은 그룹 내에서 보호 지역을 설정할 수 있다(630). 여기서, 보호 지역은 지역 중심점, 및 미리 설정된 보호 반경을 기초로 설정되고, 지역 중심점은 그룹 내에 있는 파티클들의 좌표를 기초로 계산될 수 있다.A method of predicting the location of a mobile device according to another embodiment may set a protected area within a group (630). Here, the protected area is set based on the area center point, and the preset protective radius, and the area center point can be calculated based on the coordinates of the particles in the group.

다른 실시예에 따른 이동 기기의 위치를 예측하는 방법은 그룹 내에서 가중치가 미리 정해진 범위 이내인 적어도 하나의 파티클, 보호 지역 내에 위치한 적어도 하나의 파티클, 및 보호 지역 외에 위치한 적어도 하나의 파티클을 기초로 파티클 집합을 구성할 수 있다(640). A method for predicting a position of a mobile device according to another embodiment is based on at least one particle within a group whose weight is within a predetermined range, at least one particle located within the protected area, and at least one particle located outside the protected area A particle set may be constructed 640.

다른 실시예에 따르면, 보호 지역 내에 위치한 적어도 하나의 파티클과 지역 중심점간의 거리는 중심거리, 및 미리 정해진 보호 반경을 기초로 설정된 거리보다 작을 수 있다. 여기서, 중심거리는 파티클 중심점 위치와 상기 지역 중심점 위치 간의 거리이고, 파티클 중심점 위치는 파티클들의 좌표, 및 상기 파티클들의 가중치를 기초로 계산될 수 있다.According to another embodiment, the distance between the at least one particle located within the protected area and the local center point may be less than the center distance, and a distance established based on a predetermined protective radius. Here, the center distance is the distance between the particle center point position and the local center point position, and the particle center point position can be calculated based on the coordinates of the particles and the weight of the particles.

다른 실시예에 따르면, 단계(640)에서, 보호 지역 내에 위치한 적어도 하나의 파티클, 및 보호 지역 외에 위치한 적어도 하나의 파티클은 n만큼 복제될 수 있다. 보호 지역 외에 위치한 적어도 하나의 파티클의 경우, n에 가산가중치가 부여되고, 가산가중치가 부여된 n만큼 보호 지역 외의 적어도 하나의 파티클은 복제될 수 있다. 보호 지역 내에 위치한 적어도 하나의 파티클의 경우, n이 미리 정해진 개수 미만이면, n에 미리 정해진 개수를 더하여 보호 지역내의 적어도 하나의 파티클은 복제될 수 있다.
According to another embodiment, in step 640, at least one particle located within the protected area, and at least one particle located outside the protected area may be replicated by n. In the case of at least one particle located outside the protected area, an addition weight is given to n, and at least one particle outside the protected area can be replicated by n given the addition weight. In the case of at least one particle located within the protected area, if n is less than the predetermined number, at least one particle in the protected area may be replicated by adding a predetermined number to n.

도 7은 본 발명의 일 실시예에 따른 이동 기기의 위치를 예측하는 장치의 구성을 설명하기 위한 블록도이다.7 is a block diagram for explaining a configuration of an apparatus for predicting a position of a mobile device according to an embodiment of the present invention.

일 실시예에 따른 이동 기기의 위치를 예측하는 장치는 도 3에서 설명한 파티클 재추출 기법을 통해 구현될 수 있다.An apparatus for predicting the position of a mobile device according to an embodiment may be implemented through the particle re-extraction technique described with reference to FIG.

도 7을 참조하면, 일 실시예에 따른 이동 기기의 위치를 예측하는 장치(700)는 메모리(710), 프로세서(720), 및 예측부(730)를 포함한다.Referring to FIG. 7, an apparatus 700 for predicting the position of a mobile device according to an embodiment includes a memory 710, a processor 720, and a predictor 730.

메모리(710)는 미리 정해진 범위 내의 가중치를 갖는 적어도 하나의 파티클을 저장할 수 있다.The memory 710 may store at least one particle having a weight within a predetermined range.

프로세서(720)는 특징점 주위에 분포한 복수의 파티클들을 파티클 중심점을 기준으로 미리 정해진 개수의 지역들로 그룹핑할 수 있다. 또한, 프로세서(720)는 그룹핑된 지역 내의 파티클들 중에서 미리 정해진 범위 내의 가중치를 갖는 적어도 하나의 파티클을 제외한 나머지 파티클들을 n개 만큼 각각 복제할 수 있다. 여기서, n은 나머지 파티클들의 개수, 및 상기 나머지 파티클들의 가중치를 기초로 계산될 수 있다.The processor 720 may group a plurality of particles distributed around the feature points into a predetermined number of regions based on the particle center point. In addition, the processor 720 may replicate n remaining particles except for at least one particle having a weight within a predetermined range among the particles in the grouped region. Where n can be calculated based on the number of remaining particles and the weight of the remaining particles.

일 실시예에 따르면, 프로세서(720)는 나머지 파티클들이 보호 지역에 있는지 여부를 판단할 수 있다. 보다 구체적으로, 프로세서(720)는 지역 중심점의 위치와 나머지 파티클들의 위치 간의 거리가 중심거리, 및 미리 정해진 보호 반경을 기초로 설정된 거리보다 작은 경우, 나머지 파티클들이 상기 보호 지역에 있다고 판단할 수 있다. 여기서, 지역 중심점의 위치는 그룹핑된 지역 내에 위치한 파티클들의 좌표에 기초하여 계산될 수 있고, 중심거리는 파티클 중심점의 위치와 지역 중심점의 위치 간의 거리일 수 있다. 파티클 중심점은 특징점 주위에 분포한 복수의 파티클들의 좌표, 및 파티클들의 가중치를 기초로 계산될 수 있다.According to one embodiment, the processor 720 may determine whether the remaining particles are in a protected area. More specifically, the processor 720 may determine that the remaining particles are in the protected area if the distance between the location of the local center point and the location of the remaining particles is less than the center distance, and the distance established based on the predetermined guard radius . Here, the position of the local center point can be calculated based on the coordinates of the particles positioned in the grouped region, and the center distance can be the distance between the position of the particle center point and the position of the local center point. The center point of the particle can be calculated based on the coordinates of a plurality of particles distributed around the feature point, and the weight of the particles.

일 실시예에 따르면, 프로세서(720)는 나머지 파티클들이 보호 지역 외에 있다고 판단하는 경우, n에 가산가중치를 부여하여 나머지 파티클들을 복제할 수 있다. 또한, 프로세서(720)는 나머지 파티클들이 보호 지역 내에 있다고 판단하는 경우, n이 미리 정해진 개수 미만일 때, 상기 n에 미리 정해진 개수를 더하여 상기 보호 지역 내에 위치한 파티클들을 복제할 수 있다.According to one embodiment, when processor 720 determines that the remaining particles are outside the protected area, n may be given an addition weight to replicate the remaining particles. In addition, when the processor 720 determines that the remaining particles are within the protection area, when n is less than the predetermined number, the processor 720 may add the predetermined number to the n to replicate the particles located in the protection area.

예측부(730)는 저장된 적어도 하나 이상의 파티클들, 및 복제된 파티클들에 기초하여, 이동 기기의 위치를 예측할 수 있다.
The predicting unit 730 can predict the location of the mobile device based on the stored at least one or more particles and the copied particles.

도 8은 본 발명의 다른 실시예에 따른 이동 기기의 위치를 예측하는 장치의 구성을 설명하기 위한 블록도이다.8 is a block diagram for explaining a configuration of an apparatus for predicting a position of a mobile device according to another embodiment of the present invention.

다른 실시예에 따른 이동 기기의 위치를 예측하는 장치는 도 3에서 설명한 파티클 재추출 기법을 통해 구현될 수 있다.The apparatus for predicting the position of the mobile device according to another embodiment may be implemented through the particle re-extraction technique described in FIG.

도 8을 참조하면 다른 실시예에 따른 이동 기기의 위치를 예측하는 장치(800)는 업데이트부(810), 재추출부(820), 및 예측부(830)를 포함한다.Referring to FIG. 8, an apparatus 800 for predicting a position of a mobile device according to another embodiment includes an updating unit 810, a re-extracting unit 820, and a predicting unit 830.

업데이트부(810)는 특징점에서 관찰한 복수의 파티클들을 기록하고, 상기 파티클들에 가중치를 부여할 수 있다.The update unit 810 may record a plurality of particles observed at the feature point, and may assign a weight to the particles.

재추출부(820)는 파티클들을 미리 정해진 개수의 그룹으로 그룹핑하고, 그룹 내에서 보호 지역을 설정하며, 그룹 내에서 가중치가 미리 정해진 범위 이내인 적어도 하나의 파티클, 보호 지역 내에 위치한 적어도 하나의 파티클, 및 보호 지역 외에 위치한 적어도 하나의 파티클을 기초로 파티클 집합을 구성할 수 있다.The re-extracting unit 820 groups the particles into a predetermined number of groups, sets a protected area within the group, and includes at least one particle within the group whose weight is within a predetermined range, at least one particle , And a particle set based on at least one particle located outside the protected area.

예측부(830)는 파티클 집합을 기초로 이동 기기의 위치를 예측할 수 있다.The prediction unit 830 can predict the position of the mobile device based on the set of particles.

다른 실시예에 따르면, 재추출부(820)는 지역 중심점, 및 미리 설정된 보호 반경을 기초로 보호 지역을 설정할 수 있다. 여기서, 지역 중심점은 그룹 내에 있는 파티클들의 좌표를 기초로 계산될 수 있다.According to another embodiment, the re-extracting unit 820 can set the protected area based on the area center point and the preset protection radius. Here, the local center point can be calculated based on the coordinates of the particles in the group.

다른 실시예에 따르면, 보호 지역 내에 위치한 상기 적어도 하나의 파티클과 지역 중심점간의 거리는 중심거리, 및 미리 정해진 보호 반경을 기초로 설정된 거리보다 작을 수 있다. 여기서, 중심거리는, 파티클 중심점 위치와 지역 중심점 위치 간의 거리이고, 파티클 중심점 위치는 파티클들의 좌표, 및 파티클들의 가중치를 기초로 계산될 수 있다.According to another embodiment, the distance between the at least one particle located within the protected area and the local center point may be less than the center distance, and a distance established based on a predetermined protective radius. Here, the center distance is a distance between the particle center point position and the local center point position, and the particle center point position can be calculated based on the coordinates of the particles and the weight of the particles.

다른 실시예에 따르면, 보호 지역 내에 위치한 적어도 하나의 파티클, 및 상기 보호 지역 외에 위치한 적어도 하나의 파티클을 n만큼 복제할 수 있다.According to another embodiment, at least one particle located in the protected area and at least one particle located outside the protected area can be replicated by n.

다른 실시예에 따르면, 재추출부(820)는 보호 지역 외에 위치한 적어도 하나의 파티클의 경우, n에 가산가중치를 부여할 수 있다. 또한, 재추출부(820)는 가산가중치가 부여된 n만큼 보호 지역 외에 위치한 적어도 하나의 파티클을 복제할 수 있다.According to another embodiment, re-extractor 820 may assign an addition weight to n in the case of at least one particle located outside the protected area. Also, the re-extracting unit 820 may replicate at least one particle located outside the protected area by the added weight n.

다른 실시예에 따르면, 재추출부(820)는 보호 지역 내에 위치한 적어도 하나의 파티클의 경우, n이 미리 정해진 개수 미만이면, n에 미리 정해진 개수를 더할 수 있다. 또한, 재추출부(820)는 상기 보호 지역 내에 위치한 적어도 하나의 파티클을 미리 정해진 개수가 더해진 n만큼 복제할 수 있다.
According to another embodiment, in the case of at least one particle located in the protected area, the re-extracting unit 820 may add a predetermined number to n if n is less than the predetermined number. Also, the re-extracting unit 820 may replicate at least one particle located in the protected area by a predetermined number n.

도 9는 본 발명에서 사용된 파티클 재추출 기법과 기존의 파티클 재추출 기법 간의 성능 비교를 설명하기 위한 도면이다.FIG. 9 is a view for explaining a performance comparison between the particle re-extraction technique used in the present invention and the existing particle re-extraction technique.

도 9의 (a)는 재추출 과정에서 살아 남은 파티클 수를 비교한 도면, (b)는 RMS 위치 오차를 비교한 도면, (c)는 RMS 특징점 오차를 비교한 도면, 및 (d)는 파티클 수에 따른 평균 RMS 위치 오차를 비교한 도면이다. 도 9의 (a) 내지 (d)에서, a는 SIR(Sequential Importance Resampling), b는 PSR(Partial stratified Resampling), 및 c는 본 발명에서 사용된 재추출 기법을 나타낸다.FIG. 9A is a diagram comparing the number of remaining particles in the re-extraction process, FIG. 9B is a diagram comparing RMS position errors, FIG. 9C is a diagram comparing RMS feature point errors, And the average RMS position error according to the number. 9 (a) to 9 (d), a represents SIR (Sequential Importance Resampling), b represents PSR (Partial stratified resampling), and c represents re-extraction technique used in the present invention.

RMS 위치 오차는 주어진 경로와 이동 기기가 예측한 경로 사이의 차이를 말한다. 즉, 이동 기기의 실제 위치와 이동 기기가 예측한 위치 사이의 차이를 RMS 위치 오차라고 한다.The RMS position error refers to the difference between the given path and the path predicted by the mobile device. That is, the difference between the actual position of the mobile device and the position predicted by the mobile device is called an RMS position error.

RMS 특징점 오차는 특징점 주위의 파티클들과 특징점 사이의 차이를 말한다. 즉, 실제 특징점의 위치와 이동 기기가 예측한 특징점 위치 사이의 차이를 RMS 특징점 오차라고 한다.RMS feature point error refers to the difference between the feature points and the particles around the feature point. That is, the difference between the position of the actual feature point and the position of the feature point predicted by the mobile device is referred to as an RMS feature point error.

도 9의 (a)를 참조하면, 파티클 재추출 과정이 진행됨에 따라, 기존의 재추출 기법은 급격하게 파티클의 수가 감소하지만, 본 발명에서 사용된 파티클 재추출 기법은 파티클 수의 감소 폭이 기존의 재추출 기법 보다 크지 않다. 또한, 재추출 과정이 진행됨에 따라, 본 발명에서 사용된 파티클 재추출 기법은 기존 재추출 기법보다 많은 파티클 수를 유지한다.9 (a), as the particle re-extraction process proceeds, the existing re-extraction technique rapidly reduces the number of particles. However, the particle re- Is not greater than the re-extraction technique. Also, as the re-extraction process proceeds, the particle re-extraction technique used in the present invention maintains more particles than the existing re-extraction technique.

도 9의 (b), 및 (c)를 참조하면, 본 발명에서 사용된 파티클 재추출 기법은 기존의 재추출 기법에 비해 낮은 RMS 위치 오차, 및 RMS 특징점 오차를 갖는다. 즉, 본 발명에서 사용된 파티클 재추출 기법은 기존의 재추출 기법에 비해 낮은 RMS 위치 오차, 및 RMS 특징점 오차를 유지하여, 이동 기기의 위치를 안정적으로 보정할 수 있다.9 (b) and 9 (c), the particle re-extraction technique used in the present invention has lower RMS position error and RMS feature point error than the existing re-extraction technique. That is, the particle re-extraction technique used in the present invention can stably correct the position of the mobile device by maintaining the low RMS position error and the RMS feature point error as compared with the existing re-extraction technique.

도 9의 (d)를 참조하면, 파티클 수가 같을 때, 본 발명에서 사용된 파티클 재추출 기법은 기존의 재추출 기법에 비해 RMS 위치 오차가 낮다. 기존 재추출 기법과 비교할 때, 본 발명에서 사용된 파티클 재추출 기법은 파티클의 수가 적음에도 불구하고 이동 기기의 RMS 위치 오차를 효율적으로 줄일 수 있다.
Referring to FIG. 9 (d), when the number of particles is the same, the particle re-extraction technique used in the present invention has a lower RMS position error than the existing re-extraction technique. Compared with the existing re-extraction technique, the particle re-extraction technique used in the present invention can effectively reduce the RMS position error of the mobile device even though the number of particles is small.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA) , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing unit may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded. The software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device , Or may be permanently or temporarily embodied in a transmitted signal wave. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored on one or more computer readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

700: 이동 기기의 위치 예측 장치.
710: 메모리
720: 프로세서
730: 예측부
800: 이동 기기의 위치 예측 장치.
810: 업데이트부
820: 재추출부
830: 예측부
700: Position estimating device of mobile equipment.
710: Memory
720: Processor
730:
800: Position estimating device of mobile equipment.
810:
820:
830:

Claims (21)

이동 기기의 위치를 예측하는 방법에 있어서,
특징점 주위에 분포한 복수의 파티클들을 파티클 중심점을 기준으로 미리 정해진 개수의 지역들로 그룹핑하는 단계;
상기 그룹핑된 지역 내에 위치한 파티클들 중에서 미리 정해진 범위 내의 가중치를 갖는 적어도 하나의 파티클을 메모리에 저장하는 단계;
상기 그룹핑된 지역 내의 파티클들 중에서 상기 저장된 파티클들을 제외한 나머지 파티클들을 n개 만큼 각각 복제하는 단계; 및
상기 저장된 적어도 하나의 파티클, 및 상기 복제된 파티클들에 기초하여, 상기 이동 기기의 위치를 예측하는 단계
를 포함하는 이동 기기의 위치 예측 방법.
A method for predicting a location of a mobile device,
Grouping a plurality of particles distributed around a feature point into a predetermined number of regions based on a particle center point;
Storing in the memory at least one particle having a weight within a predetermined range among the particles located within the grouped region;
Duplicating the remaining particles except for the stored particles among the particles in the grouped region by n; And
Predicting a location of the mobile device based on the stored at least one particle and the replicated particles
And estimating a position of the mobile device.
제1항에 있어서,
상기 n은,
상기 나머지 파티클들의 개수, 및 상기 나머지 파티클들의 가중치를 기초로 계산되는,
이동 기기의 위치 예측 방법.
The method according to claim 1,
Wherein n is a number
The number of remaining particles, and the weight of the remaining particles,
A method for predicting a location of a mobile device.
제1항에 있어서,
상기 그룹핑된 지역 내에 위치한 파티클들 중에서 상기 나머지 파티클들이 보호 지역에 있는지 판단하는 단계
를 더 포함하고,
상기 나머지 파티클들이 상기 보호 지역외에 있다고 판단되는 경우, 상기 복제하는 단계는,
상기 n에 가산가중치를 부여하여 상기 나머지 파티클들을 복제하는,
이동 기기의 위치 예측 방법.
The method according to claim 1,
Determining whether the remaining particles among the particles located within the grouped region are in a protected area
Further comprising:
If it is determined that the remaining particles are out of the protected area,
And adding the weight to the n to replicate the remaining particles,
A method for predicting a location of a mobile device.
제3항에 있어서,
상기 나머지 파티클들이 상기 보호 지역 내에 있다고 판단되는 경우, 상기 복제하는 단계는,
상기 n이 미리 정해진 개수 미만인 경우, 상기 n에 미리 정해진 개수를 더하여 상기 보호 지역내에 위치한 파티클들을 복제하는,
이동 기기의 위치 예측 방법.
The method of claim 3,
If it is determined that the remaining particles are in the protected area,
Wherein when n is less than a predetermined number, adding a predetermined number to the n to replicate particles located within the protected area,
A method for predicting a location of a mobile device.
제3항에 있어서,
상기 나머지 파티클들이 보호 지역에 있는지 판단하는 단계는,
지역 중심점의 위치와 상기 나머지 파티클들의 위치 간의 거리가 중심거리, 및 미리 정해진 보호 반경을 기초로 설정된 거리보다 작은 경우, 상기 나머지 파티클들이 상기 보호 지역에 있다고 판단하는,
이동 기기의 위치 예측 방법.
The method of claim 3,
Wherein determining whether the remaining particles are in a protected area comprises:
Determining that the remaining particles are in the protected area when the distance between the position of the local center point and the position of the remaining particles is less than a center distance and a distance set based on a predetermined protective radius,
A method for predicting a location of a mobile device.
제5항에 있어서,
상기 지역 중심점의 위치는,
상기 그룹핑된 지역 내에 위치한 파티클들의 좌표에 기초하여 계산되고,
상기 중심거리는,
상기 파티클 중심점의 위치와 상기 지역 중심점의 위치 간의 거리인,
이동 기기의 위치 예측 방법.
6. The method of claim 5,
The position of the regional center point
The coordinates of the particles located within the grouped region,
The center distance,
Which is a distance between a position of the particle center point and a position of the area center point,
A method for predicting a location of a mobile device.
제1항에 있어서,
상기 파티클 중심점은,
상기 파티클들의 좌표, 및 상기 파티클들의 가중치를 기초로 계산되는,
이동 기기의 위치 예측 방법.
The method according to claim 1,
The particle center point,
The coordinates of the particles, and the weight of the particles,
A method for predicting a location of a mobile device.
이동 기기의 위치를 예측하는 방법에 있어서,
특징점에서 관찰한 복수의 파티클들을 기록하고, 상기 파티클들에 가중치를 부여하는 단계;
상기 파티클들을 미리 정해진 개수의 그룹으로 그룹핑하는 단계;
상기 그룹 내에서 보호 지역을 설정하는 단계;
상기 그룹 내에서 상기 가중치가 미리 정해진 범위 이내인 적어도 하나의 파티클, 상기 보호 지역 내에 위치한 적어도 하나의 파티클, 및 상기 보호 지역 외에 위치한 적어도 하나의 파티클을 기초로 파티클 집합을 구성하는 단계; 및
상기 파티클 집합을 기초로 이동 기기의 위치를 예측하는 단계
를 포함하는 이동 기기의 위치 예측 방법.
A method for predicting a location of a mobile device,
Recording a plurality of particles observed at the feature point, and weighting the particles;
Grouping the particles into a predetermined number of groups;
Setting a protected area within the group;
Constructing a set of particles based on at least one particle in the group, the weight being within a predetermined range, at least one particle located within the protected area, and at least one particle located outside the protected area; And
Predicting a position of the mobile device based on the set of particles
And estimating a position of the mobile device.
제8항에 있어서,
상기 그룹 내에서 보호 지역을 설정하는 단계는,
지역 중심점, 및 미리 설정된 보호 반경을 기초로 상기 보호 지역을 설정하고,
상기 지역 중심점은,
상기 그룹 내에 있는 상기 파티클들의 좌표를 기초로 계산되는,
이동 기기의 위치 예측 방법.
9. The method of claim 8,
Wherein setting the protected area within the group comprises:
The area center point, and the preset protection radius,
The area center point
And calculating, based on the coordinates of the particles in the group,
A method for predicting a location of a mobile device.
제9항에 있어서,
상기 보호 지역 내에 위치한 상기 적어도 하나의 파티클과 상기 지역 중심점간의 거리는 중심거리, 및 미리 정해진 보호 반경을 기초로 설정된 거리보다 작고,
상기 중심거리는,
파티클 중심점 위치와 상기 지역 중심점 위치 간의 거리이고,
상기 파티클 중심점 위치는,
상기 파티클들의 좌표, 및 상기 파티클들의 가중치를 기초로 계산되는,
이동 기기의 위치 예측 방법.
10. The method of claim 9,
Wherein the distance between the at least one particle located within the protected area and the local center point is less than the set distance based on a center distance and a predetermined protective radius,
The center distance,
The distance between the particle center point position and the local center point position,
The particle center point position
The coordinates of the particles, and the weight of the particles,
A method for predicting a location of a mobile device.
제8항에 있어서,
상기 파티클 집합을 구성하는 단계는,
상기 보호 지역 내에 위치한 적어도 하나의 파티클, 및 상기 보호 지역 외에 위치한 적어도 하나의 파티클을 n만큼 복제하는 단계
를 포함하는 이동 기기의 위치 예측 방법.
9. The method of claim 8,
Wherein the step of constructing the particle set comprises:
Replicating at least one particle located within said protected area and at least one particle located outside said protected area by n,
And estimating a position of the mobile device.
제11항에 있어서,
상기 복제하는 단계는,
상기 보호 지역 외에 위치한 적어도 하나의 파티클의 경우, 상기 n에 가산가중치를 부여하고, 상기 가산가중치가 부여된 n만큼 상기 보호 지역 외에 위치한 적어도 하나의 파티클을 복제하는,
이동 기기의 위치 예측 방법.
12. The method of claim 11,
Wherein the copying comprises:
In the case of at least one particle located outside the protected area, assigning an addition weight to the n and replicating at least one particle located outside the protected area by n given the added weight,
A method for predicting a location of a mobile device.
제11항에 있어서,
상기 복제하는 단계는,
상기 보호 지역 내에 위치한 적어도 하나의 파티클의 경우, 상기 n이 미리 정해진 개수 미만이면, 상기 n에 미리 정해진 개수를 더하여 상기 보호 지역 내에 위치한 적어도 하나의 파티클을 복제하는,
이동 기기의 위치 예측 방법.
12. The method of claim 11,
Wherein the copying comprises:
For at least one particle located within said protected area, replicating at least one particle located within said protected area by adding a predetermined number to said n if n is less than a predetermined number,
A method for predicting a location of a mobile device.
제1항 내지 제13항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
A computer-readable recording medium having recorded thereon a program for executing the method according to any one of claims 1 to 13.
이동 기기의 위치를 예측하는 장치에 있어서,
특징점 주위에 분포한 복수의 파티클들을 파티클 중심점을 기준으로 미리 정해진 개수의 지역들로 그룹핑하고, 상기 그룹핑된 지역 내의 파티클들 중에서 미리 정해진 범위 내의 가중치를 갖는 적어도 하나의 파티클을 제외한 나머지 파티클들을 n개 만큼 각각 복제하는 프로세서;
상기 미리 정해진 범위 내의 가중치를 갖는 적어도 하나의 파티클을 저장하는 메모리; 및
상기 저장된 적어도 하나 이상의 파티클들, 및 상기 복제된 파티클들에 기초하여, 상기 이동 기기의 위치를 예측하는 예측부
를 포함하는 이동 기기의 위치를 예측하는 장치.
An apparatus for predicting a location of a mobile device,
Grouping a plurality of particles distributed around a minutiae point into a predetermined number of regions with respect to a center point of the particle and selecting n remaining particles excluding at least one particle having a weight within a predetermined range among the particles in the grouped region Respectively;
A memory for storing at least one particle having a weight within the predetermined range; And
A predictor for predicting a position of the mobile device based on the stored at least one particle and the copied particles,
And estimates the position of the mobile device.
제15항에 있어서,
상기 n은,
상기 나머지 파티클들의 개수, 및 상기 나머지 파티클들의 가중치를 기초로 계산되는,
이동 기기의 위치를 예측하는 장치.
16. The method of claim 15,
Wherein n is a number
The number of remaining particles, and the weight of the remaining particles,
A device for predicting the location of a mobile device.
제15항에 있어서,
상기 프로세서는,
상기 나머지 파티클들이 상기 보호 지역외에 있다고 판단하는 경우, 상기 n에 가산가중치를 부여하여 상기 나머지 파티클들을 복제하고, 상기 나머지 파티클들이 상기 보호 지역 내에 있다고 판단하는 경우, 상기 n이 미리 정해진 개수 미만일 때, 상기 n에 미리 정해진 개수를 더하여 상기 보호 지역내에 위치한 파티클들을 복제하는,
이동 기기의 위치를 예측하는 장치.
16. The method of claim 15,
The processor comprising:
And when n is less than a predetermined number, determining that the remaining particles are within the protection area if the remaining particles are determined to be outside the protection area, replicating the remaining particles by assigning an addition weight to n, Adding a predetermined number to said n to replicate particles located within said protected area,
A device for predicting the location of a mobile device.
이동 기기의 위치를 예측하는 장치에 있어서,
특징점에서 관찰한 복수의 파티클들을 기록하고, 상기 파티클들에 가중치를 부여하는 업데이트부;
상기 파티클들을 미리 정해진 개수의 그룹으로 그룹핑하고, 상기 그룹 내에서 보호 지역을 설정하며, 상기 그룹 내에서 상기 가중치가 미리 정해진 범위 이내인 적어도 하나의 파티클, 상기 보호 지역 내에 위치한 적어도 하나의 파티클, 및 상기 보호 지역 외에 위치한 적어도 하나의 파티클을 기초로 파티클 집합을 구성하는 재추출부; 및
상기 파티클 집합을 기초로 이동 기기의 위치를 예측하는 예측부
를 포함하는 이동 기기의 위치를 예측하는 장치.
An apparatus for predicting a location of a mobile device,
An update unit for recording a plurality of particles observed at the feature point and assigning a weight to the particles;
Grouping the particles into a predetermined number of groups and setting a protected area within the group, wherein at least one particle within the group has a weight within a predetermined range, at least one particle located within the protected area, and A re-extractor configured to form a particle set based on at least one particle located outside the protected area; And
A predictor for predicting a position of the mobile device based on the set of particles,
And estimates the position of the mobile device.
제18항에 있어서,
상기 재추출부는,
지역 중심점, 및 미리 설정된 보호 반경을 기초로 상기 보호 지역을 설정하고,
상기 지역 중심점은,
상기 그룹 내에 있는 상기 파티클들의 좌표를 기초로 계산되는,
이동 기기의 위치를 예측하는 장치.
19. The method of claim 18,
The re-
The area center point, and the preset protection radius,
The area center point
And calculating, based on the coordinates of the particles in the group,
A device for predicting the location of a mobile device.
제19항에 있어서,
상기 보호 지역 내에 위치한 상기 적어도 하나의 파티클과 상기 지역 중심점간의 거리는 중심거리, 및 미리 정해진 보호 반경을 기초로 설정된 거리보다 작고,
상기 중심거리는,
파티클 중심점 위치와 상기 지역 중심점 위치 간의 거리이고,
상기 파티클 중심점 위치는,
상기 파티클들의 좌표, 및 상기 파티클들의 가중치를 기초로 계산되는,
이동 기기의 위치를 예측하는 장치.
20. The method of claim 19,
Wherein the distance between the at least one particle located within the protected area and the local center point is less than the set distance based on a center distance and a predetermined protective radius,
The center distance,
The distance between the particle center point position and the local center point position,
The particle center point position
The coordinates of the particles, and the weight of the particles,
A device for predicting the location of a mobile device.
제18항에 있어서,
상기 재추출부는,
상기 보호 지역 내에 위치한 적어도 하나의 파티클, 및 상기 보호 지역 외에 위치한 적어도 하나의 파티클을 n만큼 복제하는,
이동 기기의 위치를 예측하는 장치.
19. The method of claim 18,
The re-
At least one particle located within said protected area, and at least one particle located outside said protected area,
A device for predicting the location of a mobile device.
KR1020130154506A 2013-12-12 2013-12-12 Method for estimating location of mobile device, and apparatus thereof KR101547025B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130154506A KR101547025B1 (en) 2013-12-12 2013-12-12 Method for estimating location of mobile device, and apparatus thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130154506A KR101547025B1 (en) 2013-12-12 2013-12-12 Method for estimating location of mobile device, and apparatus thereof

Publications (2)

Publication Number Publication Date
KR20150068633A true KR20150068633A (en) 2015-06-22
KR101547025B1 KR101547025B1 (en) 2015-08-24

Family

ID=53516021

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130154506A KR101547025B1 (en) 2013-12-12 2013-12-12 Method for estimating location of mobile device, and apparatus thereof

Country Status (1)

Country Link
KR (1) KR101547025B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102412323B1 (en) * 2021-12-08 2022-06-24 (주)피플앤드테크놀러지 Continuous Indoor Position Estimation Method Using Correction Particle Filter
KR102448930B1 (en) * 2021-12-08 2022-09-30 (주)피플앤드테크놀러지 System and method for indoor positioning using weight learing based on particle filter

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102412323B1 (en) * 2021-12-08 2022-06-24 (주)피플앤드테크놀러지 Continuous Indoor Position Estimation Method Using Correction Particle Filter
KR102448930B1 (en) * 2021-12-08 2022-09-30 (주)피플앤드테크놀러지 System and method for indoor positioning using weight learing based on particle filter

Also Published As

Publication number Publication date
KR101547025B1 (en) 2015-08-24

Similar Documents

Publication Publication Date Title
KR20170004556A (en) Method and apparatus for relacation of mobile robot in indoor environment
JP2019512668A (en) Root deviation recognition method, terminal, and storage medium
KR102378887B1 (en) Method and Apparatus of Bounding Box Regression by a Perimeter-based IoU Loss Function in Object Detection
KR20180076815A (en) Method and apparatus for estimating localization of robot in wide range of indoor space using qr marker and laser scanner
JP2016173686A (en) Information processing apparatus
JP7371148B2 (en) Method, device, storage medium and program for determining vehicle positioning information
CN111433780A (en) Lane line detection method, lane line detection apparatus, and computer-readable storage medium
US20190187296A1 (en) Method and system for processing trajectory data
KR101547025B1 (en) Method for estimating location of mobile device, and apparatus thereof
KR101533946B1 (en) Methods for updating voronoi diagram of circle, method for inter-particle collision using the same
KR101688302B1 (en) Motion planning apparatus and method
KR101855010B1 (en) World geodetic coordinate transformer and method by cluster region
JP6647125B2 (en) Position identification system
CN110749325B (en) Flight path planning method and device
US11346669B2 (en) Systems and methods for utilizing modeling to automatically generate paths for indoor navigation
CN106470342B (en) Global motion estimation method and device
KR20150111459A (en) Method and Apparatus for segmenting Particles of Electron Microscope Images
US9367937B2 (en) Apparatus and method for effective graph clustering of probabilistic graphs
CN112925321B (en) Ship path planning method and device based on artificial potential field method and storage medium
KR102121274B1 (en) Method for estimating analytic weight least squrares based on robust filter, unsupervised clustering
CN114545940A (en) Unmanned equipment control method and device and electronic equipment
WO2021014557A1 (en) Mesh structure facility detection device, mesh structure facility detection method, and program
KR20220018371A (en) Method and apparatus for matching point cloud data for 3D terrain model reconstruction
KR102319015B1 (en) Method and Apparatus for Adaptive Kernel Inference for Dense and Sharp Occupancy Grids
KR101439733B1 (en) Method and apparatus for generating 3-dimensional map mixing mark and markless

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180801

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190718

Year of fee payment: 5