石鑫华视觉网| 东莞华视自动化科技有限公司|机器视觉商城|机器视觉论坛|淘宝店铺

机器视觉_石鑫华视觉网_光源_控制器_工业相机_镜头_视觉方案_NI_LabVIEW_Vision_VBAI_图像处理教程_论坛_商城_东莞华视自动化科技有限公司,机器视觉,工业相机,工业镜头,LED光源,图像处理,视觉方案,VBAI,LabVIEW

石鑫华视觉网,东莞华视自动化科技有限公司,机器视觉商城淘宝店,机器视觉网,机器视觉论坛,机器视觉光源,光源控制器,工业相机,工业镜头,视觉方案,机器视觉系统,图像处理教程,LabVIEW

当前位置: 首页 > 百科 >

PLY

时间:2013-11-06来源:机器视觉网http://shixinhua.com 作者:石鑫华机器视觉网 点击:

PLY

石鑫华机器视觉网:PLY 是一种电脑档案格式,全名为 多边形档案(Polygon File Format 或 史丹佛三角形档案(Stanford Triangle Format
史丹佛大学的 的 The Digital Michelangelo Project 计划采用 PLY 格式储存极高分辨率之 米开朗基罗 的作品
史丹佛大学的 的 The Digital Michelangelo Project 计划采用 PLY 格式储存极高分辨率之 米开朗基罗 的作品 "大卫" 雕塑。
该格式主要用以储存立体扫描结果的三维数值,透过多边形片面的集合描述三维物体,与其他格式相较之下这是较为简单的方法。它可以储存的资讯包含颜色、透明度、表面法向量、材质坐标与资料可信度,并能对多边形的正反两面设定不同的属性。
在档案内容的储存上 PLY 有两种版本,分别是纯文字(ASCII)版本与二元码(binary)版本,其差异在储存时是否以 ASCII 编码表示元素资讯。

档案格式

每个 PLY 档都包含档头(header),用以设定网格模型的“元素”与“属性”,以及在档头下方接着一连串的元素“数值资料”。一般而言,网格模型的“元素”就是顶点(vertices)、面(faces),另外还可能包含有边(edges)、深度图样本(samples of range maps)与三角带(triangle strips)等元素。无论是纯文字与二元码的 PLY 档,档头资讯都是以 ASCII 编码编写,接续其后的数值资料才有编码之分。PLY 档案以此行:
 ply
开头作为 PLY 格式的识别。接着第二行是版本资讯,目前有三种写法:
 format ascii 1.0
 format binary_little_endian 1.0
 format binary_big_endian 1.0
其中 ascii, binary_little_endian, binary_big_endian 是档案储存的编码方式,而 1.0 是遵循的标准版本(现阶段仅有 PLY 1.0 版)。在档头中可使用 'comment' 作为一行的开头以编写注解,例如:
 comment This is a comment!
描述元素及属性,必须使用 'element' 及 'property' 的关键字,一般的格式为 element 下方接着属性列表,例如:
 element <element name> <number in file>
 property <data_type> <property name 1>
 property <data_type> <property name 2>
 property <data_type> <property name 3> 
'property' 不仅定义了资料的型态,其出现顺序亦定义了资料的顺序。内定的资料形态有两种写法:一种是 char uchar short ushort int uint float double, 另外一种是具有位元长度的 int8 uint8 int16 uint16 int32 uint32 float32 float64。 例如, 描述一个包含 12 个顶点的物体,每个顶点使用 3 个单精度浮点数 (x,y,z) 代表点的座标, 使用 3 个 unsigned char 代表顶点颜色,颜色顺序为 (B, G, R), 则档头的写法为:
 element vertex 12
 property float x
 property float y
 property float z
 property uchar blue
 property uchar green
 property uchar red
其中 vertex 是内定的元素类型,接续的 6 行 property 描述构成 vertex 元素的数值字段顺序代表的意义,及其资料形态。
另一个常使用的元素是。由于一个面是由 3 个以上的顶点所组成,因此使用一个“顶点列表”即可描述一个面, PLY 格式使用一个特殊关键字 'property list' 定义之。 例如, 一个具有 10 个面的物体,其 PLY 档头可能包含:
 element face 10
 property list uchar int vertex_indices
'property list' 表示该元素 face 的特性是由一行的顶点列表来描述。列表开头以 uchar 型态的数值表示列表的项目数,后面接着资料型态为 int 的顶点索引值 (vertex_indices),顶点索引值从 0 开始。
最后,标头必须以此行结尾:
 end_header
档头后接着的是元素资料(端点坐标、拓扑连结等)。在 ASCII 格式中各个端点与面的资讯都是以独立的一行描述,而二元编码格式则连续储存这些资料,加载时须以 'element' 定义的元素数目以及 'property' 中设定的资料形态计算各笔字段的长度。

范例

一个典型的 PLY 档案结构分成三部分:
 檔頭 (從 ply 開始到 end_header )
 頂點元素列表
 面元素列表
其中的 顶点元素列表 一般以 x y z 方式排列,形态如档头所定义;而 面元素列表 是以下列格式表示。
 <組成面的端點數 N> <端點#1的索引> <端點#2的索引> ... <端點#N的索引>
例如画出一个有 4 个顶点,4 个面的四面体,档案内容为:
 ply
 format ascii 1.0
 comment 這是一個正四面體
 element vertex 4
 property float x
 property float y
 property float z
 element face 4
 property list uchar int vertex_index
 end_header
 0 3 0
 2.449 -1.0 -1.414
 0 -1 2.828
 -2.449 -1.0 -1.414
 3 0 1 3
 3 0 2 1
 3 0 3 2
 3 1 2 3
其中 1~10 行是档头, 11~14 行是顶点元素列表, 15~18 行则是面元素列表 。

历史

PLY 格式发展于 90年代中期,在史丹佛大学图学实验室的 Marc Levoy 教授指导下,由 Greg Turk 及其他成员开发出来。PLY 格式受 Wavefront .obj 格式的启发,但改进了 Obj 格式所缺少的对任意属性及群组的扩充性。因此 PLY 格式发明了 "property" 及 "element" 这两个关键词,来概括“顶点、面、相关资讯、群组”的概念。
 
------分隔线----------------------------
  • 上一篇:PDF
  • 下一篇:PNG
石鑫华推荐
  • 隔行扫描

    隔行扫描 东莞华视自动化科技有限公司 http://pcmv.cn- 石鑫华视觉网 http://shixinhu...

  • 逐行扫描

    逐行扫描 石鑫华视觉网 http://shixinhua.com- 东莞华视自动化科技有限公司 http://pc...

  • 像方远心镜头

    像方远心镜头,东莞华视自动化科技有限公司,石鑫华视觉网,光轴,像方远心光路,调焦,测量...

  • 物方远心镜头

    物方远心镜头,物方远心光路,东莞华视自动化科技有限公司,石鑫华视觉网,光轴,畸变,孔径...

  • Gige Vision

    GigE Vision Gige Vision 概述 GigE Vision是由自动化影像协会AIA(Automated Imaging ...