annotate 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
rev   line source
gregoirelafay@21 1 function [] = coloredSpectrumVisualization(tracks,figNum,settingFigure,figuresOption,fileName,sr)
gregoirelafay@21 2
gregoirelafay@21 3 wStep=1024;
gregoirelafay@21 4 wSize=wStep*2;
gregoirelafay@21 5 maxFreqBin=400;
gregoirelafay@21 6
gregoirelafay@21 7 % Producing a colored spectrum visualization
gregoirelafay@21 8 for i=1:size(tracks,1)
gregoirelafay@21 9 spec = log(1+abs(spectrogram(tracks(i,:), hanning(wSize), wStep, wSize)));
gregoirelafay@21 10 spec = min(1, spec ./ max(spec(:)));
gregoirelafay@21 11 spec = spec(1:maxFreqBin,:);
gregoirelafay@21 12 spec = flipud(spec);
gregoirelafay@21 13 for colorComp=1:3
gregoirelafay@21 14 if (i==1)
gregoirelafay@21 15 img(:,:,colorComp) = settingFigure.cmap(i,colorComp)*spec;
gregoirelafay@21 16 else
gregoirelafay@21 17 img(:,:,colorComp) = img(:,:,colorComp)+settingFigure.cmap(i,colorComp)*spec;
gregoirelafay@21 18 end
gregoirelafay@21 19 end
gregoirelafay@21 20 end
gregoirelafay@21 21
gregoirelafay@21 22
gregoirelafay@21 23
gregoirelafay@21 24
gregoirelafay@21 25 img = img/max(img(:));
gregoirelafay@21 26
gregoirelafay@21 27 switch figuresOption
gregoirelafay@21 28 case 1
gregoirelafay@21 29 f=figure('Visible', 'off');
gregoirelafay@21 30 case 2
gregoirelafay@21 31 f=figure(figNum);
gregoirelafay@21 32 end
gregoirelafay@21 33
gregoirelafay@21 34
gregoirelafay@21 35 clf;
gregoirelafay@21 36 imagesc(img);
gregoirelafay@21 37 xlim([0 size(img,2)])
gregoirelafay@21 38 ylim([0 maxFreqBin])
gregoirelafay@21 39 xtick=0:round(settingFigure.sr/wStep*20):size(img,2); % every 20 sec
gregoirelafay@21 40 ytick=0:50:maxFreqBin; % every 500 Hz
gregoirelafay@21 41 set(gca,'YTick',0:50:maxFreqBin,'YTicklabel', fliplr(round(ytick*settingFigure.sr/wSize)),'xtick',xtick,'xTicklabel',round(xtick*wStep/settingFigure.sr));
gregoirelafay@21 42 xlabel('time (sec)')
gregoirelafay@21 43 ylabel('Frequency (Hz)')
gregoirelafay@21 44
gregoirelafay@21 45 set(f,'PaperUnits','centimeters')
gregoirelafay@21 46 set(f,'PaperPositionMode','manual')
gregoirelafay@21 47 set(f,'papersize',[settingFigure.width,settingFigure.height])
gregoirelafay@21 48 set(f,'paperposition',[0,0,settingFigure.width,settingFigure.height])
gregoirelafay@21 49 set(findall(f,'-property','FontSize'),'FontSize',settingFigure.FontSize)
gregoirelafay@21 50 set(findall(f,'-property','FontName'),'FontName','Arial')
gregoirelafay@21 51
gregoirelafay@21 52 print(f,fileName,'-dpng')
gregoirelafay@21 53
gregoirelafay@21 54 end
gregoirelafay@21 55