Open3D文件类型简介
Open3D是一个开源库,支持快速开发处理3D数据的软件。Open3D在C++和Python中公开了一组精心挑选的数据结构和算法。后端经过了高度优化,并设置为并行化。它的代码是干净的、风格一致的。
点云(Point Cloud)
*.ply
一种由斯坦福大学的Turk等人设计开发的多边形文件格式,因此也被称为斯坦福三角格式。文件格式有文本和二进制两种。
典型的PLY对象定义仅仅是顶点的(x, y, z)三元组列表和由顶点列表中的索引描述的面的列表。
文件结构如下:
Header(头部)
Vertex List(顶点列表)
Face List(面列表)
(lists of other elements)(其它元素列表)
*.pcd
PCL库官方指定格式,典型的为点云量身定制的格式。优点是支持n维点类型扩展机制,能够更好的发挥PCL库的点云处理性能。文件格式有文本和二进制两种。
pcd格式具有文件头,用于描绘点云的整体信息。数据本体部分由点的笛卡尔坐标构成,文本模式下以空格做分隔符。
Format | Description |
---|---|
xyz | 每一行包括[x, y, z]三个值,x, y, z是三维坐标 |
xyzn | 每一行包括[x, y, z, nx, ny, nz]六个值,其中nx, ny, nz是法线 |
xyzrgb | 每一行包括[x, y, z, r, g, b]六个值,这里r, g, b的范围在[0, 1]浮动 |
pts | 第一行是一个整数,表示点的个数。之后每一行包括[x, y, z, i, r, g, b]七个值,其中rgb的类型为uint8 |
ply | 一种用于存储描述为多边形集合的图形对象的格式 |
pcd | 一种存储点云数据的文件格式 |
网格(Mesh)
*.obj
是一种文本文件。通常用以“#”开头的注释行作为文件头。数据部分每一行的开头关键字代表该行数据所表示的几何和模型元素,以空格做数据分隔符。
对于点云数据来说,其中最基本的两个关键字:
1.v 几何体顶点(Geometric vertices)
2.f面(Face)
Format | Description |
---|---|
ply | 一种用于存储描述为多边形集合的图形对象的格式 |
stl | 一个三维表面几何图形的三角形表示。表面在逻辑上被分割成一系列小三角形(平面)。每个面由一个垂直方向和三个代表三角形顶点(角)的点来描述。这些数据被切片算法用于确定由fabber构建的三维形状的横截面 |
obj | 定义对象的几何形状和其他属性波前的先进的可视化工具。也可以用于在高级可视化工具之间来回传输几何数据和其他应用程序。 |
off | 表示可能共享顶点的平面多边形集合,这是描述多面体的一种方便的方法。 |
gltf | json文件,描述整个场景结构、动画、相机以及和二进制文件和图片文件的联系方式 |
参考:
https://blog.csdn.net/io569417668/article/details/106272710?spm=1001.2014.3001.5501
https://cloud.tencent.com/developer/article/1475778