如何在matlab中旋转3D矩阵

时间:2015-09-17 12:15:59

标签: matlab matrix 3d rotation

我有一个尺寸为X:24,Y:24和Z:61397的3D矩阵。 Z对应于帧数。当我绘制每一帧时,我得到一个顺时针旋转45度的图像。 enter image description here

我一直试图旋转矩阵,使照片可以笔直。(它需要逆时针旋转45度)。

我已尝试根据类似问题的先前答案通过以下旋转矩阵进行乘法:

% rotation matrix 
theta = pi/4;
Rot = makehgtform('xrotate',theta);
Rot = Rot(1:3,1:3);

由于尺寸不同,我收到了错误。我需要将旋转矩阵扩展到24by24吗?如果是,怎么样?

1 个答案:

答案 0 :(得分:1)

如果你所做的只是将图像旋转45度,你只需使用imrotate

imrotate(Stack, 45);

其中Stack是你的3D矩阵。 如果您正在寻找不依赖于图像处理工具箱的解决方案,请查看here