前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Open3d 学习计划—12(Jupyter 可视化)

Open3d 学习计划—12(Jupyter 可视化)

作者头像
点云PCL博主
发布2020-09-03 16:19:59
1.7K0
发布2020-09-03 16:19:59
举报
文章被收录于专栏:点云PCL点云PCL

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

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-09-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 点云PCL 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
图像处理
图像处理基于腾讯云深度学习等人工智能技术,提供综合性的图像优化处理服务,包括图像质量评估、图像清晰度增强、图像智能裁剪等。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档