Movatterモバイル変換


[0]ホーム

URL:


CN110333513A - A particle filter SLAM method fused with least squares - Google Patents

A particle filter SLAM method fused with least squares
Download PDF

Info

Publication number
CN110333513A
CN110333513ACN201910621086.2ACN201910621086ACN110333513ACN 110333513 ACN110333513 ACN 110333513ACN 201910621086 ACN201910621086 ACN 201910621086ACN 110333513 ACN110333513 ACN 110333513A
Authority
CN
China
Prior art keywords
thread
robot
map
particle
particle filter
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
CN201910621086.2A
Other languages
Chinese (zh)
Other versions
CN110333513B (en
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.)
SICHUAN ARTIGENT ROBOTICS EQUIPMENT Co Ltd
Electric Power Research Institute of State Grid Sichuan Electric Power Co Ltd
Original Assignee
SICHUAN ARTIGENT ROBOTICS EQUIPMENT Co Ltd
Electric Power Research Institute of State Grid Sichuan Electric Power 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 SICHUAN ARTIGENT ROBOTICS EQUIPMENT Co Ltd, Electric Power Research Institute of State Grid Sichuan Electric Power Co LtdfiledCriticalSICHUAN ARTIGENT ROBOTICS EQUIPMENT Co Ltd
Priority to CN201910621086.2ApriorityCriticalpatent/CN110333513B/en
Publication of CN110333513ApublicationCriticalpatent/CN110333513A/en
Application grantedgrantedCritical
Publication of CN110333513BpublicationCriticalpatent/CN110333513B/en
Activelegal-statusCriticalCurrent
Anticipated expirationlegal-statusCritical

Links

Classifications

Landscapes

Abstract

Translated fromChinese

本发明公开了一种融合最小二乘法的粒子滤波SLAM方法,涉及机器人即时定位与地图构建,解决了机器人在地图中的位置数据采样严重依赖里程计数据的问题。本发明包括线程Ⅰ和线程Ⅱ双线程执行以获取机器人在地图中的位置,由于线程Ⅱ所使用的粒子滤波算法耗时长,故在t‑1~t时间间隔内线程Ⅱ已经进行多次更新。线程Ⅱ内的最小二乘匹配算法的目的就是计算t‑1~t时间内的机器人相对移动位置,同时本申请使用了局部地图的方式,当线程Ⅰ内粒子滤波系统更新完成后局部地图重置。其核心在于每次迭代过程中,使用最小二乘匹配计算得到的机器人位置对粒子集进行扩充,当一次更新间隔内里程计误差较大时可以有效将部分粒子限制在真实分布附近。

The invention discloses a particle filter SLAM method fused with least squares method, which involves real-time robot positioning and map construction, and solves the problem that the robot's position data sampling in the map relies heavily on odometer data. The present invention includes thread I and thread II dual-thread execution to obtain the position of the robot in the map. Since the particle filter algorithm used by thread II takes a long time, thread II has been updated multiple times within the time interval of t-1 to t. The purpose of the least squares matching algorithm in thread II is to calculate the relative movement position of the robot within the time t-1~t. At the same time, this application uses the local map method. When the update of the particle filter system in thread I is completed, the local map is reset. . The core is that in each iteration process, the robot position calculated by least squares matching is used to expand the particle set. When the odometer error is large in an update interval, some particles can be effectively limited to the vicinity of the true distribution.

Description

Translated fromChinese
一种融合最小二乘法的粒子滤波SLAM方法A particle filter SLAM method fused with least squares

技术领域technical field

本发明涉及机器人即时定位与地图构建,具体涉及一种融合最小二乘法的粒子滤波SLAM方法。The invention relates to real-time robot positioning and map construction, in particular to a particle filter SLAM method fused with least squares method.

背景技术Background technique

我国为推进实施“科技兴安”战略,调动社会力量参与安全生产科技攻关,进一步强化防范遏制重特大事故科技保障能力,在重点行业领域开展“机械化换人、自动化减人”科技强安专项行动,重点是以机械化生产替换人工作业、以自动化控制减少人为操作,大力提高企业安全生产科技保障能力。In order to promote the implementation of the strategy of "prosperity through science and technology", mobilize social forces to participate in scientific and technological research on safety production, and further strengthen the scientific and technological support capability to prevent and contain major accidents, China has carried out the special action of "mechanized replacement of personnel and automated reduction of personnel" in key industries to strengthen safety through science and technology. The focus is to replace manual operations with mechanized production, reduce manual operations with automated control, and vigorously improve the scientific and technological support capabilities of enterprises for safe production.

在机器人的定位与地图构建中,通常情况下使用粒子滤波的SLAM算法可以得到一个较好的估计结果,但由于采样过程对里程计数据的严重依赖,导致当机器人里程计数据误差较大时,基于里程计的提议分布与目标分布严重不符,后续进行的扫描匹配,权值计算等步骤毫无意义。且由于粒子滤波系统本身的复杂度较高,当机器人移动速度过快,t-1至t时刻的时间段内机器人位置已经有了较大变化,而此时算法正在执行t-1时刻的估计过程,这种现象会使未知环境下的扫描匹配过程精度下降。目前广泛应用研究的SLAM系统大多专注于轮式移动机器人,且要求机器人自身携带定位传感器,如编码器,陀螺仪等,并由此计算得到机器人运动里程。但此类算法严重依赖里程计的精度,当地面有坑洼或轮子发生漂移时,里程计等传感器误差较大,极限情况下机器人实际位置并没有发生改变,但里程计数据已经显示机器人移动一段距离,这种情况不仅会使SLAM算法无法得到机器人的准确位置,创建的栅格地图也会发生撕裂、扭曲等现象。In the positioning and map construction of the robot, the SLAM algorithm of particle filtering can usually obtain a better estimation result. However, due to the heavy dependence on the odometry data in the sampling process, when the error of the odometry data of the robot is large, The proposed distribution based on odometer is seriously inconsistent with the target distribution, and the subsequent scan matching, weight calculation and other steps are meaningless. And due to the high complexity of the particle filter system itself, when the robot moves too fast, the robot position has changed greatly in the time period from t-1 to t, and the algorithm is executing the estimation at time t-1. This phenomenon will reduce the accuracy of the scan matching process in an unknown environment. At present, most of the SLAM systems that are widely used in research focus on wheeled mobile robots, and require the robot to carry positioning sensors, such as encoders, gyroscopes, etc., and calculate the mileage of the robot from this. However, this type of algorithm relies heavily on the accuracy of the odometer. When there are potholes on the ground or the wheels drift, the odometer and other sensors have large errors. In the extreme case, the actual position of the robot has not changed, but the odometer data has shown that the robot has moved for a period of time. Distance, this situation will not only make the SLAM algorithm unable to obtain the accurate position of the robot, but also the created grid map will be torn and distorted.

发明内容SUMMARY OF THE INVENTION

本发明目的在于提供一种融合最小二乘法的粒子滤波SLAM方法,该方法不需要过度依赖里程计数据作为估计初值,本申请解决的技术问题为:机器人在地图中的位置数据采样严重依赖里程计数据。The purpose of the present invention is to provide a particle filter SLAM method fused with the least squares method, which does not need to rely excessively on odometer data as an estimated initial value. count data.

本发明通过下述技术方案实现:The present invention is achieved through the following technical solutions:

