Skip to content

pyh3552/EJRGF

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EJRGF: Efficient Joint Registration of Multiple Point Clouds Using Fast Gaussian Filter

This is an official implementation of EJRGF: Efficient Joint Registration of Multiple Point Clouds Using Fast Gaussian Filter that is accepted to IEEE Robotics and Automation Letters.

Most of the code is implemented using CPP/CUDA and pytorch binding is done for ease of calling.

Abstract

Joint registration plays a critical role when it comes to aligning multiple point clouds. Despite its capacity to obtain unbiased solutions, current joint registration approaches face substantial computational challenges, particularly regarding processing speed and resource consumption, which impede their practical implementation with large-scale and long-sequence data. Accordingly, we present a novel probabilistic framework called EJRGF for joint registration that achieves substantially higher efficiency, reduced resource consumption, and state-of-the-art accuracy. We assume that each data point is generated from a Gaussian Mixture Model (GMM) with isotropic components and the joint registration is then reformulated as a maximum likelihood estimation problem. To solve this optimization problem efficiently, we formally derive an innovative Expectation-Maximization (EM) algorithm accelerated by a modified fast Gaussian filter based on permutohedral lattice that estimates the transformations and the GMM parameters without compromising accuracy. Furthermore, we extend our method to address global registration tasks through feature augmentation. Comprehensive experiments demonstrate that our approach outperforms state-of-the-art methods by a large margin in terms of efficiency and accuracy, achieving at least an order of magnitude acceleration compared to JRMPC.

IMAGE ALT TEXT HERE

Installation

  1. Clone the repository
git clone https://github.com/pyh3552/EJRGF.git
cd EJRGF
  1. Dependencies

    To compile the CUDA extensions, you need to have PyTorch installed.

    To run the demo we prepared, you need to have Open3D and Numpy installed.

  2. Install EJRGF

pip install .

or

pip install . --no-build-isolation

Demo

Run the demo script

cd example
python demo.py

ToDo

  • add more examples
  • upload pypi

Cite

If you find this work useful for your research, please consider citing:

@ARTICLE{11155196,
  author={Pan, Yihan and Yi, Jianjun and Dai, Zhiyong and Zhao, Yibin and Wang, Liansheng},
  journal={IEEE Robotics and Automation Letters}, 
  title={EJRGF: Efficient Joint Registration of Multiple Point Clouds Using Fast Gaussian Filter}, 
  year={2025},
  volume={10},
  number={11},
  pages={11212-11219},
  keywords={Point cloud compression;Filtering algorithms;Accuracy;Clustering algorithms;Transforms;Lattices;Three-dimensional printing;Training;Registers;Computational modeling;Mapping;probability;statistical methods},
  doi={10.1109/LRA.2025.3608652}}

Thank you for your interest in our work.

Acknowledgment

We would like to thank the authors of JRMPC, permutohedral_lattice for open sourcing their codes.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors