图形处理(八)点云重建(上)点云滤波、尖锐特征边增采样、移除离群点

之前帮导师搞过一个项目,涉及点云尖锐的特征边重建技术,很多文献看起来效果很好,然而都是坑爹的算法,鲁邦性很差,比如这篇paper《Feature Sensitive Surface Extraction from Volume Data》把我坑的好惨,网上没有提供源代码,最主要的是这篇paper的引用率貌似还可以,于是我花了一周的时间,终于把代码写出来了,结果效果鲁棒性好差。下面的图,就是那篇paper的坑爹图,最后一张看起来,尖锐特征边的重建效果,真不是一般的好,坑害了多少菜鸟。


点云的尖锐特征边重建,有一些文献,如《Dual Marching Cubes: Primal Contouring of Dual Grids》、《Cubical Marching Squares: Adaptive Feature Preserving Surface Extraction from Volume Data》、《Feature Preserving Point Set Surfaces based on Non-Linear Kernel Regression》,然而搞了一个月,最后我感觉这些paper都不靠谱。

最后我是用了,在预处理阶段,进行特征边点云的增采样,才勉强把特征边重建出比较好的结果。我们知道,对于点云的重建,其实最关键的还是对点云的滤波,法矢求取等步骤,因此预处理对点云重建至关重要。最后我的预处理算法,主要是参考了paper的特征边增采样技术。

下面我以正方体点云模型的重建为示例,讲解算法如何,重建出正方体模型的特征边流程。

       

正方体点云模型(普通视图、前视图)

主要算法参考文献为《Edge-Aware Point Set Resampling》,算法具体流程如下:

①法矢初步估算

这一步主要是使用了加权的PCA算法,PCA算法是点云法矢计算的常用算法。

a.均匀权的pi点法矢计算公式为:


其中pj为p点的k近邻。然后通过求解协方差矩阵M的最小特征值的特征向量,作为p点的法向量,这就是所谓的主元分析方法PCA

b.基于高斯权重的主元分析方法:

原来的方法,采用的是均匀权重的方法(1/k),把均匀权改为高斯权:


通过求解M的最小特征值的特征向量,获得p点的法向量,其中参数σ可以选择跟点云密度相关的参数。看一下我用两个不同的权的计算结果的区别:

     

由以上结果可知,采用高斯权重,对于正方体的尖锐特征边的法矢求取显然效果好很多。因为法矢的求取好坏直接决定了三维点云重建的效果好坏的关键。因此我们选用高斯权重进行PCA法矢求取。

② bilateral normal smoothing(法矢平滑)

这一步是通过双边滤波的方法进行异向法矢平滑,因为仅仅靠第一步的算法,鲁棒性还不够,因此paper《Edge-Aware Point Set Resampling》接着又进行了异向法矢平滑。通过①我们可计算得每个点的初步法矢,接着根据下面公式进行迭代,可获得平滑后的法矢,p点法矢的迭代公式为:

同样的pj为p点的k近邻。其中,参数σ可以选择跟点云密度相关的参数,σn为角度阈值(默认选择15°),迭代次数选择2~5次合适(默认选择迭代2次,效果还不错),最后法矢异性滤波结果如下:


由结果可知,相比于第一步的结果,我们的法矢求取效果又提升了不少,这是点云重建预处理的关键一步。

③异向优化投影WLOP

上面那一步是对点云的法矢进行保特征滤波,这一步的目的是对点云进行保边缘滤波。文献的作者选择了WLOP算法,进行点云滤波去噪。这一步不仅可以实现去噪,同时可实现把特征边上的点位置调整,使靠近特征边的点远离特征边,如下图所示:


异向WLOP滤波算法,迭代公式为:





其中,u为常数(默认选择0.45),其中p表示最原始的点云位置,p’表示迭代后新位置,k为邻接顶点的个数(默认选择16)、分别为相关的权值系数,其计算公式如下:

             

OK,接着看一下我用这个算法接着进行点云滤波的结果图:


是不是感觉滤波后,效果又更上一层楼了,进行WLOP滤波后,特征边的地方点云的密度会大大减小,因此接着paper提出了文献的创新点,特征边曾采样技术。

④resampling(特征区域采样)

实现对特征边密集采样,因为增采样是人为插值的点,所以自然其法矢的求取效果很OK,增采样如图所示:


其中算法采样点算法如下

a、定义点云顶点pi的计算公式为(b为三维点)


其中pi’为pi点的邻接顶点,n为对应的法矢;

b、遍历


其中ni为当前点的法矢,ni'表示当前点邻接顶点的法矢,NSi为当前点的邻接顶点集合,ρ为常数,ρ的取值对结果的影响如下图所示,我的算法实现默认取ρ=4。


看下正方体特征边增采样的结果图:

⑤泊松重建

预处理结束后,接着就是进行点云到三角网格曲面的重建了,重建过程我选用了泊松重建算法实现的,最后的重建效果如下图所示:

 

OK,至此完成点云重建,对于尖锐特征边的重建,paper有一些,效果看起来相当棒,但是千万不要被忽悠,因为大部分是坑爹的效果图。上面这种算法,通过特征边增采样的方法进行重建,效果鲁棒性还不错。

本文地址:http://blog.csdn.net/hjimce/article/details/46415909     作者:hjimce     联系qq:1393852684   更多资源请关注我的博客:http://blog.csdn.net/hjimce                原创文章,转载请保留本行信息。

  • 12
    点赞
  • 62
    收藏
    觉得还不错? 一键收藏
  • 26
    评论
Self-Aware Computing Systems ISBN-10 书号: 3319474723 ISBN-13 书号: 9783319474724 Edition 版本: 1st ed. 2017 出版日期: 2017-01-23 pages 页数: (722 ) $219.99 This book provides formal and informal definitions and taxonomies for self-aware computing systems, and explains how self-aware computing relates to many existing subfields of computer science, especially software engineering. It describes architectures and algorithms for self-aware systems as well as the benefits and pitfalls of self-awareness, and reviews much of the latest relevant research across a wide array of disciplines, including open research challenges. The chapters of this book are organized into five parts: Introduction, System Architectures, Methods and Algorithms, Applications and Case Studies, and Outlook. Part I offers an introduction that defines self-aware computing systems from multiple perspectives, and establishes a formal definition, a taxonomy and a set of reference scenarios that help to unify the remaining chapters. Next, Part II explores architectures for self-aware computing systems, such as generic concepts and notations that allow a wide range of self-aware system architectures to be described and compared with both isolated and interacting systems. It also reviews the current state of reference architectures, architectural frameworks, and languages for self-aware systems. Part III focuses on methods and algorithms for self-aware computing systems by addressing issues pertaining to system design, like modeling, synthesis and verification. It also examines topics such as adaptation, benchmarks and metrics. Part IV then presents applications and case studies in various domains including cloud computing, data centers, cyber-physical systems, and the degree to which self-aware computing approaches have been adopted within those domains. Lastly, Part V surveys open challenges and future research directions for self-aware computing systems. It can be used as a handbook for professionals and researchers working in areas related to self-aware computing, and can also serve as an advanced textbook for lecturers and postgraduate students studying subjects like advanced software engineering, autonomic computing, self-adaptive systems, and data-center resource management. Each chapter is largely self-contained, and offers plenty of references for anyone wishing to pursue the topic more deeply.

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 26
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值