一种融合最小二乘法的粒子滤波SLAM方法,包括线程Ⅰ和线程Ⅱ,所述线程Ⅰ为采用粒子滤波获取机器人在地图中的位置,线程Ⅱ为采用最小二乘匹配获取机器人在地图中的位置,具体步骤包括:A particle filter SLAM method fused with least squares method, including thread I and thread II, the thread I uses particle filtering to obtain the position of a robot in the map, and thread II uses least squares matching to obtain the position of the robot in the map , the specific steps include:

步骤1,t=0时,线程Ⅰ和线程Ⅱ同时获取雷达数据得到机器人在地图中的初始位置,此后,机器人开始移动;Step 1, when t=0, thread I and thread II acquire radar data at the same time to obtain the initial position of the robot in the map, after which the robot starts to move;

步骤2,当机器人移动距离超过设定阈值时,进入t=1时刻,线程Ⅰ中粒子滤波算法使用里程计运动模型对粒子进行采样得到的样本代替地图内机器人位置,并根据权值对粒子进行排序;Step 2: When the moving distance of the robot exceeds the set threshold, it enters time t=1. The particle filter algorithm in thread I uses the odometer motion model to sample the particles to replace the robot position in the map, and the particles are processed according to the weights. sort;

步骤3,在t=0~t-1时间段内,线程Ⅱ同步获取雷达数据得到机器人位置x1′,则可得到粒子集内权值最大的N个粒子,使用最小二乘法对x1′采样得到的样本代替t=0~t-1时间段内机器人位置即对局部地图重置,得到扩充后的粒子集,粒子集内粒子的总数变为M+N;Step 3: During the time period from t=0 to t-1, thread II obtains the radar data synchronously to obtain the robot position x1 ′, then the N particles with the largest weights in the particle set can be obtained, and the least squares method is used to compare x1 ′ The sample obtained by sampling replaces the robot position in the time period of t=0~t-1, that is, the local map is reset, and the expanded particle set is obtained, and the total number of particles in the particle set becomes M+N;

步骤4,线程Ⅱ对粒子集进行扫描匹配、权值计算、重采样完成更新,其中权值最大的粒子代表的机器人在地图中的位置,即代表机器人此时的位置与环境地图数据;Step 4: Thread II performs scan matching, weight calculation, and re-sampling on the particle set to complete the update. The position of the robot in the map represented by the particle with the largest weight value represents the robot's current position and environmental map data;

步骤5,线程Ⅱ对粒子集进行排序,舍弃权值较小的N个粒子,粒子总数变为M,由于线程Ⅰ在t=1时刻地图内机器人位置更新已经完成,线程Ⅱ内对局部地图重置,待下一个t=2时刻到来时继续执行步骤2~5,则线程Ⅰ的一个更新时刻内线程Ⅱ会进行多次更新。Step 5: Thread II sorts the particle set, discards N particles with smaller weights, and the total number of particles becomes M. Since thread I has completed the update of the robot position in the map at time t=1, thread II rewrites the local map. When the next time t=2 comes, continue to execute steps 2 to 5, then thread II will update multiple times within one update time of thread I.

通过长期的研究和实践,本申请的发明人发现,在机器人的定位与地图构建中,由于数据机器人移动位置采样过程对里程计数据的严重依赖,当地面有坑洼或轮子发生漂移时,里程计等传感器误差较大,极限情况下机器人实际位置并没有发生改变,但里程计数据已经显示机器人移动一段距离,这种情况不仅会使SLAM算法无法得到机器人的准确位置,创建的栅格地图也会发生撕裂、扭曲等现象。本申请提供一种融合最小二乘法的粒子滤波SLAM方法,包括线程Ⅰ和线程Ⅱ双线程执行以获取机器人在地图中的位置,由于线程Ⅱ所使用的粒子滤波算法耗时长,故在t-1~t时间间隔内线程Ⅱ已经进行多次更新。线程Ⅱ内的最小二乘匹配算法的目的就是计算t-1~t时间内的机器人相对移动位置,同时本申请使用了局部地图的方式,当线程Ⅰ内粒子滤波系统更新完成后局部地图重置。其核心在于每次迭代过程中,使用最小二乘匹配计算得到的机器人位置对粒子集进行扩充,当一次更新间隔内里程计误差较大时可以有效将部分粒子限制在真实分布附近。Through long-term research and practice, the inventor of the present application found that in the positioning and map construction of the robot, due to the heavy dependence on the odometer data in the sampling process of the data robot's moving position, when there are potholes on the ground or the wheels drift, the mileage The error of sensors such as the meter is large, and the actual position of the robot has not changed in the extreme case, but the odometer data has shown that the robot has moved a certain distance. This situation not only makes the SLAM algorithm unable to obtain the accurate position of the robot, but also creates a grid map. Tear, twist, etc. will occur. The present application provides a particle filter SLAM method fused with the least squares method, including thread I and thread II dual-thread execution to obtain the position of the robot in the map. Since the particle filter algorithm used by thread II takes a long time, it needs to be executed at t-1 Thread II has been updated multiple times within the ~t time interval. The purpose of the least squares matching algorithm in thread II is to calculate the relative movement position of the robot within the time period of t-1 to t. At the same time, this application uses the local map method. When the update of the particle filter system in thread I is completed, the local map is reset. . The core is that in each iteration process, the robot position calculated by least squares matching is used to expand the particle set. When the odometer error is large in an update interval, some particles can be effectively limited to the vicinity of the true distribution.

进一步的,所述线程Ⅰ对机器人位置进行初始化的方式包括:默认初始机器人位姿向量为(0,0,0)T,采用ROS、Gazebo和RVIZ的三维仿真环境,并使用Gazebo中的激光雷达模拟获取虚拟激光数据,根据第一帧激光数据初始化环境地图。Further, the method of initializing the position of the robot by the thread I includes: the default initial robot pose vector is (0,0,0)T , using the three-dimensional simulation environment of ROS, Gazebo and RVIZ, and using the lidar in Gazebo Simulate the acquisition of virtual laser data, and initialize the environment map according to the first frame of laser data.

进一步的,所述扫描匹配采用基于可能性区域模型的扫描匹配算法。Further, the scan matching adopts a scan matching algorithm based on a possible region model.

进一步的,所述权值计算与重采样包括第m个粒子的权值计算方式如下式3-22所示:Further, the weight calculation and resampling include the weight calculation method of the mth particle as shown in the following formula 3-22:

其中,为机器人观测概率值;所述重采样采用自适应重采样技术决定重采样步骤何时发生,如下式3-23所示:in, is the robot observation probability value; the resampling adopts adaptive resampling technology to determine when the resampling step occurs, as shown in the following formula 3-23:

其中Neff又被称为有效粒子数,当Neff值小于某一给定阈值时进行重采样步骤,否则在权值计算完成后直接进行下一次算法迭代。Among them, Neff is also called the effective number of particles. When the Neff value is less than a given threshold, the resampling step is performed, otherwise, the next algorithm iteration is directly performed after the weight calculation is completed.

进一步的,所述观测概率值通过建立观测模型获取。Further, the observed probability value Obtained by building an observation model.

进一步的,所述建立观测模型包括采用激光雷达的可能性区域模型对观测信息进行建模。Further, the establishment of the observation model includes modeling the observation information using a possible region model of the lidar.

进一步的,为了获取所述观测概率值,观测模型引入了测量噪声和随机测量噪声。Further, in order to obtain the observation probability value, the observation model introduces measurement noise and random measurement noise.

