Mercurial > hg > audiodb
changeset 291:63ae0dfc1767
Adding to tests/pointset_test OCTAVE function to plot LSH retrieval characteristic from test output
author | mas01mc |
---|---|
date | Tue, 22 Jul 2008 20:09:31 +0000 |
parents | 40dca0cbbffd |
children | d9a88cfd4ab6 |
files | tests/pointset_test/plotLSHresults.m |
diffstat | 1 files changed, 61 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/pointset_test/plotLSHresults.m Tue Jul 22 20:09:31 2008 +0000 @@ -0,0 +1,61 @@ +function plotLSHresults(filename, w, kk, useLog) +if nargin<4, useLog=0;end +if nargin<3, kk=1;end + +R = load(filename,'ascii'); % Assume 10 radii queries x 10 radii result summaries + +for k=1:10 + RR(k,:)=mean(R(k:10:end,:))./100; % Convert to Probability +end + +c=['r' 'g' 'b' 'c' 'm' 'y' 'k']; + +if(useLog) + logSym=' Log_{10} '; + else + logSym=''; +end + +figure +subplot(211) +hold on +radii=[0.1 0.2 0.4 0.5 0.7 0.9 1 2 5 10]; +for k=1:10 + if(useLog) + semilogx(radii, kk*log10(lshP(w,radii./radii(k))),[num2str(c(mod(k,length(c))+1)) '-+'],'lineWidth',2) + else + plot(radii,lshP(w,radii./radii(k)).^kk,[num2str(c(mod(k,length(c))+1)) '-+'],'lineWidth',2) + end +end +if(useLog) + axis([radii(1) radii(end) -kk 0]) +else + axis([0 10 0 1]) +end +grid on +legend([{"r=.1"},{"r=.2"},{"r=.4"},{"r=.5"},{"r=.7"},{"r=.9"},{"r=1"},{"r=2"},{"r=5"},{"r=10"}]) +title(['Estimated Probability for 10 LSH radii searches: w=' num2str(w) ' , k=' num2str(kk)]) +xlabel('Radius') +ylabel([logSym 'Probability']) + + +subplot(212) +hold on +for k=1:10 + if(useLog) + semilogx(radii,kk*log(RR(k,:)),[num2str(c(mod(k,length(c))+1)) '-+'],'lineWidth',2) + else + plot(radii,RR(k,:).^kk,[num2str(c(mod(k,length(c))+1)) '-+'],'lineWidth',2) + end +end +if(useLog) + axis([radii(1) radii(end) -kk 0]) +else + axis([0 10 0 1]) +endif +grid on +legend([{"r=.1"},{"r=.2"},{"r=.4"},{"r=.5"},{"r=.7"},{"r=.9"},{"r=1"},{"r=2"},{"r=5"},{"r=10"}]) +title(['Observed Probability for 10 LSH radii searches: w=' num2str(w) ' , k=' num2str(kk)]) +xlabel('Radius') +ylabel([logSym 'Probability']) +