open3d操作.ply文件(点云)

2023-11-09

读取.ply文件

import open3d as o3d
pcd=o3d.io.read_point_cloud(ply_path,format='ply')
ppoints=np.asarray(pcd.points)
pcolors=np.asarray(pcd.colors) 

生成.ply文件

pcd = o3d.geometry.PointCloud()
pcd.points = o3d.utility.Vector3dVector(xyz)
o3d.io.write_point_cloud("../../TestData/sync.ply", pcd)

点云可视化

print("Load a ply point cloud, print it, and render it")
ply_point_cloud = o3d.data.PLYPointCloud()
pcd = o3d.io.read_point_cloud(ply_point_cloud.path)
print(pcd)
print(np.asarray(pcd.points))
o3d.visualization.draw_geometries([pcd],
                                  zoom=0.3412,
                                  front=[0.4257, -0.2125, -0.8795],
                                  lookat=[2.6172, 2.0475, 1.532],
                                  up=[-0.0694, -0.9768, 0.2024])

点云下采样

print("Downsample the point cloud with a voxel of 0.05")
downpcd = pcd.voxel_down_sample(voxel_size=0.05)
o3d.visualization.draw_geometries([downpcd],
                                  zoom=0.3412,
                                  front=[0.4257, -0.2125, -0.8795],
                                  lookat=[2.6172, 2.0475, 1.532],
                                  up=[-0.0694, -0.9768, 0.2024])

法线估计

print("Recompute the normal of the downsampled point cloud")
downpcd.estimate_normals(
    search_param=o3d.geometry.KDTreeSearchParamHybrid(radius=0.1, max_nn=30))