进一步的,所述测量噪声使用高斯分布表示,对任意一组激光数据的端点坐标计算其与现有地图中最近障碍物坐标的欧式距离,则由测量噪声导致的传感器测量概率值如下式3-8:Further, the measurement noise is represented by a Gaussian distribution, and the coordinates of the endpoints of any set of laser data are Calculate the Euclidean distance between it and the coordinates of the nearest obstacle in the existing map, the sensor measurement probability value caused by the measurement noise is as follows Equation 3-8:

进一步的,所述随机测量噪声中,当激光传感器击中半透明玻璃,或者声纳传感器接收到同波段声波时都会产生不固定的随机噪声,此随机噪声用均匀分布表示,如下式3-10:Further, in the random measurement noise, when the laser sensor hits the translucent glass, or the sonar sensor receives sound waves of the same band, random noise will be generated, and this random noise is represented by a uniform distribution, as shown in the following formula 3-10 :

进一步的,观测概率值p(zt|xt,m)的计算公式3-10如下:Further, the calculation formula 3-10 of the observation probability value p(zt |xt ,m) is as follows:

其中q表示每个激光数据的观测概率,zhit表示测量噪声出现的概率阈值,zrand表示随机噪声出现的概率阈值,zhit远大于zrand且两者和为1。Among them, q represents the observation probability of each laser data, zhit represents the probability threshold of the occurrence of measurement noise, zran d represents the probability threshold of random noise, zhit is much larger than zrand and the sum of the two is 1.

本发明具有如下的优点和有益效果:The present invention has the following advantages and beneficial effects:

每次迭代过程中,使用最小二乘匹配计算得到的机器人位置对粒子集进行扩充,当一次更新间隔内里程计误差较大时可以有效将部分粒子限制在真实分布附近,避免过度依赖里程计数据作为估计初值。In each iteration process, the particle set is expanded using the robot position calculated by least squares matching. When the odometer error is large within an update interval, some particles can be effectively limited to the vicinity of the true distribution, avoiding excessive reliance on odometer data. as an estimated initial value.

附图说明Description of drawings

此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明实施例的限定。在附图中:The accompanying drawings described herein are used to provide further understanding of the embodiments of the present invention, and constitute a part of the present application, and do not constitute limitations to the embodiments of the present invention. In the attached image:

图1为本发明的流程图。FIG. 1 is a flow chart of the present invention.

图2为本发明中线程Ⅰ的粒子滤波初始化地图示意图。FIG. 2 is a schematic diagram of a particle filter initialization map of thread I in the present invention.

图3为本发明中待匹配激光数据示意图。FIG. 3 is a schematic diagram of laser data to be matched in the present invention.

图4为本发明中粒子数为30的采样示意图。FIG. 4 is a schematic diagram of sampling when the number of particles is 30 in the present invention.

图5a为本发明中粒子采样分布图。Fig. 5a is a particle sampling distribution diagram in the present invention.

图5b为本发明中扫描匹配粒子分布图。Fig. 5b is a distribution diagram of scanning matching particles in the present invention.

图6为本发明中机器人运动轨迹示意图。FIG. 6 is a schematic diagram of the motion trajectory of the robot in the present invention.

图7a为本发明中扫描匹配的距离误差对比示意图。FIG. 7a is a schematic diagram of distance error comparison of scan matching in the present invention.

图7b为本发明中扫描匹配的角度误差对比示意图。FIG. 7b is a schematic diagram showing the comparison of angle errors of scan matching in the present invention.

图8为本发明中线程Ⅰ和线程Ⅱ更新地图的时间轴示意图。FIG. 8 is a schematic diagram of the time axis of the update map of thread I and thread II in the present invention.

图9a为本发明中里程计漂移示意图。Figure 9a is a schematic diagram of the odometer drift in the present invention.

图9b为本发明中里程计漂移结果图。Fig. 9b is a graph showing the result of odometer drift in the present invention.

图10a为本发明中局部地图位置更新误差示意图。FIG. 10a is a schematic diagram of a local map position update error in the present invention.

图10b为本发明中局部地图角度更新误差示意图。FIG. 10b is a schematic diagram of the update error of the local map angle in the present invention.

具体实施方式Detailed ways

为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。In order to make the purpose, technical solutions and advantages of the present invention clearer, the present invention will be further described in detail below with reference to the embodiments and the accompanying drawings. as a limitation of the present invention.

在以下描述中,为了提供对本发明的透彻理解阐述了大量特定细节。然而,对于本领域普通技术人员显而易见的是:不必采用这些特定细节来实行本发明。在其他实例中,为了避免混淆本发明,未具体描述公知的结构、电路、材料或方法。In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one of ordinary skill in the art that these specific details need not be employed to practice the present invention. In other instances, well-known structures, circuits, materials, or methods have not been described in detail in order to avoid obscuring the present invention.

在整个说明书中,对“一个实施例”、“实施例”、“一个示例”或“示例”的提及意味着:结合该实施例或示例描述的特定特征、结构或特性被包含在本发明至少一个实施例中。因此,在整个说明书的各个地方出现的短语“一个实施例”、“实施例”、“一个示例”或“示例”不一定都指同一实施例或示例。此外,可以以任何适当的组合和、或子组合将特定的特征、结构或特性组合在一个或多个实施例或示例中。此外,本领域普通技术人员应当理解,在此提供的示图都是为了说明的目的,并且示图不一定是按比例绘制的。这里使用的术语“和/或”包括一个或多个相关列出的项目的任何和所有组合。Throughout this specification, references to "one embodiment," "an embodiment," "an example," or "an example" mean that a particular feature, structure, or characteristic described in connection with the embodiment or example is included in the present invention in at least one embodiment. Thus, appearances of the phrases "one embodiment," "an embodiment," "one example," or "an example" in various places throughout this specification are not necessarily all referring to the same embodiment or example. Furthermore, the particular features, structures or characteristics may be combined in any suitable combination and/or subcombination in one or more embodiments or examples. Furthermore, those of ordinary skill in the art will appreciate that the drawings provided herein are for illustrative purposes and that the drawings are not necessarily drawn to scale. As used herein, the term "and/or" includes any and all combinations of one or more of the associated listed items.

在本发明的描述中,需要理解的是,术语“前”、“后”、“左”、“右”、“上”、“下”、“竖直”、“水平”、“高”、“低”“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明保护范围的限制。In the description of the present invention, it should be understood that the terms "front", "rear", "left", "right", "upper", "lower", "vertical", "horizontal", "high", The orientation or positional relationship indicated by "low", "inner", "outer", etc. is based on the orientation or positional relationship shown in the accompanying drawings, and is only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying the indicated device or Elements must have a specific orientation, be constructed and operate in a specific orientation, and therefore should not be construed as limiting the scope of the invention.

实施例Example

一种融合最小二乘法的粒子滤波SLAM方法,包括线程Ⅰ和线程Ⅱ,所述线程Ⅰ为采用粒子滤波获取机器人在地图中的位置,线程Ⅱ为采用最小二乘匹配获取机器人在地图中的位置,具体步骤包括:A particle filter SLAM method fused with least squares method, including thread I and thread II, the thread I uses particle filtering to obtain the position of a robot in the map, and thread II uses least squares matching to obtain the position of the robot in the map , the specific steps include:

步骤1,t=0时,线程Ⅰ和线程Ⅱ同时获取雷达数据得到机器人在地图中的初始位置,此后,机器人开始移动;Step 1, when t=0, thread I and thread II acquire radar data at the same time to obtain the initial position of the robot in the map, after which the robot starts to move;

