几何篇(一)


一、前言

二、主要内容

1.点云的读入、储存和可视化

2.点云的下采样

三、参考资料


一、前言

本章节将主要介绍点云的读入、储存、可视化操作以及点云的下采样操作。


二、主要内容

1.点云的读入、储存和可视化

这一小节主要讲解了点云的读取、可视化以及保存操作。

(ps:可视化窗口中可以使用“+”和“-”来调节点云单个点元的大小)

代码如下(示例):

#include <Eigen/Dense>
#include <iostream>
#include <string>
#include <memory>#include "open3d/Open3D.h"using namespace std;
using namespace open3d;int main(int argc, char *argv[]) {//******Visualize point cloud******//visualization::Visualizer visualizer;string pointcloud_path ="../data/fragment.ply";  //文件的地址std::shared_ptr<geometry::PointCloud> pointcloud = io::CreatePointCloudFromFile(pointcloud_path);if (pointcloud == nullptr) {utility::LogWarning("Unable to load pointcloud file.");return -1;};  //检查文件是否为空visualizer.CreateVisualizerWindow("Open3D", 1600, 900);visualizer.AddGeometry(pointcloud);visualizer.Run();visualizer.DestroyVisualizerWindow();bool result=open3d::io::WritePointCloudToPLY("../data/fragment_save.ply",*pointcloud,false);if(result==1){std::cout<<"保存成功"<<std::endl;}return 0;
}

可视化结果如下(示例):

2.点云的下采样

体素下采样,使用常规体素网格从输入点云创建均匀下采样的点云。它通常用作许多点云处理任务的预处理步骤。该算法主要分为两个步骤:

  1. 将输入点云进行体素分块。

  2. 对每个体素栅格内部所有点进行平均来生成一个点,从而实现点云的下采样。

如下程序是使用边长为0.05m 的体素对点云进行下采样。

代码如下(示例):
   string pointcloud_path ="../data/fragment.ply";  //文件路径std::shared_ptr<geometry::PointCloud> pointcloud = io::CreatePointCloudFromFile(pointcloud_path);if (pointcloud == nullptr) {utility::LogWarning("Unable to load source or target file.");return -1;}; //检查文件是否为空// test downsampleauto downsampled = pointcloud->VoxelDownSample(0.05);visualization::DrawGeometries({downsampled}, "Down Sampled Pointcloud");

下采样结果:


三、参考资料

http://www.open3d.org/docs/latest/tutorial/geometry/pointcloud.html#Visualize-point-cloud

总结

以上就是几何篇(一)的全部内容,完整的可执行代码可以在我的github仓库进行下载,文章会持续更新,如果文章中有写的不对的地方,希望大家可以在评论区进行批评和指正,大家一起交流,共同进步!

