How to combine the multiple images to get the average single image?
7 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello, I have several images. I want to combine them to create my own template. Please help me with the code.
0 commentaires
Réponses (2)
Walter Roberson
le 13 Jan 2016
for ....
....
this_filename = ... construct an appropriate string
TheImageArray = imread(this_filename);
if file_index == 1
image_totals = double(TheImageArray);
elseif isequal( size(image_totals), size(TheImageArray) )
image_totals = image_totals + TheImageArray;
else
error(sprintf('File "%s" is the wrong size', this_filename));
end
end
average_image = image_totals / number_of_images;
2 commentaires
Walter Roberson
le 13 Jan 2016
Then I do not understand your question. If you have different images of the same letter, you would normally write each of the images as a template.
Is the question about how to take a number of different images of the same letter and somehow construct a combined image that is "more representative" of how the letter should ideally look? Or is the question about how to create a mosaic image that shows all of the different images in a single image?
Image Analyst
le 15 Jan 2016
See my demo for averaging images, attached.
4 commentaires
Image Analyst
le 16 Jan 2016
The array is already cast to uint8() after the division of the sum to get the mean. I added an imwrite() and imread() after that and it worked fine. So you must have done something different than me but you forgot to attach your m-file with your modifications, so I don't know what you're doing.
Voir également
Catégories
En savoir plus sur Image Data Workflows dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!