可视化顶点图和法线图

import matplotlib.pyplot as plt
       #normal_map 为h*w*3
    def visualize_vertex_or_normal_map(self,normal_map):
        # 将法线值从 [-1, 1] 归一化到 [0, 1]
        normal_map_vis = (normal_map + 1) / 2.0

        # 将张量从 [H, W, 3] 转换为 [H, W, 3] 的 numpy 数组
        normal_map_vis = normal_map_vis.cpu().numpy()

        # 显示法线图
        plt.imshow(normal_map_vis)
        plt.axis('off')  # 关闭坐标轴显示
        plt.show()
    # depth_map = gt_depth.squeeze(0)  # 变为 h*w
    #
    # # 将张量转换为numpy数组
    # depth_map_np = depth_map.cpu().numpy()  # 如果是在GPU上, 需要先转移到CPU
    #
    # # 将深度图归一化为0-255范围
    # depth_map_normalized = (depth_map_np - depth_map_np.min()) / (depth_map_np.max() - depth_map_np.min()) * 255
    # depth_map_normalized = depth_map_normalized.astype(np.uint8)
    #
    # # 将归一化后的数组转换为图片
    # depth_image = Image.fromarray(depth_map_normalized)
    #
    # # 保存为PNG图片
    # depth_image.save('/media/kj/2B9747BF3C0EC4D0/Project/RTG-SLAM-Test/data/depth_map.png')
    depth_map = gt_depth.squeeze(0)  # 变为 h*w

    # 将张量转换为numpy数组
    depth_map_np = depth_map.cpu().numpy()  # 如果是在GPU上, 需要先转移到CPU

    # 可视化
    plt.imshow(depth_map_np, cmap='gray')
    plt.colorbar(label='Depth Value')
    plt.title('Depth Map Visualization')
    plt.show()
    # 创建 Open3D 深度图对象
    depth_o3d = o3d.geometry.Image(gt_depth.squeeze(0).cpu().numpy())

    # 创建内参矩阵(示例中假设fx, fy, cx, cy)
    w=1280
    h=720
    fx = 605.3711
    fy =605.2457
    cx =635.3086
    cy =366.51

    intrinsic = o3d.camera.PinholeCameraIntrinsic(w, h, fx, fy, cx, cy)

    # 将深度图转换为点云
    depth_scale =800 # 根据深度图单位调整
    point_cloud = o3d.geometry.PointCloud.create_from_depth_image(
        depth_o3d, intrinsic, depth_scale=depth_scale
    )
    # 可视化点云
    o3d.visualization.draw_geometries([point_cloud])

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

江河地笑

实践是检验真理的唯一标准

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

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

打赏作者

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

抵扣说明:

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

余额充值