Ejemplo n.º 1
0
        colors = ['red', 'steelblue', 'orange', 'green', 'brown']

        plt.figure()

        for ii, (model, name) in enumerate(zip(models, names), 1):
            plt.subplot(2, 1, ii)
            plt.title(name)
            for sig, color in zip(model.T, colors):
                plt.plot(sig, color=color)

        plt.subplots_adjust(0.09, 0.04, 0.94, 0.94, 0.26, 0.46)
        plt.show()


if __name__ == '__main__':
    audios = ['mic1.wav', 'mic2.wav', 'mic3.wav', 'mic4.wav', 'mic5.wav']
    s_hat = ['shat1.wav', 'shat2.wav', 'shat3.wav', 'shat4.wav', 'shat5.wav']
    recon = [
        'recon1.wav', 'recon2.wav', 'recon3.wav', 'recon4.wav', 'recon5.wav'
    ]

    processor = Processor(audios)
    processor.generate_wav_data()

    # Options: 1: default, 2: whitening off, 3: exp function, 4: cube function, 5: centering
    option = 1
    ica_ = ICA(processor.mixed_signal, 5)
    recon_matrix, mixing_matrix, remixed = ica_.train(option, processor.rates)
    ica_.create_audio(recon_matrix, s_hat, remixed, recon, processor.rates)
    ica_.plot_audio(processor.mixed_signal, recon_matrix)