o3d.visualization.draw_geometries([downpcd],
                                  zoom=0.3412,
                                  front=[0.4257, -0.2125, -0.8795],
                                  lookat=[2.6172, 2.0475, 1.532],
                                  up=[-0.0694, -0.9768, 0.2024],
                                  point_show_normal=True)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RUZVGdW7-1661478196405)(file://C:\Users\hch\AppData\Roaming\marktext\images\2022-08-26-09-34-27-image.png?msec=1661477667335)]

颜色统一化

print("Paint chair")
chair.paint_uniform_color([1, 0.706, 0])
o3d.visualization.draw_geometries([chair],
                                  zoom=0.7,
                                  front=[0.5439, -0.2333, -0.8060],
                                  lookat=[2.4615, 2.1331, 1.338],
                                  up=[-0.1781, -0.9708, 0.1608])

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6BZBODNa-1661478196406)(file://C:\Users\hch\AppData\Roaming\marktext\images\2022-08-26-09-36-58-image.png?msec=1661477818636)]

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

open3d操作.ply文件(点云) 的相关文章

  • Lighttpd 和 cgi python

    我正在尝试通过 lighttpd 执行一些 python 脚本 但是当我尝试运行它时 我只得到一个要求我下载的空白文件 lighttpd conf server modules mod access mod alias mod access
  • 为什么从 Pandas 1.0 中删除了日期时间?

    我在 pandas 中处理大量数据分析并每天使用 pandas datetime 最近我收到警告 FutureWarning pandas datetime 类已弃用 并将在未来版本中从 pandas 中删除 改为从 datetime 模块
  • 使用特定的类/函数预加载 Jupyter Notebook

    我想预加载一个笔记本 其中包含我在另一个文件中定义的特定类 函数 更具体地说 我想用 python 来做到这一点 比如加载一个配置文件 包含所有相关的类 函数 目前 我正在使用 python 生成笔记本并在服务器上自动启动它们 因为不同的
  • 处理 Python 行为测试框架中的异常

    我一直在考虑从鼻子转向行为测试 摩卡 柴等已经宠坏了我 到目前为止一切都很好 但除了以下之外 我似乎无法找出任何测试异常的方法 then It throws a KeyError exception def step impl contex
  • 独立滚动矩阵的行

    我有一个矩阵 准确地说 是 2d numpy ndarray A np array 4 0 0 1 2 3 0 0 5 我想滚动每一行A根据另一个数组中的滚动值独立地 r np array 2 0 1 也就是说 我想这样做 print np
  • 如何使用 Pandas、Numpy 加速 Python 中的嵌套 for 循环逻辑?

    我想检查一下表的字段是否TestProject包含了Client端传入的参数 嵌套for循环很丑陋 有什么高效简单的方法来实现吗 非常感谢您的任何建议 def test parameter a list parameter b list g
  • 如何将张量流模型部署到azure ml工作台

    我在用Azure ML Workbench执行二元分类 到目前为止 一切正常 我有很好的准确性 我想将模型部署为用于推理的 Web 服务 我真的不知道从哪里开始 azure 提供了这个doc https learn microsoft co
  • 使用 xlrd 打开 BytesIO (xlsx)

    我正在使用 Django 需要读取上传的 xlsx 文件的工作表和单元格 使用 xlrd 应该可以 但因为文件必须保留在内存中并且可能不会保存到我不知道如何继续的位置 本例中的起点是一个带有上传输入和提交按钮的网页 提交后 文件被捕获req
  • 从Python中的字典列表中查找特定值

    我的字典列表中有以下数据 data I versicolor 0 Sepal Length 7 9 I setosa 0 I virginica 1 I versicolor 0 I setosa 1 I virginica 0 Sepal
  • 在Python中检索PostgreSQL数据库的新记录

    在数据库表中 第二列和第三列有数字 将会不断添加新行 每次 每当数据库表中添加新行时 python 都需要不断检查它们 当 sql 表中收到的新行数低于 105 时 python 应打印一条通知消息 警告 数量已降至 105 以下 另一方面
  • 在 Sphinx 文档中*仅*显示文档字符串?

    Sphinx有一个功能叫做automethod从方法的文档字符串中提取文档并将其嵌入到文档中 但它不仅嵌入了文档字符串 还嵌入了方法签名 名称 参数 我如何嵌入only文档字符串 不包括方法签名 ref http www sphinx do
  • 如何通过索引列表从 dask 数据框中选择数据?

    我想根据索引列表从 dask 数据框中选择行 我怎样才能做到这一点 Example 假设我有以下 dask 数据框 dict A 1 2 3 4 5 6 7 B 2 3 4 5 6 7 8 index x1 a2 x3 c4 x5 y6 x
  • 不同编程语言中的浮点数学

    我知道浮点数学充其量可能是丑陋的 但我想知道是否有人可以解释以下怪癖 在大多数编程语言中 我测试了 0 4 到 0 2 的加法会产生轻微的错误 而 0 4 0 1 0 1 则不会产生错误 两者计算不平等的原因是什么 在各自的编程语言中可以采
  • 从 NumPy ndarray 中选择行

    我只想从 a 中选择某些行NumPy http en wikipedia org wiki NumPy基于第二列中的值的数组 例如 此测试数组的第二列包含从 1 到 10 的整数 gt gt gt test numpy array nump
  • 如何断言 Unittest 上的可迭代对象不为空?

    向服务提交查询后 我会收到一本字典或一个列表 我想确保它不为空 我使用Python 2 7 我很惊讶没有任何assertEmpty方法为unittest TestCase类实例 现有的替代方案看起来并不正确 self assertTrue
  • 根据列 value_counts 过滤数据框(pandas)

    我是第一次尝试熊猫 我有一个包含两列的数据框 user id and string 每个 user id 可能有多个字符串 因此会多次出现在数据帧中 我想从中导出另一个数据框 一个只有那些user ids列出至少有 2 个或更多string
  • 如何在 pygtk 中创建新信号

    我创建了一个 python 对象 但我想在它上面发送信号 我让它继承自 gobject GObject 但似乎没有任何方法可以在我的对象上创建新信号 您还可以在类定义中定义信号 class MyGObjectClass gobject GO
  • 如何解决 PDFBox 没有 unicode 映射错误?

    我有一个现有的 PDF 文件 我想使用 python 脚本将其转换为 Excel 文件 目前正在使用PDFBox 但是存在多个类似以下错误 org apache pdfbox pdmodel font PDType0Font toUnico
  • 在本地网络上运行 Bokeh 服务器

    我有一个简单的 Bokeh 应用程序 名为app py如下 contents of app py from bokeh client import push session from bokeh embed import server do
  • 使用for循环时如何获取前一个元素? [复制]

    这个问题在这里已经有答案了 可能的重复 Python 循环内的上一个和下一个值 https stackoverflow com questions 1011938 python previous and next values inside

随机推荐

  • IMX6学习记录(19)-移植Cjson

    上面是我的微信和QQ群 欢迎新朋友的加入 1 地址 地址 https github com DaveGamble cJSON 2 简单应用 解压到Ubuntu下 直接在Ubuntu下使用 gcc test c cJSON c o test
  • fisco-bcos区块链webase浏览器无法加载验证码,报错无法登陆

    fisco bcos区块链webase浏览器无法加载验证码 报错无法登陆 浏览器里验证码加载不出来 图中显示的是webase nodemanager模块出错 检查log文件 发现nodemanager模块下确实报错 但再细查后发现实际上问题
  • OPENCV MAT mat.inl中release(),clone(),copyto()等函数一直莫名异常

    问题 OPENCV MAT mat inl中release clone copyto 等函数一直莫名异常 今天三维点云转二维图的时候 一直出现莫名奇妙的问题 最后发现是越界的问题 需要注意 1 cv mat cv Mat zeros Siz
  • 读书笔记:Generalized Intersection over Union: A Metric and A Loss for Bounding Box Regression

    摘要 在目标识别过程中 IOU是最流行的一个评价基准 在进行边框优化的过程中 IOU一般是取最大值 对一个标准进行优化的目标函数是其标准本身 在2D回归的过程中 IOU展示了他直接能作为一个损失函数 然而 IOU展现了他的缺点 在没有重叠的
  • 【CH32】

    系列文章目录 CH32 00 开发环境搭建 CH32 01 新建工程 下载 运行 调试 CH32 02 常用外设 GPIO 失败了也挺可爱 成功了就超帅 文章目录 前言 1 GPIO简介 2 IO口的内部结构框图 保护二极管 上下拉电阻 施
  • 【技术开发经验分享】计算机毕业设计PySpark+Hadoop知识图谱电影推荐系统 Django电影推荐系统 用户画像电影推荐系统 电影数据分析 电影可视化 电影爬虫 电影大数据 大数据毕业设计 大数

    简介 本系统为我的本科毕业设计项目 毕设题目为 基于用户画像的电影推荐系统的设计与实现 本系统是以Django作为基础框架 采用MTV模式 数据库使用MongoDB MySQL和Redis 以从豆瓣平台爬取的电影数据作为基础数据源 主要基于
  • 简单漏洞:CVE-2022-0543 Redis Lua 沙盒绕过

    一 描述 影响范围 Debian系得linux发行版本 Ubuntu Debian系得linux发行版本 其并非Redis本身漏洞 形成原因在于系统补丁加载了一些redis源码注释了的代码 揭露时间 2022 3 8 二 原理 redis在
  • DevOps基础服务2——Jenkins

    文章目录 一 基本了解 1 1 CI CD介绍 1 2 基于Docker的CI CD 二 安装jenkins 三 页面管理 3 1 当前系统用户配置 3 2 系统配置 3 3 全局工具配置 3 4 插件管理 3 4 1 安装插件 3 4 2
  • Ruoyi框架学习--XSS

    什么是XSS XSS通常指的是通过利用网页开发时留下的漏洞 通过巧妙的方法注入恶意指令代码到网页 使用户加载并执行攻击者恶意制造的网页程序 这些恶意网页程序通常是JavaScript 但实际上也可以包括Java VBScript Activ
  • 经典SHELL面试题

    1 如何向脚本传递参数 script argument 例子 显示文件名称脚本 show sh file1 txt cat show sh bin bash cat 1 2 如何在脚本中使用参数 第一个参数 1 第二个参数 2 例子 脚本会
  • 微信小程序云函数创建,安装npm环境依赖

    微信小程序云函数创建 安装npm环境依赖 cmd终端执行 1 npm install request promise production 2 npm install save wx server sdk latest
  • Python爬取王者荣耀全英雄全皮肤图片

    Python爬取王者荣耀全英雄全皮肤图片 前言 思路 分析 编码 案例源码 附图 总结 前言 以前写过类似的博客 利用Java爬取王者荣耀全英雄全皮肤图片 当时是利用 jsoup包来对目标网页进行解析 可笑的是当时找图片的链接找了好久 处理
  • 人工智能与机器学习---线性规划和非线性规划求解

    一 线性规划 1 线性规划的概念 线性规划 Linear Programming 简记 LP 是了运筹学中数学规划的一个重要分支 自从 1947 年 G B Dantzig 提出 求解线性规划的单纯形法以来 线性规划在理论上趋向成熟 在实用
  • 谷歌邮箱账号不会注册?注册失败?这份完美注册教程请收好

    谷歌邮箱相信大家都不陌生吧 无论是用于发送和接收邮件 还是用于在国外网站注册 很多人都离不开谷歌邮箱 甚至 一些网站直接提供谷歌邮箱登录选项 这就是为什么很多跨境人想要注册谷歌邮箱的原因 但是 大部分网友都无法自己完整注册 今天来做一篇完整
  • 【AI赋能】人工智能在自动驾驶时代的应用

    自我介绍 我是秋说 研究 人工智能 大数据 等前沿技术 传递 Java Python 等语言知识 主页链接 秋说的博客 学习专栏推荐 人工智能 创新无限 MySQL进阶之路 C 刷题集 网络安全攻防姿势总结 从0开始 深度掌握 C程序设计
  • MATLAB将数据存在TXT文件中

    记录结果 将数据保存到txt文件中 fid fopen 结果记录 txt a 结果记录 txt是存储数据的文件 a是数据向后增加的意思 fprintf fid f t hz f t是将数据往同一行的后面存 fprintf fid f n z
  • 2020.11.1

    1 登录业务的完善 1 1后端控制页面跳转 if rs next System out println 登陆成功 request setAttribute name username request getRequestDispatcher
  • JAVA经典兔子问题

    有一对兔子 从出生第三个月起每个月都生一对兔子 小兔子长到第三个月后 每个月又生一对兔子 假如兔子都不死 问M个月时兔子的数量 很经典的斐波那契数列问题 记得第一次看到这道题是在一次比赛中 当时并不知道斐波那契数列 但是列出来几个月的兔子数
  • SQL 数据库中如何自动生成订单号

    有一张表TAB1 字段num num里有很多数字 我想从1开始 查到里面缺少的最小的一个数字 例如 4 5 6 8 9 11 12 13 这样的话我想要的结果是1 1 2 3 4 5这样的话 我想要的结果是6 其实利用正常排序的找第一个不正
  • open3d操作.ply文件(点云)

    读取 ply文件 import open3d as o3d pcd o3d io read point cloud ply path format ply ppoints np asarray pcd points pcolors np a