Spaces:
Running
Running
hide_title: true | |
sidebar_label: File IO | |
# File IO | |
There is a flexible interface for loading and saving point clouds and meshes from different formats. | |
The main usage is via the `pytorch3d.io.IO` object, and its methods | |
`load_mesh`, `save_mesh`, `load_pointcloud` and `save_pointcloud`. | |
For example, to load a mesh you might do | |
``` | |
from pytorch3d.io import IO | |
device=torch.device("cuda:0") | |
mesh = IO().load_mesh("mymesh.obj", device=device) | |
``` | |
and to save a pointcloud you might do | |
``` | |
pcl = Pointclouds(...) | |
IO().save_pointcloud(pcl, "output_pointcloud.ply") | |
``` | |
For meshes, this supports OBJ, PLY and OFF files. | |
For pointclouds, this supports PLY files. | |
In addition, there is experimental support for loading meshes from | |
[glTF 2 assets](https://github.com/KhronosGroup/glTF/tree/master/specification/2.0) | |
stored either in a GLB container file or a glTF JSON file with embedded binary data. | |
This must be enabled explicitly, as described in | |
`pytorch3d/io/experimental_gltf_io.py`. | |