KR20100137091A - 로봇을 위한 지형 데이터 저장 방법 및 그 장치 - Google Patents

로봇을 위한 지형 데이터 저장 방법 및 그 장치 Download PDF

Info

Publication number
KR20100137091A
KR20100137091A KR1020090055329A KR20090055329A KR20100137091A KR 20100137091 A KR20100137091 A KR 20100137091A KR 1020090055329 A KR1020090055329 A KR 1020090055329A KR 20090055329 A KR20090055329 A KR 20090055329A KR 20100137091 A KR20100137091 A KR 20100137091A
Authority
KR
South Korea
Prior art keywords
terrain data
robot
node
voronoi diagram
edge point
Prior art date
Application number
KR1020090055329A
Other languages
English (en)
Other versions
KR101104225B1 (ko
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 KR1020090055329A priority Critical patent/KR101104225B1/ko
Publication of KR20100137091A publication Critical patent/KR20100137091A/ko
Application granted granted Critical
Publication of KR101104225B1 publication Critical patent/KR101104225B1/ko

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)

Abstract

본 발명의 실시예는 로봇을 위한 지형 데이터 저장 방법 및 그 장치에 관한 것이다.
본 발명의 실시예는, 그리드 지도로부터 에지 포인트를 추출하는 에지 포인트 추출부, 에지 포인트를 토대로 보로노이 다이어그램을 생성하는 보로노이 다이어그램 생성부, 보로노이 다이어그램으로부터 노드를 검색하는 노드 검색부, 및 노드의 주변을 스캔하여 지형 데이터를 생성하고, 생성된 지형 데이터를 저장하는 지형 데이터 생성 저장부를 포함하는 로봇을 위한 지형 데이터 저장 장치를 제공한다.
본 발명의 실시예에 의하면, 로봇의 정상적인 운행이 가능하도록 로봇의 공간 인식이나 위치 인식을 정확하게 하면서도, 외부 지형 파악을 위해 반드시 필요한 지점에 대한 지형 데이터만을 획득하여 효율적인 지형 데이터의 획득을 가능하게 하고, 획득된 지형 데이터를 효율적으로 저장하여 저장 공간을 줄여주는 효과가 있다.
로봇, 지형 데이터

Description

