试图找到噪声信号的半高全宽

时间:2017-02-20 16:00:42

标签: matlab signals

我目前正在寻找信号的FWHM。 信号的峰值约为1.0,但最低值仅为0.6左右。 所以,事实上,我没有最大值的一半。

我怎样才能以类似的方式分析曲线?

以下是曲线图片:

curve

1 个答案:

答案 0 :(得分:1)

假设信号y的最小值和最大值分别为0.6和1,你可以找到FWHM:

idx1idx2每个返回所需点之前和之后两点的索引。我们可以使用这些点在x的一半处插入y的值。

%height at half
h=(0.6+1)/2;
idx1=find(y>h,1) +[-1 0];
idx2=find(y>h,1,'last') +[0 1];
x1 = interp1(y(idx1),x(idx1),h);
x2 = interp1(y(idx2),x(idx2),h);
w = x2 - x1;

FWHM