Site Loader

                Analysis of 2D SLAM Techniques available in ROS for Indoor MappingSushant Sharma1, Sourabh2, Mohit Kumar3, Eswar4YMCA University of Science and TechnologyFaridabad- 121006, Haryana, IndiaE-Mail: {13sushantsharma, kshanky97,mohitrao2012, eswar.gundabolu}@gmail.com                Abstract — This paper presents the analysis of various 2-D SLAM techniques available in Robot Operating System. A laser-based study is conducted in order to judge the parameters of the SLAM techniques in ROS. A bag file was generated in ROS in order to maintain uniformity among the inputs provided to the map building SLAM techniques. Observed Maps and the CPU loads were compared and the most effective method was concluded on the basis of the above study. The method(s) were used for 2-D mapping and were provided with laser scan and wheel odometry. The most basic approach for implementing a SLAM technique is based on the efficiency and conditions provided to the autonomous robot in order to navigate in a given environment. Thus this study acts as a root for choosing the required SLAM techniques on the basis of their strengths and weaknesses for a given indoor environment for a tracked robot.    Keywords — Bag File, Localization, Mapping, Odometry, ROS, SLAM.                I. INTRODUCTIONSLAM — Simultaneous Localization and Mapping is a process for creating a map of the environment using an autonomous robot and also locating itself in the environment. Mapping is the construction of a graphic or a symbolic representation of the significant features of a part of the environment. So robot can start anywhere in the environment and should know its current position with respect to the obstacle or any landmark. There are a number of different methods having their own advantages over the other. SLAM can be implemented in various ways depending on the need in any given environment and available hardware.The software used is Robot Operating System-ROS, an open source software providing tools libraries drivers and plugins in order to create and develop robot applications with hardware abstraction. ROS provides tools such as gazebo and RVIZ for visualizing, making the virtual environment as well as simulating the robot in that environment. We would be using ROS to simulate the robot virtually using a recorded bag file in order to analyze the mapping algorithm and comparing them on the basis of the angular velocity and computational cost as most of the SLAM algorithms have limitations with the angular velocity and computational cost is the second major factor. A bagfile is the pre-recorded data of the sensors when used in any environment which can be used whenever required. The major advantage of using a bagfile is that it provides the same input to all the SLAM techniques used. We have used ROS for analysis of algorithm results. This article will compare the results of : Hector SLAMSLAM Gmapping Karto SLAM                II. REQUIRED HARDWARE                In this study we use a MINI-UGV robot with Sick 2D Lidar mounted on it and odometry is provided with wheel encoders. The robot was teleoperated in an office environment and the data was recorded in a bagfile in order to maintain uniformity so that each SLAM technique will get the same input data. The CPU that we used have Intel(R) Core(TM) i5-3337U @ 1.80GHz Processor during the analysis with 4GB of RAM. The CPU is pre-installed with ROS Kinetic Distro. All the SLAM algorithms were run on this machine using the bag file individually. All the maps were saved in an image file and the CPU data was collected using the same machine. All the SLAM techniques were downloaded as packages provided by ROS.Fig-1 (a) MINI-UGV Robot Fig-1 (b) Sick 2D LidarIII. RELATED WORKA. HECTOR SLAMHector SLAM is an open source algorithm used to build 2D maps using only laser scan sensor (LIDAR). This method may or may not use odometry data and works with data extracted from a laser scan only, giving the possibility to implement it with quadrotors and ground robots operating in uneven terrain. The use of odometry is very common in SLAM algorithms thus serving a huge advantage over other SLAM algorithms. The LIDAR performs the scan matching task followed by high update rate accurately. Hector SLAM uses Gauss-Newton method for scan matching, a combination of both Gauss and Newton method of minimization as proposed in 11. The major advantage is that second derivative is not calculated helping in saving computational cost and computation time as in other SLAM algorithms. Since it does not use the odometry the slipping of wheels as well as inefficient imu cannot produce any error. B. SLAM GMAPPINGGmapping is most widely used SLAM package. It uses both laser scan as well as odometry to build the final map. Based on Rao Blackwellized Particle Filter introduced by Murphy and Doucet et al, the particle filter algorithm require a high number of particles in order to obtain better results, increasing the computational complexity. The particle filter is a Bayes filter which overcomes the limitation of representation of the non-Gaussian distribution. This is one advantage over Hector mapping12.                The depletion problem in particle filter decreases the accuracy due to the insignificant weight of particles12. This problem can be compensated by developing an adaptive resampling technique, achieved by taking into account the most recent observations of the robot. This leads to decrease in the number of particles due to scan matching process. Thus the computational complexity decreases. Gmapping works with sampling the data which generates samples or probable distribution followed by weighting i.e. assigning them weights lastly followed by resampling where higher weighted samples represent the optimal solution. Higher the weight of samples, higher the probability of the better solution. Particle filter based approaches do not make an assumption about the nature of noise in the system as well as in the environment, overcoming a major disadvantage of Kalman Filter approaches. C. KARTO SLAM  Karto SLAM is graph-based SLAM method. It was developed by SRI International’s Karto Robotics. Graph-based SLAM generates a network from measurement constraints which are globally optimized, is used to make a map of the environment. Karto SLAM algorithm uses a non-iterative Cholesky matrix decomposition. Sparse linear systems are used as its solver. The pose is represented by a node connected by arcs. It further provides knowledge about successive poses using sensor measurements. The map is generated by placing appropriate points of observation. Cholesky matrix decomposition is used to optimize the graph network and Sparse Pose Adjustment is used for scan matching and loop-closure procedures. The major disadvantage of graph-based SLAM techniques is the increase in memory with the increasing number of landmarks but at the same time graph based SLAM is more efficient for a large scale map than other SLAM techniques.V. RESULTS AND DISCUSSIONSAll the three SLAM methods were tested to build a 2-D map of an office environment. We used an autonomous robot as described under hardware, providing the laser scan measurements and odometry measurements through a bag file. The 2 bagfiles contained two different measurements one having the angular velocity exceeding 1m/s and the other contained the angular velocity under 0.5m/s. In both the scenarios all the mapping algorithms were applied successfully. Fig-2(a) shows the map built by SLAM Gmapping followed by Hector SLAM and Karto SLAM respectively when the angular velocity was under 0.5m/s. Fig-2(b) shows the map built by SLAM Gmapping followed by Hector SLAM and Karto SLAM respectively when the angular velocity was over 1m/s.Fig-2 (a) Maps formed by SLAM Gmapping (i) Karto SLAM (ii) Hector SLAM (iii) with angular velocity less than 0.5m/sFig-2 (b) Maps formed by SLAM Gmapping (i) Karto SLAM (ii) Hector SLAM (iii) with angular velocity more than 0.1m/s  It was observed that when the angular velocity of the robot exceeded 1m/s maps built by SLAM Gmapping were accurate whereas maps built by Karto SLAM and Hector SLAM  failed to give accurate results. When the angular velocity of the robot was under 0.5m/s all the methods performed efficiently and gave successful maps. The maps built by SLAM Gmapping required both laser scan and odometry and gave almost no error followed by Hector SLAM which relied only on the laser scan further by Karto SLAM which like SLAM Gmapping used both the laser scan values along with odometry. Hector SLAM package contained options for odometry and without odometry. We carried out Hector SLAM without odometry.Fig-3 Computational Complexity graph of the 3 SLAM methodsFig-3 shows a graphical representation of the computational complexity of all the algorithms with mean, variance and standard deviation. The computational complexity is measured in terms of CPU percentage used while running each algorithm separately. Fig-4 shows the angular velocity curve for both the bagfiles. The following table shows the computational complexity of all the algorithms with mean, variance and standard deviation.Fig-4 Curve of angular velocity of bagfileHector SLAMSLAM GmappingKarto SLAMMean ? (x?)12.5515.93313.75Variance ? (?? 2 )2.2741.9964.418Standard deviation (?)1.5081.4132.102TABLE-1Computational Complexity (% of CPU usage)According to the observed values of computational complexity, the Hector SLAM method is most efficient followed by Karto slam and SLAM Gmapping respectively. In this experiment all methods work with fairly low computational costs, thus can be used for any online purpose. Out of three only Gmapping was able to make the map successfully rest both Hector SLAM and Karto SLAM failed. SLAM Gmapping is better for indoor mapping using laser scan and odometry than Hector and Karto SLAM.V. CONCLUSIONSince building the map accurately is the basic and most important requirement of using SLAM methods and according to the above results, the most efficient method is SLAM Gmapping which constructed the map of the environment most accurately even with high angular velocity of the tracked robot followed by Karto SLAM, and Hector SLAM respectively which worked accurately only with low angular velocity. In terms of efficiency, Hector SLAM leads followed by Karto and SLAM Gmapping respectively. Both Karto SLAM and Hector SLAM fail to build the map at high angular speed thus concluding SLAM Gmapping are most efficient for indoor mapping at high speeds. At low speed all the methods gave accurate results.                SLAM Gmapping uses particle filter which is most efficient algorithm among the above-explained but at the same time works at higher computational cost. SLAM Gmapping along with Karto SLAM has the disadvantage of subscribing to wheel odometry whereas Hector SLAM can work without subscribing to wheel odometry which is the major advantage of Hector SLAM. Thus in case of aerial robots, Hector SLAM will be the most appropriate option and for wheeled and tracked vehicles, SLAM Gmapping is the one for indoor mapping.Karto SLAM is efficient in terms of time complexity but still has the major disadvantage of providing odometry and fails at high angular speeds. Thus SLAM Gmapping is the optimal SLAM method for the indoor mapping with the tracked robot and Hector SLAM for the aerial robot.USEFUL LINKSKarto SLAM: goo.gl/WFowP    SLAM Gmapping: goo.gl/n3jKbiHector SLAM: goo.gl/3aVnVtREFERENCESS. Thrun., W. Burgard, and D. Fox, Probabilistic Robotics, MIT Press,2005.S.Huang, G. Dissanayake, Convergence and Consistency Analysis for Extended Kalman Filter Based SLAM, In IEEE Trans. on Robotics, 2(5), Oct. 2007.M.Montemerlo, S. Thrun, D. Koller, B. Wegbreit, “Fast SLAM: A Factored Solution to the Simultaneous Localization and Mapping Problem”, In AAAI National Conference on Artificial Intelligence, 2002.S.Thrun, M. Montemerlo. The GraphSLAM Algorithm with applications to     the Large-Scale mapping of Urban Structures, In Proc.of the Int. Journal of Robotics Research, 2005.L.Carlone, R. Aragues, J.A. Castellanos, and B. Bona. A linear approximation for graph-based simultaneous localization and mapping, In Proc. of the Int. Conf. Robotics: Science and Systems, 2011.B.Steux, O. El Hamzaoui. “tinySLAM: A SLAM algorithm in less than 200 lines of C-language program”, In Proc. Of the Int. Conf. on Control Automation Robotics & Vision     (ICARCV), Dec. 2010.K. Konolige, G. Grisetti, R. Kümmerle, B. Limketkai, R. Vincent, Efficient Sparse Pose Adjustment for 2D Mapping, In Proc. of Int. Conf. on Intelligent Robots and Systems (IROS), Oct. 2010.R.Kümmerle, B. Steder, C. Dornhege, M. Ruhnke, G. Grisetti, C. Stachniss, A. Kleiner. On Measuring the Accuracy of SLAM Algorithms, Autonomous Robots, 27(4), Nov.     2009.S.Kohlbrecher, J. Meyer, O. Von Stryk, U. Klingauf. A Flexible and Scalable SLAM System with Full 3D Motion Estimation, In Int.Symp. On Safety, Security and Rescue Robotics (SSRR), Nov. 2011.F.Lu, E. Milios, Globally Consistent Range Scan Alignment forEnvironment Mapping, In Autonomous Robots, 1997.Blanco J-L, Moreno F-A and González J. A collection of outdoor robotic datasets with the centimeter-accuracy ground truth. Autonomous Robots,27(4): 327–351, 2009.Lucas, B.D.; Kanade, T. An iterative image registration technique with an application to stereovision. In Proceedings of the 7th international joint conference on Artificial intelligence, Vancouver, Canada, 24–28 August 1983; Volume 2, pp. 674–679.G. Grisetti, C. Stachniss, and W. Burgard. Improving grid-based slam with Rao-Blackwellized particle filters by adaptive proposals and selective resampling. In Proc. of the IEEE Int. Conf. on Robotics & Automation (ICRA), pages 2443–2448, Barcelona, Spain, 2005.   

Post Author: admin

x

Hi!
I'm Russell!

Would you like to get a custom essay? How about receiving a customized one?

Check it out