MATLAB Answers

How do I combine two images of different sizes?

53 views (last 30 days)
I have a small picture image that I want combine with a larger one,just like sticking them together. Re-sizing and adding them didn't work because the smaller one gets stretched too much when I re-sized it to size of the larger one,and the opposite when I tried re-sizing the larger one to the size of the smaller one. Can anyone help?

  0 Comments

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 21 Apr 2012
You want the two images to be adjacent to each other in their different sizes? Or you want them to be adjacent but the same size as each other? Or you want to mix together the images like by transparency? Or you want to replace part of the first image by the second image?
If you want the two images to be adjacent to each other in their different sizes, then pad the edge of the first matrix with a band of as many zeros as matches the size of the second image, and then store the second image into the appropriate place in those zeros. Though you might have to use some value other than 0 (e.g., you might want the empty space to be white.)

  3 Comments

Aliyu Abdu
Aliyu Abdu on 21 Apr 2012
I want the images to be adjacent to each other in their different sizes.
I get the idea but can you pls tell me,or atleast direct me to where I can get the info. on how to do that. Thanks for helping.
Walter Roberson
Walter Roberson on 21 Apr 2012
sb = size(BiggerImage);
ss = size(SmallerImage);
BiggerImage(1,end+ss(2),1) = 0; %extend image
BiggerImage(1:ss(1), sb(2):sb(2)+ss(2)-1, :) = SmallerImage;

Sign in to comment.

More Answers (0)


Translated by