# DCReg
**Repository Path**: caolonghao/DCReg
## Basic Information
- **Project Name**: DCReg
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2025-09-24
- **Last Updated**: 2025-09-24
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
DCReg: Decoupled Characterization for Efficient Degenerate LiDAR Registration
[**Xiangcheng Hu**](https://github.com/JokerJohn)
1 · [**Xieyuanli Chen**](https://chen-xieyuanli.github.io/)
2 · [**Mingkai Jia**](https://scholar.google.com/citations?user=fcpTdvcAAAAJ&hl=en)
1 ·
[**Jin Wu**](https://zarathustr.github.io/)
3*
[**Ping Tan**](https://facultyprofiles.hkust.edu.hk/profiles.php?profile=ping-tan-pingtan#publications)
1· [**Steven L. Waslander**](https://www.trailab.utias.utoronto.ca/steven-waslander)
4†
1HKUST
2NUDT
3USTB
4U of T
†Project lead *Corresponding author

[]( https://www.bilibili.com/video/BV1jsHQzCEra/?share_source=copy_web)[](https://github.com/JokerJohn/DCReg/stargazers) [](https://github.com/JokerJohn/DCReg/issues)

**[DCReg](https://arxiv.org/abs/2509.06285)** (**D**ecoupled **C**haracterization for ill-conditioned **Reg**istration) is a principled framework that addresses ill-conditioned point cloud registration problems, achieving **20% - 50% accuracy improvement and 5-100 times** speedup over state-of-the-art methods.
- **Reliable ill-conditioning detection**: Decouples rotation and translation via Schur complement decomposition for ill-conditioning detection,eliminating coupling effects that mask degeneracy patterns.
- **Quantitative characterization**: Maps mathematical eigenspace to physical motion space, revealing which and to what extent specific motions lack constraints
- **Targeted mitigation**: Employs targeted preconditioning that stabilizes only degenerate directions while preserving observable information.
DCReg seamlessly integrates with existing registration pipelines through an efficient PCG solver with a single interpretable parameter.
## Timeline
**2025/09/22:** the baseline codes and data released, including ME-SR/ME-TSVD/ME-TReg/FCN-SR/O3D/XICP/SuperLoc!!
**2025/09/09:** the preprint paper is [online](https://arxiv.org/abs/2509.06285), baseline codes will be published first!
## Quick Start
### Dependency (Test on Unbuntu 20.04)
| [Open3D 0.15.1](https://github.com/isl-org/Open3D/tree/v0.15.1) | [Ceres 2.1.0](https://github.com/ceres-solver/ceres-solver/tree/2.1.0) | [yaml-cpp 0.6.2](https://github.com/jbeder/yaml-cpp/tree/yaml-cpp-0.6.2) | [Eigen 3.3.7](https://gitlab.com/libeigen/eigen/-/releases/3.3.7) | OpenMP 201511 | TBB 2020.1 | [PCL 1.10.0](https://github.com/PointCloudLibrary/pcl/tree/pcl-1.10.0) |
| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------- | ----------- | ------------------------------------------------------------ |
### Install
```bash
mkdir build
cd build
cmake ..
make -j8
```
set the file path and parametes in `icp.yaml`, but if you want to do iterative experments, e.g. iterative for 5000, just use the `icp_iter.yaml`. if you want to test on the real-world data, just use the `icp_pk01.yaml`, like **Figure.16** in the paper.
```bash
./icp_test_runner
```
For other settings, you can see the notes in the yaml. Note that, the impelment of SuperLoc and XICP has also verified using autodiff or NumericDiff methods. Finally you can get the output:
| output files | results summary |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
|  |  |
If you want to plot the statistics results like the figures in our papers, we will provide later. **If you want to integrate theses methods in your SLAM system, just make sure the degenercy handling only in the first iteration.**
### Test data: [Cylinder and Parkinglot frames](https://drive.google.com/drive/folders/1TnS7K7q0hr-7SY__mR8pGQX1PJV3Bzfo?usp=drive_link).
## Methods

|  |  |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
## Baseline and dataset
|  |
| ------------------------------------------------------------ |
|  |  |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
## Video demo

| Scenarios | Characterization Example | Features |
| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
|  |  |

|  |  |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
## Ablation and Hybrid Analysis
|  |  |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
## Run-time analysis
|  |  |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
## Parameter