Vision Touch Surface Library
 All Classes Files Functions Variables Pages
visionprocessor.h
Go to the documentation of this file.
1 #ifndef VISIONPROCESSOR_H
2 #define VISIONPROCESSOR_H
3 
4 #include "kinecthandler.h"
5 #include "projectivemapping.h"
6 #include "fourierdescriptor.h"
7 
8 #include "framedata.h"
9 
14 {
15 protected:
16 
17  const static int HAND_CLASS_ID=1;
23  int sizes[2];
24  float tolerance;
25  int epsilon;
28  Mat erodeK;
31  static const double PI = 3.14159265358979323846;
32 
37  float maxCirc;
38  float minHandExc;
41 
43 
44  vector<Point2f> screenContoursCorners;
45 
46 
47  virtual int segmentScreen(const Mat & grayFrame, int Ith,float epsilon, vector<Point2i> & screenContours, Mat & maskShow );
48 public:
50 
56  virtual void init( int wRes=1024, int hRes=768 );
57 
61  virtual void getScreenTransformation();
62 
67  virtual void createMaxDepthWithHistogram( int numFrames=200 );
68 
74  virtual void processFrame( FrameData & frameData, double & processingDuration );
75 
76  cv::Size2i getKinectResolution() const;
77 
79  void setKinect2screen(const ProjectiveMapping &value);
80 
81 };
82 
83 #endif // VISIONPROCESSOR_H