fzi-forschungszentrum-informatik / gpu-voxels

GPU-Voxels is a CUDA based library which allows high resolution volumetric collision detection between animated 3D models and live pointclouds from 3D sensors of all kinds.
Other
303 stars 85 forks source link

How to convert pointcloud to octree #128

Closed wing0716 closed 2 years ago

wing0716 commented 2 years ago

Hi, thank you very much for your research work, I noticed that you use the octree data structure to identify the environment map, but how to convert pointcloud to octree? I don't know which function to use and related API

cjue commented 2 years ago

The octree functionality of gpu-voxels has severe issues on newer CUDA hardware, therefore I would advise against using them at the moment.

Examples for the usage of octrees can be found here:

wing0716 commented 2 years ago

Thank you for your quick reply, I'm using RTX 3060 and CUDA 11.2 platform now and do have some issues when I run the sandbox, robot_vs_environment and swept_volume_vs_environment examples. Now I have 2 questions on newer CUDA hardware. First, which data structure should I use for the environment map pointcloud in collision detection, is it voxellists or voxelmap? Second, which data structure should I use for dynamic obstacle such as people? Thank you very much!

cjue commented 2 years ago

If you just want to detect collision between single point clouds and a dynamic object like a robot the fastest solution is usually using VoxelLists for both.

wing0716 commented 2 years ago

Thank you very much!