public TrackData() { eyesROI = new Rectangle(); leftROI = new Rectangle(); rightROI = new Rectangle(); pupilDataLeft = new PupilData(); pupilDataRight = new PupilData(); glintDataLeft = new GlintData(); glintDataRight = new GlintData(); calibrationDataLeft = new CalibrationData(); calibrationDataRight = new CalibrationData(); gazeDataRaw = new GTGazeData(); gazeDataSmoothed = new GTGazeData(); //eyeMovement = new GazeTrackingLibrary.EyeMovement.Classifier(); eyesDetected = false; eyeDetected = false; pupilLeftDetected = false; pupilRightDetected = false; glintsLeftDetected = false; glintsRightDetected = false; }
public Tracker(GTCommands commands) { this.commands = commands; detectionManager = new DetectionManager(); calibration = new Calibration.Calibration(); recalibration = new Recalibration(); eyeMovement = new Classifier(); exponentialSmoother = new ExponentialSmoother(20, 0, (int)Math.Ceiling(GTSettings.Current.Processing.SmoothLevel / 5.0)); visualization = new Visualization(); server = new UDPServer(); gazeDataRaw = new GTGazeData(); gazeDataSmoothed = new GTGazeData(); processingDone = true; timerCalibrationDelay = new DispatcherTimer(); timerCalibrationDelay.Interval = TimeSpan.FromMilliseconds(calibrationDelayMilliseconds); timerCalibrationDelay.Tick += TimerCalibrationTick; logGaze = new Logger(); logGaze.Server = server; // Used to send messages back to client (log start/stop etc.) logGaze.IsEnabled = GTSettings.Current.FileSettings.LoggingEnabled; recalibration.RecalibrationAvailable += new Recalibration.RecalibrationAvailableHandler(recalibration_RecalibrationAvailable); //recalibration.OnRecalibrationAvailable +=new Recalibration.RecalibrationAvailable(recalibration_OnRecalibrationAvailable); GTSettings.Current.Processing.PropertyChanged += ProcessingSettingsPropertyChanged; timerCalibrationDelay.Tick += TimerCalibrationTick; CameraControl.Instance.FrameCaptureComplete += Camera_FrameCaptureComplete; }
private Tracker(GTCommands commands) { log.Info("Constructing Tracker..."); this.commands = commands; detectionManager = new DetectionManager(); calibration = new Calibration.Calibration(); recalibration = new Recalibration(); eyeMovement = new Classifier(); exponentialSmoother = new ExponentialSmoother(Settings.Instance.EyeMovement.SmoothNumberOfSamples, 0, (int)Math.Ceiling(Settings.Instance.EyeMovement.SmoothLevel / 5.0)); visualization = new Visualization(); server = new UDPServer(); gazeDataRaw = new GTGazeData(); gazeDataSmoothed = new GTGazeData(); gazeDazaExtended = new GTExtendedData(); processingDone = true; timerCalibrationDelay = new DispatcherTimer(); timerCalibrationDelay.Interval = TimeSpan.FromMilliseconds(calibrationDelayMilliseconds); timerCalibrationDelay.Tick += TimerCalibrationTick; logGaze = new Logger(); logGaze.Server = server; // Used to send messages back to client (log start/stop etc.) log.Info("Looking up LoggingEnabled in FileSettings"); logGaze.IsEnabled = Settings.Instance.FileSettings.LoggingEnabled; log.Info("Setting RecalibrationAvailableHandler"); recalibration.RecalibrationAvailable += new Recalibration.RecalibrationAvailableHandler(recalibration_RecalibrationAvailable); //recalibration.OnRecalibrationAvailable +=new Recalibration.RecalibrationAvailable(recalibration_OnRecalibrationAvailable); Settings.Instance.Processing.PropertyChanged += ProcessingSettingsPropertyChanged; timerCalibrationDelay.Tick += TimerCalibrationTick; if (GTHardware.Camera.Instance.Device != null) { log.Info("Setting GTHardware device OnImage EventHandler"); GTHardware.Camera.Instance.Device.OnImage += new EventHandler <GTHardware.Cameras.ImageEventArgs>(Device_OnImage); } string sDate = DateTime.Now.ToString(); sDate = sDate.Replace(" ", ""); sDate = sDate.Replace("/", ""); sDate = sDate.Replace(":", ""); log.Info("Completed constructing Tracker"); fileName2 = "c:\\temp\\log" + sDate + ".csv"; appendToFile(fileName2, "TimeStamp;GazeX;GazeY;DiameterLeftPupil;DiameterRightPupil"); /*fileName = "c:\\temp\\log" + sDate + ".arff"; * appendToFile(fileName, "@relation 'logeye'"); * appendToFile(fileName, "@attribute TimeStamp real"); * appendToFile(fileName, "@attribute GazeX real"); * appendToFile(fileName, "@attribute GazeY real"); * appendToFile(fileName, "@attribute DiameterLeftPupil real"); * appendToFile(fileName, "@attribute DiameterRightPupil real"); * appendToFile(fileName, "@data");*/ }
private Tracker(GTCommands commands) { log.Info("Constructing Tracker..."); this.commands = commands; detectionManager = new DetectionManager(); calibration = new Calibration.Calibration(); recalibration = new Recalibration(); eyeMovement = new Classifier(); exponentialSmoother = new ExponentialSmoother(Settings.Instance.EyeMovement.SmoothNumberOfSamples, 0, (int)Math.Ceiling(Settings.Instance.EyeMovement.SmoothLevel / 5.0)); visualization = new Visualization(); server = new UDPServer(); gazeDataRaw = new GTGazeData(); gazeDataSmoothed = new GTGazeData(); gazeDazaExtended = new GTExtendedData(); processingDone = true; timerCalibrationDelay = new DispatcherTimer(); timerCalibrationDelay.Interval = TimeSpan.FromMilliseconds(calibrationDelayMilliseconds); timerCalibrationDelay.Tick += TimerCalibrationTick; logGaze = new Logger(); logGaze.Server = server; // Used to send messages back to client (log start/stop etc.) log.Info("Looking up LoggingEnabled in FileSettings"); logGaze.IsEnabled = Settings.Instance.FileSettings.LoggingEnabled; log.Info("Setting RecalibrationAvailableHandler"); recalibration.RecalibrationAvailable += new Recalibration.RecalibrationAvailableHandler(recalibration_RecalibrationAvailable); //recalibration.OnRecalibrationAvailable +=new Recalibration.RecalibrationAvailable(recalibration_OnRecalibrationAvailable); Settings.Instance.Processing.PropertyChanged += ProcessingSettingsPropertyChanged; timerCalibrationDelay.Tick += TimerCalibrationTick; if (GTHardware.Camera.Instance.Device != null) { log.Info("Setting GTHardware device OnImage EventHandler"); GTHardware.Camera.Instance.Device.OnImage += new EventHandler <GTHardware.Cameras.ImageEventArgs>(Device_OnImage); } log.Info("Completed constructing Tracker"); }