基于改进的屏蔽泊松算法的三维点云重建方法与流程

文档序号:12472309阅读:722来源:国知局
基于改进的屏蔽泊松算法的三维点云重建方法与流程

本发明涉及三维重建领域,具体是基于改进的屏蔽泊松算法的三维点云重建方法。



背景技术:

三维点云重建物体表面在计算机图形学中是一个热门研究问题,由于设备和采集方法会产生含有多种可造成表面重建方法缺陷的点云,对三维重建提出重大挑战。

法向信息是表面重建的重要属性,它的精确度决定着重建算法的精确性。由于点云数据间缺乏拓扑连接关系,使得法向量估计和重定向存在一定困难。对于法向的估计主要有基于Delaunay/Voronoi的方法、基于鲁棒统计方法和基于局部表面拟合方法这3类。基于Delaunay/Voronoi的方法经过Alliez等人改进的算法具有全局划分所带来的优势,得到了更为可靠的法向量,但无法处理包含外点和具有尖锐特征的点云模型,同时算法也缺乏法向量的校验。Fleishmen等人基于鲁棒统计的方法能够很好地处理点云模型中的噪声、异常点和尖锐特征,但是由于需要将每个点的邻域进行分类,需要为每个点域模型设置合适的大小和距离阔值,这给法向量的估计及表面重建带来了很大的重建开销,因此,这种方法不能直接应用于大规模点云。Hoppe等提出基于有向距离函数(SDF)的局部表面拟合方法,虽然该方法简单有效,但对于复杂点云模型的计算精确度低。本文在此基础上提出基于移动最小二乘法(MLS)曲面算法,通过选择合适的权函数和基函数对法向量修正更加精确、曲面拟合具有较强鲁棒性。

三维点云曲面重建有多种表达形式,比较常用的是隐氏曲面重建方法。一般大致分为局部方法和全局方法。局部重建方法将所有点云分割成很多小的数据块,分别进行局部重建,最后再将这些隐氏曲面用某种拼接函数拼接起来。该方法对曲面纹理特征有很好的保留,但很容易受到噪声影响。全局曲面重建是对所有点云的逼近,通过求解极值等优化重建隐式曲面,整体光滑度高,适合不规则,非均匀散乱数据的插值和空洞修复。常用的全局曲面重建主要有径向基函数(RBF)方法和泊松重建方法。RBF主要是通过求解一个线性方程组来确定RBF对应的权值,而不是人为指定,但算法复杂,径向基函数过多而且各不相同,如果曲面重建出现平滑,容易忽略点云尖锐特征等缺点。而泊松重建方法兼具全局重建和局部重建的优点,同时插入所有点,因而不借助启发式的分割或合并,同时能允许对局部的函数划分层次结构,能够保证曲面整体光滑度,对噪声具有较强的鲁棒性,对孔洞也有很强的修补。但是泊松曲面重建算法过程不引入和模型形态相关的信息,因而容易在非封闭的点云自动重建产生大量不规则且不合适的伪曲面,影响曲面重建效果。



技术实现要素:

本发明的目的是针对现有技术存在的不足,提出一种基于改进的屏蔽泊松算法的三维点云重建方法,能从整体上提高了法向量精确度,减少了法向估计误差,能很好去除伪封闭曲面,同时对孔洞有良好填充,对表面信息丰富的物体模型点云数据,能够使纹理细节更显著,重建效果好。

本发明基于屏蔽泊松算法的三维点云重建方法,包括如下具体步骤:

S1:获取模型三维点云数据;

随着技术的发展,新的扫描技术和数据采集技术正在推动数据集表面重建的规模急剧增加,三维点云的获取更加简单,通过三维扫描仪扫描模型,获取模型三维点云数据。

S2:引入屏蔽因子,通过引入点和梯度的约束来对泊松算法进行预处理约束限制,避免指示函数发生偏移从而找不到合适的全局偏移量使得所有点平均值为0,无法得到最佳匹配算法;

给定一系列带权重w的输入点集P:P→R≥0,添加梯度约束和离散点的值约束来使方程在采样点的误差得到修正,即指示函数χ最小化公式为:

