2017-10-20 77 views
0

我有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. 我應該改變哪一部分?

+0

如果我正確理解你的問題,這聽起來像很基本的索引和分配。你能給我們一個[mcve]嗎? – beaker

+0

對不起。我是初學者。你可以幫幫我嗎? – Tom

+0

請顯示'A'中的內容。 – mikkola

回答

1

矩陣是您的200x200x200任意值的矩陣。這將爲整個矩陣創建一個邏輯索引,其中1表示一個值。 matrix = matrix ~=0;