pyntcloud open3d pyvista pypcl四种格式互换
mark一下
原文链接:https://blog.csdn.net/weixin_39902184/article/details/111448142
先介绍三种格式的转换pyntcloud open3d pyvista
pyntcloud只支持 "PYVISTA"和 "OPEN3D"之间的转换
import open3d as o3d
from pyntcloud import PyntCloud
####Open3D===》PyntCloud===》Open3D
# FROM Open3D
original_triangle_mesh = o3d.io.read_triangle_mesh("diamond.ply")
cloud = PyntCloud.from_instance("open3d", original_triangle_mesh)
# TO Open3D
cloud = PyntCloud.from_file("diamond.ply")
converted_triangle_mesh = cloud.to_instance("open3d", mesh=True) # mesh=True by default
import pyvista as pv
from pyntcloud import PyntCloud
####pyvista===》PyntCloud===》pyvista
# FROM PyVista
original_point_cloud = pv.read("diamond.ply")
cloud = PyntCloud.from_instance("pyvista", original_point_cloud)
# TO PyVista
cloud = PyntCloud.from_file("diamond.ply")
converted_triangle_mesh = cloud.to_instance("pyvista", mesh=True)
格式互转
- Open3D===》PyntCloud===》Open3D
import open3d as o3d
from pyntcloud import PyntCloud
####Open3D===》PyntCloud===》Open3D
# FROM Open3D
original_triangle_mesh = o3d.io.read_triangle_mesh("diamond.ply")
cloud = PyntCloud.from_instance("open3d", original_triangle_mesh)
# TO Open3D
converted_triangle_mesh = cloud.to_instance("open3d", mesh=True) # mesh=True by default
- pyvista===》PyntCloud===》pyvista
import pyvista as pv
from pyntcloud import PyntCloud
####pyvista===》PyntCloud===》pyvista
# FROM PyVista
original_point_cloud = pv.read("diamond.ply")
cloud = PyntCloud.from_instance("pyvista", original_point_cloud)
# TO PyVista
converted_triangle_mesh = cloud.to_instance("pyvista", mesh=True)
- Open3D===》PyntCloud===》pyvista
import open3d as o3d
import pyvista as pv
from pyntcloud import PyntCloud
####Open3D===》PyntCloud===》pyvista
# FROM Open3D
original_triangle_mesh = o3d.io.read_triangle_mesh("diamond.ply")
cloud = PyntCloud.from_instance("open3d", original_triangle_mesh)
# TO PyVista
converted_triangle_mesh = cloud.to_instance("pyvista", mesh=True)
- pclpy===》pyvista
- 需要借助numpy格式,所以暂时只说点转换;其他库转换也是类似的,如果不是numpy需要先转成numpy格式
from pclpy import pcl
import numpy as np
import pyvista as pv
import pclpy
####Open3D===》pyvista
# FROM pclpy
pcl.io.loadPLYFile('2211.ply', original_cloud)
# TO PyVista
points = pv.PolyData(original_cloud.xyz)#original_cloud.xyz是numpy格式的