isl-org / isl-org/Open3D

PLY reader does not read vertex UV

Open
#4,885 1 comment 0 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

I am planning to read PLY files whose headers look like, for example:

```
ply
format binary_little_endian 1.0
element vertex 39809
property float x
property float y
property float z
property float u
property float v
element face 74813
property list uchar int vertex_index
end_header
```

I am reading it with:
```py
mesh = o3d.io.read_triangle_mesh(str(mesh_path / "my_mesh.ply"))
```

However, the Open3D ply reader does not handle the vertex UVs. The `triangle_uvs` field is empty.

Vertex UVs are more efficient than face UVs since each vertex may have many faces associated with it. In practice, for a typical grid mesh, you can save about 6x the storage by having vertex UVs instead.

### References

http://paulbourke.net/dataformats/ply/

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