로봇을 위한 지형 데이터 저장 방법 및 그 장치{Method and Apparatus for Storing Map Data for Robot}
본 발명의 실시예는 로봇을 위한 지형 데이터 저장 방법 및 그 장치에 관한 것이다. 더욱 상세하게는, 로봇의 정상적인 운행이 가능하도록 로봇의 공간 인식이나 위치 인식을 정확하게 하면서도, 외부 지형 파악을 위해 반드시 필요한 지점에 대한 지형 데이터만을 획득하여 효율적인 지형 데이터의 획득을 가능하게 하고, 획득된 지형 데이터를 효율적으로 저장하여 저장 공간을 줄여주는 로봇을 위한 지형 데이터 저장 방법 및 그 장치에 관한 것이다.
로봇의 공간 인식 및 위치 인식을 위한 기술로서, 로봇이 모르는 환경 속에서 지도를 생성하고 자신의 위치 인식도 동시에 수행하는 기술에 대한 많은 연구가 이루어지고 있는 상황이다. 이러한 기술을 SLAM(Simultaneous Localization and Mapping)라고 한다.
전술한 바와 같은, 로봇의 공간 인식 및 위치 인식을 위한 종래의 기술은 센서 등을 이용하여 외부 환경에 대한 지형 데이터를 획득하여 저장해두고, 이러한 지형 데이터를 분석하여 주위 공간에 대한 지도를 작성하며, 이를 토대로 로봇의 위치가 지도상에서 어디인지를 추정하게 된다.
하지만, 로봇의 공간 인식 및 위치 인식을 위한 종래의 기술은, 로봇의 공간 인식이나 위치 인식 시, 외부 지형을 파악하여 지도를 생성하기 위해서 획득되는 지형 데이터에는 외부 지형 파악을 위해 반드시 필요한 지점(예: 갈림길이나 문 등과 같이 지형 변화가 심한 지점)에 대한 지형 데이터뿐만 아니라, 획득하지 않아도 되는 불필요한 지점(예: 긴 통로 등과 같이 지형 변화가 심하지 않은 지점)에 대한 지형 데이터까지 포함될 수 있는 지형 데이터 획득의 비효율성이라는 문제점이 있다. 또한, 전술한 종래의 기술은, 로봇의 공간 인식이나 위치 인식을 더욱 정확하게 하기 위해서 획득된 지형 데이터를 저장하는 많은 저장 공간을 필요로 하는 문제점도 있다.
이러한 배경에서, 본 발명의 실시예의 목적은, 로봇의 정상적인 운행이 가능하도록 로봇의 공간 인식이나 위치 인식을 정확하게 하면서도, 외부 지형 파악을 위해 반드시 필요한 지점에 대한 지형 데이터만을 획득하여, 효율적인 지형 데이터의 획득을 가능하게 하는 데 있다.
또한, 본 발명의 실시예의 다른 목적은, 로봇의 공간 인식이나 위치 인식을 위해 획득된 지형 데이터를 효율적으로 저장하여 저장 공간을 줄여주는 데 있다.
본 발명의 일 실시예는, 그리드 지도로부터 에지 포인트를 추출하는 에지 포인트 추출부; 상기 에지 포인트를 토대로 보로노이 다이어그램을 생성하는 보로노이 다이어그램 생성부; 상기 보로노이 다이어그램으로부터 노드를 검색하는 노드 검색부; 및 상기 노드의 주변을 스캔하여 지형 데이터를 생성하고, 상기 생성된 지형 데이터를 저장하는 지형 데이터 생성 저장부를 포함하는 로봇을 위한 지형 데이터 저장 장치를 제공한다.
또한, 본 발명의 일 실시예는, 그리드 지도로부터 에지 포인트를 추출하는 에지 포인트 추출 단계; 상기 에지 포인트를 토대로 보로노이 다이어그램을 생성하는 보로노이 다이어그램 생성 단계; 상기 보로노이 다이어그램으로부터 노드를 검색하는 노드 검색 단계; 및 상기 노드의 주변을 스캔하여 지형 데이터를 생성하고, 상기 생성된 지형 데이터를 저장하는 지형 데이터 생성 저장 단계를 포함하는 로봇을 위한 지형 데이터 저장 방법을 제공한다.
이상에서 설명한 바와 같이 본 발명의 실시예에 의하면, 로봇의 정상적인 운행이 가능하도록 로봇의 공간 인식이나 위치 인식을 정확하게 하면서도, 외부 지형 파악을 위해 반드시 필요한 지점에 대한 지형 데이터만을 획득함으로써, 효율적인 지형 데이터의 획득을 가능하게 하는 효과가 있다.
또한, 본 발명의 실시예에 의하면, 로봇의 공간 인식이나 위치 인식을 위해 획득된 지형 데이터를 효율적으로 저장함으로써, 저장 공간을 줄여주는 효과가 있다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서 는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)에 대한 블록 구성도이다.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)는, 에지 포인트 추출부(110), 보로노이 다이어그램 생성부(120), 노드 검색부(130) 및 지형 데이터 생성 저장부(140) 등을 포함한다.
에지 포인트 추출부(110)는 그리드 지도(Grid Map)로부터 에지 포인트(Edge Point)를 추출한다. 보로노이 다이어그램 생성부(120)는 추출된 에지 포인트를 토대로 보로노이 다이어그램(Voronoi Diagram)을 생성한다. 노드 검색부(130)는 생성된 보로노이 다이어그램으로부터 노드를 검색한다. 지형 데이터 생성 저장부(140) 는 검색된 노드의 주변을 스캔(Scan)하여 지형 데이터를 생성하고, 생성된 지형 데이터를 저장한다.
보로노이 다이어그램을 그리드 지도로부터 바로 생성하기가 어렵기 때문에, 본 발명의 일 실시예에서는, 그리드 지도로부터 에지 포인트를 추출하고, 추출된 에지 포인트를 이용하여 보로노이 다이어그램을 생성한다.
이와 같이, 보로노이 다이어그램을 보다 쉽게 생성하기 위해서, 그리드 지도로부터 에지 포인트를 추출하는 전술한 에지 포인트 추출부(110)는, 에지 포인트 추출의 일 예로서, 미리 저장된 에지 포인트 케이스(Case of Edge Point)의 검사를 통하여 그리드 지도로부터 에지 포인트를 추출할 수 있다.
이렇게 에지 포인트가 추출되고 나면, 보로노이 다이어그램 생성부(120)는, 추출된 에지 포인트를 이용하여 보로노이 다이어그램을 생성하게 되는데, 이와 같이 생성된 보로노이 다이어그램은 상당히 복잡할 수 있다. 만약 생성된 보로노이 다이어그램이 매우 복잡하다면, 이러한 복잡한 보로노이 다이어그램으로부터 필요한 정보나 데이터(예: 지형 데이터)를 얻어내는 것이 어려운 문제점이 있다. 따라서, 여러 조건을 사용하여 가공하면 실제 지형에 맞는 간략화된 보로노이 다이어그램을 생성할 수 있다.
복잡한 보로노이 다이어그램을 가공하여 실제 지형에 맞는 간략화된 보로노이 다이어그램으로 가공하여 생성하는 일 예로서, 보로노이 다이어그램 생성부(120)는, 추출된 에지 포인트를 토대로 복수 개의 점을 생성하고, 점 제거 방식에 따라 생성된 복수 개의 점으로부터 하나 이상의 점을 제거하여 남은 점을 연결 하여 연결 경로를 생성하며, 이렇게 생성된 연결 경로를 포함하는 보로노이 다이어그램을 생성할 수 있다.
위에서 언급한 점 제거 방식은, 그리드 지도보다 큰 점을 제거하는 방식과, 그리드 지도상의 벽 내부에서 발생하는 점을 제거하는 방식과, 중복된 점을 제거하는 방식 등 중에서 하나 이상을 포함할 수 있다.
또한, 위에서 언급한 연결 경로는, 그리드 지도상의 통로 가운데를 지나는 선들을 포함한다. 로봇은 벽 등의 장애물과 부딪치지 않는 경로를 만들기 때문에, 전술한 바와 같이 통로 가운데를 지나는 선들을 포함하는 연결 경로는, 로봇이 이동하는 이동 경로와 유사한 특징이 있다. 또한, 이러한 연결 경로를 통해 지도의 지형을 인식하거나 지형에 대한 정보를 알아낼 수 있다.
보로노이 다이어그램 생성부(120)에 의해 보로노이 다이어그램이 생성된 이후, 노드 검색부(130)는 보로노이 다이어그램에서 세 방향 이상으로 진행 가능한 지점을 노드로서 검색한다.
검색된 노드는 갈림길이나 문 등이 있는 지점과 같이 지형적인 변화가 심한 곳을 의미하며, 전체 지도의 모든 지점들 중에서, 전체 지도의 지형을 가장 잘 반영하는 지점이고, 로봇의 정상적인 운행을 위해 가장 정확하게 인식되어야 하는 지점이기도 하다. 왜냐하면, 지형의 변화가 거의 없는 긴 통로의 경우 지형 데이터가 존재하지 않더라도 온라인 상에서 로봇의 센서를 이용하여 그 방향을 알 수 있어 정상적인 운행이 가능하지만, 갈림길이나 문 등의 지형 변화가 심한 곳, 즉 노드에서는 지형 데이터가 충분하지 않으면 로봇의 정상적인 운행이 불가능할 수 있기 때 문이다.
전술하 바와 같이 보로노이 다이어그램에서 노드가 검색된 이후, 지형 데이터 생성 저장부(140)는, 검색된 노드의 주변에 대한 스캔을 통해 지형 데이터를 생성하여 저장한다.
지형 데이터 생성 저장부(140)는, 지형 데이터의 생성 및 저장의 일 예로서, 검색된 노드의 주변을 스캔하여 주변 장애물을 인식하고, 인식된 주변 장애물에 대한 지리 정보를 획득하며, 획득된 지리 정보를 토대로 지형 데이터를 생성하여 저장한다.
위에서 언급된 주변 장애물에 대한 지리 정보는, 인식된 주변 장애물의 위치 정보와, 인식된 주변 장애물과 로봇 간의 거리 정보를 포함하되, 인식된 주변 장애물은 벽 등과 같은 고정된 장애물이거나 로봇이 이동하면 만날 수 있는 움직이는 물체 등과 같은 움직이는 장애물일 수 있다.
전술한 지형 데이터 생성 저장부(140)에서 생성된 지형 데이터의 경우, 비슷한 정보를 많은 점들로 표시하기 때문에, 데이터 손실과 정보량이 떨어지는 현상이 발생할 수 있다. 따라서, 지형 데이터 생성 저장부(140)는 작은 데이터량으로 많은 정보량을 가지기 위해 간략화된 지형 데이터를 생성할 수도 있다.
일 예로서, 지형 데이터 생성 저장부(140)는, 검색된 노드의 주변을 스캔하여 주변 장애물을 인식하고, 인식된 주변 장애물에 대한 지리 정보를 획득하며, 획득된 지리 정보를 토대로, 인식된 주변 장애물이 있는 지점을 꼭짓점(Vertex)으로 하여, 각 꼭짓점을 연결하는 선분(Line)들을 이어서 폴리라인(Polyline)을 생성하 고, 이렇게 생성된 폴리라인을 폴리라인 간략화(Polyline Simplication) 기법을 통해 간략함으로써, 간략화된 폴리라인을 간략화된 지형 데이터로서 생성하여 저장할 수 있다. 이와 같이, 지형 데이터를 간략하여 생성하여 저장함으로써, 저장해야하는 지형 데이터의 크기도 상당히 줄어들게 된다.
위에서 언급한 "폴리라인 간략화(Polyline Simplication) 기법"은, 각 꼭짓점과 연결된 근방 꼭짓점 중 하나 이상의 근방 꼭짓점을 특정 조건에 따라 제거하여 꼭짓점 수를 줄여나가는 '꼭짓점 제거(Vertext Reduction) 기법'과, 상기 생성된 폴리라인에서의 모든 꼭짓점이 정해진 거리 범위 이내에 존재하도록 상기 생성된 폴리라인을 근사화하는 '폴리라인 근사화 기법' 중 하나 이상을 포함할 수 있다. 꼭짓점 제거 기법은, 한 꼭짓점(Vertex) 근방에 있는 다른 꼭짓점들은 특정한 조건에 의해 제거되는데, 예를 들어, 한 꼭짓점에서 정해진 반경 안에 있는 꼭짓점들을 제거하고, 이러한 과정을 반복하여 꼭짓점을 줄여가는 기법이다. 폴리라인 근사화 기법은, 폴리라인의 양 끝점을 직선으로 연결하여 초기에 근사적으로 간단한 선을 만들고, 그 다음 모든 꼭짓점에 대해 근사화한 근사 선과의 거리를 계산하고 그 값이 정해진 범위 안에 들어오는지를 검사하고, 만약 모든 꼭짓점이 정해진 범위 안에 들어오지 않을 시에는 근사 선에서 제일 크게 벗어난 꼭짓점과 이전의 끝점을 연결하는 새로운 근사 선을 만들어 다시 모든 꼭짓점에 대해 근사 선과의 거리를 계산하는 방식으로 모든 꼭짓점이 정해진 범위 안에 값을 가지도록 근사화하는 기법이다. 이러한 폴리라인 근사화 기법을 DP(Douglas-Peucker) 알고리즘이라고도 한다.
전술한 지형 데이터 생성 저장부(140)는, 생성된 지형 데이터를 노드의 수로 정규화하여 0과 1 사이의 숫자 값으로 저장할 수 있다. 이를 통해, 숫자의 조합만으로 보다 간략화된 지도 표현이 가능해지며, 저장해야하는 지형 데이터의 크기도 상당히 줄어들게 된다.
즉, 전술한 지형 데이터 생성 저장부(140)는 노드의 주변에 대한 지형 데이터를 간략화하여 몇몇 포인트 정보만으로 저장하고, 지형 데이터를 얻는 과정에서 발생하는 움직이는 장애물에 대한 정보를 노드의 수로 정규화하여 그 크기를 0과 1 사이의 숫자 값으로 저장한다.
본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)는, 지형 데이터 생성 저장부(140)에서 생성되어 저장된 지형 데이터를 토대로 지도를 재생성하는 지도 생성부(150)를 더 포함할 수 있다. 지도 생성부(150)에서 재생성된 지도는 최초의 그리드 지도와 유사하다.
이상에서 전술한 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)는, 모르는 환경 속에서 지도를 빌딩하고 자신의 위치 인식을 동시에 수행하는 SLAM(Simultaneous Location and Mapping) 기술이 적용된 로봇이거나, 또는 이러한 로봇 내부에 포함된 장치일 수 있다.
또한, 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)는, 외부 환경에 대한 정보를 획득하기 위한 각종 센서와 연동할 수 있으며, 이러한 센서에 의해 획득된 정보를 분석하여 주위 공간에 대한 지도를 작성하고, 자신의 위치가 지도 상에서 어디인지 추정할 수 있다. 본 발명의 일 실시예에 따른 로 봇을 위한 지형 데이터 저장 장치(100)는, 로봇의 위치를 추정하기 위해, 절대 좌표 정보를 획득하기 위한 GPS 또는 RFID 등과, 단순 입력 정보를 위한 비전이나 레이저 스캐너 등을 포함할 수도 있다.
도 2는 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)가 제공하는 지형 데이터 저장 방법에 대한 흐름도이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 방법은, 그리드 지도로부터 에지 포인트를 추출하는 에지 포인트 추출 단계(S200); 추출된 에지 포인트를 토대로 보로노이 다이어그램을 생성하는 보로노이 다이어그램 생성 단계(S202); 생성된 보로노이 다이어그램으로부터 노드를 검색하는 노드 검색 단계(S204); 및 검색된 노드의 주변을 스캔하여 지형 데이터를 생성하고, 생성된 지형 데이터를 저장하는 지형 데이터 생성 저장 단계(S206) 등을 포함한다.
이상에서는, 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)와, 이로부터 제공되는 로봇을 위한 지형 데이터 저장 방법을 설명하였으며, 아래에서는 따라오는 예시적인 도 3 내지 도 12를 참조하여 로봇을 위한 지형 데이터 저장 방법을 예시적으로 설명한다.
본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 방법을 예시적으 로 설명하기 위해 적용되는 그리드 지도(Grid Map)를 도 3에 예시적으로 나타낸다. 도 3을 참조하면 어두운 부분이 벽 등의 고정된 장애물이 되고, 밝은 부분이 로봇이 이동할 수 있는 통로가 된다.
본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 방법에서는, 우선 도 3에 예시된 그리드 지도로부터 보로노이 다이어그램을 생성하기 위하여 이용할 에지 포인트를 추출한다.
본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)는, 이제 포인트 추출의 일 예로서, 에지 포인트가 발생할 수 있는 여러 가지 경우(즉, 여러 가지의 에지 포인트 케이스)를 미리 저장해두고, 미리 저장해둔 여러 가지의 에지 포인트 케이스를 검사하고, 검사 결과 미리 저장해둔 에지 포인트 케이스와 대응되는 그리드 지도상의 지점을 에지 포인트로서 추출할 수 있다. 도 4에서는, 에지 포인트를 추출하기 위해서 검사되는 에지 포인트 케이스의 8가지 예시를 도시한다. 도 4의 8가지 에지 포인트 케이스에서, 'x'로 표시된 부분이 에지 포인트에 해당한다.
도 5는 에지 포인트 케이스들의 검사를 통해 추출된 에지 포인트를 지도상에 나타낸 도면이다. 도 5에서 추출된 에지 포인트('x'로 표시됨)는 도 3의 그리드 지도에서 밝은 부분과 어두운 부분의 경계가 됨을 확인할 수 있다.
도 5에 도시된 바와 같이 에지 포인트가 추출되고 나면, 추출된 에지 포인트를 이용하여 보로노이 다이어그램을 생성하며, 이렇게 생성된 보로노이 다이어그램을 도 6에 도시한다. 도 6에 도시된 보로노이 다이어그램은 매우 복잡한 다이어그 램인 것으로 알 수 있다. 이처럼 복잡한 보로노이 다이어그램에서는 원하는 정보를 얻는 것이 상당히 힘들기 때문에 여러 조건을 사용하여 복잡한 보로노이 다이어그램을 가공하면 실제 지형에 맞는 간략화된 보로노이 다이어그램을 완성할 수 있다. 예를 들어, 지도의 크기보다 큰 보로노이 점들은 제거하고, 벽 내부에서 발생하는 보로노이 점들도 제거하여 복잡한 보로노이 다이어그램을 간략화할 수 있다. 또한, 각 점들의 연결을 이용하여 중복되는 점들은 모두 제거함과 동시에 그 연결 경로를 알아 낼 수 있다. 이와 같이, 도 6에 도시된 복잡한 보로노이 다이어그램이 간략화된 보로노이 다이그램은 도 7에 예시적으로 도시된다.
도 7을 참조하면, 보로노이 다이어그램은 밝은 부분인 통로의 가운데를 지나는 선(700)들로 이어지는데, 일반적으로, 로봇이 벽이나 장애물을 부딪치지 않는 경로 만들기 때문에, 통로의 가운데를 지나는 선(700)들은 실제 로봇이 이동하는 경로와 유사하다. 이러한 보로노이 다이어그램을 통해 지도상의 지형에 대한 정보를 알아낼 수 있다.
도 7에 도시된 바와 같이 생성된 보로노이 다이어그램을 통해 지형 파악하기 위해 각 지점을 검색하여 검색된 각 지점에서의 지형 데이터를 획득하는데, 모든 지점을 지형 데이터를 획득하는 것은 비효율적일 수 있다. 왜냐하면, 실제로 지형 변화가 거의 없는 통로(도 7에서 밝게 표시된 부분) 등의 경우 지형 데이터가 존재하지 않더라도 온라인 상에서 로봇의 센서를 이용하여 진행 방향을 바로 알 수 있기 때문에, 이러한 지형 변화가 심하지 않은 지점에서까지 지형 데이터를 획득하는 것은 프로세싱 및 저장 데이터량 측면 등에서 비효율적일 수 있다. 따라서, 이러한 지형 변화가 거의 없는 통로 등과 같은 지점에 대해서는 지형 데이터를 획득하지 않고, 갈림길이나 문 등과 같이 지형 변화가 심한 지점(이를 '노드'라 함)에서만 지형 데이터를 획득하는 것이 더욱 효율적이다. 즉, 지형 변화 심한 지점, 즉 노드의 주변 지형을 파악함으로써 전체 지형을 간접적으로 파악할 수 있으며, 이를 통해 충분히 로봇 운행이 정상적으로 이루어질 수 있다. 전술한 노드는, 도 8에 예시적으로 도시된 4가지의 노드 케이스((a), (b), (c) 및 (ㅇ))와 같이, 세 방향 이상으로 로봇의 진행이 가능한 지점으로서, 통로의 모서리 지점, 둘 이상의 통로가 교차하는 지점 등과 같이 지형적 변화가 심한 지점이다.
도 9는, 도 7에 예시적으로 도시된 보로노이 다이어그램으로부터 검색된 23 개의 노드를 예시적으로 나타낸 도면이다. 도 9에 도시된 23개의 노드들(900번 노드 포함)은, 연결 선(700)상에 작은 네모 박스로 표시되어 있다.
도 9와 같이, 찾아진 노드의 주변의 지형 데이터가 지형을 파악하는 데 중요한 정보를 가지기 때문에, 노드 주변을 스캔하여 지형 데이터를 생성하고 저장한다. 이와 같이 검색된 노드의 주변을 스캔하여 얻어진 지형 데이터는 도 10에 예시적으로 도시된다. 도 10은 검색된 노드 중 특정 노드의 주변을 스캔하여 얻어진 지형 데이터를 그래프 형태로 나타낸 도면이다. 도 10의 그래프에서 X축과 Y축은 벽 등의 주변 장애물과의 거리를 의미하고, 그래프 상에 '+' 기호로 표시된 각 점들은 고정된 주변 장애물의 위치를 표시한 것이다. 도 10을 참조하면, X축과 Y축의 거리 단위가 m라면, 로봇이 있는 (0,0) 지점에서 X축 방향과 Y축 방향으로 각각 대략 5m 떨어진 지점에 장애물(1000)이 있으며, 이 장애물(1000)을 기준으로 X축 방향과 Y 축 방향으로 여러 장애물이 인식됨으로 알 수 있다.
도 10을 참조하면, 노드의 주변을 스캔하여 얻어진 지형 데이터의 경우, 비슷한 정보를 많은 점으로 표시하기 때문에, 데이터 손실과 정보량의 효율이 떨어지는 단점이 있다. 따라서, 적은 데이터량을 사용하면서도 더욱 많은 정보량을 가질 수 있도록 스캔되어 얻어진 지형 데이터를 간략화할 필요하여 저장할 필요가 있다. 이렇게 간략화된 지형 데이터를 도 11에 예시적으로 도시한다.
특정 노드에 대하여 간략화된 지형 데이터를 그래프로 나타낸 도 11의 (a)는, 도 10과 비교하여, 각 점(즉, 장애물)들을 선(1100)으로 연결하여 간략화했음을 알 수 있다. 이때, 간략화 기법의 일 예로서, 전술한 폴리라인 간략화 기법이 이용되었다. 도 11의 (b)는 도 11의 (a)에 박스로 표시된 부분을 확대한 그래프이다. 도 11의 (a)에 표시된 선들(간략화된 지형 데이터를 의미함)을 모두 연결하면, 도 12와 같은 지도를 다시 생성할 수 있다.
이상에서 설명한 바와 같이 본 발명의 실시예에 의하면, 로봇의 정상적인 운행이 가능하도록 로봇의 공간 인식이나 위치 인식을 정확하게 하면서도, 외부 지형 파악을 위해 반드시 필요한 지점에 대한 지형 데이터만을 획득하여, 효율적인 지형 데이터의 획득을 가능하게 하는 효과가 있다.
또한, 본 발명의 실시예에 의하면, 로봇의 공간 인식이나 위치 인식을 위해 획득된 지형 데이터를 효율적으로 저장하여 저장 공간을 줄여주는 효과가 있다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.
또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치에 대한 블록 구성도,
도 2는 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 방법에 대한 흐름도,
도 3은 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 방법을 적용하기 위한 그리드 지도를 예시적으로 나타낸 도면,
도 4는 그리드 지도로부터 에지 포인트를 추출하기 위해 검사되는 에지 포인트 케이스를 예시적으로 나타낸 도면,
도 5는 그리드 지도로부터 추출된 에지 포인트를 예시적으로 나타낸 도면,
도 6은 보로노이 다이어그램을 예시적으로 나타낸 도면,
도 7은 간략화된 보로노이 다이어그램을 예시적으로 나타낸 도면,
도 8은 보로노이 다이어그램으로부터 노드를 검색하기 위한 노드 케이스를 예시적으로 나타낸 도면,
도 9는 보로노이 다이어그램으로부터 검색된 노드를 예시적으로 나타낸 도면,
도 10은 노드의 주변을 스캔하여 생성된 지형 데이터를 예시적으로 나타낸 도면,
도 11은 폴리라인 간략화 기법을 통해 생성된 지형 데이터를 예시적으로 나타낸 도면,
도 12는 지형 데이터를 토대로 재생성된 지도를 예시적으로 나타낸 도면이다.
< 도면의 주요 부분에 대한 부호의 설명 >
100: 지형 데이터 저장 장치
110: 에지 포인트 추출부
120: 보로노이 다이어그램 생성부
130: 노드 검색부
140: 지형 데이터 생성 저장부
150: 지도 생성부

