CodebookPrototypes.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. /**
  2. * @file CodebookPrototypes.h
  3. * @brief feature CodebookPrototypes
  4. * @author Erik Rodner
  5. * @date 02/15/2008
  6. */
  7. #ifndef CodebookPrototypesINCLUDE
  8. #define CodebookPrototypesINCLUDE
  9. #ifdef NOVISUAL
  10. #include <vislearning/nice_nonvis.h>
  11. #else
  12. #include <vislearning/nice.h>
  13. #endif
  14. #include <string>
  15. #include "core/vector/VVector.h"
  16. #include "Codebook.h"
  17. namespace OBJREC {
  18. /** feature CodebookPrototypes */
  19. class CodebookPrototypes : public Codebook, public NICE::VVector
  20. {
  21. protected:
  22. public:
  23. /** simple constructor */
  24. CodebookPrototypes();
  25. CodebookPrototypes( const std::string & filename );
  26. CodebookPrototypes( const NICE::VVector & vv );
  27. CodebookPrototypes( const CodebookPrototypes *cs );
  28. /** simple destructor */
  29. virtual ~CodebookPrototypes();
  30. void vote ( const NICE::Vector & feature, int & codebookEntry, double & weight, double & distance ) const;
  31. void add ( const Codebook *codebook );
  32. void copy ( const Codebook *codebook );
  33. Codebook *clone () const;
  34. void clear ();
  35. void restore ( std::istream & is, int format );
  36. void store ( std::ostream & os, int format ) const;
  37. void displayCodebook (int xsize, int ysize) const;
  38. };
  39. } // namespace
  40. #endif