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
Jenifer NG
Jenifer NG on 15 Jul 2022
Thanks for your code,
Actually, I have this raw image as attached image.
I want to create serveral images for training model.
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.

Products


Release

R2022a

Community Treasure Hunt

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

Start Hunting!