CN103901885A - 信息处理方法和信息处理设备 - Google Patents
信息处理方法和信息处理设备 Download PDFInfo
- Publication number
- CN103901885A CN103901885A CN201210589700.XA CN201210589700A CN103901885A CN 103901885 A CN103901885 A CN 103901885A CN 201210589700 A CN201210589700 A CN 201210589700A CN 103901885 A CN103901885 A CN 103901885A
- Authority
- CN
- China
- Prior art keywords
- node
- scene
- historical
- characteristic information
- error range
- 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
Links
Images
Landscapes
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Manipulator (AREA)
Abstract
本发明公开了一种信息处理方法和设备,应用于可移动电子设备,所述可移动电子设备被用于未知环境的即时定位与地图构建。所述方法包括:获取一帧观测数据作为当前节点;计算所述当前节点的位置信息;确定所述当前节点的误差范围;判断在所述当前节点的误差范围中是否存在历史节点;以及如果在所述当前节点的误差范围中存在历史节点,则对所述当前节点和所述历史节点进行环路检测。因此,在本发明中,可以在更为准确地提供用于机器人路径的位置估计的同时,有效地检测机器人运动轨迹的环路闭合,从而对现有技术中的SLAM方法进行了充分优化。
Description
技术领域
本发明涉及计算机技术领域,更具体地,本发明涉及一种信息处理方法和信息处理设备。
背景技术
即时定位与地图构建(Simultaneous Localization and Mapping,SLAM)是目前在机器人定位方面的热门研究课题。所谓SLAM就是将可移动电子设备(例如,移动机器人)定位与环境地图创建融为一体,即机器人在运动过程中根据自身位姿估计和传感器对环境的感知构建增量式环境地图,同时利用该地图实现自身的定位。
现有技术中的SLAM方法主要包括扫描匹配(scan-matching)方法和特征匹配(feature-matching)方法两种。该扫描匹配方法往往应用于二维(2D)的SLAM方法中;而该特征匹配方法往往应用于三维(3D)的SLAM方法中,
在2D-SLAM的过程中,人们往往无法使用该特征匹配方法,这是由于在该2D-SLAM的过程中在一帧扫描数据中将获得极少量的扫描点,并且每一个扫描点的坐标点仅仅具有二维坐标(x,y),这将导致很难从这些扫描点中提取出可在后续特征匹配时使用的特征点,从而导致无法有效地完成特征匹配过程,进而难以准确地估计机器人在未知环境中的运动轨迹。相反地,该扫描匹配方法可以提供用于机器人路径的更为精确的位置估计,然而,它却难以有效地检测机器人运动轨迹的环路闭合(简称为闭环)。
在3D-SLAM的过程中,人们往往无法使用该扫描匹配方法,这是由于在3D-SLAM的过程中在一帧扫描数据中将获得极大量的扫描点,并且每一个扫描点的坐标点具有三维坐标(x,y,z),即比2D情况下多出一维坐标,这将导致使用该扫描匹配方法时,运算量巨大,占用系统资源过多,且速度缓慢,从而难以快速地检测到机器人运动轨迹中的环路闭合。相反地,该特征匹配方法可以很好地实现闭环检测,然而,它在机器人运动轨迹估计方面只能产生较差的结果。
因此,需要一种新型的信息处理方法和信息处理设备来解决上述问题。
发明内容
为了解决上述技术问题,根据本发明的一个方面,提供了一种信息处理方法,应用于可移动电子设备,所述可移动电子设备被用于未知环境的即时定位与地图构建,其特征在于,所述方法包括:获取一帧观测数据作为当前节点;计算所述当前节点的位置信息;确定所述当前节点的误差范围;判断在所述当前节点的误差范围中是否存在历史节点;以及如果在所述当前节点的误差范围中存在历史节点,则对所述当前节点和所述历史节点进行环路检测。
此外,根据本发明的另一方面,提供了一种信息处理设备,应用于可移动电子设备,所述可移动电子设备被用于未知环境的即时定位与地图构建,其特征在于,所述信息处理设备包括:节点获取单元,用于获取一帧观测数据作为当前节点;位置计算单元,用于计算所述当前节点的位置信息;误差确定单元,用于确定所述当前节点的误差范围;范围判断单元,用于判断在所述当前节点的误差范围中是否存在历史节点;以及环路检测单元,用于如果在所述当前节点的误差范围中存在历史节点,则对所述当前节点和所述历史节点进行环路检测。
与现有技术相比,采用根据本发明的信息处理方和信息处理设备,可以获取一帧观测数据作为当前节点,计算所述当前节点的位置信息和误差范围,并且当在所述当前节点的误差范围中存在历史节点时,对所述当前节点和所述历史节点进行环路检测。因此,在本发明中,可以在更为准确地提供用于机器人路径的位置估计的同时,有效地检测机器人运动轨迹的环路闭合,从而对现有技术中的SLAM方法进行了充分优化。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1图示了根据本发明的信息处理方法。
图2图示了根据本发明的第一引导设备。
图3图示了根据本发明第一实施例的信息处理方法。
图4图示了根据本发明第一实施例的信息处理设备。
图5图示了根据本发明实施例的可移动电子设备的运动轨迹。
图6图示了根据本发明第一实施例的节点和误差范围。
图7图示了根据本发明第二实施例的信息处理方法。
图8图示了根据本发明第二实施例的信息处理设备。
图9图示了根据本发明第二实施例的节点、场景和误差范围。
图10a图示了机器人的真实运动轨迹。
图10b图示了根据现有技术得到的运动轨迹。
图10c图示了根据本发明得到的运动轨迹。
具体实施方式
将参照附图详细描述根据本发明的各个实施例。这里,需要注意的是,在附图中,将相同的附图标记赋予基本上具有相同或类似结构和功能的组成部分,并且将省略关于它们的重复描述。
在下文中,将参考图1和2来描述根据本发明的信息处理方法和引导设备。
图1图示了根据本发明的信息处理方法,而图2图示了根据本发明的第一引导设备100。
所述信息处理方法应用于可移动电子设备,所述可移动电子设备被用于未知环境的即时定位与地图构建。并且,所述信息处理方法通过图2所图示的信息处理设备来实现。具体地,如图2所图示的,所述信息处理设备100包括:节点获取单元110、位置计算单元120、误差确定单元130、范围判断单元140和环路检测单元150。
如图1所图示的,所述信息处理方法包括:
在步骤S110中,节点获取单元110获取一帧观测数据作为当前节点;
在步骤S120中,位置计算单元120计算所述当前节点的位置信息;
在步骤S130中,误差确定单元130确定所述当前节点的误差范围;
在步骤S140中,范围判断单元140判断在所述当前节点的误差范围中是否存在历史节点;以及
在步骤S150中,如果在所述当前节点的误差范围中存在历史节点,则环路检测单元150对所述当前节点和所述历史节点进行环路检测。
由此可见,采用根据本发明的信息处理方和信息处理设备,可以获取一帧观测数据作为当前节点,计算所述当前节点的位置信息和误差范围,并且当在所述当前节点的误差范围中存在历史节点时,对所述当前节点和所述历史节点进行环路检测。因此,在本发明中,可以在更为准确地提供用于机器人路径的位置估计的同时,有效地检测机器人运动轨迹的环路闭合,从而对现有技术中的SLAM方法进行了充分优化。
在下文中,将参考图3和图4来描述根据本发明第一实施例的信息处理方法和信息处理设备。
图3图示了根据本发明第一实施例的信息处理方法,而图4图示了根据本发明第一实施例的信息处理设备100。
图3所图示的根据本发明第一实施例的信息处理方法可以应用于一个或多个可移动电子设备,所述可移动电子设备被用于在未知环境中进行运动,同时通过执行即时定位与地图构建(SLAM)来对自身进行快速定位并生成关于未知环境的准确地图数据。
所述信息处理方法可以通过图4所图示的信息处理设备100来实现。如图4所图示的,与图2中一样地,该信息处理设备100包括:节点获取单元110、位置计算单元120、误差确定单元130、范围判断单元140和环路检测单元150。此外,优选地,该信息处理设备100还可以包括:特征提取单元160和/或存储单元170。
例如,该信息处理设备100可以作为一个软件模块和/或硬件装置而集成到可移动电子设备中。这样,该可移动电子设备可以在本地快速地处理自身在未知环境中进行SLAM所获得的数据,从而在没有任何传送延迟的情况下进行快速定位并生成地图数据。
然而,由于该可移动电子设备在存储容量和计算性能方面受到限制,所以自开发式移动机器人在不丢弃其自身数据的情况下,不能在未知的、开放环境中长时间进行SLAM。考虑到上述问题,替换地,该信息处理设备100也可以作为一个软件模块和/或硬件装置而集成到一服务器中,该服务器通过有线和/或无线地方式与该可移动电子设备连接,用于接收可移动电子设备在未知环境中进行SLAM所获得的数据。所述数据至少包括以下数据中的一种或者多种:所述可移动电子设备的运动轨迹(例如,机器人的位置信息或坐标信息)、所述可移动电子设备的运动轨迹姿态(例如,机器人的朝向信息或角度信息)、当前已构建的地图信息(例如,关于未知环境部分区域的地图数据)。这样,该可移动电子设备可以将自身获取的数据传送到具有海量存储容量和高速计算速度的服务器,使得在服务器中完成机器人的定位和地图数据的生成,从而将在机器人中存储和计算的数据量保持到最小,使得机器人可以将系统资源有效地用于执行SLAM和躲避障碍物等操作。
在下文中,以将该信息处理设备100实现在服务器中为例来对本发明的实施例进行说明。然而,本发明不限于此。而是,还可以将信息处理设备100实现在可移动电子设备或其他各种设备中。
如图3所图示的,根据本发明第一实施例的信息处理方法包括:
在步骤S210中,获取一帧观测数据作为当前节点。
当需要利用可移动电子设备(例如,可移动的机器人Robot)来对一未知环境执行探索时,可以通过服务器预先地为Robot虚拟出一条无碰撞的最优路径,使得机器人可以根据该最优路径在未知环境中进行运动。替换地,该机器人也可以自主地在未知环境中进行运动,以对所在环境进行探测和理解。然后,该机器人在进行运动的同时,对该未知环境执行即时定位与地图构建(SLAM)。
随着移动机器人在未知环境中进行移动和拍摄,信息处理设备100在各个位置点获得通过执行SLAM操作所得到的数据。
图5图示了根据本发明实施例的可移动电子设备的运动轨迹,而图6图示了根据本发明第一实施例的节点和误差范围。
在本发明的第一实施例中,假设机器人在未知环境中采取圆形运动轨迹进行运动。如图5所图示的,机器人从起点位置1开始运动到位置2,再继续运动到位置3,如此继续,进而运动到位置12,并最终回到起点位置1,从而完成了圆形的运动轨迹。
需要注意的是,尽管在这里以圆形轨迹为例来对本发明实施例进行说明,但是本发明不限于此。而是,机器人可以采用任意的规则或不规则轨迹而在未知环境中进行运动。
在机器人的运动期间,它在各个位置点不断执行SLAM操作,并获得结果数据。然后,在该信息处理设备100中,节点获取单元110获取一帧观测数据作为当前节点。
具体地,以起点的位置1为例,机器人首先在位置1处执行SLAM操作。该节点获取单元110从机器人接收一帧观测数据,作为当前节点,即如图6所图示的节点1,例如,该帧观测数据可以通过在机器人上装备的激光传感器发射激光而得到的反射结果。在2D-SLAM的情况下,该帧观测数据将包括导致激光返回的每个扫描点的二维坐标(x,y)。在激光的发射角度是180度且每隔1度发射一束激光的情况下,节点获取单元110可以获取到180个扫描点的二维坐标,并且将其作为该节点1。
然后,存储单元170可以在存储器中存储当前节点,以供稍后使用。
在步骤S220中,计算当前节点的位置信息。
接下来,位置计算单元120从节点获取单元110接收该当前节点,并且计算所述当前节点的位置信息。
具体地,该位置计算单元120可以使用第一匹配方法,来对所述当前节点和所述当前节点的前一节点进行局部地图构建。例如,由于此时当前节点(即,节点1)是第一个节点,在它之前并不存在任何历史节点,所以该位置计算单元120可以使用迭代最近点(ICP)算法或极点扫描匹配(PSM)算法来对该当前节点进行局部地图构建,以获得该当前节点在未知环境中的坐标信息。如果假设第一位置是整个未知环境的原点位置,则该位置计算单元120可以得知该当前节点的坐标值是(0,0),或者更一般地是(x1,y1)。
在步骤S230中,从当前节点中提取特征信息。
在位置计算单元120计算出所述当前节点的位置信息之后,特征提取单元160从所述当前节点中提取特征信息。
具体地,该特征提取单元160可以从机器人获得的扫描点中提取其中包含的特征点集。该特征点集是指特征点的集合,即具有高区分度的点的集合。例如特征点可以是一个矩形平面的角点,或者一个灰色背景中的红色点等等。
在该特征提取单元160提取出特征信息之后,存储单元170可以存储该节点1的特征信息,并且将所存储的特征信息与之前存储的当前节点(即,节点1)建立联系,使得环路检测单元150能够得知在存储单元170中存储的每个节点都包括哪些特征信息。
在步骤S240中,确定当前节点的误差范围。
接下来,误差确定单元130确定所述当前节点的误差范围。
具体地,该误差确定单元130可以在该位置计算单元120使用例如扫描匹配方法来对该当前节点进行局部地图构建的同时,通过该扫描匹配方法的运算结果来计算当前节点(即,节点1)的方差和/或协方差。该方差和协方差可以指示出该位置计算单元120所计算得到的当前节点的坐标(x1,y1)与该当前节点在未知环境中的真实坐标之间的误差范围。
由于当前机器人处于其初始位置(即,位置1)处,所以一般情况下,该位置计算单元120所得到的该节点1的坐标信息往往并不存在任何误差,所以该误差确定单元130在对该节点1的误差范围进行确定之后,很可能得知该节点1的误差范围为0。
在步骤S250中,判断在当前节点的误差范围中是否存在历史节点。
在误差确定单元130确定所述当前节点的误差范围之后,该范围判断单元140判断在所述当前节点的误差范围中是否存在历史节点。如果在所述当前节点的误差范围中存在历史节点,则该范围判断单元140通知环路检测单元150对所述当前节点和所述历史节点进行环路检测。否则,该环路检测单元150不执行任何操作,并且根据本发明第一实施例的信息处理方法返回到步骤S210继续执行,直到机器人不再运动为止,也就是说,直到节点获取单元110无法获取到新的一帧观测数据为止。
具体地,由于此时当前节点(即,节点1)是机器人运动轨迹中的第一个节点,在它之前并不存在任何历史节点,所以该范围判断单元140必然判断在所述当前节点的误差范围中没有存在历史节点。
换言之,即使在当前节点之前存在一个或多个历史节点,但是由于此时该当前节点的误差范围是0,所以该范围判断单元140也必然判断在所述当前节点的误差范围中没有存在历史节点。
故此,如上所述,该范围判断单元140没有通知环路检测单元150进行环路检测,而是通知节点获取单元110继续获取下一帧观测数据。接下来,根据本发明第一实施例的信息处理方法返回到步骤S210继续执行。此时,机器人沿着自身的圆形轨迹继续运动,并且以一预定时间间隔、或在接收到扫描请求时,通过激光传感器继续获得在下一位置(即,位置2)的观测数据。
具体地,机器人在位置2处继续执行SLAM操作。该节点获取单元110在步骤S210中从机器人接收下一帧观测数据(例如,180个扫描点的二维坐标),作为当前节点,即如图6所图示的节点2,并且该存储单元170在存储器中存储该节点2。然后,该位置计算单元120在步骤S220中使用例如扫描匹配方法中的迭代最近点(ICP)算法来估计节点2与节点1之间的转移矩阵,确定在节点2中一定数目的扫描点,通过该转移矩阵来将节点2的坐标系下的这些扫描点转换到节点1的坐标系下,寻找在节点1中距离它们最近的扫描点,估计它们之间的误差,并再次确定一定数目的扫描点,重复上述过程,从而通过迭代的方式使得这个误差最小化,直到实现节点2与节点1之间的准确扫描对准为止,以获得该节点2在未知环境中的坐标信息(x2,y2)。
显然,该位置计算单元120也可以使用扫描匹配方法中的极点扫描匹配(PSM)算法来获得该节点2在未知环境中的坐标信息(x2,y2)。
接下来,该特征提取单元160在步骤S230中从节点2中提取其中包括的特征信息,并且存储单元170可以与节点2相关联地存储该节点2的特征信息。在步骤S240中,误差确定单元130通过计算节点2的方差和/或协方差,从而获得节点2的误差范围,例如,该节点2的误差范围在图6中通过节点2外围的虚线圆圈来示意性地表示。由于此时机器人已经离开自己的初始位置而到达未知环境中的一不确定位置,所以通过SLAM而计算得到的该机器人的坐标位置必须存在一定误差,并且该误差也将随着机器人的不断运动,计算的不断执行而逐渐累加。换言之,当前节点的误差范围必然大于历史节点中前面第一个节点的误差范围,而前面第一个节点的误差范围也必须大于历史节点中前面第二个节点的误差范围,并以此类推。然后,在步骤S250中,范围判断单元140判断在当前节点的误差范围中是否存在历史节点。如图6所图示的,该节点2虽然存在一定的误差,但是它的误差不是很大,显然,节点2的历史节点(即,节点1)并没有位于该误差范围内。因此,该范围判断单元140同样通知节点获取单元110继续获取下一帧观测数据。
如此类推,在根据本发明第一实施例的信息处理设备中,节点获取单元110、位置计算单元120、误差确定单元130、范围判断单元140、特征提取单元160和存储单元170继而对机器人在位置3到位置12的观测数据进行处理、存储和判断。如图6所图示的,在当前节点的误差范围中都没有存在历史节点。
最后,机器人重新回到初始位置1,并且执行SLAM操作。该节点获取单元110在步骤S210中从机器人接收下一帧观测数据(例如,180个扫描点的二维坐标),作为当前节点,即如图6所图示的节点13,并且该存储单元170在存储器中存储该节点13。然后,该位置计算单元120在步骤S220中使用例如扫描匹配方法中的迭代最近点(ICP)算法或极点扫描匹配(PSM)算法来获得节点13与节点12的准确扫描对准,以获得该节点13在未知环境中的坐标信息(x13,y13)。接下来,该特征提取单元160在步骤S230中从节点13中提取其中包括的特征信息,并且存储单元170可以与节点13相关联地存储该节点13的特征信息。在步骤S240中,误差确定单元130通过计算节点13的方差和/或协方差,从而获得节点13的误差范围,例如,该节点13的误差范围在图6中通过节点13外围的虚线圆圈来示意性地表示。如上所述,节点13的误差范围大于节点12的误差范围,并且其中包括有节点1。然后,在步骤S250中,范围判断单元140可以判断出在当前节点(即,节点13)的误差范围中存在历史节点(即,节点1),于是该范围判断单元140进一步通知环路检测单元150对节点13和节点1进行环路检测。
在步骤S260中,对当前节点和历史节点进行环路检测。
在接收到范围判断单元140的通知之后,环路检测单元150对所述当前节点和所述历史节点进行环路检测。
具体地,该环路检测单元150可以使用第一匹配方法,通过所述当前节点的特征信息和所述历史节点的特征信息,来对两者进行环路检测。例如,该环路检测单元150可以首先从存储单元170中读取在该节点13和节点1中包括的特征信息,并且使用例如特征匹配方法来对节点13中一定数目的特征点和节点1中一定数目的特征点进行匹配,寻找两者之间的特征点对的匹配,从而确定两者之间是否存在闭环。因此,该环路检测单元150最终可以发现节点13的位置坐标与节点1的位置坐标是相同的,并因而,在所绘制的未知环境的地图中将机器人的运动轨迹进行环路闭合。
由此可见,采用根据本发明第一实施例的信息处理方和信息处理设备,可以首先利用扫描匹配方法来计算出当前robot的位置和姿态信息,再提取扫描信息中的2D特征点,然后将每一帧观测数据看做图中的节点来构建地图,最后利用特征点对匹配的方法来寻找闭环。因此,在本发明的第一实施例中,可以在更为准确地提供用于机器人路径的位置估计的同时,有效地检测机器人运动轨迹的环路闭合,从而实现了一种有效闭环的2D-SLAM方法以用于机器人的精确定位。
需要说明的是,尽管在上文中以特定的顺序描述了根据本发明第一实施例的信息处理方法,但是本发明不限于此。例如,显然,步骤S230可以在步骤S220之前执行或者与之同时执行。同理,步骤S230可以在步骤S240之后执行或者与之同时执行。
在下文中,将参考图7和图8来描述根据本发明第二实施例的信息处理方法和信息处理设备。
图7图示了根据本发明第二实施例的信息处理方法,而图8图示了根据本发明第二实施例的信息处理设备100。
图7所图示的根据本发明第二实施例的信息处理方法可以通过图8所图示的信息处理设备100来实现。如图8所图示的,与图2中一样地,该信息处理设备100包括:节点获取单元110、位置计算单元120、误差确定单元130、范围判断单元140和环路检测单元150。此外,优选地,该信息处理设备100还可以包括:特征提取单元160、存储单元170、数目判断单元180、场景规约单元190、和/或误差修改单元200。
如图7所图示的,根据本发明第二实施例的信息处理方法包括:
在步骤S310中,获取一帧观测数据作为当前节点。
随着移动机器人在未知环境中进行移动和拍摄,信息处理设备100在各个位置点获得通过执行SLAM操作所得到的数据。
图5图示了根据本发明实施例的可移动电子设备的运动轨迹,而图9图示了根据本发明第二实施例的节点、场景和误差范围。
在本发明的第二实施例中,继续假设机器人在未知环境中采取如图5所图示的圆形运动轨迹进行运动。也就是说,如图5所图示的,机器人从起点位置1开始运动到位置2,再继续运动到位置3,如此继续,进而运动到位置12,并最终回到起点位置1,从而完成了圆形的运动轨迹。
首先,该节点获取单元110从处于未知环境中的机器人接收一帧观测数据,作为当前节点,即如图9所图示的节点1。
在步骤S320中,计算当前节点的位置信息。
接下来,位置计算单元120从节点获取单元110接收该当前节点,并且计算所述当前节点的位置信息。
在步骤S330中,从当前节点中提取特征信息。
在位置计算单元120计算出所述当前节点的位置信息之后,特征提取单元160从所述当前节点中提取特征信息。假设在当前节点1中包括的特征点的数目是10。
在步骤S340中,确定当前节点的误差范围。
接下来,误差确定单元130确定所述当前节点的误差范围。
需要说明的是,由于第二实施例中的步骤S310到S340与第一实施例中的步骤S210到S240相同,所以在此为了简洁而省略其详细描述。
在步骤S350中,将当前节点和所存储的历史节点规约为单一场景作为当前场景,并且确定当前场景的误差范围。
在特征提取单元160从所述当前节点中提取到特征信息之后,数目判断单元180判断所述当前节点的特征信息数目与所存储的历史节点的特征信息数目之和是否大于或等于阈值数目。如果所述当前节点的特征信息数目与所存储的历史节点的特征信息数目之和大于或等于所述阈值数目,则场景规约单元190将所述当前节点和所存储的历史节点规约为单一场景作为当前场景。如果所述当前节点的特征信息数目与所存储的历史节点的特征信息数目之和小于所述阈值数目,则存储单元170将所述当前节点添加存储到所存储的历史节点中,并且将所述当前节点的特征信息添加存储到所存储的历史节点的特征信息中,并同样与当前节点相关联地存储该当前节点的误差范围。然后,根据本发明第二实施例的信息处理方法返回到步骤S310继续执行,直到规约出单一场景为止。
具体地,数目判断单元180确定特征提取单元160从节点1中提取到的特征信息的数目,并且由于该节点1是第一个节点,在它之前并不存在任何历史节点,所以该数目判断单元180判断在节点1中包括的特征点的数目10是否达到阈值数目M。该M是在一个场景中需要包括的特征点的最小数目,以免由于特征点过少而导致最终所使用特征匹配算法失败。在此为了说明将该阈值数目M假设为100。
因此,该数目判断单元180可以判断出在节点1中包括的特征点的数目10小于阈值数目100,然后,它就通知存储单元170在存储器中存储节点1作为历史节点,并与该节点1相关联地存储在节点1中包括的特征信息以及节点1的误差范围,以供稍后使用。
故此,如上所述,该数目判断单元180没有通知场景规约单元190进行规约处理,而是通知节点获取单元110继续获取下一帧观测数据。接下来,根据本发明第二实施例的信息处理方法返回到步骤S310继续执行。此时,机器人沿着自身的圆形轨迹继续运动,并且以一预定时间间隔、或在接收到扫描请求时,通过激光传感器继续获得在下一位置(即,位置2)的观测数据。
具体地,机器人在位置2处继续执行SLAM操作。该节点获取单元110在步骤S310中从机器人接收下一帧观测数据(例如,180个扫描点的二维坐标),作为当前节点,即如图9所图示的节点2。然后,该位置计算单元120在步骤S320中使用例如扫描匹配方法中的迭代最近点(ICP)算法或极点扫描匹配(PSM)算法来获得该节点2在未知环境中的坐标信息(x2,y2)。接下来,该特征提取单元160在步骤S330中从节点2中提取其中包括的特征信息,假设在当前节点2中包括的特征点的数目是40。误差确定单元130在步骤S340中确定节点2的误差范围。在步骤S350中,数目判断单元180判断出特征提取单元160从节点2中提取到的特征点的数目40与所存储的历史节点(即,节点1)的特征点的数目10之和为50,仍然小于阈值数目100,因此,该数目判断单元180同样通知存储单元170在存储器中存储节点2作为历史节点,并与该节点2相关联地存储在节点2中包括的特征信息以及节点2的误差范围,并且通知节点获取单元110继续获取下一帧观测数据。
如此类推,在根据本发明第二实施例的信息处理设备中,节点获取单元110、位置计算单元120、误差确定单元130、特征提取单元160、存储单元170、和数目判断单元180继而对机器人在位置3的观测数据进行处理、存储和判断,假设在当前节点3中包括的特征点的数目是50。于是,在步骤S350中,数目判断单元180判断出特征提取单元160从节点3中提取到的特征点的数目50与所存储的历史节点(即,节点2和节点1)的特征点的数目之和为100,即已经达到阈值数目100。然后,它就通知场景规约单元190进行规约处理。
在该规约处理中,所述场景规约单元将所述当前节点和所存储的历史节点规约为单一场景作为当前场景,将所述历史节点中的第一个节点作为所述当前场景的根节点,将所述根节点的误差范围作为所述当前场景的误差范围,并且删除所存储的历史节点和所存储的历史节点的特征信息,并且所述场景规约单元滤除在所述当前节点的特征信息与所存储的历史节点的特征信息之间重复的特征信息,并且将剩余的特征信息作为所述当前场景的特征信息。
具体地,该场景规约单元190将当前节点(即,节点3)和在存储单元170中存储的历史节点(即,节点2和节点1)规约为单一场景,作为当前场景,即如图9所图示的场景1。然后,该场景规约单元190将在存储单元170中存储的所有历史节点(例如,节点2和节点1)中的第一个节点(即,节点1)作为场景1的根节点,将节点1的误差范围作为场景1的误差范围。
然后,该场景规约单元190对在当前节点(即,节点3)中包括的特征信息和在存储单元170中存储的历史节点(即,节点2和节点1)中包括的特征信息进行过滤,删除它们之中的重叠特征信息,并且将不包括任何冗余性的特征信息作为场景1的特征信息。然后,该存储单元170将场景1的特征信息与场景1相关联地存储到存储器中,使得环路检测单元150能够得知在存储单元170中存储的每个场景都包括哪些节点和哪些特征信息。
最后,该场景规约单元190通知存储单元170删除在其中所存储的历史节点(即,节点2和节点1)和它们的特征信息,以便释放存储器的空间,防止过多无用数据占用存储资源。
这样,场景规约单元190就生成了以下的场景1,即节点1作为根节点,节点1的误差范围作为其误差范围,并且包括有节点3到节点1中全部特征信息。
在步骤S360中,判断在当前场景的误差范围中是否存在历史场景。
在场景规约单元190确定所述当前场景的误差范围之后,该范围判断单元140判断在所述当前场景的误差范围中是否存在历史场景。该范围判断单元140获取历史场景,提取所述历史场景的根节点的位置信息,并且根据所述历史场景根节点的位置信息来判断所述历史场景是否存在于所述当前场景的误差范围中。如果在所述当前场景的误差范围中存在历史场景,则该范围判断单元140通知环路检测单元150对所述当前场景和所述历史场景进行环路检测。否则,该环路检测单元150不执行任何操作,并且根据本发明第二实施例的信息处理方法返回到步骤S310继续执行,直到机器人不再运动为止,也就是说,直到节点获取单元110无法获取到新的一帧观测数据为止。
具体地,由于此时当前场景(即,场景1)是机器人运动轨迹中的第一个场景,在它之前并不存在任何历史场景,所以该范围判断单元140必然判断在所述当前场景的误差范围中没有存在历史场景。
换言之,即使在当前场景之前存在一个或多个历史场景,但是由于此时该当前场景的误差范围是节点1的误差范围,即为0,所以该范围判断单元140也必然判断在所述当前场景的误差范围中没有存在历史场景。
故此,如上所述,该范围判断单元140没有通知环路检测单元150进行环路检测,而是通知节点获取单元110继续获取下一帧观测数据。接下来,根据本发明第二实施例的信息处理方法返回到步骤S310继续执行。
具体地,机器人在位置4到位置8处继续执行SLAM操作。节点获取单元110、位置计算单元120、误差确定单元130、特征提取单元160、存储单元170、和数目判断单元180继而对机器人在位置4到位置8的观测数据进行处理、存储和判断,假设在当前节点4到节点8中包括的特征点的数目分别是10、10、10、10和70。于是,在步骤S350中,数目判断单元180判断出特征提取单元160从节点8中提取到的特征点的数目70与所存储的历史节点(即,节点7、节点6、节点5和节点4)的特征点的数目之和为110,即已经超过阈值数目100。然后,它就通知场景规约单元190进行规约处理。场景规约单元190就生成了以下的场景2,即节点4作为根节点,节点4的误差范围作为其误差范围,并且包括有节点8到节点4中全部特征信息。然后,该存储单元170将场景2的特征信息和场景2中的所有节点与场景2相关联地存储到存储器中。接下来,在步骤S360中,范围判断单元140获取当前场景(即,场景2)的所有历史场景(即,场景1),提取场景1的根节点(即,节点1)的位置信息,根据节点1的位置信息来判断场景1是否存在于场景2的误差范围中。如图9所图示的,该场景2虽然存在一定的误差,但是它的误差不是很大,显然,场景2的历史场景(即,场景1)的根节点(节点1)并没有位于该误差范围内。因此,该范围判断单元140同样通知节点获取单元110继续获取下一帧观测数据。
如此类推,在根据本发明第二实施例的信息处理设备中,节点获取单元110、位置计算单元120、误差确定单元130、范围判断单元140、特征提取单元160、存储单元170、数目判断单元180和场景规约单元190继而对机器人在位置9到位置12的观测数据进行处理、存储和判断。场景规约单元190就生成了以下的场景3,即节点9作为根节点,节点9的误差范围作为其误差范围,并且包括有节点9到节点12中全部特征信息。然后,该存储单元170将场景3的特征信息和场景3中的所有节点与场景3相关联地存储到存储器中。如图9所图示的,在当前场景的误差范围中也没有存在历史场景。
最后,机器人重新回到初始位置1,并且执行SLAM操作。该节点获取单元110在步骤S310中从机器人接收下一帧观测数据(例如,180个扫描点的二维坐标),作为当前节点,即如图9所图示的节点13。然后,该位置计算单元120在步骤S320中使用例如扫描匹配方法中的迭代最近点(ICP)算法或极点扫描匹配(PSM)算法来获得节点13在未知环境中的坐标信息(x13,y13)。接下来,该特征提取单元160在步骤S330中从节点13中提取其中包括的特征信息,假设在当前节点2中包括的特征点的数目是140。误差确定单元130在步骤S340中通过计算节点13的方差和/或协方差,从而获得节点13的误差范围,例如,该节点13的误差范围在图9中通过节点13外围的虚线圆圈来示意性地表示。在步骤S350中,数目判断单元180判断出特征提取单元160从节点2中提取到的特征点的数目140已经超过阈值数目100。然后,它就通知场景规约单元190进行规约处理。这样,场景规约单元190就生成了以下的场景4,即节点13作为根节点,节点13的误差范围作为其误差范围,并且包括有节点13中全部特征信息。然后,该存储单元170将场景4的特征信息和场景4中的所有节点与场景4相关联地存储到存储器中。如图9所图示的,场景4的误差范围大于场景3的误差范围,并且其中包括有场景1。然后,在步骤S360中,范围判断单元140可以判断出在当前场景(即,场景4)的误差范围中存在历史场景(即,场景1),于是该范围判断单元140进一步通知环路检测单元150对场景4和场景1进行环路检测。
在步骤S370中,对当前场景和历史场景进行环路检测。
在接收到范围判断单元140的通知之后,环路检测单元150对所述当前场景和所述历史场景进行环路检测。
具体地,该环路检测单元150可以使用第一匹配方法,通过所述当前场景的特征信息和所述历史场景的特征信息,来对所述当前场景中的最后一个节点和所述历史场景中的第一个节点进行环路检测。例如,该环路检测单元150可以首先从存储单元170中读取在该场景4和场景1中包括的特征信息,并且使用例如特征匹配方法来对场景4中一定数目的特征点和场景1中一定数目的特征点进行匹配,寻找两者之间的特征点对的匹配,从而确定在场景4中的最后一个节点(即节点13)与场景1中的第一个节点(即,节点1)之间是否存在闭环。因此,该环路检测单元150最终可以发现节点13的位置坐标与节点1的位置坐标是相同的,并因而,在所绘制的未知环境的地图中将机器人的运动轨迹进行环路闭合。
当然,这种环路检测只有在两个节点的位置坐标完全相同或者非常接近的时候才会成功,也就是说,即使范围判断单元140判断出在当前场景的误差范围中存在历史场景,而如果所述当前场景中的最后一个节点和所述历史场景中的第一个节点之间根本没有存在环路,该环路检测单元150也将不会在两者之间进行环路闭合,即将得到正确的环路检测结果。
在步骤S380中,将当前场景的误差范围修改为历史场景的误差范围。
如果环路检测单元150在所述当前场景与所述历史场景之间成功地检测到环路,则误差修改单元200将所述当前场景的误差范围修改为所述历史场景的误差范围。
具体地,当环路检测单元150成功地在场景4中的最后一个节点(即节点13)与场景1中的第一个节点(即,节点1)之间发现环路之后,该误差修改单元200采用回溯算法来降低先前所计算的场景的误差范围。
在一个示例中,假设场景1的误差范围是0,场景2的误差范围是60,场景3的误差范围是90,而场景4的误差范围是100。那么,误差修改单元200可以将场景4的误差范围修改为场景1的误差范围,即0;将场景3的误差范围修改为场景4的误差范围与场景3的误差范围之差再加上场景4修改后的误差范围,即100-90+0=10;而将场景2的误差范围修改为场景3的误差范围与场景2的误差范围之差再加上场景3修改后的误差范围,即90-60+10=40。
在另一示例中,假设场景1的误差范围是0,场景2的误差范围是30,场景3的误差范围是90,而场景4的误差范围是100。那么,误差修改单元200可以将场景4的误差范围修改为场景1的误差范围,即0;将场景3的误差范围修改为场景4的误差范围与场景3的误差范围之差再加上场景4修改后的误差范围,即100-90+0=10;而将场景2的误差范围修改为场景3的误差范围与场景2的误差范围之差再加上场景3修改后的误差范围,即90-30+10=70。这时,由于场景2修改后的误差范围要大于场景2的原始误差范围,所以基于希望获得最小误差的目的,该误差修改单元200不再对场景2的误差进行修改。
显然,步骤S380同样也可以在本发明的第一实施例中执行,以使得如果环路检测单元150在节点13与节点1之间成功地检测到环路,则将节点13的误差范围修改为节点1的误差范围,即0。
由此可见,采用根据本发明第二实施例的信息处理方和信息处理设备,提出了一种基于场景(session)的融合扫描匹配和特征匹配的2D-SLAM方法。该方法首先利用扫描匹配方法来计算出当前robot的位姿,再提取扫描信息中的2D特征点,然后将连续的特征点统一规约到session中去,并把每一个session看成图中的节点来构建地图,最后利用特征点对匹配的方法来寻找闭环,并利用图优化算法来优化最后的robot位姿。因此,在本发明的第二实施例中,一方面,具有高度的可扩展性,使得能够基于图优化的算法可以结合2D-SLAM的一系列算法,另一方面,在大范围场景中,可以精确地对机器人进行定位,发现机器人轨迹中的环路,从而实现了一种对节点相关性几乎没有依赖的有效闭环的2D-SLAM方法以用于机器人精确定位。
需要说明的是,尽管在上文中以特定的顺序描述了根据本发明第二实施例的信息处理方法,但是本发明不限于此。例如,显然,步骤S330可以在步骤S320之前执行或者与之同时执行。同理,步骤S330可以在步骤S340之后执行或者与之同时执行。
下面,将参考图10a到图10c来说明根据现有技术的解决方案与根据本发明的信息处理方法所生成的运动轨迹的效果比对。
图10a图示了机器人的真实运动轨迹,图10b图示了根据现有技术得到的运动轨迹,而图10c图示了根据本发明得到的运动轨迹。
如图10a所图示,机器人在正圆形形状的未知环境中行进。该机器人按照时间顺序从起始点(如其中灰色椭圆形标记所图示的)移动到最终点(如其中黑色椭圆形标记所图示的)。
如图10b所图示,当只使用现有技术中的扫描匹配方法来对机器人的运动轨迹进行估计和绘制时,可以看出结果无法闭环,而且累计误差非常大。
如图10c所图示,当只使用根据本发明的基于session的融合扫描匹配和特征匹配的2D-SLAM方法来对机器人的运动轨迹进行估计和绘制时,可以看出所形成的路径和机器人的真实运动轨迹非常接近,而且实现了完美闭环。
此外,表1示出了根据现有技术的解决方案与根据本发明的信息处理方法所生成的误差范围的效果比对。
表1
从表1可以看出,只使用PSM的算法与机器人的真实运动轨迹(groundtruth)相比,平均误差在5.6m左右,方差为3.4m;而使用根据本发明的方法,平均误差在0.8m左右,方差在0.47m左右。
因此,根据图10a到10c以及表1,再次从实验和仿真数据中定量地说明了本发明所实现的有益效果,即可以快速精确地对机器人进行定位,并有效地发现机器人轨迹中的环路。
需要说明的是,尽管在本发明的上述实施例中将信息处理方法应用于提供关于机器人路径的位置估计和机器人运动轨迹的环路检测的过程中,但是,本发明不限于此。而是,还可以将本发明应用于其他的一个或多个电子设备(例如,个人计算机、平板电脑、移动电话、多媒体播放器、个人数字助理、超级本、智能电视等)之间的任何交互过程。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助于软件加必需的硬件平台的方式来实现,当然也可以全部通过软件、或硬件来实施。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁盘、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
在上面详细描述了本发明的各个实施例。然而,本领域技术人员应该理解,在不脱离本发明的原理和精神的情况下,可对这些实施例进行各种修改,组合或子组合,并且这样的修改应落入本发明的范围内。
Claims (20)
1.一种信息处理方法,应用于可移动电子设备,所述可移动电子设备被用于未知环境的即时定位与地图构建,其特征在于,所述方法包括:
获取一帧观测数据作为当前节点;
计算所述当前节点的位置信息;
确定所述当前节点的误差范围;
判断在所述当前节点的误差范围中是否存在历史节点;以及
如果在所述当前节点的误差范围中存在历史节点,则对所述当前节点和所述历史节点进行环路检测。
2.根据权利要求1的方法,其特征在于,所述方法还包括:
从所述当前节点中提取特征信息;
判断所述当前节点的特征信息数目与所存储的历史节点的特征信息数目之和是否大于或等于阈值数目;以及
如果所述当前节点的特征信息数目与所存储的历史节点的特征信息数目之和大于或等于所述阈值数目,则将所述当前节点和所存储的历史节点规约为单一场景作为当前场景,并且将所述当前节点的特征信息和所存储的历史节点的特征信息规约为所述当前场景的特征信息。
3.根据权利要求2的方法,其特征在于,所述将所述当前节点和所存储的历史节点规约为单一场景作为当前场景的步骤包括:
将所述历史节点中的第一个节点作为所述当前场景的根节点;
将所述根节点的误差范围作为所述当前场景的误差范围;以及
删除所存储的历史节点和所存储的历史节点的特征信息。
4.根据权利要求2的方法,其特征在于,所述将所述当前节点的特征信息和所存储的历史节点的特征信息规约为所述当前场景的特征信息的步骤包括:
滤除在所述当前节点的特征信息与所存储的历史节点的特征信息之间重复的特征信息;以及
将剩余的特征信息作为所述当前场景的特征信息。
5.根据权利要求2的方法,其特征在于,
所述判断在所述当前节点的误差范围中是否存在历史节点的步骤包括:
判断在所述当前场景的误差范围中是否存在历史场景,并且
所述如果在所述当前节点的误差范围中存在历史节点,则对所述当前节点和所述历史节点进行环路检测的步骤包括:
如果在所述当前场景的误差范围中存在历史场景,则对所述当前场景和所述历史场景进行环路检测。
6.根据权利要求5的方法,其特征在于,所述判断在所述当前场景的误差范围中是否存在历史场景的步骤包括:
获取历史场景;
提取所述历史场景的根节点的位置信息;以及
根据所述历史场景根节点的位置信息来判断所述历史场景是否存在于所述当前场景的误差范围中。
7.根据权利要求5的方法,其特征在于,所述对所述当前场景和所述历史场景进行环路检测的步骤包括:
使用第一匹配方法,通过所述当前场景的特征信息和所述历史场景的特征信息,来对所述当前场景中的最后一个节点和所述历史场景中的第一个节点进行环路检测。
8.根据权利要求2的方法,其特征在于,所述方法还包括:
如果所述当前节点的特征信息数目与所存储的历史节点的特征信息数目之和小于所述阈值数目,则将所述当前节点添加存储到所存储的历史节点中,并且将所述当前节点的特征信息添加存储到所存储的历史节点的特征信息中。
9.根据权利要求1的方法,其特征在于,所述计算所述当前节点的位置信息的步骤包括:
使用第二匹配方法来对所述当前节点和所述当前节点的前一节点进行局部地图构建。
10.根据权利要求1的方法,其特征在于,所述方法还包括:
如果在所述当前节点与所述历史节点之间成功地检测到环路,则将所述当前节点的误差范围修改为所述历史节点的误差范围。
11.一种信息处理设备,应用于可移动电子设备,所述可移动电子设备被用于未知环境的即时定位与地图构建,其特征在于,所述信息处理设备包括:
节点获取单元,用于获取一帧观测数据作为当前节点;
位置计算单元,用于计算所述当前节点的位置信息;
误差确定单元,用于确定所述当前节点的误差范围;
范围判断单元,用于判断在所述当前节点的误差范围中是否存在历史节点;以及
环路检测单元,用于如果在所述当前节点的误差范围中存在历史节点,则对所述当前节点和所述历史节点进行环路检测。
12.根据权利要求11的信息处理设备,其特征在于,所述信息处理设备还包括:
特征提取单元,用于从所述当前节点中提取特征信息;
数目判断单元,用于判断所述当前节点的特征信息数目与所存储的历史节点的特征信息数目之和是否大于或等于阈值数目;以及
场景规约单元,用于如果所述当前节点的特征信息数目与所存储的历史节点的特征信息数目之和大于或等于所述阈值数目,则将所述当前节点和所存储的历史节点规约为单一场景作为当前场景,并且将所述当前节点的特征信息和所存储的历史节点的特征信息规约为所述当前场景的特征信息。
13.根据权利要求12的信息处理设备,其特征在于,所述场景规约单元将所述历史节点中的第一个节点作为所述当前场景的根节点,将所述根节点的误差范围作为所述当前场景的误差范围,并且删除所存储的历史节点和所存储的历史节点的特征信息。
14.根据权利要求12的信息处理设备,其特征在于,所述场景规约单元滤除在所述当前节点的特征信息与所存储的历史节点的特征信息之间重复的特征信息,并且将剩余的特征信息作为所述当前场景的特征信息。
15.根据权利要求12的信息处理设备,其特征在于,
所述范围判断单元判断在所述当前场景的误差范围中是否存在历史场景,并且
如果在所述当前场景的误差范围中存在历史场景,则所述环路检测单元对所述当前场景和所述历史场景进行环路检测。
16.根据权利要求15的信息处理设备,其特征在于,所述范围判断单元获取历史场景,提取所述历史场景的根节点的位置信息,并且根据所述历史场景根节点的位置信息来判断所述历史场景是否存在于所述当前场景的误差范围中。
17.根据权利要求15的信息处理设备,其特征在于,所述环路检测单元使用第一匹配方法,通过所述当前场景的特征信息和所述历史场景的特征信息,来对所述当前场景中的最后一个节点和所述历史场景中的第一个节点进行环路检测。
18.根据权利要求12的信息处理设备,其特征在于,所述信息处理设备还包括:
存储单元,用于如果所述当前节点的特征信息数目与所存储的历史节点的特征信息数目之和小于所述阈值数目,则将所述当前节点添加存储到所存储的历史节点中,并且将所述当前节点的特征信息添加存储到所存储的历史节点的特征信息中。
19.根据权利要求11的信息处理设备,其特征在于,所述位置计算单元使用第二匹配方法来对所述当前节点和所述当前节点的前一节点进行局部地图构建。
20.根据权利要求11的信息处理设备,其特征在于,所述信息处理设备还包括:
误差修改单元,用于如果在所述当前节点与所述历史节点之间成功地检测到环路,则将所述当前节点的误差范围修改为所述历史节点的误差范围。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210589700.XA CN103901885B (zh) | 2012-12-28 | 2012-12-28 | 信息处理方法和信息处理设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210589700.XA CN103901885B (zh) | 2012-12-28 | 2012-12-28 | 信息处理方法和信息处理设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103901885A true CN103901885A (zh) | 2014-07-02 |
CN103901885B CN103901885B (zh) | 2016-10-05 |
Family
ID=50993273
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210589700.XA Active CN103901885B (zh) | 2012-12-28 | 2012-12-28 | 信息处理方法和信息处理设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103901885B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105527968A (zh) * | 2014-09-29 | 2016-04-27 | 联想(北京)有限公司 | 信息处理方法和信息处理装置 |
CN105653497A (zh) * | 2015-12-30 | 2016-06-08 | 深圳市图雅丽特种技术有限公司 | 基于图像识别和隐形喷码的自学习装置及自学习方法 |
CN106774312A (zh) * | 2016-12-05 | 2017-05-31 | 遨博(北京)智能科技有限公司 | 一种为移动机器人确定移动轨迹的方法和装置 |
CN108550318A (zh) * | 2018-03-12 | 2018-09-18 | 浙江大华技术股份有限公司 | 一种构建地图的方法及装置 |
CN110687903A (zh) * | 2018-06-19 | 2020-01-14 | 速感科技(北京)有限公司 | 可移动机器人受困判断方法、装置与运动控制方法、装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007303886A (ja) * | 2006-05-09 | 2007-11-22 | Sony Corp | 位置推定装置、位置推定方法及びプログラム記録媒体 |
JP2008304269A (ja) * | 2007-06-06 | 2008-12-18 | Sony Corp | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
CN101625572A (zh) * | 2009-08-10 | 2010-01-13 | 浙江大学 | 基于改进重采样方法和粒子选取的FastSLAM算法 |
JP2011043419A (ja) * | 2009-08-21 | 2011-03-03 | Sony Corp | 情報処理装置、および情報処理方法、並びにプログラム |
CN102706342A (zh) * | 2012-05-31 | 2012-10-03 | 重庆邮电大学 | 一种智能移动机器人的定位与环境建模方法 |
CN102831446A (zh) * | 2012-08-20 | 2012-12-19 | 南京邮电大学 | 单目视觉slam中基于图像外观的闭环检测方法 |
-
2012
- 2012-12-28 CN CN201210589700.XA patent/CN103901885B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007303886A (ja) * | 2006-05-09 | 2007-11-22 | Sony Corp | 位置推定装置、位置推定方法及びプログラム記録媒体 |
JP2008304269A (ja) * | 2007-06-06 | 2008-12-18 | Sony Corp | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
CN101625572A (zh) * | 2009-08-10 | 2010-01-13 | 浙江大学 | 基于改进重采样方法和粒子选取的FastSLAM算法 |
JP2011043419A (ja) * | 2009-08-21 | 2011-03-03 | Sony Corp | 情報処理装置、および情報処理方法、並びにプログラム |
CN102706342A (zh) * | 2012-05-31 | 2012-10-03 | 重庆邮电大学 | 一种智能移动机器人的定位与环境建模方法 |
CN102831446A (zh) * | 2012-08-20 | 2012-12-19 | 南京邮电大学 | 单目视觉slam中基于图像外观的闭环检测方法 |
Non-Patent Citations (3)
Title |
---|
李博: "基于场景外观建模的移动机器人视觉闭环检测研究", 《中国博士学位论文全文数据库信息科技辑》, 15 December 2011 (2011-12-15), pages 1 - 127 * |
温安邦,等: "基于扫描匹配预处理的即时定位与地图创建", 《计算机工程与应用》, vol. 33, no. 45, 31 December 2009 (2009-12-31), pages 245 - 248 * |
赵逢达,等: "一种基于图像匹配的闭环检测方法", 《燕山大学学报》, vol. 32, no. 2, 31 March 2008 (2008-03-31), pages 115 - 119 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105527968A (zh) * | 2014-09-29 | 2016-04-27 | 联想(北京)有限公司 | 信息处理方法和信息处理装置 |
CN105653497A (zh) * | 2015-12-30 | 2016-06-08 | 深圳市图雅丽特种技术有限公司 | 基于图像识别和隐形喷码的自学习装置及自学习方法 |
CN105653497B (zh) * | 2015-12-30 | 2019-08-23 | 深圳智尊保投资控股有限公司 | 基于图像识别和隐形喷码的自学习方法 |
CN106774312A (zh) * | 2016-12-05 | 2017-05-31 | 遨博(北京)智能科技有限公司 | 一种为移动机器人确定移动轨迹的方法和装置 |
CN108550318A (zh) * | 2018-03-12 | 2018-09-18 | 浙江大华技术股份有限公司 | 一种构建地图的方法及装置 |
CN110687903A (zh) * | 2018-06-19 | 2020-01-14 | 速感科技(北京)有限公司 | 可移动机器人受困判断方法、装置与运动控制方法、装置 |
CN110687903B (zh) * | 2018-06-19 | 2022-07-08 | 速感科技(北京)有限公司 | 可移动机器人受困判断方法、装置与运动控制方法、装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103901885B (zh) | 2016-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Shin et al. | Roarnet: A robust 3d object detection based on region approximation refinement | |
Huang et al. | ClusterVO: Clustering moving instances and estimating visual odometry for self and surroundings | |
JP7282080B2 (ja) | 二次元画像および点群データからの三次元境界ボックス | |
US10748061B2 (en) | Simultaneous localization and mapping with reinforcement learning | |
Choi et al. | Shared cross-modal trajectory prediction for autonomous driving | |
Davison | Real-time simultaneous localisation and mapping with a single camera | |
US9098766B2 (en) | Controlled human pose estimation from depth image streams | |
WO2018052875A1 (en) | Image depth prediction neural networks | |
Wang et al. | Pointloc: Deep pose regressor for lidar point cloud localization | |
CN105009120A (zh) | 基于客户端-服务器的动态搜索 | |
KR101347840B1 (ko) | 신체 제스처 인식 방법 및 장치 | |
CN103901885A (zh) | 信息处理方法和信息处理设备 | |
CN107885871A (zh) | 基于云计算的同步定位与地图构建方法、系统、交互系统 | |
Akkaladevi et al. | Tracking multiple rigid symmetric and non-symmetric objects in real-time using depth data | |
CN110942474B (zh) | 机器人目标跟踪方法、设备及存储介质 | |
WO2023087758A1 (zh) | 定位方法、定位装置、计算机可读存储介质和计算机程序产品 | |
JP2023535502A (ja) | 半教師付きキーポイントベースモデル | |
CN105527968A (zh) | 信息处理方法和信息处理装置 | |
Morrison et al. | Scalable multirobot localization and mapping with relative maps: Introducing MOARSLAM | |
CN103810718A (zh) | 一种剧烈运动目标检测方法和装置 | |
Zhou et al. | Mogde: Boosting mobile monocular 3d object detection with ground depth estimation | |
Zhong et al. | RSPT: reconstruct surroundings and predict trajectory for generalizable active object tracking | |
Zhu et al. | Binocular vision positioning method for safety monitoring of solitary elderly | |
CN112308917A (zh) | 一种基于视觉的移动机器人定位方法 | |
CN107767450B (zh) | 一种基于sparse-slam的实时建图方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |