减法传感器之间具有互感的输出


12

背景:我用来分析信号的软件是matlab。我有两个使用两个磁传感器记录的音频信号。让我们将一个传感器称为A,将另一个称为B。A和B在它们之间具有互感。

当传感器A和B工作时,我想减去由于传感器B的互感而在传感器A中收到的信息。

我试图通过简单地写入matlab(AB)从信号A中减去信号B,但这给了我一个奇怪的答案。我认为这源于我同阶段的转变。这两个音轨的开始录制时间是相同的,因此我认为这不是时间延迟。

我想知道理论上如何进行这种减法过程,如果有人想知道如何在matlab中轻松实现它的技巧,我想知道。

我将非常感谢您的帮助。

提前致谢。

下面我附上信号图的图片。在第一张图片中,您可以看到从传感器A和B接收到的信号。在第二张图片中,我将传感器A绘制为红色,将传感器B绘制为蓝色,范围为2.12:2.16,并且放大了更多。

在此处输入图片说明

在此处输入图片说明


因此,从您的曲线图中可以看出,从源1到源2的串扰并不多,只有从2到1的串扰。那么,您在图像上的覆盖图是否正确(“必须从源2减去”)?似乎您正在尝试从1中删除源2,对不对?
詹森·R


为了确认相移的想法,将两个波形都绘制得很近,只包括从指标2.3到2.4或类似的东西,因此您可以在两个通道中看到单个波
endolith,2011年

Answers:


4

这看起来像是直接的串扰问题。您不能简单地直接减去信号,因为每个频率(在幅度和相位方面)的磁耦合都不相同。

假设您有两个音频信号xa(t)和xb(t),以及两个传感器信号ya(t)和yb(t)。由于传感器之间存在耦合,您会产生串扰,我们可以在频域中进行写

Ya(w) = Haa(w)*xa(w) + Hba(w)*xb(w)
Yb(w) = Hab(w)*xa(w) + Hbb(w)*xb(w)

其中Hxy(w)是从信号“ x”到传感器信号“ y”的传递函数。4个传递函数形成一个2x2矩阵,为了完全恢复原始信号,您需要对矩阵求逆,并将求反的矩阵传递函数应用于接收到的传感器信号。

由于串扰很小,因此您可以直接测量传递函数Hba(w)并将其减去,方法如下:当信号B为0时,测量从信号A到传感器B的传递函数。从该传递函数创建一个滤波器( FIR或IIR,具体取决于其形状)。现在,您可以从传感器信号B中测量并从传感器信号A中减去滤波后的版本:

yb(t)' = yb(t)-hab(t)**ya(t)

其中hab(t)是您的串扰滤波器和**卷积运算符的脉冲响应。

串扰滤波器将幅度和相移表示为特定传感器耦合频率的函数,并且可以确保减去正确的信号。


希尔玛,我是Matlab的新手,在尝试实施您的答案时遇到了一些困难。我将非常感谢大家的协助。我做的第一件事是在传感器B为0时记录信号A。现在,当调用函数“过滤器”时我应该在过滤器中插入哪些参数?如果您需要可视化信号,可以在上面的问题中看到它。再次感谢。
user1017064 2011年

5

这听起来像盲目分离源。通常,您无法在混合后取消混合。如果您有两个源的两个不同的记录,而每个记录中都有每个源,则有时可以使用独立的成分分析将它们分开。

这里一个Python示例。还有用于MATLABFastICA。如果它们是音频信号,被磁性地拾取,则它们之间可能没有明显的延迟。ICA在这种情况下效果很好。


用于Matlab的FastICA并不能帮助我在两个信号之间求和。结果只是不够好。在上面的评论中,我在照片上附加了一个链接,该链接可以解释我所面临的情况:bit.ly/rXmVgH。顺便说一句,非常感谢您的帮助。
user1017064 2011年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.