how to measure he similarity between two 2D complex fields?

3 次查看(过去 30 天)
I have a matrix operation Y=B*A*X; ; where A=exp(1i.*pi*rand(50,50)); B=transpose(A);
X is the input which is random
X=exp(1i.*pi*rand(50,50));
so I have Y calculated.
Now I find another Y say Y1 for another X1=exp(1i.*pi*rand(50,50)); Y and Y1 are complex outputs. How can I measure the similarity between these fileds ?
Can someone please help. I have tried
rsme=sqrt(mean(abs(Y1(:))-abs(Y(:)).^2); But I guess it is a wrong measure ?
  1 个评论
Rik
Rik 2017-9-1
Does that code error? If so, copy the error, if not, you should explain what you mean with similarity. Similarity can mean many things, and guessing what your field's definition is, is wasting time.
Have a read here and here. It will greatly improve your chances of getting an answer.

请先登录,再进行评论。

回答(1 个)

David Goodmanson
David Goodmanson 2017-9-1
编辑:David Goodmanson 2017-9-1
Hi sanjeev,
The rms difference is a reasonable measure, but it's not quite what you have. Rms is
sqrt(mean(abs((Y1(:)-Y(:)).^2))) % or
sqrt(mean(abs( Y1(:)-Y(:)).^2))
You are taking absolute value first, so the difference between, say, 1/2 and -1/2 comes out to be zero.
  1 个评论
Rik
Rik 2017-9-1
The RMSe is also used, mostly in the context of comparing an estimation with the ground truth. Then it stands for the root-mean-square of the error.

请先登录,再进行评论。

Community Treasure Hunt

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

Start Hunting!

Translated by