论文部分内容阅读
近年来,反求工程技术在汽车制造、航天航空和医学等领域得到了广泛的应用,而随着三维扫描技术的进步,通过三维扫描获取的点云数据量十分庞大,在实际的应用中存在着数据冗余的问题,因此对点云数据的精简成为了当前的热点研究问题。本文的研究内容主要分为点云特征提取、点云聚类和点云精简三个方面,具体内容如下:首先,在点云特征提取方面,针对以往散乱点云特征提取算法存在尖锐特征点提取不完整以及无法保留模型边界点的问题,提出了一种基于多判别参数混合方法的散乱点云特征提取算法。该方法对于每个k邻域计算数据点曲率、点法向与邻域点法向夹角的平均值、点到邻域重心的距离、点到邻域点的平均距离,据此四个参数定义特征阈值和特征判别参数,特征判别参数大于阈值的点即为特征点。以上四个参数中,曲率、法矢夹角和数据点到其邻域点的平均距离三个参数参与检测曲面的尖锐点,而点到邻域重心的距离则主要用于识别边界数据点,同时也能为检测曲面尖锐点提供一定的作用。实验结果表明,与已有算法相比,该算法不仅可以有效提取尖锐特征点,而且能够识别边界点。其次,在点云聚类方面,针对传统K-means聚类算法应用于点云数据时存在迭代收敛时间长、多次运行的聚类结果具有随机性以及聚类效果较差的问题,提出了一种基于自适应八叉树的点云K-means聚类算法。该方法利用自适应八叉树为K-means聚类提供与点云密度分布相关的初始化聚类中心和K值,然后迭代输出聚类结果。实验表明该方法在聚类的评价函数值和运行时间上都优于传统的K-means聚类,而且消除了多次运行时聚类结果的随机性。最后,在点云精简方面,首先利用本文提出的散乱点云特征检测方法提取点云特征点,然后对点云进行基于自适应八叉树的K-means聚类操作,最后在不包含特征点的聚类中以距离聚类重心最近的数据点代替整个聚类,其他数据点删除。为了保留模型的细节特征,在包含特征点的聚类中,选择该聚类所包含数据点中曲率差值最大的两个点作为新的初始化聚类中心再次进行聚类细分,直到聚类中数据点的最大曲率差小于阈值或者聚类中只有一个数据点为止,最终同样以距离聚类重心最近的数据点代替整个聚类。通过实验对比,精简后的数据点分布均匀没有空洞,精简误差以及用于片状点云时因为边界收缩而产生的误差较小,从而能够使精简算法适用于封闭及片状的点云数据类型。