用matlab求三维矩阵元素的最值以及对应的位置

如题所述

转自[百度知道]

[x,y,z]=meshgrid(1:7,7:14,1:3);%生成三个三维数组,以x为例

min_x=min(x(:));%计算三维维数组x的最小值

max_x=max(x(:));%计算三维维数组x的最大值

s=size(x);%计算三维维数组的大小

Lin=find(x<=min_x);%计算最小值位置的单下标

Lax=find(x>=max_x);%计算最大值位置的单下标

[i,j,k]= ind2sub (s,Lin);%将最小值单下标转为三维多下标

[m,n,p]= ind2sub (s,Lax);%将最大值单下标转为三维多下标

Loc_in=[i,j,k];%最小值位置下标

Loc_ax=[m,n,p];%最大值位置下标
温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