EASIEST: Webcam-Based Autism Pre-Screening with Eye Tracking and Machine Learning
EASIEST is a research prototype developed to explore how webcam-based eye tracking and machine learning can support the pre-screening of Autism Spectrum Disorder (ASD) in adults. The goal of the project was to create an accessible screening platform that works directly in a web browser without requiring specialized eye-tracking hardware.
Project Overview
The application uses WebGazer.js to estimate a user's gaze position in real time through a standard webcam. Before starting the screening tasks, users complete a calibration process to improve gaze estimation accuracy. During the test, gaze points are collected while participants interact with visual stimuli presented on the screen.
The collected gaze data are processed into fixations and converted into behavioral features that can be used by machine learning models to identify gaze patterns associated with ASD.
Eye-Tracking and Feature Extraction
Raw gaze coordinates alone are noisy and difficult to use directly for classification. To create more meaningful information, gaze samples are grouped into fixations using a dispersion-based filtering approach.
From these fixations, several gaze-based metrics are calculated, including:
- Time to First View: How long it takes the participant to first look at a specific area of interest.
- Fixations: The number of fixation events within an area.
- Revisits: How often the participant returns to a previously viewed area.
- Time Viewed: The total amount of time spent looking at a particular area.
Both Area of Interest (AOI) and grid-based representations were explored to transform these gaze behaviors into structured features suitable for machine learning.
Machine Learning
Using the extracted gaze features, I trained and evaluated Random Forest and Logistic Regression models with Scikit-learn. The models learned patterns from gaze behavior such as fixation frequency, revisits, viewing duration, and time-to-first-view.
The resulting classification pipeline achieved an accuracy of 76.3%, demonstrating the potential of combining browser-based eye tracking with machine learning for accessible pre-screening applications.
Full-Stack Platform
In addition to the eye-tracking and machine learning components, the project included a complete web platform for administering tests and managing patients. The backend was developed using Python and Flask, while the frontend was built with JavaScript, HTML, and CSS.
The application provides functionality for clinicians to register and log in, manage patients, start screening sessions, and review previous test results. Patient, user, and test information is stored in a relational database, providing a structured history of screening sessions.
Technology Stack
- Frontend: JavaScript, HTML, CSS, WebGazer.js
- Backend: Python, Flask
- Machine Learning: Scikit-learn, NumPy, Pandas
- Database: PostgreSQL / SQLAlchemy
- Testing: Pytest and Selenium
Privacy and Limitations
Because webcam and health-related information are involved, privacy was an important consideration throughout the project. The system was designed around gaze coordinates and derived features rather than requiring specialized eye-tracking hardware, and access to patient information is restricted to authorized users.
EASIEST is an academic research prototype and is not a medical diagnostic system. Webcam-based gaze estimation can also be affected by lighting conditions, camera quality, screen size, glasses, and head movement. The results are therefore intended to support further research rather than replace professional clinical assessment.
What I Learned
This project gave me experience across the complete machine learning application lifecycle: collecting data in the browser, processing noisy gaze signals, engineering behavioral features, training classification models, and integrating those models into a full-stack application. It also highlighted how important usability, privacy, and responsible interpretation are when developing AI systems for health-related applications.
Watch the project demo