Ниже следующий код очень медленный.
Код: Выделить всё
rows = size(M,1); cols = size(M,2);
SD = zeros(rows,cols);
for r = 1:rows
for c = 1:cols
ones_pix = M(r,c,:);
ones_pix = ones_pix(:);
SD(r,c) = std(ones_pix);
end
end
Модератор: Admin
Код: Выделить всё
rows = size(M,1); cols = size(M,2);
SD = zeros(rows,cols);
for r = 1:rows
for c = 1:cols
ones_pix = M(r,c,:);
ones_pix = ones_pix(:);
SD(r,c) = std(ones_pix);
end
end
Код: Выделить всё
SD = std(M,0,3)
Код: Выделить всё
function targ_matrix_povorot
% ответ: матрица размером А[rows cols]
a = [0 1; 2 3; 4 5]; b = [6 7; 8 9; 10 11];
c = [12 13; 14 15; 16 17]; d = [18 19; 20 21; 22 23];
M(:,:,1) = a'; M(:,:,2) = b'; M(:,:,3) = c'; M(:,:,4) = d';
[rows cols n] = size(M); N = zeros(n, cols, rows);
for r = 1:rows
T = zeros(n,cols);
for i = 1:n
m = M(:,:,i);
row = m(r,:);
T(i,:) = row;
end
N(:,:,r) = T;
end
mn = mean(N); A = zeros(rows,cols);
for i = 1:rows % size(N,3)
A(i,:) = mn(:,:,i);
end
end