如何通过使用matlab将三维矩阵中的任意值更改为0或1
问题描述:
我有200x200x200矩阵,它在每个体素中都有一些任意值。如何通过使用matlab将三维矩阵中的任意值更改为0或1
我想这个值更改为0或1。
如果体素具有许多啤酒比0,这将是1 否则将是0
有没有人如何解决这个问题?
我的代码如下。
B = zeros(200,200,200); % A is my 200x200x200 data
for i = 1:200
for j = 1:200
for k = 1:200
if A(i,j,k)>0
B(i,j,k) = 1;
else
B(i,j,k) = 0;
end
end
end
end
但是B完全是0. 我应该改变哪一部分?
答
矩阵是您的200x200x200任意值的矩阵。这将为整个矩阵创建一个逻辑索引,其中1表示一个值。 matrix = matrix ~=0;
如果我正确理解你的问题,这听起来像很基本的索引和分配。你能给我们一个[mcve]吗? – beaker
对不起。我是初学者。你可以帮帮我吗? – Tom
请显示'A'中的内容。 – mikkola