How to get a only one table with a for loop?
1 view (last 30 days)
Show older comments
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.
0 Comments
Accepted Answer
Ben11
on 24 Jun 2014
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.
2 Comments
Ben11
on 26 Jun 2014
Hi Karina I saw that you posted a new question I just saw it sorry for not responding to you :)
More Answers (0)
See Also
Categories
Find more on Environment and Settings in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!