KR101104225B1 - Method and Apparatus for Storing Map Data for Robot - Google Patents

Method and Apparatus for Storing Map Data for Robot Download PDF

Info

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

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

Abstract

본 발명의 실시예는 로봇을 위한 지형 데이터 저장 방법 및 그 장치에 관한 것이다. Embodiments of the present invention relate to a method and apparatus for storing terrain data for a robot.

본 발명의 실시예는, 그리드 지도로부터 에지 포인트를 추출하는 에지 포인트 추출부, 에지 포인트를 토대로 보로노이 다이어그램을 생성하는 보로노이 다이어그램 생성부, 보로노이 다이어그램으로부터 노드를 검색하는 노드 검색부, 및 노드의 주변을 스캔하여 지형 데이터를 생성하고, 생성된 지형 데이터를 저장하는 지형 데이터 생성 저장부를 포함하는 로봇을 위한 지형 데이터 저장 장치를 제공한다. An embodiment of the present invention, the edge point extraction unit for extracting the edge point from the grid map, the Voronoi diagram generator for generating a Voronoi diagram based on the edge point, a node search unit for searching for a node from the Voronoi diagram, and the node The present invention provides a terrain data storage device for a robot including a terrain data generation storage unit for generating terrain data by scanning the periphery of the space and storing the generated terrain data.

본 발명의 실시예에 의하면, 로봇의 정상적인 운행이 가능하도록 로봇의 공간 인식이나 위치 인식을 정확하게 하면서도, 외부 지형 파악을 위해 반드시 필요한 지점에 대한 지형 데이터만을 획득하여 효율적인 지형 데이터의 획득을 가능하게 하고, 획득된 지형 데이터를 효율적으로 저장하여 저장 공간을 줄여주는 효과가 있다. According to an embodiment of the present invention, while allowing the robot to correctly recognize the space or position of the robot so as to allow normal operation of the robot, it is possible to efficiently acquire the terrain data by acquiring only the terrain data for a point necessary for the external terrain. As a result, it is possible to reduce the storage space by efficiently storing the acquired terrain data.

로봇, 지형 데이터 Robot, terrain data

Description

로봇을 위한 지형 데이터 저장 방법 및 그 장치{Method and Apparatus for Storing Map Data for Robot}Method and apparatus for storing terrain data for robots {Method and Apparatus for Storing Map Data for Robot}

본 발명의 실시예는 로봇을 위한 지형 데이터 저장 방법 및 그 장치에 관한 것이다. 더욱 상세하게는, 로봇의 정상적인 운행이 가능하도록 로봇의 공간 인식이나 위치 인식을 정확하게 하면서도, 외부 지형 파악을 위해 반드시 필요한 지점에 대한 지형 데이터만을 획득하여 효율적인 지형 데이터의 획득을 가능하게 하고, 획득된 지형 데이터를 효율적으로 저장하여 저장 공간을 줄여주는 로봇을 위한 지형 데이터 저장 방법 및 그 장치에 관한 것이다.Embodiments of the present invention relate to a method and apparatus for storing terrain data for a robot. More specifically, while precisely recognizing the space or position of the robot to enable the normal operation of the robot, it is possible to efficiently acquire the terrain data by acquiring only the terrain data for the point necessary for external terrain identification, The present invention relates to a method and apparatus for storing terrain data for a robot that efficiently stores terrain data to reduce storage space.

로봇의 공간 인식 및 위치 인식을 위한 기술로서, 로봇이 모르는 환경 속에서 지도를 생성하고 자신의 위치 인식도 동시에 수행하는 기술에 대한 많은 연구가 이루어지고 있는 상황이다. 이러한 기술을 SLAM(Simultaneous Localization and Mapping)라고 한다.  As a technology for space recognition and location recognition of a robot, a lot of research is being conducted on a technology for generating a map and simultaneously performing a location recognition in a robot's unknown environment. This technique is called SLAM (Simultaneous Localization and Mapping).

전술한 바와 같은, 로봇의 공간 인식 및 위치 인식을 위한 종래의 기술은 센서 등을 이용하여 외부 환경에 대한 지형 데이터를 획득하여 저장해두고, 이러한 지형 데이터를 분석하여 주위 공간에 대한 지도를 작성하며, 이를 토대로 로봇의 위치가 지도상에서 어디인지를 추정하게 된다. As described above, the conventional technique for space recognition and location recognition of the robot acquires and stores terrain data about an external environment using a sensor or the like, analyzes the terrain data to create a map of the surrounding space, Based on this, the location of the robot is estimated on the map.

