Online calculation of highpass filter [y,z] = vb_online_highpass(a,x,z) --- Input a : Coefficient of highpass filter [1 x Nbank] x : Input signal [D x 1] z : Lowpass internal state variable [D x Nbank] --- Output y : highpass signal [D x Nbank] z : Updated lowpass internal variable [D x Nbank] 2007-9-21 Masa-aki Sato Copyright (C) 2011, ATR All Rights Reserved. License : New BSD License(see VBMEG_LICENSE.txt)
0001 function [y,z] = vb_online_highpass(a,x,z) 0002 % Online calculation of highpass filter 0003 % [y,z] = vb_online_highpass(a,x,z) 0004 % --- Input 0005 % a : Coefficient of highpass filter [1 x Nbank] 0006 % x : Input signal [D x 1] 0007 % z : Lowpass internal state variable [D x Nbank] 0008 % --- Output 0009 % y : highpass signal [D x Nbank] 0010 % z : Updated lowpass internal variable [D x Nbank] 0011 % 0012 % 2007-9-21 Masa-aki Sato 0013 % 0014 % Copyright (C) 2011, ATR All Rights Reserved. 0015 % License : New BSD License(see VBMEG_LICENSE.txt) 0016 0017 z = a .* z + x * (1 - a(1,:)); 0018 y = repmat(x ,[1 size(z,2)])- z;