I. Project Overview
This simple example of Simultaneous Localization and Mapping (SLAM) demonstrates the use of LiDAR point cloud data from the Toronto-3D dataset available on Kaggle. A flight trajectory incorporating loop closure and simulated noise is defined, and a Kalman filter is applied to refine pose estimation. Subsequently, real-time scan matching and point cloud registration are performed using Iterative Closest Point (ICP) to construct a global map.
II. Development Environment
- Programming Language: Python
- Editor / IDE: Visual Studio Code
III. Dependencies
- Kagglehub: A library used to download and access the Toronto-3D dataset from Kaggle for use in the simulation pipeline.
- NumPy: A fundamental library for numerical computing and array-based mathematical operations in Python.
- Open3D: A library for 3D data processing, commonly used for point cloud manipulation, visualization, and geometry processing.
IV. Data source:
Toronto-3D LiDAR point cloud dataset downloaded from Kaggle.
V. Results
VI. Suggestions
This teaching example of SLAM does not yet include graph optimization, local map management, or pose graph formulation. These components can be further incorporated in future work to enhance global consistency, efficiency, and overall system robustness.