하지만, 로봇의 공간 인식 및 위치 인식을 위한 종래의 기술은, 로봇의 공간 인식이나 위치 인식 시, 외부 지형을 파악하여 지도를 생성하기 위해서 획득되는 지형 데이터에는 외부 지형 파악을 위해 반드시 필요한 지점(예: 갈림길이나 문 등과 같이 지형 변화가 심한 지점)에 대한 지형 데이터뿐만 아니라, 획득하지 않아도 되는 불필요한 지점(예: 긴 통로 등과 같이 지형 변화가 심하지 않은 지점)에 대한 지형 데이터까지 포함될 수 있는 지형 데이터 획득의 비효율성이라는 문제점이 있다. 또한, 전술한 종래의 기술은, 로봇의 공간 인식이나 위치 인식을 더욱 정확하게 하기 위해서 획득된 지형 데이터를 저장하는 많은 저장 공간을 필요로 하는 문제점도 있다. However, in the conventional technology for space recognition and location recognition of the robot, when the space recognition or location recognition of the robot, the terrain data obtained in order to generate the map by grasping the external terrain is necessary to identify the external terrain (eg : Acquisition of terrain data that can include not only terrain data for areas with heavy terrain changes, such as crossroads and doors, but also terrain data for unnecessary points (e.g., long-distance changes such as long passages) that do not need to be acquired. There is a problem of inefficiency. In addition, the conventional technique described above also has a problem of requiring a large amount of storage space for storing the acquired terrain data in order to more accurately recognize the space or position recognition of the robot.

이러한 배경에서, 본 발명의 실시예의 목적은, 로봇의 정상적인 운행이 가능하도록 로봇의 공간 인식이나 위치 인식을 정확하게 하면서도, 외부 지형 파악을 위해 반드시 필요한 지점에 대한 지형 데이터만을 획득하여, 효율적인 지형 데이터의 획득을 가능하게 하는 데 있다.In this background, an object of the embodiment of the present invention, while accurately performing the spatial recognition or location recognition of the robot to enable the normal operation of the robot, while obtaining only the topographical data for the point necessary for the external topography, efficient terrain data Is to enable acquisition.

또한, 본 발명의 실시예의 다른 목적은, 로봇의 공간 인식이나 위치 인식을 위해 획득된 지형 데이터를 효율적으로 저장하여 저장 공간을 줄여주는 데 있다. In addition, another object of the embodiment of the present invention is to reduce the storage space by efficiently storing the terrain data obtained for spatial recognition or location recognition of the robot.

본 발명의 일 실시예는, 그리드 지도로부터 에지 포인트를 추출하는 에지 포인트 추출부; 상기 에지 포인트를 토대로 보로노이 다이어그램을 생성하는 보로노이 다이어그램 생성부; 상기 보로노이 다이어그램으로부터 노드를 검색하는 노드 검색부; 및 상기 노드의 주변을 스캔하여 지형 데이터를 생성하고, 상기 생성된 지형 데이터를 저장하는 지형 데이터 생성 저장부를 포함하는 로봇을 위한 지형 데이터 저장 장치를 제공한다. One embodiment of the present invention, the edge point extraction unit for extracting the edge point from the grid map; A Voronoi diagram generator for generating a Voronoi diagram based on the edge point; A node searching unit searching for a node from the Voronoi diagram; And a terrain data generation storage unit configured to scan the periphery of the node to generate terrain data and to store the generated terrain data.

또한, 본 발명의 일 실시예는, 그리드 지도로부터 에지 포인트를 추출하는 에지 포인트 추출 단계; 상기 에지 포인트를 토대로 보로노이 다이어그램을 생성하는 보로노이 다이어그램 생성 단계; 상기 보로노이 다이어그램으로부터 노드를 검색하는 노드 검색 단계; 및 상기 노드의 주변을 스캔하여 지형 데이터를 생성하고, 상기 생성된 지형 데이터를 저장하는 지형 데이터 생성 저장 단계를 포함하는 로봇을 위한 지형 데이터 저장 방법을 제공한다. In addition, an embodiment of the present invention, the edge point extraction step of extracting the edge point from the grid map; Generating a Voronoi diagram based on the edge point; A node searching step of searching for a node from the Voronoi diagram; And generating terrain data by scanning the periphery of the node, and generating and storing the generated terrain data.

이상에서 설명한 바와 같이 본 발명의 실시예에 의하면, 로봇의 정상적인 운행이 가능하도록 로봇의 공간 인식이나 위치 인식을 정확하게 하면서도, 외부 지형 파악을 위해 반드시 필요한 지점에 대한 지형 데이터만을 획득함으로써, 효율적인 지형 데이터의 획득을 가능하게 하는 효과가 있다.As described above, according to an exemplary embodiment of the present invention, while the space recognition or position recognition of the robot is accurately performed so that the normal operation of the robot can be performed, the terrain data is efficiently obtained by obtaining only the terrain data for the point necessary for the external terrain. There is an effect that enables the acquisition of.

또한, 본 발명의 실시예에 의하면, 로봇의 공간 인식이나 위치 인식을 위해 획득된 지형 데이터를 효율적으로 저장함으로써, 저장 공간을 줄여주는 효과가 있다.In addition, according to an embodiment of the present invention, by effectively storing the terrain data obtained for spatial recognition or location recognition of the robot, there is an effect of reducing the storage space.

이하, 본 발명의 일부 실시예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서 는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.Hereinafter, some embodiments of the present invention will be described in detail through exemplary drawings. In adding reference numerals to the components of each drawing, it should be noted that the same reference numerals are assigned to the same elements as much as possible even though they are shown in different drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.

또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In addition, in describing the component of this invention, terms, such as 1st, 2nd, A, B, (a), (b), can be used. These terms are only for distinguishing the components from other components, and the nature, order or order of the components are not limited by the terms. If a component is described as being "connected", "coupled" or "connected" to another component, that component may be directly connected to or connected to that other component, but there may be another configuration between each component. It is to be understood that the elements may be "connected", "coupled" or "connected".

도 1은 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)에 대한 블록 구성도이다. 1 is a block diagram of a terrain data storage device 100 for a robot according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)는, 에지 포인트 추출부(110), 보로노이 다이어그램 생성부(120), 노드 검색부(130) 및 지형 데이터 생성 저장부(140) 등을 포함한다. As shown in FIG. 1, the terrain data storage device 100 for a robot according to an embodiment of the present invention includes an edge point extractor 110, a Voronoi diagram generator 120, and a node searcher 130. ) And the terrain data generation storage 140.

에지 포인트 추출부(110)는 그리드 지도(Grid Map)로부터 에지 포인트(Edge Point)를 추출한다. 보로노이 다이어그램 생성부(120)는 추출된 에지 포인트를 토대로 보로노이 다이어그램(Voronoi Diagram)을 생성한다. 노드 검색부(130)는 생성된 보로노이 다이어그램으로부터 노드를 검색한다. 지형 데이터 생성 저장부(140) 는 검색된 노드의 주변을 스캔(Scan)하여 지형 데이터를 생성하고, 생성된 지형 데이터를 저장한다. The edge point extractor 110 extracts an edge point from a grid map. The Voronoi diagram generator 120 generates a Voronoi diagram based on the extracted edge point. The node search unit 130 searches for a node from the generated Voronoi diagram. The terrain data generation storage 140 scans the periphery of the found node to generate terrain data and stores the generated terrain data.

보로노이 다이어그램을 그리드 지도로부터 바로 생성하기가 어렵기 때문에, 본 발명의 일 실시예에서는, 그리드 지도로부터 에지 포인트를 추출하고, 추출된 에지 포인트를 이용하여 보로노이 다이어그램을 생성한다. Since it is difficult to generate a Voronoi diagram directly from the grid map, in an embodiment of the present invention, an edge point is extracted from the grid map and a Voronoi diagram is generated using the extracted edge point.

이와 같이, 보로노이 다이어그램을 보다 쉽게 생성하기 위해서, 그리드 지도로부터 에지 포인트를 추출하는 전술한 에지 포인트 추출부(110)는, 에지 포인트 추출의 일 예로서, 미리 저장된 에지 포인트 케이스(Case of Edge Point)의 검사를 통하여 그리드 지도로부터 에지 포인트를 추출할 수 있다. As described above, in order to more easily generate a Voronoi diagram, the above-described edge point extractor 110 extracting an edge point from a grid map is an example of edge point extraction, which is a pre-stored case of edge point case. ), We can extract the edge point from the grid map.

이렇게 에지 포인트가 추출되고 나면, 보로노이 다이어그램 생성부(120)는, 추출된 에지 포인트를 이용하여 보로노이 다이어그램을 생성하게 되는데, 이와 같이 생성된 보로노이 다이어그램은 상당히 복잡할 수 있다. 만약 생성된 보로노이 다이어그램이 매우 복잡하다면, 이러한 복잡한 보로노이 다이어그램으로부터 필요한 정보나 데이터(예: 지형 데이터)를 얻어내는 것이 어려운 문제점이 있다. 따라서, 여러 조건을 사용하여 가공하면 실제 지형에 맞는 간략화된 보로노이 다이어그램을 생성할 수 있다. After the edge points are extracted, the Voronoi diagram generator 120 generates the Voronoi diagram using the extracted edge points. The Voronoi diagram generated as described above may be quite complicated. If the generated Voronoi diagram is very complex, it is difficult to obtain necessary information or data (eg, terrain data) from the complex Voronoi diagram. Thus, processing using multiple conditions can produce simplified Voronoi diagrams that fit the actual terrain.

복잡한 보로노이 다이어그램을 가공하여 실제 지형에 맞는 간략화된 보로노이 다이어그램으로 가공하여 생성하는 일 예로서, 보로노이 다이어그램 생성부(120)는, 추출된 에지 포인트를 토대로 복수 개의 점을 생성하고, 점 제거 방식에 따라 생성된 복수 개의 점으로부터 하나 이상의 점을 제거하여 남은 점을 연결 하여 연결 경로를 생성하며, 이렇게 생성된 연결 경로를 포함하는 보로노이 다이어그램을 생성할 수 있다. As an example of processing a complex Voronoi diagram and processing it into a simplified Voronoi diagram suitable for real terrain, the Voronoi diagram generator 120 generates a plurality of points based on the extracted edge points, and removes the points. According to the method, one or more points are removed from the generated points to connect the remaining points to generate a connection path, and a Voronoi diagram including the generated connection path can be generated.