Claims (13)

  1. 그리드 지도로부터 에지 포인트를 추출하는 에지 포인트 추출부;
    상기 에지 포인트를 토대로 보로노이 다이어그램을 생성하는 보로노이 다이어그램 생성부;
    상기 보로노이 다이어그램으로부터 노드를 검색하는 노드 검색부; 및
    상기 노드의 주변을 스캔하여 지형 데이터를 생성하고, 상기 생성된 지형 데이터를 저장하는 지형 데이터 생성 저장부
    를 포함하는 로봇을 위한 지형 데이터 저장 장치.
  2. 제 1항에 있어서,
    상기 에지 포인트 추출부는,
    미리 저장된 에지 포인트 케이스의 검사를 통하여 상기 그리드 지도로부터 상기 에지 포인트를 추출하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치.
  3. 제 1항에 있어서,
    상기 보로노이 다이어그램 생성부는,
    상기 추출된 에지 포인트를 토대로 복수 개의 점을 생성하고, 점 제거 방식에 따라 상기 생성된 복수 개의 점으로부터 하나 이상의 점을 제거하여 남은 점을 연결하여 연결 경로를 생성하며, 상기 생성된 연결 경로를 포함하는 상기 보로노이 다이어그램을 생성하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치.
  4. 제 3항에 있어서,
    상기 점 제거 방식은,
    상기 그리드 지도보다 큰 점을 제거하는 방식과, 상기 그리드 지도상의 벽 내부에서 발생하는 점을 제거하는 방식과, 중복된 점을 제거하는 방식 중 하나 이상을 포함하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치.
  5. 제 3항에 있어서,
    상기 생성된 연결 경로는,
    상기 그리드 지도상의 통로 가운데를 지나는 선들을 포함하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치.
  6. 제 1항에 있어서,
    상기 노드 검색부는,
    상기 보로노이 다이어그램에서 세 방향 이상으로 진행 가능한 지점을 상기 노드로서 검색하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치.
  7. 제 1항에 있어서,
    상기 지형 데이터 생성 저장부는,
    상기 노드의 주변을 스캔하여 주변 장애물을 인식하고, 상기 인식된 주변 장애물에 대한 지리 정보를 획득하며, 상기 획득된 지리 정보를 토대로 상기 지형 데이터를 생성하여 저장하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치.
  8. 제 7항에 있어서,
    상기 지리 정보는,
    상기 인식된 주변 장애물의 위치 정보와, 상기 인식된 주변 장애물과 로봇 간의 거리 정보를 포함하되, 상기 인식된 주변 장애물은 고정된 장애물이거나 움직이는 장애물인 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치.
  9. 제 7항에 있어서,
    상기 지형 데이터 생성 저장부는,
    상기 노드의 주변을 스캔하여 주변 장애물을 인식하고, 상기 인식된 주변 장애물에 대한 지리 정보를 획득하며, 상기 획득된 지리 정보를 토대로, 상기 인식된 주변 장애물이 있는 지점을 꼭짓점(Vertex)으로 하여, 각 꼭짓점을 연결하는 선분(Line)들을 이어서 폴리라인(Polyline)을 생성하고, 상기 생성된 폴리라인을 폴리라인 간략화(Polyline Simplication) 기법을 통해 간략화며, 상기 간략화된 폴리라인을 상기 지형 데이터로서 생성하여 저장하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치.
  10. 제 9항에 있어서,
    상기 폴리라인 간략화 기법은,
    각 꼭짓점과 연결된 근방 꼭짓점 중 하나 이상의 근방 꼭짓점을 특정 조건에 따라 제거하여 꼭짓점 수를 줄여나가는 꼭짓점 제거(Vertext Reduction) 기법과, 상기 생성된 폴리라인에서의 모든 꼭짓점이 정해진 거리 범위 이내에 존재하도록 상기 생성된 폴리라인을 근사화하는 폴리라인 근사화 기법 중 하나 이상을 포함하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치.
  11. 제 1항에 있어서,
    상기 지형 데이터 생성 저장부는,
    상기 생성된 지형 데이터를 상기 노드의 수로 정규화하여 0과 1 사이의 숫자 값으로 저장하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치.
  12. 제 1항에 있어서,
    상기 저장된 지형 데이터를 토대로 지도를 재생성하는 지도 생성부를 더 포함하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치.
  13. 그리드 지도로부터 에지 포인트를 추출하는 에지 포인트 추출 단계;
    상기 에지 포인트를 토대로 보로노이 다이어그램을 생성하는 보로노이 다이어그램 생성 단계;
    상기 보로노이 다이어그램으로부터 노드를 검색하는 노드 검색 단계; 및
    상기 노드의 주변을 스캔하여 지형 데이터를 생성하고, 상기 생성된 지형 데이터를 저장하는 지형 데이터 생성 저장 단계
    를 포함하는 로봇을 위한 지형 데이터 저장 방법.
