Skip to content
Snippets Groups Projects
Select Git revision
  • 889144088a7468e9dbac9740ac0dd35e77a17e39
  • master default protected
  • develop
  • 0.1.0
  • 0.0.3
  • 0.0.2
  • 0.0.1
  • 0.0.0
8 results

MANIFEST.in

Blame
  • get_all_mixtures.m 2.66 KiB
    
    clc; clear; close all;
    %%
    % Generate all combination between wide-band and localized signals
    
    %%
    make_wav_pairs()
    %%
    
    pwd;
    pathname ='spectro_all_mixtures';
    if ~exist('spectro_all_mixtures','dir')
        mkdir('spectro_all_mixtures');
    end
    addpath('spectro_all_mixtures')
    
    %%
    data = load('signal_lists.mat');
    %%
    resampling_fs = 8000;
    sig_len =16384;
    signal_params = generate_signal_parameters(resampling_fs, sig_len);
    
    %% DGT parameters
    approx_win_len = 512;
    win_len = approx_win_len;
    win_type='hann';
    params = get_params(win_len, win_type);
    
    dgt_params = generate_dgt_parameters(win_type, approx_win_len, params.hop, params.nbins, sig_len);
    
    %% DGT operators
    
    [dgt, idgt] = get_stft_operators(dgt_params, signal_params);
    
    
    %% All mix
    close all
    target_name ={'car','plane','train'};
    per_name = {'beeps','bird','clicks','pop'};
    
    gamma=0.7;
    deb=0;
    close all;
    
    for k=1:length(data.wide_band_sources_files)
        sig_wd = load_wideband_signal(k, resampling_fs,  sig_len);
        
        for l=1:length(data.localized_sources_files)
            %%
            
            %figure;
            sig_loc = load_localized_signal(l, resampling_fs,  sig_len,deb);
            signals = generate_mix_signal(sig_wd, sig_loc, gamma);
            
            tf_mat_target = compute_dgt(signals.wideband, dgt );
            tf_mat_per = compute_dgt(signals.localized, dgt );
            tf_mat_mix = compute_dgt(signals.mix, dgt );
            
            [alpha, seuil, radius] = set_smooth_mask_params(target_name{k}, per_name{l}, win_type);
            
            sdr_mix = sdr(signals.wideband, signals.mix);
            
            [original_mask, mask_after_imclose, mask_after_imopen,...,
                mask] = generate_mask(tf_mat_target, tf_mat_per, alpha, seuil, radius);
            
            
            subplot(221);
            plot_spectrogram(tf_mat_target, dgt_params, signal_params, dgt )
            title(target_name{k})
            
            subplot(222);
            plot_spectrogram(tf_mat_per, dgt_params, signal_params, dgt )
            title(per_name(l));
            
            subplot(223);
            plot_spectrogram(tf_mat_mix, dgt_params, signal_params, dgt )
            title(['Mix SDR= ',num2str(sdr_mix),'dB']);
            
            subplot(224);
            plot_spectrogram(mask, dgt_params, signal_params, dgt )
            title(['mask - ', num2str(win_type)]);
            
            saveas(gcf,fullfile(pathname, [target_name{k},'_' num2str(l), '_',num2str(win_type) '.png']));
            %           figure;
            %     plot_spectrogram((1-mask).*tf_mat_per, dgt_params, signal_params, dgt );
            %     title(['masked spectro - ', target_name{k}, per_name(l)])
            %saveas(gcf,fullfile(pathname, ['masked_spectro_', target_name{k},'_' num2str(l), '_',num2str(win_type) '.png']));
            
        end
        
        
        
    end