KR102556355B1 - Apparatus and method for localization of robot having robustness to dynamic environments - Google Patents

Apparatus and method for localization of robot having robustness to dynamic environments Download PDF

Info

Publication number
KR102556355B1
KR102556355B1 KR1020210073734A KR20210073734A KR102556355B1 KR 102556355 B1 KR102556355 B1 KR 102556355B1 KR 1020210073734 A KR1020210073734 A KR 1020210073734A KR 20210073734 A KR20210073734 A KR 20210073734A KR 102556355 B1 KR102556355 B1 KR 102556355B1
Authority
KR
South Korea
Prior art keywords
map
feature
robot
key frame
corrected
Prior art date
Application number
KR1020210073734A
Other languages
Korean (ko)
Other versions
KR20220064883A (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 EP21892362.1A priority Critical patent/EP4245474A1/en
Priority to PCT/KR2021/016525 priority patent/WO2022103195A1/en
Publication of KR20220064883A publication Critical patent/KR20220064883A/en
Priority to US18/316,160 priority patent/US20240078774A1/en
Priority to US18/316,145 priority patent/US20240085188A1/en
Priority to US18/316,167 priority patent/US20240077881A1/en
Application granted granted Critical
Publication of KR102556355B1 publication Critical patent/KR102556355B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/08Programme-controlled manipulators characterised by modular constructions
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Remote Sensing (AREA)
  • Theoretical Computer Science (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Processing Or Creating Images (AREA)

Abstract

본 발명의 바람직한 실시예에 따른 동적 환경에 강인한 로봇 위치 추정 장치 및 방법은, SLAM(Simultaneous Localization And Mapping) 기술을 이용하여 로봇의 위치를 추정하는 동작과 지도를 업데이트하는 동작을 함께 수행함으로써, 장기간(long-term) 동적 물체로 인한 지도의 변경 사항이나 정적 물체의 변경 또한 지도에 반영할 수 있기 때문에, 동적 환경에서도 지도 구축을 원할히 수행할 수 있고, 이로 인해 보다 향상된 로봇 위치 추정 성능을 보장할 수 있다.An apparatus and method for estimating a robot position robust to a dynamic environment according to a preferred embodiment of the present invention performs an operation of estimating the position of a robot and an operation of updating a map using SLAM (Simultaneous Localization And Mapping) technology together, thereby providing long-term (long-term) Since changes in the map due to dynamic objects or changes in static objects can also be reflected on the map, map construction can be performed smoothly even in a dynamic environment, thereby ensuring better robot localization performance. can

Description

동적 환경에 강인한 로봇 위치 추정 장치 및 방법{Apparatus and method for localization of robot having robustness to dynamic environments}Apparatus and method for localization of robot having robustness to dynamic environments}

본 발명은 동적 환경에 강인한 로봇 위치 추정 장치 및 방법에 관한 것으로서, 더욱 상세하게는 SLAM(Simultaneous Localization And Mapping) 기술을 이용하여 로봇의 위치를 추정하는, 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and method for estimating a position of a robot robust to a dynamic environment, and more particularly, to an apparatus and method for estimating the position of a robot using SLAM (Simultaneous Localization And Mapping) technology.

도 1은 종래의 로봇 위치 추정 과정을 설명하기 위한 도면이다.1 is a diagram for explaining a conventional robot position estimation process.

도 1을 참조하면, 종래 대부분의 로봇 위치 추정 시스템들은 지도 구축(Map building)을 먼저 수행하고, 얻어진 지도를 기반으로 로봇의 위치 추정을 수행하는 시스템으로 구성되어 있다. 지도 구축을 수행한 뒤 정확도를 높이기 위해 사용자가 추가적인 수작업으로 지도를 수정하고 보완한다. 그 후 잘 정비된 지도를 사용해서 로봇의 위치 추정을 수행한다. 즉, 지도 구축과 위치 추정을 분리하여 지도 자체의 정확도를 높임으로써 위치 추정의 정확도를 높이는 방식이다.Referring to FIG. 1 , most conventional robot positioning systems are composed of a system that first performs map building and then estimates the position of the robot based on the obtained map. After map construction is performed, the user additionally manually modifies and complements the map to improve accuracy. Then, using the well-established map, the position estimation of the robot is performed. That is, it is a method of increasing the accuracy of location estimation by separating map construction and location estimation to increase the accuracy of the map itself.

소규모의 공간에서 공간 내 환경 변화가 적을 때는 이러한 방식으로도 적절한 결과를 보장할 수 있지만, 공장과 같이 거대한 규모의 환경 내에서 수시로 각종 물체들이 변화하는 상황에서는 그 결과를 보장할 수 없다. 이는 동적 물체를 지도 구축에 추가할 지를 결정하기 위해선 동적 물체인지 판단해야 하는 어려움뿐만 아니라 정적 물체와 구분해서 지도 구축을 수행하는 어려움이 있기 때문이다. 또한, 거대한 환경 속에서 아무리 지도 구축을 잘 수행한다 하더라도 그 지도의 정확도 한계로 인해 로봇 위치 추정의 정확도는 부족할 수 밖에 없다.In a small-scale space, when there is little environmental change in the space, an appropriate result can be guaranteed in this way, but the result cannot be guaranteed in a situation where various objects change from time to time in a large-scale environment such as a factory. This is because, in order to determine whether to add a dynamic object to map construction, there is a difficulty in determining whether a dynamic object is a dynamic object or not, and in distinguishing a dynamic object from a static object for map construction. In addition, no matter how well map construction is performed in a huge environment, the accuracy of robot position estimation is inevitably insufficient due to the accuracy limit of the map.

본 발명이 이루고자 하는 목적은, SLAM(Simultaneous Localization And Mapping) 기술을 이용하여 로봇의 위치를 추정하는 동작과 지도를 업데이트하는 동작을 함께 수행하는, 동적 환경에 강인한 로봇 위치 추정 장치 및 방법을 제공하는 데 있다.An object of the present invention is to provide an apparatus and method for estimating a robot position that is robust to a dynamic environment, performing both an operation of estimating the position of a robot and an operation of updating a map using SLAM (Simultaneous Localization And Mapping) technology there is

본 발명의 명시되지 않은 또 다른 목적들은 하기의 상세한 설명 및 그 효과로부터 용이하게 추론할 수 있는 범위 내에서 추가적으로 고려될 수 있다.Other non-specified objects of the present invention may be additionally considered within the scope that can be easily inferred from the following detailed description and effects thereof.

상기의 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 동적 환경에 강인한 로봇 위치 추정 장치는, 지도를 구축하는 지도 구축부; 로봇에 탑재된 센서를 통해 획득된 센서 데이터에서 제1 특징을 획득하고, 상기 지도 구축부를 통해 구축된 상기 지도를 기반으로 상기 센서 데이터에서 획득된 상기 제1 특징을 이용하여 상기 로봇의 위치를 추정하는 위치 추정부; 및 상기 위치 추정부를 통해 획득된 상기 제1 특징을 상기 위치 추정부를 통해 추정된 상기 로봇의 위치를 이용하여 상기 로봇의 이동으로 인한 오차를 보정하고, 상기 지도 구축부를 통해 구축된 상기 지도를 기반으로 보정된 상기 제1 특징을 이용하여 상기 지도를 업데이트하는 지도 업데이트부;를 포함한다.In order to achieve the above object, an apparatus for estimating a robot position robust to a dynamic environment according to a preferred embodiment of the present invention includes: a map building unit for building a map; A first feature is obtained from sensor data acquired through a sensor mounted on the robot, and the position of the robot is estimated using the first feature obtained from the sensor data based on the map built through the map building unit. a position estimating unit; and correcting an error due to movement of the robot by using the position of the robot estimated through the position estimating unit with the first feature obtained through the position estimating unit, and based on the map built through the map building unit and a map updater configured to update the map using the corrected first feature.

여기서, 상기 지도 업데이트부는, 보정된 상기 제1 특징을 이용하여 상기 지도를 업데이트하고, 업데이트된 상기 지도를 기반으로 위치 그래프 최적화(pose graph optimization)를 수행하여 업데이트된 상기 지도에 대응되는 위치 그래프(pose graph)를 획득할 수 있다.Here, the map update unit updates the map using the corrected first feature, and performs pose graph optimization based on the updated map to perform a position graph corresponding to the updated map ( pose graph) can be obtained.

여기서, 상기 지도 업데이트부는, 보정된 상기 제1 특징에 대응되는 상기 지도의 제2 특징과 연관된 키 프레임(key frame)을 상기 지도에서 획득하고, 획득된 상기 키 프레임을 상기 제1 특징을 이용하여 업데이트하여, 상기 지도를 업데이트할 수 있다.Here, the map update unit obtains a key frame associated with a second feature of the map corresponding to the corrected first feature from the map, and uses the obtained key frame to use the first feature. By updating, the map may be updated.

여기서, 상기 지도 업데이트부는, 획득된 상기 키 프레임 중에서 상기 제1 특징으로 인해 미리 설정된 기준치 이상으로 변경되는 키 프레임을 상기 지도에서 삭제하고, 획득된 상기 키 프레임 중에서 상기 제1 특징으로 인해 상기 기준치 미만으로 변경되는 키 프레임을 상기 제1 특징을 이용하여 업데이트할 수 있다.Here, the map update unit deletes, from the map, a key frame that is changed by more than a predetermined reference value due to the first characteristic among the acquired key frames, and deletes from the map a key frame that is changed to a value smaller than the reference value due to the first characteristic among the obtained key frames. A key frame that is changed to can be updated using the first feature.

여기서, 상기 지도 업데이트부는, 상기 지도에서 키 프레임이 삭제되는 경우, 상기 제1 특징으로 이루어지는 새로운 키 프레임을 상기 지도에 추가할 수 있다.Here, the map updater may add a new key frame having the first feature to the map when a key frame is deleted from the map.

여기서, 상기 지도 업데이트부는, 상기 제1 특징과 상기 제2 특징을 대비하여 상기 제1 특징이 상기 제2 특징과 상이하면, 상기 제1 특징과 상기 제2 특징을 대비하여 상기 제1 특징을 상기 지도에 추가할 지 여부를 판단하고, 상기 제1 특징이 상기 지도에 추가되는 경우 상기 제2 특징과 연관된 키 프레임을 상기 지도에서 획득할 수 있다.Here, the map updater compares the first feature and the second feature, and if the first feature is different from the second feature, compares the first feature and the second feature and compares the first feature to the second feature. It is determined whether to add the feature to the map, and when the first feature is added to the map, a key frame associated with the second feature may be obtained from the map.

여기서, 상기 지도 업데이트부는, 포인트 밀도(point denstity)의 변화량 및 특징의 모양 중 적어도 하나를 기반으로 상기 제1 특징이 상기 제2 특징과 상이한 지 여부를 판단할 수 있다.Here, the map update unit may determine whether the first feature is different from the second feature based on at least one of a change in point density and a feature shape.

여기서, 상기 지도 업데이트부는, 특징으로 인한 지도의 변화 유발 정도를 기반으로 상기 제1 특징과 상기 제2 특징을 대비하여 상기 제1 특징을 상기 지도에 추가할 지 여부를 판단할 수 있다.Here, the map update unit may determine whether to add the first feature to the map by comparing the first feature and the second feature based on a degree of change of the map due to the feature.

상기의 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 동적 환경에 강인한 로봇 위치 추정 방법은, 로봇에 탑재된 센서를 통해 획득된 센서 데이터에서 제1 특징을 획득하고, 구축된 지도를 기반으로 상기 센서 데이터에서 획득된 상기 제1 특징을 이용하여 상기 로봇의 위치를 추정하는 단계; 및 획득된 상기 제1 특징을 추정된 상기 로봇의 위치를 이용하여 상기 로봇의 이동으로 인한 오차를 보정하고, 상기 지도를 기반으로 보정된 상기 제1 특징을 이용하여 상기 지도를 업데이트하는 단계;를 포함한다.In order to achieve the above object, a method for estimating a position of a robot robust to a dynamic environment according to a preferred embodiment of the present invention obtains a first feature from sensor data obtained through a sensor mounted on a robot, and based on a map built estimating a position of the robot using the first feature acquired from the sensor data; and correcting an error due to movement of the robot using the position of the robot estimated with the obtained first feature, and updating the map using the corrected first feature based on the map. include

여기서, 상기 지도 업데이트 단계는, 보정된 상기 제1 특징을 이용하여 상기 지도를 업데이트하고, 업데이트된 상기 지도를 기반으로 위치 그래프 최적화(pose graph optimization)를 수행하여 업데이트된 상기 지도에 대응되는 위치 그래프(pose graph)를 획득하는 것으로 이루어질 수 있다.Here, in the map updating step, the map is updated using the corrected first feature, and a position graph corresponding to the updated map is performed by performing pose graph optimization based on the updated map. (pose graph) may be obtained.

여기서, 상기 지도 업데이트 단계는, 보정된 상기 제1 특징에 대응되는 상기 지도의 제2 특징과 연관된 키 프레임(key frame)을 상기 지도에서 획득하고, 획득된 상기 키 프레임을 상기 제1 특징을 이용하여 업데이트하여, 상기 지도를 업데이트하는 것으로 이루어질 수 있다.Here, in the map updating step, a key frame associated with a second feature of the map corresponding to the corrected first feature is acquired from the map, and the obtained key frame is used as the first feature. and update the map by updating the map.

여기서, 상기 지도 업데이트부는, 획득된 상기 키 프레임 중에서 상기 제1 특징으로 인해 미리 설정된 기준치 이상으로 변경되는 키 프레임을 상기 지도에서 삭제하고, 획득된 상기 키 프레임 중에서 상기 제1 특징으로 인해 상기 기준치 미만으로 변경되는 키 프레임을 상기 제1 특징을 이용하여 업데이트하는 것으로 이루어질 수 있다.Here, the map update unit deletes, from the map, a key frame that is changed by more than a predetermined reference value due to the first characteristic among the acquired key frames, and deletes from the map a key frame that is changed to a value smaller than the reference value due to the first characteristic among the acquired key frames. It can be made by updating the key frame that is changed to using the first feature.

상기의 기술적 과제를 달성하기 위한 본 발명의 바람직한 실시예에 따른 컴퓨터 프로그램은 컴퓨터로 읽을 수 있는 기록 매체에 저장되어 상기한 동적 환경에 강인한 로봇 위치 추정 방법 중 어느 하나를 컴퓨터에서 실행시킨다.A computer program according to a preferred embodiment of the present invention for achieving the above technical problem is stored in a computer-readable recording medium and executes any one of the robot position estimation methods robust to the dynamic environment on a computer.

본 발명의 바람직한 실시예에 따른 동적 환경에 강인한 로봇 위치 추정 장치 및 방법에 의하면, SLAM(Simultaneous Localization And Mapping) 기술을 이용하여 로봇의 위치를 추정하는 동작과 지도를 업데이트하는 동작을 함께 수행함으로써, 장기간(long-term) 동적 물체로 인한 지도의 변경 사항이나 정적 물체의 변경 또한 지도에 반영할 수 있기 때문에, 동적 환경에서도 지도 구축을 원할히 수행할 수 있고, 이로 인해 보다 향상된 로봇 위치 추정 성능을 보장할 수 있다.According to the apparatus and method for estimating the position of a robot robust to a dynamic environment according to a preferred embodiment of the present invention, by simultaneously estimating the position of a robot and updating a map using SLAM (Simultaneous Localization And Mapping) technology, Since changes to the map due to long-term dynamic objects or changes to static objects can also be reflected on the map, map construction can be performed smoothly even in a dynamic environment, thereby ensuring better robot localization performance. can do.

본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description below.

도 1은 종래의 로봇 위치 추정 과정을 설명하기 위한 도면이다.
도 2는 본 발명의 바람직한 실시예에 따른 동적 환경에 강인한 로봇 위치 추정 장치를 설명하기 위한 블록도이다.
도 3은 본 발명의 바람직한 실시예에 따른 로봇 위치 추정 및 지도 업데이트 과정을 설명하기 위한 도면이다.
도 4는 본 발명의 바람직한 실시예에 따른 지도 업데이트 이전의 지도 일례를 나타내는 도면이다.
도 5는 본 발명의 바람직한 실시예에 따른 지도 업데이트 이후의 지도 일례를 나타내는 도면이다.
도 6은 본 발명의 바람직한 실시예에 따른 동적 환경에 강인한 로봇 위치 추정 방법을 설명하기 위한 흐름도이다.
도 7은 도 6에 도시한 지도 업데이트 단계(S130)의 세부 단계를 설명하기 위한 흐름도이다.
도 8은 도 7에 도시한 지도 업데이트 단계(S131)의 세부 단계를 설명하기 위한 흐름도이다.
도 9는 도 8에 도시한 지도 업데이트 단계(S131d)의 세부 단계를 설명하기 위한 흐름도이다.
1 is a diagram for explaining a conventional robot position estimation process.
2 is a block diagram for explaining a robot position estimating device that is robust to a dynamic environment according to a preferred embodiment of the present invention.
3 is a diagram for explaining a process of estimating a robot position and updating a map according to a preferred embodiment of the present invention.
4 is a diagram showing an example of a map before map update according to a preferred embodiment of the present invention.
5 is a diagram showing an example of a map after map update according to a preferred embodiment of the present invention.
6 is a flowchart illustrating a method for estimating a position of a robot that is robust to a dynamic environment according to a preferred embodiment of the present invention.
FIG. 7 is a flowchart for explaining detailed steps of the map update step (S130) shown in FIG.
FIG. 8 is a flowchart for explaining detailed steps of the map update step (S131) shown in FIG.
FIG. 9 is a flowchart for explaining detailed steps of the map update step (S131d) shown in FIG. 8 .

이하, 첨부된 도면을 참조하여 본 발명의 실시 예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. Advantages and features of the present invention, and methods for achieving them, will become clear with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below and may be implemented in various different forms, only the present embodiments make the disclosure of the present invention complete, and common knowledge in the art to which the present invention belongs. It is provided to completely inform the person who has the scope of the invention, and the present invention is only defined by the scope of the claims. Like reference numbers designate like elements throughout the specification.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used in this specification may be used in a meaning commonly understood by those of ordinary skill in the art to which the present invention belongs. In addition, terms defined in commonly used dictionaries are not interpreted ideally or excessively unless explicitly specifically defined.

본 명세서에서 "제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.In this specification, terms such as "first" and "second" are used to distinguish one component from another component, and the scope of rights should not be limited by these terms. For example, a first element may be termed a second element, and similarly, a second element may be termed a first element.

본 명세서에서 각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In this specification, identification codes (eg, a, b, c, etc.) for each step are used for convenience of explanation, and identification codes do not describe the order of each step, and each step is clearly Unless a specific order is specified, it may occur in a different order from the specified order. That is, each step may occur in the same order as specified, may be performed substantially simultaneously, or may be performed in the reverse order.

본 명세서에서, "가진다", "가질 수 있다", "포함한다" 또는 "포함할 수 있다"등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.In this specification, expressions such as "has", "may have", "includes" or "may include" indicate the existence of a corresponding feature (eg, numerical value, function, operation, or component such as a part). indicated, and does not preclude the presence of additional features.

또한, 본 명세서에 기재된 '~부'라는 용어는 소프트웨어 또는 FPGA(field-programmable gate array) 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터 구조들 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다.In addition, the term '~unit' described in this specification means software or a hardware component such as a field-programmable gate array (FPGA) or ASIC, and '~unit' performs certain roles. However, '~ part' is not limited to software or hardware. '~bu' may be configured to be in an addressable storage medium and may be configured to reproduce one or more processors. Therefore, as an example, '~unit' refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, and procedures. , subroutines, segments of program code, drivers, firmware, microcode, circuitry, data structures and variables. Functions provided within components and '~units' may be combined into smaller numbers of components and '~units' or further separated into additional components and '~units'.

이하에서 첨부한 도면을 참조하여 본 발명에 따른 동적 환경에 강인한 로봇 위치 추정 장치 및 방법의 바람직한 실시예에 대해 상세하게 설명한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A preferred embodiment of an apparatus and method for estimating a position of a robot robust to a dynamic environment according to the present invention will be described in detail with reference to the accompanying drawings.

먼저, 도 2를 참조하여 본 발명의 바람직한 실시예에 따른 동적 환경에 강인한 로봇 위치 추정 장치에 대하여 설명한다.First, referring to FIG. 2 , a robot position estimating apparatus robust to a dynamic environment according to a preferred embodiment of the present invention will be described.

도 2는 본 발명의 바람직한 실시예에 따른 동적 환경에 강인한 로봇 위치 추정 장치를 설명하기 위한 블록도이다.2 is a block diagram for explaining a robot position estimating device that is robust to a dynamic environment according to a preferred embodiment of the present invention.

도 2를 참조하면, 본 발명의 바람직한 실시예에 따른 동적 환경에 강인한 로봇 위치 추정 장치(이하 '로봇 위치 추정 장치'라 한다)(100)는 SLAM(Simultaneous Localization And Mapping) 기술을 이용하여 로봇의 위치를 추정하는 동작과 지도를 업데이트하는 동작을 함께 수행한다.Referring to FIG. 2, a robot position estimating apparatus (hereinafter referred to as a 'robot position estimating apparatus') 100 robust to a dynamic environment according to a preferred embodiment of the present invention uses SLAM (Simultaneous Localization And Mapping) technology to determine the position of a robot. The operation of estimating the location and the operation of updating the map are performed together.

즉, 종래의 시스템은 도 1에 도시된 바와 같이 지도를 이용하여 로봇 위치 추정만을 수행하고, 센서 데이터로 얻어진 현재 특징을 이용하여 지도를 업데이트하고 있지 않다. 이는 위치 추정을 위해 이용한 특징은 위치 추정 전의 정보를 바탕으로 얻어진 것이므로, 지도를 업데이트할 경우 오차로 인해 기존 지도에 오히려 오차가 추가되는 상황이 발생되기 때문이다.That is, the conventional system only performs robot position estimation using a map as shown in FIG. 1 and does not update the map using current features obtained from sensor data. This is because the feature used for location estimation is obtained based on the information before location estimation, so when the map is updated, an error may be added to the existing map due to an error.

따라서, 본 발명은 종래의 시스템과 달리 지도를 업데이트하는 동작을 추가하여 지도를 실시간으로 보정한다. 이때, 지도를 업데이트하기 전에 동적 물체를 제거한 이후에 지도를 업데이트하게 된다.Therefore, unlike the conventional system, the present invention corrects the map in real time by adding an operation of updating the map. At this time, the map is updated after removing the dynamic object before updating the map.

이에 따라, 본 발명은 주변 환경의 동적 변화가 심하고 위치 추정을 해야 할 환경의 크기가 큰 상황에서 로봇의 위치 추정을 강인하게 수행할 수 있다.Accordingly, the present invention can robustly perform position estimation of a robot in a situation where the dynamic change of the surrounding environment is severe and the size of the environment to be estimated is large.

이를 위해, 로봇 위치 추정 장치(100)는 지도 구축부(110), 위치 추정부(130) 및 지도 업데이트부(150)를 포함할 수 있다.To this end, the robot location estimating device 100 may include a map building unit 110, a location estimating unit 130, and a map update unit 150.

지도 구축부(110)는 SLAM 기술을 기반으로 지도를 구축한다.The map building unit 110 builds a map based on SLAM technology.

위치 추정부(130)는 로봇에 탑재된 센서를 통해 획득된 센서 데이터에서 제1 특징을 획득하고, 지도 구축부(110)를 통해 구축된 지도를 기반으로 센서 데이터에서 획득된 제1 특징을 이용하여 로봇의 위치를 추정한다.The location estimator 130 obtains a first feature from sensor data obtained through a sensor mounted on the robot, and uses the first feature obtained from the sensor data based on the map built through the map builder 110. to estimate the position of the robot.

지도 업데이트부(150)는 위치 추정부(130)를 통해 획득된 제1 특징을 위치 추정부(130)를 통해 추정된 로봇의 위치를 이용하여 로봇의 이동으로 인한 오차를 보정하고, 지도 구축부(110)를 통해 구축된 지도를 기반으로 보정된 제1 특징을 이용하여 지도를 업데이트한다.The map update unit 150 corrects an error due to the movement of the robot by using the position of the robot estimated through the position estimation unit 130 and the first feature obtained through the position estimation unit 130, and the map construction unit Based on the map built through (110), the map is updated using the calibrated first feature.

예컨대, 위치 추정부(130)를 통해 획득된 제1 특징은 보정 전 로봇의 위치를 기반으로 획득된 것이므로, 지도 업데이트부(150)는 위치 추정부(130)를 통해 보정된 로봇의 위치와 보정 전 로봇의 위치의 차이를 기반으로 제1 특징을 보정할 수 있다.For example, since the first feature acquired through the position estimator 130 is obtained based on the position of the robot before correction, the map updater 150 uses the position of the robot corrected through the position estimator 130 and correction. The first feature may be corrected based on the difference in positions of all robots.

즉, 지도 업데이트부(150)는 보정된 제1 특징을 이용하여 지도를 업데이트할 수 있다.That is, the map updater 150 may update the map using the corrected first feature.

보다 자세히 설명하면, 지도 업데이트부(150)는 보정된 제1 특징에 대응되는 지도의 제2 특징과 연관된 키 프레임(key frame)을 지도에서 획득할 수 있다.More specifically, the map updater 150 may obtain a key frame associated with a second feature of the map corresponding to the corrected first feature from the map.

예컨대, 지도의 제2 특징은 보정 전 로봇의 위치와 함께 지도에 포함되어 있다. 따라서, 현재 보정된 로봇의 위치를 통해 보정된 제1 특징과 관련 있는 제2 특징을 지도에서 획득할 수 있다. 제1 특징은 현재 보정된 로봇의 위치를 기반으로 얻어진 것이고, 제2 특징은 보정 전 로봇의 위치를 기반으로 얻어지는 특징이므로, 제2 특징은 제1 특징과 연관되었다고 판단할 수 있다.For example, the second feature of the map is included in the map along with the position of the robot before calibration. Accordingly, a second feature related to the first feature calibrated through the currently calibrated position of the robot may be obtained from the map. Since the first feature is obtained based on the currently calibrated position of the robot and the second feature is obtained based on the position of the robot before correction, it can be determined that the second feature is related to the first feature.

여기서, 지도 업데이트부(150)는 제1 특징과 제2 특징을 대비하여 제1 특징이 제2 특징과 상이하면, 제1 특징과 제2 특징을 대비하여 제1 특징을 지도에 추가할 지 여부를 판단하고, 제1 특징이 지도에 추가되는 경우 제2 특징과 연관된 키 프레임을 지도에서 획득할 수 있다.Here, the map update unit 150 compares the first feature and the second feature, and if the first feature is different from the second feature, whether to add the first feature to the map by comparing the first feature and the second feature. , and when the first feature is added to the map, a key frame associated with the second feature may be obtained from the map.

이때, 지도 업데이트부(150)는 포인트 밀도(point denstity)의 변화량 및 특징의 모양 중 적어도 하나를 기반으로 제1 특징이 제2 특징과 상이한 지 여부를 판단할 수 있다.In this case, the map updater 150 may determine whether the first feature is different from the second feature based on at least one of a change in point density and a shape of the feature.

즉, 지도 업데이트부(150)는 아래의 과정을 통해 제1 특징과 제2 특징이 상이한 지 여부를 판단할 수 있다.That is, the map updater 150 may determine whether the first feature and the second feature are different through the following process.

1. 현재의 로봇 위치를 통해 제2 특징과 연관된 제1 특징을 선별함1. Selecting a first feature associated with a second feature through the current robot position

2. 연관된 제1 특징과 제2 특징의 3차원 정규 분포(normal distribution), 밀도(density), 공분산(covariance) 등을 비교함2. Comparing the 3-dimensional normal distribution, density, covariance, etc. of the associated first and second features

3. 과정 2에서의 차이가 미리 설정된 임계치(threshold)보다 크면 서로 상이하다고 판단함3. If the difference in step 2 is greater than a preset threshold, it is determined that they are different.

예컨대, 제1 특징과 제2 특징을 비교한 결과, 포인트 밀도의 변화량이 임계치(threshold)보다 크거나 특징의 모양이 달라진 경우, 지도 업데이트부(150)는 제1 특징을 제2 특징과 상이한 특징으로 판단할 수 있다.For example, as a result of comparing the first feature and the second feature, if the change in point density is greater than a threshold or the shape of the feature is different, the map updater 150 determines the first feature as a feature different from the second feature. can be judged by

아울러, 지도 업데이트부(150)는 특징으로 인한 지도의 변화 유발 정도를 기반으로 제1 특징과 제2 특징을 대비하여 제1 특징을 지도에 추가할 지 여부를 판단할 수 있다.In addition, the map update unit 150 may determine whether to add the first feature to the map by comparing the first feature and the second feature based on the degree of change of the map due to the feature.

여기서, 지도의 변화 유발 정도는 모든 제1 특징과 제2 특징 중에서 서로 상이한 제1 특징과 제2 특징의 비율을 말한다. 연관된 제1 특징과 제2 특징이 서로 상이하다면, 지도의 변화가 유발되었다고 판단할 수 있다.Here, the degree of change induction of the map refers to a ratio of first and second features that are different from each other among all first and second features. If the associated first feature and the second feature are different from each other, it may be determined that a change in the map has been induced.

예컨대, 제1 특징으로 인한 지도의 변화 유발 정도가 제2 특징으로 인한 지도의 변화 유발 정도보다 크면, 지도 업데이트부(150)는 제1 특징을 지도에 추가하는 것으로 판단할 수 있다.For example, if the degree of causing map change due to the first feature is greater than the degree of causing map change due to the second feature, the map updater 150 may determine that the first feature is added to the map.

즉, 제2 특징에 없던 제1 특징이라면, 지도 업데이트부(150)는 제1 특징을 바로 지도에 추가할 수 있다. 지도 업데이트부(150)는 제2 특징과 연관된 제1 특징 중에서 지도의 변화 유발 정도가 미리 설정된 기준값 이상인 제1 특징을 해당 제2 특징 부분에 추가(해당하는 부분의 제2 특징을 제1 특징으로 대체)할 수 있다. 지도 업데이트부(150)는 제2 특징과 연관된 제1 특징 중에서 지도의 변화 유발 정도가 미리 설정된 기준값보다 낮은 제1 특징을 해당 제2 특징 부분과 혼합할 수 있다. 여기서, 혼합은 제1 특징의 데이터를 제2 특징의 데이터와 합치는 것으로, 단순히 데이터를 더하는 것이 아니라 3차원 정규 분포(normal distribution), 밀도(density), 공분산(covariance) 등을 다시 계산하는 것을 말한다.That is, if the first feature does not exist in the second feature, the map updater 150 may directly add the first feature to the map. The map updater 150 adds a first feature having a map change inducing degree equal to or greater than a preset reference value among first features associated with the second feature to a corresponding second feature part (the second feature of the corresponding part is regarded as the first feature). can be replaced). The map updater 150 may mix a first feature having a map change inducing degree lower than a preset reference value among first features associated with the second feature with the corresponding second feature. Here, mixing means combining data of a first feature with data of a second feature, and not simply adding data, but recalculating a 3D normal distribution, density, covariance, etc. say