KR1020090055329A 2009-06-22 2009-06-22 로봇을 위한 지형 데이터 저장 방법 및 그 장치 KR101104225B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090055329A KR101104225B1 (ko) 2009-06-22 2009-06-22 로봇을 위한 지형 데이터 저장 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090055329A KR101104225B1 (ko) 2009-06-22 2009-06-22 로봇을 위한 지형 데이터 저장 방법 및 그 장치

Publications (2)

Publication Number Publication Date
KR20100137091A true KR20100137091A (ko) 2010-12-30
KR101104225B1 KR101104225B1 (ko) 2012-01-10

Family

ID=43510900

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090055329A KR101104225B1 (ko) 2009-06-22 2009-06-22 로봇을 위한 지형 데이터 저장 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR101104225B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108664022A (zh) * 2018-04-27 2018-10-16 湘潭大学 一种基于拓扑地图的机器人路径规划方法及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4251545B2 (ja) 2003-07-11 2009-04-08 独立行政法人科学技術振興機構 移動ロボット用経路計画システム
KR100791384B1 (ko) * 2006-07-05 2008-01-07 삼성전자주식회사 특징점을 이용한 영역 구분 방법 및 장치와 이를 이용한이동 청소 로봇

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108664022A (zh) * 2018-04-27 2018-10-16 湘潭大学 一种基于拓扑地图的机器人路径规划方法及系统
CN108664022B (zh) * 2018-04-27 2023-09-05 湘潭大学 一种基于拓扑地图的机器人路径规划方法及系统

