add small image to large image in center without losing image quality

i have a image containing some data. I want to add it into bigger image which contains zero. KINDLY HELP

 Accepted Answer

You can use indexing to place a smaller image inside a large image. For example if imageBig is 200x200x3 and imageSmall is 50x50x3 then use
imageBig(70:70+size(imageSmall,1)-1, 80:80+size(imageSmall,2)-1, :) = imageSmall;
this will place imageSmall over imageBig starting from (70, 80) pixels from topl ledt corner.

8 Comments

Great help. Thanks Ameera Hamza. Can you please tell me how can i place my small image not touching any of the sides. as when i use code provided by you it touches the axis in top right corner
more clearing my comment. please provide information that i don't want to place my image on any axis.
Can you tell about the dimensions of your both images?
large image size 260*260 and small image size is 256*256
large image size 260*260*3 and small image size is 256*256*3
You need to change the location of the top left pixel. In my answer it was (70, 80). But since your Big Image already have similar resolution to small Image, the corner needs to be close
imageBig(3:3+size(imageSmall,1)-1, 3:3+size(imageSmall,2)-1, :) = imageSmall;
Remember, it will only leave space of 2 pixels at edges.
Thank you very much Ameer Hamza for quick reply. It works perfectly...

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!