next sections the software architecture of the
proposed solution is described, followed by the
presentation of the vision tools used and examples.
2 THE SOFTWARE
ARCHITECTURE
In order to rapidly develop an iris recognition
application which can be customized by the
organization, the image processing subsystem must
be accessible for modifications. Only few IPDE
have this property, and have been considered for
implementation, in the end the chosen system was
AdeptSight from multiple reasons:
• The vision system have high performances in
object localisation: 1/40 of a pixel in position,
and 0.01 degree in rotation (which allow a
precise iris, pupil and eyelid localization)
• The system has the possibility to train and edit
object models based on non connected contours
(this is the case of the iris, which in most
situations is partially occluded by the eyelid)
• The programming interface is based on visual
tools (visual programming) for rapid
development, and has also the possibility to be
integrated with high level programming
languages (C#) for complex applications.
• The system can be easily integrated with other
systems by using Ethernet, serial, or I/O lines.
(Fig. 1)
Figure 1: External device - Vision System integration.
AdeptSight uses up to four FireWire cameras
connected directly to the PC where the AdeptSight
software is installed.
The development of vision applications is based
on vision projects which have the following
structure: The vision project is separated in two
main parts, the first part handles the hardware and
the communication environment and is composed by
communication routines and configuration of system
devices like cameras (Basler, Direct Show or
Emulation – virtual camera), and other hardware
devices. The second part is represented by the vision
sequences, which compose the principal part of the
project. The sequences are composed by vision tools
connected together and which are executed step by
step in a sequence defined by the programmer. In
addition the user can develop C# programs which
interact with the AdeptSight project and extend his
functions regarding the communication with other
devices and other functions which are not
implemented in AdeptSight.
3 VISION PROJECT
IMPLEMENTATION
The vision is calibrated using a dotted pattern which
is placed in front of the camera at a distance which
approximates the distance to the subject eye. The
calibration is executed using a 2D camera calibration
wizard which guides the user step by step through
the calibration process. The single information
which the user must supply is the Dot Pitch of the
calibration pattern, the rest of the process is handled
by the wizard. After the 2D camera calibration the
following information’s are obtained:
• Average Pixel Width/Height
• The lens distortions are corrected
• The perspective distortion is also corrected
After the 2D camera calibration, the sequence
can be loaded into the project, and for this
application the sequence is very simple and consists
on the following vision tools, an acquisition tool
which obtain the image from the camera, a set of
two localization tools named Locator(s) which have
the role to recognize the pupil and the iris
boundaries, and a set of two locators which will
detect the eyelid boundaries, which are required in
order to obtain only the iris valid image date.
In this application the difficulty is to detect the
correct boundaries of the iris disregarding the outer
irregularities which are generated by the contrast
between the iris and sclerotic membrane and the
eyelids.
Fig. 2 presents the interface for model editing.
The system, based on the contrast threshold, and the
outline and detail levels detect the contours and
proposes the user a set of contours for model
building. The outline level provides a coarser level
of contours than the detail level. The location
ICINCO 2011 - 8th International Conference on Informatics in Control, Automation and Robotics
334