Filter löschen
Filter löschen

Pad a vector to get matrix

1 Ansicht (letzte 30 Tage)
Mori
Mori am 26 Jul. 2016
Bearbeitet: Andrei Bobrov am 26 Jul. 2016
I have a matrix A like above, how I can get matrix B as result of rotated matrix A in space?

Akzeptierte Antwort

Mori
Mori am 26 Jul. 2016
A=[10 12 3 34 5]
B=A(1,1)
numel(A)
for i=2:1:numel(A)
B=padarray(B,[1,1],A(1,i))
end

Weitere Antworten (1)

Andrei Bobrov
Andrei Bobrov am 26 Jul. 2016
Bearbeitet: Andrei Bobrov am 26 Jul. 2016
A = 5:-1:0;
n = numel(A);
B = zeros(2*n-1);
B(n,n) = 1;
B = A(bwdist(B,'chessboard') + 1)
or without Image Processing Toolbox
A = [10 12 3 34 5];
n = numel(A);
[ii,jj] = ndgrid(1:2*n-1);
B = A(max(abs(ii-n),abs(jj-n))+1);
or
A = [10 12 3 34 5];
n = numel(A);
p = 1:2*n-1;
z = toeplitz(p,p);
B = A((z + z(end:-1:1,:))/2);

Kategorien

Mehr zu Time Series finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by