步骤2,当机器人移动距离超过设定阈值时,进入t=1时刻,线程Ⅰ中粒子滤波算法使用里程计运动模型对粒子进行采样得到的样本代替地图内机器人位置,并根据权值对粒子进行排序;Step 2: When the moving distance of the robot exceeds the set threshold, it enters time t=1. The particle filter algorithm in thread I uses the odometer motion model to sample the particles to replace the robot position in the map, and the particles are processed according to the weights. sort;

步骤3,在t=0~t-1时间段内,线程Ⅱ同步获取雷达数据得到机器人位置x1′,则可得到粒子集内权值最大的N个粒子,使用最小二乘法对x1′采样得到的样本代替t=0~t-1时间段内机器人位置即对局部地图重置,得到扩充后的粒子集,粒子集内粒子的总数变为M+N;Step 3: During the time period from t=0 to t-1, thread II obtains the radar data synchronously to obtain the robot position x1 ′, then the N particles with the largest weights in the particle set can be obtained, and the least squares method is used to compare x1 ′ The sample obtained by sampling replaces the robot position in the time period of t=0~t-1, that is, the local map is reset, and the expanded particle set is obtained, and the total number of particles in the particle set becomes M+N;

步骤4,线程Ⅱ对粒子集进行扫描匹配、权值计算、重采样完成更新,其中权值最大的粒子代表的机器人在地图中的位置,即代表机器人此时的位置与环境地图数据;Step 4: Thread II performs scan matching, weight calculation, and re-sampling on the particle set to complete the update. The position of the robot in the map represented by the particle with the largest weight value represents the robot's current position and environmental map data;

步骤5,线程Ⅱ对粒子集进行排序,舍弃权值较小的N个粒子,粒子总数变为M,由于线程Ⅰ在t=1时刻地图内机器人位置更新已经完成,线程Ⅱ内对局部地图重置,待下一个t=2时刻到来时继续执行步骤2~5,则线程Ⅰ的一个更新时刻内线程Ⅱ会进行多次更新。Step 5: Thread II sorts the particle set, discards N particles with smaller weights, and the total number of particles becomes M. Since thread I has completed the update of the robot position in the map at time t=1, thread II rewrites the local map. When the next time t=2 comes, continue to execute steps 2 to 5, then thread II will update multiple times within one update time of thread I.

通过长期的研究和实践,本申请的发明人发现,在机器人的定位与地图构建中,由于数据机器人移动位置采样过程对里程计数据的严重依赖,当地面有坑洼或轮子发生漂移时,里程计等传感器误差较大,极限情况下机器人实际位置并没有发生改变,但里程计数据已经显示机器人移动一段距离,这种情况不仅会使SLAM算法无法得到机器人的准确位置,创建的栅格地图也会发生撕裂、扭曲等现象。本申请提供一种融合最小二乘法的粒子滤波SLAM方法,包括线程Ⅰ和线程Ⅱ双线程执行以获取机器人在地图中的位置,由于线程Ⅱ所使用的粒子滤波算法耗时长,故在t-1~t时间间隔内线程Ⅱ已经进行多次更新。线程Ⅱ内的最小二乘匹配算法的目的就是计算t-1~t时间内的机器人相对移动位置,同时本申请使用了局部地图的方式,当线程Ⅰ内粒子滤波系统更新完成后局部地图重置。其核心在于每次迭代过程中,使用最小二乘匹配计算得到的机器人位置对粒子集进行扩充,当一次更新间隔内里程计误差较大时可以有效将部分粒子限制在真实分布附近。Through long-term research and practice, the inventor of the present application found that in the positioning and map construction of the robot, due to the heavy dependence on the odometer data in the sampling process of the data robot's moving position, when there are potholes on the ground or the wheels drift, the mileage The error of sensors such as the meter is large, and the actual position of the robot has not changed in the extreme case, but the odometer data has shown that the robot has moved a certain distance. This situation not only makes the SLAM algorithm unable to obtain the accurate position of the robot, but also creates a grid map. Tear, twist, etc. will occur. The present application provides a particle filter SLAM method fused with the least squares method, including thread I and thread II dual-thread execution to obtain the position of the robot in the map. Since the particle filter algorithm used by thread II takes a long time, it needs to be executed at t-1 Thread II has been updated multiple times within the ~t time interval. The purpose of the least squares matching algorithm in thread II is to calculate the relative movement position of the robot within the time period of t-1 to t. At the same time, this application uses the local map method. When the update of the particle filter system in thread I is completed, the local map is reset. . The core is that in each iteration process, the robot position calculated by least squares matching is used to expand the particle set. When the odometer error is large in an update interval, some particles can be effectively limited to the vicinity of the true distribution.

针对粒子滤波严重依赖里程计数据,本申请提出了一种融合最小二乘法的粒子滤波SLAM方法。其核心在于每次迭代过程中,使用最小二乘匹配计算得到的机器人位置对粒子集进行扩充,当一次更新间隔内里程计误差较大时可以有效将部分粒子限制在真实分布附近。算法整体流程如图1所示,包括线程Ⅰ和线程Ⅱ,所述线程Ⅰ为采用粒子滤波获取机器人在地图中的位置,线程Ⅱ为采用最小二乘匹配获取机器人在地图中的位置,由于线程Ⅱ所使用的粒子滤波算法耗时长,故在t-1~t时间间隔内线程Ⅱ已经进行多次更新。线程Ⅱ内的最小二乘匹配算法的目的就是计算t-1~t时间内的机器人相对移动位置,同时本申请使用了局部地图的方式,当线程Ⅰ内粒子滤波系统更新完成后局部地图重置。具体的执行步骤如下:Aiming at the fact that particle filter heavily relies on odometer data, this application proposes a particle filter SLAM method fused with least squares method. The core is that in each iteration process, the robot position calculated by least squares matching is used to expand the particle set. When the odometer error is large in an update interval, some particles can be effectively limited to the vicinity of the true distribution. The overall flow of the algorithm is shown in Figure 1, including thread I and thread II. The thread I uses particle filtering to obtain the position of the robot in the map, and thread II uses the least squares matching to obtain the position of the robot in the map. The particle filter algorithm used by II takes a long time, so thread II has been updated many times within the time interval of t-1~t. The purpose of the least squares matching algorithm in thread II is to calculate the relative movement position of the robot within the time period of t-1 to t. At the same time, this application uses a local map method. When the update of the particle filter system in thread I is completed, the local map is reset. . The specific execution steps are as follows:

1)初始化,开始运行时两线程同时执行初始化步骤,此时时间记作t=0。粒子滤波初始化方式为,SLAM算法起始即t=0时刻开始执行初始化步骤,由于此时未接收到任何传感器数据,因此本申请默认初始机器人位姿向量为(0,0,0)T,初始化步骤的目的有两个,一是根据粒子总数初始化粒子集,二是根据第一帧激光数据初始化环境地图,此地图将作为后续迭代估计算法的输入,初始化步骤得到的地图表示为m0。初始化完成后的粒子内容为式3-17,其中每个粒子的权值相同,均为1/M。1) Initialization, the two threads execute the initialization steps at the same time when the operation starts, and the time at this time is recorded as t=0. The initialization method of the particle filter is as follows: at the beginning of the SLAM algorithm, the initialization step starts at time t=0. Since no sensor data is received at this time, the default initial robot pose vector in this application is (0,0,0)T , and the initialization The purpose of the step is two, one is to initialize the particle set according to the total number of particles, and the other is to initialize the environment map according to the first frame of laser data. This map will be used as the input of the subsequent iterativeestimation algorithm. The particle content after initialization is Equation 3-17, where each particle has the same weight, which is 1/M.

