PDFParzenMulti.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. /**
  2. * @file PDFParzenMulti.h
  3. * @brief Parzen density
  4. * @author Erik Rodner
  5. * @date 01/29/2008
  6. */
  7. #ifndef PDFParzenMultiINCLUDE
  8. #define PDFParzenMultiINCLUDE
  9. #include "core/vector/VectorT.h"
  10. #include "core/vector/MatrixT.h"
  11. #include <map>
  12. #include "PDF.h"
  13. #include "vislearning/baselib/Gnuplot.h"
  14. #include "core/vector/VVector.h"
  15. namespace OBJREC {
  16. /** Parzen Density */
  17. class PDFParzenMulti : public PDF
  18. {
  19. protected:
  20. NICE::VVector samples;
  21. // refactor-nice.pl: check this substitution
  22. // old: Matrix kernelInvCov;
  23. NICE::Matrix kernelInvCov;
  24. double constant;
  25. uint dimension;
  26. double det;
  27. // refactor-nice.pl: check this substitution
  28. // old: double kernel ( const Vector & v ) const;
  29. double kernel ( const NICE::Vector & v ) const;
  30. public:
  31. /** simple constructor */
  32. // refactor-nice.pl: check this substitution
  33. // old: PDFParzenMulti ( const NICE::VVector & samples, const Matrix & kernelInvCov );
  34. PDFParzenMulti ( const NICE::VVector & samples, const NICE::Matrix & kernelInvCov );
  35. /** simple destructor */
  36. virtual ~PDFParzenMulti();
  37. // refactor-nice.pl: check this substitution
  38. // old: double getNLogDensity ( const Vector & x ) const;
  39. double getNLogDensity ( const NICE::Vector & x ) const;
  40. int getDimension () const;
  41. };
  42. } // namespace
  43. #endif