| --- |
| license: apache-2.0 |
| tags: |
| - point-cloud |
| - 3d-vision |
| - pose-estimation |
| - registration |
| - flow-model |
| - computer-vision |
| pipeline_tag: text-to-3d |
| --- |
| |
| # Rectified Point Flow: Generic Point Cloud Pose Estimation |
|
|
| [](https://rectified-pointflow.github.io/) |
| [](https://arxiv.org/abs/2506.05282) |
| [](https://github.com/GradientSpaces/Rectified-Point-Flow) |
|
|
|
|
| **Rectified Point Flow (RPF)** is a unified model that formulates pairwise point cloud registration and multi-part shape assembly as a single conditional generative problem. Given unposed point clouds, the method learns a continuous point-wise velocity field that transports noisy points toward their target positions, from which part poses are recovered. |
|
|
|
|
| ## Installation |
| ```bash |
| git clone https://github.com/GradientSpaces/Rectified-Point-Flow.git |
| cd Rectified-Point-Flow |
| conda create -n py310-rpf python=3.10 -y |
| conda activate py310-rpf |
| poetry install # or `uv sync`, `bash install.sh` |
| ``` |
|
|
| ## Quick Start |
| ```bash |
| # Assembly Generation: |
| python sample.py data_root=./demo/data |
| |
| # Overlap Prediction: |
| python predict_overlap.py data_root=./demo/data |
| ``` |
| More details can be found in our [GitHub Repo](https://github.com/GradientSpaces/Rectified-Point-Flow). |
|
|
| ## Checkpoints |
| - `RPF_base_full_*.ckpt`: Complete model checkpoint for assembly generation |
| - `RPF_base_pretrain_*.ckpt`: Encoder-only checkpoint for overlap prediction |
|
|
| ## Training Data |
| | Dataset | Task | Part segmentation source | Parts per sample | |
| |---|---|---|---| |
| | [**IKEA-Manual**](https://yunongliu1.github.io/ikea-video-manual/) | Shape Assembly | Defined by IKEA manuals | [2, 19] | |
| | [**PartNet**](https://partnet.cs.stanford.edu/) | Shape Assembly | Human-annotated parts | [2, 64] | |
| | [**BreakingBad-Everyday**](https://breaking-bad-dataset.github.io/) | Shape Assembly | Simulated fractures via [fracture-modes](https://github.com/sgsellan/fracture-modes#dataset) | [2, 49] | |
| | [**Two-by-Two**](https://tea-lab.github.io/TwoByTwo/) | Shape Assembly | Annotated by human | 2 | |
| | [**ModelNet-40**](https://github.com/GradientSpaces/Predator) | Pairwise Registration | Following [Predator](https://github.com/prs-eth/OverlapPredator) split | 2 | |
| | [**TUD-L**](https://bop.felk.cvut.cz/datasets/) | Pairwise Registration | Real scans with partial observations | 2 | |
| | [**Objverse**](https://objaverse.allenai.org/) | Overlap Prediction | Segmented by [SAMPart3D](https://github.com/GradientSpaces/SAMPart3D) | [3, 12] | |
|
|
| ## Citation |
| ```bibtex |
| @inproceedings{sun2025_rpf, |
| author = {Sun, Tao and Zhu, Liyuan and Huang, Shengyu and Song, Shuran and Armeni, Iro}, |
| title = {Rectified Point Flow: Generic Point Cloud Pose Estimation}, |
| booktitle = {arxiv preprint arXiv:2506.05282}, |
| year = {2025}, |
| } |
| ``` |