摘要:
PolyFit程序的依赖库简述;Cmake构建项目过程;运行演示;CmakeLists.txt简要解析;示例数据来源。
请看VCR。
要点记录
1、配置软件、各依赖库的下载地址:
编译配置软件:Cmake 3.15.5[6];
依赖库:
BOOST 1_82[7];
CGAL 5.5.2[8];
Eigen 3.4.0[9];
SCIP 8.0.3[10]。
2、cmd命令行调用cmake构建项目:
(1)在文件根目录下创建build文件夹;
(2)打开cmd命令行窗口,
1 | cd build |
“Visual Studio 15 2017”替换为其他有安装的开发包版本,如“Visual Studio 16 2019”。
3、建筑物点云数据下载
给手头无建筑物数据的朋友参考用的。
Swiss3DCities[11]是一个公开发表于2020年12月的户外城市点云数据集,点云通过航空摄影生成,其中的建筑物对象存在局部扭曲,凑合着用。
其中Medium压缩包的点云是抽稀过的,按语义标签分成了5类对象,可以将construction点云简单地分割成若干个独立建筑物。
4、CmakeLists.txt的解析部分是后录制的,特意献给实习认识的前辈Kiwi,感谢他给我的引导和学习推荐。
新改动:多加了一个检查路径存在的函数,作用不大只为了避免改路径时粗心填错。
5、以前实验室同门测出来的调试问题(感谢.jpg)
(1)第三方库路径的填写,在windows系统下如果直接复制文件管理器的地址栏,要记得把路径里的反斜杠符号,也就是从左上划到右下的斜线,换成斜杠或双反斜杠。
(2)项目构建的是64位平台的程序,如果用VS2017来编译记得在Configure中改下,VS2019和2022默认是x64的。
(3)可能会出现缺SCIP.dll的情况,这应该是SCIP安装时没把它目录下的bin文件夹路径加到环境变量中,导致exe在运行时没法找到对应的依赖库代码。若遇到这种情况只需将缺的dll拷贝到exe的同级目录下即可。
参考文献&引用
[1] https://3d.bk.tudelft.nl/liangliang/
[2] https://3d.bk.tudelft.nl/liangliang/publications/2017/polyfit/polyfit.html
[3] https://www.youtube.com/watch?v=_0brfDFkIkc
[4] Linfu X ,Han H ,Qing Z , et al. Combined Rule-Based and Hypothesis-Based Method for Building Model Reconstruction from Photogrammetric Point Clouds [J]. Remote Sensing, 2021, 13 (6): 1107-1107.
[5] Nan L , Wonka P .PolyFit: Polygonal Surface Reconstruction from Point Clouds[C]//International Conference on Computer Vision.IEEE, 2017.
[6] https://github.com/Kitware/CMake/releases/download/v3.29.3/cmake-3.29.3-windows-x86_64.zip
[7] https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/boost_1_85_0.7z
[8] https://github.com/CGAL/cgal/releases/download/v5.6.1/CGAL-5.6.1.zip
[9] https://gitlab.com/libeigen/eigen/-/archive/3.4.0/eigen-3.4.0.zip
[10] https://scipopt.org/download.php?fname=SCIPOptSuite-9.0.0-win64-VS15.exe
[11] https://zenodo.org/records/4390295#.Y0eIodJBxuV