LK 博客
LiDAR点云转UE网格流程
前后端
约 1 分钟阅读 0 赞 0 条评论 鸿蒙黑体

LiDAR点云转UE网格流程

zihan
王子翰 @zihan
累计点赞 0 登录后每个账号只能点一次
内容长度 0 正文词元数
正文
目录会跟随阅读位置移动。
阅读进度

激光雷达点云转 UE 网格流程

适用场景

这套流程适用于:

  • 激光雷达点云
  • 测绘点云
  • 室内外扫描点云
  • 想把点云转换成 UE 可用的网格体

不适用于:

  • 照片重建的高斯泼溅 3DGS
  • 以高斯椭球体为核心的实时渲染方案

对激光雷达点云来说,不建议走高斯泼溅转网格路线。更稳的方案是:

点云预处理 -> 法线计算 -> 表面重建 -> 网格清理 -> 导出 FBX/glTF -> 导入 UE

两种目标

1. 只想在 UE 里显示点云

如果只是为了浏览、展示、检查点云,不一定要转网格。 可以直接使用 Unreal Engine 的 LiDAR Point Cloud Support 插件导入点云。

适合:

  • 点云可视化
  • 快速预览
  • 不需要复杂碰撞
  • 不需要做可玩场景

2. 想在 UE 里作为正式场景使用

如果你需要下面这些能力,就应该把点云转成网格:

  • 做材质
  • 做碰撞
  • 做关卡搭建
  • 做导航
  • 做灯光
  • 做交互
  • 做优化和 LOD

这时推荐的流程是:

  1. 点云清洗
  2. 法线计算
  3. 表面重建
  4. 网格清理
  5. 导出 FBX 或 glTF
  6. 导入 UE 作为 Static Mesh

推荐工具链

CloudCompare

适合做:

  • 点云查看
  • 去噪
  • 裁剪
  • 分块
  • 下采样
  • 法线计算
  • 初步表面重建

MeshLab

适合做:

  • Screened Poisson 重建
  • Ball Pivoting 重建
  • 网格清理
  • 降面
  • 修补局部问题

Blender

适合做:

  • 最终网格整理
  • 删除错误结构
  • 简单修模
  • 导出 FBX 或 glTF
  • 后续贴图和场景整合

标准流程

第 1 步:点云清洗

先处理原始点云:

  • 删除漂浮噪点
  • 删除扫描范围外的数据
  • 删除天空、地面杂波或无关物体
  • 适当下采样,减少点数
  • 如果场景太大,按区域分块

这一步非常重要,因为脏点云会直接影响后面的重建质量。

第 2 步:法线计算

做 Poisson 重建之前,通常必须先计算法线。

重点:

  • 法线方向要尽量一致
  • 法线质量越稳定,重建结果越可靠
  • 如果法线方向混乱,生成的网格往往会翻面、鼓包或封错洞

推荐先在 CloudCompare 里完成法线估计与方向统一。

(推荐这样

  1. 在 CloudCompare 里清理噪点。
  2. Edit > Normals > Compute 计算法线。
  3. Edit > Normals > Orient Normals 统一法线方向。
  4. 导出为 .ply。
  5. 导出时保留 Normals 和 RGB Colors。
  6. 在 MeshLab 里打开 .ply。
  7. 用 Screened Poisson Surface Reconstruction 重建网格)

第 3 步:表面重建

常用方法有两种(另外一种很难用):

Poisson Surface Reconstruction

优点:

  • 适合大多数 LiDAR 场景
  • 能生成连续表面
  • 对建筑、室内、地形都比较常用

缺点:

  • 容易把本来应该空着的洞封住
  • 对门窗、薄结构、树叶这类细节不够理想

Ball Pivoting

优点:

  • 对某些开口结构更自然
  • 局部表面可能更贴近原始点云

缺点:

  • 对噪声更敏感
  • 对点云密度要求更高
  • 点云不均匀时容易出问题

实际建议

  • 建筑、室内、道路、地形:先试 Poisson
  • 点云比较干净、密度高:可以试 Ball Pivoting
  • 最稳妥的方法:两个都试,选结果更好的那个

第 4 步:网格清理

重建后的网格通常不能直接进 UE,需要继续处理:

  • 删除漂浮碎片
  • 删除错误封闭面
  • 补局部破洞
  • 重算法线
  • 降低面数
  • 检查是否存在破面、自交、非流形问题

如果模型特别大,建议把网格拆成多块,而不是导出一个超级大的整体模型。

第 5 步:导出 UE 可用格式

推荐导出:

  • FBX
  • glTF

其中更稳妥、在 UE 里更常用的是:

  • FBX

如果目标是标准静态网格工作流,优先选 FBX

第 6 步:导入 UE

说明:UE 的 LiDAR Point Cloud Support 通常是内置插件,不是单独下载安装的软件。

在 Unreal Engine 中:

  • 导入为 Static Mesh
  • 检查缩放单位
  • 检查法线和面朝向
  • 设置碰撞
  • 根据需要生成 LOD
  • 大场景建议分块导入

为什么不建议把 LiDAR 点云走高斯泼溅路线

原因很简单:

  • 激光雷达点云和照片重建 3DGS 不是一类数据表达
  • 高斯泼溅更偏向照片驱动的辐射场/新视角渲染
  • LiDAR 更适合传统点云处理和表面重建
  • 直接走高斯泼溅不仅绕远,而且不稳定

结论:

激光雷达点云 -> 网格重建 -> UE 才是更合理的路线。

大场景的注意事项

如果你的数据是:

  • 大范围测绘
  • 城市场景
  • 道路场景
  • 大型建筑群

建议不要重建成单一总网格,而要:

  • 按区域分块
  • 每块分别重建
  • 每块分别降面
  • 分块导入 UE

这样做的好处:

  • 导入更稳定
  • 更容易做碰撞
  • 更容易优化性能
  • 更方便后期替换和修补

实用结论

最推荐的主流程:

  1. 用 CloudCompare 清理点云
  2. 计算法线
  3. 用 Poisson 做表面重建
  4. 到 MeshLab 或 Blender 清理网格
  5. 导出 FBX
  6. 导入 UE 作为 Static Mesh

如果只是展示点云:

  • 直接用 UE 的 LiDAR Point Cloud Support

如果要做正式场景:

  • 一定要先转成网格

作者名片

zihan
王子翰
@zihan

这个作者暂时还没有填写个人简介。

评论区
文章作者和管理员都可以管理这里的评论。
0 条评论
登录后即可参与评论。 去登录
还没有评论,欢迎留下第一条交流内容。