zoukankan      html  css  js  c++  java
  • 点云数据(point cloud) 【转】

    转自caimagic的专栏

    一:什么是点云数据

             点云数据是指在一个三维坐标系统中的一组向量的集合。这些向量通常以X,Y,Z三维坐标的形式表示,而且一般主要用来代表一个物体的外表面形状。不经如此,除(X,Y,Z)代表的几何位置信息之外,点云数据还可以表示一个点的RGB颜色,灰度值,深度,分割结果等。

    Eg..Pi={Xi, Yi, Zi,…….}表示空间中的一个点,

    Point Cloud={P1, P2, P3,…..Pn}表示一组点云数据。

    二:点云数据的获得

             大多数点云数据是由3D扫描设备产生的,例如激光雷达(2D/3D),立体摄像头(stereo camera),越渡时间相机(time-of-flight camera)    。这些设备用自动化的方式测量在物体表面的大量的点的信息,然后用某种数据文件输出点云数据。这些点云数据就是扫描设备所采集到的。

    三:点云数据的用途

    作为3D扫描的结果,点云数据有多方面的用途,包括为制造部件,质量检查,多元化视觉,卡通制作,三维制图和大众传播工具应用等创建3D CAD模型。

    当点云可以直接被描绘和观察时,通常点云本身不能直接用于3D应用,因此一般通过表面重建的方法将它转换为多边形或三角形等网状模型,NURBS曲面模型(曲线曲面的非均匀有理B样条模型)和CAD模型。这里有很多技术应用在将点云转换为3D表面的过程中。

           四:点云数据的格式

             点云数据是3D激光雷达扫描仪的基本输出。这通用的点云数据文件形式是3D坐标文件(经常指一个xyz文件)。这些文件是ASCII,因此可以被所有的后处理软件读取。

    这些像素在一个3D灰度文件里面是如下形式

    灰度像素点云数据:X1, Y1, Z1,灰度值1

                                           X2, Y2, Z2,灰度值2

                                                                     。。。。

             同样的,这些像素在一个rgb文件里面是如下形似

    彩色点云数据:X1, Y1, Z1, r1, g1, b1

                                  X2 , Y2, Z2, r2, g2, b2

                                ………………

             一般来说,每个扫描仪制造商和每个点云数据处理软件制造商都有他们各自特定的二进制文件。以下是一些文件扩展名相应不同的二进制文件的例子

             扫面设备制造商

             Leica: .coe

             Riegl:        .3dd

             点云数据处理软件制造商

    Polywork: .pif 文件格式

  • 相关阅读:
    HTML5 程序设计笔记(一)
    前端插件小结
    Android 学习手札(三) 视图(View)
    Python32期【pthon基础 day 3】01 早测试
    Python32期【pthon基础 day 2】04 数据类型1-2
    Python32期【pthon基础 day 2】03 数据类型2
    Python32期【pthon基础 day 2】02 数据类型1
    Python32期【pthon基础 day 2】01 早测试
    Python32期【pthon基础 day 1】03 小作业
    Python32期【pthon基础 day 1】02 注释2
  • 原文地址:https://www.cnblogs.com/mazhenyu/p/8287785.html
Copyright © 2011-2022 走看看