또한, 지도 업데이트부(150)는 획득된 키 프레임을 제1 특징을 이용하여 업데이트하여, 지도를 업데이트할 수 있다.Also, the map updater 150 may update the map by updating the obtained key frame using the first feature.

여기서, 지도 업데이트부(150)는 획득된 키 프레임 중에서 제1 특징으로 인해 미리 설정된 기준치 이상으로 변경되는 키 프레임을 지도에서 삭제하고, 획득된 키 프레임 중에서 제1 특징으로 인해 기준치 미만으로 변경되는 키 프레임을 제1 특징을 이용하여 업데이트할 수 있다. 이때, 지도에서 키 프레임이 삭제되는 경우, 지도 업데이트부(150)는 제1 특징으로 이루어지는 새로운 키 프레임을 지도에 추가할 수 있다.Here, the map updater 150 deletes from the map key frames that change by more than a predetermined reference value due to the first characteristic among the acquired key frames, and deletes key frames that change by less than the reference value due to the first characteristic among the acquired key frames. The frame may be updated using the first feature. In this case, when a key frame is deleted from the map, the map updater 150 may add a new key frame having the first feature to the map.

예컨대, 키 프레임은 로봇의 위치, 관련 특징들의 정보 등을 포함한다. 키 프레임에 포함된 제2 특징 중 새로 획득된 제1 특징으로 인해 삭제하여야 하는 제2 특징이 많은 경우(제2 특징의 개수가 임계값 이상인 경우), 해당 키 프레임은 삭제한다. 삭제된 키 프레임에는 제1 특징으로 구성된 새로운 키 프레임을 추가하게 된다. 그렇지 않은 경우, 제1 특징을 사용하여 제2 특징이 업데이트되었으므로 키 프레임도 업데이트 하면 된다.For example, the key frame includes the position of the robot, information on related features, and the like. Among the second features included in the key frame, when there are many second features to be deleted due to the newly acquired first feature (when the number of second features is greater than or equal to a threshold value), the corresponding key frame is deleted. A new key frame composed of the first feature is added to the deleted key frame. If not, since the second feature was updated using the first feature, the key frame may also be updated.

