计算两组未配对点之间的仿射变换
Computing affine transformation between two sets of unpaired points
我有两组点,P 和 Q,其中 Q 是 P 的变换(旋转、平移和缩放)。点的配对是未知的。我将如何计算变换的估计值?
如果你的点云真的很相似,你可以
以质心为中心,
重新缩放它们,使到原点的平均距离为单位,
旋转它们,使它们的惯性椭圆的主轴水平。
那么它们将完美重叠。可以从角度、尺度和平移向量之间的差异检索变换。
不幸的是,当两个惯性轴的长度相同时,这种方法就达不到要求了。这种情况你可以试试其他的时刻,但我不能给你一个防弹程序(主要是对称情况下,旋转不能唯一确定)。
如果两个点云显着non-similar,上面会失败。您可以尝试使用 RANSAC 方法,通过匹配两个随机点对,计算相似性变换和总匹配误差(或从该暂定变换执行完整的 ICP)。
我有两组点,P 和 Q,其中 Q 是 P 的变换(旋转、平移和缩放)。点的配对是未知的。我将如何计算变换的估计值?
如果你的点云真的很相似,你可以
以质心为中心,
重新缩放它们,使到原点的平均距离为单位,
旋转它们,使它们的惯性椭圆的主轴水平。
那么它们将完美重叠。可以从角度、尺度和平移向量之间的差异检索变换。
不幸的是,当两个惯性轴的长度相同时,这种方法就达不到要求了。这种情况你可以试试其他的时刻,但我不能给你一个防弹程序(主要是对称情况下,旋转不能唯一确定)。
如果两个点云显着non-similar,上面会失败。您可以尝试使用 RANSAC 方法,通过匹配两个随机点对,计算相似性变换和总匹配误差(或从该暂定变换执行完整的 ICP)。