Concatenation of images in one Matrix

1 view (last 30 days)
Hi all
I have 3 images having different size of 512x512,256x256,128x128
How can I concatenate them together in one matrix?
  3 Comments
Algorithms Analyst
Algorithms Analyst on 1 May 2014
I made a Gaussian pyramid of 3 layers.let say its 512*512,256*256,128*128. Now I have a cell array of this pyramid.now I want this pyramid in one matrix for further processing.
José-Luis
José-Luis on 1 May 2014
Edited: José-Luis on 1 May 2014
You can't have them in a single matrix if you don't resize or pad your matrices, or if you don't store everything as a single row/column vector, but I'm guessing the later is not what you want.

Sign in to comment.

Accepted Answer

Image Analyst
Image Analyst on 2 May 2014
I'd put them into a structure. You can attach each image variable to the structure as a new field.
my3images.smallImage = smallImage128;
my3images.mediumImage = mediumImage256;
my3images.bigImage = bigImage512;
This lets you save all 3 images in a single variable with no change in their size . You could have an array of these structures if you had multiple sets of images.
You could also use a 1 by 3 cell array if you want but I think cell arrays are more complicated because there's often confusion over whether to use parentheses of braces.

More Answers (1)

Azzi Abdelmalek
Azzi Abdelmalek on 1 May 2014
Suppose im1 is 512x512, im2 is 256x256 and im3 is 128x128
[n,m,p]=size(im1);
new_im2=imresize(im2,n,m);
new_im3=imresize(im3,n,m);
im_final=[im1;new_im2;new_im3]

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!