www.pudn.com > zxb.rar > get_data.m


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Copyright (c) by JV Stone, University of Sheffield. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% function [sources,mixtures,A]=get_data(num_ip_vecs); % Get sources and mixtures.  % Matlab5:Toolbox:matlab:datafun: % Jim_Stones_G3a:APPS:Matlab5:Toolbox:matlab:datafun:  global demo_id;  num_sources		= 3; num_mixtures	= num_sources; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% sources=zeros(num_sources,num_ip_vecs);  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% if demo_id==1 	% The files handel chirp and gong are standard matlab sound files that come with matlab. 	fprintf('Playing original sources signals ...\n'); 	load handel; 	sources(1,:)=y(1:num_ip_vecs)'; soundsc(sources(1,:)); pause(1); 	load chirp;		sources(2,:)=y(1:num_ip_vecs)'; soundsc(sources(2,:)); pause(1); 	load gong;		sources(3,:)=y(1:num_ip_vecs)'; soundsc(sources(3,:)); end; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% if demo_id==2 % SUB-GAUSSIAN == SINE periods=30;x=1:num_ip_vecs ; x=x/num_ip_vecs *2*pi*periods; s=sin(x); sources(2,:)=s;  % SUPER-GAUSSIAN == a sound [y,rate,bits]=wavread('why.wav'); y=y(1:num_ip_vecs)'; sources(1,:)=y;  % GAUSSIAN == GAUSS s=randn(1,num_ip_vecs);s=sort(s); sources(3,:)=s; end; % demo1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  % Set each source to have zero-mean and unit variance. ss=sources; for i=1:num_sources 	s=ss(i,:); 	s=s-mean(s); 	s=s/std(s,1); 	ss(i,:)=s; end; sources=ss;  for i=1:num_sources 	% soundsc(sources(i,:)); 	subplot(num_sources,1,i); 	plot(sources(i,:)); end;  sources=sources'; % Make mixing matrix A. A = randn(num_mixtures,num_sources); mixtures=sources*A; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%