快速看懂ply格式
来源:互联网 发布:qq刷会员软件 编辑:程序博客网 时间:2024/05/29 04:37
我们对照着例子来快速的认识一下ply格式,后面会给出详细说明
首先总体来看,ply的文件结构为: 文件头+数据内容,文件头从 ply 一行开始,到 end_header 为止,里面定义了此 ply文件中数据的组织形式,包括数据类型和个数。之后的数据内容完全按照文件头的定义来组织。
例1、
plyformat ascii 1.0element vertex 5property float xproperty float yproperty float zproperty uchar redproperty uchar greenproperty uchar blueend_header-0.0856152 0.0246039 0.683328 0 255 0-0.510705 -0.154819 0.806933 0 255 0-0.158854 0.184305 0.77175 0 255 0 0.252752 0.0789101 0.738927 0 255 0-0.388887 -0.120427 0.73772 0 255 0
例一比较简单,只有顶点,
format关键字后跟着的是数据的编码形式,分为ASCII码和binary两类;
element关键字后面跟的是元素类型和个数,这里是5个顶点;元素除了顶点(vertex)外还有面片(face);
property关键字后面跟的是这个元素(element)的数据类型,此处表示每个点(用一行表示)后跟着6个数据,分别为x、y、z、r、g、b其中xyz坐标用float类型表示,rgb颜色用uchar类型表示;
例2、
plyformat binary_little_endian 1.0comment abc.pngelement vertex 300property float32 xproperty float32 yproperty float32 zelement face 600property list uint8 uint32 vertex_indicesproperty list uint8 float32 texcoordend_header
例二是个带贴图的模型,这里只给出文件头,
跟例一一样,
format指定编码类型,这里用的是二进制压缩编码;
comment后跟着的是注释信息,带贴图的ply文件需要将贴图文件名放在注释信息后,除此之外comment后还可以跟一些作者、版本等信息;
element例二出现了两个element,分别为第 4行的vertex和第 8行的face,后面跟的数字是每个元素的个数,即vertex占了 300行,face占了其后的600行;
vertex后的property与例一不同只有xyz的坐标,没有颜色,用32位float表示;
face后的property有两行,第一行定义了face的顶点列表,第二行定义了face对应贴图的坐标列表;
第一行 "list uint8uint32 vertex_indices "
list表示后面跟着的是个列表,vertex_indices指的是这是个顶点列表,本行用一个 uint8的数字打头,指出列表中的元素个数(对于面片来说一般大于三),然后unint32表示的是列表中数据的类型,也就是用32位无符号整形表示此面片顶点对应的vertex元素的编号(按顺序从小到大)。
第二行 "list uint8float32 texcoord "
list表示后面跟着的是个列表,texcoord指的是这是个纹理坐标列表,同样用一个uint8的数字打头,指出列表中的元素个数(uv坐标就是2),然后float32表示的是列表中数据的类型,也就是用32位float表示纹理坐标值。
==================================
到此看完例子基本上就明白ply文件的组织结构了(如有不清楚的地方我再补充)
关于其中可用的数据类型,可从官网给出的表格中寻找
http://paulbourke.net/dataformats/ply/
- 快速看懂ply格式
- PLY格式
- ply格式
- PLY格式学习
- PLY格式介绍与读取
- ply格式转换成点云pcd格式
- .ply模型格式解析与Loader编写
- 点云pcd格式转换成ply格式
- 快速看懂HashMap
- ply格式点云在PCL中显示
- 看懂JSP声明的格式。。。
- pcl:三维模型obj格式转成pcl常用点云处理格式.pcd+matlab:.ply<->.pcd+其他.stl,.obj,.ply等三维格式互相转化方法
- 将mpts格式点云转换为ply和pcd格式
- PLY格式点云转换为PCD格式的点云
- 【Matlab Computer Vision System ToolBox】学习笔记-4 -点云文件PLY格式
- PLY文件
- PLY文件格式
- ply 文件格式
- 背包问题
- Android Priority Job Queue (Job Manager):后台线程任务结果传回前台(三)
- [leetcode]: 501. Find Mode in Binary Search Tree
- (数据结构课程设计)稀疏矩阵运算器
- ListView
- 快速看懂ply格式
- 在C#中如何获取字符串的真实的长度
- AlphaGo已经拿下围棋,创投界的“Master”何时出现?
- javaMail 的使用,java代码发送一份邮件
- Kotlin入门____基础语法(一)
- Android 广播 动、静态注册广播(作为内部类使用)
- C#实现中英文混合字符串截取的方法
- tensorflow ValueError: Dimensions must be equal
- Maven| Maven相关概念