Kinect-based Localization and Mapping for Service Robot
Date:
methodology
Inter-frame Scan Matching
The data obtained by Kinect includes 640x480 RGB images and the corresponding depth data for each pixel. Based on these data characteristics, inter-frame scan matching first uses feature points extracted from the RGB image and their corresponding depth information to perform coarse matching, thereby estimating the initial values for inter-frame transformation. Subsequently, the ICP (Iterative Closest Point) algorithm is used to achieve precise matching based on these initial values.
Global Map Optimization
Due to the accumulation of errors during frame-by-frame scan matching, global map optimization is necessary. This optimization is based on the QR code markers in the household environment where the service robot operates. QR code markers provide accurate pose information of the robot in the global environment. By calibrating and transforming coordinates, the scan matching results can be effectively corrected, thus optimizing the global map.
Mapping Test
The experimental platform is the family service robot platform of the Institute of Robotics and Information Automation, Nankai University. The Kinect simultaneously collects depth and color images with a resolution of 640x480 pixels. Multiple data frames of the same scene can be obtained through continuous measurement. After feature point extraction, matching, ICP precise matching, and global optimization, an environment map is generated.
Experiment 1: A total of 342 frames of point cloud data were collected, with an average processing speed of 2-3 fps.
Experiment 2: A total of 286 frames of point cloud data were collected, with an average processing speed of 2-3 fps.
Map Matching Accuracy
Open Loop Accuracy
Unit: mm | True Position | Scan Matching Position | Error |
---|---|---|---|
mark1 | (-213.349, -130.846, 1376.561) | (-215.116, -135.503, 1366.638) | 11.103 |
mark2 | (-4.982, -347.767, 1879.321) | (7.779, -333.014, 1888.971) | 21.763 |
mark3 | (209.758, -55.875, 2283.960) | (217.240, -38.168, 2277.944) | 20.142 |
mark4 | (427.871, 236.614, 2695.830) | (408.246, 243.841, 2703.902) | 22.418 |
mark5 | (622.753, 17.303, 3169.669) | (611.477, 26.980, 3201.453) | 35.086 |
Average | 22.1024 | ||
Open Loop Matching Accuracy | 22.1024 |
Closed Loop Accuracy
Loop closure occurred at frame 243. The two frames forming the loop closure are shown below (with matched feature points indicated), achieving a loop closure accuracy of 41.85 mm.
Grid Map Accuracy
The grid size is 100x100 mm. The figure below shows the original 2D plane grid map, with black lines indicating the position of the restored wall (the row of tables on the north side).
In Grid Map | Actual Measurement | Error | |
---|---|---|---|
East-West Wall Distance | 7100.17 mm | 7150 mm | 49.33 mm |
South Wall to North Table Distance | 8485.78 mm |
related links
code: