To thoroughly investigate the non-overlapping registration problem, we created our own datasets: Pokemon-Zero for zero overlap and Pokemon-Neg for negative overlap. In this section, we describe the process of dataset creation.
First, we obtained five Pokemon models: “Charizard”, “Bulbasaur”, “Mew”, “Nidoking”, and “Pikachu”. Using FPS (Farthest Point Sampling) , we sampled each model to obtain 4096 points. Next, we randomly split each downsampled model into two non-overlapping parts and sampled 1024 points from each part to construct sparse point clouds, increasing the difficulty of registration. Finally, we randomly rotated and translated one of the parts to create the source point cloud and ground truth transformation matrix. Since both the second and third steps involve randomness, theoretically, our training set is infinitely large. To remove randomness during testing, we randomly generated 450 pairs of point clouds using this method and stored them as the test set.
The "dataset.py" can be used to parse this dataset.