首页 > 解决方案 > 旋转 3D 子矩阵 Matlab

问题描述

我想旋转一个作为子矩阵的立方体,所以我只想旋转这个子矩阵。我怎么能这样做?这是代码:

clear all
close all 
Dimension = 256;
background = zeros(Dimension,Dimension,Dimension);
cubo1 = zeros(Dimension,Dimension,Dimension);
cubo2 = zeros(Dimension,Dimension,Dimension);
tam1 = 20;
cubo1(50:50+tam1,50:50+tam1,50:50+tam1) = 0.60;
tam2 = 20;
cubo2(60:60+tam2,60:60+tam2,60:60+tam2) = 0.60;
[x,y,z] = ind2sub(size(cubo1), find(cubo1));
plot3(x,y,z,'color','g','marker','.')
hold on;
[x,y,z] = ind2sub(size(cubo2), find(cubo2));
plot3(x,y,z,'color','b','marker','.')
axis([0 Dimension 0 Dimension 0 Dimension]);

我使用了 imrotate 但旋转了整个 3d 矩阵,我不希望这样。旋转完成后,我想要带有旋转子矩阵(立方体)的新矩阵 256x256x256。

谢谢!

标签: matlab3drotationsubmatrix

解决方案


推荐阅读