Squarenet gridification as a bridge between unstructured point clouds and Taichi stencil kernel #8798
ArmanddeCacqueray
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Hi everyone,
Modern ML frameworks are extremely efficient on regular tensor grids, but many real-world datasets come as unstructured point clouds. The challenge is to bridge these two representations while preserving geometric structure.
I've been working on SquareNet, a bijective gridification algorithm for point clouds.
Core idea: map an unstructured point cloud to a regular tensor through a bijective assignment—one point → one cell, invertible and neighborhood-preserving:
X(N, D) → X(n₁, n₂, …, n_d, D)with optional padding whenN ≠ n₁ × n₂ × … × n_d, and back. The Cartesian Sort algorithm makes this scalable: millions of 2D/3D points in seconds, fully vectorized, on both CPU and GPU (with PyTorch). Each point in the cloud is assigned a unique multi-index, and together these multi-indices form a regular tensor that is spatially coherent and ready for further geometric processing.SquareNet is, for example, the underlying representation behind following blue-noise sampling method RGBN, enabling fast many-body simulations that scale to 1M particles.
Connection to Taichi
Question
I'm curious whether this kind of bijective gridification preprocessing has been explored in the Taichi ecosystem, or whether there would be interest in an example benchmarks or tutorial combining SquareNet gridification + Taichi stencil/MPM kernels. I'd be happy to contribute a notebook or example if the community finds it useful.
All reactions