式中,p为输入点集的一个样本点p∈P,表示的是有向点集,表示的是指示函数梯度,屏蔽因子α表示一个权衡拟合梯度和拟合值重要与否的权值,Area(P)表示所重建表面的区域,其由局部采样密度计算估计获得。为方便计算,设置每一个采样点的权值W(p)=1,公式(1)可简化为:

其中所代表的是在单位立方体中(标量值和矢量值)函数空间上的标准的内积:

<.,.>(w.p)所代表的是在单位立方体体素中的函数空间上的形式,其具备的特性是双线性、对称性、非负以及半定性,<.,.>(w.p)是根据函数值的加权和而得到的:

S3:八叉树分割

使用八叉树分割对点云简化去噪,压缩存储,建立点云间拓扑结构,实现快速建立和高效查找八叉树邻节点;

设置函数空间:点样本在模型表面均匀分布情况下,设置函数空间可将指示函数梯度进行离散化,给定一个输入数据集S,最大树深为D,定义八叉树σ为每个样本点落在深度为D的叶子结点上的最小八叉树;

定义函数空间为具有单位积分、尺度缩放和位置移动的基函数F:R3→R,其节点o∈σ可定义节点函数Fo,它以节点o为中心和宽度展开,则节点函数公式为:

其中o.c和o.w分别表示节点o的中心和宽度。

S4:对每个点云法向量进行法向估计、重定向,减少法向指向的二义性;

使用移动最小二乘法(MLS)表面定义中的局部参考平面作为每个点的法向量,通过对点云中每个点p的所有相邻点赋予高斯权值θ(·),距离当前点较近的点将会对法向量估计结果产生相对较大的影响,从而可以得到更平滑的估计结果,局部参考平面公式为:

其中n为平面P的法向量,d为P到坐标原点o的距离,P经过k个最近点的质心,法向量n需满足||n||2=1,θ(·)以每个点到当前点在参考平面的投影点p0的距离为参数。

令ni和nj为相邻两点ri和rj的法向量,如果<ni,nj>=-1,则进行法向翻转。对每个点云法向量进行法向估计、重定向,减少法向指向的二义性,通过对点云法向量约束,进一步约束法向传播方向。

S5:计算向量场;

选择一个基函数F使得向量场精确有效的表示为节点函数Fo的线性和,为达到子节点的精度,使用三次线性插值法分配样本点到八个最邻近的节点。这样,指示函数的梯度场近似值公式为:

其中NgbrD(s)为最邻近s.p的八个深度为D的节点,{αo.s}为三次线性插入的权值,如果最邻近点不在八叉树中,将对八叉树进行修改从而纳入最邻近点,表示为s.p的向内曲面法线即

S6:求解屏蔽泊松方程,得到指示函数;

根据方程(5)式得到向量场后,使用多重网格算法求屏蔽泊松方程的解;

操作子可定义为:因为操作子是正定的,因而上式方程为屏蔽泊松方程。

S7:对点云等值面提取,得到三维重建模型;

获取了指示函数后,选择一个等值,然后通过计算指示函数提取对应的等值面,这样就可以获得模型表面

通过估计样本点的位置来估计指示函数然后使用平均值来提取等值面:

指示函数的缩放操作对于等值面提取效果不会影响重建结果,后面采用优化过移动立方体算法来进行等值面的提取操作。

本发明方法与现有技术相比,采用改进的屏蔽泊松重建算法进行三维点云重建,有效克服了法向指向不一致性,可获取点云精准的向量场;三角网络抽取时不含移动立方体中没有点云的不会输出三角网络模型,很好去除伪封闭曲面。同时对孔洞有良好填充,对表面信息丰富的物体模型点云数据,能够使纹理细节更显著。若扫描点云含有颜色信息可以利用点云颜色信息重建纹理表面颜色。本发明方法可大量应用于医学图像、逆向工程、历史文物修复等领域。

附图说明

图1是本发明三维点云重建的直观图例。

图2是本发明三维点云重建方法的流程图。

图3是使用现有泊松算法实现老鹰模型重建的模型图。

