How To Calculate Double Summation In Matlb
조회 수: 8 (최근 30일)
이전 댓글 표시
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!
댓글 수: 0
채택된 답변
Dishant Arora
2012년 8월 31일
편집: Dishant Arora
2012년 9월 3일
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
Dishant Arora
2012년 9월 3일
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
2012년 9월 3일
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?
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!