我有一個單元格5x5,每個單元格有100x100單個數據。我想計算每個矩陣100x100的模式,然後做一些取決於模式的操作。我怎樣才能做到這一點?單元格操作
我有這樣的代碼,計算在每個單元中的模式,現在我想每個值上100×100矩陣與對應的比較細胞模式。
I = imread('DSM.tif');
c = mat2cell(I, [100,100,100,100,100], [100,100,100,100,100])
for i=1:5
for j=1:5
mode_cell = mode(c{i,j}(:))
end
end
我這樣做代碼:
modes = cellfun(@(x) mode(x(:)), c, 'UniformOutput', false);
modes = cell2mat(cellfun(@(x) mode(x(:)), c, 'UniformOutput', false));
for i = 1 :5
for j =1 :5
for i2=1 :100
for j2=1 :100
cell = c{i,j};
if cell(i2,j2)<modes(i,j)
teste(i,j)=0;
else
teste(i,j)=1;
end
end
end
end
end
但有了這個代碼的矩陣泰斯特只有100×100。我想附上所有的睾丸矩陣,最後我想要一個500x500的矩陣。我怎樣才能做到這一點?
使用for循環或cellfun,無論你喜歡什麼。 – Daniel
我已經有每個單元的模式。但是,我怎麼能比較每個矩陣100x100的值與相應的單元模式? –
當提問時,請說明您已經瞭解的內容以及您的需求。現在您收到了一個答案和一條評論,解釋瞭如何執行您已經實施的內容。 – Daniel