Open3D是一个开源库,支持快速开发和处理3D数据。Open3D在c++和Python中公开了一组精心选择的数据结构和算法。后端是高度优化的,并且是为并行化而设置的。

本系列学习计划有Blue同学作为发起人,主要以Open3D官方网站的教程为主进行翻译与实践的学习计划。点云PCL公众号作为免费的3D视觉,点云交流社区,期待有使用Open3D或者感兴趣的小伙伴能够加入我们的翻译计划,贡献免费交流社区,为使用Open3D提供中文的使用教程。

从0.4.0版本开始,我们通过webGL添加了对Jupyter的实验性支持.如果从pip或者conda安装Open3d的话,jupyter支持会默认开启.如果从源码安装Open3d的话,请设置Python绑定环境,了解如何建立Jupyter支持的Open3d.
要注意的是,Jupyter可视化依然处于早期的实验性阶段,以下是主要的限制.

  • 只支持点云数据.

  • 相机是用固定参数初始化的,因此初始化的视角对于点云可能不是最优的.

  • 性能没有优化.

控制

  • 鼠标滚轮:放大/缩小

  • 鼠标左键拖动:轴旋转

  • 鼠标右键拖动:平移

使用例程

Jupyter可视化被定义为 JVisualizer 类.初始化这个类,然后调用 add_geometry 去添加Open3d几何;类型,之后调用 show 将其显示在Jupyter部件上.

import numpy as np

import open3d as o3d

from open3d import JVisualizer

points = (np.random.rand(1000, 3) - 0.5) / 4

colors = np.random.rand(1000, 3)

pcd = o3d.geometry.PointCloud()

pcd.points = o3d.utility.Vector3dVector(points)

pcd.colors = o3d.utility.Vector3dVector(colors)

visualizer = JVisualizer()

visualizer.add_geometry(pcd)

visualizer.show()

如果点云是不可见的(由于相机的初始参数),可以通过鼠标缩放来将其移动到合适的视角.

注意:

关于Jupyter可视化之前有过尝试,因为数据在服务器上,想通过这种方式直接在个人电脑上查看数据,但是效果并不好,一方面是视角问题,另一方面是性能问题,很卡顿,并且当点的数量过多的时候,点云半天显示不出来.
如果大家有好的远程查看的点云数据的方式,欢迎评论留言交流.

参考文章

http://www.open3d.org/docs/release/compilation.html#jupyter-visualization-widgets-support-experimental

资源

三维点云论文及相关应用分享

【点云论文速读】基于激光雷达的里程计及3D点云地图中的定位方法

3D目标检测:MV3D-Net

三维点云分割综述(上)

3D-MiniNet: 从点云中学习2D表示以实现快速有效的3D LIDAR语义分割(2020)

win下使用QT添加VTK插件实现点云可视化GUI

JSNet:3D点云的联合实例和语义分割

大场景三维点云的语义分割综述

PCL中outofcore模块---基于核外八叉树的大规模点云的显示

基于局部凹凸性进行目标分割

基于三维卷积神经网络的点云标记

点云的超体素(SuperVoxel)

基于超点图的大规模点云分割

更多文章可查看:点云学习历史文章大汇总

SLAM及AR相关分享

【开源方案共享】ORB-SLAM3开源啦!

【论文速读】AVP-SLAM:自动泊车系统中的语义SLAM

【点云论文速读】StructSLAM:结构化线特征SLAM

SLAM和AR综述

常用的3D深度相机

AR设备单目视觉惯导SLAM算法综述与评价

SLAM综述(4)激光与视觉融合SLAM

Kimera实时重建的语义SLAM系统

SLAM综述(3)-视觉与惯导,视觉与深度学习SLAM

易扩展的SLAM框架-OpenVSLAM

高翔:非结构化道路激光SLAM中的挑战

SLAM综述之Lidar SLAM

基于鱼眼相机的SLAM方法介绍

往期线上分享录播汇总

第一期B站录播之三维模型检索技术

第二期B站录播之深度学习在3D场景中的应用

第三期B站录播之CMake进阶学习

第四期B站录播之点云物体及六自由度姿态估计

第五期B站录播之点云深度学习语义分割拓展

第六期B站录播之Pointnetlk解读

[线上分享录播]点云配准概述及其在激光SLAM中的应用

[线上分享录播]cloudcompare插件开发