위에서 언급한 점 제거 방식은, 그리드 지도보다 큰 점을 제거하는 방식과, 그리드 지도상의 벽 내부에서 발생하는 점을 제거하는 방식과, 중복된 점을 제거하는 방식 등 중에서 하나 이상을 포함할 수 있다. The above-mentioned point removal method may include one or more of a method of removing a point larger than a grid map, a method of removing a point occurring inside a wall of the grid map, a method of removing a duplicate point, and the like. .

또한, 위에서 언급한 연결 경로는, 그리드 지도상의 통로 가운데를 지나는 선들을 포함한다. 로봇은 벽 등의 장애물과 부딪치지 않는 경로를 만들기 때문에, 전술한 바와 같이 통로 가운데를 지나는 선들을 포함하는 연결 경로는, 로봇이 이동하는 이동 경로와 유사한 특징이 있다. 또한, 이러한 연결 경로를 통해 지도의 지형을 인식하거나 지형에 대한 정보를 알아낼 수 있다. In addition, the above-mentioned connecting path includes lines passing through the center of the path on the grid map. Since the robot makes a path that does not collide with an obstacle such as a wall, as described above, the connection path including the lines passing through the center of the path is similar to the movement path through which the robot moves. In addition, the connection path can recognize the terrain of the map or find out information about the terrain.

보로노이 다이어그램 생성부(120)에 의해 보로노이 다이어그램이 생성된 이후, 노드 검색부(130)는 보로노이 다이어그램에서 세 방향 이상으로 진행 가능한 지점을 노드로서 검색한다. After the Voronoi diagram is generated by the Voronoi diagram generation unit 120, the node search unit 130 searches for a point that can proceed in three or more directions in the Voronoi diagram as a node.

검색된 노드는 갈림길이나 문 등이 있는 지점과 같이 지형적인 변화가 심한 곳을 의미하며, 전체 지도의 모든 지점들 중에서, 전체 지도의 지형을 가장 잘 반영하는 지점이고, 로봇의 정상적인 운행을 위해 가장 정확하게 인식되어야 하는 지점이기도 하다. 왜냐하면, 지형의 변화가 거의 없는 긴 통로의 경우 지형 데이터가 존재하지 않더라도 온라인 상에서 로봇의 센서를 이용하여 그 방향을 알 수 있어 정상적인 운행이 가능하지만, 갈림길이나 문 등의 지형 변화가 심한 곳, 즉 노드에서는 지형 데이터가 충분하지 않으면 로봇의 정상적인 운행이 불가능할 수 있기 때 문이다. The searched node means the place where the topographical change is severe, such as the point of intersection or door, and among all the points of the whole map, it is the point that best reflects the topography of the whole map and most accurately for the normal operation of the robot. It is also the point to be recognized. This is because in the long passage where there is almost no change in the terrain, even if the terrain data does not exist, the robot's sensor can be used to know its direction online so that normal driving is possible. If there is not enough terrain data in the node, the robot may not be able to operate normally.

전술하 바와 같이 보로노이 다이어그램에서 노드가 검색된 이후, 지형 데이터 생성 저장부(140)는, 검색된 노드의 주변에 대한 스캔을 통해 지형 데이터를 생성하여 저장한다. As described above, after the node is searched for in the Voronoi diagram, the terrain data generation storage 140 generates and stores the terrain data through a scan of the surrounding of the found node.

지형 데이터 생성 저장부(140)는, 지형 데이터의 생성 및 저장의 일 예로서, 검색된 노드의 주변을 스캔하여 주변 장애물을 인식하고, 인식된 주변 장애물에 대한 지리 정보를 획득하며, 획득된 지리 정보를 토대로 지형 데이터를 생성하여 저장한다. As an example of generation and storage of terrain data, the terrain data generation storage unit 140 scans the periphery of the retrieved node to recognize surrounding obstacles, obtains geographic information on the recognized surrounding obstacles, and obtains the obtained geographic information. Create and store terrain data based on

위에서 언급된 주변 장애물에 대한 지리 정보는, 인식된 주변 장애물의 위치 정보와, 인식된 주변 장애물과 로봇 간의 거리 정보를 포함하되, 인식된 주변 장애물은 벽 등과 같은 고정된 장애물이거나 로봇이 이동하면 만날 수 있는 움직이는 물체 등과 같은 움직이는 장애물일 수 있다. The above-mentioned geographic information on the surrounding obstacles includes the position information of the recognized surrounding obstacles and the distance information between the recognized surrounding obstacles and the robot, wherein the recognized surrounding obstacles are fixed obstacles such as walls, or meet when the robot moves. May be a moving obstacle, such as a moving object.

전술한 지형 데이터 생성 저장부(140)에서 생성된 지형 데이터의 경우, 비슷한 정보를 많은 점들로 표시하기 때문에, 데이터 손실과 정보량이 떨어지는 현상이 발생할 수 있다. 따라서, 지형 데이터 생성 저장부(140)는 작은 데이터량으로 많은 정보량을 가지기 위해 간략화된 지형 데이터를 생성할 수도 있다. In the case of the terrain data generated by the terrain data generation and storage unit 140 described above, since similar information is displayed in many points, data loss and information amount may be degraded. Accordingly, the terrain data generation storage 140 may generate simplified terrain data in order to have a large amount of information with a small amount of data.

일 예로서, 지형 데이터 생성 저장부(140)는, 검색된 노드의 주변을 스캔하여 주변 장애물을 인식하고, 인식된 주변 장애물에 대한 지리 정보를 획득하며, 획득된 지리 정보를 토대로, 인식된 주변 장애물이 있는 지점을 꼭짓점(Vertex)으로 하여, 각 꼭짓점을 연결하는 선분(Line)들을 이어서 폴리라인(Polyline)을 생성하 고, 이렇게 생성된 폴리라인을 폴리라인 간략화(Polyline Simplication) 기법을 통해 간략함으로써, 간략화된 폴리라인을 간략화된 지형 데이터로서 생성하여 저장할 수 있다. 이와 같이, 지형 데이터를 간략하여 생성하여 저장함으로써, 저장해야하는 지형 데이터의 크기도 상당히 줄어들게 된다. As an example, the terrain data generation storage 140 may scan the surrounding of the searched node to recognize the surrounding obstacle, obtain geographic information about the recognized surrounding obstacle, and based on the acquired geographic information, the recognized surrounding obstacle This vertex is a vertex, and the lines connecting each vertex are followed by a polyline, and the polyline is simplified by polyline simplication. The simplified polyline may be generated and stored as simplified terrain data. As such, by simply generating and storing the terrain data, the size of the terrain data to be stored is also significantly reduced.

