Matlab信号实现

时间:2017-03-10 22:26:45

标签: matlab signals signal-processing

我正在尝试在MATLAB中实现以下系统。 我正在读取音频信号,想要执行下面的操作。

enter image description here

到目前为止,我已经完成了以下工作:

%read the audio file
[y,Fs] = audioread('input_original.wav');

syms k x
yx = symsum(k, k, -inf, y);

%write the output
audiowrite('signal_divbb.wav',yx,Fs,'BitsPerSample',64)

有没有办法正确实现这个信号?我不熟悉MATLAB

1 个答案:

答案 0 :(得分:4)

audioread(您的y变量)的输出有mn列,其中m是信号长度,n是通道数(2为立体声)。您可以按如下方式使用cumsum

yx = cumsum(y, 1);

这计算沿第一维度(即时间)的累积和。因此yx(k,c)等于y(1,c)+y(2,c)+...+y(k,c),其中k的范围从1m,而c是来自1的渠道索引到n