riecodes
All projects

GazeFocus

Attention analytics from one room camera: who's engaged, who's on their phone, and the minute the room checked out. One of three winners at the Socia Intern Hackathon.

PythonFastAPIYOLOMediaPipeOpenCVNext.js 16WebSocketComputer Vision
GazeFocus screenshot 1
1 / 5

Built for the Socia Intern Hackathon (Taguig, April 17, 2026), where Eirmon was one of three interns picked as winners. GazeFocus reads a single room-level camera feed, from a webcam, a recorded file or an RTSP stream, and labels every person in frame in real time. Meeting mode tells attentive, side-talking, on-phone and disengaged apart for client demos; workspace mode tracks working, on-phone, idle and away.

YOLOv8s finds people, phones and laptops. MediaPipe FaceLandmarker and OpenCV's solvePnP turn 478 face landmarks into head pose, and a gaze ray from each face checks which object it lands on. A FastAPI backend streams annotated frames and per-person states over WebSocket to a Next.js dashboard, which ends each session with an engagement rate and a timeline of when the room's attention dropped. It reads head pose rather than irises, so it works from ceiling and corner CCTV angles. Faces in these demo captures are mosaiced.

riecodes© 2026 Eirmon John Paculan

Command palette

Navigate the site or run a quick action