위에서 언급한 "폴리라인 간략화(Polyline Simplication) 기법"은, 각 꼭짓점과 연결된 근방 꼭짓점 중 하나 이상의 근방 꼭짓점을 특정 조건에 따라 제거하여 꼭짓점 수를 줄여나가는 '꼭짓점 제거(Vertext Reduction) 기법'과, 상기 생성된 폴리라인에서의 모든 꼭짓점이 정해진 거리 범위 이내에 존재하도록 상기 생성된 폴리라인을 근사화하는 '폴리라인 근사화 기법' 중 하나 이상을 포함할 수 있다. 꼭짓점 제거 기법은, 한 꼭짓점(Vertex) 근방에 있는 다른 꼭짓점들은 특정한 조건에 의해 제거되는데, 예를 들어, 한 꼭짓점에서 정해진 반경 안에 있는 꼭짓점들을 제거하고, 이러한 과정을 반복하여 꼭짓점을 줄여가는 기법이다. 폴리라인 근사화 기법은, 폴리라인의 양 끝점을 직선으로 연결하여 초기에 근사적으로 간단한 선을 만들고, 그 다음 모든 꼭짓점에 대해 근사화한 근사 선과의 거리를 계산하고 그 값이 정해진 범위 안에 들어오는지를 검사하고, 만약 모든 꼭짓점이 정해진 범위 안에 들어오지 않을 시에는 근사 선에서 제일 크게 벗어난 꼭짓점과 이전의 끝점을 연결하는 새로운 근사 선을 만들어 다시 모든 꼭짓점에 대해 근사 선과의 거리를 계산하는 방식으로 모든 꼭짓점이 정해진 범위 안에 값을 가지도록 근사화하는 기법이다. 이러한 폴리라인 근사화 기법을 DP(Douglas-Peucker) 알고리즘이라고도 한다. The above-mentioned "Polyline Simplication" technique is a "Vertext Reduction technique" to reduce the number of vertices by removing one or more near vertices of the near vertices associated with each vertex according to a specific condition, and the above One or more of the 'polyline approximation techniques' that approximate the generated polyline such that all vertices in the resulting polyline are within a defined distance range. The vertex removal technique removes the vertices from one vertex by a specific condition, for example, by removing vertices within a specified radius from one vertex and repeating this process to reduce the vertices. . The polyline approximation technique connects the two ends of a polyline with a straight line to make an initially approximate simple line, then calculates the distance to the approximated approximation line for all vertices and checks whether the value falls within the specified range. If all vertices are not within the defined range, all vertices are determined by creating a new approximation line that connects the vertex with the largest deviation from the approximation line and the previous end point, and calculates the distance to the approximate line for all vertices. It is a technique to approximate to have a value in a range. This polyline approximation technique is also known as Douglas-Peucker (DP) algorithm.

전술한 지형 데이터 생성 저장부(140)는, 생성된 지형 데이터를 노드의 수로 정규화하여 0과 1 사이의 숫자 값으로 저장할 수 있다. 이를 통해, 숫자의 조합만으로 보다 간략화된 지도 표현이 가능해지며, 저장해야하는 지형 데이터의 크기도 상당히 줄어들게 된다. The terrain data generation storage 140 described above may normalize the generated terrain data by the number of nodes and store the generated terrain data as a numeric value between 0 and 1. FIG. This allows a more simplified map representation using only a combination of numbers and significantly reduces the size of the terrain data that needs to be stored.

즉, 전술한 지형 데이터 생성 저장부(140)는 노드의 주변에 대한 지형 데이터를 간략화하여 몇몇 포인트 정보만으로 저장하고, 지형 데이터를 얻는 과정에서 발생하는 움직이는 장애물에 대한 정보를 노드의 수로 정규화하여 그 크기를 0과 1 사이의 숫자 값으로 저장한다. That is, the above-described terrain data generation and storage unit 140 simplifies and stores the terrain data on the surroundings of the node with only some point information, normalizes the information about the moving obstacles generated in the process of obtaining the terrain data by the number of nodes, and Store the size as a numeric value between 0 and 1.

본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)는, 지형 데이터 생성 저장부(140)에서 생성되어 저장된 지형 데이터를 토대로 지도를 재생성하는 지도 생성부(150)를 더 포함할 수 있다. 지도 생성부(150)에서 재생성된 지도는 최초의 그리드 지도와 유사하다. The terrain data storage device 100 for a robot according to an embodiment of the present invention may further include a map generator 150 for regenerating a map based on the terrain data generated and stored in the terrain data generation storage 140. Can be. The map regenerated by the map generator 150 is similar to the original grid map.

이상에서 전술한 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)는, 모르는 환경 속에서 지도를 빌딩하고 자신의 위치 인식을 동시에 수행하는 SLAM(Simultaneous Location and Mapping) 기술이 적용된 로봇이거나, 또는 이러한 로봇 내부에 포함된 장치일 수 있다. In the above-described terrain data storage device 100 for a robot according to an embodiment of the present invention, SLAM (Simultaneous Location and Mapping) technology is applied to simultaneously construct a map and perform location recognition in an unknown environment. It may be a robot or a device included in such a robot.

또한, 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)는, 외부 환경에 대한 정보를 획득하기 위한 각종 센서와 연동할 수 있으며, 이러한 센서에 의해 획득된 정보를 분석하여 주위 공간에 대한 지도를 작성하고, 자신의 위치가 지도 상에서 어디인지 추정할 수 있다. 본 발명의 일 실시예에 따른 로 봇을 위한 지형 데이터 저장 장치(100)는, 로봇의 위치를 추정하기 위해, 절대 좌표 정보를 획득하기 위한 GPS 또는 RFID 등과, 단순 입력 정보를 위한 비전이나 레이저 스캐너 등을 포함할 수도 있다. In addition, the terrain data storage device 100 for a robot according to an embodiment of the present invention may be linked with various sensors for acquiring information about an external environment, and may analyze the information acquired by such a sensor to analyze the surroundings. You can map a space and estimate where your location is on the map. The terrain data storage device 100 for a robot according to an embodiment of the present invention may include a GPS or RFID for acquiring absolute coordinate information, a vision or laser scanner for simple input information, etc. to estimate the position of the robot. And the like.

도 2는 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)가 제공하는 지형 데이터 저장 방법에 대한 흐름도이다. 2 is a flowchart illustrating a terrain data storage method provided by the terrain data storage device 100 for a robot according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 방법은, 그리드 지도로부터 에지 포인트를 추출하는 에지 포인트 추출 단계(S200); 추출된 에지 포인트를 토대로 보로노이 다이어그램을 생성하는 보로노이 다이어그램 생성 단계(S202); 생성된 보로노이 다이어그램으로부터 노드를 검색하는 노드 검색 단계(S204); 및 검색된 노드의 주변을 스캔하여 지형 데이터를 생성하고, 생성된 지형 데이터를 저장하는 지형 데이터 생성 저장 단계(S206) 등을 포함한다. 2, the terrain data storage method for a robot according to an embodiment of the present invention, the edge point extraction step of extracting the edge point from the grid map (S200); A Voronoi diagram generation step S202 for generating a Voronoi diagram based on the extracted edge points; A node searching step (S204) of searching for a node from the generated Voronoi diagram; And a terrain data generation storage step (S206) of scanning the surroundings of the found node to generate terrain data, and storing the generated terrain data.

