【发布时间】:2010-11-20 08:07:04
【问题描述】:
我很抱歉提前有点冗长:如果你想跳过所有的背景胡言乱语,你可以在下面看到我的问题。
这几乎是我之前发布的关于如何比较两个 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,:) 与 X(2,:) 的匹配程度。
到目前为止,我使用过类似的东西:r1 = max(abs(xcorr(S(1,:), X(1,:)))
我的问题
假设使用互相关函数是比较两个信号相似度的有效方法,那么对信号相似度进行分级的 R 值是多少?维基百科说这是一个非常主观的领域,所以我听从那些可能在这个领域有经验的人的更好判断。
正如您可能意识到的那样,我根本不是来自 EE/DSP/统计背景(我是一名医科学生),所以我现在正在经历一种“火中的洗礼”,而且我感谢我能得到的所有帮助。谢谢!
【问题讨论】:
-
对使用“火洗礼”的赞誉
标签: algorithm matlab statistics signal-processing