isl-org / isl-org/Open3D

Merging empty tensor point cloud fails

Open
#7,091 2 comments 0 reactions 0 assignees View on GitHub
bug
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](https://www.open3d.org/docs/latest/getting_started.html#development-version-pip).
- [X] I have checked the [release documentation](https://www.open3d.org/docs/release/) and the [latest documentation](https://www.open3d.org/docs/latest/) (for `main` branch).

### Describe the issue

I am trying to merge 2 tensor point clouds but am getting at index error. One point cloud is empty, while another has points. I am trying to do this as I am dynamically merging point clouds from scratch

I have tried both `+` notation and `append` function (which I assume performs the same operation, but there is [no description](https://www.open3d.org/docs/release/python_api/open3d.t.geometry.PointCloud.html#open3d.t.geometry.PointCloud.append) in the docs) and both methods fail.

The legacy format accounted for this and allowed you to merge empty point clouds.

### Steps to reproduce the bug

```python
import open3d as o3d
import open3d.core as o3c

# legacy point cloud merges successfully with empty point cloud
pcd_1 = o3d.geometry.PointCloud()
pcd_2 = o3d.geometry.PointCloud()
pcd_2.points = o3d.utility.Vector3dVector([[0, 0, 0], [1, 1, 1]])
pcd_1 += pcd_2

# tensor point cloud fails to merge with empty
pcd_3 = o3d.t.geometry.PointCloud()
pcd_4 = o3d.t.geometry.PointCloud(o3c.Tensor([[0, 0, 0], [1, 1, 1]], o3c.float32))
pcd_3 += pcd_4
```

### Error message

IndexError: invalid unordered_map key

### Expected behavior

Empty tensor point clouds successfully merges with other point clouds without fail

### Open3D, Python and System information

```markdown
- Operating system: Windows 10 64-bit
- Python version: Python 3.11.9
- Open3D version: 0.18.0
- System architecture: x86
- Is this a remote workstation?: no
- How did you install Open3D?: pip
- Compiler version (if built from source): N/A
```

### Additional information

_No response_

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.