MATLAB Answers

0

How for loop Store all average values in single values

Asked by SAMEER ahamed on 21 Jan 2014
Latest activity Commented on by Walter Roberson
on 22 Jan 2014
I have to store single average value from input 15 frames video file? below code i have tried but i cannot get any idea ?
if true
% code
k1_stored = zeros(1,nFrames);
for k=1:nFrames
avg= mean([X;Y]); %here x and y are array coordinates values .
k1_stored(round(avg)) = round(avg);
end
end
resultant = k1_stored(k1_stored~=0);
disp(resultant);
output: Columns 1 through 13
23 26 28 29 30 31 32 33 34 35 36 37 38
Columns 14 through 26
39 40 41 51 52 53 54 55 57 58 60 62 64
Columns 27 through 39
69 70 72 73 75 76 77 78 79 81 82 83 84
Columns 40 through 42
86 91 92

  0 Comments

Sign in to comment.

2 Answers

Answer by Image Analyst
on 21 Jan 2014
 Accepted Answer

Let's hope that is pseudocode because X and Y are not changing in your loop. So to store the mean as a function of frame number, do this in the loop
k1_stored(k) = avg; % Store average for k'th frame in k'th element of k1_stored array.

  1 Comment

when i have tried like error i got it .
if true
% code
k1_stored(k) = avg;
end
In an assignment A(I) = B, the number of elements in B and I must be the
same

Sign in to comment.


Answer by Walter Roberson
on 21 Jan 2014

k1_stored(k) = round(avg);

  6 Comments

k1_stored(k,:) = avg;
Thank's reply to me . i have tried but i got error like ? subscripted assignment dimension mismatch .so i need to store for looping all values in single variable any idea?
Okay, so for the moment use
k1_stored{k} = avg;
notice the curly bracket instead of round bracket.
After the loop you could try
cell2mat(k1_stored)
if you get an error in doing that then there was some "avg" that was not the same length as the others.

Sign in to comment.