그리고, 지도 업데이트부(150)는 업데이트된 지도를 기반으로 위치 그래프 최적화(pose graph optimization)를 수행하여 업데이트된 지도에 대응되는 위치 그래프(pose graph)를 획득할 수 있다.Also, the map update unit 150 may acquire a pose graph corresponding to the updated map by performing pose graph optimization based on the updated map.

이와 같이, 본 발명은 정적 물체에서 얻어지는 제1 특징을 추정된 로봇의 위치를 통해 업데이트하여 로봇 이동으로 인한 오차를 보정하고, 보정된 제1 특징을 기존의 지도와 매칭하여 기존 지도와 같은 정보일 경우에는 보완하고, 기존 지도에 없던 정보인 경우에는 추가하게 된다. 이때, 키 프레임을 추가하는 상황에서는 단순히 추가하는 것이 아니라, 기존 키 프레임과의 관계인 위치 그래프 최적화(pose graph optimization)를 수행하여 지도 업데이트를 수행한다.In this way, the present invention updates the first feature obtained from the static object through the estimated robot position to correct the error due to the robot movement, and matches the corrected first feature with the existing map so that the information is the same as the existing map. In this case, it is supplemented, and in the case of information that was not in the existing map, it is added. At this time, in a situation where a key frame is added, map update is performed by performing pose graph optimization, which is a relationship with an existing key frame, instead of simply adding a key frame.