[线上分享录播]基于点云数据的 Mesh重建与处理

[线上分享录播]机器人力反馈遥操作技术及机器人视觉分享

[线上分享录播]地面点云配准与机载点云航带平差

点云PCL更多活动请查看:点云PCL活动之应届生校招群

扫描下方微信视频号二维码可查看最新研究成果及相关开源方案的演示:

如果你对Open3D感兴趣,或者正在使用该开源方案,就请加入我们,一起翻译,一起学习,贡献自己的力量,目前阶段主要以微信群为主,有意者发送“Open3D学习计划”到公众号后台,和更多热爱分享的小伙伴一起交流吧!如果翻译的有什么问题或者您有更好的意见,请评论交流!!!!

以上内容如有错误请留言评论,欢迎指正交流。如有侵权,请联系删除

扫描二维码

关注我们

让我们一起分享一起学习吧!期待有想法,乐于分享的小伙伴加入免费星球注入爱分享的新鲜活力。分享的主题包含但不限于三维视觉,点云,高精地图,自动驾驶,以及机器人等相关的领域。

分享及合作方式:微信“920177957”(需要按要求备注) 联系邮箱:dianyunpcl@163.com,欢迎企业来联系公众号展开合作。

点一下“在看”你会更好看耶

Open3d 学习计划—12(Jupyter 可视化)相关推荐

  1. Open3d学习计划——4(网格)

    Open3d学习计划--4(网格) 欢迎大家关注"点云PCL"公众号,进入群聊一起学习. open3d有一种被称为TriangleMesh的3d三角网格的数据结构.下面的代码展示了 ...

  2. Open3d学习计划—高级篇 8(网格变形)

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

  3. Open3d学习计划—高级篇 7(颜色映射)

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

  4. Open3d学习计划—高级篇 6(体素化)

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

  5. Open3d学习计划—高级篇 5(RGBD融合)

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

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

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

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

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

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

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

  9. Open3d学习计划——1(简介与安装)

    Open3d学习计划--1 本文主要介绍什么是Open3D和Python的安装与测试. 什么是Open3d Open3D是一个开源库,支持快速开发和处理3D数据.Open3D在c++和Python中公 ...

最新文章

  1. jsp超链接中怎么跳转页面跳转_JSP页面跳转方法小结
  2. 升级Windows Phone Developer Tools Beta
  3. mysql列宽设置,mysql – 从.csv文件确定最佳列宽
  4. Spring5参考指南:基于注解的容器配置
  5. 行内元素和块级元素的区别,为何img、input等行内元素可以设置宽高??(夯实基础)
  6. Flink Java 使用map reduce实现wordcount
  7. HTML文件点放在手机桌面,如何把手机桌面上的文件发送到微信里
  8. 如何解决代码嵌套太深问题
  9. (继续搬)struts日期格式的转换以及hibernate中session的关闭在xml中的配置
  10. 【图文详解】用Eclipse创建Maven Web项目
  11. linux中的bg命令作用,linux bg和fg命令
  12. UFS系列十:UFS电源管理
  13. 机器学习之逻辑回归原理
  14. 2017年武昌工学院计算机基础,武昌理工学院2017.doc
  15. 根据流程图写python程序_根的解释|根的意思|汉典“根”字的基本解释
  16. JS程序|Z字形变换
  17. linux磁盘分区什么意思,linux 磁盘分区详解
  18. 为什么说用PHP开发大型系统令人不爽
  19. 期末大作业 | ToDoList网页设计 日记本界面设计记录
  20. 企业电子招标采购系统源码Spring Cloud + Spring Boot + MybatisPlus + Redis + Layui + 前后端分离 + 二次开发

热门文章

  1. 生产环境项目问题记录系列(一):一次循环数据库拖垮服务器问题
  2. ActiveMQ—消息特性(延迟和定时消息投递)
  3. C++ 笔记(20)— 异常处理(抛出异常、捕获异常)
  4. 算法设计思想(1)— 穷举法
  5. 28自定义View 模仿联系人字母侧栏
  6. 第一个MapReduce程序
  7. 探究rh6上mysql5.6的主从、半同步、GTID多线程、SSL认证主从复制
  8. cron 工具 每分钟_计划任务 cron和crontab
  9. android7.0图标反馈,android7.0 webview中 图标错位
  10. 最新android webview,Android 关于WebView全方面的使用(项目应用篇)