一、简述
距离计算和邻域分析是理解网格和点云的形状、结构和特征的重要工具。我们这里要基于一些3D库来提取基于距离的信息并将其可视化。
与深度图或体素相比,点云和网格表示 3D 空间中的非结构化数据。点由它们的 (X, Y, Z) 坐标表示,在 3D 空间中可能彼此靠近的两个点在数组表示中可能很远。与2d图像中的相同问题相比,理解某个点的邻域并不是一项简单的任务。
点之间的距离计算是点云和网格分析、噪声检测和去除、局部平滑和智能抽取模型等的重要组成部分。距离计算也是 3D 深度学习模型不可或缺的一部分,既用于数据预处理,也是训练流程的一部分。此外,经典的点云几何特征依赖于最近点的邻域计算和PCA分析。
对于非常大的点云和复杂的网格,如果以暴力方式处理,所有点之间的距离的计算可能会变得非常资源密集且成本高昂。
所以使用KD树或八叉树的不同数据结构的实现,将对象的 3D 空间划分为更易于管理和结构化的象限。这种数据结构可以根据原始数据得到,之后所有的距离查询都可以被加速和简化。