이상에서는, 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)와, 이로부터 제공되는 로봇을 위한 지형 데이터 저장 방법을 설명하였으며, 아래에서는 따라오는 예시적인 도 3 내지 도 12를 참조하여 로봇을 위한 지형 데이터 저장 방법을 예시적으로 설명한다. In the above, the terrain data storage device 100 for a robot according to an embodiment of the present invention, and a terrain data storage method for a robot provided therefrom have been described. Hereinafter, FIGS. 3 to 12 will be described. A terrain data storage method for a robot will be described by way of example.

본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 방법을 예시적으 로 설명하기 위해 적용되는 그리드 지도(Grid Map)를 도 3에 예시적으로 나타낸다. 도 3을 참조하면 어두운 부분이 벽 등의 고정된 장애물이 되고, 밝은 부분이 로봇이 이동할 수 있는 통로가 된다. 3 is a grid map applied to exemplarily describe a method of storing terrain data for a robot according to an embodiment of the present invention. Referring to FIG. 3, the dark portion becomes a fixed obstacle such as a wall, and the bright portion becomes a passage through which the robot can move.

본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 방법에서는, 우선 도 3에 예시된 그리드 지도로부터 보로노이 다이어그램을 생성하기 위하여 이용할 에지 포인트를 추출한다. In the terrain data storage method for a robot according to an embodiment of the present invention, first, an edge point to be used for generating a Voronoi diagram is extracted from the grid map illustrated in FIG. 3.

본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치(100)는, 이제 포인트 추출의 일 예로서, 에지 포인트가 발생할 수 있는 여러 가지 경우(즉, 여러 가지의 에지 포인트 케이스)를 미리 저장해두고, 미리 저장해둔 여러 가지의 에지 포인트 케이스를 검사하고, 검사 결과 미리 저장해둔 에지 포인트 케이스와 대응되는 그리드 지도상의 지점을 에지 포인트로서 추출할 수 있다. 도 4에서는, 에지 포인트를 추출하기 위해서 검사되는 에지 포인트 케이스의 8가지 예시를 도시한다. 도 4의 8가지 에지 포인트 케이스에서, 'x'로 표시된 부분이 에지 포인트에 해당한다. The terrain data storage device 100 for a robot according to an embodiment of the present invention now stores, as an example of point extraction, various cases in which edge points may occur (that is, various edge point cases). Various edge point cases stored in advance can be inspected, and points on the grid map corresponding to the edge point cases stored in advance as a result of the inspection can be extracted as edge points. In Fig. 4, eight examples of edge point cases examined to extract edge points are shown. In the eight edge point cases of FIG. 4, the portion marked 'x' corresponds to the edge point.

도 5는 에지 포인트 케이스들의 검사를 통해 추출된 에지 포인트를 지도상에 나타낸 도면이다. 도 5에서 추출된 에지 포인트('x'로 표시됨)는 도 3의 그리드 지도에서 밝은 부분과 어두운 부분의 경계가 됨을 확인할 수 있다. 5 is a diagram illustrating an edge point extracted through inspection of edge point cases on a map. It can be seen that the edge point (indicated by 'x') extracted in FIG. 5 is a boundary between the light and dark portions in the grid map of FIG. 3.

도 5에 도시된 바와 같이 에지 포인트가 추출되고 나면, 추출된 에지 포인트를 이용하여 보로노이 다이어그램을 생성하며, 이렇게 생성된 보로노이 다이어그램을 도 6에 도시한다. 도 6에 도시된 보로노이 다이어그램은 매우 복잡한 다이어그 램인 것으로 알 수 있다. 이처럼 복잡한 보로노이 다이어그램에서는 원하는 정보를 얻는 것이 상당히 힘들기 때문에 여러 조건을 사용하여 복잡한 보로노이 다이어그램을 가공하면 실제 지형에 맞는 간략화된 보로노이 다이어그램을 완성할 수 있다. 예를 들어, 지도의 크기보다 큰 보로노이 점들은 제거하고, 벽 내부에서 발생하는 보로노이 점들도 제거하여 복잡한 보로노이 다이어그램을 간략화할 수 있다. 또한, 각 점들의 연결을 이용하여 중복되는 점들은 모두 제거함과 동시에 그 연결 경로를 알아 낼 수 있다. 이와 같이, 도 6에 도시된 복잡한 보로노이 다이어그램이 간략화된 보로노이 다이그램은 도 7에 예시적으로 도시된다. After the edge points are extracted as shown in FIG. 5, the Voronoi diagram is generated using the extracted edge points, and the Voronoi diagram thus generated is illustrated in FIG. 6. It can be seen that the Voronoi diagram shown in FIG. 6 is a very complicated diagram. In this complex Voronoi diagram, it is quite difficult to get the information you want, so processing a complex Voronoi diagram using different conditions will result in a simplified Voronoi diagram that fits the real terrain. For example, complex Voronoi diagrams can be simplified by removing Voronoi points larger than the size of the map and removing Voronoi points that occur inside the wall. In addition, by using the connection of each point, all the overlapping points can be removed and the connection path can be determined. As such, a Voronoi diagram in which the complex Voronoi diagram shown in FIG. 6 is simplified is illustratively shown in FIG.

도 7을 참조하면, 보로노이 다이어그램은 밝은 부분인 통로의 가운데를 지나는 선(700)들로 이어지는데, 일반적으로, 로봇이 벽이나 장애물을 부딪치지 않는 경로 만들기 때문에, 통로의 가운데를 지나는 선(700)들은 실제 로봇이 이동하는 경로와 유사하다. 이러한 보로노이 다이어그램을 통해 지도상의 지형에 대한 정보를 알아낼 수 있다. Referring to FIG. 7, the Voronoi diagram is followed by lines 700 passing through the center of the passage, which is the bright part, which is generally the line 700 passing through the center of the passage, since the robot makes a path that will not hit walls or obstacles. These are similar to the path that a real robot travels. These Voronoi diagrams provide insights into the terrain on the map.

도 7에 도시된 바와 같이 생성된 보로노이 다이어그램을 통해 지형 파악하기 위해 각 지점을 검색하여 검색된 각 지점에서의 지형 데이터를 획득하는데, 모든 지점을 지형 데이터를 획득하는 것은 비효율적일 수 있다. 왜냐하면, 실제로 지형 변화가 거의 없는 통로(도 7에서 밝게 표시된 부분) 등의 경우 지형 데이터가 존재하지 않더라도 온라인 상에서 로봇의 센서를 이용하여 진행 방향을 바로 알 수 있기 때문에, 이러한 지형 변화가 심하지 않은 지점에서까지 지형 데이터를 획득하는 것은 프로세싱 및 저장 데이터량 측면 등에서 비효율적일 수 있다. 따라서, 이러한 지형 변화가 거의 없는 통로 등과 같은 지점에 대해서는 지형 데이터를 획득하지 않고, 갈림길이나 문 등과 같이 지형 변화가 심한 지점(이를 '노드'라 함)에서만 지형 데이터를 획득하는 것이 더욱 효율적이다. 즉, 지형 변화 심한 지점, 즉 노드의 주변 지형을 파악함으로써 전체 지형을 간접적으로 파악할 수 있으며, 이를 통해 충분히 로봇 운행이 정상적으로 이루어질 수 있다. 전술한 노드는, 도 8에 예시적으로 도시된 4가지의 노드 케이스((a), (b), (c) 및 (ㅇ))와 같이, 세 방향 이상으로 로봇의 진행이 가능한 지점으로서, 통로의 모서리 지점, 둘 이상의 통로가 교차하는 지점 등과 같이 지형적 변화가 심한 지점이다. As shown in FIG. 7, in order to identify the terrain through the Voronoi diagram generated as shown in FIG. 7, the terrain data is obtained by searching each point, and it may be inefficient to obtain the terrain data at all points. This is because, in the case of a passage (a part highlighted in FIG. 7) where there is almost no terrain change, even if the terrain data does not exist, since the direction of travel can be directly known by using the sensor of the robot online, the point where such terrain change is not severe. Acquiring topographical data from to may be inefficient in terms of processing and storage data volume, and the like. Therefore, it is more efficient to obtain the terrain data only at the point where the terrain changes are severe (such as a 'node') without obtaining the terrain data for a point such as a passage having almost no such terrain change. In other words, by grasping the severe point of the terrain change, that is, the surrounding terrain of the node, the entire terrain can be indirectly grasped, and the robot can be fully operated through this. The aforementioned node is a point where the robot can move in three or more directions, as shown in the four node cases ((a), (b), (c) and (o)) illustrated in FIG. 8. It is a point where the topographical change is severe, such as a corner point of a passageway or an intersection of two or more passageways.

