今天开始着手处理PLY数据,由于之前没有接触过PCL,所以连最简单的数据读取与显示都搞了半天,现在将代码公布出来以供参考。

使用的环境是:vs2015+pcl1.8.1

#include "stdafx.h"
#include <iostream>
#include <string>
#include <pcl/point_types.h>
#include <pcl/io/ply_io.h>
#include <pcl/io/pcd_io.h>
#include <pcl/PCLPointCloud2.h>
#include <pcl/visualization/cloud_viewer.h>using namespace pcl;
using namespace pcl::io;
using namespace std;int main() {pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>);if (pcl::io::loadPLYFile<pcl::PointXYZ>("pointCloud.ply", *cloud) == -1) {       PCL_ERROR("Couldnot read file.\n");system("pause");return(-1);}pcl::visualization::CloudViewer viewer("Cloud Viewer");viewer.showCloud(cloud);system("pause");return(0);
}

值得注意的几点是:

1)cloud智能指针对象在定义的时候记得要初始化;一开始我没有初始化,结果程序报错:

Assertion failed: px!=0  file ..\boost\smart_ptr\shared_ptr.hpp, line 704.

2)pointCloud的格式有很多种,如PointXYZ, PointXYZRGB,...。这里我这使用的是PointXYZ,是因为使用的数据pointcloud.ply中只包含每个点的三维坐标,这里的格式需要根据自己的数据来确定。

pointcloud.ply数据格式如下:

ply
format ascii 1.0
element vertex 43200
property float x
property float y
property float z
end_header
-125 -95 232
-241 -109 456
-247 -169 462

......

......

3)数据显示的时候,一开始的界面是上面一条绿色,下面左边是黑色,右边是红色,我还以为数据出问题了,用鼠标缩放才发现这代表的是坐标轴。通过鼠标左右键与滑轮可以调节数据的缩放、旋转角度等。

PLY点云数据在PCL中读取与显示相关推荐

  1. 华云数据荣获“2021中国信创云年度领军企业” 联合发布2022中国“信创云”领域十大趋势

    2021年12月21日,由工信部信发司指导,中国软件网.海比研究院主办,中国软件行业协会应用软件产品云服务分会.中国总会计师协会信息化分会联合主办的"洞见2022 第五届中国企业服务年会&q ...

  2. 模仿微信好友列表功能(数据从手机中读取)

    http://www.uml.org.cn/mobiledev/201110121.asp http://blog.csdn.net/jiahui524/article/details/7785606 ...

  3. python图片保存和图片展示顺序_【IT专家】【 python 】 —— 数据预处理:(1) 读取与显示图片 + 图像通道顺序变换...

    本文由我司收集整编,推荐下载,如有疑问,请与我司联系 [ python ] -- 数据预处理: (1) 读取与显示图片 + 图像通道顺 序变换 2018/05/31 29 # ---- 用 OPENC ...

  4. 斯坦福的著名小兔子模型的点云数据_传统方法的点云分割以及PCL中分割模块

    之前在微信公众号中更新了以下几个章节 1,如何学习PCL以及一些基础的知识 2,PCL中IO口以及common模块的介绍 3,  PCL中常用的两种数据结构KDtree以及Octree树的介绍 有兴趣 ...

  5. 传统方法的点云分割以及PCL中分割模块

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 摘要 三维点云分割是将同属性的点云物体分割出来,以便于单独对该点云 ...

  6. 使用Meshlab对CAD模型采样点云,并在PCL中显示

    使用的版本为solidworks 2016+meshlab 2016.12+PCL 1.8.0 solidworks部分 绘制想要渲染成点云数据的模型 另存为的时候选择STL文件 mashlab部分 ...

  7. linux下读取ntfs数据,在Linux中读取NTFS分区上的数据

    在Linux中读取NTFS分区上的数据 在有些情况下,系统需要访问本地NTFS分区上的数据,也可能需要访问网络上NTFS文件格式的数据.而使用mount -t挂载文件系统时,系统报告不支持NTFS错误 ...

  8. gps在linux读取数据,v3s Linux中读取GPS数据。

    我尝试在荔枝派中读取gps的信息,我用的gps模块是NEO-6M. 以下是我的程序 #include #include#include char GPS_Data_Temp[256]= {0}; // ...

  9. 倾斜模型数据及激光雷达点云数据在EPS中联动生产高精度1:500地形图

    生产过激光雷达点云数据的朋友们肯定知道如果生产1:500高精度数据,只使用激光雷达数据在很多时候只能满足高程数据精准这一需求,很多地物的绘制只能借助于正射影像来进行绘制,这对于测区中有房屋区域的测区, ...

最新文章

  1. Java基础学习总结(15)——java读取properties文件总结
  2. openssl 证书管理
  3. big endian和 little endian
  4. vue data数据修改_Vue 超清晰思维导图(7张),详细知识点梳理!
  5. IOC操作Bean管理XML方式(FactoryBean)
  6. MyCat分布式数据库集群架构工作笔记0016---高可用_单表存储千万级_海量存储_垂直分库划分原则
  7. reduce端的连接实现
  8. simulink 28335 代码_simulink建立自己的模块库
  9. 周杰 清华大学计算机学院,周杰 -清华大学自动化系
  10. 粪斗这杆大旗下,注定只是少部分人的盛宴
  11. php 语句以句号结尾,短句末尾是否用句号
  12. sql删除元组_SQL笔记
  13. ARM嵌入式——堆栈寻址
  14. pyaudio:基于pyaudio利用Python编程从电脑端录制音频保存到指定文件夹+将录音读取出来
  15. 关于阿里云的一键部署工具【飞流】的使用(详细)
  16. php常用抽奖概率算法(抽奖,大转盘,广告首选)
  17. 【C语言】动态内存开辟的使用『malloc』
  18. 浅析信息系统架构的应用架构与数据架构
  19. 小米9网络位置服务器,如何查看小米9手机当前的IP地址
  20. 计算机基础-数据存储

热门文章

  1. 迪士尼机器人芭蕾舞_迪士尼乐园里的机器人又有新消息,这次是关于柔软皮肤...
  2. 计算机的USB接口可以扩展吗,电脑的USB接口不够用怎么办?别急,我来支招!
  3. 1348:【例4-9】城市公交网建设问题——Kruskal算法
  4. uniapp调用百度地图导航
  5. CoreOS Linux available in China
  6. v67.03 鸿蒙内核源码分析(字符设备) | 绝大多数设备都是这类 | 百篇博客分析OpenHarmony源码
  7. Linux7安装keepalive,keepalive配置文件详解
  8. viewers.js 图片查看插件使用说明-vue中引用
  9. 微信支付v3生成签名
  10. rst 格式文档编译方案