unittestCodebookRandomForestMex.m 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. % brief: Unit testing of the CodebookRandomForest functions (ERC)
  2. % author: Johannes Ruehle
  3. % date: 11-04-2014 (dd-mm-yyyy)
  4. %% test Creation of OBJREC::Examples class from sample matrix and label data
  5. numSamples = 10000;
  6. numFeatures = 5;
  7. maxClass = 3;
  8. matFeatures = rand(numSamples, numFeatures, 'double')';
  9. matLabels = randi(maxClass, numSamples,1,'double');
  10. %% create and train
  11. hClassifier = CodebookRandomForestMex('createAndTrain',...
  12. matFeatures, matLabels,...
  13. 'conf', 'config.conf');
  14. %% calcClassDistributionPerSample
  15. bSucceess = CodebookRandomForestMex('calcClassDistributionPerSample',...
  16. hClassifier,...
  17. matFeatures,'verbose',true );
  18. assert(bSucceess);
  19. %% generateHistogram
  20. matHistogram = CodebookRandomForestMex('generateHistogram',...
  21. hClassifier,...
  22. matFeatures, 'verbose',false);
  23. %% store
  24. bSuccess = CodebookRandomForestMex('storeToFile',...
  25. hClassifier,...
  26. 'codebookrf.stored.txt');
  27. %% restore
  28. hRestoredClassifier = CodebookRandomForestMex('restoreFromFile',...
  29. 'codebookrf.stored.txt');
  30. assert( ~(hRestoredClassifier == false) );
  31. matHistogramNew = CodebookRandomForestMex('generateHistogram',...
  32. hRestoredClassifier,...
  33. matFeatures, 'verbose',false);
  34. d = matHistogramNew-matHistogram;
  35. assert( sum(d(:)) == 0 ); % histogram are alike
  36. %%
  37. CodebookRandomForestMex('delete', hClassifier);
  38. CodebookRandomForestMex('delete', hRestoredClassifier);
  39. %catch ecpn
  40. % disp( ecpn );
  41. %end