Combine /fuse two images into one
14 views (last 30 days)
Show older comments
Alina tom
on 17 May 2018
Commented: Walter Roberson
on 18 May 2018
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
0 Comments
Accepted Answer
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
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(:)) ?
More Answers (0)
See Also
Categories
Find more on Image Segmentation and Analysis 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!