posted 15 years ago
[Nacho]: i've completed the face detection and the eye detection.
Well, can you find the location of pupils in an image? I would think that one of the most useful things to do would be to detect relative movements of the pupils from image to image. Figuring out the absolute position of everything using trigonometry would be hard (there are many unknowns), but if you can at least detect relative movements, then you can move the cursor up when the pupil moves up, left when the pupil moves left, etc. Then there's a question of how much to move the cursor in response to each movement, but with luck this can be handled with a simple multiplier that you determine through experimentation.
As I think about it though, tracking only relative movement may be limiting and confusing. Some of the time the user may be moving their eyes onto the cursor rather than trying to guide it, which requires a completely different response.
If you have a good enough image, you may benefit from analyzing the shape of the pupils, which should appear as ellipses, depending on where they're pointing. If you can identify the long axis and short axis of each ellipse, you can determine what angle the eye is looking at. Doing this with both eyes you may be able to triangulate and determine a position. My feeling is that most images will not have good enough resolution to do this very accurately, but it's something to try.
I expect it's probably worthwhile to spend some time studying literature on similar existing systems. I've never studied this myself; I'm just giving a few random thoughts as they come to me.
"I'm not back." - Bill Harding, Twister