MATLAB Answers

Pad array to certain size

124 views (last 30 days)
raheem mian
raheem mian on 11 Feb 2020
Commented: TJ on 30 Oct 2020
I would like to pad my matrix x so that the resulting size of the matrix is 425x425.
How would I achieve this ?
x = randi(256,200,200);

  2 Comments

James Tursa
James Tursa on 11 Feb 2020
What about the 3rd dimension? How is your overall padding supposed to work?
raheem mian
raheem mian on 11 Feb 2020
X is a 200x200 matrix with random integer values up to 256.

Sign in to comment.

Answers (1)

SaiDileep Kola
SaiDileep Kola on 11 Feb 2020
Hi Raheem,
This is how you can realize your required outcome,
x=randi(256,200,200); % Initial Matrix
z=zeros(425,425); %New matrix
z(1:200,1:200) = x; % Superimpose x on to appropriate position on z

  1 Comment

TJ
TJ on 30 Oct 2020
I am looking for an answer to a similar problem,
I have a 22x1 cell array, where each cell is an n by n matrix (image) mostly around the size 20 x 20 (double values), all of the same image pixel size, 0.04 microns.
I would like to return a 22x1 cell array where each cell is an n by n matrix of equal size, using the solution above this is relatively simple. However, that would displace the real (scaled) location of each matrix. So I would like the all of the original matrices to be at the centre of the returned padded matrices.
Is there a simple solution to this?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!