PDFParzenMulti.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  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. #ifdef NOVISUAL
  10. #include <vislearning/nice_nonvis.h>
  11. #else
  12. #include <vislearning/nice.h>
  13. #endif
  14. #include <map>
  15. #include "PDF.h"
  16. #include "vislearning/baselib/Gnuplot.h"
  17. #include "core/vector/VVector.h"
  18. namespace OBJREC {
  19. /** Parzen Density */
  20. class PDFParzenMulti : public PDF
  21. {
  22. protected:
  23. NICE::VVector samples;
  24. // refactor-nice.pl: check this substitution
  25. // old: Matrix kernelInvCov;
  26. NICE::Matrix kernelInvCov;
  27. double constant;
  28. uint dimension;
  29. double det;
  30. // refactor-nice.pl: check this substitution
  31. // old: double kernel ( const Vector & v ) const;
  32. double kernel ( const NICE::Vector & v ) const;
  33. public:
  34. /** simple constructor */
  35. // refactor-nice.pl: check this substitution
  36. // old: PDFParzenMulti ( const NICE::VVector & samples, const Matrix & kernelInvCov );
  37. PDFParzenMulti ( const NICE::VVector & samples, const NICE::Matrix & kernelInvCov );
  38. /** simple destructor */
  39. virtual ~PDFParzenMulti();
  40. // refactor-nice.pl: check this substitution
  41. // old: double getNLogDensity ( const Vector & x ) const;
  42. double getNLogDensity ( const NICE::Vector & x ) const;
  43. int getDimension () const;
  44. };
  45. } // namespace
  46. #endif