从PCL库看三维点云依赖的相关知识

       第一次使用PCL库还是2017年,当时为了提取火线(火场包络线:凹包),因为凸包虽然很简单,但是不符合实际火场分布的情况,于是查询到了PCL可以实现,于是熬了几个夜,走马观花的安装、测试最终参考代码实现了想要的功能,但是PCL真的是连一知半解也算不上,像是“弱水三千,只取了一瓢”,很想深入了解一下,但是没有机会,项目工作内容繁杂,根本没时间停下来,放慢脚步仔细欣赏一下别人的工作成果,体会一下数学和几何的美妙;2017年底,感慨,2018年需要沉淀一年。

       2018年6月终于完成了大兴安岭的第一次扑火任务实战,积累和很多也收获很多,然而啊然而!我的研发任务也就停了,在没有需求进来了,也没有深度优化的需求了,甚至移植到固定翼应用的需求也没有一点点,好吧,也许是时候沉淀沉淀了;就此步入3D的世界,本想做SBA,没想到SBA涉及的内容如此之多之深,数据结构(树、KD树)、非线性优化、矩阵运算、线性代数、微积分、概率论全来了,懵了好久... ...

       开始接任务,做影像与点云的配准,学会了LasLib,利用其进行点云投影(Key:坐标系的获取)的相关研究,后来又做了更深入的技术调研,通过比较典型数据的详细测试,得出通过2D图像获取配准信息的技术路线,不可行!最终的收获是,发现利用人工和ArcGIS配准效果很好,至少有了可靠的方法解决这个配准的问题;

         后来,又迷上了SBA里面的内容,想做拼图,后来被否了,因为太难了,退而求其次,继续调研点云配准的相关内容,看看能不能曲线救国,通过拼图产生的稀疏点云与LiDar点云配准,获得配准信息,同时研究Pix4D软件产生的中间数据结果是否有用,深入了解拼图内容,为将来自主实现图像拼接做技术储备和预研。

        之前调研过程中,发现过点云之间的配准,有个ICP算法,于是找度娘,发现PCL库又现成的ICP功能和Demo,那么拿来瞅瞅吧,但是突然发现用例数据是完全相同的数据,那就需要再深入一点,发现ICP过程中不像图像配准那样直接找配准点的,而是通过“最近点”进行迭代的,那么技术路线还有点可行的希望,那就不墨迹了,直接实现Demo,找点数据测试一下吧... ...

        于是,又要配置工程,突然发现PCL依赖了好多的库啊,貌似很有意思啊:

1. VTK : Visualization Toolkit:开源库,实现3D渲染、显示、交互等;科学数据的显示和渲染;

https://www.vtk.org/

2. Eigen : "Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms."是一个线性代数的库,定义矩阵将数据结构,做矩阵运算等,G2O就用了Eigen的数据类型。(http://eigen.tuxfamily.org/index.php?title=Main_Page)

3. OpenNI 2: OpenNI中文译为开放自然语言交互,用官方的表述来讲就是a standard framework for 3D sensing,用于3D感知的开发接口;

4. boost : Boost 库通过加入一些在实践中非常有用的函数对 C++ 标准进行了补充。 Boost C++ 库是基于且扩展了 C++ 标准,所以你应该懂得 C++ 标准。   https://www.boost.org/ 

5. Qhull:  Qhull computes the convex hull, Delaunay triangulation, Voronoi diagram, halfspace intersection about a point, furthest-site Delaunay triangulation, and furthest-site Voronoi diagram. 、http://www.qhull.org/

  • 计算凸包
  • 狄洛尼三角剖分
  • Voronoi图(泰森多边形)
  • 半空间交点+furthest-site Delaunay triangulation+furthest-site Voronoi diagram

6. FLANN: FLANN库全称是Fast Library for Approximate Nearest Neighbors,它是目前最完整的(近似)最近邻开源库。不但实现了一系列查找算法,还包含了一种自动选取最快算法的机制,在一个度量空间X给定一组点P=p1,p2,…,pn,这些点必须通过以下方式进行预处理,给第一个新的查询点q属于X,快速在P中找到距离q最近的点,即最近邻搜索问题。最近邻搜索的问题是在很多应用领域是一个重大问题,如图像识别、数据压缩、模式识别和分类.在高维空间中解决这个问题似乎是一个非常难以执行任务,没有算法明显优于标准的蛮力搜索。因此越来越多的人把兴趣点转向执行近似最近邻搜索的一类算法,这些方法在很多实际应用和大多数案例中被证明是足够好的近似,比精确搜索算法快很大的数量级。

介绍:https://www.cnblogs.com/li-yao7758258/p/6736379.html

7. 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值