Open3d是由Intel发布的一个开源库,支持快速开发和处理3D数据。Open3D在c++和Python中公开了一组精心选择的数据结构和算法。后端是高度优化的,并且是为并行化而设置的。
Open3d直接使用pip安装即可。解决下载慢的问题,请切换下载源。设置方式请参考:python pip_Coding的叶子的博客-CSDN博客。
pip install open3d
pcd点云格式介绍请参考:点云格式介绍(一)_Coding的叶子的博客-CSDN博客。
对于pcd点云文件,Open3d读取到的点云通常存储到PointCloud类中,如下图所示。下图中points存储了全部的点云坐标,可以用numpy.array转换成矩阵形式。
2 numpy转PointCloud对于点云矩阵,通常要转换为PointCloud格式才能被Open3d处理,包括存储和点云处理等。
import open3d as o3d
pcd = o3d.geometry.PointCloud()
pcd.points = o3d.utility.Vector3dVector(points_array)
3 读pcd点云文件
Open3d读取pcd格式点云文件的函数为o3d.io.read_point_cloud,读取的点云存储为上图所示的PointCloud类。
import open3d as o3d
import numpy as np
pcd = o3d.io.read_point_cloud(path)
points = np.array(pcd.points) #转为矩阵
4 写pcd点云文件
保存点云文件的函数为o3d.io.write_point_cloud。
o3d.io.write_point_cloud(path, pcd)
注意事项:这样保存的文件可以被open3d直接读取,但是用其他方式读取时可能会出现如下所示的编码错误,因此最好指定保存的编码方式。
o3d.io.write_point_cloud(path, pcd , write_ascii=True)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xdd in position 173: invalid continuation byte。
python三维点云研究计划_Coding的叶子的博客-CSDN博客_python 三维点云将按照以下目录持续进行更新……点云格式介绍、点云可视化、点云投影、生成鸟瞰图、生成前视图、点云配准、点云分割、三维目标检测、点云重建、深度学习点云算法……https://blog.csdn.net/suiyingy/article/details/124017716点云格式介绍(一)_Coding的叶子的博客-CSDN博客常见点云存储方式有pcd、ply、txt、bin文件。本节主要介绍pcd点云格式。https://blog.csdn.net/suiyingy/article/details/124170147更多三维、二维感知算法和金融量化分析算法请关注“乐乐感知学堂”微信公众号,并将持续进行更新。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)