open3d 包围体积

一、包围体积

1.1 轴对齐的边界框(AxisAlignedBoundingBox)
import open3d as o3d


if __name__ == '__main__':
    pcd = o3d.io.read_point_cloud('res/bunny.pcd')
    pcd.paint_uniform_color([0.5, 0.5, 0.5])   # 渲染颜色
    aabb = pcd.get_axis_aligned_bounding_box()  # 获得轴对齐边界框
    aabb.color = (1, 0, 0)   # 渲染颜色

    o3d.visualization.draw_geometries([aabb, pcd])

原理

get_axis_aligned_bounding_box() 方法用于获取点云中点的轴对齐边界框(AABB)。轴对齐边界框是一个与坐标轴平行的立方体,用于包围给定的点云或几何体,并且是包围体积最小的边界框之一。

Open3D 中,get_axis_aligned_bounding_box() 方法可以应用于点云对象(PointCloud)或几何对象(TriangleMesh)。对于点云对象,它将返回一个包围点云的轴对齐边界框。对于几何对象,它将返回一个包围几何体的轴对齐边界框。

调用该方法后,你可以获得轴对齐边界框的最小和最大坐标,以及其中心点和边长等信息。这些信息对于诸如碰撞检测、物体定位和包围盒显示等任务非常有用。

效果
在这里插入图片描述

1.2 定向包围框(OrientedBoundingBox
import open3d as o3d


if __name__ == '__main__':
    pcd = o3d.io.read_point_cloud('res/bunny.pcd')
    pcd.paint_uniform_color([0.5, 0.5, 0.5])   # 渲染颜色
    obb = pcd.get_oriented_bounding_box()  # 定向包围框
    obb.color = (0, 1, 0)  # 渲染颜色
    o3d.visualization.draw_geometries([obb, pcd])

原理

get_oriented_bounding_box() 是 Open3D 中用于获取点云几何体的定向包围盒的方法。定向包围盒是指一个可以沿着任意方向旋转的包围盒,与轴对齐包围盒不同,它的边界框不一定与坐标轴对齐。通过这个方法,可以获取点云数据的定向包围盒,用于描述点云的边界范围及其方向。

效果

在这里插入图片描述

二、测试直接使用

import open3d as o3d


if __name__ == '__main__':
    pcd = o3d.io.read_point_cloud('res/bunny.pcd')
    pcd.paint_uniform_color([0.5, 0.5, 0.5])   # 渲染颜色
    aabb = pcd.get_axis_aligned_bounding_box()
    aabb.color = (1, 0, 0)   # 渲染颜色

    obb = pcd.get_oriented_bounding_box()
    obb.color = (0, 1, 0)
    o3d.visualization.draw_geometries([obb, aabb, pcd])

效果

在这里插入图片描述

三、相关资料获取

基础点云学习 基础点云学习:点云上色、大小改变、窗口背景改变、绘制常用类型图形-CSDN博客

百度网盘数据集:

包括 obj,pcd,las,png,ply

百度网盘链接:https://pan.baidu.com/s/1JFxKUk_xMcEmpfBHtuC-Pg
提取码:cpev

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

云杂项

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值