问题的提法
考虑寻找点云的旋转角度和位移的问题。点云是指平面上的一组点,这些点在它们的空间移动过程中保留彼此的相对位置。
那些。有两套点:初始云和在空间中任意转换的云(见图1)。空间中点云的任何变换都可以解释为旋转和位移。因此,有必要确定必须旋转原始点云的角度和旋转原始点云的距离,以便以任意方式转换相同的点云。

图。1施加15度旋转的点云的示例,其沿X轴的偏移:10,沿Y轴的偏移:30
算法
1.确定点云的偏移量
, . . , .
, .
: (0;0) (10;30). , : 10, Y: 30.
2.
(. 2). , . 90 , 4 .

. 2
, . , , .
一世=(一世XX一世Xÿ一世ÿX一世ÿÿ), :
一世XX=∑ñ=1个ñ[(X--XC)2]一世Xÿ=∑ñ=1个ñ[(X--XC)(ÿ--ÿC)]一世ÿX=∑ñ=1个ñ[(X--XC)(ÿ--ÿC)]一世ÿÿ=∑ñ=1个ñ[(ÿ--ÿC)2].
:
— : (33334 0; 0 11667), : (1; 0) (0; 1), 0 90 .
— : (31882.5 -54167.5; -54167.5 13118.4), (0.9659 -0.2588) (0.2588 0.9659), -15 75 .
, 15, 105, 195 285 . , 15 .
: . Matlab, .

. 3

. 4

. 5
使用上述方法,您可以确定旋转角度和原始点云相对于另一个点的偏移。这是使用原始点云的任何空间运动获得的。此外,在存在小误差(正态分布)的情况下,该方法也稳定运行(请参见图3和图5)。
当需要确定任何对象的空间位置时,此方法也可以用于数字图像处理。
本文的主要思想是让读者在遇到类似任务并且不花时间在上面时立即应用所描述的方法。