VScode连接远程JupyterNotebook显示点云ply文件

1. remote ssh的配置文件config中添加

Host Jupyter-Server
  HostName <IP>
  ForwardX11 yes
  ForwardX11Trusted yes
  ForwardAgent yes
  User <Username>

2. 在远程服务器的.sshd_config中把X11forward的开关打开为yes

3. 在home文件夹中更改.bashrc,加入以下内容

export DISPLAY='localhost:10.0'

4. 运行以下命令,并检查echo的输出是否localhost:10.0

source ./bashrc
echo $DISPLAY

5. 在本地vscode中连接到刚刚创建的jupyter-server,测试是否能显示图像

import matplotlib.pyplot as plt
from plyfile import *
from mpl_toolkits.mplot3d import Axes3D

plydata = PlyData.read(datadir + datapath)

xlist = plydata['vertex']['x']
ylist = plydata['vertex']['y']
zlist = plydata['vertex']['z']

fig = plt.figure()
ax = Axes3D(fig,auto_add_to_figure=False)
fig.add_axes(ax)
ax.scatter(xlist, ylist, zlist)
plt.show()

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
点云转换为深度图需要进行以下步骤: 1. 读取ply文件并将其转换为点云数据结构。 2. 确定深度图的分辨率和范围。 3. 将点云中的每个点转换为深度图像素坐标。 4. 将深度值分配给每个深度图像素。 以下是一个Python示例代码,可以将ply文件转换为深度图: ```python import numpy as np import open3d as o3d from PIL import Image # 读取PLY文件并将其转换为点云数据结构 pcd = o3d.io.read_point_cloud('input_cloud.ply') # 设置深度图的分辨率和范围 resolution = (512, 512) z_min = 0 z_max = 5 # 将点云中的每个点转换为深度图像素坐标 depth_image = np.zeros(resolution, dtype=np.float32) for point in np.asarray(pcd.points): x, y, z = point i = int((x / z) * resolution[0] / 2 + resolution[0] / 2) j = int((y / z) * resolution[1] / 2 + resolution[1] / 2) if i >= 0 and i < resolution[0] and j >= 0 and j < resolution[1]: depth_image[j, i] = z # 将深度值分配给每个深度图像素 depth_image = (depth_image - z_min) / (z_max - z_min) * 255 depth_image = depth_image.astype(np.uint8) # 保存深度图 Image.fromarray(depth_image).save('output_depth.png') ``` 在此示例代码中,我们使用了Open3D库来读取PLY文件并将其转换为点云数据结构。然后,我们定义了深度图的分辨率和范围,并将点云中的每个点转换为深度图像素坐标。最后,我们将深度值分配给每个深度图像素,并将其保存为PNG文件。请注意,此示例代码仅适用于点云中没有重叠的情况。如果点云中存在重叠区域,则需要进行额外处理以避免深度图中的深度信息丢失。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值