【问题标题】:Permutation of pages of a 3d array in matlabmatlab中3d数组页面的排列
【发布时间】:2014-05-13 12:39:48
【问题描述】:

我在 MATLAB 中有一个表示图像的 3D 数组。我想反转页面的位置(在我的情况下是切片)。 假设页数为 N。我想用第 N 个替换第一页,用第 (N-1) 个替换第二页,依此类推。在 matlab 中是否有任何功能可以做到这一点。现在我正在使用下面的代码,但我必须避免嵌套 for 循环,这就是为什么我正在寻找一个准备好的函数。任何帮助将不胜感激。

提前谢谢你

I = ones(size(Image,1),size(Image,2),size(Image,3));
k=1;
for n=size(Image,3):-1:1
    I(:,:,k) = Image(:,:,n);
    k = k+1;
end

【问题讨论】:

    标签: matlab permutation d3dimage


    【解决方案1】:

    你可以简单

    I = Image(:,:,end:-1:1);
    

    【讨论】:

      【解决方案2】:

      另一种可能性,它允许您使用相同的符号沿任意维度翻转数组:

      I = flipdim(Image, 3); %// 3 is the dimension you want to flip along
      

      【讨论】:

        猜你喜欢
        • 2016-08-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-09-03
        • 2015-12-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多