How to compose more than 2images in a folder ?

1 view (last 30 days)
Dear All,
I have 10 images in a folder need to be composed.
I found the function imfuse() but it is work for only 2 images.
Could anyone have any solutions for my case ?
I attached 10 images
Thanks and regards!

Accepted Answer

KSSV
KSSV on 15 Jul 2022
imgFiles = dir('*jpg') ;
N = length(imgFiles) ;
I1 = imread(imgFiles(1).name) ;
I2 = imread(imgFiles(2).name) ;
If = imfuse(I1,I2) ;
for i = 3:N
I = imread(imgFiles(i).name)
If = imfuse(I,If) ;
end
imshow(If)

More Answers (1)

Image Analyst
Image Analyst on 15 Jul 2022
Maybe you just want to sum the images to get the average
imgFiles = dir('*.png') ;
numFiles = length(imgFiles);
for k = 1 : numFiles
thisImage = double(imread(imgFiles(i).name))
if k == 1
sumImage = thisImage;
else
sumImage = sumImage + thisImage;
end
end
averageImage = uint8(sumImage / numFiles);
imshow(averageImage, []);
or maybe you might be interested imshowpair or imtile
  2 Comments
Image Analyst
Image Analyst on 15 Jul 2022
OK, just thought I'd offer. It sounds like @KSSV's solution is working for you.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!