Transform 3D point cloud
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Ernest Porqueras
am 17 Mär. 2021
Bearbeitet: Matt J
am 17 Mär. 2021
I have a point cloud and a rotation matrix like this:
rot=[ -0.48664090 0.36675647 0.79288739;
-0.67601788 -0.73296887 -0.075871207;
-0.55333579 0.57292831 -0.60462612 ]
How can I transform the point cloud using this rotation matrix? I cannot use this matrix with pctrasform and rigid3d.
3 Kommentare
Akzeptierte Antwort
Matt J
am 17 Mär. 2021
Bearbeitet: Matt J
am 17 Mär. 2021
Funny. Well, you can always use affine3d,
rot=[ -0.48664090 0.36675647 0.79288739;
-0.67601788 -0.73296887 -0.075871207;
-0.55333579 0.57292831 -0.60462612 ];
T=eye(4);
T(1:3,1:3)=rot;
tform=affine3d(T)
As a side note, your matrix is not a proper rotation, since its determinant is -1.
det(rot)
0 Kommentare
Weitere Antworten (1)
Bjorn Gustavsson
am 17 Mär. 2021
If you have a 3-x-n array of point-coordinates you can rotate them in 2 ways, either rotate the points or the coordinate system.
For example like this:
r_rotated = rot*r_points;
HTH
0 Kommentare
Siehe auch
Kategorien
Mehr zu Point Cloud Processing finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!