도 9는, 도 7에 예시적으로 도시된 보로노이 다이어그램으로부터 검색된 23 개의 노드를 예시적으로 나타낸 도면이다. 도 9에 도시된 23개의 노드들(900번 노드 포함)은, 연결 선(700)상에 작은 네모 박스로 표시되어 있다. FIG. 9 is a diagram illustrating 23 nodes retrieved from the Voronoi diagram exemplarily shown in FIG. 7. The 23 nodes (including node 900) shown in FIG. 9 are indicated by small square boxes on the connection line 700.

도 9와 같이, 찾아진 노드의 주변의 지형 데이터가 지형을 파악하는 데 중요한 정보를 가지기 때문에, 노드 주변을 스캔하여 지형 데이터를 생성하고 저장한다. 이와 같이 검색된 노드의 주변을 스캔하여 얻어진 지형 데이터는 도 10에 예시적으로 도시된다. 도 10은 검색된 노드 중 특정 노드의 주변을 스캔하여 얻어진 지형 데이터를 그래프 형태로 나타낸 도면이다. 도 10의 그래프에서 X축과 Y축은 벽 등의 주변 장애물과의 거리를 의미하고, 그래프 상에 '+' 기호로 표시된 각 점들은 고정된 주변 장애물의 위치를 표시한 것이다. 도 10을 참조하면, X축과 Y축의 거리 단위가 m라면, 로봇이 있는 (0,0) 지점에서 X축 방향과 Y축 방향으로 각각 대략 5m 떨어진 지점에 장애물(1000)이 있으며, 이 장애물(1000)을 기준으로 X축 방향과 Y 축 방향으로 여러 장애물이 인식됨으로 알 수 있다. As shown in FIG. 9, since the terrain data around the found node has important information for identifying the terrain, the terrain data is scanned and generated and stored. The terrain data obtained by scanning the periphery of the retrieved node is exemplarily illustrated in FIG. 10. FIG. 10 is a graph illustrating terrain data obtained by scanning the periphery of a specific node among searched nodes. In the graph of FIG. 10, the X-axis and the Y-axis denote distances from peripheral obstacles such as walls, and each point indicated by a '+' symbol on the graph indicates a position of a fixed peripheral obstacle. Referring to FIG. 10, if the distance unit of the X-axis and the Y-axis is m, there is an obstacle 1000 at a point approximately 5m away from the (0,0) point where the robot is located in the X-axis direction and the Y-axis direction, respectively. It can be seen that various obstacles are recognized in the X-axis direction and the Y-axis direction based on (1000).

도 10을 참조하면, 노드의 주변을 스캔하여 얻어진 지형 데이터의 경우, 비슷한 정보를 많은 점으로 표시하기 때문에, 데이터 손실과 정보량의 효율이 떨어지는 단점이 있다. 따라서, 적은 데이터량을 사용하면서도 더욱 많은 정보량을 가질 수 있도록 스캔되어 얻어진 지형 데이터를 간략화할 필요하여 저장할 필요가 있다. 이렇게 간략화된 지형 데이터를 도 11에 예시적으로 도시한다. Referring to FIG. 10, in the case of terrain data obtained by scanning the periphery of a node, similar information is displayed at many points, which results in a loss of data loss and efficiency of information amount. Therefore, it is necessary to simplify and store the scanned terrain data obtained so as to have a larger amount of information while using a smaller amount of data. This simplified topographical data is illustratively shown in FIG. 11.

특정 노드에 대하여 간략화된 지형 데이터를 그래프로 나타낸 도 11의 (a)는, 도 10과 비교하여, 각 점(즉, 장애물)들을 선(1100)으로 연결하여 간략화했음을 알 수 있다. 이때, 간략화 기법의 일 예로서, 전술한 폴리라인 간략화 기법이 이용되었다. 도 11의 (b)는 도 11의 (a)에 박스로 표시된 부분을 확대한 그래프이다. 도 11의 (a)에 표시된 선들(간략화된 지형 데이터를 의미함)을 모두 연결하면, 도 12와 같은 지도를 다시 생성할 수 있다.FIG. 11A, which is a graph of simplified terrain data with respect to a specific node, is compared to FIG. 10, and it is understood that each point (ie, obstacles) is connected to the line 1100 and simplified. In this case, as an example of the simplification technique, the aforementioned polyline simplification technique is used. FIG. 11B is an enlarged graph of a portion indicated by a box in FIG. 11A. If all of the lines (meaning simplified terrain data) shown in FIG. 11A are connected, a map as shown in FIG. 12 may be regenerated.

이상에서 설명한 바와 같이 본 발명의 실시예에 의하면, 로봇의 정상적인 운행이 가능하도록 로봇의 공간 인식이나 위치 인식을 정확하게 하면서도, 외부 지형 파악을 위해 반드시 필요한 지점에 대한 지형 데이터만을 획득하여, 효율적인 지형 데이터의 획득을 가능하게 하는 효과가 있다.As described above, according to the exemplary embodiment of the present invention, while the space recognition or the position recognition of the robot is precisely performed to enable the normal operation of the robot, only the terrain data for the point necessary for the external terrain is obtained, and the terrain data is efficiently There is an effect that enables the acquisition of.

또한, 본 발명의 실시예에 의하면, 로봇의 공간 인식이나 위치 인식을 위해 획득된 지형 데이터를 효율적으로 저장하여 저장 공간을 줄여주는 효과가 있다.In addition, according to an embodiment of the present invention, there is an effect of reducing the storage space by efficiently storing the terrain data obtained for spatial recognition or location recognition of the robot.

이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.In the above description, all elements constituting the embodiments of the present invention are described as being combined or operating in combination, but the present invention is not necessarily limited to the embodiments. In other words, within the scope of the present invention, all of the components may be selectively operated in combination with one or more. In addition, although all of the components may be implemented in one independent hardware, each or all of the components may be selectively combined to perform some or all functions combined in one or a plurality of hardware. It may be implemented as a computer program having a. Codes and code segments constituting the computer program may be easily inferred by those skilled in the art. Such a computer program may be stored in a computer readable storage medium and read and executed by a computer, thereby implementing embodiments of the present invention. The storage medium of the computer program may include a magnetic recording medium, an optical recording medium, a carrier wave medium, and the like.

