Select Git revision
Transformations.py
script_wins.m 1.49 KiB
clc; clear; close all;
%%
sig_len = 16384;
fs = 8000;
signal_params = generate_signal_parameters(fs, sig_len);
settings = {struct('win_type','gauss','approx_win_len',128,'nbins',128*4,'hop',...,
128/4,'sig_len',sig_len), struct('win_type','gauss','approx_win_len',256,'nbins',256*4,'hop',...,
256/4,'sig_len',sig_len), struct('win_type','gauss','approx_win_len',512,'nbins',512*4,'hop',...,
512/4,'sig_len',sig_len),struct('win_type','hann','approx_win_len',256,'nbins',128*2,'hop',...,
128/8,'sig_len',sig_len), struct('win_type','hann','approx_win_len',512,'nbins',256*2,'hop',...,
256/8,'sig_len',sig_len), struct('win_type','hann','approx_win_len',1024,'nbins',512*2,'hop',...,
512/8,'sig_len',sig_len)};
%
%%
for k =1:length(settings)
params = settings{k};
dgt_params = generate_dgt_parameters(params.win_type, params.approx_win_len,...,
params.hop, params.nbins, sig_len);
[dgt, idgt] = get_stft_operators(dgt_params, signal_params);
m = zeros(params.nbins/2+1, sig_len/params.hop);
g = gen_gabmul_operator(dgt, idgt, m);
figure;
dynrange=30;
plot_ambiguity_function(dgt_params.win, dgt , dgt_params, signal_params, dynrange)
dx = 0.1;
switch params.win_type
case 'gauss'
xlim([1 - dx, 1 + dx])
case 'hann'
xlim([0.1 - dx, 0.1 + dx])
end
ylim([0, 100])
title([params.win_type, params.approx_win_len, num2str(std(dgt_params.win)) {} {}'])
end