如何使用iTowns2在浏览器中渲染点云数据

How to render point cloud data in browser with iTowns2

我正在尝试使用 iTowns2 (https://github.com/iTowns/itowns2) 在浏览器中可视化点云数据。根据自述文件:“[iTowns] 的首要目的是街景图像和地面激光雷达点云的可视化。”

据我所知,应该有人在网上某处使用 iTowns 可视化点云数据。我已经找了好几天了,但找不到有人使用 iTowns2 在浏览器中可视化点云数据的示例。

GH 存储库中的示例在浏览器中呈现了一个地球,但没有点云。有一个 iTowns/iTowns2-sample-data 存储库,其中有一堆点云数据,但没有关于如何使用这些数据或对其他资源的引用的说明。

有没有人用过这个包在浏览器中显示点云数据?有谁知道演示如何使用 iTowns2 执行此操作的文章或资源?有谁知道使用示例渲染点云数据的不同库 and/or 更好的文档?

理想情况下,我将能够找到这样的源代码:http://www.itowns-project.org/#demo

文档非常模糊,从 Github 问题来看,库似乎正在进行大量重构。

我快速浏览了一下this repo,发现它只是使用Potree进行点云可视化:

http://potree.org/

所以你可以直接使用Potree。有更好的记录。

除此之外,使用 Three.js.

设置您自己的点云可视化工具非常简单

看一下 Points 对象:

https://threejs.org/docs/#api/objects/Points

这个例子:

https://github.com/mrdoob/three.js/blob/master/examples/webgl_buffergeometry_points.html

Three.js 还包括一些 3D 格式加载器,例如 ply:

https://github.com/mrdoob/three.js/blob/master/examples/webgl_loader_ply.html

如果您有兴趣使用 las 个文件,您可能还想查看:

https://github.com/verma/plasio

让我们提供 2018 年初的更新! (来源:我是维护者)

iTowns 现在支持直接可视化点云。您可以在这里进行测试:http://www.itowns-project.org/itowns/examples/pointcloud.html

如果您想测试自己的数据,请访问http://www.itowns-project.org/itowns/examples/pointcloud.html?selector=1

我们目前支持来自 PotreeConverter 和 lopocs 的结果。我们计划很快添加 3dtiles 点云格式。

我们之前确实将 potree 用于点云,但这并不理想,有点因为我们在某些 technology/design 选择上存在分歧,但主要是因为使用 potree 阻止我们将点云可视化紧密集成到 iTowns 中。例如,iTowns 在无事可做时停止其渲染循环(节省大量 cpu),而 potree 则不会。它还允许我们实现自己的 culling/SSE/network 优先级...启发式算法。

Potree 目前有更好的点云图形 post-treatments,尽管我们也计划很快添加 EDL 和其他改进(例如遮挡)。当然,iTowns 的优势在于它不仅限于点云,还可以显示多种数据类型,从栅格到矢量,参见 the examples page and especially this example of a pointcloud on a globe

但是这两个项目之间的主要区别在于 Potree 旨在成为一个独立的查看器(AFAIK),而 iTowns 更像是一个实现您自己的应用程序的框架! Potree 仍然是我们关于点云的重要灵感来源,对他们的维护者的巨大荣誉:-)

(顺便说一下,github 已经移动到 https://github.com/iTowns/itowns