图4是使用现有屏蔽泊松算法实现老鹰模型重建的模型图。

图5是使用本发明改进的屏蔽泊松算法实现老鹰模型重建的模型图。

图6是使用现有泊松算法实现兔子模型重建的模型图。

图7是使用现有屏蔽泊松算法实现兔子模型重建的模型图。

图8是使用本发明改进的屏蔽泊松算法实现兔子模型重建的模型图。

具体实施方式

下面结合实施例和附图对本发明内容作进一步的说明,但不是对本发明的限定。

实施例:

参照图1,基于改进的屏蔽泊松算法的方法,把点云的表面重建转化为一个空间泊松问题。利用模型表面有向点集和指示函数(模型内部的点定义为1,外部的点为0)梯度之间的内在关系,对有向点集线性求和来近似计算这个曲面积分,然后通过三维指示函数的梯度场计算指示函数,最后通过提取合适的等值面获得重建的表面。如果直接计算梯度场会造成向量场在模型表面的边缘无限大,因而先通过一个平滑滤波函数和指示函数进行卷积运算,再通过使用平滑后函数的梯度场。

下面是根据散度定理得到的平滑后指示函数的梯度与有向点集的内在关系:

定义三维实体M的表面边界为χM表示M的指示函数,若表示p点的向内曲面法线,为一个平滑滤波器,表示到p点平移。根据散度定理平滑后的指示函数的梯度等于平滑后的曲面法线场

由于模型表面的几何未知,不能近似计算曲面积分。所以通过离散求和近似计算曲面积分,使用点集P把分割为不同的小曲片我们可以根据点样本p的值和小面片的面积的乘积近似计算小面片上的积分:

求出向量场后可以解出指示函数使得但是与路径无关,不可积。因此精确解一般不存在。

参照图2,本发明基于屏蔽泊松算法的三维点云重建方法,具体包括如下步骤:

S1:获取模型三维点云数据;

随着技术的发展,新的扫描技术和数据采集技术正在推动数据集表面重建的规模急剧增加。由于传统方式获取的点云噪声大,准确度低,可靠性不强,本发明选择斯丹福大学提供的通过三维扫描设备获取的模型点云。但设备和采集方法往往会产生含有多种可造成点云数据质量不佳,比如点噪声,点云孔洞,这对三维重建提出重大挑战。

S2:引入屏蔽因子,通过引入点和梯度的约束来对泊松算法进行预处理约束限制,避免指示函数发生偏移从而找不到合适的全局偏移量使得所有点平均值为0,无法得到最佳匹配算法;

给定一系列带权重w的输入点集P:P→R≥0,添加梯度约束和离散点的值约束来使方程在采样点的误差得到修正,即指示函数χ最小化公式为:

式中,p为输入点集的一个样本点p∈P,表示的是有向点集,表示的指示函数的梯度,屏蔽因子α表示一个权衡拟合梯度和拟合值重要与否的权值,Area(P)表示所重建表面的区域,其由局部采样密度计算估计获得。为方便计算,设置每一个采样点的权值W(p)=1,公式(1)可简化为:

其中所代表的是在单位立方体中(标量值和矢量值)函数空间上的标准的内积:

<.,.>(w.p)所代表的是在单位立方体体素中的函数空间上的形式,其具备的特性是双线性、对称性、非负以及半定性,<.,.>(w.p)是根据函数值的加权和而得到的:

S3:八叉树分割

使用八叉树分割对点云简化去噪,压缩存储,建立点云间拓扑结构,实现快速建立和高效查找八叉树邻节点;

设置函数空间:点样本在模型表面均匀分布情况下,设置函数空间可将指示函数梯度进行离散化,给定一个输入数据集S,最大树深为D,定义八叉树σ为每个样本点落在深度为D的叶子结点上的最小八叉树;

定义函数空间为具有单位积分、尺度缩放和位置移动的基函数F:R3→R,其节点o∈σ可定义节点函数Fo,它以节点o为中心和宽度展开,则节点函数公式为:

其中o.c和o.w分别表示节点o的中心和宽度。

