Comments (9)
I've been working on a prototype for this, and so far results are satisfactory.
Here's my approach:
a) Face detection using clmtrackr.js
b) extracting eye points using the getCurrentPosition() method
c) convert cropped eye area into grayscale, apply a bit of colour balance, and use a threshold algorithm.
Now, this is where it gets "tricky"... After a lot of reading I decided to go with correlation coefficient of two images. I'm comparing the current webcam frame with another frame taken 100ms before, and checking the difference in the image. then based on the correlation coefficient (how different are the images) I decide to mark it as a blink.
Problems with this approach, its not 100% accurate, requires calibration based on room light, skin tone, etc.
Will publish this online at some point (getUserMedia only works over https, or localhost)
I was wondering @auduno , if we could have the same in the eyes as we have in the mouth... We can detect if the mouth gets open or not, how hard is to do the same in the eyes? would be great if the library detected the eyes closing... even if its just an average calculation...
from clmtrackr.
Hi, you're welcome to try, but I don't think clmtrackr is precise enough to be able to do eye tracking.
from clmtrackr.
@andrevenancio Did you ever end up posting the tutorial on this? My lab and I are working on using CLMTrakr for this very purpose and we would love to implement a blink detector to help out with our eye tracking algorithm
from clmtrackr.
I recently heard about http://webgazer.cs.brown.edu which seems to accomplish this
from clmtrackr.
That's what I am working on. Our current blink detector is rather simplistic and we are looking for ways to improve it.
from clmtrackr.
Hi, I haven't posted a tutorial yet, because I'm launching a campaign for Audi, where such technology is implemented. I'll share it over the next few days.
I've done a couple of changes to the tracker though, as it wasn't optimised to run at 60fps.
I'll drop by and comment with the code over the next few days.
from clmtrackr.
Hmm, @andrevenancio you optimized it to run at 60FPS? Could that possible solve #70 as well? If so, I would love to mess around with that fork of the tracker.
from clmtrackr.
Hey @Skylion007 I just published a draft of the tutorial on my website.
https://andrevenancio.com/eye-blink-detection/
Let me know if there's anything I'm missing.
from clmtrackr.
@andrevenancio Wow, thank you! This is a really impressive tutorial. Feel free to take a look at WebGazer when you have the chance; seems like you might have a lot of useful insights on the project.
from clmtrackr.
Related Issues (20)
- Is it possible to change the color of the green lines? HOT 2
- Camera stream freezes once the clmtrackr detects a face (MacOs Mojave, Safari) HOT 9
- Is it possible to detect only the smile? HOT 1
- Video gets laggy on Safari for iOS HOT 1
- Alert Android9 Browser Face Deformer.
- detect_multi_scale TypeError HOT 2
- T
- ERR_SSL_PROTOCOL_ERROR HOT 2
- Problems on webpack and Symfony installation HOT 7
- jsfeat module is not defined HOT 5
- Unable to stop the tracker once started
- how improve the emotion detector
- Detect eye blink HOT 1
- How to stop the shaking on the mask
- Show a cap on head HOT 1
- Issue in Android Mobile
- Bug: Image tracking on mobile gives very bad results HOT 1
- High resolution error
- hide fps
- Nose slimming effect?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from clmtrackr.