Your left eye
UnavailableFind this eye in the camera.
Color unavailable
Wait for a clear, open eye in the camera.
Start the camera to play
A face becomes a map of points. Eye corners give us a reference; iris and eyelid points tell us what moves. Try it with your own face.
The box follows face position; the eye line shows tilt in the image. These are not physical head angles. The overlay uses the exact frame that was measured.
Find this eye in the camera.
Color unavailable
Wait for a clear, open eye in the camera.
Find this eye in the camera.
Color unavailable
Wait for a clear, open eye in the camera.
MediaPipe locates the iris; our pixel sampler estimates its visible color. We sample a ring around the center, aiming to skip the pupil, lids, dark shadows, and bright reflections. The swatch is a camera-color estimate, not a measurement of natural pigmentation. Lighting, white balance, contact lenses, and a dilated pupil can change it. Come closer and use soft front lighting; compare the swatch with what you see.
The gap is the distance between the upper and lower lid samples, measured relative to eye width and compared with your own open-eye gap. MediaPipe’s blink score supplies another clue; it is not a confidence percentage. The two are blended into one smoothed openness value. Closing is immediate, but about 120 ms of steady open evidence is needed to reopen, so a held wink does not flicker. Signals can disagree, so “uncertain” is useful feedback. The iris estimate is retained during closure, but it should not steer gaze.
Everything here uses anatomical left and right. Only the pictures are mirrored. The playful eyes also apply smoothing and optional echo; these inspection readings do not.
Raw iris and lid positions use the original image. Mirroring and echo affect only the display. Gaze validity is a geometry heuristic.
Record raw measurements as JSONL. No images or video are saved. Each recording is limited to 10,000 samples.
Ready when your camera is.
Engage the mechanism in auto, manual or tracking mode, then send poses. Direct needs this page at http://localhost:8080 and firmware that allows that origin.
Sends what the eyes above show, echo included, about 50 times a second. When nobody is in view it stops, and the mechanism eases back to neutral and its previous mode.