또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.In addition, the terms "comprise", "comprise" or "having" described above mean that the corresponding component may be included, unless otherwise stated, and thus excludes other components. It should be construed that it may further include other components instead. All terms, including technical and scientific terms, have the same meanings as commonly understood by one of ordinary skill in the art unless otherwise defined. Terms commonly used, such as terms defined in a dictionary, should be interpreted to coincide with the contextual meaning of the related art, and shall not be construed in an ideal or excessively formal sense unless explicitly defined in the present invention.

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

도 1은 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 장치에 대한 블록 구성도, 1 is a block diagram of a terrain data storage device for a robot according to an embodiment of the present invention;

도 2는 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 방법에 대한 흐름도, 2 is a flowchart illustrating a method of storing terrain data for a robot according to an embodiment of the present invention;

도 3은 본 발명의 일 실시예에 따른 로봇을 위한 지형 데이터 저장 방법을 적용하기 위한 그리드 지도를 예시적으로 나타낸 도면, 3 is a diagram illustrating a grid map for applying a terrain data storage method for a robot according to an embodiment of the present invention;

도 4는 그리드 지도로부터 에지 포인트를 추출하기 위해 검사되는 에지 포인트 케이스를 예시적으로 나타낸 도면, 4 illustratively illustrates an edge point case being examined to extract edge points from a grid map;

도 5는 그리드 지도로부터 추출된 에지 포인트를 예시적으로 나타낸 도면, 5 is a diagram illustrating an edge point extracted from a grid map by way of example;

도 6은 보로노이 다이어그램을 예시적으로 나타낸 도면, 6 is an exemplary diagram showing a Voronoi diagram;

도 7은 간략화된 보로노이 다이어그램을 예시적으로 나타낸 도면, 7 illustrates a simplified Voronoi diagram illustratively;

도 8은 보로노이 다이어그램으로부터 노드를 검색하기 위한 노드 케이스를 예시적으로 나타낸 도면, 8 illustratively illustrates a node case for retrieving nodes from a Voronoi diagram;

도 9는 보로노이 다이어그램으로부터 검색된 노드를 예시적으로 나타낸 도면, 9 shows an example of a node retrieved from a Voronoi diagram;

도 10은 노드의 주변을 스캔하여 생성된 지형 데이터를 예시적으로 나타낸 도면, 10 is a diagram illustrating terrain data generated by scanning the periphery of a node;

도 11은 폴리라인 간략화 기법을 통해 생성된 지형 데이터를 예시적으로 나타낸 도면, 11 is a diagram illustrating terrain data generated through a polyline simplification technique.

도 12는 지형 데이터를 토대로 재생성된 지도를 예시적으로 나타낸 도면이다. 12 is a diagram exemplarily illustrating a map reproduced based on terrain data.

< 도면의 주요 부분에 대한 부호의 설명 ><Description of Symbols for Main Parts of Drawings>

100: 지형 데이터 저장 장치100: terrain data storage

110: 에지 포인트 추출부110: edge point extraction unit

120: 보로노이 다이어그램 생성부120: Voronoi diagram generator

130: 노드 검색부130: node search unit

140: 지형 데이터 생성 저장부140: terrain data generation storage

150: 지도 생성부150: map generator

Claims (13)

