hsolpsav.m
来自「维纳K恩格尔和约翰G普罗克斯 “数字信号处理--使用MATLAB”的一书中有很多」· M 代码 · 共 43 行
M
43 行
function [y] = hsolpsav(x,h,N)% High-speed Overlap-Save method of block convolutions using FFT% --------------------------------------------------------------% [y] = hsolpsav(x,h,N)% y = output sequence% x = input sequence% h = impulse response% N = block length (must be a power of two)%N = 2^(ceil(log10(N)/log10(2));Lenx = length(x); M = length(h);M1 = M-1; L = N-M1;h = fft(h,N);%x = [zeros(1,M1), x, zeros(1,N-1)];K = floor((Lenx+M1-1)/(L)); % # of blocksY = zeros(K+1,N);for k=0:K xk = fft(x(k*L+1:k*L+N)); Y(k+1,:) = real(ifft(xk.*h));endY = Y(:,M:N)'; y = (Y(:))';
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?