isl-org / isl-org/Open3D

Can we support open3d.t.io.read_point_cloud()'s input is I/O object

Open
#5,336 1 comment 2 reactions 0 assignees View on GitHub
feature request
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).

### Proposed new feature or change

The function above now only accept str input,such as:
```
import open3d as o3d
pcd=o3d.t.io.read_point_cloud('a.pcd')
```
This is quite inconvenient when open3d is used under streaming condition,on this condition,i have to download the pcd file and save to local disk first,then use the code above to parse it.This is time and I/O consuming.
If we have a function below:
```
buffer = requests.get(pcd_url, stream=True, timeout=3600).content
pcd_io= BytesIO(buffer)
pcd=o3d.t.io.read_point_cloud(pcd_io)
```
Then we can skip the saving pcd file to local disk procedure.
Thanks for your attention!

### References

_No response_

### 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.