이에 따라, 지도는 로봇 위치를 추정하는 동안 고정되어 사용만 하는 것이 아니라, 로봇 위치를 추정하는 동안에도 지속적으로 보완되게 된다. 또한, 위치 그래프 최적화(pose graph optimization)도 함께 수행되므로, 단순히 기존 지도의 정보를 보완하는 것을 넘어 최적의 지도를 유지할 수 있게 된다.Accordingly, the map is not only fixed and used while estimating the robot position, but is continuously supplemented even while estimating the robot position. In addition, since pose graph optimization is also performed, it is possible to maintain an optimal map beyond simply supplementing information of an existing map.

따라서, 본 발명은 종래의 시스템이 가진 동적 환경에서 위치 추정의 정확도가 낮아지는 한계를 넘는 강인한 로봇 위치 추정을 보장할 수 있다.Therefore, the present invention can ensure robust robot position estimation that exceeds the limit in which the accuracy of position estimation is lowered in a dynamic environment of the conventional system.

그러면, 도 3 내지 도 5를 참조하여 본 발명의 바람직한 실시예에 따른 로봇 위치 추정 및 지도 업데이트 동작에 대하여 설명한다.Next, robot position estimation and map update operations according to a preferred embodiment of the present invention will be described with reference to FIGS. 3 to 5 .

