Mercurial > hg > simscene-py
diff nonExposed/coloredSpectrumVisualization.m @ 21:e26be576f241
add figure functions and beta version of getClassInfo
author | gregoire lafay <gregoirelafay@sfr.fr> |
---|---|
date | Thu, 14 Jan 2016 06:54:31 +0100 |
parents | |
children | 39399de892ef |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/nonExposed/coloredSpectrumVisualization.m Thu Jan 14 06:54:31 2016 +0100 @@ -0,0 +1,55 @@ +function [] = coloredSpectrumVisualization(tracks,figNum,settingFigure,figuresOption,fileName,sr) + +wStep=1024; +wSize=wStep*2; +maxFreqBin=400; + +% Producing a colored spectrum visualization +for i=1:size(tracks,1) + spec = log(1+abs(spectrogram(tracks(i,:), hanning(wSize), wStep, wSize))); + spec = min(1, spec ./ max(spec(:))); + spec = spec(1:maxFreqBin,:); + spec = flipud(spec); + for colorComp=1:3 + if (i==1) + img(:,:,colorComp) = settingFigure.cmap(i,colorComp)*spec; + else + img(:,:,colorComp) = img(:,:,colorComp)+settingFigure.cmap(i,colorComp)*spec; + end + end +end + + + + +img = img/max(img(:)); + +switch figuresOption + case 1 + f=figure('Visible', 'off'); + case 2 + f=figure(figNum); +end + + +clf; +imagesc(img); +xlim([0 size(img,2)]) +ylim([0 maxFreqBin]) +xtick=0:round(settingFigure.sr/wStep*20):size(img,2); % every 20 sec +ytick=0:50:maxFreqBin; % every 500 Hz +set(gca,'YTick',0:50:maxFreqBin,'YTicklabel', fliplr(round(ytick*settingFigure.sr/wSize)),'xtick',xtick,'xTicklabel',round(xtick*wStep/settingFigure.sr)); +xlabel('time (sec)') +ylabel('Frequency (Hz)') + +set(f,'PaperUnits','centimeters') +set(f,'PaperPositionMode','manual') +set(f,'papersize',[settingFigure.width,settingFigure.height]) +set(f,'paperposition',[0,0,settingFigure.width,settingFigure.height]) +set(findall(f,'-property','FontSize'),'FontSize',settingFigure.FontSize) +set(findall(f,'-property','FontName'),'FontName','Arial') + +print(f,fileName,'-dpng') + +end +