已知机器人位置时,仅根据传感器数据即可对地图进行更新,初始状态时对于一帧中的所有K组激光数据根据公式3-10可计算得到激光光束端点在全局坐标系下的位置并初始化地图;When the position of the robot is known, the map can be updated only according to the sensor data. For all K groups of laser data in one frame, the position of the laser beam end point in the global coordinate system can be calculated according to formula 3-10 and the map is initialized;

公式3-10中,q表示每个激光数据的观测概率,zhit表示测量噪声出现的概率阈值,zrand表示随机噪声出现的概率阈值,一般情况下zhit远大于zrand且两者和为1,具体的,设置地图分辨率为5cm,使用RVIZ观察初始化步骤得到的地图如图2所示,其中黑色区域表示机器人周围障碍物,白色区域表示空闲无障碍。最小二乘匹配线程则使用机器人初始位置更新地图。In formula 3-10, q represents the observation probability of each laser data, zhit represents the probability threshold of the occurrence of measurement noise, and zrand represents the probability threshold of random noise. In general, zhit is much larger than zrand and the sum of the two is 1. Specifically, set the map resolution to 5cm, and use RVIZ to observe the map obtained in the initialization step as shown in Figure 2, where the black area represents obstacles around the robot, and the white area represents idle obstacles. The least squares matching thread then updates the map with the robot's initial position.

2)当机器人移动距离超过设定阈值时,进入t=1时刻,线程Ⅰ中粒子滤波算法根据里程计信息对粒子进行采样,并根据权值对粒子进行排序;2) When the moving distance of the robot exceeds the set threshold, at time t=1, the particle filter algorithm in thread I samples the particles according to the odometer information, and sorts the particles according to the weights;

3)由于在t=0~t-1时间段内,线程Ⅱ同步计算机器人位置,则可以得到线程中的机器人位置x1′,获取粒子集内权值最大的N个粒子,对x1′采样得到的样本代替其内机器人位置,得到扩充后的粒子集,粒子集总数变为M+N。3) Since thread II calculates the robot position synchronously in the time period from t=0 to t-1, the robot position x1 ′ in the thread can be obtained, and the N particles with the largest weight in the particle set can be obtained. For x1 ′ The sample obtained by sampling replaces the robot position in it, and the expanded particle set is obtained, and the total number of particle sets becomes M+N.

4)对粒子集进行扫描匹配、权值计算、重采样完成更新,其中权值最大的粒子所代表的机器人位置以及地图即表示了机器人此时的位置与环境地图数据。4) Scanning matching, weight calculation, and resampling are performed on the particle set to complete the update. The robot position and map represented by the particle with the largest weight value represent the robot's position and environment map data at this time.

扫描匹配。粒子滤波系统的整体估计精度与粒子数目的选取密切相关,但对于SLAM算法,每个粒子内不仅包括机器人位置数据,还维护一份包含有多个个网格的栅格地图。粒子数目过大会使整个系统运算时间增加,算法可用性降低。为了减少粒子数目,优化粒子采样结果,本申请使用了基于可能性区域模型的扫描匹配算法。其核心思想在于将激光数据与已有地图进行匹配,进一步改善机器人位置,特别的,图3即表示了一组待匹配地图与激光数据。Scan to match. The overall estimation accuracy of the particle filter system is closely related to the selection of the number of particles, but for the SLAM algorithm, each particle not only includes robot position data, but also maintains a grid map containing multiple grids. If the number of particles is too large, the computing time of the whole system will increase and the usability of the algorithm will decrease. In order to reduce the number of particles and optimize the particle sampling results, the present application uses a scan matching algorithm based on the possibility region model. The core idea is to match the laser data with the existing map to further improve the position of the robot. In particular, Figure 3 shows a set of maps and laser data to be matched.

粒子滤波算法中,在权值计算步骤前根据激光雷达数据与当前栅格地图对每个粒子内的机器人位置数据进行优化。如公式3-20所示:In the particle filter algorithm, the robot position data in each particle is optimized according to the lidar data and the current grid map before the weight calculation step. As shown in Equation 3-20:

对于图4中所示的粒子分布,扫描匹配后的结果如图5a和图5b所示,可以看到,扫描匹配步骤后粒子总体开始朝机器人真实位置处变化。For the particle distribution shown in Fig. 4, the results after scan matching are shown in Fig. 5a and Fig. 5b, it can be seen that the particle population starts to change towards the real position of the robot after the scan matching step.

更进一步,由于t时刻的粒子是由t-1时刻的粒子通过采样计算得到,粒子误差会随时间累积。为了更好的描述扫描匹配的作用,此处假设不进行重采样,即粒子集内的样本不会发生删除,取代等操作。定义误差和E,表示t时刻每个粒子内机器人位置与真实位置的偏差值。如下式:Furthermore, since the particles at time t are calculated by sampling from the particles at time t-1, the particle errors will accumulate over time. In order to better describe the role of scan matching, it is assumed here that no resampling is performed, that is, the samples in the particle set will not be deleted or replaced. Define the error sum E, which represents the deviation between the robot position and the real position in each particle at time t. The formula is as follows:

其中分别代表机器人的真实位置值。in respectively represent the real position value of the robot.

采用图6中的仿真方式,记录有无扫描匹配过程的总误差和可以得到图7a和图7b,其中B线条表示无扫描匹配过程发生,A线条表示扫描匹配过程后的误差总和,可以看到扫描匹配算法极大的改善了粒子集中机器人位置分布情况,使其更接近机器人真实位置。但随着时间戳的增加,机器人不断移动,无论是否进行扫描匹配,粒子集代表的总体机器人位置误差都在不断增加,为了解决此问题,需要重采样步骤改善粒子内容,将误差较大的粒子舍弃,保留精准粒子。Using the simulation method in Fig. 6, recording the total error sum with and without the scanning matching process can be obtained as shown in Fig. 7a and Fig. 7b, in which the B line indicates that no scanning matching process occurs, and the A line indicates the error sum after the scanning matching process. It can be seen that The scan matching algorithm greatly improves the position distribution of the robot in the particle concentration, making it closer to the real position of the robot. However, as the time stamp increases, the robot moves continuously. Regardless of whether scan matching is performed or not, the overall robot position error represented by the particle set keeps increasing. To solve this problem, a resampling step is required to improve the particle content, and the particles with larger errors are Discard, keep precise particles.

权值计算与重采样。与标准粒子滤波算法中权值的计算略有不同,第m个粒子的权值计算方式如下式3-22所示:Weight calculation and resampling. It is slightly different from the calculation of the weight in the standard particle filter algorithm. The calculation method of the weight of the mth particle is shown in Equation 3-22:

上式中的概率值正是观测概率值。同时本申请使用了自适应重采样技术决定重采样步骤何时发生,如下式3-23:The probability value in the above formula It is the observed probability value. At the same time, this application uses adaptive resampling technology to determine when the resampling step occurs, as shown in the following formula 3-23:

