From 34e32050b9cc9cd0c587b6888ccc3694746b25e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20BUSSIERE?= Date: Sun, 19 Feb 2023 22:43:35 +0100 Subject: [PATCH] Ajouter 'octave/demosig.m' --- octave/demosig.m | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 octave/demosig.m diff --git a/octave/demosig.m b/octave/demosig.m new file mode 100644 index 0000000..29416ac --- /dev/null +++ b/octave/demosig.m @@ -0,0 +1,32 @@ +function [sig,mixedsig]=demosig(); +% +% function [sig,mixedsig]=demosig(); +% +% Returns artificially generated test signals, sig, and mixed +% signals, mixedsig. Signals are row vectors of +% matrices. Input mixedsig to FastICA to see how it works. + +% 2 Apr 1998 Aapo Hyvärinen + +%create source signals (independent components) +N=500; %data size + +v=[0:N-1]; +sig=[]; +sig(1,:)=sin(v/2); %sinusoid +sig(2,:)=((rem(v,23)-11)/9).^5; %funny curve +sig(3,:)=((rem(v,27)-13)/9); %saw-tooth +sig(4,:)=((rand(1,N)<.5)*2-1).*log(rand(1,N)); %impulsive noise + +for t=1:4 +sig(t,:)=sig(t,:)/std(sig(t,:)); +end + +%remove mean (not really necessary) + +[sig mean]=remmean(sig); + +%create mixtures + +Aorig=rand(size(sig,1)); +mixedsig=(Aorig*sig);