How to combine the multiple images to get the average single image?
4 次查看(过去 30 天)
显示 更早的评论
Hello, I have several images. I want to combine them to create my own template. Please help me with the code.
0 个评论
回答(2 个)
Walter Roberson
2016-1-13
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 个评论
Walter Roberson
2016-1-13
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
2016-1-15
See my demo for averaging images, attached.
4 个评论
Image Analyst
2016-1-16
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.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Data Workflows 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!