how can I save the results of every run in a vector?

3 次查看(过去 30 天)
MATLAB
  2 个评论
Kirby Fears
Kirby Fears 2015-12-11
Is "every run" a function called in a loop? What is returned from each run?
Please give details and examples.
ramin asadi
ramin asadi 2015-12-11
the result is sum of the latest vector of pixels matrix, it doesnt have a loop, the code is quite simple; I=imread('png0015.bmp'); I1=rgb2gray(I); BW=edge(I1,'sobel'); D=bwdist(BW); u=D(480,:); Z=sum(u)/720; Z for every run is a number and i run this for 60 items. i want to save the amount of Z for every run and then avearage this vector.

请先登录,再进行评论。

回答(1 个)

Star Strider
Star Strider 2015-12-11
编辑:Star Strider 2015-12-11
Create a counter and use every incremented value of it to specify a particular matrix row (or column) or cell array element:
1:
for k1 = 1:N
x(k1) = ... RESULT OF CALCULATION ...;
end
or:
for k1 = 1:N
x{k1} = ... RESULT OF CALCULATION ...;
end
2:
k1 = 1;
while condition = true
x{k1} = ... RESULT OF CALCULATION ...;
k1 = k1 + 1;
end
See the documentation on matrix indexing for details on how to specify rows or columns.
EDIT — To average the vector after you’ve created it, use the mean funciton:
x_mean = mean(x);
  3 个评论
ramin asadi
ramin asadi 2015-12-11
i think i need to read all 60 image in this loop, but i dont know how??
Star Strider
Star Strider 2015-12-11
If you want to read 60 images, this is one option:
for k1 = 1:60
I=imread('png0015.bmp'); % Read Each Image File
I1=rgb2gray(I);
BW=edge(I1,'sobel');
D=bwdist(BW);
u=D(480,:);
Z(k1)=sum(u)/720;
end
You obviously want to read different image files. There are ways to do that in a loop, but since I have no idea how you named them, I cannot offer specific code to read each one.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Images 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by