도 3은 본 발명의 바람직한 실시예에 따른 로봇 위치 추정 및 지도 업데이트 과정을 설명하기 위한 도면이고, 도 4는 본 발명의 바람직한 실시예에 따른 지도 업데이트 이전의 지도 일례를 나타내는 도면이며, 도 5는 본 발명의 바람직한 실시예에 따른 지도 업데이트 이후의 지도 일례를 나타내는 도면이다.3 is a diagram for explaining a robot position estimation and map update process according to a preferred embodiment of the present invention, FIG. 4 is a diagram showing an example of a map prior to map update according to a preferred embodiment of the present invention, and FIG. It is a diagram showing an example of a map after map update according to a preferred embodiment of the present invention.

도 3을 참조하면, 위치 추정부(130)는 로봇에 탑재된 센서를 통해 획득된 센서 데이터에서 제1 특징을 획득하고, 제1 특징을 지도에 매칭하여 로봇의 위치를 추정할 수 있다.Referring to FIG. 3 , the location estimator 130 may obtain a first feature from sensor data acquired through a sensor mounted on the robot and match the first feature to a map to estimate the location of the robot.

그리고, 위치 추정부(130)는 센서 데이터에서 획득된 제1 특징과 추정된 로봇의 위치를 지도 업데이트부(150)에 제공할 수 있다.In addition, the position estimator 130 may provide the map updater 150 with the first feature obtained from the sensor data and the estimated position of the robot.

그러면, 지도 업데이트부(150)는 추정된 로봇의 위치를 이용하여 제1 특징을 보정하고, 보정된 제1 특징을 이용하여 지도를 업데이트하며, 업데이트된 지도를 기반으로 위치 그래프 최적화(pose graph optimization)를 수행하여, 지도 구축부(110)의 지도를 업데이트하게 된다.Then, the map update unit 150 corrects the first feature using the estimated position of the robot, updates the map using the corrected first feature, and optimizes the position graph based on the updated map. ) to update the map of the map building unit 110.

지도 업데이트 동작에 대하여 자세히 설명하면, 지도 업데이트부(150)는 보정된 제1 특징에 대응되는 지도의 제2 특징을 획득하고, 제1 특징과 제2 특징이 서로 상이한지 확인할 수 있다.In detail about the map update operation, the map update unit 150 may obtain a second feature of the map corresponding to the corrected first feature and determine whether the first feature and the second feature are different from each other.

제1 특징이 제2 특징과 상이하면, 지도 업데이트부(150)는 제1 특징을 지도에 추가할 지 여부를 확인할 수 있다.If the first feature is different from the second feature, the map updater 150 may determine whether to add the first feature to the map.

제1 특징이 지도에 추가되는 경우, 지도 업데이트부(150)는 제2 특징과 연관된 키 프레임을 지도에서 획득할 수 있다.When the first feature is added to the map, the map updater 150 may obtain a key frame associated with the second feature from the map.

그런 다음, 획득된 키 프레임이 제1 특징으로 인해 미리 설정된 기준치 이상으로 변경되는 키 프레임이면, 지도 업데이트부(150)는 해당 키 프레임을 지도에서 삭제하고, 제1 특징으로 이루어지는 새로운 키 프레임을 지도에 추가할 수 있다. 이에 반면, 획득된 키 프레임이 제1 특징으로 인해 미리 설정된 기준치 미만으로 변경되는 키 프레임이면, 지도 업데이트부(150)는 해당 키 프레임을 제1 특징을 이용하여 업데이트할 수 있다.Then, if the acquired key frame is a key frame that is changed by more than a predetermined reference value due to the first characteristic, the map updater 150 deletes the key frame from the map and maps a new key frame having the first characteristic. can be added to On the other hand, if the acquired key frame is a key frame that is changed by less than a predetermined reference value due to the first characteristic, the map updater 150 may update the key frame by using the first characteristic.

이에 따라, 본 발명에 따른 로봇 위치 추정 장치(100)는 지도를 기반으로 로봇의 위치를 추정함과 동시에, 도 4에 도시된 바와 같은 지도를 도 5에 도시된 바와 같은 지도로 업데이트를 할 수 있다.Accordingly, the apparatus 100 for estimating the robot position according to the present invention can estimate the position of the robot based on the map and simultaneously update the map shown in FIG. 4 to the map shown in FIG. 5. there is.

이와 같이, 본 발명에 따른 지도 업데이트의 핵심은 키 프레임의 추가와 삭제에 있다. 키 프레임을 추가만 하게 될 경우, 증가되는 키 프레임으로 인한 위치 그래프(pose graph)의 복잡도 증가로 인해 최적화의 복잡도 또한 증가되고, 이로 인해 최적화 계산량이 증가되어 최적화 실패 또한 많아지게 된다. 따라서, 단순히 키 프레임을 추가하는 것이 아니라, 추가하기 전에 로봇 주변에 가장 오래된 키 프레임이 있는지 확인한 후, 이를 삭제한 뒤 새로운 키 프레임을 다시 추가하여야 한다.As such, the core of map update according to the present invention lies in the addition and deletion of key frames. If only key frames are added, the complexity of optimization also increases due to the increase in the complexity of the pose graph due to the increased key frames, which increases the amount of optimization calculations, resulting in many optimization failures. Therefore, instead of simply adding a key frame, it is necessary to check if there is the oldest key frame around the robot before adding it, delete it, and then add a new key frame again.

즉, 오래된 키 프레임과 새로운 키 프레임의 일대일 교체라고 볼 수 있다. 키 프레임을 삭제하는 것은 키 프레임에 소속된 특징들 또한 같이 삭제하는 것이므로, 오래된 지도 정보를 삭제하는다는 것을 의미한다. 키 프레임을 추가하는 것은 키 프레임에 소속된 특징들 또한 같이 추가하는 것이므로, 새로운 지도 정보를 추가한다는 것을 의미한다. 따라서, 오래된 지도 정보는 삭제하고, 새로운 지도 정보를 추가할 수 있게 된다. 물론, 키 프레임이 변경됨으로 인해 위치 그래프(pose graph)의 최적화는 다시 수행하여야 하며, 이로 인해 전체 지도를 보완하게 된다.In other words, it can be seen as a one-to-one replacement of the old key frame and the new key frame. Deleting a key frame means deleting old map information because features belonging to the key frame are also deleted. Adding a key frame means that new map information is added because features belonging to the key frame are also added together. Accordingly, old map information can be deleted and new map information can be added. Of course, due to the change of the key frame, the optimization of the pose graph must be performed again, thereby supplementing the entire map.

