Rotating 3D cloud matrix data
9 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hi,
I have a 3D cloud point matrix (x,y,z) (39600x3) and I am trying to rotate all the points by a few degrees clockwise. I have been attempting to use 'makeghtform' however I keep getting errors and I have been doing trial and error to try and work out how to complete this task however I seem to be failing. Can anyone please help me?
Thanks
1 comentario
Respuestas (2)
Jan
el 17 de Jun. de 2019
Editada: Jan
el 17 de Jun. de 2019
Multiplacte the data with a rotation matrix, e.g. obtained by: https://www.mathworks.com/matlabcentral/fileexchange/66446-rotation-matrix
R = RotMatrix(alpha, axisOfRotation);
RotatedPoints = R * Points;
Or without this function:
% Normalized vector:
u = u(:);
u = u ./ sqrt(u.' * u);
% 3D rotation matrix:
x = u(1);
y = u(2);
z = u(3);
mc = 1 - c;
R = [c + x * x * mc, x * y * mc - z * s, x * z * mc + y * s; ...
x * y * mc + z * s, c + y * y * mc, y * z * mc - x * s; ...
x * z * mc - y * s, y * z * mc + x * s, c + z * z .* mc];
0 comentarios
Ver también
Categorías
Más información sobre Point Cloud Processing en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!