CodebookPrototypes.h 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  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. #include "core/vector/VectorT.h"
  10. #include "core/vector/MatrixT.h"
  11. #include <string>
  12. #include "core/vector/VVector.h"
  13. #include "Codebook.h"
  14. namespace OBJREC {
  15. /** feature CodebookPrototypes */
  16. class CodebookPrototypes : public Codebook, public NICE::VVector
  17. {
  18. protected:
  19. public:
  20. /** simple constructor */
  21. CodebookPrototypes();
  22. CodebookPrototypes( const std::string & filename );
  23. CodebookPrototypes( const NICE::VVector & vv );
  24. CodebookPrototypes( const CodebookPrototypes *cs );
  25. /** simple destructor */
  26. virtual ~CodebookPrototypes();
  27. void vote ( const NICE::Vector & feature, int & codebookEntry, double & weight, double & distance ) const;
  28. void add ( const Codebook *codebook );
  29. void copy ( const Codebook *codebook );
  30. Codebook *clone () const;
  31. void clear ();
  32. void restore ( std::istream & is, int format );
  33. void store ( std::ostream & os, int format ) const;
  34. void displayCodebook (int xsize, int ysize) const;
  35. };
  36. } // namespace
  37. #endif