relatively small number of pixels. However, quite of-
ten binarization generates several connectivity com-
ponents, as the brightness of the eyebrows or eye-
lashes may be a little different from the brightness of
the pupil or even be lower. Also eyelashes and eyelids
may merge with the pupil to form one component of
inadequate form. Therefore, the disadvantage of this
class of methods is a significant share of errors associ-
ated with the distortion of the shape of object, arising
from merging with stranger objects or removing parts
of genuine object.
The presented work attempts to combine the ad-
vantages of the method of binarization, which re-
trieves a small number of pixels of interest in the im-
age, and Hough transform, which extracts the shape
of a given type from very noisy data. On the binarized
image connectivity components are outlined, bound-
ary of each is subjected to Hough transform to find
the rounded contours. This combination of methods
is not known to the authors from literature.
2 PROBLEM STATEMENT AND
SOLUTION METHOD
Image of eye with the surrounding parts of the face
(eyebrows, nose, cheeks part) is considered. Image
is grayscale, i.e. contains only one luminosity chan-
nel. Typically it is registered in IR range. It is neces-
sary to find a circle, which is the best approximation
of the boundary between pupil and iris. The border
can be partially occluded by eyelashes, eyelids, re-
flections. Pupil is dark but not necessarily darkest ob-
ject in image, see Fig.1. Define source raster image
Figure 1: Samples of eye images.
I(x,y) = I(~p), its size is W × H pixels. It is necessary
to find coordinates and radius of circle, which approx-
imates pupil.
The workflow of method is presented in the block
diagram, see Fig.2. Now we describe it briefly and in
the following subsections more details are given.
Several thresholds of binarization B
k
are calcu-
lated from image brightness histogram (block 1).
Connectivity components corresponding to the dark
areas are outlined by binarization (block 2). For each
component its boundary and inertia moments are de-
termined (block 3). Moments of the component are
used to calculate the likelihood that pupil belongs to
a this component, then components are sorted so as
to process ones with highest likelihood first (block 4).
The boundary of each component is a cyclic sequence
of edges, see more details in section 2.7. It should be
noted that the number of border edges is substantially
smaller than their total number in the image or the
number of pixels with high brightness gradient, which
could be considered as parts of boundary. The pupil
not always has border with lighter iris only, but is of-
ten covered with eyelids and / or eyelashes that causes
distortions of two kinds: the boundary of the pupil
is visible partially; connectivity component of pupil
merges with eyelids or eyelashes (see. Fig. 1 (b)).
In this case only a small part of detected boundary
belongs to pupil, however it is necessary to deter-
mine visible part of the boundary. Hough transform
is performed (block 5), which includes construction
of beams in the accumulator starting from each pixel
of boundary perpendicular to it. As a result, if the
boundary contains circular arc, significant local max-
ima arise in the accumulator at the center of hypo-
thetical circle containing these arc. Global maximum
of accumulator corresponds to the most likely posi-
tion of the circle. To determine the radius of the cir-
cle histogram of distances from the found center to
the boundary pixels is built (block 6). Maximum of
the histogram gives the radius. Following subsections
describe steps of the method in more detail.
2.1 Estimating Binarization Thresholds
As the pupil is dark image area, it can be outlined as a
connectivity component when the binarization thresh-
old value exceeds pupil brightness and is below iris
brightness. Boundary of this connectivity component
is a pupil border. As levels of brightness of pupil and
iris are unknown a-priory, and hence the threshold di-
viding them is also unknown, several passes (denoted
their count as K) of algorithm with different thresh-
olds are performed. The values of applied thresh-
olds are determined so that the number of pixels with
brightness below the threshold is a certain fraction of
the total pixel number. For this purpose brightness
histogram is used:
h(b) = |{~p : I(~p) 6 b}| . (1)
Pupil is a dark object, so histogram part correspond-
ing to the low brightness is analysed. Shares of pix-
els α
k
, determining the binarization thresholds, are set
LocationofPupilContourbyHoughTransformofConnectivityComponents
15