opencvimage-processingcomputer-visioneye-detectioniris-recognition

Iris detection in still images


I have good resolution faces images and I would like to automatically detect the iris and know its color. Is there any state-of-the-art (standard) way to detect iris other than HoughCircles which is not reporting consistent results on different images. One condition I have is that I have to use still images (no video is available)?

I am using OpenCV-Python for image processing. Any help is highly appreciated.


Solution

  • I think the problem can be split into two parts:

    1. Localisation of the iris regions
    2. Estimating the colour

    Step one is time consuming, but I have done this at my workplace. You can train a Haar-cascade classifier for iris images (grayscale), and localise the iris within the eye-region returned be the cascade classifier for the eyes. If you already have a collection of face images, you can use them. Otherwise, try to collect as many samples as possible, with the same image quality as the images you want to use.

    Step two is relatively easy, but might not be "very easy" because of auto white balance etc.

    If you want a simpler approach, try detecting the white regions of the eye and using them to loc