We realized that some people are limited in their ability to use computers when they are physically affected. To help combat this problem, we created a project that would help people control their cursors on their screens using their eyes and eyebrows, which is a lot simpler.
What it does
This project utilizes facial recognition technology to control the mouse and navigate it around the screen. Users can also click the mouse by blinking.
How we built it
We built this project primarily using Python and OpenCV. We used a Python library that tracked several facial points to identify the eyes, nose, mouth, etc. and to allow us to monitor eye and eyebrow movement.
Challenges we ran into
We realized that it would be difficult to navigate the mouse vertically. To solve this issue, we incorporated eyebrows into our model. This allows us to navigate horizontally with our eyes and vertically with our eyebrows. Another problem we ran into early on was distinguishing between accidental blinks and intentional blinks. We solved this problem by identifying that intentional blinks last longer than accidental blinks. So, we checked how long the user's eyes were closed and determined it to be an intentional blink if they were closed for more than a set amount of frames.
Accomplishments that we're proud of
We are proud of getting this project working for fundamental uses during this short period of time. We also believe that this project will provide us a solid foundation to continue to grow and improve its functionality and widespread use.
What we learned
We learned how to incorporate various existing technologies and tools to help us speed up our code base process. Additionally, we became more comfortable using Python libraries and OpenCV facial recognition technology.
What's next for Eyetracker for Mouse
We hope to be able to add further functionality to this project by adding different features to the eyetracker, such as convenient scrolling and more accurate movement.