三维重建之xyz文件读取与显示

这篇博客记录了如何使用Python读取XYZ点云文件并进行三维可视化,同时介绍了PLY文件的生成方法。博主分享了代码示例,包括设置三维点云的显示范围和视角。此外,还提及了点云生成和训练的相关讨论群信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文是自己在做实验的时候脑子突然抽筋,没有想起来如何展示xyz文件了,所以做一下笔记,顺便把ply文件的生成方式也放上面。唉~!年纪大了,脑子不好使了

直接上代码吧!

import numpy as np
import matplotlib.pylab as plt
from mpl_toolkits.mplot3d import Axes3D  #输出三维点必须要导入此包,否则会 Error:3d

x,y,z = np.loadtxt('car_.xyz').T  #读取点云xyz文件
print(x,y,z)                      #测试一下,看看能不能输出我们想要的x,y,z

fig = plt.figure()
ax = fig.gca(projection='3d')
ax.set_xlim(-0.5, 0.5)
ax.set_ylim(-0.5, 0.5)
ax.set_zlim(-0.5, 0.5)
for i in range(len(x)):
    ax.scatter(x[i], y[i], z[i],s=10, c='#000000', depthshade=True,marker='.')
ax.axis('off')
ax.view_init(azim=92, elev=101) #设置初始三维点云摄像机视角角度
plt.show()

显示结果:

接下来是补充ply点云的生成代码片段,做个备注

file = open(ply_file,"w")
file.write('''ply
    format ascii 1.0
    element vertex %d
    property float x
    property float y
    property float z
    property uchar red
    property uchar green
    property uchar blue
    property uchar alpha
    end_header
    %s
    '''%(len(points),"".join(points)))
file.close()

如果大家想知道点云xyz如何生成的,或者从单视图如何训练生成点云的,可以加群讨论,尤其是热爱三维重建的哥们姐们儿(进群禁止发广告,一经发现立马踢出去)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

路卿老师

大哥大姐给点吧!

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

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

打赏作者

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

抵扣说明:

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

余额充值