python高程渲染显示点云文件

1.读取一个二进制的点云文件

2.使用pyvista高程渲染进行显示

3.python代码如下:

import os
import numpy as np
import pyvista as pv


def file_to_matrix(filename):
    m1 = None
    if not os.path.exists(filename):
        return None
    if filename.endswith(".dat"):
        with open(filename, "rb") as f:
            data = f.read()
            num_rows = len(data) // 12
            m1 = np.frombuffer(data, dtype=np.float32).reshape(num_rows, 3).copy()  # 创建可写副本
    return m1

#pyvista显示点云
def show_3Dpoint_Z_elevation(points):
   # 创建裁剪后的点云对象
    clipped_point_cloud = pv.PolyData(points)

    # 创建可视化窗口
    plotter = pv.Plotter()

    # 获取裁剪后点云数据的高程值
    elevation = clipped_point_cloud.points[:, 2]

    # 添加裁剪后的点云数据,并使用高程值进行颜色映射
    plotter.add_mesh(clipped_point_cloud, scalars=elevation, cmap='jet', point_size=2.0)
    # 显示坐标
    plotter.show_axes()
    # 显示刻度
    plotter.show_grid()
    # 显示点云
    plotter.show() 



#main
pc = file_to_matrix("pc3.dat")

show_3Dpoint_Z_elevation(pc)

4.二进制点云文件及代码下载地址:

复制这段内容后打开百度网盘手机App,操作更方便哦
链接: https://pan.baidu.com/s/1dwSGWKy_1Qms6MDz3h6Niw
提取码: ktaq

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值