FocusFlow - Your own AI Study Companion
FocusFlow is an intelligent study assistant that uses computer vision and AI to enhance your learning experience.
Created on 11th January 2025
•
FocusFlow - Your own AI Study Companion
FocusFlow is an intelligent study assistant that uses computer vision and AI to enhance your learning experience.
The problem FocusFlow - Your own AI Study Companion solves
All of us at some point during watching online lectures have just got lost in our own world and just forgot about the lecture in total. It is very easy to get distracted because there is no supervision. Luckily, we found a solution:
Our software auto-pauses your study content whenever user isn't focused on the screen, warns you him upon sitting too close to the screen so as to protect his eyes and also offers handsfree gesture controls to operate from a distance.
We also managed to find a way to detect if you are too sleepy to continue studying. Maybe you do need a break but one from the screens too.
The software tracks your blink rate and eye movement patterns and suggests breaks when signs of fatigue are detected
We even added an AI voice assistent to help you make notes without having to touch a pen.
We implemented a strict mode for extra accountability so if we ever get too involced in lets say that one notification, it will remind us to get back on track
Challenges we ran into
Face Detection and Tracking Challenges:
Calibrating threshold values for accurate gaze detection took lot of trial and testing to pin point while handling varying lighting conditions
Distance Estimation Complexities:
Converting 2D camera measurements to approximate screen distance for calibrating distance threshold for different users and setups was a pretty hectic task. Handling different camera resolutions and FOV's took a lot of thinking
Drowsiness Detection Issues
Finding the right BLINK_THRESHOLD for different users while distinguishing between normal blinks and drowsy behavior
Balancing sensitivity vs false positives in drowsiness alerts
Managing blink detection across different lighting conditions
Threading and Performance
Coordinating multiple threads (monitoring, AI assistant, UI)
Preventing race conditions in shared state variables
Managing CPU usage with continuous video processing
Ensuring smooth UI responsiveness during heavy processing
AI Assistant Integration
Handling microphone access and audio capture
Managing temporary audio files cleanly
Processing speech recognition errors gracefully
Coordinating the Whisper model with other processes
Tracks Applied (1)
