convertFeatures.cpp 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. /**
  2. * @file testClassifier.cpp
  3. * @brief main program for classifier evaluation
  4. * @author Erik Rodner
  5. * @date 2007-10-12
  6. */
  7. #include <objrec/nice_nonvis.h>
  8. #include <fstream>
  9. #include <iostream>
  10. #include <objrec/cbaselib/MultiDataset.h>
  11. #include <objrec/iclassifier/icgeneric/CSGeneric.h>
  12. #include <objrec/cbaselib/ClassificationResults.h>
  13. #include <objrec/iclassifier/codebook/MutualInformation.h>
  14. #include "objrec/classifier/classifierbase/FeaturePoolClassifier.h"
  15. #include <objrec/classifier/fpclassifier/randomforest/FPCRandomForestTransfer.h>
  16. #include <objrec/classifier/classifierinterfaces/VCFeaturePool.h>
  17. #include <objrec/baselib/Config.h>
  18. #include <objrec/baselib/Preprocess.h>
  19. #include <objrec/baselib/StringTools.h>
  20. #undef DEBUG
  21. using namespace OBJREC;
  22. using namespace NICE;
  23. using namespace std;
  24. int main (int argc, char **argv)
  25. {
  26. std::set_terminate(__gnu_cxx::__verbose_terminate_handler);
  27. Config conf ( argc, argv );
  28. string fn = conf.gS("main", "input", "train.vec");
  29. int format = conf.gI("main", "format", 0 );
  30. string outfn = conf.gS("main", "output", "out.vec");
  31. LabeledSetVector test;
  32. test.read (fn, format );
  33. cout << "fn: " << fn << endl;
  34. ofstream fout(outfn.c_str());
  35. ofstream cn((outfn+".cn").c_str());
  36. fout << test.count() << endl;
  37. cn << test.count() << endl;
  38. fout << test.dimension();
  39. cn << 1;
  40. for( map< int, vector<NICE::Vector *> >::iterator iter = test.begin(); iter != test.end(); ++iter )
  41. {
  42. for(int j = 0; j < iter->second.size(); j++)
  43. {
  44. Vector vec = *(iter->second[j]);
  45. cn << endl << iter->first;
  46. fout << endl;
  47. for(int i = 0; i < vec.size()-1; i++)
  48. {
  49. fout << vec[i] << " ";
  50. }
  51. fout << vec[vec.size()-1];
  52. }
  53. }
  54. fout.close();
  55. cn.close();
  56. return 0;
  57. }