이와 같은, 강인한 지도 구축은 초기 지도 구축 과정에서 얻어진 지도에 추가하지 못한 장기간(long-term) 동적 물체로 인한 지도의 변경 사항이나 정적 물체의 변경 또한 지도에 반영할 수 있기 때문에, 동적 환경에서도 지도 구축을 원할히 수행할 수 있고, 이로 인해 보다 향상된 로봇 위치 추정 성능을 보장할 수 있다.Such robust map construction can also reflect changes in the map due to long-term dynamic objects or changes in static objects that were not added to the map obtained in the initial map construction process, so that the map can be mapped even in a dynamic environment. The construction can be performed smoothly, and thus more improved robot positioning performance can be guaranteed.

여기서, 장기간(long-term) 동적 물체는 단순히 움직이는 물체가 아니라 움직여서 특정 위치에 일정 시간 이상 동안 고정되어 한동안 정적 지도 정보가 될 수 있는 물체를 의미한다.Here, a long-term dynamic object is not simply a moving object, but an object that can become static map information for a while by moving and being fixed at a specific location for a certain period of time or longer.

그러면, 도 6 내지 도 9를 참조하여 본 발명의 바람직한 실시예에 따른 동적 환경에 강인한 로봇 위치 추정 방법에 대하여 설명한다.Then, a method for estimating a position of a robot that is robust to a dynamic environment according to a preferred embodiment of the present invention will be described with reference to FIGS. 6 to 9 .

도 6은 본 발명의 바람직한 실시예에 따른 동적 환경에 강인한 로봇 위치 추정 방법을 설명하기 위한 흐름도이다.6 is a flowchart illustrating a method for estimating a position of a robot that is robust to a dynamic environment according to a preferred embodiment of the present invention.

도 6을 참조하면, 로봇 위치 추정 장치(100)는 로봇에 탑재된 센서를 통해 획득된 센서 데이터에서 제1 특징을 획득하고, 구축된 지도를 기반으로 센서 데이터에서 획득된 제1 특징을 이용하여 로봇의 위치를 추정한다(S110).Referring to FIG. 6, the robot position estimating apparatus 100 obtains a first feature from sensor data obtained through a sensor mounted on the robot, and uses the first feature obtained from the sensor data based on a built map. The position of the robot is estimated (S110).

그런 다음, 로봇 위치 추정 장치(100)는 획득된 제1 특징을 추정된 로봇의 위치를 이용하여 로봇의 이동으로 인한 오차를 보정하고, 지도를 기반으로 보정된 제1 특징을 이용하여 지도를 업데이트한다(S130).Then, the robot position estimating device 100 corrects an error due to movement of the robot using the position of the robot estimated by the first feature obtained, and updates the map using the corrected first feature based on the map. Do (S130).

도 7은 도 6에 도시한 지도 업데이트 단계(S130)의 세부 단계를 설명하기 위한 흐름도이다.FIG. 7 is a flowchart for explaining detailed steps of the map update step (S130) shown in FIG.

도 7을 참조하면, 로봇 위치 추정 장치(100)는 보정된 제1 특징을 이용하여 지도를 업데이트할 수 있다(S131).Referring to FIG. 7 , the robot position estimating apparatus 100 may update a map using the corrected first feature (S131).

그런 다음, 로봇 위치 추정 장치(100)는 업데이트된 지도를 기반으로 위치 그래프 최적화(pose graph optimization)를 수행하여 업데이트된 지도에 대응되는 위치 그래프(pose graph)를 획득할 수 있다(S133).Then, the robot position estimating device 100 may obtain a pose graph corresponding to the updated map by performing pose graph optimization based on the updated map (S133).

도 8은 도 7에 도시한 지도 업데이트 단계(S131)의 세부 단계를 설명하기 위한 흐름도이다.FIG. 8 is a flowchart for explaining detailed steps of the map update step (S131) shown in FIG.

도 8을 참조하면, 로봇 위치 추정 장치(100)는 제1 특징에 대응되는 지도의 제2 특징을 획득할 수 있다(S131a).Referring to FIG. 8 , the robot position estimating apparatus 100 may obtain a second feature of the map corresponding to the first feature (S131a).

그런 다음, 로봇 위치 추정 장치(100)는 제1 특징과 제2 특징이 상이하면, 제1 특징과 제2 특징을 대비하여 제1 특징을 지도에 추가할 지 여부를 판단할 수 있다(S131b). 이때, 로봇 위치 추정 장치(100)는 포인트 밀도(point denstity)의 변화량 및 특징의 모양 중 적어도 하나를 기반으로 제1 특징이 제2 특징과 상이한 지 여부를 판단할 수 있다. 아울러, 로봇 위치 추정 장치(100)는 특징으로 인한 지도의 변화 유발 정도를 기반으로 제1 특징과 제2 특징을 대비하여 제1 특징을 지도에 추가할 지 여부를 판단할 수 있다.Then, if the first feature and the second feature are different, the robot position estimating apparatus 100 may compare the first feature and the second feature to determine whether to add the first feature to the map (S131b). . At this time, the robot position estimating apparatus 100 may determine whether the first feature is different from the second feature based on at least one of a change in point density and a shape of the feature. In addition, the robot position estimating apparatus 100 may determine whether to add the first feature to the map by comparing the first feature and the second feature based on the degree of change of the map due to the feature.

제1 특징이 추가되는 경우, 로봇 위치 추정 장치(100)는 제2 특징과 연관된 키 프레임을 지도에서 획득할 수 있다(S131c).When the first feature is added, the robot position estimating apparatus 100 may obtain a key frame associated with the second feature from the map (S131c).

그런 다음, 로봇 위치 추정 장치(100)는 획득된 키 프레임을 제1 특징을 이용하여 업데이트하여, 지도를 업데이트할 수 있다(S131d).Then, the robot position estimating apparatus 100 may update the map by updating the obtained key frame using the first feature (S131d).

도 9는 도 8에 도시한 지도 업데이트 단계(S131d)의 세부 단계를 설명하기 위한 흐름도이다.FIG. 9 is a flowchart for explaining detailed steps of the map update step (S131d) shown in FIG. 8 .

도 9를 참조하면, 획득된 키 프레임이 제1 특징으로 인해 미리 설정된 기준치 이상으로 변경되는 키 프레임이면(S131d-1-Y), 로봇 위치 추정 장치(100)는 해당 키 프레임을 지도에서 삭제할 수 있다(S131d-2).Referring to FIG. 9, if the obtained key frame is a key frame that is changed by more than a preset reference value due to the first feature (S131d-1-Y), the robot position estimation device 100 may delete the corresponding key frame from the map. Yes (S131d-2).

그런 다음, 로봇 위치 추정 장치(100)는 제1 특징으로 이루어지는 새로운 키 프레임을 지도에 추가할 수 있다(S131d-3).Then, the robot position estimating apparatus 100 may add a new key frame consisting of the first feature to the map (S131d-3).

이에 반면, 획득된 키 프레임이 제1 특징으로 인해 미리 설정된 기준치 이상으로 변경되는 키 프레임이 아니면(S131d-1-N), 로봇 위치 추정 장치(100)는 해당 키 프레임을 제1 특징을 이용하여 업데이트할 수 있다(S131d-4).On the other hand, if the obtained key frame is not a key frame that is changed by more than a preset reference value due to the first feature (S131d-1-N), the robot position estimation device 100 uses the first feature to determine the key frame It can be updated (S131d-4).

