【发布时间】:2018-07-12 15:09:39
【问题描述】:
我有一个波束成形算法,我使用 matlab 来模拟数据,这样我就可以估算出输出信号与干扰加成的比率-噪声比 (SINR) 与 输入 SINR (Like Matlab Does)。
agCbf = pow2db(mean((voice_cleanspeech+voice_laugh).^2+noisePwr)/...
mean((cbfOut - voice_dft).^2))
我的问题来了。如果我将输出信号相乘到某个大数字,例如 1000(或者只是我的算法引入的一些更改),那么估计的比率是不正确的(因为 cbfOut 要更大强> 比voice_dft)。我想知道是否有任何方法可以将输出信号标准化为与输入信号相同的电平。
我在matlab中看到过mapminmax,这个函数可以将它们都归一化为[-1 1],很好但是结果是不是零均值。
【问题讨论】:
-
先从信号中减去均值,然后除以
max([max(signal), -min(signal)])?这样做将保证结果具有0的mean并且严格在[-1 1]范围内 -
@Patrick Roberts 你的意思是我在 mapminmax 之后这样做?或者我只需要在没有 mapminmax 的情况下这样做
-
我的意思是没有
mapminmax。所做的只是将范围限制为[-1 1],而不考虑mean。 -
谢谢,这行得通。
标签: matlab signal-processing normalization