tfridge
时频脊
语法
描述
例子
输入参数
输出参数
算法
函数使用一个惩罚forward-backward贪婪算法来提取时频矩阵的最大能量的山脊。该算法找到最大的时频脊通过最小化ln一个在每个时间点一个矩阵的绝对值。最小化ln一个相当于最大化的价值一个。算法选择约束跳跃的频率与一个点球,频率箱之间的距离成正比。
下面的例子说明了时频脊算法使用一个点球两倍频率箱之间的距离。具体来说,元素之间的距离(j, k)
和(m, n)
被定义为(j-m)2
。时频矩阵有三个频率垃圾箱和三个步骤。矩阵列对应的时间步骤,矩阵的行对应于频率垃圾箱。第二行中的值表示一个正弦波。
假设你有矩阵:
1 4 4 2 2 2 5 5 4
更新的值(1、2)元素,如下所示。
离开在第一个时间点的值没有改变。开始的算法(1、2)矩阵的元素,这礼物第一频率本在第二个时间点。本值是4。惩罚第一列中的值基于他们的距离(1、2)元素。应用第一列产生的罚款
原始值+点球1 + 2××距离0 = 1 2 + 2×1 = 4 5 + 2×4 = 13
1 4 4 2 13 5
列1中的最小值添加到当前本价值,4。更新后的值(1、2)成为5,来自本1。
更新剩余的元素的值在第2列如下。
验算原第1列值和惩罚因子在步骤2中使用相同的过程。获得其余的第二列值在步骤2中使用相同的过程。例如,当更新(2,2)元素,本值2,应用惩罚列产量
原始值+点球1 + 2××距离1 = 3 + 2×2 0 = 2 5 + 2×1 = 7
1 - 5(1)4 2 4(2)2 5 9(2)4
重复步骤2,第三列。但是现在处罚适用于更新后的第二列。例如,当更新(1、3)元素,处罚
5 + 2×4 0 = 5 + 2×1 = 6 9 + 2×4 = 17
1 - 5(1)9(1)2 4(2)6(2)5个9(2)10(2)
从最后一列的矩阵,找到最小值。走在时间通过矩阵从当前本的起源,本在之前的时间点。本指标的跟踪,路径组合脊的形式。算法平滑过渡利用原点本而不是本的最小值。对于这个示例,脊指数
2
,2
,2
能源路径匹配的正弦波的第2行矩阵的步骤1所示。
如果你提取多个脊,算法从时频矩阵中删除第一个山脊,重复该过程。