matlab norm函数_matlab | 判断两个向量或者信号的相似性方法

1970e5685082ef7818b42f27084f5bdc.gif点击上方蓝字,记得关注我!

借用知乎上某大佬[yetwanng]的一句话:paper又发不了,就是写这种东西,才能维持的了生活这样子。

今天我们来讲讲如何计算两个向量或者两个信号的相似性算例


1.数学基础知识部分:

设有两个向量:

911d692562f880a359e0ea46ce27098c.png

9a3d70a1be45c050323f45f01ee9e456.png

则用于度量两个向量的相似性可参考如下方法:

(1)Euclidean Distance

欧几里德距离、欧氏距离:值越小越相似。

9606e8d10196032f0d19a611df0097ce.png

(2)Manhattan Distance

曼哈顿距离:值越小越相似。

c8ecd7fbc7b231ff70fc52021c7c1758.png

(3)Pearson Correlation Coefficient

皮尔森相关系数:值越大越相关。

f6c51c90dcf13429ef0b87ff0c359205.png

(4)Cosine Similarity

余弦相似度:值越大越相似。

c81c7d7f254fa33eac5e854a07231435.png


2. matlab函数基础部分

a=[2 0 0];

b=dot(a,a); % 向量的内积

c=sqrt(b); % 间接求向量的模

d=norm(a); % MATLAB提供的函数直接求向量a的模 

i=-1;abs(i); %求i的绝对值


3. 案例计算

(1)技术路线

在做实验过程中不可避免的因为噪声影响而导致测量的数据与理想状态差别较大。噪声即是不可避免的,我们能做的就是在试验后如何选用合适的降噪方法对其进行降噪。

具体思路:使用了comsol多物理仿真软件模拟注水试验或抽水试验,将其水头数据作为标准信号,然后对此信号添加噪声,再进行降噪,最后求标准信号与降噪信号的相关性。


(2)Matlab参考代码

%%

%如何判断两个向量的相似性

clc;

clear;

format long g

%读取数据

%使用时只需要将path后面的字符串改成数据文件所在的文件夹路径即可

path='我是一个文件夹路径';

data=xlsread([path '水头.xlsx']);

for i=1:3

s_standard=data(:,i+1);

%添加均值为0,方差为0.3的高斯白噪声

WhiteNoise=sqrt(0.3).*randn(length(s_standard),1);

s_addN=s_standard+WhiteNoise;

s=wden(s_addN,'minimaxi','s','one',5,'sym8');

%绘图

figure(i)

subplot(1,3,1)

plot(s_standard);

title('原始光滑曲线');

subplot(1,3,2)

plot(s_addN);

title('加噪后的曲线');

subplot(1,3,3)

plot(s);

title('降噪后的曲线');

%(1)Euclidean Distance(欧几里德距离、欧氏距离)

d1(i)=sqrt(sum((s_standard-s).^2));

%(2)Manhattan Distance(曼哈顿距离)

d2(i)=sum(abs(s_standard-s));

%(3)Pearson Correlation Coefficient(皮尔森相关系数)

r(i)=corr(s_standard,s,'type','Pearson');

%(4)Cosine Similarity(余弦相似度):值越大越相似。

S(i)=dot(s_standard,s)/(norm(s_standard)*norm(s));

end

disp '相应的计算结果如下:'

[d1;d2;r;S]

%%


4.计算结果

本次计算是用了三组水头数据分别进行了加噪、降噪、求相关系数,因此结果第1~4行分别对应不同的相关系数,第1~3行分别对应1~3组水头数据。

3c17ab1060530aa215c73d83da9d271d.png


5.绘图结果

data1:

a0ddc7dbfa59df69f6abdcca76f78f3f.png

data2:

5e37cbae00eb879e3f8c9853f41a9f06.png

data3:

12fb442e4fff8f39f87b12b53e10fbe1.png

从上图看,降噪方法有待进一步研究,但是基本趋势和原始曲线基本一样,而且从广泛认可的皮尔森相关系数上看,相关性在99.9%以上,还是可以的。


好啦,以上就是本期全部内容。想要代码'*.m'文件以及水头数据练习的可以公众号后台回复[相关性系数计算]即可自动获取。


  写的这么认真,都不关注一下吗  

76b2f73655ddfb1646ca575b23c1dba0.png

信号处理过程中,对两个信号相似性的度量可以用相似性来表示。信号与自身的相关性称为自相关,两种信号的相关称为互相关。基于信号的相关性可以从未知信号中检测出目标信号。因此对信号相关性的研究具有重要意义。 相关函数中峰值的滞后指数表示信号最相似的时间移动。因此,可以使用相关性来检测某个信号c否包含在另一个信号中, 如果是的话,则两个信号的互相关有一个很高的峰值.如果没有一个相对较高的峰值,则这些信号实际上没有任何时间延迟。例如,有一段几个人的声音的混合音频,用单个人的音频波形与混合波形进行互相关运算。 利用互相关可以探测出附近的目标,并且可以估算出目标的距离。将一已知信号作为雷达信号,如果雷达信号遇到目标,则会有信号反射回信号接收设备。但是,接收到的返回信号可能会与雷达信号不同(如信号含有延时、噪声等)例如,返回信号(Received Signal)包含雷达信号(Transmitted Signal)和其他信号(Other Signal 1、 Other Signal 2)。 在观测场景r(x,y)=s(x,y) + n(x,y)中已知的目标图像s(x,y),其中n(x,y)表示噪声信号,与处理声音信号类似,通过求r(x,y)与已知目标图像s(x,y)互相关函数c(x,y)。然后,找到相关输出的一个峰值,如果这个峰值是超过一定的阈值,则可以认为该场景包含的目标是集中在峰值的位置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值