Open3d之计算源点云与目标云的距离

2023-11-16

核心函数介绍

compute_point_cloud_distance: 提供了计算从源点云到目标点云的距离的方法。即:它计算源点云中的每个点到目标点云中最近点的距离。
在下面的例子中,展示了使用该函数来计算两点云之间的差值。请注意,此方法也可用于计算两点云之间的Chamfer距离。

代码展示

# -*- coding:utf-8 -*-

import numpy as np
import open3d as o3d

# 读取点云
pcd = o3d.io.read_point_cloud("/home/ancy/Desktop/tradition/Open3D/examples/test_data/Crop/fragment.ply")
# 裁剪点云
vol = o3d.visualization.read_selection_polygon_volume(
    "/home/ancy/Desktop/tradition/Open3D/examples/test_data/Crop/cropped.json")
chair = vol.crop_point_cloud(pcd)
# 计算源点云中的每个点到目标点云中最近点的距离
dists = pcd.compute_point_cloud_distance(chair)
dists = np.asarray(dists)
# 提取距离大于0.01米的点云
ind = np.where(dists > 0.01)[0]
pcd_without_chair = pcd.select_by_index(ind)
# 点云可视化
o3d.visualization.draw_geometries([pcd_without_chair],
                                  zoom=0.3412,
                                  front=[0.4257, -0.2125, -0.8795],
                                  lookat=[2.6172, 2.0475, 1.532],
                                  up=[-0.0694, -0.9768, 0.2024])

效果展示

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

Open3d之计算源点云与目标云的距离 的相关文章

  • qt 配置open3d

    一 配置前要先编程open3d 二 开始配置 新建txt 把txt 修改为 pri 在pro 文件中添加 include F xuwanlu control pri 重新构建项目然后回多出来pri 在pri中添加open3d目录 INCLU
  • Linux上安装open3d

    pip install span class token operator span span class token operator span user open3d span class token operator span pyt
  • 7.Open3D教程——表面重建

    在许多情况下 xff0c 我们希望生成密集的三维几何体 xff0c 即三角形网格 然而 xff0c 从多视点立体方法 xff0c 或深度传感器 xff0c 我们只能获得一个非结构化的点云 为了从非结构化输入中得到三角形网格 xff0c 我们
  • Open3D+vs配置以及使用教程

    Open3d 0 8 0 43 Cmake 43 vs2015 1 下载 简要看一下官网 xff1a Open3D Home Page Github主页 xff1a Open3D Github 注意下载版本 xff0c 一定要与vs相匹配
  • windows10编译open3d 0.13

    目录 写在前面 准备 获取源码 cmake cmake版本 开始cmake 1 命令行 2 cmake gui 编译 安装 测试 完 写在前面 1 环境 win10 visual studio2019 cmake3 22 0 rc1 下载源
  • Open3d读写ply点云文件

    本文为博主原创文章 未经博主允许不得转载 本文为专栏 python三维点云从基础到深度学习 系列文章 地址为 https blog csdn net suiyingy article details 124017716 1 Open3d 安
  • M1(arm) Mac安装open3d

    问题 说在前面 open3d对arm架构的机器支持相对比较晚 所以目前还在完善当中 我试了官方给出的两种方法安装都出现了错误 首先给出官方的安装说明 Open3D ARM support 第一种 conda环境直接使用pip安装 即如下命令
  • 机智的Open3D学习生活(第一集):入坑前的准备工作

    1 Open3D的开源项目地址 https github com isl org Open3D 2 Open3D的官网地址 http www open3d org 3 Open3D的文档地址 http www open3d org docs
  • open3d 最远距离采样FPS

    关键代码 FPS pcd down pcd farthest point down sample 1000 pcd CloudPoint 如果是mesh采样 不是FPS pcl mesh sample points poisson disk
  • Open3d读写pcd点云文件

    本文为博主原创文章 未经博主允许不得转载 本文为专栏 python三维点云从基础到深度学习 系列文章 地址为 https blog csdn net suiyingy article details 124017716 1 Open3d 安
  • Open3D中RANSAC平面拟合

    文章目录 一 函数介绍 二 代码实现 三 结果展示 四 总结 五 坐标中心化 一 函数介绍 使用RANSAC从点云中分割平面 用segement plane函数 这个函数需要三个参数 destance threshold 定义了一个点到一个
  • Open3D:Win10 + VS2017配置Open3D(C++、python)

    累了就要打游戏 2020 08 25 15 13 10 3350 收藏 25 分类专栏 Open3D 文章标签 点云 Open3D C 版权 Open3D 专栏收录该内容 5 篇文章1 订阅 订阅专栏 20200825 今天七夕 呱呱呱 O
  • 基于Open3D的点云处理5-点云之间的距离计算

    计算在一片点云中的每一个点在另一片点云中最近点的距离 常规写法 通过k d Tree进行搜索每个点的最近点 k idx dist k dTree search knn vector 3d pc2 points i k 通过k d Tree进
  • 两种点云分割(一)— RANSAC分割平面

    本文为博主原创文章 未经博主允许不得转载 本文为专栏 python三维点云从基础到深度学习 系列文章 地址为 https blog csdn net suiyingy article details 124017716 点云分割的目的是将点
  • 【3D人脸】Open3D学习笔记 一

    最近头疼于点云法向量的计算 实在找不到python的相关资料 想起来Open3D这个专门的工具 一搜还真有 踩了很多坑 记录一下 Open3D官方文档 http www open3d org docs release index html
  • 八种点云聚类方法(一)— DBSCAN

    本文为博主原创文章 未经博主允许不得转载 本文为专栏 python三维点云从基础到深度学习 系列文章 地址为 https blog csdn net suiyingy article details 124017716 传统机器学习聚类的方
  • open3D点云分割

    将底面和物体分割开 import time import open3d as o3d import numpy as np mesh box o3d geometry TriangleMesh create box width 0 4 he
  • 实时向点云添加新点 - Open3D

    我正在使用 Open3D 在 Python 中可视化点云 本质上 我想做的是以编程方式向点云添加另一个点 然后实时渲染它 这是我到目前为止所拥有的 我找不到任何解决方案 在下面的代码中 我展示了一种可能的解决方案 但它并不有效 第一个窗口关
  • 如何在 python Open3d 中向网格添加纹理?

    我正在使用 python Open3d 处理三角形网格 我想向我的网格添加纹理映射 我在文档中没有找到它 这是一个带有简单立方体网格的示例代码 import numpy as np import open3d as o3d vert 0 0
  • 2d 图像点和 3d 网格之间的交点

    Given 网格 源相机 我有内在和外在参数 图像坐标 2d Output 3D 点 是从相机中心发出的光线穿过图像平面上的 2d 点与网格的交点 我试图找到网格上的 3d 点 This is the process From Multip

