Eye-Tracking Pupil Filtering for Jitter and Drift Correction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Eye-tracking data often suffers from jitter and inaccuracies due to sensor shifts, leading to uncalibrated regions and distorted presentations.
Innovation Solution
The technique involves clamping pupil positions within a predetermined calibrated region, applying easing functions to smooth transitions, refining gaze directions to ensure visibility regions, and sharing eye-tracking parameters between client and compositor to improve data consistency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If eye-tracking data is collected continuously, then the quantity of data increases, but jitter and inaccuracies worsen
Solution Approach 1:
A compositor is introduced as an intermediary component between the eye-tracking sensor and the presentation system. The compositor receives raw eye-tracking data from the client, processes it through filtering and smoothing algorithms, and generates corrected eye-tracking parameters. This intermediary layer isolates the data collection process from the data usage process, allowing continuous data collection while ensuring only processed, high-quality data affects the presentation.
Solution Approach 2:
The system implements a feedback mechanism where the compositor continuously monitors eye-tracking data quality and adjusts processing parameters accordingly. When jitter or inaccuracies are detected, the compositor applies appropriate filtering algorithms and smoothing techniques. The processed data is then fed back to the presentation system, creating a closed-loop control system that maintains data quality while preserving continuous data collection.
2Area of stationary object
If sensor tracking is performed continuously, then coverage increases, but sensor shifts and jitter increase
Solution Approach 1:
The system dynamically adjusts the eye-tracking parameters based on real-time sensor performance and calibration status. The compositor monitors sensor stability and calibration validity, adjusting filtering intensity and smoothing parameters adaptively. When sensors drift or jitter increases, the system dynamically modifies processing parameters to maintain precision while preserving broad coverage areas.
Solution Approach 2:
The eye-tracking data processing is segmented into distinct stages: raw data collection, quality assessment, filtering, smoothing, and final parameter generation. Each stage handles specific aspects of data processing independently, allowing the system to maintain wide coverage in data collection while applying precision-focused processing only where needed in subsequent stages.
3Area of stationary object
If uncalibrated regions are used, then field of view increases, but distortion increases
Solution Approach 1:
The compositor acts as an intermediary that processes eye-tracking parameters before they are used for image presentation. It receives parameters that may originate from uncalibrated regions, applies correction algorithms based on available calibration data, and generates corrected parameters for the presentation system. This allows the system to utilize wide field of view data while mitigating distortion through intermediate processing.
Solution Approach 2:
The system changes eye-tracking parameters dynamically based on calibration status and region validity. When data originates from uncalibrated regions, the compositor modifies parameters such as gaze direction, pupil position, and viewing angle to compensate for potential distortions. This parameter transformation allows broad field of view coverage while maintaining image quality through mathematical corrections.
Data Source
AI summary
Eye tracking is performed by determining an initial pupil position of a user in relation to a lens situated in front of the user, detecting a change in pupil position in relation to the lens to an updated pupil position in relation to the lens, and determining that the updated pupil position is outside a bounding box associated with the lens. The updated pupil position is a replacement pupil position with a replacement pupil position within the bounding box associated with the lens, and the updated pupil position is utilized for eye-tracking functionality. Eye tracking is also performed by determining that a first pixel associated with a gaze direction is outside a visibility region, identifying a replacement pixel within the visibility region, determining an updated gaze angle based on the replacement pixel, and performing eye tracking using the updated gaze angle.


