我很抱歉提前有点冗长:如果你想跳过所有的背景胡言乱语,你可以在下面看到我的问题。
这几乎是我之前发布的关于如何比较两个 1D(时间相关)信号的问题的后续。我得到的答案之一是我使用了互相关函数(MATLAB 中的 xcorr)。
背景资料
也许一些背景信息会很有用:我正在尝试实现独立分量分析算法。我的非正式测试之一是 (1) 通过 (a) 生成 2 个随机向量 (1x1000),(b) 将向量组合成 2x1000 矩阵(称为“S”),然后将其乘以 2x2 混合来创建测试用例矩阵(称为“A”),给我一个新的矩阵(我们称之为“T”)。
总之:T = A * S
(2)然后我运行 ICA 算法来生成混合矩阵的逆(称为“W”),(3)将“T”乘以“W”来(希望)给我一个原始信号矩阵的重建(称为“X”)
总而言之:X = W * T
(4) 我现在想比较“S”和“X”。虽然“S”和“X”是 2x1000,但我只是比较S(1,:)
和X(1,:)
,S(2,:)
每个X(2,:)
都是 1x1000,使它们成为一维信号。(我还有一个步骤来确保这些向量是相互比较的正确向量,并且我还对信号进行了归一化)。
所以我目前的困惑是如何“评分”与 的S(1,:)
匹配程度X(1,:)
,以及与S(2,:)
to的匹配程度X(2,:)
。
到目前为止,我使用过类似的东西:r1 = max(abs(xcorr(S(1,:), X(1,:)))
我的问题
假设使用互相关函数是比较两个信号相似度的有效方法,那么对信号相似度进行分级的 R 值是多少?维基百科指出这是一个非常主观的领域,所以我听从那些可能在这个领域有经验的人的更好判断。
正如您可能意识到的那样,我根本不是来自 EE/DSP/统计背景(我是一名医学生),所以我现在正在经历一种“火中的洗礼”,我很感激所有我能得到的帮助。谢谢!