我的 3D 扫描仪从不同角度扫描一些物体,最终获得 360° 表面重建。每次扫描的点云有不同数量的点,需要合并。在我想用于重建的 PCL 库中,有一些算法可以使用一些迭代最近点方法来合并具有相同点数的点云。
我想避免找出旋转轴。当然,知道它的位置和旋转角度,我可以将一朵云的所有点乘以旋转矩阵,然后合并云。有没有办法在不知道旋转中心的情况下合并它们?(甚至可能从算法中得到它的位置?)
我的 3D 扫描仪从不同角度扫描一些物体,最终获得 360° 表面重建。每次扫描的点云有不同数量的点,需要合并。在我想用于重建的 PCL 库中,有一些算法可以使用一些迭代最近点方法来合并具有相同点数的点云。
我想避免找出旋转轴。当然,知道它的位置和旋转角度,我可以将一朵云的所有点乘以旋转矩阵,然后合并云。有没有办法在不知道旋转中心的情况下合并它们?(甚至可能从算法中得到它的位置?)
好吧,这似乎是一个老问题,可能对其他人有帮助:) 如果您在没有注册的情况下合并点云,那将没有意义。因此应采用ICP。然后您可以对相应的点云进行转换,然后将它们合并。应该直截了当。
我能够弄清楚如何连接两种不同大小的云的唯一方法是将较小的云填充到与较大的云相同的大小。我通过测试哪个最大然后用较小的云填充临时云然后用 0 0 0 填充余额来做到这一点。
我看到的另一种方法是创建一个具有所有 0 0 0 点的临时云,然后用较小的云填充临时云的下部。
我认为后者更容易实现,但前者更快。我用的是前者。