Pupil Detection

Purposes :
The purpose of this study is to realise a software detector that leads to the detection of a human pupil. A picture of an eye, approximately centered on the pupil is needed. The result are the parameters of an ellipse that fits the pupil.

Basics :
The human eye picture is divided in 4 regions :


Image from Neurotechnologija
The use of the colors :
Any camera that takes a photograph of the eye, will take from the very white of the cornea to the very black of the pupil. Then, a kind of auto - adjustement of brightness is realised. If this is not done by the camera, some little software can archieve this task (spawn colors from 0 to 127=max).
In fact, this doesn't work always very well : under heavy or low light conditions, the colors profile seems to be modified.
It seems to be better to use shape - controlled color detection.

The problem of the shape :
The pupil is not a real ellipse, it could just be described with an ellipse.
The problem of a such description is solved with a light ellipse-like search, Hough search (light or full) or the least square method :

A good start point is to join ellipse - like search, with the use of colors.

The reflection problem :
Another problem is that some strong reflects brings high disturbances : they mark the picture with white dots (which is not a real problem) and their smooth border may look like the border of the pupil !
Then, if a reflect lies from the pupil to the iris, it is possible to miss a part of the pupil border and get the border of a reflect instead of the border of the pupil. In that case, the reflect must be very large. But this is still quite unpredictable.



 
 

The work done :

With more than 8 methods tested, the last version uses the good principles, to search the information. It is :


The Source :
Image of the eye with only half-word precision. Insensitive to image size. Tests on 200x200 to 400x400.

The Steps :


The results :
<With Picts >