转自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 文件格式

点云数据(point cloud) 【转】的更多相关文章

  1. OpenStack 企业私有云的若干需求(4):混合云支持 (Hybrid Cloud Support)

    本系列会介绍OpenStack 企业私有云的几个需求: 自动扩展(Auto-scaling)支持 多租户和租户隔离 (multi-tenancy and tenancy isolation) 混合云( ...

  2. vtk点云数据的显示[转]

    #include "vtkActor.h" #include "vtkRenderer.h" #include "vtkRenderWindow.h& ...

  3. PCL 点云数据操作 OpenCV遍历数据

    1.对于点云类型实例cloud,对其第i个点进行赋值操作,使用cloud.point[i].x 和 cloud.point[i].y 和cloud.point[i].z 分别对其XYZ坐标赋值. cl ...

  4. 从PCD文件写入和读取点云数据

    (1)学习向PCD文件写入点云数据 建立工程文件ch2,然后新建write_pcd.cpp  CMakeLists.txt两个文件 write_pcd.cpp : #include <iostr ...

  5. 向PCD文件写入点云数据

    博客转载自:http://www.pclcn.org/study/shownews.php?lang=cn&id=83 本小节我们学习如何向PCD文件写入点云数据. 代码 章例2文件夹中,打开 ...

  6. 从PCD文件中读取点云数据

    博客转载自:http://www.pclcn.org/study/shownews.php?lang=cn&id=84 在本小节我们学习如何从PCD文件中读取点云数据. 代码 章例1文件夹中, ...

  7. 2019 华云数据java面试笔试题 (含面试题解析)

    本人3年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条.华云数据等公司offer,岗位是Java后端开发,最终选择去了华云数据. 面试了很多家公司,感觉大部分公司考察的点 ...

  8. PCD(点云数据)文件格式

    博客转载自:http://www.pclcn.org/study/shownews.php?lang=cn&id=54 为什么用一种新的文件格式? PCD文件格式并非白费力气地做重复工作,现有 ...

  9. 29 基于PCL的点云平面分割拟合算法技术路线(针对有噪声的点云数据)

    0 引言 最近项目中用到了基于PCL开发的基于平面的点云和CAD模型的配准算法,点云平面提取采用的算法如下. 1 基于PCL的点云平面分割拟合算法 2 参数及其意义介绍 (1)点云下采样 1. 参数: ...

随机推荐

  1. thinkphp中I()方法的详解

    I('post.email','','email'); int boolean float validate_regexp validate_url validate_email validate_i ...

  2. ARKit:增强现实技术在美团到餐业务的实践

    前言 增强现实(Augmented Reality)是一种在视觉上呈现虚拟物体与现实场景结合的技术.Apple 公司在 2017 年 6 月正式推出了 ARKit,iOS 开发者可以在这个平台上使用简 ...

  3. JAVAEE——SSH项目实战03:新增客户、数据字典、文件上传和修改客户

    作者: kent鹏 转载请注明出处: http://www.cnblogs.com/xieyupeng/p/7145599.html 一.新增客户 1.数据字典  用于枚举项目中有限个数的字典项 (1 ...

  4. shell if [ -d filename]

    [ -a FILE ] 如果 FILE 存在则为真. [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真. [ -c FILE ] 如果 FILE 存在且是一个字特殊文件则为真. [ ...

  5. [python 源码]整数对象的创建和维护

    刚开始学python时候,发现一个很迷惑的现象,一直到看了源码后才知道了: >>> a=6 >>> b=6 >>> a is b True 想用同 ...

  6. linux命令大全之cal命令详解(显示日历)

    cal命令可以用来显示公历(阳历)日历. 1.命令格式:cal [参数][月份][年份] 2.命令功能:用于查看日历等时间信息,如只有一个参数,则表示年份(1-9999),如有两个参数,则表示月份和年 ...

  7. 数据储存为base64编码,如何实现模糊搜索

    假设字段title存储的是经过base64编码后的字符串,$key是存搜索关键字的变量 则普通的查询方法, select * from 表名 where title like '$key'; 无法正确 ...

  8. BZOJ 1528 [POI2005]sam-Toy Cars(优先队列)

    [题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=1528 [题目大意] 地上最多可以放k个玩具,现在给出需求顺序, 问最少需要去架子上拿几 ...

  9. 【ACM-ICPC 2018 徐州赛区网络预赛】E. End Fantasy VIX 血辣 (矩阵运算的推广)

    Morgana is playing a game called End Fantasy VIX. In this game, characters have nn skills, every ski ...

  10. C++使用new和不使用new创建对象区别

    前言 在使用面向对象的时候,发现使用new和不使用new创建的对象区别还是蛮大的,做个总结: 总结 new创建的是一个指向类对象的指针,需要指针进行接收,一处初始化,多处使用,但是不用new创建的话不 ...