Combine /fuse two images into one

14 views (last 30 days)
Hi all
I have two images . I want to combine them into one image .1st images has a size of 512x271
and the second image has a size of 512x271x512
I want to combine them into one image with size of 512x271x512 like last image
but I don't know how I can do this . I have used imfuse but its not working for me . any one help me in tis matter

Accepted Answer

Walter Roberson
Walter Roberson on 18 May 2018
im1 = imread('one.JPG');
other_images = .... whatever is needed to read your 512x271x512 into an array
blend = 0.2;
mask1 = imbinarize(im1);
fused = other_images;
for slice = 1 : size(fused, 3)
this_slice = fused(:,:,slice);
this_slice(mask1) = this_slice(mask1) * (1-blend) * im1(mask1);
fused(:,:,slice) = this_slice;
end
Here, blend is the portion of the image that should be used at those locations, rather than just overwriting the pixels with the white line.
  9 Comments
Alina tom
Alina tom on 18 May 2018
The fused image contain the edge in black color . I want to change its color. how I can do this
Walter Roberson
Walter Roberson on 18 May 2018
The fused image should be making the edge in white unless your im1 is not really a JPEG image or unless your other_images is int16 or uint16 with a high range.
What is class(im1) and class(other_images) and max(im1(:)) and max(other_images(:)) ?

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!