이상에서 설명한 본 발명의 실시예를 구성하는 모든 구성요소들이 하나로 결합하거나 결합하여 동작하는 것으로 기재되어 있다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 또한, 이와 같은 컴퓨터 프로그램은 USB 메모리, CD 디스크, 플래쉬 메모리 등과 같은 컴퓨터가 읽을 수 있는 기록 매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 기록 매체로서는 자기기록매체, 광 기록매체 등이 포함될 수 있다.Even though all components constituting the embodiments of the present invention described above are described as being combined or operated as one, the present invention is not necessarily limited to these embodiments. That is, within the scope of the object of the present invention, all of the components may be selectively combined with one or more to operate. In addition, although all of the components may be implemented as a single independent piece of hardware, some or all of the components are selectively combined to perform some or all of the combined functions in one or a plurality of pieces of hardware. It may be implemented as a computer program having. In addition, such a computer program may implement an embodiment of the present invention by being stored in a computer readable medium such as a USB memory, a CD disk, or a flash memory and read and executed by a computer. A recording medium of a computer program may include a magnetic recording medium, an optical recording medium, and the like.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것이다. 따라서, 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely an example of the technical idea of the present invention, and those skilled in the art can make various modifications, changes, and substitutions without departing from the essential characteristics of the present invention. will be. Therefore, the embodiments disclosed in the present invention and the accompanying drawings are not intended to limit the technical idea of the present invention, but to explain, and the scope of the technical idea of the present invention is not limited by these embodiments and the accompanying drawings. . The protection scope of the present invention should be construed according to the following claims, and all technical ideas within the equivalent range should be construed as being included in the scope of the present invention.

100 : 로봇 위치 추정 장치,
110 : 지도 구축부,
130 : 위치 추정부,
150 : 지도 업데이트부
100: robot position estimation device,
110: map building unit,
130: position estimation unit,
150: map update unit

Claims (13)

SLAM 기반의 지도를 구축하는 지도 구축부;
로봇에 탑재된 센서를 통해 획득된 센서 데이터에서 제1특징을 획득하고, 상기 지도 구축부를 통해 구축된 상기 지도를 기반으로 상기 센서 데이터에서 획득된 상기 제1특징을 이용하여 상기 로봇의 위치를 추정하는 위치 추정부; 및
상기 위치 추정부를 통해 획득된 상기 제1특징 중 정적 물체에서 얻어지는 특징과 관련하여 추정된 로봇의 위치를 이용하여, 상기 제1특징을 보정함으로써 상기 로봇의 이동에 따라 발생하는 오차를 감소시키고, 상기 보정된 제1특징을 이용하여 상기 지도를 업데이트하는 지도 업데이트부를 포함하며,
상기 보정된 제1특징을 이용하여 지도를 업데이트하는 것은,
상기 보정된 제1특징이 상기 지도에 매칭될 경우 상기 보정된 제1특징을 이용하여 상기 지도를 보완하거나, 또는 상기 보정된 제1특징이 상기 지도에 매칭되지 않을 경우 상기 보정된 제1특징을 상기 저장된 지도에 추가하는 단계; 및
상기 보정된 제1특징과 연관된 키 프레임을 이용하여 기존의 키 프레임을 업데이트하는 단계를 포함하는, 동적 환경에 강인한 로봇 위치 추정 장치.
a map building unit that builds a SLAM-based map;
A first feature is obtained from sensor data obtained through a sensor mounted on the robot, and the location of the robot is estimated using the first feature obtained from the sensor data based on the map built through the map building unit. a position estimating unit; and
An error occurring according to the movement of the robot is reduced by correcting the first feature using the position of the robot estimated in relation to a feature obtained from a static object among the first features acquired through the position estimation unit, A map updater for updating the map using the corrected first feature;
Updating the map using the corrected first feature,
If the corrected first feature matches the map, the map is supplemented using the corrected first feature, or if the corrected first feature does not match the map, the corrected first feature is adding to the stored map; and
A robot position estimating device robust to a dynamic environment, comprising the step of updating an existing key frame using a key frame associated with the corrected first feature.
제1항에서,
상기 기존의 키 프레임을 업데이트하는 단계에 이어,
상기 업데이트된 키 프레임에 대한 위치 그래프 최적화(pose graph optimization)를 통해, 상기 업데이트된 지도에 대응되는 포즈 그래프(pose graph)를 생성하는 단계를 더욱 수행하는 것을 특징으로 하는,
동적 환경에 강인한 로봇 위치 추정 장치.
In paragraph 1,
Following the step of updating the existing key frame,
Characterized in that further performing the step of generating a pose graph corresponding to the updated map through pose graph optimization for the updated key frame,
Robust robot positioning device for dynamic environments.
제1항에서,
상기 지도 업데이트부가 상기 보정된 제1특징과 연관된 키 프레임을 이용하여 기존의 키 프레임을 업데이트하는 것은,
상기 보정된 제1특징에 대응되는, 상기 지도에 포함된 제2 특징과 연관된 키 프레임(key frame)을 상기 지도에서 획득하고,
상기 제2 특징과 연관된 키 프레임이 상기 제1특징과 관련하여 미리 설정된 기준치 이상으로 변경되었는지 여부에 따라, 상기 제2특징과 연관된 키 프레임을 상기 지도에서 삭제하고 상기 제1특징과 연관된 키 프레임을 상기 지도에 추가하거나, 또는 상기 제1특징을 이용하여 상기 제2특징과 연관된 키 프레임을 업데이트하는 것을 특징으로 하는, 동적 환경에 강인한 로봇 위치 추정 장치.
In paragraph 1,
The map update unit updating the existing key frame using the key frame associated with the corrected first feature,
Obtaining a key frame associated with a second feature included in the map, corresponding to the corrected first feature, from the map;
The key frame associated with the second characteristic is deleted from the map and the key frame associated with the first characteristic is deleted according to whether the key frame associated with the second characteristic has been changed by more than a preset reference value in relation to the first characteristic. Adding to the map, or using the first feature to update a key frame associated with the second feature, a robot position estimation device robust to a dynamic environment.
삭제delete 삭제delete 삭제delete 제1항에서,
상기 지도 업데이트부는, 상기 보정된 제1특징이 상기 지도에 매칭되는지 여부를 판단하며, 상기 매칭되는지 여부는 상기 제1특징과 상기 지도의 제2특징에 따른 포인트 밀도(point denstity)의 변화량 및 특징의 모양 중 적어도 하나를 기반으로 판단하는 것을 특징으로 하는 것을 특징으로 하는,
동적 환경에 강인한 로봇 위치 추정 장치.
In paragraph 1,
The map update unit determines whether the corrected first feature matches the map, and whether the match is determined is based on a change in point density and a characteristic according to the first feature and the second feature of the map. Characterized in that the judgment based on at least one of the shapes of,
Robust robot positioning device for dynamic environments.
제1항에서,
상기 지도 업데이트부는, 상기 보정된 제1특징이 상기 지도에 매칭되는지 여부를 판단하며, 상기 매칭되는지 여부는 상기 제1특징과 상기 지도의 제2특징의 상이함에 따른 지도의 변화 유발 정도를 고려하여 판단하는 것을 특징으로 하는,
동적 환경에 강인한 로봇 위치 추정 장치.
In paragraph 1,
The map update unit determines whether or not the corrected first feature matches the map, and determines whether or not the corrected feature matches the map by considering the degree of map change caused by the difference between the first feature and the second feature of the map. characterized by judging
Robust robot positioning device for dynamic environments.
로봇에 탑재되며 SLAM기반의 지도를 구축하기 위해 센서를 통해 획득된 센서 데이터에서 제1특징을 획득하고, 구축된 지도를 기반으로 상기 획득된 제1특징을 이용하여 상기 로봇의 위치를 추정하는 단계; 및
상기 제1특징 중 정적 물체에서 얻어지는 특징과 관련하여 추정된 로봇의 위치를 이용하여, 상기 제1특징을 보정함으로써 상기 로봇의 이동에 따라 발생하는 오차를 감소시키고, 상기 보정된 제1특징을 이용하여 상기 지도를 업데이트하는 단계를 포함하며,
상기 보정된 제1특징을 이용하여 지도를 업데이트하는 단계는,
상기 보정된 제1특징이 상기 지도에 매칭될 경우 상기 보정된 제1특징을 이용하여 상기 지도를 보완하거나, 또는 상기 보정된 제1특징이 상기 지도에 매칭되지 않을 경우 상기 보정된 제1특징을 상기 저장된 지도에 추가하는 단계; 및
상기 보정된 제1특징과 연관된 키 프레임을 이용하여 기존의 키 프레임을 업데이트하는 단계를 포함하는, 동적 환경에 강인한 로봇 위치 추정 방법.
Obtaining a first feature from sensor data acquired through a sensor to build a SLAM-based map mounted on a robot, and estimating a position of the robot using the obtained first feature based on the built map ; and
Among the first features, an error generated according to the movement of the robot is reduced by correcting the first feature using the position of the robot estimated in relation to a feature obtained from a static object, and using the corrected first feature. and updating the map by
In the step of updating the map using the corrected first feature,
If the corrected first feature matches the map, the map is supplemented using the corrected first feature, or if the corrected first feature does not match the map, the corrected first feature is adding to the stored map; and
A method for estimating a robot position robust to a dynamic environment, comprising the step of updating an existing key frame using a key frame associated with the corrected first feature.
제9항에서, 상기 기존의 키 프레임을 업데이트하는 단계에 이어,
상기 업데이트된 키 프레임에 대한 위치 그래프 최적화(pose graph optimization)를 통해, 상기 업데이트된 지도에 대응되는 포즈 그래프(pose graph)를 생성하는 단계를 더욱 수행하는 것을 특징으로 하는,
동적 환경에 강인한 로봇 위치 추정 방법.
10. The method of claim 9, following updating the existing key frame,
Characterized in that further performing the step of generating a pose graph corresponding to the updated map through pose graph optimization for the updated key frame,
A robot position estimation method that is robust to dynamic environments.
제9항에서, 상기 보정된 제1특징과 연관된 키 프레임을 이용하여 기존의 키 프레임을 업데이트하는 것은,
상기 보정된 제1특징에 대응되는, 상기 지도에 포함된 제2 특징과 연관된 키 프레임(key frame)을 상기 지도에서 획득하고,
상기 제2 특징과 연관된 키 프레임이 상기 제1특징과 관련하여 미리 설정된 기준치 이상으로 변경되었는지 여부에 따라, 상기 제2특징과 연관된 키 프레임을 상기 지도에서 삭제하고 상기 제1특징과 연관된 키 프레임을 상기 지도에 추가하거나, 또는 상기 제1특징을 이용하여 상기 제2특징과 연관된 키 프레임을 업데이트하는 것을 특징으로 하는, 동적 환경에 강인한 로봇 위치 추정 방법.
The method of claim 9, wherein updating an existing key frame using a key frame associated with the corrected first feature,
Obtaining a key frame associated with a second feature included in the map, corresponding to the corrected first feature, from the map;
The key frame associated with the second characteristic is deleted from the map and the key frame associated with the first characteristic is deleted according to whether the key frame associated with the second characteristic has been changed by more than a preset reference value in relation to the first characteristic. A method for estimating a robot position robust to a dynamic environment, characterized in that adding to the map or updating a key frame associated with the second feature using the first feature.
제9항에서,
지도 업데이트부는, 상기 보정된 제1특징이 상기 지도에 매칭되는지 여부를 판단하며, 상기 매칭되는지 여부는 상기 제1특징과 상기 지도의 제2특징에 따른 포인트 밀도(point denstity)의 변화량 및 특징의 모양 중 적어도 하나를 기반으로 판단하는 것을 특징으로 하는 것을 특징으로 하는,
동적 환경에 강인한 로봇 위치 추정 방법.
In paragraph 9,
The map update unit determines whether the corrected first feature matches the map, and whether the match is determined based on a change in point density and a characteristic according to the first feature and the second feature of the map. Characterized in that the judgment is based on at least one of the shapes,
A method for estimating robot position that is robust to dynamic environments.
제9항 내지 제12항 중 어느 한 항에 기재된 동적 환경에 강인한 로봇 위치 추정 방법을 컴퓨터에서 실행시키기 위하여 컴퓨터로 읽을 수 있는 기록 매체에 저장된 컴퓨터 프로그램.
A computer program stored in a computer-readable recording medium in order to execute the method for estimating a robot position robust to a dynamic environment according to any one of claims 9 to 12 on a computer.
KR1020210073734A 2020-11-12 2021-06-07 Apparatus and method for localization of robot having robustness to dynamic environments KR102556355B1 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
EP21892362.1A EP4245474A1 (en) 2020-11-12 2021-11-12 Robot system
PCT/KR2021/016525 WO2022103195A1 (en) 2020-11-12 2021-11-12 Robot system
US18/316,160 US20240078774A1 (en) 2020-11-12 2023-05-11 Apparartus and method for editing 3d slam data
US18/316,145 US20240085188A1 (en) 2020-11-12 2023-05-11 Apparatus and method for localizing robot having robustness to dynamic environments
US18/316,167 US20240077881A1 (en) 2020-11-12 2023-05-11 Apparatus for detecting and removing dynamic obstacle for robot and operating method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20200151000 2020-11-12
KR1020200151000 2020-11-12

