flatpoints - Flatten 3D point clouds into 2D images
Show HN: 3D to 2D, point clouds flattening (geometry images)

flatpoints applies geometry images to point clouds, turning each 3D point into a pixel on a square grid. Neighboring pixels hold neighboring points, so the resulting image is a continuous picture of the surface. This unlocks 2D tools like convolutions, SVD, and grid interpolation for point cloud data. Install via pip, then use it to resample or compress point clouds. For example, resample with hyperuniform seeds or compress by 80% using DCT. It's a practical bridge between 3D geometry and 2D image processing.
Each 3D point of the cloud becomes a 2D pixel, and the pixels together form an image-like indexing structure.
- adec314
I have been trying for a while to put irregular things (point clouds) in regular grids, to use the grid itself as a data structure. Not because it is better, but just because grids are more structured than e.g. trees and thus easier integrate into ML pipelines. It all started here, with simple multi-indexing:
https://news.ycombinator.com/item?id=49042861
Then I realised that to make the multi-indexing procedure more effective, I need some kind of preprocessing, to make the points flat (2d insteed of 3d). When they are already flat I can sort them better.
Then I heard about mesh flattening, https://geometrycollective.github.io/boundary-first-flatteni...
geometry images https://hhoppe.com/proj/gim/ and thought: this is something I need to try with point clouds, whenever they have a latent surfacic distribution. And well, it seems to work. At least now I can have bunnys dragon and elephants all to fit in the grid and not getting half of the legs, ears or whatever lost in the process.
- koolala
Could this let you conpress models into lossy systems like JpegXL?
- aaroninsf
Could someone explain to me what this is for and when it comes up?
Opposite of snark: active curiosity :)