本技术公开了一种基于Gocator的点云滤波算法,包括:Gocator采集待测物体表面三维点云数;计算每一帧点云的邻域集,以计算出的邻域集为基准,去除点云离群点;以去除离群点后的点云为基准,计算每一帧点云中每个点的曲率、法向量以及特征距离;以步骤3中计算出的曲率、法向量以及特征距离为基准,引入权重计算公式,并将计算得到的权重代入至引导滤波代价公式中,对每一帧点云进行权重分配后的引导滤波;本发明解决了由于滤波参数固定而导致的过度平滑等问题,实现了平滑点云数据的同时保留了物体的尖锐特征,使其更接近物体原状,大大提高了采集精度及效率。
背景技术
随着计算机视觉技术在工业检测领域的迅速发展,三维重建技术在工业制造等领域也发挥了重要作用,点云滤波技术在工业制造领域中扮演着至关重要的角色,尤其是在涉及三维测量、检测和质量控制的应用场景中。随着三维传感器技术的进步,点云数据在采集过程中常常伴随着噪声、冗余信息和异常点,这就需要点云滤波算法对数据进行优化,以保证数据的准确性和可用性。
工业制造中,点云数据的主要应用包括产品的尺寸检测、形状重建、装配精度检测以及质量控制等。然而,点云数据的密集程度和精度通常会受到环境噪声、测量设备的性能、工件表面的反射特性等多种因素影响。尤其是在复杂工业环境下,反射率较差的表面、环境光干扰、传感器角度等因素容易导致点云数据中出现异常值或噪声。这种情况下,未经处理的点云数据将难以直接用于精确的几何分析或质量检测。因此,点云滤波作为预处理步骤,具有极为重要的意义。
根据不同的应用需求及数据特性,点云滤波可以大致分为统计滤波、体素滤波、邻域滤波以及平滑滤波这四类。统计滤波利用点云中每个点的局部统计特征来识别和去除异常点。体素滤波通过将点云数据划分为相等大小的三维网格单元(体素),在每个体素内只保留一个代表点,主要用于点云数据的精简。基于邻域的滤波方法通过分析每个点周围的邻聚点,利用几何约束来平滑点云或去除不符合局部几何结构的点。平滑滤波用于减少点云中的高频噪声,同时尽量保留物体的边缘和细节特征。以上几种方法的计算时间较长,且鲁棒性较差,由于滤波处理使用的参数相同,因此对于不同物体的滤波效果相差较大。
实现思路