Padding an array with some size, and the location
Mostrar comentarios más antiguos
Say that we have an array, and I wanted to resize that array while keeping its content. Something I thought of is "padding". When I tried that, I noticed that the original content had different locations in the new array. How can I pad they array, while keeping the original array content in their same location?
Thanks.
Respuesta aceptada
Más respuestas (1)
Image Analyst
el 7 de Feb. de 2015
What did you try? Did you try padarray() in the Image Processing Toolbox?
m = magic(3);
mPadded = padarray(m, [4, 3])
2 comentarios
med-sweng
el 7 de Feb. de 2015
Image Analyst
el 7 de Feb. de 2015
OK, glad it worked for you. It took your array and padded around it with zeros just like it was designed to do.
If you want the matrix not to be padded on all sides, but to keep it in the upper left, you can just assign the last element. For example:
b=magic(3);
b(8,6) = 0
b =
8 1 6 0 0 0
3 5 7 0 0 0
4 9 2 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
Categorías
Más información sobre Resizing and Reshaping Matrices en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!