Matlab 变换矩阵在点云中的应用

Matlab 变换矩阵在点云中的应用,matlab,computer-vision,Matlab,Computer Vision,这似乎是一个特别愚蠢的问题,但我没有在文档中找到答案: 如何将变换矩阵(平移和旋转)应用于点云,即云中的每个点 提前感谢。您可以使用矩阵乘法。如果变换矩阵是4x4矩阵,则必须用1填充点 T = [1, 0, 0, 0; 0, 1, 0, 0; 0, 0, 1, 0; 0, 0, 0, 1]; P1 = [1; 2; 3]; P2 = T * [P1; 1]; 如果要将转换应用于整个云,则必须使用单元。如果您想加快速度,请尝试使用库向我们展示您尝试的方法可能仅使用矩阵乘法Matlab(至少对于

这似乎是一个特别愚蠢的问题,但我没有在文档中找到答案:

如何将变换矩阵(平移和旋转)应用于点云,即云中的每个点


提前感谢。

您可以使用矩阵乘法。如果变换矩阵是4x4矩阵,则必须用1填充点

T  = [1, 0, 0, 0; 0, 1, 0, 0; 0, 0, 1, 0; 0, 0, 0, 1];
P1 = [1; 2; 3];
P2 = T * [P1; 1];

如果要将转换应用于整个云,则必须使用单元。如果您想加快速度,请尝试使用库

向我们展示您尝试的方法可能仅使用矩阵乘法Matlab(至少对于
仿射3D
)使用将点乘以变换矩阵的约定:
p*T
。看见为什么需要使用单元阵列来变换多个点?将一个
nx4
点阵列乘以变换矩阵就足够了,对吗?