Publications (2)

Publication Number Publication Date
KR20220064883A KR20220064883A (en) 2022-05-19
KR102556355B1 true KR102556355B1 (en) 2023-07-17

Family

ID=81801079

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020210073735A KR20220064884A (en) 2020-11-12 2021-06-07 Apparatus and method for editing 3D SLAM data
KR1020210073734A KR102556355B1 (en) 2020-11-12 2021-06-07 Apparatus and method for localization of robot having robustness to dynamic environments
KR1020210153743A KR102651025B1 (en) 2020-11-12 2021-11-10 Apparatus and for detecting and removing dynamic obstacle of robot and operating method thereof

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020210073735A KR20220064884A (en) 2020-11-12 2021-06-07 Apparatus and method for editing 3D SLAM data

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020210153743A KR102651025B1 (en) 2020-11-12 2021-11-10 Apparatus and for detecting and removing dynamic obstacle of robot and operating method thereof

Country Status (1)

Country Link
KR (3) KR20220064884A (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102517351B1 (en) 2022-08-19 2023-04-03 주식회사 트위니 Transport robot capable of discriminating temporary obstacle and temporary obstacle removal method
CN117804423A (en) * 2022-09-26 2024-04-02 华为云计算技术有限公司 Repositioning method and device
CN115979248B (en) * 2023-03-17 2023-08-18 上海仙工智能科技有限公司 Map updating method and system based on positioning pose as constraint and storage medium

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NZ598500A (en) * 2009-08-31 2013-11-29 Neato Robotics Inc Method and apparatus for simultaneous localization and mapping of mobile robot environment
KR101941852B1 (en) * 2017-04-05 2019-01-24 충북대학교 산학협력단 Keyframe extraction method for graph-slam and apparatus using thereof
KR102296908B1 (en) * 2019-03-19 2021-09-02 한국전자통신연구원 Method for managing a feature map and apparatus for the same
KR102243179B1 (en) * 2019-03-27 2021-04-21 엘지전자 주식회사 Moving robot and control method thereof
WO2020251100A1 (en) * 2019-06-14 2020-12-17 엘지전자 주식회사 Method for updating map in fusion slam and robot implementing same

Also Published As

Publication number Publication date
KR102651025B1 (en) 2024-03-25
KR20220064883A (en) 2022-05-19
KR20220064884A (en) 2022-05-19
KR20220064913A (en) 2022-05-19

Similar Documents

Publication Publication Date Title
KR102556355B1 (en) Apparatus and method for localization of robot having robustness to dynamic environments
WO2021135645A1 (en) Map updating method and device
JP7119910B2 (en) Detection method, detection program and detection device
CN111462207A (en) RGB-D simultaneous positioning and map creation method integrating direct method and feature method
CN110900602B (en) Positioning recovery method and device, robot and storage medium
US11748635B2 (en) Detecting and correcting anomalies in computer-based reasoning systems
CN109974704B (en) Robot capable of calibrating global positioning and local positioning and control method thereof
CN115661299B (en) Method for constructing lane line map, computer device and storage medium
US20240085188A1 (en) Apparatus and method for localizing robot having robustness to dynamic environments
US20160019248A1 (en) Methods for processing within-distance queries
JP7174298B2 (en) Difference detection device, difference detection method and program
KR102488882B1 (en) Memory fault processing method and device, electronic equipment and storage medium
US20180232903A1 (en) Estimation device, estimation method, and storage medium
KR102488813B1 (en) Method and apparatus for generating disparity map using edge image
JP2019124808A (en) Map creation device
US10467505B2 (en) Spatial information delivery system, spatial information delivery method, and non-transitory computer readable medium
KR20230029120A (en) Method and apparatus for estimating location of a moving object and generating map using fusion of point feature and surfel feature
JP2019066293A (en) Video display system
JP7254070B2 (en) Visited destination estimation device and visited destination estimation method
US20210048307A1 (en) Visiting destination prediction device and visiting destination prediction method
WO2020066755A1 (en) Learning model generation device, ground object change determination device, learning model generation method, ground object change determination method, and computer-readable recording medium
CN113190380A (en) Equipment relocation error recovery method and device, computer equipment and storage medium
CN114236552B (en) Repositioning method and repositioning system based on laser radar
US20230046001A1 (en) Map information update method, landmark generation method, and feature point distribution adjustment method
CN109579794B (en) System and method for selecting key frame by iterative closest point method

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant