CN104142971A - 用于构建用于移动机器人的地图的方法和设备 - Google Patents

用于构建用于移动机器人的地图的方法和设备 Download PDF

Info

Publication number
CN104142971A
CN104142971A CN201310700706.4A CN201310700706A CN104142971A CN 104142971 A CN104142971 A CN 104142971A CN 201310700706 A CN201310700706 A CN 201310700706A CN 104142971 A CN104142971 A CN 104142971A
Authority
CN
China
Prior art keywords
characteristic data
node
information
neighborhood
coxopodite
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN201310700706.4A
Other languages
English (en)
Other versions
CN104142971B (zh
Inventor
金东信
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hanhuadi Fos Co., Ltd.
Original Assignee
Samsung Techwin Co Ltd
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 Samsung Techwin Co Ltd filed Critical Samsung Techwin Co Ltd
Publication of CN104142971A publication Critical patent/CN104142971A/zh
Application granted granted Critical
Publication of CN104142971B publication Critical patent/CN104142971B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0242Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using non-visible light signals, e.g. IR or UV signals
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0255Control of position or course in two dimensions specially adapted to land vehicles using acoustic signals, e.g. ultra-sonic singals
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/2163Partitioning the feature space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • G06V10/765Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects using rules for classification or partitioning the feature space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Electromagnetism (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Acoustics & Sound (AREA)
  • Computing Systems (AREA)
  • Optics & Photonics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

公开了一种用于构建用于移动机器人的地图的方法和设备。一种可以减少数据量并增加接近速度的构建用于移动机器人的方法和设备。所述方法包括:通过扫描移动机器人的周围环境来搜索占据任意空间的多条特征数据;对所述多条特征数据的第一特征数据执行四叉树分割以产生多条第一节点信息作为四叉树分割的结果;确定所述多条特征数据中的第二特征数据针对第一特征数据的位置;执行邻域移动算法,以通过使用所述多条第一节点信息来根据第二特征数据的位置产生第二特征数据的多条第二节点信息。

Description

用于构建用于移动机器人的地图的方法和设备
本申请要求于2013年5月7日在韩国知识产权局提交的第10-2013-0051497号韩国专利申请的优先权,该申请的公开通过引用整个包含于此。
技术领域
与示例性实施例一致的设备和方法涉及构建用于移动机器人的地图以减少数据量并增加接近速度。
背景技术
移动机器人应该不仅察觉在给定环境中的自身位置,还应在进入先前未探索过的新环境时构建周围环境的地图。构建用于移动机器人的地图的操作包括以下任务:识别附近障碍物或对象的位置、移动机器人可以自由移动的开阔空间等,以及按照适当的方法记录通过识别获得的信息。
构建用于移动机器人的地图的方法可被大致分类为二维(2D)基于网格环境地图构建方法和基于四叉树环境地图构建方法。基于网格环境地图构建方法允许机器人将周围环境分割为2D网格,并记录在机器人的当前位置的任意网格中是否存在障碍物。然而,基于网格环境地图构建方法的问题在于,由于随着移动机器人的行驶距离增加或者将移动到的空间的大小增加数据量也增加,因此需要大存储器容量。作为比较,由于基于四叉树环境地图构建方法通过将存在障碍物的区域分割为微小区域来将信息分配给节点,但是仅显示与表示不存在障碍物的区域的一个大空间的节点相关的信息,因此可有效地使用存储器。然而,由于基于四叉树环境地图构建方法不具有空间指数信息,因此需要长接近时间来接近任意节点,并且搜索存储的数据的位置是复杂的,因而基于四叉树环境地图构建方法不适合于路径计划。
发明内容
一个或多个示例性实施例提供用于构建用于移动机器人的地图的方法和设备,以减少数据量并增加接近速度从而移动机器人可以在广范围内操作。
根据示例性实施例的一方面,提供一种构建用于移动机器人的地图的方法,所述方法包括:通过扫描移动机器人的周围环境来搜索占据任意空间的多条特征数据;对所述多条特征数据的第一特征数据执行四叉树分割以产生多条第一节点信息;确定所述多条特征数据中的第二特征数据针对第一特征数据的位置;执行邻域移动算法,以通过使用所述多条第一节点信息来根据第二特征数据的位置产生第二特征数据的多条第二节点信息。
所述确定位置的步骤可包括:确定第二特征数据位于第一位置、第二位置、第三位置和第四位置中的一个位置,其中,第一位置、第二位置、第三位置和第四位置彼此成直角。
所述执行邻域移动算法的步骤可包括:执行第一邻域移动算法、第二邻域移动算法、第三邻域移动算法和第四邻域移动算法中的一个算法,以根据第二特征数据的确定的位置产生第二特征数据的多条第二节点信息。
执行第一邻域移动算法、第二邻域移动算法、第三邻域移动算法和第四邻域移动算法中的一个的步骤包括:响应于确定的位置是第一位置,执行第一邻域移动算法,以产生第二特征数据的多条第二节点信息;响应于确定的位置是第二位置,执行第二邻域移动算法,以产生第二特征数据的多条第二节点信息;响应于确定的位置是第三位置,执行第三邻域移动算法,以产生第二特征数据的多条第二节点信息;响应于确定的位置是第四位置,执行第四邻域移动算法,以产生第二特征数据的多条第二节点信息。
执行第一邻域移动算法、第二邻域移动算法、第三邻域移动算法和第四邻域移动算法中的一个的步骤可包括:确定第一特征数据的多条第一节点信息中的底节点是否包括与从第一特征数据到第二特征数据的确定的位置延伸的方向相反的确定方向。
执行第一邻域移动算法、第二邻域移动算法、第三邻域移动算法和第四邻域移动算法中的一个的步骤还可包括:响应于第一特征数据的多条第一节点信息中的底节点具有所述确定方向,产生第二特征数据的第一多条第二节点信息。
执行第一邻域移动算法、第二邻域移动算法、第三邻域移动算法和第四邻域移动算法中的一个的步骤还可包括:响应于第一特征数据的多条第一节点信息中的底节点具有从第一特征数据到第二特征数据的确定的位置的方向,产生第二特征数据的第二多条第二节点信息。
产生第二特征数据的第一多条第二节点信息的步骤可包括:将第一特征数据的多条第一节点信息中的底节点的确定方向改变为从第一特征数据到第二特征数据的确定的位置的方向;作为将第一节点信息的改变的底节点与第一节点信息的剩余节点组合的结果,产生第二特征数据的第一多条第二节点信息。
产生第二特征数据的第二多条第二节点信息的步骤可包括:将从第一特征数据到第一特征数据的多条第一节点信息中的底节点的第二特征数据的确定的位置的方向改变为所述确定方向并移动到底节点的父节点;将父节点的所述确定方向改变为从第一特征数据到第二特征数据的确定的位置的方向;作为将第一节点信息的改变的底节点和改变的父节点与第一节点信息的剩余节点组合的结果,产生第二特征数据的第二多条第二节点信息。
根据另一示例性实施例的一方面,提供一种用于构建用于移动机器人的地图的设备,所述设备包括:环境识别单元,被构造为通过扫描移动机器人的周围环境来搜索占据任意空间的多条特征数据;四叉树信息产生单元,被构造为对所述多条特征数据的第一特征数据执行四叉树分割以产生多条第一节点信息;搜索单元,被构造为确定所述多条特征数据中的第二特征数据针对第一特征数据的位置;邻域移动信息产生单元,被构造为执行邻域移动算法,用于通过使用所述多条第一节点信息来根据第二特征数据的位置产生第二特征数据的多条第二节点信息。
搜索单元可确定第二特征数据位于第一位置、第二位置、第三位置和第四位置中的一个位置,其中,第一位置、第二位置、第三位置和第四位置可以彼此成直角。
邻域移动信息产生单元可执行第一邻域移动算法、第二邻域移动算法、第三邻域移动算法和第四邻域移动算法中的一个算法,以根据第二特征数据的位置产生第二特征数据的多条第二节点信息。
邻域移动信息产生单元可执行以下操作:响应于确定的位置是第一位置,执行第一邻域移动算法,以产生第二特征数据的多条第二节点信息;响应于确定的位置是第二位置,执行第二邻域移动算法,以产生第二特征数据的多条第二节点信息;响应于确定的位置是第三位置,执行第三邻域移动算法,以产生第二特征数据的多条第二节点信息;响应于确定的位置是第四位置,执行第四邻域移动算法,以产生第二特征数据的多条第二节点信息。
邻域移动信息产生单元可确定第一特征数据的多条第一节点信息中的底节点是否包括与从第一特征数据到第二特征数据的确定的位置延伸的方向相反的确定方向。
邻域移动信息产生单元可响应于第一特征数据的多条第一节点信息中的底节点具有所述确定方向,产生第二特征数据的第一多条第二节点信息。
邻域移动信息产生单元可响应于第一特征数据的多条第一节点信息中的底节点具有从第一特征数据到第二特征数据的确定的位置的方向,产生第二特征数据的第二多条第二节点信息。
邻域移动信息产生单元可执行以下操作:将第一特征数据的多条第一节点信息中的底节点的确定方向改变为从第一特征数据到第二特征数据的确定的位置的方向;作为将第一节点信息的改变的底节点与第一节点信息的剩余节点组合的结果,产生第二特征数据的第一多条第二节点信息。
邻域移动信息产生单元可执行以下操作:将从第一特征数据到第一特征数据的多条第一节点信息中的底节点的第二特征数据的确定的位置的方向改变为所述确定方向并移动到底节点的父节点;将所述确定方向改变为从第一特征数据到第二特征数据的确定的位置的方向;作为将第一节点信息的改变的底节点和改变的父节点与第一节点信息的剩余节点组合的结果,产生第二特征数据的第二多条第二节点信息。
附图说明
通过参照附图详细描述本公开的示例性实施例,本公开的以上和/或其他特征和优点将变得更清楚,其中:
图1是根据示例性实施例的构建用于移动机器人的地图的设备的框图;
图2示出作为图1的移动机器人的环境识别的结果而获得的多条特征数据;
图3示出根据示例性实施例的设置的地图区域;
图4A和图4B示出根据示例性实施例的图1的第一特征数据的四叉树分割和第一节点信息的产生;
图5A至图8B示出根据示例性实施例的图1的第一邻域移动信息、第二邻域移动信息、第三邻域移动信息和第四邻域移动信息的产生;
图9是示出根据示例性实施例的构建用于移动机器人的地图的方法的流程图;
图10是示出根据示例性实施例的图9的邻域移动算法的操作的流程图;
图11至图14是分别示出根据示例性实施例的图10的第一邻域移动算法至第四邻域移动算法的操作的流程图。
具体实施方式
如在此所使用的,术语“和/或”包括一个或多个相关联列表项的任何和所有组合。
本发明构思可允许各种类型的改变或修改,并具有多个实施例,并且将在附图中示出特定的示例性实施例,并将在以下的详细描述中详细描述这些实施例。然而,应理解,特定的实施例不将本发明构思限制为特定的公开形式,而是包括在本发明构思的精神和技术范围中的各种修改、等同或者替代物。在以下的描述中,不会详细描述公知技术,以免用不必要的细节使示例性实施例模糊。
虽然诸如“第一”和“第二”的术语可被用于描述各种实施例,元素不会被术语限制。术语可被用于将特定元素与另一元素分类。
在本申请中使用的术语仅用于描述特定示例性实施例,而不具有任何限制本发明构思的目的。单数形式的表述包括复数形式的表述,除非在上下文中它们明显彼此不同。在本申请中,应理解诸如“包括”和“具有”的术语被用于指示实现的特征、数量、步骤、操作、元素、部件或者它们的组合的存在,而不是预先排除一个或多个其他的特征、数量、步骤、操作、元素、部件或者它们的组合的存在或添加的可能性。
可以以功能块和各种处理步骤来表示本发明构思。这些功能块可由用于执行特定功能的各种数量的硬件和/或软件构造来实现。例如,示例性实施例可采用在一个或多个处理器或其它控制装置的控制下执行各种功能的直接电路构造,诸如,存储器、处理逻辑、查找表。与能够利用软件编程或软件元件执行各种功能的示例性实施例的组件类似,可通过利用由数据结构、处理、线程或其它编程组件的组合实现的各种算法由编程或脚本语言(诸如C、C++、Java、汇编等)来实现示例性实施例。可利用在一个或多个处理器中执行的算法实现功能性方面。此外,示例性实施例可采用用于电子环境设置、信号处理和/或数据处理的现有技术。诸如“机械”、“元件”、“装置”和“构造”被广泛使用并且不限于机械或物理构造。术语可包括与处理器相关联的一系列软件线程的意义。
在本说明书中使用的术语“特征数据”指示占据任意空间的障碍物,该障碍物由移动机器人针对任意空间通过环境识别(传感器扫描或捕捉图像)来识别,并且特征数据可包括指示障碍物的位置信息或地址信息。此外,在本说明书中使用的“第一特征数据”指示由移动机器人发现的任意特征数据,并可包括例如由移动机器人第一次发现的特征数据。此外,“第二特征数据”可包括由移动机器人在发现第一特征数据之后发现的特征数据。
在本说明书中,“第一方向”可指示东,“第二方向”可指示西,“第三方向”可指示南,“第四方向”可指示北。
现在将参照附图详细描述示例性实施例。附图中的相同标号表示相同元件,因此将不再重复其描述。
图1是示出根据示例性实施例的用于构建用于移动机器人100的地图(如图2中所示)的设备10的框图。
参照图1,设备10包括在移动机器人100中,并可包括控制单元110、驱动单元120、用户接口单元130、存储单元140和地图构建单元150。
控制单元110包括微处理器(未示出)并控制设备10的总体操作。控制单元110通过配备有设备10的移动机器人100的位置识别来控制移动机器人100在任意空间Sa中沿任意方向的移动,通过收集根据移动机器人100的移动产生的数据来控制地图构建,并控制将产生的所有数据写入(存储)在存储单元140中或从存储单元140读取数据。
驱动单元120包括例如驱动电机(未示出)并移动配备有设备10的移动机器人100。具体地说,驱动单元120根据从控制单元110接收到的控制信号在任意空间Sa中移动移动机器人100。
用户接口单元130可接收开始点和目标点的坐标以使得移动机器人100移动,并且用户接口单元130还可接收用于使用户将工作命令输入移动机器人100的切换操纵信号或语音信号。此外,用户接口单元130可设置将被移动机器人100构建的地图的尺寸。地图可以是比例地图,其中,移动机器人100的实际行驶区域根据预定比例缩小,并且可通过用户接口单元130设置地图的尺寸。图2示出作为移动机器人100在任意空间Sa(例如,32Km长32Km宽)中行驶的同时获得的环境识别结果的多条特征数据。图3示出显示移动机器人100的实际行驶空间的设置的地图区域,其中,每个小格(cell)30的尺寸被设置为1Km长乘1Km宽。
地图构建单元150通过扫描移动机器人100的周围环境来搜索多条特征数据,并使用通过对发现的特征数据执行四叉树分割和邻域移动算法而产生的位置信息来构建地图。
在当前示例性实施例中,地图构建单元150可包括环境识别单元151、四叉树信息产生单元152、搜索单元153和邻域移动信息产生单元154。
环境识别单元151收集通过由移动机器人100在控制单元110的控制下使用距离测量传感器(未示出)扫描(也已知为执行环境识别)任意空间Sa而搜索到的多条特征数据,其中,距离测量传感器包括例如超声传感器、红外传感器、激光传感器等。此外,环境识别单元151收集在使用图像捕捉单元(未示出)捕捉到的图像中搜索到的多条特征数据,其中,图像捕捉单元包括例如相机、立体相机等。图2示出由标号1至12表示的多条特征数据,作为在移动机器人100在任意空间Sa中移动的同时获得的环境识别结果,并且移动机器人100可检测通过环境识别搜索到的多条特征数据的大致位置。
四叉树信息产生单元152通过对移动机器人100发现的多条特征数据中的第一特征数据执行四叉树分割来产生多条第一节点信息。例如,如果第一特征数据是图2中的1,则当对第一特征数据执行四叉树分割时,第一特征数据可如图3中所示。
作为四叉树分割的结果,在除了顶节点(也被称为ROOT(根))之外的包括第一特征数据的所有子节点中产生节点信息,并且每个节点信息包括第一方向(东:E)和第二方向(西:W)中的任何一个以及第三方向(南:S)和第四方向(北:N)中的任何一个。以下,为了描述的方便,由E表示第一方向,由W表示第二方向,由S表示第三方向,由N表示第四方向。
现在将描述图3中示出的第一特征数据“1”的四叉树分割。四叉树信息产生单元152在图3中设置的整个地图区域中从顶节点(ROOT)开始,并将整个地图区域分割为四个空间NW、NE、SW和SE作为第一父节点NP1,其中,第一特征数据位于第一父节点NP1的空间NW中。接下来,四叉树信息产生单元152将第一父节点NP1的空间NW分割为四个空间NW、NE、SW和SE作为第二父节点NP2,其中,第一特征数据位于第二父节点NP2的空间SW中。接下来,四叉树信息产生单元152将第二父节点NP2的空间SW分割为四个空间NW、NE、SW和SE作为第三父节点NP3,其中,第一特征数据位于第三父节点NP3的空间SE中。接下来,四叉树信息产生单元152将第三父节点NP3的空间SE分割为四个空间NW、NE、SW和SE作为第四父节点NP4,其中,第一特征数据位于第四父节点NP4的空间NW中。接下来,四叉树信息产生单元152将第四父节点NP4的空间NW分割为四个空间NW、NE、SW和SE,其中,第一特征数据位于指示底节点的空间NW中。如上所述,作为第一特征数据的四叉树分割的结果产生的多条第一节点信息是ROOT、NW、SW、SE、NW和NW。图4A示出第一特征数据的四叉树分割,图4B示出存储在存储单元140中的第一特征数据的多条第一节点信息。
搜索单元153针对第一特征数据的位置确定第二特征数据的位置。搜索单元153可确定由图2中的移动机器人100发现的多条特征数据中的最接近第一特征数据的第二特征数据或者在发现第一特征数据之后接续发现的第二特征数据的位置。搜索单元153可将第二特征数据的位置确定为针对第一特征数据的位置的第一位置至第四位置之一。这里,由于将在下面描述的邻域移动算法的操作根据由搜索单元153确定的第二特征数据针对第一特征数据的位置而不同,因此针对第一特征数据的位置确定是重要的。
在当前示例性实施例中,为了描述的方便,以图2中示出的顺序描述多条特征数据。参照图2,第二特征数据是“2”,第三特征数据是“3”,推而广之,第十二特征数据是“12”。如图2中所示,第二特征数据、第三特征数据和第四特征数据位于针对第一特征数据的第一位置,即,右侧。第五特征数据、第六特征数据和第七特征数据位于针对第四特征数据的第三位置,即,下侧。第八特征数据、第九特征数据和第十特征数据位于针对第七特征数据的第二位置,即,左侧。第十一特征数据和第十二特征数据位于针对第十特征数据的第四位置,即,上侧。
邻域移动信息产生单元154基于第一特征数据的多条第一节点信息,通过对第二特征数据的每个位置执行不同的邻域移动算法来产生第二特征数据的多条第二节点信息,其中,第二特征数据的每个位置由搜索单元153确定。
邻域移动算法是用于基于第一特征数据的多条第一节点信息产生第二特征数据的多条第二节点信息的算法。在现有技术中,由于对第一特征数据执行的相同四叉树分割需要被再次执行以产生第二特征数据的多条第二节点信息,因此需要长接近时间,并且位置确定复杂。然而,通过执行根据当前示例性实施例的邻域移动算法,可解决上述缺点。
此外,根据当前示例性实施例的邻域移动算法可被分类为第一邻域移动算法至第四邻域移动算法。响应于第二特征数据位于针对搜索单元153的确定结果的第一位置(即,右侧)而执行第一邻域移动算法;响应于第二特征数据位于针对搜索单元153的确定结果的第二位置(即,左侧)而执行第二邻域移动算法;响应于第二特征数据位于针对搜索单元153的确定结果的第三位置(即,下侧)而执行第三邻域移动算法;响应于第二特征数据位于针对搜索单元153的确定结果的第四位置(即,上侧)而执行第四邻域移动算法。
现在将描述在邻域移动信息产生单元154中通过执行第一邻域移动算法和第二邻域移动算法来产生第二特征数据的多条第二节点信息的处理。
首先,现在将参照图5A至图5C描述在邻域移动信息产生单元154中执行第一邻域移动算法的处理。
邻域移动信息产生单元154确定第一特征数据“1”的多条第一节点信息中的底节点NB是否包括W。参照图5A,由于第一特征数据“1”的底节点由NW指示,因此第一特征数据“1”的底节点NB包括W。在此情况下,邻域移动信息产生单元154将底节点NB中的W改变为E(①)并移动至父节点直到发现包括W的节点(②)。在图5A中,由于第四父节点NP4由NW指示并包括W,因此邻域移动信息产生单元154从底节点NB移动到第四父节点NP4,结束第一邻域移动算法,并作为将顶节点ROOT到第四父节点NP4的现有节点信息与改变的底节点NB信息组合的结果(③),产生第二特征数据“2”的多条第二节点信息。因此,产生的第二特征数据“2”的多条第二节点信息是ROOT、NW、SW、SE、NW和NE。如果即使在移动过父节点时邻域移动信息产生单元154也不能发现包括W的节点信息,即,如果W没有被包括在第四父节点NP4至顶节点ROOT中的任何节点中,则通过将从当前节点(顶节点ROOT)到改变的底节点NB的搜索结果设置为多条第二节点信息来完成搜索。由于通过排除改变的底节点NB而剩余的节点(第四父节点NP4至顶节点ROOT)已经被产生,因此快速完成对多条第二节点信息的搜索,从而花费的时间比现有技术的四叉树分割更少。
当完成第二特征数据“2”的多条第二节点信息的产生时,第二特征数据“2”变成第一特征数据,并且产生位于针对第一特征数据“2”的第一位置(即,右侧)的第二特征数据“3”的多条第二节点信息。邻域移动信息产生单元154确定第一特征数据“2”的多条第一节点信息中的底节点NB是否包括W,如果第一特征数据“2”的底节点NB不包括W,则邻域移动信息产生单元154确定第一特征数据“2”的底节点NB是否包括E。参照图5B,由于第一特征数据“2”的底节点信息是NE,因此第一特征数据“2”的底节点NB包括E。在此情况下,邻域移动信息产生单元154将底节点NB中的E改变为W并移动至父节点(①)。之后,邻域移动信息产生单元154确定父节点是否包括W。如果父节点包括W,则邻域移动信息产生单元154将W改为E(②)。之后,邻域移动信息产生单元154移动至父节点直到发现包括W的节点(③)。在图5B中,由于第二父节点NP2由SW指示并包括W,因此邻域移动信息产生单元154从底节点NB移动到第二父节点NP2。之后,邻域移动信息产生单元154结束第一邻域移动算法,并且作为将顶节点ROOT到第三父节点NP3的现有节点信息与改变的第四父节点信息(②)、改变的底节点信息组合的结果(④),产生第二特征数据“3”的多条第二节点信息。因此,产生的第二特征数据“3”的多条第二节点信息是ROOT、NW、SW、SE、NE和NW。如果即使在移动到父节点时邻域移动信息产生单元154也不能发现包括W的节点信息,即,如果W没有被包括在第三父节点NP3至顶节点ROOT中的任何节点中,则通过将从当前节点(顶节点ROOT)到改变的节点(底节点NB和第四父节点NP4)的搜索结果设置为多条第二节点信息来完成搜索。由于通过排除改变的底节点NB和改变的第四父节点NP4而剩余的节点(第三父节点NP3至顶节点ROOT)已经被产生,因此快速完成对多条第二节点信息的搜索,从而花费的时间比现有技术的四叉树分割更少。
当完成第二特征数据“3”的多条第二节点信息的产生时,第二特征数据“3”变成第一特征数据,并且产生位于针对第一特征数据“3”的第一位置(即,右侧)的第二特征数据“4”的多条第二节点信息。邻域移动信息产生单元154确定第一特征数据“3”的多条第一节点信息中的底节点NB是否包括W。参照图5C,由于第一特征数据“3”的底节点信息是NW,因此第一特征数据“3”的底节点NB包括W。在此情况下,邻域移动信息产生单元154将底节点NB中的W改变为E(①)并移动至父节点直到发现包括W的节点(②)。在图5C中,由于第二父节点NP2由SW指示并包括W,因此邻域移动信息产生单元154从底节点NB移动到第二父节点,结束第一邻域移动算法,并且作为将顶节点ROOT到第四父节点NP4的现有节点信息与改变的底节点信息组合的结果,产生第二特征数据“4”的多条第二节点信息(③)。因此,产生的第二特征数据“4”的多条第二节点信息是ROOT、NW、SW、SE、NE和NE。如果即使在移动过父节点时邻域移动信息产生单元154也不能发现包括W的节点信息,即,如果W没有被包括在第四父节点NP4至顶节点ROOT中的任何节点中,则通过将从当前节点(顶节点ROOT)到改变的底节点的搜索结果设置为多条第二节点信息来完成搜索。由于通过排除改变的底节点而剩余的节点(第四父节点NP4至顶节点ROOT)已经被产生,因此快速完成对多条第二节点信息的搜索,从而花费的时间比现有技术的四叉树分割更少。
如上所述,对于第一特征数据的多条第一节点信息中的底节点NB包括W的情况和底节点包括E的情况,可分别执行第一邻域移动算法。当底节点包括W时,通过仅将底节点中的W改变为E来产生第二特征数据的多条第二节点信息。同时,当底节点包括E时,通过将底节点中的E改变为W、移动到父节点并将父节点中的W改变为E,来产生第二特征数据的多条第二节点信息。
接下来,现在将参照图6A至图6C描述在邻域移动信息产生单元154中执行第二邻域移动算法的处理。
邻域移动信息产生单元154确定第一特征数据“7”的多条第一节点信息中的底节点NB是否包括E。参照图6A,由于第一特征数据“7”的底节点信息是SE,因此第一特征数据“7”的底节点包括E。在此情况下,邻域移动信息产生单元154将底节点NB中的E改变为W(①)并移动至父节点直到发现包括E的节点(②)。在图6A中,由于第四父节点NP4由SE指示并包括E,因此邻域移动信息产生单元154从底节点NB移动到第四父节点NP4,结束第二邻域移动算法,并且作为将顶节点ROOT到第四父节点NP4的现有节点信息与改变的底节点信息组合的结果(③),产生第二特征数据“8”的多条第二节点信息。因此,产生的第二特征数据“8”的多条第二节点信息是ROOT、NW、SW、SE、SE和SW。如果即使在移动到父节点时邻域移动信息产生单元154也不能发现包括E的节点信息,即,如果E没有被包括在第四父节点NP4至顶节点ROOT中的任何节点中,则通过将从当前节点(顶节点ROOT)到改变的底节点NB的搜索结果设置为多条第二节点信息来完成搜索。由于通过排除改变的底节点NB而剩余的节点(第四父节点NP4至顶节点ROOT)已经被产生,因此快速完成对多条第二节点信息的搜索,从而花费的时间比现有技术的四叉树分割更少。
当完成第二特征数据“8”的多条第二节点信息的产生时,第二特征数据“8”变成第一特征数据,并且产生位于针对第一特征数据“8”的第二位置(即,左侧)的第二特征数据“9”的多条第二节点信息。邻域移动信息产生单元154确定第一特征数据“8”的多条第一节点信息中的底节点NB是否包括E,如果第一特征数据“8”的底节点NB不包括E,则邻域移动信息产生单元154确定第一特征数据“8”的底节点NB是否包括W。参照图6B,由于第一特征数据“8”的底节点信息是SW,因此第一特征数据“8”的底节点NB包括W。在此情况下,邻域移动信息产生单元154将底节点NB中的W改变为E并移动至父节点(①)。之后,邻域移动信息产生单元154确定父节点是否包括E。如果父节点包括E,则邻域移动信息产生单元154将E改为W(②)。之后,邻域移动信息产生单元154移动至父节点直到发现包括E的节点(③)。在图6B中,由于第三父节点NP3由SE指示并包括E,因此邻域移动信息产生单元154从底节点NB移动到第三父节点NP3。之后,邻域移动信息产生单元154结束第二邻域移动算法,并且作为将顶节点ROOT到第三父节点NP3的现有节点信息与改变的第四父节点信息(②)、改变的底节点信息组合的结果(④),产生第二特征数据“9”的多条第二节点信息。因此,产生的第二特征数据“9”的多条第二节点信息是ROOT、NW、SW、SE、SW和SE。如果即使在移动到父节点时邻域移动信息产生单元154也不能发现包括E的节点信息,即,如果E没有被包括在第三父节点NP3至顶节点ROOT中的任何节点中,则通过将从当前节点(顶节点ROOT)到改变的节点(底节点NB和第四父节点NP4)的搜索结果设置为多条第二节点信息来完成搜索。由于通过排除改变的底节点NB和改变的第四父节点NP4而剩余的节点(第三父节点NP3至顶节点ROOT)已经被产生,因此快速完成对多条第二节点信息的搜索,从而花费的时间比现有技术的四叉树分割更少。
当完成第二特征数据“9”的多条第二节点信息的产生时,第二特征数据“9”变成第一特征数据,并且产生位于针对第一特征数据“9”的第二位置(即,左侧)的第二特征数据“10”的多条第二节点信息。邻域移动信息产生单元154确定第一特征数据“9”的多条第一节点信息中的底节点NB是否包括E。参照图6C,由于第一特征数据“9”的底节点信息是SE,因此第一特征数据“9”的底节点NB包括E。在此情况下,邻域移动信息产生单元154将底节点NB中的E改变为W(①)并移动至父节点直到发现包括E的节点(②)。在图6C中,由于第三父节点NP3由SE指示并包括E,因此邻域移动信息产生单元154从底节点NB移动到第三父节点,结束第二邻域移动算法,并且作为将顶节点ROOT到第四父节点NP4的现有节点信息与改变的底节点信息组合的结果(③),产生第二特征数据“10”的多条第二节点信息。因此,产生的第二特征数据“10”的多条第二节点信息是ROOT、NW、SW、SE、SW和SW。如果即使在移动过父节点时邻域移动信息产生单元154也不能发现包括E的节点信息,即,如果E没有被包括在第四父节点NP4至顶节点ROOT中的任何节点中,则通过将从当前节点(顶节点ROOT)到改变的底节点NB的搜索结果设置为多条第二节点信息来完成搜索。由于通过排除改变的底节点NB而剩余的节点(第四父节点NP4至顶节点ROOT)已经被产生,因此快速完成对多条第二节点信息的搜索,从而花费的时间比现有技术的四叉树分割更少。
如上所述,对于第一特征数据的多条第一节点信息中的底节点NB包括E的情况和底节点包括W的情况,可分别执行第二邻域移动算法。当底节点NB包括E时,仅通过将底节点中的E改变为W来产生第二特征数据的多条第二节点信息。同时,当底节点NB包括W时,通过将底节点NB中的W改变为E、移动到父节点并将父节点中的E改变为W,来产生第二特征数据的多条第二节点信息。
接下来,现在将参照图7A至图7C描述邻域移动信息产生单元154中执行第三邻域移动算法的处理。
邻域移动信息产生单元154确定第一特征数据“4”的多条第一节点信息中的底节点NB是否包括N。参照图7A,由于第一特征数据“4”的底节点信息是NE,因此第一特征数据“4”的底节点包括N。在此情况下,邻域移动信息产生单元154将底节点NB中的N改变为S(①)并移动至父节点直到发现包括N的节点(②)。在图7A中,由于第四父节点NP4由NE指示并包括N,因此邻域移动信息产生单元154从底节点NB移动到第四父节点NP4,结束第三邻域移动算法,并且作为将顶节点ROOT到第四父节点NP4的现有节点信息与改变的底节点信息组合的结果(③),产生第二特征数据“5”的多条第二节点信息。因此,产生的第二特征数据“5”的多条第二节点信息是ROOT、NW、SW、SE、NE和SE。如果即使在移动到父节点时邻域移动信息产生单元154也不能发现包括N的节点信息,即,如果N没有被包括在第四父节点NP4至顶节点ROOT中的任何节点中,则通过将从当前节点(顶节点ROOT)到改变的底节点NB的搜索结果设置为多条第二节点信息来完成搜索。由于通过排除改变的底节点NB而剩余的节点(第四父节点NP4至顶节点ROOT)已经被产生,因此快速完成对多条第二节点信息的搜索,从而花费的时间比传统的四叉树分割更少。
当完成第二特征数据“5”的多条第二节点信息的产生时,第二特征数据“5”变成第一特征数据,并且产生位于针对第一特征数据“5”的第三位置(即,下侧)的第二特征数据“6”的多条第二节点信息。邻域移动信息产生单元154确定第一特征数据“5”的多条第一节点信息中的底节点NB是否包括N,如果第一特征数据“5”的底节点NB不包括N,则邻域移动信息产生单元154确定第一特征数据“5”的底节点NB是否包括S。参照图7B,由于第一特征数据“5”的底节点信息是SE,因此第一特征数据“5”的底节点NB包括S。在此情况下,邻域移动信息产生单元154将底节点NB中的S改变为N并移动至父节点(①)。之后,邻域移动信息产生单元154确定父节点是否包括N。如果父节点包括N,则邻域移动信息产生单元154将N改为S(②)。之后,邻域移动信息产生单元154移动至父节点直到发现包括N的节点(③)。在图7B中,由于第一父节点NP1由NW指示并包括N,因此邻域移动信息产生单元154从底节点NB移动到第一父节点NP1。之后,邻域移动信息产生单元154结束第三邻域移动算法,并且作为将顶节点ROOT到第三父节点NP3的现有节点信息与改变的第四父节点信息(②)、改变的底节点信息组合的结果(④),产生第二特征数据“6”的多条第二节点信息。因此,产生的第二特征数据“6”的多条第二节点信息是ROOT、NW、SW、SE、SE和NE。如果即使在移动到父节点时邻域移动信息产生单元154也不能发现包括N的节点信息,即,如果N没有被包括在第三父节点至顶节点ROOT中的任何节点中,则通过将从当前节点(顶节点ROOT)到改变的节点(底节点NB和第四父节点NP4)的搜索结果设置为多条第二节点信息来完成搜索。由于通过排除改变的底节点NB和改变的第四父节点NP4而剩余的节点(第三父节点NP3至顶节点ROOT)已经被产生,因此快速完成对多条第二节点信息的搜索,从而花费的时间比现有技术的四叉树分割更少。
当完成第二特征数据“6”的多条第二节点信息的产生时,第二特征数据“6”变成第一特征数据,并且产生位于针对第一特征数据“6”的第三位置(即,下侧)的第二特征数据“7”的多条第二节点信息。邻域移动信息产生单元154确定第一特征数据“6”的多条第一节点信息中的底节点NB是否包括N。参照图7C,由于第一特征数据“6”的底节点信息是NE,因此第一特征数据“6”的底节点NB包括N。在此情况下,邻域移动信息产生单元154将底节点NB中的N改变为S(①)并移动至父节点直到发现包括N的节点(②)。在图7C中,由于第一父节点NP1由NE指示并包括N,因此邻域移动信息产生单元154从底节点NB移动到第一父节点,结束第三邻域移动算法,并且作为将顶节点ROOT到第四父节点NP4的现有节点信息与改变的底节点信息组合的结果(③),产生第二特征数据“7”的多条第二节点信息。因此,产生的第二特征数据“7”的多条第二节点信息是ROOT、NW、SW、SE、SE和SE。如果即使在移动过父节点时邻域移动信息产生单元154也不能发现包括N的节点信息,即,如果N没有被包括在第四父节点NP4至顶节点ROOT中的任何节点中,则通过将从当前节点(顶节点ROOT)到改变的底节点NB的搜索结果设置为多条第二节点信息来完成搜索。由于通过排除改变的底节点NB而剩余的节点(第四父节点NP4至顶节点ROOT)已经被产生,因此快速完成对多条第二节点信息的搜索,从而花费的时间比传统的四叉树分割更少。
如上所述,对于第一特征数据的多条第一节点信息中的底节点NB包括N的情况和底节点NB包括S的情况,可分别执行第三邻域移动算法。当底节点NB包括N时,仅通过将底节点NB中的N改变为S来产生第二特征数据的多条第二节点信息。同时,当底节点NB包括S时,通过将底节点NB中的S改变为N、移动到父节点并将父节点中的N改变为S,来产生第二特征数据的多条第二节点信息。
接下来,现在将参照图8A至图8B描述在邻域移动信息产生单元154中执行第四邻域移动算法的处理。
邻域移动信息产生单元154确定第一特征数据“10”的多条第一节点信息中的底节点NB是否包括S。参照图8A,由于第一特征数据“10”的底节点信息是SW,因此第一特征数据“10”的底节点包括S。在此情况下,邻域移动信息产生单元154将底节点NB中的S改变为N(①)并移动至父节点直到发现包括S的节点(②)。在图8A中,由于第四父节点NP4由SW指示并包括S,因此邻域移动信息产生单元154从底节点NB移动到第四父节点NP4,结束第四邻域移动算法,并且作为将顶节点ROOT到第四父节点NP4的现有节点信息与改变的底节点信息组合的结果(③),产生第二特征数据“11”的多条第二节点信息。因此,产生的第二特征数据“11”的多条第二节点信息是ROOT、NW、SW、SE、SW和NW。如果即使在移动到父节点时邻域移动信息产生单元154也不能发现包括S的节点信息,即,如果S没有被包括在第四父节点NP4至顶节点ROOT中的任何节点中,则通过将从当前节点(顶节点ROOT)到改变的底节点NB的搜索结果设置为多条第二节点信息来完成搜索。由于通过排除改变的底节点NB而剩余的节点(第四父节点NP4至顶节点ROOT)已经被产生,因此快速完成对多条第二节点信息的搜索,从而花费的时间比传统的四叉树分割更少。
当完成第二特征数据“11”的多条第二节点信息的产生时,第二特征数据“11”变成第一特征数据,并且产生位于针对第一特征数据“11”的第四位置(即,上侧)的第二特征数据“12”的多条第二节点信息。邻域移动信息产生单元154确定第一特征数据“11”的多条第一节点信息中的底节点NB是否包括S,如果第一特征数据“11”的底节点NB不包括S,则邻域移动信息产生单元154确定第一特征数据“11”的底节点NB是否包括N。参照图8B,由于第一特征数据“11”的底节点信息是NW,因此第一特征数据“11”的底节点NB包括N。在此情况下,邻域移动信息产生单元154将底节点NB中的N改变为S并移动至父节点(①)。之后,邻域移动信息产生单元154确定父节点是否包括S。如果父节点包括S,则邻域移动信息产生单元154将S改为N(②)。之后,邻域移动信息产生单元154移动至父节点直到发现包括S的节点(③)。在图8B中,由于第三父节点NP1由SE指示并包括S,因此邻域移动信息产生单元154从底节点NB移动到第三父节点。之后,邻域移动信息产生单元154结束第四邻域移动算法,并且作为将顶节点ROOT到第三父节点NP3的现有节点信息与改变的第四父节点信息(②)、改变的底节点信息组合的结果(④),产生第二特征数据“12”的多条第二节点信息。因此,产生的第二特征数据“12”的多条第二节点信息是ROOT、NW、SW、SE、NW和SW。如果即使在移动到父节点时邻域移动信息产生单元154也不能发现包括S的节点信息,即,如果S没有被包括在第三父节点NP3至顶节点ROOT中的任何节点中,则通过将从当前节点(顶节点ROOT)到改变的节点(底节点NB和第四父节点NP4)的搜索结果设置为多条第二节点信息来完成搜索。由于通过排除改变的底节点NB和改变的第四父节点NP4而剩余的节点(第三父节点NP3至顶节点ROOT)已经被产生,因此快速完成对多条第二节点信息的搜索,从而花费的时间比现有技术的四叉树分割更少。
如上所述,对于第一特征数据的多条第一节点信息中的底节点NB包括S的情况和底节点NB包括N的情况,可分别执行第四邻域移动算法。当底节点NB包括S时,仅通过将底节点NB中的S改变为N来产生第二特征数据的多条第二节点信息。同时,当底节点NB包括N时,通过将底节点NB中的N改变为S、移动到父节点并将父节点中的S改变为N,来产生第二特征数据的多条第二节点信息。
如上所述,地图构建单元150通过使用基于第一特征数据的第二特征数据的位置确定结果并使用第一特征数据的多条第一节点信息,来产生第二特征数据的多条第二节点信息,并通过使用多条第一节点信息和多条第二节点信息来构建地图。
现在将参照图9至图14描述根据示例性实施例的构建用于移动机器人100的方法。可由地图构建单元150与图1中示出的移动机器人100的其他组件一起执行该方法。在下面的描述中,将不重复参照图1至图8B的描述。
图9是示出根据示例性实施例的构建用于移动机器人100的地图的方法的流程图。
参照图9,在操作S100,地图构建单元150通过扫描移动机器人100的周围环境来搜索占据任意空间Sa的多条特征数据。地图构建单元150可通过由移动机器人100使用距离测量传感器扫描(也已知为执行环境识别)任意空间Sa来搜索多条特征数据,其中,距离测量传感器包括例如超声传感器、红外传感器、激光传感器等。此外,地图构建单元150可在使用图像捕捉单元(未示出)捕捉到的图像中搜索多条特征数据,其中,图像捕捉单元包括例如相机、立体相机等。地图构建单元150可检测通过执行的环境识别搜索到的多条特征数据的大致位置。
在完成多条特征数据的搜索之后,在操作S200,地图构建单元150对第一特征数据执行四叉树分割并产生多条第一节点信息作为四叉树分割的结果。作为四叉树分割的结果,在除了顶节点ROOT之外的包括第一特征数据的所有子节点中产生节点信息,并且每个节点信息包括S和N中的任何一个方向以及E和W中的任何一个方向。例如,参照图2和图3,作为第一特征数据“1”的四叉树分割的结果的多条第一节点信息是ROOT、NW、SW、SE、NW和NW。
在第一特征数据的多条第一节点信息的产生之后,在操作S300,地图构建单元150针对第一特征数据的位置确定第二特征数据的位置。地图构建单元150可确定由移动机器人100发现的多条特征数据中的最接近第一特征数据的第二特征数据的位置,或者确定在第一特征数据之后接续发现的第二特征数据。搜索单元153可将第二特征数据的位置确定为针对第一特征数据的位置的第一位置至第四位置(即,右侧、左侧、上侧和下侧)之一。这里,由于将在下面描述的邻域移动算法的操作根据搜索单元153搜索的第二特征数据的位置而不同,因此位置搜索是重要的。
在完成针对第一特征数据的位置确定第二特征数据的位置之后,在操作S400,地图构建单元150执行邻域移动算法,用于基于第一特征数据的多条第一节点信息来针对第二特征数据的每个发现的位置产生第二特征数据的多条第二节点信息。根据现有技术,由于对第一特征数据执行的相同四叉树分割需要被执行以产生第二特征数据的多条第二节点信息,因此需要长接近时间,并且位置搜索复杂。然而,通过执行根据当前示例性实施例的邻域移动算法,可解决上述缺点。
图10是示出图9的邻域移动算法的操作的流程图。
参照图10,在操作S410,当第二特征数据位于第一特征数据的第一位置(右侧)时,地图构建单元150执行第一邻域移动算法,用于使用第一特征数据的多条第一节点信息产生第一位置处的第二特征数据的多条第二节点信息。
在操作S420,当第二特征数据位于第一特征数据的第二位置(左侧)时,地图构建单元150执行第二邻域移动算法,用于使用第一特征数据的多条第一节点信息产生第二位置处的第二特征数据的多条第二节点信息。
在操作S430,当第二特征数据位于第一特征数据的第三位置(下侧)时,地图构建单元150执行第三邻域移动算法,用于使用第一特征数据的多条第一节点信息产生第三位置处的第二特征数据的多条第二节点信息。
在操作S440,当第二特征数据位于第一特征数据的第四位置(上侧)时,地图构建单元150执行第四邻域移动算法,用于使用第一特征数据的多条第一节点信息产生第二位置处的第二特征数据的多条第二节点信息。
第一邻域移动算法至第四邻域移动算法不必要按上述顺序执行,并且可根据第二特征数据的位置执行第一邻域移动算法至第四邻域移动算法中的任何一个。
图11是示出图10的第一邻域移动算法S410的操作的流程图。
参照图11,在操作S411,地图构建单元150确定第一特征数据的多条第一节点信息中的底节点NB是否包括第二方向(W)。
作为确定的结果,如果第一特征数据的多条第一节点信息中的底节点NB包括第二方向(W),则在操作S412,地图构建单元150将第二方向(W)改变为第一方向(E)。
当完成改变之后,在操作S413,地图构建单元150移动至父节点直到发现包括第二方向(W)的节点。
在操作S414,如果发现包括第二方向(W)的节点,则地图构建单元150结束第一邻域移动算法,并且作为将顶节点ROOT至第四父节点NP4的现有节点信息与改变的底节点信息组合的结果,产生第二特征数据的多条第二节点信息。
作为确定的结果,如果第一特征数据的多条第一节点信息中的底节点NB不包括第二方向(W),则地图构建单元150在操作S415确定第一特征数据的多条第一节点信息中的底节点NB是否包括第一方向(E)。
作为操作S415的确定的结果,如果第一特征数据的多条第一节点信息中的底节点NB包括第一方向(E),则在操作S416,地图构建单元150将第一方向(E)改变为第二方向(W)并移动到父节点。
在完成移动到父节点之后,在操作S417,地图构建单元150将包括第二方向(W)的父节点的第二方向(W)改变为第一方向(E)。
在完成操作S417的改变之后,在操作S418,地图构建单元150移动到父节点直到发现包括第二方向(W)的节点。
在操作S419,如果发现包括第二方向(W)的节点,则地图构建单元150结束第一邻域移动算法,并且作为将顶节点ROOT至第三父节点NP3的现有节点信息与改变的第四父节点信息、改变的底节点信息组合的结果,产生第二特征数据的多条第二节点信息。
如果即使执行了操作S413和S418也没有发现包括第二方向(W)的节点信息,则通过将直至当前的节点改变结果(仅改变底节点的结果或仅改变底节点NB和第四父节点NP4的结果)设置为多条第二节点信息来完成搜索。
如上所述,对于第一特征数据的多条第一节点信息中的底节点NB包括W的情况和底节点NB包括E的情况,可分别执行第一邻域移动算法。当底节点NB包括W时,仅通过将底节点中的W改变为E来产生第二特征数据的多条第二节点信息。同时,当底节点NB包括E时,通过将底节点NB中的E改变为W、移动到父节点并将父节点中的W改变为E,来产生第二特征数据的多条第二节点信息。
图12是示出图10的第二邻域移动算法的操作的流程图。
参照图12,在操作S421,地图构建单元150确定第一特征数据的多条第一节点信息中的底节点NB是否包括第一方向(E)。
作为确定的结果,如果第一特征数据的多条第一节点信息中的底节点NB包括第一方向(E),则在操作S422,地图构建单元150将第一方向(E)改变为第二方向(W)。
当完成改变之后,在操作S423,地图构建单元150移动至父节点直到发现包括第一方向(E)的节点。
在操作S424,如果发现包括第一方向(E)的节点,则地图构建单元150结束第二邻域移动算法,并且作为将顶节点ROOT至第四父节点NP4的现有节点信息与改变的底节点信息组合的结果,产生第二特征数据的多条第二节点信息。
作为确定的结果,如果第一特征数据的多条第一节点信息中的底节点NB不包括第一方向(E),则地图构建单元150在操作S425确定第一特征数据的多条第一节点信息中的底节点是否包括第二方向(W)。
作为操作S425的确定的结果,如果第一特征数据的多条第一节点信息中的底节点NB包括第二方向(W),则在操作S426,地图构建单元150将第二方向(W)改变为第一方向(E)并移动到父节点。
在完成移动到父节点之后,在操作S427,地图构建单元150将包括第一方向(E)的父节点的第一方向(E)改变为第二方向(W)。
在完成操作S427的改变之后,在操作S428,地图构建单元150移动到父节点直到发现包括第一方向(E)的节点。
在操作S429,如果发现包括第一方向(E)的节点,则地图构建单元150结束第二邻域移动算法,并且作为将顶节点ROOT至第三父节点NP3的现有节点信息与改变的第四父节点信息、改变的底节点信息组合的结果,产生第二特征数据的多条第二节点信息。
如果即使执行了操作S423和S428也没有发现包括第一方向(E)的节点信息,则通过将直至当前的节点改变结果(仅改变底节点NB的结果或仅改变底节点NB和第四父节点NP4的结果)设置为多条第二节点信息来完成搜索。
如上所述,对于第一特征数据的多条第一节点信息中的底节点NB包括E的情况和底节点NB包括W的情况,可分别执行第二邻域移动算法。当底节点NB包括E时,仅通过将底节点中的E改变为W来产生第二特征数据的多条第二节点信息。同时,当底节点NB包括W时,通过将底节点中的W改变为E、移动到父节点并将父节点中的E改变为W,来产生第二特征数据的多条第二节点信息。
图13是示出图10的第三邻域移动算法的操作的流程图。
参照图13,在操作S431,地图构建单元150确定第一特征数据的多条第一节点信息中的底节点NB是否包括第四方向(N)。
作为确定的结果,如果第一特征数据的多条第一节点信息中的底节点NB包括第四方向(N),则在操作S432,地图构建单元150将第四方向(N)改变为第三方向(S)。
当完成改变之后,在操作S433,地图构建单元150移动至父节点直到发现包括第四方向(N)的节点。
在操作S434,如果发现包括第四方向(N)的节点,则地图构建单元150结束第三邻域移动算法,并且作为将顶节点ROOT至第四父节点NP4的现有节点信息与改变的底节点信息组合的结果,产生第二特征数据的多条第二节点信息。
作为确定的结果,如果第一特征数据的多条第一节点信息中的底节点NB不包括第四方向(N),则地图构建单元150在操作S435确定第一特征数据的多条第一节点信息中的底节点是否包括第三方向(S)。
作为操作S435的确定的结果,如果第一特征数据的多条第一节点信息中的底节点NB包括第三方向(S),则在操作S436,地图构建单元150将第三方向(S)改变为第四方向(N)并移动到父节点。
在完成移动到父节点之后,在操作S437,地图构建单元150将包括第四方向(N)的父节点的第四方向(N)改变为第三方向(S)。
在完成操作S437的改变之后,在操作S438,地图构建单元150移动到父节点直到发现包括第四方向(N)的节点。
在操作S439,如果发现包括第四方向(N)的节点,则地图构建单元150结束第三邻域移动算法,并且作为将顶节点ROOT至第三父节点NP3的现有节点信息与改变的第四父节点信息、改变的底节点信息组合的结果,产生第二特征数据的多条第二节点信息。
如果即使执行了操作S433和S438也没有发现包括第四方向(N)的节点信息,则通过将直至当前的节点改变结果(仅改变底节点NB的结果或仅改变底节点NB和第四父节点NP4的结果)设置为多条第二节点信息来完成搜索。
如上所述,对于第一特征数据的多条第一节点信息中的底节点NB包括N的情况和底节点NB包括S的情况,可分别执行第三邻域移动算法。当底节点NB包括N时,仅通过将底节点中的N改变为S来产生第二特征数据的多条第二节点信息。同时,当底节点NB包括S时,通过将底节点NB中的S改变为N、移动到父节点并将父节点中的N改变为S,来产生第二特征数据的多条第二节点信息。
图14是示出图10的第四邻域移动算法的操作的流程图。
参照图14,在操作S441,地图构建单元150确定第一特征数据的多条第一节点信息中的底节点NB是否包括第三方向(S)。
作为确定的结果,如果第一特征数据的多条第一节点信息中的底节点NB包括第三方向(S),则在操作S442,地图构建单元150将第三方向(S)改变为第四方向(N)。
当完成改变之后,在操作S443,地图构建单元150移动至父节点直到发现包括第三方向(S)的节点。
在操作S444,如果发现包括第三方向(S)的节点,则地图构建单元150结束第四邻域移动算法,并且作为将顶节点ROOT至第四父节点NP4的现有节点信息与改变的底节点信息组合的结果,产生第二特征数据的多条第二节点信息。
作为确定的结果,如果第一特征数据的多条第一节点信息中的底节点NB不包括第三方向(S),则地图构建单元150在操作S445确定第一特征数据的多条第一节点信息中的底节点NB是否包括第四方向(N)。
作为操作S445的确定的结果,如果第一特征数据的多条第一节点信息中的底节点NB包括第四方向(N),则在操作S446,地图构建单元150将第四方向(N)改变为第三方向(S)并移动到父节点。
在完成移动到父节点之后,在操作S447,地图构建单元150将包括第三方向(S)的父节点的第三方向(S)改变为第四方向(N)。
在完成操作S447的改变之后,在操作S448,地图构建单元150移动到父节点直到发现包括第三方向(S)的节点。
在操作S449,如果发现包括第三方向(S)的节点,则地图构建单元150结束第四邻域移动算法,并且作为将顶节点ROOT至第三父节点NP3的现有节点信息与改变的第四父节点信息、改变的底节点信息组合的结果,产生第二特征数据的多条第二节点信息。
如果即使执行了操作S443和S448也没有发现包括第三方向(S)的节点信息,则通过将直至当前的节点改变结果(仅改变底节点NB的结果或仅改变底节点NB和第四父节点NP4的结果)设置为多条第二节点信息来完成搜索。
如上所述,对于第一特征数据的多条第一节点信息中的底节点NB包括S的情况和底节点NB包括N的情况,可分别执行第四邻域移动算法。当底节点NB包括S时,仅通过将底节点中的S改变为N来产生第二特征数据的多条第二节点信息。同时,当底节点NB包括N时,通过将底节点中的N改变为S、移动到父节点并将父节点中的S改变为N,来产生第二特征数据的多条第二节点信息。
返回参照图9,在操作S500,地图构建单元150通过使用第一特征数据的多条第一节点信息和第二特征数据的多条第二节点信息来构建地图。在当前示例性实施例中,第一特征数据和第二特征数据被定义为多条特征数据,并且使用从第一特征数据产生的多条第一节点信息和从第二特征数据产生的多条第二节点信息来构建地图。
如上所述,根据示例性实施例,可减少数据量,并可增加接近速度,从而移动机器人可在广范围操作。
本发明构思还可被实施为计算机可读记录介质上的计算机可读代码。计算机可读记录介质是可存储稍后可被计算机系统读取的数据的任何数据存储装置。计算机可读记录介质包括只读存储器(ROM)、随机存取存储器(RAM)、CD-ROM、磁带、软盘、光学数据存储装置和以载波形式实施的介质(例如,通过互联网的数据传输)。计算机可读记录介质还可被分布在联网的计算机系统上,从而计算机可读代码以分布方式被存储和执行。此外,用于完成本发明构思的功能程序、代码和代码段可由本领域程序员容易地构建。
尽管在上面已经具体示出和描述了示例性实施例,但是本领域的普通技术人员将理解,在不脱离由权利要求限定的本发明构思的精神的范围的情况下,可以对示例性实施例进行形式和细节的各种改变。示例性实施例应仅被视为描述性的意义,而不是限制的目的。因此,限定的本发明构思的范围不是由本公开的详细描述限定,而是由权利要求限定,并且在该范围内的所有不同将被解释为包括在示例性实施例中。

Claims (18)

1.一种构建用于移动机器人的地图的方法,所述方法包括:
通过扫描移动机器人的周围环境来搜索占据任意空间的多条特征数据;
对所述多条特征数据的第一特征数据执行四叉树分割以产生多条第一节点信息;
确定所述多条特征数据中的第二特征数据针对第一特征数据的位置;
执行邻域移动算法,以通过使用所述多条第一节点信息来根据第二特征数据的位置产生第二特征数据的多条第二节点信息。
2.如权利要求1所述的方法,其中,所述确定位置的步骤包括:确定第二特征数据位于第一位置、第二位置、第三位置和第四位置中的一个位置,其中,第一位置、第二位置、第三位置和第四位置彼此成直角。
3.如权利要求2所述的方法,其中,所述执行邻域移动算法的步骤包括:执行第一邻域移动算法、第二邻域移动算法、第三邻域移动算法和第四邻域移动算法中的一个算法,以根据第二特征数据的确定的位置产生第二特征数据的所述多条第二节点信息。
4.如权利要求3所述的方法,其中,执行第一邻域移动算法、第二邻域移动算法、第三邻域移动算法和第四邻域移动算法中的一个的步骤包括:
响应于确定的位置是第一位置,执行第一邻域移动算法,以产生第二特征数据的所述多条第二节点信息;
响应于确定的位置是第二位置,执行第二邻域移动算法,以产生第二特征数据的所述多条第二节点信息;
响应于确定的位置是第三位置,执行第三邻域移动算法,以产生第二特征数据的所述多条第二节点信息;
响应于确定的位置是第四位置,执行第四邻域移动算法,以产生第二特征数据的所述多条第二节点信息。
5.如权利要求3所述的方法,其中,执行第一邻域移动算法、第二邻域移动算法、第三邻域移动算法和第四邻域移动算法中的一个的步骤包括:确定第一特征数据的所述多条第一节点信息中的底节点是否包括与从第一特征数据到第二特征数据的确定的位置延伸的方向相反的确定方向。
6.如权利要求5所述的方法,其中,执行第一邻域移动算法、第二邻域移动算法、第三邻域移动算法和第四邻域移动算法中的一个的步骤还包括:响应于第一特征数据的所述多条第一节点信息中的底节点具有所述确定方向,产生第二特征数据的第一多条第二节点信息。
7.如权利要求6所述的方法,其中,执行第一邻域移动算法、第二邻域移动算法、第三邻域移动算法和第四邻域移动算法中的一个的步骤还包括:响应于第一特征数据的所述多条第一节点信息中的底节点具有从第一特征数据到第二特征数据的确定的位置的方向,产生第二特征数据的第二多条第二节点信息。
8.如权利要求7所述的方法,其中,产生第二特征数据的第一多条第二节点信息的步骤包括:
将第一特征数据的所述多条第一节点信息中的底节点的确定方向改变为从第一特征数据到第二特征数据的确定的位置的方向;
作为将第一节点信息的改变的底节点与第一节点信息的剩余节点组合的结果,产生第二特征数据的第一多条第二节点信息。
9.如权利要求7所述的方法,其中,产生第二特征数据的第二多条第二节点信息的步骤包括:
将从第一特征数据到第一特征数据的所述多条第一节点信息中的底节点的第二特征数据的确定的位置的方向改变为所述确定方向,并移动到底节点的父节点;
将父节点的所述确定方向改变为从第一特征数据到第二特征数据的确定的位置的方向;
作为将第一节点信息的改变的底节点和改变的父节点与第一节点信息的剩余节点组合的结果,产生第二特征数据的第二多条第二节点信息。
10.一种用于构建用于移动机器人的地图的设备,所述设备包括:
环境识别单元,被构造为通过扫描移动机器人的周围环境来搜索占据任意空间的多条特征数据;
四叉树信息产生单元,被构造为对所述多条特征数据的第一特征数据执行四叉树分割以产生多条第一节点信息;
搜索单元,被构造为确定所述多条特征数据中的第二特征数据针对第一特征数据的位置;
邻域移动信息产生单元,被构造为执行邻域移动算法,用于通过使用所述多条第一节点信息来根据第二特征数据的位置产生第二特征数据的多条第二节点信息。
11.如权利要求10所述的设备,其中,搜索单元确定第二特征数据位于第一位置、第二位置、第三位置和第四位置中的一个位置,其中,第一位置、第二位置、第三位置和第四位置彼此成直角。
12.如权利要求11所述的设备,其中,邻域移动信息产生单元执行第一邻域移动算法、第二邻域移动算法、第三邻域移动算法和第四邻域移动算法中的一个算法,用于根据第二特征数据的位置产生第二特征数据的所述多条第二节点信息。
13.如权利要求12所述的设备,其中,邻域移动信息产生单元执行以下操作:
响应于确定的位置是第一位置,执行第一邻域移动算法,以产生第二特征数据的所述多条第二节点信息;
响应于确定的位置是第二位置,执行第二邻域移动算法,以产生第二特征数据的所述多条第二节点信息;
响应于确定的位置是第三位置,执行第三邻域移动算法,以产生第二特征数据的所述多条第二节点信息;
响应于确定的位置是第四位置,执行第四邻域移动算法,以产生第二特征数据的所述多条第二节点信息。
14.如权利要求12所述的设备,其中,邻域移动信息产生单元确定第一特征数据的所述多条第一节点信息中的底节点是否包括与从第一特征数据到第二特征数据的确定的位置延伸的方向相反的确定方向。
15.如权利要求14所述的设备,其中,邻域移动信息产生单元响应于第一特征数据的所述多条第一节点信息中的底节点具有所述确定方向,产生第二特征数据的第一多条第二节点信息。
16.如权利要求15所述的设备,其中,邻域移动信息产生单元响应于第一特征数据的所述多条第一节点信息中的底节点具有从第一特征数据到第二特征数据的确定的位置的方向,产生第二特征数据的第二多条第二节点信息。
17.如权利要求16所述的设备,其中,邻域移动信息产生单元执行以下操作:
将第一特征数据的所述多条第一节点信息中的底节点的确定方向改变为从第一特征数据到第二特征数据的确定的位置的方向;
作为将第一节点信息的改变的底节点与第一节点信息的剩余节点组合的结果,产生第二特征数据的第一多条第二节点信息。
18.如权利要求16所述的设备,其中,邻域移动信息产生单元执行以下操作:
将从第一特征数据到第一特征数据的所述多条第一节点信息中的底节点的第二特征数据的确定的位置的方向改变为所述确定方向并移动到底节点的父节点;
将所述确定方向改变为从第一特征数据到第二特征数据的确定的位置的方向;
作为将第一节点信息的改变的底节点和改变的父节点与第一节点信息的剩余节点组合的结果,产生第二特征数据的第二多条第二节点信息。
CN201310700706.4A 2013-05-07 2013-12-18 用于构建用于移动机器人的地图的方法和设备 Expired - Fee Related CN104142971B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2013-0051497 2013-05-07
KR1020130051497A KR101883473B1 (ko) 2013-05-07 2013-05-07 이동로봇의 지도 작성 장치 및 방법

Publications (2)

Publication Number Publication Date
CN104142971A true CN104142971A (zh) 2014-11-12
CN104142971B CN104142971B (zh) 2018-12-21

Family

ID=51852145

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310700706.4A Expired - Fee Related CN104142971B (zh) 2013-05-07 2013-12-18 用于构建用于移动机器人的地图的方法和设备

Country Status (3)

Country Link
US (1) US9207678B2 (zh)
KR (1) KR101883473B1 (zh)
CN (1) CN104142971B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105427738A (zh) * 2015-11-10 2016-03-23 汕头大学 一种基于大气压的多层建筑物的地图构建方法
WO2021159901A1 (zh) * 2020-02-12 2021-08-19 华为技术有限公司 一种路径规划方法及相关设备
CN113420072A (zh) * 2021-06-24 2021-09-21 深圳前海微众银行股份有限公司 数据处理方法、装置、设备及存储介质
US11656082B1 (en) * 2017-10-17 2023-05-23 AI Incorporated Method for constructing a map while performing work

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9387588B1 (en) 2014-08-25 2016-07-12 Google Inc. Handling gait disturbances with asynchronous timing
US10081098B1 (en) 2014-08-25 2018-09-25 Boston Dynamics, Inc. Generalized coordinate surrogates for integrated estimation and control
US9618937B1 (en) 2014-08-25 2017-04-11 Google Inc. Slip detection using robotic limbs
US9446518B1 (en) * 2014-11-11 2016-09-20 Google Inc. Leg collision avoidance in a robotic device
US9499218B1 (en) 2014-12-30 2016-11-22 Google Inc. Mechanically-timed footsteps for a robotic device
CN105824310B (zh) * 2015-01-08 2018-10-19 江苏美的清洁电器股份有限公司 机器人的行走控制方法和机器人
US9594377B1 (en) * 2015-05-12 2017-03-14 Google Inc. Auto-height swing adjustment
US9586316B1 (en) 2015-09-15 2017-03-07 Google Inc. Determination of robotic step path
US9789919B1 (en) 2016-03-22 2017-10-17 Google Inc. Mitigating sensor noise in legged robots
US11697211B2 (en) 2017-06-30 2023-07-11 Lg Electronics Inc. Mobile robot operation method and mobile robot
TWI660275B (zh) * 2018-06-27 2019-05-21 廣達電腦股份有限公司 用於清潔裝置之任務區域分配方法、清潔裝置任務分配系統以及清潔裝置
TWI687191B (zh) * 2018-10-23 2020-03-11 廣達電腦股份有限公司 用於多個清潔裝置之任務區域分配方法以及其系統
CN109917791B (zh) * 2019-03-26 2022-12-06 深圳市锐曼智能装备有限公司 移动装置自动探索构建地图的方法
CN112370788A (zh) * 2020-11-11 2021-02-19 网易(杭州)网络有限公司 游戏中虚拟对象的导航方法及电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012106075A1 (en) * 2011-02-05 2012-08-09 Wifislam, Inc. Method and apparatus for mobile location determination

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5835684A (en) * 1994-11-09 1998-11-10 Amada Company, Ltd. Method for planning/controlling robot motion
US6728775B1 (en) * 1997-03-17 2004-04-27 Microsoft Corporation Multiple multicasting of multimedia streams
US7194134B2 (en) * 2001-01-02 2007-03-20 Microsoft Corporation Hierarchical, probabilistic, localized, semantic image classifier
JP2003266349A (ja) 2002-03-18 2003-09-24 Sony Corp 位置認識方法、その装置、そのプログラム、その記録媒体及び位置認識装置搭載型ロボット装置
KR100791386B1 (ko) 2006-08-18 2008-01-07 삼성전자주식회사 이동 로봇의 영역 분리 방법 및 장치
KR20080071228A (ko) * 2007-01-24 2008-08-04 팅크웨어(주) 지도 제공방법 및 지도 서비스 제공 시스템
KR100956663B1 (ko) * 2007-09-20 2010-05-10 한국과학기술연구원 로봇의 경로 설계 방법 및 그 로봇
KR100966477B1 (ko) * 2008-07-04 2010-06-29 팅크웨어(주) 3차원 지도 서비스를 위한 영역 사분 트리를 이용한 데이터캐시 방법 및 시스템
KR101126079B1 (ko) 2008-12-01 2012-03-29 에스케이플래닛 주식회사 광역 공간의 지역 지도 사이의 경로 생성 장치 및 방법
KR101037379B1 (ko) * 2008-12-18 2011-05-27 한국과학기술연구원 거리센서로부터 얻은 주변환경의 거리정보를 바탕으로 한 이동로봇탐사시스템 및 이를 이용한 탐사방법
KR20100070922A (ko) 2008-12-18 2010-06-28 한국전자통신연구원 위치 인식을 위한 격자 지도 작성 장치 및 그 방법
WO2012172721A1 (ja) * 2011-06-14 2012-12-20 パナソニック株式会社 ロボット装置、ロボット制御方法、及びロボット制御プログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012106075A1 (en) * 2011-02-05 2012-08-09 Wifislam, Inc. Method and apparatus for mobile location determination

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
张岑等: "基于四叉树的邻域查询技术", 《系统仿真学报》 *
赵慧等: "基于线性四叉树的快速邻域查询算法", 《计算机工程与设计》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105427738A (zh) * 2015-11-10 2016-03-23 汕头大学 一种基于大气压的多层建筑物的地图构建方法
US11656082B1 (en) * 2017-10-17 2023-05-23 AI Incorporated Method for constructing a map while performing work
WO2021159901A1 (zh) * 2020-02-12 2021-08-19 华为技术有限公司 一种路径规划方法及相关设备
CN113420072A (zh) * 2021-06-24 2021-09-21 深圳前海微众银行股份有限公司 数据处理方法、装置、设备及存储介质
CN113420072B (zh) * 2021-06-24 2024-04-05 深圳前海微众银行股份有限公司 数据处理方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN104142971B (zh) 2018-12-21
KR101883473B1 (ko) 2018-07-30
US20140334713A1 (en) 2014-11-13
US9207678B2 (en) 2015-12-08
KR20140132228A (ko) 2014-11-17

Similar Documents

Publication Publication Date Title
CN104142971A (zh) 用于构建用于移动机器人的地图的方法和设备
EP3672762B1 (en) Self-propelled robot path planning method, self-propelled robot and storage medium
CN107436148B (zh) 一种基于多地图的机器人导航方法及装置
US20210097103A1 (en) Method and system for automatically collecting and updating information about point of interest in real space
JP2009053849A (ja) 経路探索システム、経路探索方法、及び自律移動体
CN101676930A (zh) 一种识别扫描图像中表格单元的方法及装置
CN104964693B (zh) 具有改进的导航工具的地图应用
CN112090078B (zh) 游戏角色移动控制方法、装置、设备和介质
CN109542276B (zh) 一种触控点识别方法及装置和显示设备
CN109459048A (zh) 用于机器人的地图加载方法及设备
CN114343490B (zh) 机器人清扫方法、机器人及存储介质
KR20210004763A (ko) 직사각형 맵 분해 기반의 청소 로봇 장치 및 이를 이용한 커버리지 경로 계획 방법
JP2015001874A (ja) 情報処理装置、情報処理方法およびコンピュータ読み取り可能な記録媒体
KR101880168B1 (ko) 실시간 지도데이터 업데이트 방법
JP2007139931A (ja) ナビゲーション装置及び地図表示方法
JP2018132689A (ja) 地図データ、地図データ作成装置、地図データ作成プログラム、地図データ使用装置、地図データ使用プログラム
JP7093680B2 (ja) 構造物差分抽出装置、構造物差分抽出方法およびプログラム
CN114545923A (zh) 机器人的建图方法、电子设备及计算机存储介质
CN114815791A (zh) 可行驶空间规划方法及设备
KR102516813B1 (ko) 지도 상에서 경로를 제공하는 방법 및 장치
KR102664410B1 (ko) 다중 센서 및 인공지능에 기반하여 맵을 생성하고 맵을 이용하여 주행하는 로봇
JP4720805B2 (ja) 画像処理装置及びプログラム
JP5826368B2 (ja) 地図情報処理装置
JP6982954B2 (ja) マップマッチング処理装置、マップマッチング処理プログラム及び交通関連システム
Janarthanan et al. Implementation of Gamified Navigation and Location Mapping Using Augmented Reality

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: Gyeongnam Changwon City, South Korea

Applicant after: SAMSUNG TECHWIN CO., LTD.

Address before: Gyeongnam Changwon City, South Korea

Applicant before: Samsung Techwin Co., Ltd.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: SAMSUNG TAI KEWEI CO., LTD. TO: HANWHA TECHWIN CO., LTD.

Free format text: CORRECT: ADDRESS; FROM:

C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20171107

Address after: Gyeongnam Changwon City, South Korea

Applicant after: Korea lander Systems Inc

Address before: Gyeongnam Changwon City, South Korea

Applicant before: SAMSUNG TECHWIN CO., LTD.

GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: Gyeongnam Changwon City, South Korea

Patentee after: Hanhuadi Fos Co., Ltd.

Address before: Gyeongnam Changwon City, South Korea

Patentee before: Korea lander Systems Inc

CP01 Change in the name or title of a patent holder
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20181221

Termination date: 20191218

CF01 Termination of patent right due to non-payment of annual fee