Draft. Screenshots still to come.

ProfessorVR

FocusTracker In development

Lab eye trackers are expensive and stay in the lab. FocusTracker measures attention with the front camera of an iPhone, and nothing leaves the phone. It's in development, and a prototype has not yet been distributed.

My role
Sole developer and researcher
Platform
iPhone (Swift, ARKit, Core ML)
Approach
Face tracking plus on-device gaze estimation
Status
In development; prototype not yet distributed

The idea

The VR study showed that where the eyes point and how much they close can track disengagement. FocusTracker asks whether a phone can measure the same thing in everyday settings, such as reading or studying, without special hardware and without sending video anywhere.

How it works

  • ARKit face tracking reports head pose and eye state from the TrueDepth camera.
  • A convolutional neural network based on iTracker runs on the phone through Core ML and estimates where on the screen the person is looking.
  • A separate Python prototype does webcam gaze tracking with MediaPipe FaceMesh, for testing ideas on a desktop first.

Research behind it

The design is grounded in a review of the research on camera-based eye tracking, attention training and machine-learning models of eye movement, and in my own earlier experiments. In the VR study, laptop webcams followed a moving target with an average correlation of 0.87, which suggested a phone camera could do useful work.

That research pointed to a clear plan: a frozen, pretrained gaze encoder with a small per-user calibration layer, benchmarked against a simple feature-based gradient-boosting model first. Personal calibration matters more than model size, and the simple baseline shows whether the complex model earns its place.

Next

The next milestone is a prototype distributed to testers. This page will be updated with results once that's done.

Figure to add: app screenshotsTwo or three screens from the current build. Leave out anything you aren't ready to reveal.

Back to all work