그리드 지도로부터 에지 포인트를 추출하는 에지 포인트 추출부;An edge point extracting unit extracting an edge point from the grid map; 상기 에지 포인트를 토대로 보로노이 다이어그램을 생성하는 보로노이 다이어그램 생성부;A Voronoi diagram generator for generating a Voronoi diagram based on the edge point; 상기 보로노이 다이어그램으로부터 노드를 검색하는 노드 검색부; 및A node searching unit searching for a node from the Voronoi diagram; And 상기 노드의 주변을 스캔하여 지형 데이터를 생성하고, 상기 생성된 지형 데이터를 저장하는 지형 데이터 생성 저장부를 포함하며,A terrain data generation storage unit configured to scan the periphery of the node to generate terrain data, and store the generated terrain data; 상기 보로노이 다이어그램 생성부는,The Voronoi diagram generator, 상기 추출된 에지 포인트를 토대로 복수 개의 점을 생성하고, 점 제거 방식에 따라 상기 생성된 복수 개의 점으로부터 하나 이상의 점을 제거하여 남은 점을 연결하여 연결 경로를 생성하며, 상기 생성된 연결 경로를 포함하는 상기 보로노이 다이어그램을 생성하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치.Generate a connection path by generating a plurality of points based on the extracted edge point, connecting one or more points by removing one or more points from the generated plurality of points according to a point removal method, and including the generated connection path. Terrain data storage device for a robot, characterized in that for generating the Voronoi diagram. 제 1항에 있어서, The method of claim 1, 상기 에지 포인트 추출부는, The edge point extraction unit, 미리 저장된 에지 포인트 케이스의 검사를 통하여 상기 그리드 지도로부터 상기 에지 포인트를 추출하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치. Terrain data storage device for a robot, characterized in that for extracting the edge point from the grid map through the inspection of a pre-stored edge point case. 삭제delete 제 1항에 있어서, The method of claim 1, 상기 점 제거 방식은, The point removal method, 상기 그리드 지도보다 큰 점을 제거하는 방식과, 상기 그리드 지도상의 벽 내부에서 발생하는 점을 제거하는 방식과, 중복된 점을 제거하는 방식 중 하나 이상을 포함하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치. Terrain data for a robot comprising at least one of a method for removing a point larger than the grid map, a method for removing a point occurring inside a wall of the grid map, and a method for removing a duplicated point. Storage device. 제 1항에 있어서, The method of claim 1, 상기 생성된 연결 경로는, The generated connection path is, 상기 그리드 지도상의 통로 가운데를 지나는 선들을 포함하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치. Terrain data storage device for a robot comprising lines passing through a center of a passage on the grid map. 제 1항에 있어서, The method of claim 1, 상기 노드 검색부는, The node search unit, 상기 보로노이 다이어그램에서 세 방향 이상으로 진행 가능한 지점을 상기 노드로서 검색하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치. Terrain data storage device for a robot, characterized in that for searching the nodes that can proceed in more than three directions in the Voronoi diagram. 제 1항에 있어서, The method of claim 1, 상기 지형 데이터 생성 저장부는, The terrain data generation storage unit, 상기 노드의 주변을 스캔하여 주변 장애물을 인식하고, 상기 인식된 주변 장애물에 대한 지리 정보를 획득하며, 상기 획득된 지리 정보를 토대로 상기 지형 데이터를 생성하여 저장하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치. Scanning the periphery of the node to recognize surrounding obstacles, obtain geographic information on the recognized surrounding obstacles, and generate and store the terrain data based on the acquired geographic information. Storage device. 제 7항에 있어서, The method of claim 7, wherein 상기 지리 정보는, The geographic information, 상기 인식된 주변 장애물의 위치 정보와, 상기 인식된 주변 장애물과 로봇 간의 거리 정보를 포함하되, 상기 인식된 주변 장애물은 고정된 장애물이거나 움직이는 장애물인 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치. And location information of the recognized peripheral obstacle and distance information between the recognized peripheral obstacle and the robot, wherein the recognized peripheral obstacle is a fixed obstacle or a moving obstacle. 제 7항에 있어서, The method of claim 7, wherein 상기 지형 데이터 생성 저장부는, The terrain data generation storage unit, 상기 노드의 주변을 스캔하여 주변 장애물을 인식하고, 상기 인식된 주변 장애물에 대한 지리 정보를 획득하며, 상기 획득된 지리 정보를 토대로, 상기 인식된 주변 장애물이 있는 지점을 꼭짓점(Vertex)으로 하여, 각 꼭짓점을 연결하는 선분(Line)들을 이어서 폴리라인(Polyline)을 생성하고, 상기 생성된 폴리라인을 폴리라인 간략화(Polyline Simplication) 기법을 통해 간략화며, 상기 간략화된 폴리라인을 상기 지형 데이터로서 생성하여 저장하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치. Scans the periphery of the node to recognize peripheral obstacles, obtains geographic information for the recognized peripheral obstacles, and based on the acquired geographic information, the point where the recognized peripheral obstacles are located as a vertex, Lines connecting each vertex are then created to generate a polyline, the generated polyline is simplified through polyline simplication, and the simplified polyline is generated as the terrain data. Terrain data storage device for a robot, characterized in that for storing. 제 9항에 있어서, The method of claim 9, 상기 폴리라인 간략화 기법은, The polyline simplification technique, 각 꼭짓점과 연결된 근방 꼭짓점 중 하나 이상의 근방 꼭짓점을 특정 조건에 따라 제거하여 꼭짓점 수를 줄여나가는 꼭짓점 제거(Vertext Reduction) 기법과, 상기 생성된 폴리라인에서의 모든 꼭짓점이 정해진 거리 범위 이내에 존재하도록 상기 생성된 폴리라인을 근사화하는 폴리라인 근사화 기법 중 하나 이상을 포함하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치. Vertex Reduction, which reduces the number of vertices by removing one or more near vertices of one or more of the near vertices associated with each vertex, and generating the vertices so that all vertices in the generated polyline are within a defined distance range. And at least one of a polyline approximation technique for approximating the drawn polyline. 제 1항에 있어서, The method of claim 1, 상기 지형 데이터 생성 저장부는, The terrain data generation storage unit, 상기 생성된 지형 데이터를 상기 노드의 수로 정규화하여 0과 1 사이의 숫자 값으로 저장하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치. The terrain data storage device for a robot according to claim 1, wherein the generated terrain data is normalized by the number of nodes and stored as a numeric value between 0 and 1. FIG. 제 1항에 있어서, The method of claim 1, 상기 저장된 지형 데이터를 토대로 지도를 재생성하는 지도 생성부를 더 포함하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 장치. And a map generator for regenerating a map based on the stored terrain data. 그리드 지도로부터 에지 포인트를 추출하는 에지 포인트 추출 단계;An edge point extraction step of extracting an edge point from the grid map; 상기 에지 포인트를 토대로 보로노이 다이어그램을 생성하는 보로노이 다이어그램 생성 단계;Generating a Voronoi diagram based on the edge point; 상기 보로노이 다이어그램으로부터 노드를 검색하는 노드 검색 단계; 및A node searching step of searching for a node from the Voronoi diagram; And 상기 노드의 주변을 스캔하여 지형 데이터를 생성하고, 상기 생성된 지형 데이터를 저장하는 지형 데이터 생성 저장 단계를 포함하며,Generating a terrain data by scanning the periphery of the node, and storing and generating the terrain data; 상기 추출된 에지 포인트를 토대로 복수 개의 점을 생성하고, 점 제거 방식에 따라 상기 생성된 복수 개의 점으로부터 하나 이상의 점을 제거하여 남은 점을 연결하여 연결 경로를 생성하며, 상기 생성된 연결 경로를 포함하는 상기 보로노이 다이어그램을 생성하는 것을 특징으로 하는 로봇을 위한 지형 데이터 저장 방법.Generate a connection path by generating a plurality of points based on the extracted edge point, connecting one or more points by removing one or more points from the generated plurality of points according to a point removal method, and including the generated connection path. Terrain data storage method for a robot, characterized in that for generating the Voronoi diagram.
KR1020090055329A 2009-06-22 2009-06-22 Method and Apparatus for Storing Map Data for Robot KR101104225B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090055329A KR101104225B1 (en) 2009-06-22 2009-06-22 Method and Apparatus for Storing Map Data for Robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090055329A KR101104225B1 (en) 2009-06-22 2009-06-22 Method and Apparatus for Storing Map Data for Robot

Publications (2)

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

Family

ID=43510900

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090055329A KR101104225B1 (en) 2009-06-22 2009-06-22 Method and Apparatus for Storing Map Data for Robot

Country Status (1)

Country Link
KR (1) KR101104225B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108664022B (en) * 2018-04-27 2023-09-05 湘潭大学 Robot path planning method and system based on topological map

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005032196A (en) 2003-07-11 2005-02-03 Japan Science & Technology Agency System for planning path for moving robot
KR100791384B1 (en) * 2006-07-05 2008-01-07 삼성전자주식회사 Method for dividing regions by feature points and apparatus thereof and mobile cleaning robot

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005032196A (en) 2003-07-11 2005-02-03 Japan Science & Technology Agency System for planning path for moving robot
KR100791384B1 (en) * 2006-07-05 2008-01-07 삼성전자주식회사 Method for dividing regions by feature points and apparatus thereof and mobile cleaning robot

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
논문.1996
논문.2006.7*

Also Published As

Publication number Publication date
KR20100137091A (en) 2010-12-30

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
EP3293670B1 (en) Lidar object detection system for automated vehicles
KR100915527B1 (en) Method for searching a path
JP2020087415A (en) Map construction and positioning of robot
Drews et al. Novelty detection and 3d shape retrieval using superquadrics and multi-scale sampling for autonomous mobile robots
Kim et al. GP-ICP: Ground plane ICP for mobile robots
Kleiner et al. A solution to room-by-room coverage for autonomous cleaning robots
EP3913527A1 (en) Method and device for performing behavior prediction by using explainable self-focused attention
Schulz et al. Robot navigation using human cues: A robot navigation system for symbolic goal-directed exploration
US10937150B2 (en) Systems and methods of feature correspondence analysis
WO2020159638A1 (en) System and method for unsupervised domain adaptation via sliced-wasserstein distance
KR101104225B1 (en) Method and Apparatus for Storing Map Data for Robot
CN116563310A (en) Point cloud segmentation method, device, equipment and storage medium
Zhao et al. Computing object-based saliency in urban scenes using laser sensing
Ramel et al. A structural representation adapted to handwritten symbol recognition
Abou Merhy et al. Application of segmented 2-D probabilistic occupancy maps for robot sensing and navigation
Maurelli et al. Cognitive knowledge representation under uncertainty for autonomous underwater vehicles
Sadek et al. Multi-Object Navigation in real environments using hybrid policies
Mata et al. Learning visual landmarks for mobile robot navigation
Park et al. Robot navigation using camera by identifying arrow signs
Nguyen et al. Contextual labeling 3D point clouds with conditional random fields
Taghanaki et al. Learned Visual Features to Textual Explanations
Zhang et al. Appearance and map-based global localization using laser reflectivity
Tang et al. An Effective Way of Constructing Static Map Using 3D LiDAR for Autonomous Navigation in Outdoor Environments

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