其中Neff又被称为有效粒子数,当Neff值小于某一给定阈值时进行重采样步骤,否则在权值计算完成后直接进行下一次算法迭代。与标准粒子滤波中的重采样步骤类似,重采样发生时,每个粒子根据其权值的大小确定此粒子被保留的概率,小权值粒子会在重采样过程中由权值较大的粒子代替,保证粒子总数不发生变化。Among them, Neff is also called the effective number of particles. When the Neff value is less than a given threshold, the resampling step is performed, otherwise, the next algorithm iteration is directly performed after the weight calculation is completed. Similar to the resampling step in standard particle filtering, when resampling occurs, each particle determines the probability of this particle being retained according to its weight, and particles with small weights will be replaced by particles with larger weights during the resampling process. Instead, the total number of particles is guaranteed not to change.

5)对粒子集进行排序,舍弃权值较小的N个粒子,粒子总数变为M。由于线程Ⅰ在t=1时刻的更新已经完成,线程Ⅱ内局部地图重置,待下一个t=2时刻到来时继续执行2~5步骤。具体的,两线程的更新时间轴图8所示,线程Ⅰ的一个更新时刻内线程Ⅱ会进行多次更新。5) Sort the particle set, discard N particles with smaller weights, and the total number of particles becomes M. Since the update of thread I at time t=1 has been completed, the local map in thread II is reset, and steps 2 to 5 are continued when the next time t=2 arrives. Specifically, the update time axis of the two threads is shown in Figure 8, and within one update time of thread I, thread II will perform multiple updates.

为了描述融合后算法的效果,使用图9a所示的特殊情况来代替轮子打滑过程,使用键盘控制机器人向墙面移动,由于轮子持续转动导致里程计数据不断累积而机器人真实位置不发生变化。表1即描述了此情况下t时刻粒子的分布情况,表1表示里程计漂移时标准粒子分布,暂时不考虑角度数据,t-1时刻的机器人位置为(2.37,1.97),t时刻的机器人位置为(2.71.1.97)取粒子数目为30。In order to describe the effect of the fusion algorithm, the special case shown in Figure 9a is used to replace the wheel slipping process. The keyboard is used to control the robot to move towards the wall. The odometer data is continuously accumulated due to the continuous rotation of the wheel, but the real position of the robot does not change. Table 1 describes the distribution of particles at time t in this case. Table 1 shows the standard particle distribution when the odometer drifts. The angle data is not considered for the time being. The position of the robot at time t-1 is (2.37, 1.97), and the robot at time t The position is (2.71.1.97) and the number of particles is 30.

表1Table 1

从表1可以看出,由于t-1时刻进行的扫描匹配步骤,导致粒子集内机器人位置分布较为集中,而在t-1~t时刻内由于漂移现象里程计误差较大,t时刻采样得到的粒子中很难找到与真实位置相近的粒子,这种现象会直接导致定位精度下降,地图发生撕裂,如图9b所示。针对上述情况,使用融合最小二乘匹配的SLAM算法,粒子总数设置为25,每次采样时扩充的粒子数为5,t时刻的粒子分布如下表2所示,表2表示里程计漂移时改进粒子滤波算法粒子分布,可以看到,由于线程Ⅱ中最小二乘匹配的作用,扩充后序号为26~30的5个粒子并没有根据里程计数据进行采样,当其他粒子无法表示真实机器人位置时,仍能得到一个较好的估计结果。It can be seen from Table 1 that due to the scanning matching step performed at time t-1, the position distribution of the robot in the particle set is relatively concentrated, and from time t-1 to time t, due to the drift phenomenon, the odometer error is large, and sampling at time t is obtained. It is difficult to find particles close to the real position among the particles of , this phenomenon will directly lead to the decrease of positioning accuracy and the tearing of the map, as shown in Figure 9b. In view of the above situation, the SLAM algorithm fused with least squares matching is used. The total number of particles is set to 25, and the number of particles expanded in each sampling is 5. The particle distribution at time t is shown in Table 2 below. Table 2 shows the improvement when the odometer drifts. Particle filter algorithm particle distribution, it can be seen that due to the effect of least squares matching in thread II, the 5 particles with serial numbers 26 to 30 after expansion are not sampled according to the odometer data, when other particles cannot represent the real robot position , a better estimation result can still be obtained.

表2Table 2

同样控制机器人沿着图6中描述的轨迹移动,记录每次局部地图更新结果并与机器人真实移动量进行对比,x方向、y方向、角度的误差图像如图10a和图10b所示,可以看到,随着机器人移动,局部地图更新位置误差基本可以保持在10cm内,角度误差基本保持在0.1弧度内,精度较高。Also control the robot to move along the trajectory described in Figure 6, record the results of each local map update and compare it with the actual movement of the robot. The error images of the x-direction, y-direction, and angle are shown in Figures 10a and 10b. As the robot moves, the local map update position error can be basically kept within 10cm, and the angle error is basically kept within 0.1 radian, and the accuracy is high.

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。The specific embodiments described above further describe the objectives, technical solutions and beneficial effects of the present invention in detail. It should be understood that the above descriptions are only specific embodiments of the present invention, and are not intended to limit the scope of the present invention. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention shall be included within the protection scope of the present invention.

Claims (10)

