1/n
problem: in urban sites, place revisits with rotation and lateral (lane) changes very frequently occur
2/n to tackle the problem, by extending our previous IROS18 work (Scan Context), we proposed Polar Context and Cart Context descriptors as shown in below
3/n we empirically proved our descriptor and retrieval algorithm's effectiveness over various large-scale urban environments
4/n - Furthermore, to quantitatively measure the difficulty of a sequence, we propose to use loop variety distribution-based metric using KL-D.
- The left result found more loops than the middle one, but for SLAM trajectory minimization, which method is better?
5/n Our method is robust to multi-lane environments very common in urban sites. Particularly, Cart Context has acquired performance gains at lane-changed revisit locations where Polar Context (i.e., our previous conf work) couldn't find.
6/n We showed our performance using the Oxford Radar RobotCar Dataset (having two HDL 32). There are also multiple types of revisits. We also proposed augmentations of SC descriptors to find loops simultaneously rot+lat occurred.
7/n We can say ours captures placeness of a place, thus good for kidnapped robot localization or known as multi-session (inter-session) localization, without any filterings of other sensors, only lidar.
8/n Furthermore, we can provide 1-dof offset (i.e., heading and lane diffs) between a current scan and the retrieved scan. This can be used as an initial for ICP to generate 6D constraint for pose-graph optimization
9/n Also, ours does not require expensive computations such as segmentation or normal calculations. Thus, our full pipeline only consumes 7-8ms on average in both KITTI and even the larger urban sequence whose length is 31km.
10/n
Our method is also robust to point cloud density. Thus we can say Scan Context++ can be used for any LiDAR type. The below example's point cloud scan (gathered during 0.1s) is from Livox lidar, and ours outperformed existing methods.
11/n
Our limitations: Scan Context++ is still weak under 1. highly repetitive environments (e.g., narrow and long indoor corridor-like urban road), or 2. data lost from occlusions caused by dynamic objects (e.g., a big bus)
12/n
More detailed examples are found in this video.
13/13
Thanks for reading the long thread. The related codes can be found here. github.com/irapkaist/scan⦠(c++, python, matlab)