目录:

  • 前言
  • 1. open3d.geometry.PointCloud

前言

点云简单来说就是3d坐标下一个个点组成的数据,每个点可以包含x,y,z,颜色、分类值、强度值、时间等等信息。点云是3d数据的表示形式之一。

1. open3d.geometry.PointCloud

open3d中用来表示点云的数据结构。pointcloud对象包含了很多处理点云的成员方法,如点云体素下采样,点云上色等等。
pointcloud的静态字段有:
(1)colors :numpy数组数据,用来保存每一个点的颜色,shape为(num_points, 3)

(2) covariances:点协方差,numpy数组数据,shape为(num_points, 3, 3)

(3)normals :点云法线,numpy数组数据,shape为(num_points, 3)

(4)points :用于保存所有点数据,每个点有x,y,z坐标,numpy数组数据,shape为(num_points, 3)

下面这个例子生成点云数据:

import open3d as o3d
import numpy as npnum_points=10000
pcd=o3d.geometry.PointCloud()
points=np.random.randint(50, size=(num_points,3))
points=o3d.utility.Vector3dVector(points)
pcd.points=points
o3d.visualization.draw_geometries([pcd])

可视化结果如下:

下面我们在上面代码基础上对点云进行上色,我们把x坐标值小于25的变成红色,否则变成蓝色:

import open3d as o3d
import numpy as np
num_points=10000
pcd=o3d.geometry.PointCloud()
points=np.random.randint(50, size=(num_points,3))
points=o3d.utility.Vector3dVector(points)
pcd.points=points
color=np.zeros((num_points,3))
for i in range(num_points):if np.asarray(pcd.points)[i,0]<25:color[i,0]=1else:color[i,2]=1
pcd.colors=o3d.utility.Vector3dVector(color)
o3d.visualization.draw_geometries([pcd])

可视化结果如下:

open3d学习教程1--点云对象PointCloud相关推荐

  1. 3d机器学习open3d学习教程4--三角网格对象TriangleMesh

    目录: 前言 1. open3d.geometry.TriangleMesh 2.例子 前言 再来整一整另一种3d数据.接着上一节的点云2 1. open3d.geometry.TriangleMes ...

  2. open3d学习教程2--点云1

    目录: 1.open3d介绍 2.点云 2.1 读取,可视化点云 2.2点云体素下采样 2.3点法线估计 2.4点云着色 1.open3d介绍 接着上一节点云pointcloud open3d是一个开 ...

  3. 3d机器学习open3d学习教程3--点云2

    目录: 前言 1.点云裁剪 2.点云边界框 3.凸包 4.DBSCAN 聚类 5.平面分割 隐藏点移除 前言 接着上一节点云1 本节数据地址:链接:https://pan.baidu.com/s/1O ...

  4. 【云计算学习教程】私有云、社区云、公共云和混合云:云计算的4种部署模型

    文章目录 私有云 云端部署何处 云端所有权归谁 云端由谁负责日常管理 社区云 公共云 混合云 公/私混合云的优势 公/私混合云的构成 公/私混合云的功能 云计算有 4 种部署模型,分别是私有云.社区云 ...

  5. akka学习教程(十四) akka分布式实战

    akka系列文章目录 akka学习教程(十四) akka分布式实战 akka学习教程(十三) akka分布式 akka学习教程(十二) Spring与Akka的集成 akka学习教程(十一) akka ...

  6. akka学习教程(十三) akka分布式

    akka系列文章目录 akka学习教程(十四) akka分布式实战 akka学习教程(十三) akka分布式 akka学习教程(十二) Spring与Akka的集成 akka学习教程(十一) akka ...

  7. Open3d学习计划—高级篇 4(多视角点云配准)

    本文为转载文章,原创作者为blue同学,可关注他的博客:https://blog.csdn.net/io569417668 Open3D是一个开源库,支持快速开发和处理3D数据.Open3D在c++和 ...

  8. Open3d学习计划—高级篇 2(彩色点云配准)

    Open3D是一个开源库,支持快速开发和处理3D数据.Open3D在c++和Python中公开了一组精心选择的数据结构和算法.后端是高度优化的,并且是为并行化而设置的. 本系列学习计划有Blue同学作 ...

  9. Open3d学习计划—高级篇 3(点云全局配准)

    Open3D是一个开源库,支持快速开发和处理3D数据.Open3D在c++和Python中公开了一组精心选择的数据结构和算法.后端是高度优化的,并且是为并行化而设置的. 本系列学习计划有Blue同学作 ...

最新文章

  1. mysql.net开发驱动_mysql数据库.net开发驱动(mysql connector net )
  2. C++ vector容器删除操作
  3. RAID 0、1、5、1+0总结
  4. JS定义数组,初始化
  5. python控制电脑唤醒_python socket发送魔法包网络唤醒开机.py
  6. 一文看懂三维建模到底是什么?
  7. 《大数据时代》读后感
  8. 转载的计算机网络课后答案(部分)
  9. 中间件 | 负载均衡策略
  10. 双屏幕显示,两个显示器分辨率不一样处理
  11. Distill文章-A gentle introduction to graph Neural Networks(图神经网络是怎么构造的)
  12. CentOS docker 部署 flask + uWSGI + Nginx + Supervisor错误
  13. 计算机三级数据库技术——第一章 数据库应用系统开发方法学习笔记
  14. 《高级软件测试管理》学习笔记——人员技能 团队构成
  15. 2021四川艺术高考成绩查询,2021四川高考艺术类分数线预测
  16. 光脚丫思考Vue3与实战:第05章 计算属性和侦听器 第01节 计算属性
  17. CC2530/ESP32+传感器+ZigBee+MQTT+MYSQL+Springboot+Vue+Echarts的老人卫生间防摔倒自动报警系统
  18. supervisorctl使用记录
  19. 本地运行asp,无需配置iis,最简单的方法!
  20. 建立数据中转服务器的详细方法

热门文章

  1. 计算机画国旗教案,画国旗教案
  2. 入门kpi的后台工具类
  3. HP G9 服务器系统安装注意事项
  4. 计算机如何安装cpu风扇,cpu风扇怎么装(台式电脑安装步骤图)
  5. c语言二维数组的删除,C语言课设1、二维数组的应用2、删除指定字符3、楼盘管.doc...
  6. 实习记录(一) Java 编程风格规约
  7. Sapling: 一款 Facebook 开源跨平台、高度可扩展、兼容 Git 的源码控制系统
  8. 【徐禾 政治经济学概论】 读书笔记 §1.3劳动的二因素:具体劳动和抽象劳动(下.价值量的规定性)
  9. 3.2.1 运维自动化之ansible模块
  10. linux 内核路由表 U G H等含义