MATLAB: How to get a only one table with a for loop

for loopimage processinguitable

I have this code:
imDs=imread('10.png');
iGrisB = imDs(:, :, 3);
%Datos

media = mean(iGrisB(:));
Std=std(double(iGrisB(:)));
DMA=mad(double(iGrisB(:)));
display(media)
display(Std)
display(DMA)
Although it functions good,I have to copy and paste the results, and also I must do it for many images. It wastes to much time. So,what I need is getting the data of my images (almost 50 images) in a table. Then I thought in the next code:
for i=10:15%I used this only as an experiment
imDs=imread([num2str(i),'.png']);
iGrisB = imDs(:, :, 3);
%Datos
media = mean(iGrisB(:));
Std=std(double(iGrisB(:)));
DMA=mad(double(iGrisB(:)));
f=figure;
data = {media,Std,DMA};
ColNames={'Media','DS', 'DMA'};
uitable(f,'Data', data, 'ColumnName',ColNames, ...
'Position', [40 40 300 100]);
end
But the problem is that the data isn't in only one table, it gives me one table per image with 3 columns and one row. So, I need all my information in the same table. Thank you for your time. Regards.

Best Answer

What if you take the following commands out of the for-loop?:
f=figure;
data = {media,Std,DMA};
ColNames={'Media','DS', 'DMA'};
uitable(f,'Data', data, 'ColumnName',ColNames, ...
'Position', [40 40 300 100]);
I can't try it right now, but creating a single table before entering the loop and then uptating the content as you go through the loop might do the trick.