Skip to content

PupilTracking

stefan-k edited this page Jan 2, 2012 · 2 revisions

Just my thoughts on PupilTracking:

It turns out that proper segmenting of the pupil is crutial. This is currently not possible since there are reflections on the eye and there are disturbing elements in the image (like eyebrows, eyelashes) which confuse the tracker. I'm sure this can be improved by IR light. (UPDATE: Yes, IR improves this, Reflections are still a problem. But this can be partially solved by erosion.)

Another thing thats very important is the thresholding, which makes the tracking much faster. I tried using the gray scale image, but this turned out to be extremely slow (too much circles are found).

For the tracking, it could also be nice to restrict the radius (which means, if the radius changes drastically from one frame to the other, something probably went wrong). But this should not be very important, since HoughCircles restricts the radius anyway with its parameters. (UPDATE: Not important at all anymore)

I restricted the search area for the circles (from one frame to the next), which means that if the nearest circle is too far away from the last match, it is dropped. This leads to the effect that the tracking is stopped in this cases (circle stands still). But this should also improve with IR light. An probably the parameters can be chosen in another way so that this doesn't occur to often. Anyway, its better this way then some remote area is caught after bad tracking. (UPDATE: Not an issue anymore, works even without restrictions very well. Well, to be honest, the Search region is restricted with a ROI which makes this problem less important)

A good thing is, that we don't really need to take care of veNry strong eyemovement, since the movement necessary for viewing a monitor is pretty restricted. So we don't need to consider the elliptic appearance of the pupil when someone looks very much to the right or left. (UPDATE: WRONG! Turns out, the elliptic appearance is what makes the tracking much more robust after all.)

Clone this wiki locally