随机推荐

  • ESP32开发—文件系统spiffs

    文件系统有很多种 不同的操作的系统或者存储介质会选择不一样的文件系统 对于spiffs来说就是为了嵌入式设备而定制的精简版文件系统 优点是占用的内存非常小 而已不使用malloc分配内存 系统使用的内存由用户传入静态内存 缺点就是能存储的文
  • matlab傅里叶级数展开

    傅里叶级数 傅里叶级数展开 傅里叶级数展开原理 源码 方波 方波 三角波 matalb 傅里叶级数展开结果图片 傅里叶级数展开 傅里叶级数展开原理 周期函数可以通过一系列的三角函数的线性组合来逼近 傅里叶技术展开可以找到这些三角函数 首先我
  • ELK企业级日志分析系统

    ELK概述 为什么要使用 ELK 日志主要包括系统日志 应用程序日志和安全日志 系统运维和开发人员可以通过日志了解服务器软硬件信息 检查配置过程中的错误及错误发生的原因 经常分析日志可以了解服务器的负荷 性能安全性 从而及时采取措施纠正错误
  • 【Alist + Teracloud】WebDAV免费畅游互联网个人方案总结,一些支持WebDAV的应用推荐

    文章目录 1 介绍 废话 支持略过 1 1 WebDAV 是啥 1 2 支持开通 WebDAV 服务的东西 1 2 1 网盘类 公有云 1 2 2 私有云 1 2 3 本地部署 1 2 4 Alist 1 3 支持连接 WebDAV 的应用
  • 计算机网络【java面试题】

    1 计算机网络中的七层模型以及每一层的作用 OSI七层模型 功能 对应的网络协议 应用层 应用层是网络体系中最高的一层 也是唯一面向用户的一层 也可视为为用户提供常用的应用程序 每个网络应用都对应着不同的协议 HTTP TFTP FTP N
  • 开心档-软件开发入门之MongoDB 覆盖索引查询

    作者简介 每天分享MongoDB教程的学习经验 和学习笔记 座右铭 有自制力 做事有始有终 学习能力强 愿意不断地接触学习新知识 个人主页 iOS开发上架的主页 前言 本章将会讲解MongoDB 覆盖索引查询 目录 MongoDB 覆盖索引
  • Linux 查看属于某个组(例如docker组)的所有用户

    要查看属于某个组 例如docker组 的所有用户 可以使用getent命令 getent命令用于从Name Service Switch库中获取条目 要列出docker组下的所有用户 可以执行 getent group docker 这会返
  • Xilinx-Z7&K7启动模式

    Xilinx Z7 K7启动模式设置 Xilinx Z7 Xilinx K7 Xilinx Z7 UG585 P167 Xilinx K7 UG470 P21
  • Win7服务器没及时响应,主编练习win7系统服务没有及时响应启动或控制请求的修复方案...

    许多win7系统电脑的时候 常常会遇到win7系统服务没有及时响应启动或控制请求的情况 比如近日有用户到本站反映说win7系统服务没有及时响应启动或控制请求的问题 但是却不知道要怎么解决win7系统服务没有及时响应启动或控制请求 我们依照在
  • IDEA-找不到Code Coverage

    问题描述 今天做白盒测试的实验 需要代码覆盖率 但是始终找不到 在Junit中也找不到Code Coverage选项卡 问题解决 查询了之后 才知道是在初始化配置时 在插件那边未选择Coverage 没准备重装 就去欢迎界面去恢复到默认设置
  • Invoking "cmake" failed报错处理

    运行 pip install U rosdep rosinstall generator wstool rosinstall six vcstools运行完成后再重新编译 转载于 https www cnblogs com long5683
  • vue中的动态keyframes参数

    最近在负责项目中大屏模块 遇到了点小问题 现在来记录下先来讲下项目是基于Vue现要在keyframes中动态的传递高度 top 最后的效果如下图 主要涉及到动画效果 中间部分左右两边不说 主要思路 使用animation配合 keyfram
  • 源码 QT

    如何查找QT源码 相信很多人跟我一样 对QT源码很着迷 一次偶然间 我尽然发现了QT查找源码的网站 下面给大家贴一个链接qt查源码网址 然后给大家分享一下差源码的方法 查到的源码如图所示 下面展示QRandomGenerator源码 Cop
  • Android 把枪/PDA 扫描头自回车没用 处理方法

    XML 控件加上属性 android imeOptions actionNone 转载于 https www cnblogs com LuoEast p 11597878 html
  • 大数据面试题Spark篇(1)

    目录 1 spark数据倾斜 2 Spark为什么比mapreduce快 3 hadoop和spark使用场景 4 spark宕机怎么迅速恢复 5 RDD持久化原理 6 checkpoint检查点机制 7 checkpoint和持久化的区别
  • NOIP题目解析之取石子问题

    题目 现有5堆石子 石子数依次为3 5 7 19 50 甲乙两人轮流从任一堆中取石子 取最后一颗石子的一方获胜 甲先取 请问甲有没有获胜策略 如果有 甲第一步应在哪一堆里取多少 解析 在解这一道题之前 我们可以先来把问题简化 把五堆石子转化
  • Linux系统之使用cmatrix实现数字雨效果

    Linux系统之使用cmatrix实现数字雨效果 一 cmatrix介绍 二 本地环境介绍 2 1 本地环境规划 2 2 本次实践介绍 三 环境准备工作 3 1 安装开发环境 3 2 安装基本软件 3 3 安装 ImageMagick等工具
  • Unity shader系列:好用的IDE--JetBrain Rider

    官方描述 Rider 还添加了对 shader 文件的支持 提供语法高亮显示 代码折叠 括号匹配等功能 高亮显示 ShaderLab 部分的语法错误 todo 注释加入 To Do Explorer 并高亮显示颜色属性 且提供选色笔用于编辑
  • 学习HTML:iframe用法总结收藏

    原文地址 http blog csdn net andycode article details 6899775 分类 html js css 8 Html代码 p 是框架的一种形式 也比较常用到 p
  • Open3d之计算源点云与目标云的距离

    核心函数介绍 compute point cloud distance 提供了计算从源点云到目标点云的距离的方法 即 它计算源点云中的每个点到目标点云中最近点的距离 在下面的例子中 展示了使用该函数来计算两点云之间的差值 请注意 此方法也可