【发布时间】:2021-12-21 08:21:54
【问题描述】:
我有以下降噪代码:
[z,fs] = audioread('noisy_voices.wav'); % Use >>soundsc(z, fs) to hear the unprocessed signal
zproc_vec=zeros(1,length(z));
tail = zeros(1,256);
for k = 0:128:length(z)-256
Z = fft(z(k +1:k + 256).* hann(256));
[zmax, zl] = max(abs(Z(1:128)));
Z(zl-3: zl +3)=0;
Z(256-(zl-3:zl +3)+2)=0;
zproc = ifft(Z);
zproc = zproc+tail;
tail(1:128) = zproc(129:256);
zproc_vec(k+1:k+256)=zproc;
end
soundsc(zproc_vec , fs)
谁能告诉我为什么会出现这个错误?
由于左右两边的元素数量不同,无法进行赋值
task_one 中的错误(第 12 行) zproc_vec(k+1:k+256)=zproc;
【问题讨论】:
-
这是基本的调试,这是你的工作。检查赋值表达式右侧的大小,看看是否能找到差异。