《Open3D点云库 C++学习笔记 》相关推荐

  1. ComeFuture英伽学院——2020年 全国大学生英语竞赛【C类初赛真题解析】(持续更新)

    视频:ComeFuture英伽学院--2019年 全国大学生英语竞赛[C类初赛真题解析]大小作文--详细解析 课件:[课件]2019年大学生英语竞赛C类初赛.pdf 视频:2020年全国大学生英语竞赛 ...

  2. ComeFuture英伽学院——2019年 全国大学生英语竞赛【C类初赛真题解析】大小作文——详细解析

    视频:ComeFuture英伽学院--2019年 全国大学生英语竞赛[C类初赛真题解析]大小作文--详细解析 课件:[课件]2019年大学生英语竞赛C类初赛.pdf 视频:2020年全国大学生英语竞赛 ...

  3. 信息学奥赛真题解析(玩具谜题)

    玩具谜题(2016年信息学奥赛提高组真题) 题目描述 小南有一套可爱的玩具小人, 它们各有不同的职业.有一天, 这些玩具小人把小南的眼镜藏了起来.小南发现玩具小人们围成了一个圈,它们有的面朝圈内,有的 ...

  4. 信息学奥赛之初赛 第1轮 讲解(01-08课)

    信息学奥赛之初赛讲解 01 计算机概述 系统基本结构 信息学奥赛之初赛讲解 01 计算机概述 系统基本结构_哔哩哔哩_bilibili 信息学奥赛之初赛讲解 02 软件系统 计算机语言 进制转换 信息 ...

  5. 信息学奥赛一本通习题答案(五)

    最近在给小学生做C++的入门培训,用的教程是信息学奥赛一本通,刷题网址 http://ybt.ssoier.cn:8088/index.php 现将部分习题的答案放在博客上,希望能给其他有需要的人带来 ...

  6. 信息学奥赛一本通习题答案(三)

    最近在给小学生做C++的入门培训,用的教程是信息学奥赛一本通,刷题网址 http://ybt.ssoier.cn:8088/index.php 现将部分习题的答案放在博客上,希望能给其他有需要的人带来 ...

  7. 信息学奥赛一本通 提高篇 第六部分 数学基础 相关的真题

    第1章   快速幂 1875:[13NOIP提高组]转圈游戏 信息学奥赛一本通(C++版)在线评测系统 第2 章  素数 第 3 章  约数 第 4 章  同余问题 第 5 章  矩阵乘法 第 6 章 ...

  8. 信息学奥赛一本通题目代码(非题库)

    为了完善自己学c++,很多人都去读相关文献,就比如<信息学奥赛一本通>,可又对题目无从下手,从今天开始,我将把书上的题目一 一的解析下来,可以做参考,如果有错,可以告诉我,将在下次解析里重 ...

  9. 信息学奥赛一本通(C++版) 刷题 记录

    总目录详见:https://blog.csdn.net/mrcrack/article/details/86501716 信息学奥赛一本通(C++版) 刷题 记录 http://ybt.ssoier. ...

  10. 最近公共祖先三种算法详解 + 模板题 建议新手收藏 例题: 信息学奥赛一本通 祖孙询问 距离

    首先什么是最近公共祖先?? 如图:红色节点的祖先为红色的1, 2, 3. 绿色节点的祖先为绿色的1, 2, 3, 4. 他们的最近公共祖先即他们最先相交的地方,如在上图中黄色的点就是他们的最近公共祖先 ...

最新文章

  1. PPDE英雄帖!广邀全球开发者执开源之桨,汇百川成海
  2. vector/list/map/set的插入、删除、遍历 - remove\erase函数
  3. 通过Dapr实现一个简单的基于.net的微服务电商系统(五)——一步一步教你如何撸Dapr之状态管理...
  4. android无线充产品,一天售罄!鲁蛋超薄无线快充太火爆 兼容苹果安卓成最大卖点...
  5. java 自定义注解+AOP实现日志记录
  6. 全面解码美妆消费者心智
  7. vue.js bootstrap 下拉列表_陕西省百度下拉总代理
  8. 【算法竞赛进阶指南 0x31 质数】阶乘分解【唯一分解定理】
  9. volatility内存取证----命令演示
  10. 如何确定自己的科研课题?
  11. SEO项目管理,该问自己的几个问题?
  12. What‘s next for AlphaFold and the AI protein-folding revolution / 什么是AlphaFold和AI蛋白质折叠革命的下一步?
  13. 根据配置好的图层文件(*.lyr),对加载的栅格数据进行渲染!
  14. Systemd 技术原理实践
  15. 科学计算机后盖换电池,图吧小白教程 篇二十二:手把手教你给手机换电池(拆机)...
  16. 内蒙古大学计算机学院保研到哪些学校,关于2021年推荐优秀应届本科毕业生免试攻读研究生的通知...
  17. win10进不了系统怎么强制进安全模式
  18. 用华为手机,别忘记打开这个“开发者选项”,能瞬间提升手机性能
  19. ES6学习笔记:箭头函数
  20. python 分词字典的词性_自然语言处理基础技术之分词、向量化、词性标注

热门文章

  1. H3C交换机以太网端口基本配置与管理
  2. BST 递归实现二叉树: 插入 删除 查找
  3. 【ELM预测】基于遗传算法改进极限学习机ELM实现数据预测matlab源码
  4. 黑牛外汇交易系统1.81版使用说明书
  5. ctfshow 菜狗杯 taptap wp
  6. Word页脚页码设置
  7. ueeshop 如何对接IMPAY PayPal stripe 轮询系统?
  8. 《压力下的角逐:索尼PS3与微软XBOX360的生死时速之战》四
  9. history 用法讲解
  10. linux下history在哪个目录下,Linux获取帮助的途径、history命令及文件系统结构