如何在matlab中测量两个二维复杂场之间的相似度?

时间:2017-08-31 18:04:26

标签: matlab image-processing statistics

我有一个矩阵运算Y=B*A*X;;其中A=exp(1i.*pi*rand(50,50)); B=transpose(A);

X是随机输入

X=exp(1i.*pi*rand(50,50));

所以我有Y计算。

现在我发现另一个Y说Y1代表另一个X1=exp(1i.*pi*rand(50,50)); Y和Y1是复数输出。如何衡量这些文件之间的相似性?

有人可以帮忙。我试过了

rsme=sqrt(mean(abs(Y1(:))-abs(Y(:)).^2);但我想这是一个错误的措施?

1 个答案:

答案 0 :(得分:0)

均方误差(MSE)是一种常见的相似性估计技术:

MSE=mean((abs(Y(:))-abs(Y1(:))).^2)

在matlab中有一个名为immse的构建函数可以得到相同的结果:

MSE=immse(Y,Y1)

结构相似性指数(SSIM)也是一种可用的技术:

ssimval = ssim(Y,Y1)

其中Y1是参考图像。