在【Open3D】点云世界中精准定位,绘制立方体标记特定点位

Open3D精准定位点云特定点,绘制醒目立方体标记,提升数据解读效率与直观性。

Open3D是一个开源的跨平台计算机视觉库,它为开发人员提供了一个易于使用且高性能的3D数据处理平台。

python 复制代码
# pcd:传入原始点云图
# point1:要进行标记的点
# point2:要进行标记的点
# 以point1、point2为点,在两者之间绘制立方体

def draw_cube_around_points(pcd, point1, point2):

    # 计算线段的方向和长度
    direction = point2 - point1
    length = np.linalg.norm(direction)

    # 假设我们想要一个边长为10的立方体(根据实际情况调整)
    cube_size = 10.0

    # 计算立方体的中心(线段的中点)
    center = (point1 + point2) / 2

    # 由于立方体是轴对齐的,我们可以简单地设置最小和最大边界
    min_bound = center - np.array([cube_size / 2, cube_size / 2, cube_size / 2])
    max_bound = center + np.array([cube_size / 2, cube_size / 2, cube_size / 2])

    # 创建轴对齐的边界框(这实际上是一个立方体)
    aabb = o3d.geometry.AxisAlignedBoundingBox(min_bound=min_bound, max_bound=max_bound)
    aabb.color = [1, 0, 0]  # 红色

    # 可选:将两点添加到可视化中
    # cloud = o3d.geometry.PointCloud()
    # cloud.points = o3d.utility.Vector3dVector(np.vstack((point1, point2)))
    # cloud.colors = o3d.utility.Vector3dVector([[1, 0, 0], [0, 0, 1]])  # 点1红色,点2蓝色

    # 可视化
    o3d.visualization.draw_geometries([aabb, pcd])
相关推荐
水上冰石3 小时前
【MHS协议】第四章:ESP32 接入 MHS 协议实战:从零构建一个 MHS 兼容设备
人工智能·架构·机器人
我才是银古4 小时前
当 360° 全景遇上真实地图:Vue 3 实现全景-地图双向联动的工程实践
3d·vue3·360影像
知了一笑4 小时前
个体看衰AI,企业加速转型
人工智能·ai
飞哥数智坊6 小时前
一只虾到多只虾:先聊聊我为什么要“拆虾”
人工智能
飞哥数智坊6 小时前
架构图 SKILL 封装好了,顺便做了虾的适配
人工智能
冬奇Lab6 小时前
Code Agent 解剖(16):AgentTeams——为什么一个 agent 不够用?
人工智能
东风破_6 小时前
聊天记录越来越长怎么办?从消息数量截断到 Token 截断
人工智能
冬奇Lab6 小时前
开源项目第204期:LoopX — 长周期 Agent 控制平面,跑在 Codex/Claude Code 之上的状态管理层
人工智能·开源
ZGIAI6 小时前
旧模型下线前,客服 Agent 怎么迁移
人工智能·架构
东风破_7 小时前
程序重启后,AI 为什么把你忘了?从 InMemory 到持久化 Memory
人工智能