Translated fromChinese
1.一种融合最小二乘法的粒子滤波SLAM方法,其特征在于,包括线程Ⅰ和线程Ⅱ双线程执行以获取机器人在地图中的位置,所述线程Ⅰ为采用粒子滤波获取机器人在地图中的位置,线程Ⅱ为采用最小二乘匹配获取机器人在地图中的位置,具体步骤包括:1. a particle filter SLAM method of fusion least squares method, it is characterized in that, comprise thread I and thread II double-thread execution to obtain the position of the robot in the map, and described thread I is to adopt particle filtering to obtain the robot's position in the map. Position, thread II uses least squares matching to obtain the position of the robot on the map. The specific steps include:步骤1,t=0时,线程Ⅰ和线程Ⅱ同时获取雷达数据得到机器人在地图中的初始位置,此后,机器人开始移动;Step 1, when t=0, thread I and thread II acquire radar data at the same time to obtain the initial position of the robot in the map, after which the robot starts to move;步骤2,当机器人移动距离超过设定阈值时,进入t=1时刻,线程Ⅰ中粒子滤波算法使用里程计运动模型对粒子进行采样得到的样本代替地图内机器人位置,并根据权值对粒子进行排序;Step 2: When the moving distance of the robot exceeds the set threshold, it enters time t=1. The particle filter algorithm in thread I uses the odometer motion model to sample the particles to replace the robot position in the map, and the particles are processed according to the weights. sort;步骤3,在t=0~t-1时间段内,线程Ⅱ同步获取雷达数据得到机器人位置x′1,则可得到粒子集内权值最大的N个粒子,使用最小二乘法对x′1采样得到的样本代替t=0~t-1时间段内机器人位置即对局部地图重置,得到扩充后的粒子集,粒子集内粒子的总数变为M+N;Step 3: During the time period from t=0 to t-1, thread II obtains the radar data synchronously to obtain the robot position x′1 , then the N particles with the largest weights in the particle set can be obtained, and the least squares method is used for x′1 . The sample obtained by sampling replaces the robot position in the time period of t=0~t-1, that is, the local map is reset, and the expanded particle set is obtained, and the total number of particles in the particle set becomes M+N;步骤4,线程Ⅱ对粒子集进行扫描匹配、权值计算、重采样完成更新,其中权值最大的粒子代表的机器人在地图中的位置,即代表机器人此时的位置与环境地图数据;Step 4: Thread II performs scan matching, weight calculation, and re-sampling on the particle set to complete the update. The position of the robot in the map represented by the particle with the largest weight value represents the robot's current position and environmental map data;步骤5,线程Ⅱ对粒子集进行排序,舍弃权值较小的N个粒子,粒子总数变为M,由于线程Ⅰ在t=1时刻地图内机器人位置更新已经完成,线程Ⅱ内对局部地图重置,待下一个t=2时刻到来时继续执行步骤2~5,则线程Ⅰ的一个更新时刻内线程Ⅱ会进行多次更新。Step 5: Thread II sorts the particle set, discards N particles with smaller weights, and the total number of particles becomes M. Since thread I has completed the update of the robot position in the map at time t=1, thread II rewrites the local map. When the next time t=2 comes, continue to execute steps 2 to 5, then thread II will update multiple times within one update time of thread I.2.根据权利要求1所述的一种融合最小二乘法的粒子滤波SLAM方法,其特征在于,所述线程Ⅰ对机器人位置进行初始化的方式包括:默认初始机器人位姿向量为(0,0,0)T,采用ROS、Gazebo和RVIZ的三维仿真环境,并使用Gazebo中的激光雷达模拟获取虚拟激光数据,根据第一帧激光数据初始化环境地图。2. the particle filter SLAM method of a kind of fusion least squares method according to claim 1, is characterized in that, the mode that described thread I initializes robot position comprises: default initial robot pose vector is (0,0, 0)T , using the 3D simulation environment of ROS, Gazebo and RVIZ, and using the lidar simulation in Gazebo to obtain virtual laser data, and initialize the environment map according to the first frame of laser data.3.根据权利要求1所述的一种融合最小二乘法的粒子滤波SLAM方法,其特征在于,所述扫描匹配采用基于可能性区域模型的扫描匹配算法。3 . The particle filter SLAM method fused with the least squares method according to claim 1 , wherein the scan matching adopts a scan matching algorithm based on a possibility region model. 4 .4.根据权利要求1所述的一种融合最小二乘法的粒子滤波SLAM方法,其特征在于,所述权值计算与重采样包括第m个粒子的权值计算方式如下式3-22所示:4. the particle filter SLAM method of a kind of fusion least squares method according to claim 1, is characterized in that, described weight calculation and resampling comprise the weight calculation mode of mth particle as shown in following formula 3-22 :其中,为机器人观测概率值;所述重采样采用自适应重采样技术决定重采样步骤何时发生,如下式3-23所示:in, is the robot observation probability value; the resampling adopts adaptive resampling technology to determine when the resampling step occurs, as shown in the following formula 3-23:其中Neff又被称为有效粒子数,当Neff值小于某一给定阈值时进行重采样步骤,否则在权值计算完成后直接进行下一次算法迭代。Among them, Neff is also called the effective number of particles. When the Neff value is less than a given threshold, the resampling step is performed, otherwise, the next algorithm iteration is directly performed after the weight calculation is completed.5.根据权利要求4所述的一种融合最小二乘法的粒子滤波SLAM方法,其特征在于,所述观测概率值通过建立观测模型获取。5. the particle filter SLAM method of a kind of fusion least squares method according to claim 4, is characterized in that, described observation probability value Obtained by building an observation model.6.根据权利要求5所述的一种融合最小二乘法的粒子滤波SLAM方法,其特征在于,所述建立观测模型包括采用激光雷达的可能性区域模型对观测信息进行建模。6 . The particle filter SLAM method fused with the least squares method according to claim 5 , wherein the establishment of the observation model comprises modeling the observation information by using a possible region model of lidar. 7 .7.根据权利要求6所述的一种融合最小二乘法的粒子滤波SLAM方法,其特征在于,为了获取所述观测概率值,观测模型引入了测量噪声和随机测量噪声。7 . The particle filter SLAM method fused with the least squares method according to claim 6 , wherein, in order to obtain the observation probability value, measurement noise and random measurement noise are introduced into the observation model. 8 .8.根据权利要求7所述的一种融合最小二乘法的粒子滤波SLAM方法,其特征在于,所述测量噪声使用高斯分布表示,对任意一组激光数据的端点坐标计算其与现有地图中最近障碍物坐标的欧式距离,则由测量噪声导致的传感器测量概率值如下式3-8:8. the particle filter SLAM method of a kind of fusion least squares method according to claim 7, is characterized in that, described measurement noise uses Gaussian distribution representation, to the endpoint coordinates of any group of laser data Calculate the Euclidean distance between it and the coordinates of the nearest obstacle in the existing map, the sensor measurement probability value caused by the measurement noise is as follows Equation 3-8:9.根据权利要求8所述的一种融合最小二乘法的粒子滤波SLAM方法,其特征在于,所述随机测量噪声中,当激光传感器击中半透明玻璃,或者声纳传感器接收到同波段声波时都会产生不固定的随机噪声,此随机噪声用均匀分布表示,如下式3-10:9. A particle filter SLAM method fused with least squares method according to claim 8, characterized in that, in the random measurement noise, when the laser sensor hits the translucent glass, or the sonar sensor receives the same waveband sound wave Unfixed random noise will be generated when , and this random noise is represented by a uniform distribution, as shown in the following formula 3-10:10.根据权利要求9所述的一种融合最小二乘法的粒子滤波SLAM方法,其特征在于,观测概率值p(zt|xt,m)的计算公式3-10如下:10. The particle filter SLAM method of a fusion least squares method according to claim 9, wherein the calculation formula 3-10 of the observation probability value p(zt |xt , m) is as follows:其中q表示每个激光数据的观测概率,zhit表示测量噪声出现的概率阈值,zrand表示随机噪声出现的概率阈值,zhit远大于zrand且两者和为1。Where q represents the observation probability of each laser data, zhit represents the probability threshold of the occurrence of measurement noise, zrand represents the probability threshold of random noise, zhit is much larger than zrand and the sum of the two is 1.
CN201910621086.2A2019-07-102019-07-10Particle filter SLAM method fusing least square methodActiveCN110333513B (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
CN201910621086.2ACN110333513B (en)2019-07-102019-07-10Particle filter SLAM method fusing least square method

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CN201910621086.2ACN110333513B (en)2019-07-102019-07-10Particle filter SLAM method fusing least square method

Publications (2)

Publication NumberPublication Date
CN110333513Atrue CN110333513A (en)2019-10-15
CN110333513B CN110333513B (en)2023-01-10

Family

ID=68146230

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN201910621086.2AActiveCN110333513B (en)2019-07-102019-07-10Particle filter SLAM method fusing least square method

Country Status (1)

CountryLink
CN (1)CN110333513B (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN110887489A (en)*2019-11-222020-03-17深圳晨芯时代科技有限公司AR robot-based SLAM algorithm experimental method
CN113032411A (en)*2021-03-022021-06-25上海景吾智能科技有限公司Method, system and medium for updating local map based on existing map

Citations (17)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
KR100809352B1 (en)*2006-11-162008-03-05삼성전자주식회사 Particle Filter-based Attitude Estimation Method and Apparatus
CN104197958A (en)*2014-08-272014-12-10北京航空航天大学Speedometer calibration method based on laser velocimeter dead reckoning system
CN104503339A (en)*2015-01-052015-04-08黑龙江工程学院Multi-resolution indoor three-dimensional scene reconstitution device and method based on laser radar and quadrotor
US20150276783A1 (en)*2014-03-312015-10-01Stmicroelectronics S.R.I.Positioning apparatus comprising an inertial sensor and inertial sensor temperature compensation method
CN105631017A (en)*2015-12-292016-06-01福州华鹰重工机械有限公司Method and device for achieving offline coordinate calibrating and map building
CN105865449A (en)*2016-04-012016-08-17深圳杉川科技有限公司Laser and vision-based hybrid location method for mobile robot
WO2016162568A1 (en)*2015-04-102016-10-13The European Atomic Energy Community (Euratom), Represented By The European CommissionMethod and device for real-time mapping and localization
CN106211072A (en)*2016-07-142016-12-07广东工业大学The localization method of a kind of small-sized movable primary user and device
CN106595659A (en)*2016-11-032017-04-26南京航空航天大学Map merging method of unmanned aerial vehicle visual SLAM under city complex environment
CN106969768A (en)*2017-04-222017-07-21深圳力子机器人有限公司A kind of trackless navigation AGV's is accurately positioned and parking method
CN107240133A (en)*2017-04-242017-10-10西华大学Stereoscopic vision mapping model building method
CN107356252A (en)*2017-06-022017-11-17青岛克路德机器人有限公司A kind of Position Method for Indoor Robot for merging visual odometry and physics odometer
CN107607107A (en)*2017-09-142018-01-19斯坦德机器人(深圳)有限公司A kind of Slam method and apparatus based on prior information
CN108917759A (en)*2018-04-192018-11-30电子科技大学Mobile robot pose correct algorithm based on multi-level map match
CN109579824A (en)*2018-10-312019-04-05重庆邮电大学A kind of adaptive Kano Meng Te localization method incorporating two-dimensional barcode information
CN109709801A (en)*2018-12-112019-05-03智灵飞(北京)科技有限公司A kind of indoor unmanned plane positioning system and method based on laser radar
CN109752725A (en)*2019-01-142019-05-14天合光能股份有限公司 A low-speed commercial robot, positioning and navigation method and positioning and navigation system

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
KR100809352B1 (en)*2006-11-162008-03-05삼성전자주식회사 Particle Filter-based Attitude Estimation Method and Apparatus
US20150276783A1 (en)*2014-03-312015-10-01Stmicroelectronics S.R.I.Positioning apparatus comprising an inertial sensor and inertial sensor temperature compensation method
CN104197958A (en)*2014-08-272014-12-10北京航空航天大学Speedometer calibration method based on laser velocimeter dead reckoning system
CN104503339A (en)*2015-01-052015-04-08黑龙江工程学院Multi-resolution indoor three-dimensional scene reconstitution device and method based on laser radar and quadrotor
WO2016162568A1 (en)*2015-04-102016-10-13The European Atomic Energy Community (Euratom), Represented By The European CommissionMethod and device for real-time mapping and localization
CN105631017A (en)*2015-12-292016-06-01福州华鹰重工机械有限公司Method and device for achieving offline coordinate calibrating and map building
CN105865449A (en)*2016-04-012016-08-17深圳杉川科技有限公司Laser and vision-based hybrid location method for mobile robot
CN106211072A (en)*2016-07-142016-12-07广东工业大学The localization method of a kind of small-sized movable primary user and device
CN106595659A (en)*2016-11-032017-04-26南京航空航天大学Map merging method of unmanned aerial vehicle visual SLAM under city complex environment
CN106969768A (en)*2017-04-222017-07-21深圳力子机器人有限公司A kind of trackless navigation AGV's is accurately positioned and parking method
CN107240133A (en)*2017-04-242017-10-10西华大学Stereoscopic vision mapping model building method
CN107356252A (en)*2017-06-022017-11-17青岛克路德机器人有限公司A kind of Position Method for Indoor Robot for merging visual odometry and physics odometer
CN107607107A (en)*2017-09-142018-01-19斯坦德机器人(深圳)有限公司A kind of Slam method and apparatus based on prior information
CN108917759A (en)*2018-04-192018-11-30电子科技大学Mobile robot pose correct algorithm based on multi-level map match
CN109579824A (en)*2018-10-312019-04-05重庆邮电大学A kind of adaptive Kano Meng Te localization method incorporating two-dimensional barcode information
CN109709801A (en)*2018-12-112019-05-03智灵飞(北京)科技有限公司A kind of indoor unmanned plane positioning system and method based on laser radar
CN109752725A (en)*2019-01-142019-05-14天合光能股份有限公司 A low-speed commercial robot, positioning and navigation method and positioning and navigation system

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
WEI WANG 等: ""Simultaneous localization and mapping embedded with particle filter algorithm"", 《2016 10TH EUROPEAN CONFERENCE ON ANTENNAS AND PROPAGATION (EUCAP)》*
曲丽萍: ""移动机器人同步定位与地图构建关键技术的研究"", 《中国博士论文全文数据库》*
赵立军: ""室内环境下同步定位与地图创建改进算法"", 《机器人》*

Cited By (2)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN110887489A (en)*2019-11-222020-03-17深圳晨芯时代科技有限公司AR robot-based SLAM algorithm experimental method
CN113032411A (en)*2021-03-022021-06-25上海景吾智能科技有限公司Method, system and medium for updating local map based on existing map

Also Published As

Publication numberPublication date
CN110333513B (en)2023-01-10

Similar Documents

PublicationPublication DateTitle
CN111338359B (en) A mobile robot path planning method based on distance judgment and angle deflection
CN112734765B (en)Mobile robot positioning method, system and medium based on fusion of instance segmentation and multiple sensors
CN111402339B (en)Real-time positioning method, device, system and storage medium
CN115840221B (en) A Method of Target Feature Extraction and Multi-Target Tracking Based on 4D Millimeter Wave Radar
CN112880674B (en) A method, device, equipment and storage medium for positioning a traveling device
CN110333720A (en) A SLAM Optimization Method Based on Particle Filter
CN105405151A (en)Anti-occlusion target tracking method based on particle filtering and weighting Surf
CN110763239B (en) Filter combination laser SLAM mapping method and device
CN111521195A (en) an intelligent robot
JP2018534603A (en) High-precision map data processing method, apparatus, storage medium and equipment
CN103198751A (en)Line feature map creation method of mobile robot based on laser range finder
CN110487286B (en)Robot pose judgment method based on point feature projection and laser point cloud fusion
CN114115263B (en)Autonomous mapping method and device for AGV, mobile robot and medium
CN109903338A (en) A Mobile Robot Localization Method Based on Improved ORB Algorithm
CN114387462B (en) A dynamic environment perception method based on binocular camera
CN116448111A (en)Pedestrian indoor navigation method, device and medium based on multi-source information fusion
CN110490933A (en)Non-linear state space Central Difference Filter method based on single point R ANSAC
CN110986956A (en)Autonomous learning global positioning method based on improved Monte Carlo algorithm
WO2024001083A1 (en)Localization method, apparatus and device, and storage medium
CN116772828B (en)Multi-sensor fusion positioning and mapping method based on graph optimization
CN110333513B (en)Particle filter SLAM method fusing least square method
CN104765371A (en)Route planning method based on rolling window deep searching and fuzzy control fusion
CN118915716A (en)Mobile robot fusion path planning method based on Voronoi skeleton
CN120147541A (en) A 3D scene reconstruction method and system based on adaptive keyframe
CN112241002A (en) A new method for robust closed-loop detection based on Karto SLAM

Legal Events

DateCodeTitleDescription
PB01Publication
PB01Publication
SE01Entry into force of request for substantive examination
SE01Entry into force of request for substantive examination
GR01Patent grant
GR01Patent grant
PP01Preservation of patent right
PP01Preservation of patent right

Effective date of registration:20250618

Granted publication date:20230110


[8]ページ先頭

©2009-2025 Movatter.jp