近年,在逆向工程、地质地形建模、智慧城市、生物医学等领域,点云的曲面重构技术得到了大量研究和广泛应用[1]。点云曲面重构的本质是实现数据点模型到曲面模型的转变。隐式曲面重构因能够较好地重建出形状复杂的点云模型的表面,使得许多学者进行了大量研究。
文献[2]提出的径向基函数曲面重构方法重构的曲面细节特征较好,但在重构数据量大的点云时,将迅速增大计算量,且降低曲面重构效果,也存在重构曲面不够光滑的问题。文献[3]提出的基于元球造型技术的隐式曲面重建算法能很好地逼近没有尖锐特征的物体,但对非封闭模型会出现变形。文献[4]提出的基于椭球约束的隐式曲面重构方法对小规模封闭模型点云效果较好,但对于大规模散乱点云,其效率低下且有突出冗余。文献[5]提出的保特征的隐式曲面重构方法先对点云数据建立八叉树拓扑结构,再进行局部二次曲面求解,最后求解全局未知参数,对小规模的散乱点云通过调节采样点的邻近点数量能得到较优的重构效果,但在未知量的求取过程中,人为参与过多,求解繁琐且效率不高。文献[6]通过对原始点云进行八叉树划分,建立粗、细层数据,再进行径向基隐式曲面重构,对非封闭模型可能存在失真的情况,对闭合点云数据质量较好,但设定参数是通过多次实验人为选取,不能达到智能计算。
基于以上分析,本文提出一种基于隐式函数的大规模散乱点云自适应重构方法,首先利用自适应八叉树提供与模型密度相关的分割区域点云数据,以分解处理含数万个点的点云;然后在各子区域建立基于径向基函数的隐式元球模型,以保证局部曲面的光滑性,利用自适应差分进化算法智能求解元球模型隐式函数;最后利用改进的对数指数加权拼接算法对局部曲面进行光滑拼接,以生成一个高质的整体曲面模型。
1 散乱点云的分割
为了在微机上实现数据量庞大的散乱点云数据的曲面重构,利用分而自治的思想[7],建立点云模型的三维空间八叉树结构。本文是以采样点数据为输入来求取拟合曲面,以递归深度或边长小于设定阈值为分割终结条件的传统八叉树分割法将增加计算量和降低算法效率。因此本文采用以节点包含的点的数量为划分终结条件的自适应八叉树,详细步骤见文献[8]。
2 点云的隐式曲面重构
2.1 径向基函数隐式曲面表示
本文由于是将大规模的散乱点云先分割再进行曲面重构的,因此采用一种紧支撑径向基隐式函数来表示重构曲面,即metaball模型函数[9-10],直接对采样点进行曲面拟合,无需点的法向量等信息。其一般形式为:

2.2 基于差分进化算法的隐式曲面求解
差分进化(Differential Evolution,DE)算法是模仿自然界生物进化发展规律形成的一种随机启发式搜索和群体智能优化方法,借鉴了“优胜劣汰、适者生存”的原则。本文将大规模的散乱点云进行分割后,在分割的子区域建立隐式曲面函数,再运用差分进化算法自适应求解metaball中心C={ck(ckx,cky,ckz)|k=1,2,…,m}、metaball半径ek和形状参数?姿k