@尼克斯
由于无法确定图中的第二个信号实际上是第一个信号的单独延迟版本,因此必须尝试除经典互相关之外的其他方法。这是因为如果您的信号是彼此的延迟版本,则互相关 (CC) 只是最大似然估计量。在这种情况下,它们显然不是,更不用说它们的非平稳性了。
在这种情况下,我相信可能有效的是对信号重要能量的时间估计。诚然,“显着”可以或不能有点主观,但我相信通过从统计角度查看您的信号,我们将能够量化“显着”并从那里开始。
为此,我做了以下工作:
第 1 步:计算信号包络:
这一步很简单,因为计算了每个信号的希尔伯特变换输出的绝对值。还有其他计算包络的方法,但这很简单。这种方法本质上是计算信号的分析形式,换句话说,就是相量表示。当您采用绝对值时,您正在破坏相位并且仅在能量之后。
此外,由于我们正在对您的信号能量进行时间延迟估计,因此这种方法是必要的。
第 2 步:使用保边非线性中值滤波器去噪:
这是重要的一步。这里的目标是平滑你的能量包络,但不会破坏或平滑你的边缘和快速上升时间。实际上有一个专门的领域致力于此,但为了我们的目的,我们可以简单地使用一个易于实现的非线性Medial 滤波器。(中值过滤)。这是一种强大的技术,因为与均值滤波不同,中值滤波不会消除您的边缘,但同时会“平滑”您的信号而不会显着降低重要边缘,因为任何时候都不会对您的信号执行任何算术运算(假设窗口长度是奇数)。对于我们这里的例子,我选择了一个窗口大小为 25 个样本的中间过滤器:
第 3 步:移除时间:构建高斯核密度估计函数:
如果你从侧面看上面的情节而不是正常的方式会发生什么?从数学上讲,这意味着,如果你将我们去噪信号的每个样本投影到 y 幅度轴上,你会得到什么?在这样做的过程中,可以说我们将设法消除时间,并且能够单独研究信号统计数据。
直观地从上图中弹出了什么?虽然噪音能量很低,但它的优势在于它更“流行”。相反,虽然具有能量的信号包络比噪声更有活力,但它在阈值上被分割。如果我们将“人气”视为能量的衡量标准会怎样?这就是我们将使用高斯内核实现内核密度函数(KDE)的(我的粗略)实现。
为了做到这一点,每个样本都被提取,并使用它的值作为平均值构造一个高斯函数,并先验地选择一个预设的带宽(方差)。设置高斯方差是一个重要参数,但您可以根据应用和典型信号的噪声统计数据进行设置。(我只有你的 2 个文件可以打开)。如果我们然后构造 KDE 估计,我们会得到以下图:
您可以将 KDE 视为直方图的连续形式,可以将方差视为您的 bin 宽度。然而,它具有保证平滑 PDF 的优点,然后我们可以对其执行一阶和二阶导数演算。现在我们有了高斯 KDE,我们可以看到噪声样本在哪里流行。请记住,这里的 x 轴代表我们的数据在幅度空间上的投影。因此,我们可以看到噪声在哪些阈值中最“活跃”,并告诉我们要避免哪些阈值。
在第二幅图中,取高斯KDE 的一阶导数,我们在高斯混合峰值后的一阶导数后选取第一个样本的横坐标,以达到接近零的某个值。(或第一次过零)。我们可以使用这种方法并且是“安全的”,因为我们的 KDE 是由合理带宽的平滑高斯构造的,并且采用了这种平滑且无噪声的函数的一阶导数。(通常,除了高 SNR 信号之外,一阶导数可能会出现问题,因为它们会放大噪声)。
黑线显示了我们将明智地“分割”图像的阈值,这样我们就可以避免整个底噪。如果我们然后应用到我们的原始信号,我们会得到以下图表,黑线表示我们的信号能量的开始:
因此,这产生了一个个样本。δt=241
我希望这会有所帮助。