Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function [b_time, b_freq] = blurring_function(M_t, M_f, hop, N, win_t, win_f)
- %
- % M_f: long window size
- % M_t: short window size
- % hop: hop size
- % N : fftsize
- % win_t : short window
- % win_f : long window
- win_t = [win_t; zeros(M_f-M_t,1)];
- % time-domain blurring function
- R_t = (M_f-M_t)/hop + 1;
- big_win_t = zeros(M_f,R_t);
- for i=1:R_t
- big_win_t(:,i)= circshift(win_t,hop*(i-1));
- end
- b_time = big_win_t\win_f;
- %b_time = b_time/sum(b_time);
- % frequency-domain blurring function
- R_f = ceil(N/M_t*8 + 1);
- if ( mod(R_f,2) == 0 )
- R_f = R_f + 1;
- end
- zpf = 1;
- win_t_fft = fftshift(abs(fft(win_t,N*zpf)));
- win_f_fft = fftshift(abs(fft(win_f,N*zpf)));
- big_win_f_fft = zeros(N*zpf,R_f);
- for i=1:R_f
- big_win_f_fft(:,i)= circshift(win_f_fft,(-(R_f-1)/2-1+i)*zpf);
- end
- b_freq = big_win_f_fft\win_t_fft;
- %b_freq = b_freq/sum(b_freq);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement