Exemple #1
0
        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;
        }
Exemple #2
0
        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");*/
        }
Exemple #3
0
        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");
        }