Help me with for loop

1 view (last 30 days)
Mohammad Alwardat
Mohammad Alwardat on 6 May 2020
Hi, I have a matrix A with size 32*32 and I need to study the similarity between all pixels.
The similairty between a pixel Xi and another pixel Xj in the neighbourhood of Xi is detemine by an exponantially decaying fuction of the squared difference in thier intensity values:
Sij = exp (-a (I(Xi) - I(Xj))^2);
% where a is a scale (a = 30) and I(x) is denotes the intensity of pixel x .
I need to study the similarity between pixel in location (1,1) with the ather pixels and recored the values of simialrity in matrix A1, so matrix A1 will has a size 32*32.
the value of A1(1,1) is the similarity between pixel A(1,1) with pixel A(1,1) ,
the value of A1(1,2) is the similarity bwtween pixel A(1,1) with pixel A(1,2) ,
and so on.
Thanks ♥

Accepted Answer

David Hill
David Hill on 6 May 2020
a=.1;
B=exp(-a*(A-A(1,1)).^2);%comparing all pixels to A(1,1)
  4 Comments
David Hill
David Hill on 6 May 2020
Not sure what you mean. In the above example, B is a 32x32 matrix that compares all pixels to A(1,1).
Mohammad Alwardat
Mohammad Alwardat on 6 May 2020
We compared pixel A(1,1) with all pixels and recoreded the result in B matrix.
Now, I need to compare pixels A(1,2) with all pixels and recored the result in matrix B1
and compare pixels A(1,3) with all pixels and recored the result in matrix B2
.
.
and up to compare pixels A(32,32) with all pixels and recored the result in matrix B1023
so, I will get 32*32 = 1024 similarity matrix.
did you understand what I mean?

Sign in to comment.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!