KR100949116B1 - Simultaneous localization and map-building method for moving robot - Google Patents
Simultaneous localization and map-building method for moving robot Download PDFInfo
- Publication number
- KR100949116B1 KR100949116B1 KR1020080017452A KR20080017452A KR100949116B1 KR 100949116 B1 KR100949116 B1 KR 100949116B1 KR 1020080017452 A KR1020080017452 A KR 1020080017452A KR 20080017452 A KR20080017452 A KR 20080017452A KR 100949116 B1 KR100949116 B1 KR 100949116B1
- Authority
- KR
- South Korea
- Prior art keywords
- mobile robot
- feature point
- mapping
- separation space
- omnidirectional image
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 27
- 230000004807 localization Effects 0.000 title description 3
- 238000000926 separation method Methods 0.000 claims abstract description 31
- 238000013507 mapping Methods 0.000 claims abstract description 24
- 239000013598 vector Substances 0.000 claims abstract description 22
- 239000011159 matrix material Substances 0.000 claims description 13
- 238000002360 preparation method Methods 0.000 claims description 2
- 239000003550 marker Substances 0.000 description 7
- 238000001514 detection method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/08—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
- B25J13/088—Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
- B25J19/04—Viewing devices
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B29/00—Maps; Plans; Charts; Diagrams, e.g. route diagram
- G09B29/003—Maps
- G09B29/004—Map manufacture or repair; Tear or ink or water resistant maps; Long-life maps
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S901/00—Robots
- Y10S901/01—Mobile robot
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Human Computer Interaction (AREA)
- Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- General Physics & Mathematics (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Manipulator (AREA)
Abstract
본 발명은 이동 로봇의 위치 인식 및 지도 작성 방법에 관한 것으로, 본 발명의 목적은 압축 확장 칼만 필터(CEKF)를 이용한 이동 로봇의 위치 인식 및 지도 작성 시 중요도에 따른 상태 벡터의 분류를 명확히 함으로써, 정확도를 유지하면서도 고속으로 위치 인식 및 지도 작성이 가능하도록 한 이동 로봇의 위치 인식 및 지도 작성 방법을 제공함에 있다.The present invention relates to a method for location recognition and mapping of a mobile robot, and an object of the present invention is to clarify the classification of state vectors according to importance in the location recognition and mapping of a mobile robot using a compressed extended Kalman filter (CEKF), The present invention provides a method for location recognition and mapping of a mobile robot, which enables location recognition and mapping at high speed while maintaining accuracy.
이를 위해 본 발명에 따른 이동 로봇의 위치 인식 및 지도 작성 방법은 복수의 분리 공간을 주행하는 이동 로봇의 위치 인식 및 지도 작성 방법에 있어서, 상기 분리 공간을 촬영한 전방위 영상으로부터 특징점을 추출하고, 상기 특징점을 이용하여 상기 이동 로봇이 존재하는 분리 공간을 인식하고, 상기 특징점을 상기 이동 로봇이 존재하는 분리 공간의 제 1 그룹 특징점과 상기 이동 로봇이 존재하지 않는 분리 공간의 제 2 그룹 특징점으로 분류하고, 상기 분류된 두 그룹 특징점의 상태 벡터에 대해 압축 확장 칼만 필터(CEKF)를 적용하여 위치 인식 및 지도 작성을 수행한다.To this end, in the method of recognizing and mapping a location of a mobile robot according to the present invention, in the method of recognizing and mapping a location of a mobile robot traveling a plurality of separate spaces, a feature point is extracted from an omnidirectional image photographing the separated space. Recognizing a separation space in which the mobile robot exists using a feature point, classifying the feature point into a first group feature point in the separation space in which the mobile robot exists and a second group feature point in the separation space in which the mobile robot does not exist. In addition, location extension and mapping are performed by applying a compressed extended Kalman filter (CEKF) to the classified state vector of the two group feature points.
Description
본 발명은 이동 로봇의 위치 인식 및 지도 작성 방법에 관한 것으로, 보다 상세하게는 전방위 카메라 영상과 압축 확장 칼만 필터(CEKF)를 이용한 이동 로봇의 위치 인식 및 지도 작성 방법에 관한 것이다.The present invention relates to a method for location recognition and mapping of a mobile robot, and more particularly, to a method for location recognition and mapping of a mobile robot using an omnidirectional camera image and a compressed extended Kalman filter (CEKF).
이동 로봇(Moving robot)은 센서 및 제어기의 발달로 인해 다양한 분야에서 활용되고 있다. 사무실에서의 서비스 로봇, 미술관의 관광 도우미 로봇, 생산 현장에서의 반송 로봇, 정찰 로봇, 화성 탐사 로봇 등이 그 대표적인 예이며, 앞으로 이동 로봇의 활용 영역 및 수요는 폭발적으로 증가할 것으로 예상된다. 이러한 이동 로봇이 주변 환경에 대한 사전 정보 없이 자신의 위치를 인식하고, 환경에 대한 정보를 형성하기 위해서는 위치 인식(Localization)과 지도 작성(Map-building)의 과정이 동시에 유기적으로 수행되어야 한다. 이를 이동 로봇의 동시 위치 인식 및 지도 작성(Simultaneous Localization And Map-building; SLAM)이라 한다.Moving robots are being used in various fields due to the development of sensors and controllers. Service robots in offices, tourist helper robots in art galleries, transport robots in production sites, reconnaissance robots, and Mars exploration robots are typical examples, and the utilization area and demand of mobile robots are expected to explode in the future. In order for the mobile robot to recognize its location without prior information on the surrounding environment and to form information about the environment, the process of localization and map-building should be performed at the same time. This is called Simultaneous Localization And Map-building (SLAM) of mobile robots.
도 1은 이동 로봇의 동시 위치 인식 및 지도 작성(SLAM)의 개념을 설명하기 위한 도면이다. 도 1에 도시한 바와 같이 이동 로봇(1)이 XK-1 위치에서 측정한 표식(Landmark, 2)의 위치 값 ZK-1은 측정 오차를 가진다. 그리고 XK-1 위치에서 주행 입력 UK에 의해 이동 로봇(1)이 XK 위치로 주행 시 오차를 가지며, 이 위치에서 주변 표식(2)의 측정값 ZK 또한 오차를 가지게 된다. 이러한 오차는 점점 누적이 되어 결국은 이동 로봇(1)의 위치와 표식(2)의 위치를 정확히 추정할 수 없게 된다. 이와 같은 현상을 방지하기 위해 제안된 SLAM은 주변 환경에 대한 사전 정보가 없는 경우 이동 로봇(1)의 위치(좌표)와 표식(2)의 위치를 확률적 방법을 이용하여 동시에 보정하는 기술이다. 1 is a view for explaining the concept of simultaneous position recognition and map (SLAM) of a mobile robot. As shown in FIG. 1, the position value Z K-1 of the mark (Landmark) 2 measured by the
SLAM은 이동 로봇(1)의 주행 입력(예: 주행 속도, 주행 방향 등)을 이용하여 이동 로봇(1)의 위치를 추정하는 단계(Motion Prediction)와 센서 측정 값(예: 초음파 센서나 레이저 센서의 측정 값, 카메라의 영상 등)을 이용하여 이동 로봇(1)과 표식(2)의 위치를 보정하는 단계(Measurement Update)로 이루어진다. 이동 로봇(1)의 속도 입력과 센서의 측정 값은 오차를 가지기 때문에 확률적 접근을 이용하여 위치를 추정하게 된다. 이러한 확률적 접근 방법으로 가장 많이 이용되는 것은 확장 칼만 필터(Extended Kalman Filter; EKF)이다. SLAM estimates the position of the
다만, EKF의 경우 이동 로봇(1)의 위치와 표식(2)의 위치로 이루어진 상태 벡터(State vector)의 크기가 커지면 계산량이 급격히 늘어나 실시간 계산이 불가능해지는 단점이 있다. However, in the case of the EKF, when the size of the state vector consisting of the position of the
이러한 단점을 보완하기 위해 제안된 방법이 압축 확장 칼만 필 터(Compressed Extended Kalman Filter; CEKF)이다. CEKF는 상태 벡터(X)를 두 그룹(XA, XB)으로 분류하고, 중요한 그룹(XA)과 중요도가 낮은 그룹(XB)에 대해 차등적으로 EKF를 적용하여 EKF의 정확도를 유지하면서 계산량을 줄이는 방법이다. 즉, 계산을 필요로 하는 상태(state)의 갯수를 줄인 후 EKF를 적용하는 방식이다. 이 CEKF는 중요한 그룹(XA)에 대해서는 매 주기마다 EKF를 적용하여 XA와 XA의 오차 공분산 행렬(Paa)을 갱신하고, 부가 행렬(Auxiliary Matrix)을 계산한다. 반면, 중요도가 낮은 그룹(XB)에 대해서는 일정 주기마다 앞서 계산된 부가 행렬을 이용하여 XB 및 XB의 오차 공분산 행렬(Pab, Pbb)을 계산한다. 이로써, 전체적인 상태 벡터(X) 및 오차 공분산 행렬(P)의 갱신이 이루어진다.The proposed method to compensate for this drawback is the Compressed Extended Kalman Filter (CEKF). CEKF classifies the state vector (X) into two groups (X A and X B ), and maintains the accuracy of the EKF by applying the EKF differentially to the important group (X A ) and the less important group (X B ). While reducing the amount of computation. In other words, EKF is applied after reducing the number of states that require calculation. The CEKF updates the error covariance matrix (P aa ) of X A and X A by applying EKF for each important group (X A ) and calculates an auxiliary matrix. On the other hand, for a group of low importance (X B ), error covariance matrices (P ab , P bb ) of X B and X B are calculated using the additional matrix previously calculated at regular intervals. In this way, the overall state vector X and the error covariance matrix P are updated.
도 2는 CEKF를 이용한 SLAM의 개념을 설명하기 위한 도면이다. CEKF를 이용한 SLAM 수행 시 상태 벡터(X)를 중요도에 따라 두 그룹(XA, XB)으로 분류하는 방식에는 여러가지가 있을 수 있으나 도 2에서는 이동 로봇(1)이 일정 영역(공간)에서 오랜 시간 작업을 수행할 때 표식(2)을 두 그룹으로 분류하여 계산량을 줄이는 방식을 예시하고 있다. 즉, 이동 로봇(1)이 위치하는 영역(도 2에서 점선으로 도시한 A 영역)에 존재하여 반복적으로 측정되는 표식(2)은 중요 그룹(XA)으로 분류하고, 그 영역 밖에 존재하여 측정의 빈도수가 적은 표식(2)은 중요도가 낮은 그룹(XB)으로 분류한다. 이렇게 분류된 상태 벡터 XA에 대해서는 매 주기마다 EKF를 적용하여 갱신을 수행하고, XB에 대해서는 이동 로봇(1)이 그 일정 영역(A 영역)을 벗어날 때 갱신을 수행함으로써 계산량을 줄일 수 있게 된다.2 is a view for explaining the concept of SLAM using CEKF. When performing SLAM using CEKF, there can be various ways to classify the state vector (X) into two groups (X A and X B ) according to importance, but in FIG. When performing a time task, the marker (2) is divided into two groups to illustrate how to reduce the amount of computation. That is, the
상술한 CEKF가 효과적으로 SLAM에 적용되기 위해서는 이동 로봇(1)이 주행하는 주변 환경에 존재하는 표식(2)에 대한 분류(XA, XB)가 적절히 수행되어야 한다. 그렇지 않을 경우 위치 인식 및 지도 작성이 부정확해지는 문제점이 있다.In order for the above-mentioned CEKF to be effectively applied to the SLAM, the classifications X A and X B for the
따라서, 본 발명은 전술한 문제점을 해결하기 위한 것으로, 본 발명의 목적은 압축 확장 칼만 필터(CEKF)를 이용한 이동 로봇의 위치 인식 및 지도 작성 시 중요도에 따른 상태 벡터의 분류를 명확히 함으로써, 정확도를 유지하면서도 고속으로 위치 인식 및 지도 작성이 가능하도록 한 이동 로봇의 위치 인식 및 지도 작성 방법을 제공함에 있다.Accordingly, an object of the present invention is to solve the above-described problems, and an object of the present invention is to clarify the classification of state vectors according to importance in position recognition and map generation of a mobile robot using a compressed extended Kalman filter (CEKF), thereby improving accuracy. The present invention provides a method for location recognition and mapping of a mobile robot, which enables location recognition and mapping at high speed while maintaining it.
상기와 같은 목적을 달성하기 위한 본 발명에 따른 이동 로봇의 위치 인식 및 지도 작성 방법은 복수의 분리 공간을 주행하는 이동 로봇의 위치 인식 및 지도 작성 방법에 있어서, 상기 분리 공간을 촬영한 전방위 영상으로부터 특징점을 추출하고, 상기 특징점을 이용하여 상기 이동 로봇이 존재하는 분리 공간을 인식하고, 상기 특징점을 상기 이동 로봇이 존재하는 분리 공간의 제 1 그룹 특징점과 상기 이동 로봇이 존재하지 않는 분리 공간의 제 2 그룹 특징점으로 분류하고, 상기 분류된 두 그룹 특징점의 상태 벡터에 대해 압축 확장 칼만 필터(CEKF)를 적용하여 위치 인식 및 지도 작성을 수행한다.Location recognition and mapping method of the mobile robot according to the present invention for achieving the above object in the location recognition and mapping method of the mobile robot traveling a plurality of separation space, from the omnidirectional image of the separation space Extract a feature point, recognize the separation space in which the mobile robot exists using the feature point, and determine the feature point in the first group of the separation space where the mobile robot exists and in the separation space where the mobile robot does not exist. Classified into two group feature points, location extension and mapping are performed by applying a compressed extended Kalman filter (CEKF) to the state vectors of the classified two group feature points.
또한 상기 전방위 영상으로부터 추출된 특징점과 각 분리 공간에 대해 사전(事前) 촬영한 기준 전방위 영상의 특징점 매칭을 통해 상기 이동 로봇이 존재하는 분리 공간을 인식한다.Also, the separation space in which the mobile robot exists is recognized by matching the feature points extracted from the omnidirectional image with the feature point matching of the reference omnidirectional image previously photographed for each separation space.
또한 상기 전방위 영상으로부터 추출된 특징점과 매칭되는 특징점의 수가 가 장 많은 기준 전방위 영상의 해당 분리 공간을 상기 이동 로봇이 존재하는 분리 공간으로 인식한다.In addition, the corresponding separation space of the reference omnidirectional image having the largest number of feature points matched with the feature points extracted from the omnidirectional image is recognized as a separation space in which the mobile robot exists.
또한 상기 제 1 그룹 특징점의 상태 벡터는 매 주기마다 확장 칼만 필터(EKF)를 적용하여 갱신한다.In addition, the state vector of the first group feature point is updated by applying an extended Kalman filter (EKF) every cycle.
또한 상기 제 2 그룹 특징점의 상태 벡터는 상기 이동 로봇이 존재하는 분리 공간의 변화가 있을 경우에 상기 제 1 그룹 특징점의 상태 벡터 갱신 시 계산된 부가 행렬을 이용하여 갱신한다.The state vector of the second group feature point is updated using an additional matrix calculated when the state vector of the first group feature point is updated when there is a change in the separation space in which the mobile robot exists.
본 발명에 의할 경우 압축 확장 칼만 필터(CEKF)를 이용한 이동 로봇의 위치 인식 및 지도 작성 시 중요도에 따른 상태 벡터의 분류를 명확히 함으로써, 정확도를 유지하면서도 고속으로 위치 인식 및 지도 작성이 가능한 효과가 있다.According to the present invention, it is possible to clarify the classification of the state vector according to the importance in the position recognition and map preparation of the mobile robot using the Compression Extended Kalman Filter (CEKF), so that the position recognition and mapping can be performed at high speed while maintaining the accuracy. have.
이하에서는 도면을 참조하여 본 발명의 일실시예를 상세하게 설명하도록 한다. Hereinafter, an embodiment of the present invention will be described in detail with reference to the accompanying drawings.
도 3에 도시한 바와 같이 본 발명이 적용되는 이동 로봇(10)은 로봇 본체(12)와 로봇 본체(12)에 장착된 전방위 카메라(11)를 포함한다. 전방위 카메라(11)는 도 4에 도시한 바와 같이 전방위 렌즈(11a)와 CCD 소자(11b)로 구성되며, 전방위 카메라(11)의 전면부에는 곡면 거울이 장착되어 전방위 카메라(11) 주변의 360° 영상을 얻을 수 있다. 즉, 임의의 공간 상의 점 Xmir는 곡면 거울 면의 점 xmir 에서 반사되어 CCD 소자(11b)에 결상되고 최종적으로는 영상 면의 점 ximg로 나타나는데, 전술한 Xmir는 전방위에 분포하므로 전방위 카메라(11)가 360° 영상을 획득할 수 있는 것이다. As shown in FIG. 3, the
도 5에 도시한 바와 같이 본 발명이 적용되는 이동 로봇(10)은 도 3 또는 도 4에 도시한 구성요소 외에 주행 속도 검출부(13), 주행 방향 검출부(14), 제어부(15), 메모리(16)를 더 포함한다.As shown in FIG. 5, the
주행 속도 검출부(13)는 이동 로봇(10)의 주행 속도를 검출하기 위한 것으로, 이동 로봇(10)의 하부에 이동 로봇(10)의 주행을 위해 설치된 양측 바퀴(LW, RW)에 부착되어 각 바퀴의 속도(VL, VR)를 검출하고, 그 검출 정보를 제어부(15)에 제공한다.The traveling speed detector 13 detects the traveling speed of the
주행 방향 검출부(14)는 이동 로봇(10)의 회전 각도를 검출하기 위한 것으로, 이동 로봇(10)의 주행 방향 변경 시 기존의 주행 방향에 대하여 이동 로봇(10)이 회전한 각도를 검출하기 위하여 자이로스코프(gyroscope) 센서 등이 이용될 수 있다.The driving direction detector 14 detects the rotation angle of the
제어부(15)는 주행 속도 검출부(13) 및 주행 방향 검출부(14)로부터 검출 정보를 입력 받아 이동 로봇(10)의 위치(좌표)를 추정하고, 전방위 카메라(11)를 통해 촬영된 전방위 영상을 이용하여 이동 로봇(10)과 특징점의 위치를 보정한다.The
또한 제어부(15)는 이동 로봇(10)이 확실하게 분리된 복수의 공간으로 이루어진 환경을 주행 시 전방위 카메라(11)를 통해 촬영한 전방위 영상을 이용하여 현 재 이동 로봇(10)이 존재하는 분리 공간을 인식한다. 이후 현재 이동 로봇(10)이 존재하는 분리 공간의 특징점을 중요 그룹(XA)으로, 그 외 분리 공간의 특징점을 중요도가 낮은 그룹(XB)으로 분류하고, 중요한 그룹(XA)과 중요도가 낮은 그룹(XB)에 대해 차등적으로 EKF를 적용하여 이동 로봇(10)의 위치 인식 및 지도 작성을 수행한다.In addition, the
메모리(16)는 각 분리 공간(예: 방, 거실 등)의 중심에서 전방위 카메라(11)를 이용해 사전(事前)에 촬영한 전방위 영상(기준 전방위 영상)을 저장한다.The
본 발명에서는 기준 전방위 영상의 저장을 위한 메모리(16)를 별도로 마련하는 것을 예로 들어 설명하였으나, 본 발명은 이에 한정되지 않고 이러한 기준 전방위 영상을 제어부(15)의 내부 메모리에 저장할 수도 있다.In the present invention, a
이하에서는 도 6 내지 도 8을 참조하여 본 발명의 일실시예에 따른 이동 로봇의 위치 인식 및 지도 작성 방법을 설명하도록 한다.Hereinafter, a method of recognizing a location and creating a map of a mobile robot according to an embodiment of the present invention will be described with reference to FIGS. 6 to 8.
본 발명은 벽이나 칸막이 등의 설치로 인해 확실하게 분리된 복수의 공간으로 이루어진 환경(예: 복수의 방과 거실 등으로 이루어진 가정 환경 등)에서 CEKF를 이용하여 SLAM을 수행하는 방법에 관한 것이다. The present invention relates to a method of performing a SLAM using a CEKF in an environment consisting of a plurality of spaces (eg, a home environment consisting of a plurality of rooms and a living room) reliably separated by the installation of walls or partitions.
먼저, 이동 로봇(10)이 공간 상의 임의의 위치에 놓이면 이동 로봇(10)의 전방위 카메라(11)는 전방위 영상을 촬영한다(110). 전방위 카메라(11)는 SLAM이 수행되는 동안 주기적으로 공간의 전방위 영상을 촬영하여 실시간으로 제어부(15)에 제공한다. 이후 제어부(15)는 전방위 카메라(11)로부터 촬영된 전방위 영상을 입력 받아 특징점(feature, 앞서 설명한 표식(Landmark)이 영상에서 표현될 때에는 특징점이라 함)을 추출한다(120).First, when the
본 발명에 따른 CEKF를 이용한 SLAM을 수행하기 위해 스테레오 전방위 카메라(Stereo omni-camera)와 싱글 전방위 카메라(Single omni-camera)가 사용된다. 스테레오 전방위 카메라의 경우 위치가 바로 나오기 때문에 특징점의 3차원 좌표를 바로 구할 수 있으며, 싱글 전방위 카메라의 경우 Calibration Target 또는 지정된 일정 경로를 이동하여 특징점 초기화를 수행한 후 각 특징점의 3차원 좌표를 구할 수 있다.A stereo omni-camera and a single omni-camera are used to perform SLAM using the CEKF according to the present invention. In the case of a stereo omnidirectional camera, the position is immediately available, so the three-dimensional coordinates of the feature point can be directly obtained.In the case of a single omnidirectional camera, the three-dimensional coordinates of each feature point can be obtained after initializing the feature point by moving the calibration target or a predetermined path. have.
다음으로 제어부(15)는 내부 메모리(미도시) 또는 별도의 메모리(16)에 기저장되어 있는 각 분리 공간의 전방위 영상(이하 '기준 전방위 영상'이라 한다)을 읽어 들인다. 기준 전방위 영상은 도 7에 도시한 바와 같이 각 분리 공간(방 1~3, 거실 등)의 중심에서 전방위 카메라(11)를 이용해 사전(事前)에 촬영한 전방위 영상으로, 각 분리 공간의 전체 영상(360° 영상)을 획득할 수 있다. Next, the
이후 제어부(15)는 도 8에 도시한 바와 같이 기준 전방위 영상과 단계 110에서 이동 로봇(10)이 획득한 전방위 영상 간의 특징점 매칭(matching)을 통해 현재 이동 로봇(10)이 존재(위치)하는 분리 공간을 인식한다(130). 이 때, 제어부(15)는 이동 로봇(10)이 획득한 전방위 영상의 특징점과 매칭되는 특징점의 수가 가장 많은 기준 전방위 영상의 해당 분리 공간을 현재 이동 로봇(10)이 존재하는 공간으로 인식하게 된다. 예를 들어 이동 로봇(10)이 획득한 전방위 영상에서 추출된 전체 특징점이 100개라고 가정했을 때, 80개의 특징점은 거실의 기준 전방위 영 상 특징점과, 15개의 특징점은 방 1의 기준 전방위 영상 특징점과, 5개의 특징점은 방 3의 기준 전방위 영상 특징점과 매칭된다고 한다면 제어부(15)는 가장 많은 매칭 특징점 수를 가지는 거실을 현재 이동 로봇(10)이 존재하는 공간으로 인식하게 되는 것이다. 여기서, 특징점 매칭 시 기준 영상과 이동 로봇(10)의 획득 영상 모두 전방위 영상을 이용하므로 이동 로봇(10)이 위치하는 분리 공간을 보다 정확하게 인식할 수 있는 장점이 있다. Subsequently, as shown in FIG. 8, the
다음으로 제어부(15)는 이동 로봇(10)이 획득한 전방위 영상에서 추출된 특징점 중에 현재 이동 로봇(10)이 위치하는 분리 공간의 특징점을 중요 그룹(XA)으로 분류하고, 그 외 분리 공간(이동 로봇(10)이 존재하지 않는 분리 공간)의 특징점을 중요도가 낮은 그룹(XB)으로 분류한다(140).Next, the
이후 제어부(15)는 상태 벡터 XA(좀 더 정확히 표현하면 이동 로봇(10)의 위치(좌표)와 현재 이동 로봇(10)이 위치하는 분리 공간의 특징점 위치로 이루어진 벡터)에 대해 매 주기(전방위 영상 촬영 주기)마다 EKF를 적용하여 XA 및 XA의 오차 공분산 행렬(Paa)을 갱신하고(150), 부가 행렬(Auxiliary Matrix)을 계산한다(160).Thereafter, the
다음으로 이동 로봇(10)의 전방위 카메라(11)는 다시 공간의 전방위 영상을 촬영한다(170). 이후 제어부(15)는 전방위 카메라(11)로부터 촬영된 전방위 영상을 입력 받아 특징점을 추출하고(180), 기저장되어 있는 기준 전방위 영상과 단계 170에서 이동 로봇(10)이 획득한 전방위 영상 간의 특징점 매칭을 수행한다(190).Next, the
이후 제어부(15)는 단계 170 내지 190에서의 전방위 카메라(11)로부터 주기적으로 제공되는 전방위 영상의 특징점 추출 및 특징점 매칭을 통해 이동 로봇(10)이 현재의 존재 공간을 벗어나는가 즉, 이동 로봇(10)이 위치하는 공간의 변화(예: 거실→방 1)가 있는가 여부를 판단한다(200). 예를 들어, 현재 이동 로봇(10)이 위치하는 공간이 거실이고 단계 180에서 이동 로봇(10)이 획득한 전방위 영상으로부터 추출된 전체 특징점이 100개라고 가정했을 때, 75개의 특징점은 방 1의 기준 전방위 영상 특징점과, 15개의 특징점은 방 3의 기준 전방위 영상 특징점과, 10개의 특징점은 거실의 기준 전방위 영상 특징점과 매칭된다고 한다면 제어부(15)는 현재 이동 로봇(10)이 위치하는 공간이 거실에서 방 1로 변화되었다고 판단하게 된다.Thereafter, the
단계 200의 판단결과 이동 로봇(10)이 현재의 존재 공간을 벗어나지 않은 것으로 판단되면 즉, 이동 로봇(10)이 위치하는 공간의 변화가 없으면(단계 200에서의 '아니오') 제어부(15)는 단계 150으로 돌아가 계속해서 상태 벡터 XA에 대해 EKF를 적용하여 XA 및 XA의 오차 공분산 행렬(Paa)을 갱신하고, 부가 행렬을 계산한다.If it is determined in
반면 단계 200의 판단결과 이동 로봇(10)이 현재의 존재 공간을 벗어난 것으로 판단되면 즉, 이동 로봇(10)이 위치하는 공간의 변화가 있으면(단계 200에서의 '예') 제어부(15)는 이동 로봇(10)이 특정 공간(예: 거실)에 존재하고 있는 동안 단계 160을 통해 계산된 부가 행렬을 이용하여 XB(현재 이동 로봇(10)이 존재하지 않는 분리 공간의 특징점 위치로 이루어진 벡터) 및 XB의 오차 공분산 행렬(Pab, Pbb)을 계산(갱신)한다(210). 이로써, 전체적인 상태 벡터(X) 및 오차 공분산 행렬(P) 의 갱신이 이루어진다. 이후 다시 단계 110으로 돌아가 계속해서 전술한 과정을 반복한다.On the other hand, if it is determined in
본 발명에 의할 경우 이동 로봇(10)이 가정 환경과 같이 확실하게 분리된 복수의 공간으로 이루어진 환경을 주행 시 전방위 영상을 이용하여 현재 이동 로봇(10)이 존재하는 공간을 인식하고, 이동 로봇(10)이 존재하는 공간의 특징점만을 이용하여 SLAM을 수행한 뒤, 이동 로봇(10)이 그 공간에서 벗어나면 전체 환경에 대한 SLAM을 수행함으로써 SLAM 수행 시 소요되는 시간을 줄일 수 있게 된다(고속으로 위치 인식 및 지도 작성 가능).According to the present invention, the
도 1은 이동 로봇의 동시 위치 인식 및 지도 작성(SLAM)의 개념을 설명하기 위한 도면이다.1 is a view for explaining the concept of simultaneous position recognition and map (SLAM) of a mobile robot.
도 2는 압축 확장 칼만 필터(CEKF)를 이용한 이동 로봇의 동시 위치 인식 및 지도 작성(SLAM)의 개념을 설명하기 위한 도면이다.FIG. 2 is a view for explaining the concept of simultaneous position recognition and mapping (SLAM) of a mobile robot using a compressed extended Kalman filter (CEKF).
도 3은 본 발명이 적용되는 이동 로봇의 외형도이다.3 is an external view of a mobile robot to which the present invention is applied.
도 4는 도 3의 이동 로봇에 설치된 전방위 카메라의 단면도이다.4 is a cross-sectional view of the omnidirectional camera installed in the mobile robot of FIG.
도 5는 본 발명이 적용되는 이동 로봇의 제어 블록도이다.5 is a control block diagram of a mobile robot to which the present invention is applied.
도 6은 본 발명의 일실시예에 따른 이동 로봇의 위치 인식 및 지도 작성 방법을 도시한 흐름도이다.6 is a flowchart illustrating a method for recognizing a location and creating a map of a mobile robot according to an embodiment of the present invention.
도 7은 도 4의 전방위 카메라를 이용해 사전 획득한 각 분리된 공간의 전방위 영상(기준 전방위 영상)을 예시한 도면이다.FIG. 7 is a diagram illustrating an omnidirectional image (reference omnidirectional image) of each separated space previously acquired using the omnidirectional camera of FIG. 4.
도 8은 도 7의 기준 전방위 영상과 이동 로봇이 획득한 전방위 영상 간의 특징점 매칭을 설명하기 위한 도면이다.FIG. 8 is a diagram for describing feature point matching between a reference omnidirectional image of FIG. 7 and an omnidirectional image obtained by a mobile robot.
*도면의 주요부분에 대한 부호 설명** Description of symbols on the main parts of the drawings *
10 : 이동 로봇 11 : 전방위 카메라10: mobile robot 11: omnidirectional camera
13 : 주행 속도 검출부 14 : 주행 방향 검출부13 traveling speed detection unit 14 running direction detection unit
15 : 제어부 16 : 메모리15
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080017452A KR100949116B1 (en) | 2008-02-26 | 2008-02-26 | Simultaneous localization and map-building method for moving robot |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080017452A KR100949116B1 (en) | 2008-02-26 | 2008-02-26 | Simultaneous localization and map-building method for moving robot |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090092126A KR20090092126A (en) | 2009-08-31 |
KR100949116B1 true KR100949116B1 (en) | 2010-03-23 |
Family
ID=41209294
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080017452A KR100949116B1 (en) | 2008-02-26 | 2008-02-26 | Simultaneous localization and map-building method for moving robot |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100949116B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101782057B1 (en) * | 2010-05-03 | 2017-09-26 | 삼성전자주식회사 | Apparatus for building map and method thereof |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101686169B1 (en) | 2010-02-09 | 2016-12-14 | 삼성전자주식회사 | Apparatus and Method for generating 3D map based on the octree map |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005326944A (en) | 2004-05-12 | 2005-11-24 | Hitachi Ltd | Device and method for generating map image by laser measurement |
KR20070120780A (en) * | 2006-06-20 | 2007-12-26 | 삼성전자주식회사 | Method of building gridmap in mobile robot and method of cell decomposition using it |
-
2008
- 2008-02-26 KR KR1020080017452A patent/KR100949116B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005326944A (en) | 2004-05-12 | 2005-11-24 | Hitachi Ltd | Device and method for generating map image by laser measurement |
KR20070120780A (en) * | 2006-06-20 | 2007-12-26 | 삼성전자주식회사 | Method of building gridmap in mobile robot and method of cell decomposition using it |
Non-Patent Citations (2)
Title |
---|
H. Jacky Chang et al., "A computational efficient SLAM algorithm based on logarithmic-map partitioning", Proc. of 2004 IEEE/RSJ Int'l Conference on Intelligent Robots and Systems, 09.2004, pp1041-46 |
윤석준 외4명, "Compressed Extended Kalman 필터를 이용한 야외 환경에서 주행 로봇의 위치 추정 및 지도 작성", 제어,자동화,시스템공학 논문지 제12권 제6호 2006.6, pp 585-593 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101782057B1 (en) * | 2010-05-03 | 2017-09-26 | 삼성전자주식회사 | Apparatus for building map and method thereof |
Also Published As
Publication number | Publication date |
---|---|
KR20090092126A (en) | 2009-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110411441B (en) | System and method for multi-modal mapping and localization | |
KR101538775B1 (en) | Apparatus and method for localization using forward images | |
US9946264B2 (en) | Autonomous navigation using visual odometry | |
CN109211241B (en) | Unmanned aerial vehicle autonomous positioning method based on visual SLAM | |
CN112197770B (en) | Robot positioning method and positioning device thereof | |
JP5588812B2 (en) | Image processing apparatus and imaging apparatus using the same | |
EP2460629B1 (en) | Control method for localization and navigation of mobile robot and mobile robot using same | |
KR101572851B1 (en) | Method for building map of mobile platform in dynamic environment | |
US9402151B2 (en) | Method for recognizing position of mobile robot by using features of arbitrary shapes on ceiling | |
US8849036B2 (en) | Map generating and updating method for mobile robot position recognition | |
KR101782057B1 (en) | Apparatus for building map and method thereof | |
CN110807350A (en) | System and method for visual SLAM for scan matching | |
KR102226846B1 (en) | System for Positioning Hybrid Indoor Localization Using Inertia Measurement Unit Sensor and Camera | |
WO2018159177A1 (en) | Vehicle automated parking system and method | |
US20110205338A1 (en) | Apparatus for estimating position of mobile robot and method thereof | |
KR101775114B1 (en) | System and method for simultaneous localization and mapping of mobile robot | |
KR20110011424A (en) | Method for recognizing position and controlling movement of a mobile robot, and the mobile robot using the same | |
JP2001331787A (en) | Road shape estimating device | |
KR20100005488A (en) | Apparatus and method for building map for mobile robot | |
KR20200043006A (en) | Method and device to estimate position | |
KR101167627B1 (en) | Apparatus and Method for Double-Updating in simultaneous localization and mapping for a mobile robot | |
CN111989631A (en) | Self-position estimation method | |
KR100949116B1 (en) | Simultaneous localization and map-building method for moving robot | |
CN112731503A (en) | Pose estimation method and system based on front-end tight coupling | |
KR20150079098A (en) | Filtering Methods of spatiotemporal 3D Vector for Robust visual odometry |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130221 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20140221 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20150212 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20160219 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20170221 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20180220 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20190221 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20200225 Year of fee payment: 11 |