isl-org / isl-org/Open3D

Why VoxelDownSample behaves differently for legacy and tensor point clouds?

Open
#6,100 2 comments 0 reactions 0 assignees View on GitHub
question
Dominant language
C++
Stars
14k
Forks
2.6k
Avg merge
5d 18h
Merged PRs (30d)
6

Description

### Checklist

- [X] I have searched for [similar issues](https://github.com/isl-org/Open3D/issues).
- [X] For Python issues, I have tested with the [latest development wheel](http://www.open3d.org/docs/latest/getting_started.html#development-version-pip).
- [X] I have checked the [release documentation](http://www.open3d.org/docs/release/) and the [latest documentation](http://www.open3d.org/docs/latest/) (for `master` branch).

### My Question

I noticed that VoxelDownSample behaves differently for legacy and tensor point clouds.

For legacy point clouds, all points that fall into single voxel are averaged. Howewer, for tensor point cloud all points seem to be centered in their voxels. It means that some information is lost here - let's consider a point cloud where all points lay on a plane. If we use the legacy implementation of VoxelDownSample, the downsampled points would still lay on the plane. Howewer, if we use the tensor implementation, we lose this property.

I looked into the code, and indeed, the tensor implementation doesn't average the points inside a voxel anywhere. I'm wondering what's the reason of this. The documentation does not inform about this difference in behavior.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.