180 likes | 198 Views
Non-Ideal Iris Segmentation Using Graph Cuts. Shrinivas Pundlik, Damon Woodard and Stan Birchfield Clemson University, Clemson, SC USA Workshop on Biometrics, CVPR 2008. Outline. Motivation Previous Work Proposed Approach Eyelash Segmentation Texture Computation
E N D
Non-Ideal Iris Segmentation Using Graph Cuts Shrinivas Pundlik, Damon Woodard and Stan Birchfield Clemson University, Clemson, SC USA Workshop on Biometrics, CVPR 2008
Outline • Motivation • Previous Work • Proposed Approach • Eyelash Segmentation • Texture Computation • Graph Cuts for segmentation • Iris Segmentation • Iris Refinement • Results • Conclusion
Why Iris Recognition? • Iris: a near ideal biometric • highly unique • stable over lifetime • Robust Recognition • templates easy to store/encode • fast and accurate matching algorithms • Security • very low false accepts • difficult to spoof
extensively studied challenging! Motivation for Iris Segmentation A typical iris recognition system Occlusions Image Acquisition Reflections Ideal Images Non-Ideal Images Blurring Pupil Dilation Iris Segmentation Iris Segmentation Off-Axis Gaze Matching Algorithms Matching Algorithms Recognition errors Successful Recognition Segmentation is an important part of the larger iris recognition problem, especially when dealing with non-ideal images.
Previous Work • [Ma et al. 2003] • Fourier transforms • [Kong & Zhang 2003] • image intensity differences • [Daugman 2003] • integro-differential approach • [Kang & Park 2007] • focus variance • [Bachoo & Tapamo] • Gray Level Co-occurrence Matrix (GLCM) • [Daugman 2007] • active contours • [Ross et al. 2006] • geodesic active contours • Common Themes: • require ideal iris images for satisfactory performance • primarily use eye geometry
Input Iris Image Preprocessed input Specular Reflections - Eyelash Segmentation Iris Mask Iris Refinement Iris Ellipse Iris Segmentation Overview assign 4 labels
Preprocessing • Removing Specular Reflections: • Select pixels of high intensity values • “Un-paint” these pixels and their immediate neighbors • Find “painted” neighbors • Iteratively interpolate grayscale values until all pixels are “painted” raw input preprocessed input
Texture Measures for Eyelash Segmentation input image • Texture: amount of image intensity variation around a pixel neighborhood • Two measures: • Point features • Points with high intensity variation in both x and y directions • Gradient magnitude • Feature points not enough due to sparseness • edges not considered as good point features • Each not enough on its own feature points gradient magnitude texture map
Texture Computation Construct a spatial histogram to compute texture scores point feature score for a pixel n : feature point weight of feature f Spatial histogram centered a pixel n (shown as a blue dot) to compute point feature score num. of bins (constant) bin weight (constant) weight of inner circle weight of outer circle set of features in the inner histogram set of features in the outer histogram h(f) = min{e1, e2}, where e1 and e2 are the eigenvalues of G(f) ( is the neighborhood of feature f)
, where Ixand Iy are the image gradients in the x and y directions. Combined texture score for a pixel n: point feature score gradient score Texture Computation (Contd.) gradient magnitude score for a pixel n : gradient magnitude at pixel j num. of bins (constant) bin weight (constant) 2r1 weight of inner circle weight of outer circle 2r2 region defined by the inner histogram region defined by the outer histogram Spatial histogram centered a pixel n (shown as a blue dot) to compute point feature score
Segmentation Using Graph Cuts [Boykov & Kolmogorov, PAMI 2004] [Boykov, Veksler & Zabih, PAMI 2001] textured regions (eyelashes) segmentation = binary labeling untextured regions (rest of the eye) Energy minimization problem: E = Edata + Esmooth penalty of assigning a label to a pixel ( computed using the texture score ) penalty between two neighboring pixels (computed from grayscale image intensities)
Iris Segmentation • assign a label to each pixel (iris, pupil or background) based on pixel intensity • grayscale histogram peaks represent the values of each label • graph cuts used to obtain smooth segmented regions Input Image Grayscale Histogram Smoothed Histogram Eyelash Segmentation Iris Segmentation
Iris Refinement input image • segmentation based on grayscale intensities may not be accurate • combine segmented iris region and a priori shape knowledge • use pupil center to estimate iris boundary points • least square ellipse fitting sampling iris boundary points initial estimate refined estimate ellipse fitting iris mask
Results Input Image Preliminary Segmentation Iris Mask Ellipse Fitting Masek’s implementation of Daugman’s algorithm pupil iris eyelashes background our approach
Quantitative Comparison Comparison of the estimated iris region ellipse parameters with the ground truth data for 60 images from the WVU non-ideal iris image database. The ground truth was obtained by manually marking the iris region. 1L.Masek and P. Kovesi. Matlab source code for biometric identification system based on iris patters.The School of Computer Science and Software Engineering, The University of Western Australia, 2003.
Conclusion • introduces a novel texture computation for eyelash segmentation • uses graph cuts to densely and explicitly segment eyelashes, iris, pupil and background • comparison with the ground truth demonstrates the accuracy of segmentation • Future work: • Handle multi-modal intensity distribution in the iris region • Reduce the overall computation time of the algorithm • Validate the segmentation procedure by performing iris recognition on known databases