Also Published As

Publication number Publication date
KR101104225B1 (ko) 2012-01-10

Similar Documents

Publication Publication Date Title
US11037305B2 (en) Method and apparatus for processing point cloud data
Zermas et al. Fast segmentation of 3d point clouds: A paradigm on lidar data for autonomous vehicle applications
EP3293670A1 (en) Lidar object detection system for automated vehicles
CN111695622B (zh) 变电作业场景的标识模型训练方法、标识方法及装置
KR100915527B1 (ko) 경로 탐색 방법
JP2020087415A (ja) ロボットの地図構築及び位置推定
Kim et al. GP-ICP: Ground plane ICP for mobile robots
KR101789217B1 (ko) 기하학적 특징과 확률론적 기법을 이용한 실내 지도 생성 장치 및 방법
Schulz et al. Robot navigation using human cues: A robot navigation system for symbolic goal-directed exploration
WO2020159638A1 (en) System and method for unsupervised domain adaptation via sliced-wasserstein distance
Loganathan et al. To develop multi-object detection and recognition using improved GP-FRCNN method
KR101104225B1 (ko) 로봇을 위한 지형 데이터 저장 방법 및 그 장치
Tapus et al. A cognitive modeling of space using fingerprints of places for mobile robot navigation
US20210357763A1 (en) Method and device for performing behavior prediction by using explainable self-focused attention
Howard-Jenkins et al. LaLaLoc++: Global floor plan comprehension for layout localisation in unvisited environments
Lutz et al. Probabilistic object recognition and pose estimation by fusing multiple algorithms
Ligon et al. 3D point cloud processing using spin images for object detection
Zhao et al. Computing object-based saliency in urban scenes using laser sensing
Mata et al. Learning visual landmarks for mobile robot navigation
Park et al. Robot navigation using camera by identifying arrow signs
Kumar et al. Comparative study on object detection in visual scenes using deep learning
Hausman et al. Interactive segmentation of textured and textureless objects
Nguyen et al. Contextual labeling 3D point clouds with conditional random fields
Sanmohan et al. Primitive-based action representation and recognition
Muralidharan et al. Comparative Study of Vision Camera-based Vibration Analysis with the Laser Vibrometer Method

Legal Events

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

Payment date: 20141218

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20151222

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20161213

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee