我想知道是否有人可以帮我提出一个3D图像代码,我现在正在研究。
我有一个简单的3D矩阵:
A(:,:,1)=
0 7 4
0 32 9
4 3 1
A(:,:,2)=
6 0 4
3 4 6
2 3 11
A(:,:,3)=
12 2 4
10 20 6
14 3 2
我想找到那些大于阈值的值(例如,比7更大)。但是我只想要那些外部元素,即不是“中心”元素(矩阵第一层上的32不应该被标记为最大值)
(我正在使用更大的矩阵,但我想一旦我能够从上面对小的3D矩阵进行此操作,对于较大的矩阵来说就不难了。)
非常感谢
答案 0 :(得分:1)
试试这个:
A = randn(4,4,4); % data. Arbitrary size
th = 1; % threshold
ind = find(A>th);
[x y z] = ind2sub(size(A), ind);
ext = find((x==1)|(x==size(A,1))|(y==1)|(y==size(A,2))|(z==1)|(z==size(A,3)));
ind_solution = ind(ext); % linear index of desired values
solution = A(ind_solution) % desired values
答案 1 :(得分:0)
我猜你可以从这些矩阵中提取向量...所以这是获取外部向量并通过其元素循环的问题。
我认为link会帮助您提取矢量。