S4:对每个点云法向量进行法向估计、重定向,减少法向指向的二义性;

使用移动最小二乘(MLS)表面定义中的局部参考平面(式(4))作为每个点的法向量,通过对点云中每个点p的所有相邻点赋予高斯权值θ(·),距离当前点较近的点将会对法向量估计结果产生相对较大的影响,从而可以得到更平滑的估计结果,局部参考平面公式为:

其中n为平面P的法向量,d为P到坐标原点o的距离,P经过k个最近点的质心,法向量n需满足||n||2=1,θ(·)以每个点到当前点在参考平面的投影点p0的距离为参数;

令ni和nj为相邻两点ri和rj的法向量,如果<ni,nj>=-1,则进行法向翻转。对每个点云法向量进行法向估计、重定向,减少法向指向的二义性,通过对点云法向量约束进一步约束法向传播方向。

S5:计算向量场;

选择一个基函数F使得向量场精确有效的表示为节点函数Fo的线性和,为达到子节点的精度,使用三次线性插值法分配样本点到八个最邻近的节点。这样,指示函数的梯度场近似值公式为:

其中NgbrD(s)为最邻近s.p的八个深度为D的节点,{αo.s}为三次线性插入的权值,表示为s.p的向内曲面法线即如果最邻近点不在八叉树中,将对八叉树进行修改从而纳入最邻近点。

S6:求解屏蔽泊松方程,得到指示函数;

根据方程(5)式得到向量场后,使用多重网格算法求屏蔽泊松方程的解;

由内积和<.,.>(w.p)定义一种映射关系,这种关系将函数空间的和ζ(w.s)投影到这两部分:

(w.s)(f))(g)=<f,g>(w.s)

则操作子可定义为:因为操作子是正定的,因而上式方程为屏蔽泊松方程;

当基函数{B1,B2,...,Bn}:R3→R被给定,即三次B样本函数集合。则这离散化变成

因此,解本身就用基函数表示

解稀疏线性系统A·χ=b转化为求解{χi}的系数解;

其中

对于八叉树每个节点深度d都有一个线性系统Ad·χd=bd,相应使用B样条{B1d,B2d,...,Bnd}可以转化为

求解χ主要有三种方法:直接法、迭代法和多重网络求解法。虽直接法能得到精确值,但花费的代价太大。迭代法和多重网络求解法虽得到近似值,但求解所用的时间和所占内存小很多。由于迭代法在迭代过程中能迅速将高频分量衰减,但在处理低频分量速度越来越慢,耗时较大。多重网格求解泊松方程速度快。本发明采用多重网络算法求解泊松方程。通过迭代光滑在细网格将高频分量衰减掉,然后将次高频其约束到更粗一层网络,继续粗网络进行衰减,直到误差足够光滑。然后通过插值将粗网络的解迭代为上一层细网络提高精准的误差校正结果,直到收敛精度。

S7:对点云等值面提取,得到三维重建模型;

获取了指示函数后,选择一个等值,然后通过计算指示函数提取对应的等值面,这样就可以获得模型表面

通过估计样本点的位置来估计指示函数然后使用平均值来提取等值面:

指示函数的缩放操作对于等值面提取效果不会影响重建结果,后面采用优化过移动立方体算法来进行等值面的提取操作。

参照图3-5和图6-8分别展示实现了老鹰和兔子重建的例子,图3是使用现有泊松算法实现老鹰模型重建的模型图;图4是使用现有屏蔽泊松算法实现老鹰模型重建的模型图;图5是使用本发明改进的屏蔽泊松算法实现老鹰模型重建的模型图;图6是使用现有泊松算法实现兔子模型重建的模型图;图7是使用现有屏蔽泊松算法实现兔子模型重建的模型图;图8是使用本发明改进的屏蔽泊松算法实现兔子模型重建的模型图。通过对比模型图,使用本发明改进的屏蔽泊松算法重建的模型能很好去除伪封闭曲面,模型纹理更加详细。同时对孔洞有良好填充,对表面信息丰富的物体模型点云数据,能够使纹理细节更显著。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1