How To Calculate Double Summation In Matlb

5 visualizzazioni (ultimi 30 giorni)
Hi,
Can anyone help me in performing double summation of matrix elements using Matlab of the following equation:
Xc=[Sum(i=1 to 10)Sum(j=1 to 10){I(i,j)-I(m)}*H(i,j)*x]/[Sum(i=1 to 10)Sum(j=1 to 10){I(i,j)-I(m)}*H(i,j)]
Yc=[Sum(i=1 to 10)Sum(j=1 to 10){I(i,j)-I(m)}*H(i,j)*y]/[Sum(i=1 to 10)Sum(j=1 to 10){I(i,j)-I(m)}*H(i,j)].
Where: Sum represents summation,
I(i,j): Consider a 10x10 random matrix,
I(m): Middle element of the matrix I(i,j),
x & y: Co-ordinate of the matrix I(i,j),
H(i,j): H(i,j)=1; if I(i,j)>=I(m) 0; if I(i,j)<I(m).
Thanking You!

Risposta accettata

Dishant Arora
Dishant Arora il 31 Ago 2012
Modificato: Dishant Arora il 3 Set 2012
first thing is, how would you define a middle element in a 10*10 array.
Sum(i=1 to 10)Sum(j=1 to 10){I(i,j)-I(m)}*H(i,j)}
Btw, look at the above statement carefully, what you are doing is nothing but multiplying corresponding elements of 2 matrices and then summing up all the elements.you can accomplish this by:
mat=(I-I(m)).*H.*x;
summation=sum(mat(:));
  2 Commenti
Dishant Arora
Dishant Arora il 3 Set 2012
H=zeros(size(I));
H(I>=I(m))=1;
gives you H, you need not to use if else statement. it's a powerful feature of matlab called logical indexing. http://blogs.mathworks.com/steve/2008/01/28/logical-indexing/ check out this blog.
Image Analyst
Image Analyst il 3 Set 2012
Yeah, that's what I asked him in his duplicate: http://www.mathworks.com/matlabcentral/answers/47267-how-to-execute-if-else-statement What does middle element mean?

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by