3D点云实战案例

3D点云和网格处理软件,开源项目,基于Qt5。 CloudCompare是一款基于GPL开源协议的3D点云处理软件,可以在Windows、MacOS和Linux上运行。我们可以通过阅读其源码来一窥3D点云处理的基本算法,也可以通过设计新的plugin来拓展本软件。

3D点云实战案例

推荐免费3D场景建模工具:NSDT场景编辑器

CloudCompare是一个三维点云(网格)编辑和处理软件。最初,它被设计用来对稠密的三维点云进行直接比较。它依赖于一种特定的八叉树结构,在进行点云对比这类任务时具有出色的性能。此外,由于大多数点云都是由地面激光扫描仪(例如LMI)采集的,CloudCompare的目的是在一台标准笔记本电脑上处理大规模的点云——通常超过1000万个点云。例如在一台带有双核处理器的笔记本电脑上,计算出300万个点到14000个三角形网格的距离需要10秒。

1、官网

http://www.cloudcompare.org/

http://www.cloudcompare.org/forum/

  • 主程序源码,基于Qt5

https://github.com/CloudCompare/CloudCompare

  • CCLib库(包含核心算法)

https://github.com/CloudCompare/CCCoreLib

  • 其他组件:

https://github.com/CloudCompare/CloudCompare/tree/master/libs

qCC_db(数据库)

qCC_io(文件I/O库)

qCC_gl(基于OpenGL的3D显示库)

2、源码编译

准备好环境:VS2017+Qt5.12.9 x64

(1)把CCCoreLib源码包解压到CloudCompare旗下的路径:

\CloudCompare-master\libs\qCC_db\extern\CCCoreLib

(2)使用cmake生成VS2017 x64的工程。其中Plugin的选项:

默认情形下,只有PLUGIN_IO_QCORE打钩。除了PLUGIN_IO_QCORE是必需品之外,CloudCompare不需要任何plugin。

有兴趣的读者,可以勾选PLUGIN_EXAMPLE_???这几个插件学习研究一下下。

(3)一键编译到底,成功!最终会生成两个exe,分别是主程序CloudCompare和小工具ccViewer。

\CloudCompare-master\build64\qCC\Debug\CloudCompare.exe

\CloudCompare-master\build64\ccViewer\Debug\ccViewer.exe

如果勾选了插件文件,则需要手动把.dll文件拷贝到以下路径:

\CloudCompare-master\build64\qCC\Debug\data\plugins

(4)ccViewer是配套的小工具,可以查看3d视图。它支持很多种文件格式,最简单的是txt文本。

我们输入以下xyz坐标,即可查看3d效果。

NSDT场景编辑器 | NSDT 数字孪生 | GLTF在线编辑器 | 3D模型在线转换 | UnrealSynth虚幻合成数据生成器 | 3D模型自动纹理化工具
2023 power by nsdt©鄂ICP备2023000829号