an analysis of iriscode

11
522 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 19, NO. 2, FEBRUARY 2010 An Analysis of IrisCode Adams W. K. Kong, Member, IEEE, David Zhang, Fellow, IEEE, and Mohamed S. Kamel, Fellow, IEEE Abstract—IrisCode is an iris recognition algorithm developed in 1993 and continuously improved by Daugman. It has been exten- sively applied in commercial iris recognition systems. IrisCode rep- resenting an iris based on coarse phase has a number of proper- ties including rapid matching, binomial impostor distribution and a predictable false acceptance rate. Because of its successful appli- cations and these properties, many similar coding methods have been developed for iris and palmprint identification. However, we lack a detailed analysis of IrisCode. The aim of this paper is to pro- vide such an analysis as a way of better understanding IrisCode, extending the coarse phase representation to a precise phase rep- resentation, and uncovering the relationship between IrisCode and other coding methods. Our analysis demonstrates that IrisCode is a clustering algorithm with four prototypes; the locus of a Gabor function is a 2-D ellipse with respect to a phase parameter and can be approximated by a circle in many cases; Gabor function can be considered as a phase-steerable filter and the bitwise hamming distance can be regarded as a bitwise phase distance. We also dis- cuss the theoretical foundation of the impostor binomial distribu- tion. We use this analysis to develop a precise phase representation which can enhance accuracy. Finally, we relate IrisCode and other coding methods. Index Terms—Biometrics, Daugman algorithm, Gabor filter, iris recognition, palmprint recognition, phase. I. INTRODUCTION V ARIOUS biometric systems have been developed for gov- ernmental and commercial applications. Most of these systems can verify, 1-to-1 match or identify a person in a small database, 1-to-many match. Real time large-scale identification is still a challenging problem in terms of matching speed and accuracy. Of existing biometric technologies, 1 IrisCode devel- oped in 1993 and continuously improved by Daugman [1]–[4] is able to identify a person in an extremely large database in real time. Although recently there has been some debate as to Manuscript received March 25, 2009; revised September 08, 2009. First pub- lished October 02, 2009; current version published January 15, 2010. The as- sociate editor coordinating the review of this manuscript and approving it for publication was Dr. Kenneth K. M. Lam. A. W. K. Kong is with the Forensics and Security Laboratory, School of Computer Engineering, Nanyang Technological University, Singapore, 639798 (e-mail: [email protected]). D. Zhang is with Biometrics Research Centre Department of Computing, The Hong Kong Polytechnic University Kowloon, Hong Kong (e-mail: [email protected]). M. S. Kamel is with the Pattern Analysis and Machine Intelligence Research Group, University of Waterloo, ON N2L 3G1 Canada (e-mail: mkamel@uwa- terloo.ca) Color versions of one or more of the figures in this paper are available online at http://ieeexplore.ieee.org. Digital Object Identifier 10.1109/TIP.2009.2033427 1 In this paper, IrisCode is used interchangeably to refer to both the method and features of iris recognition developed by Daugman. Recently, this method has also been called the Daugman algorithm. the accuracy of IrisCode [5], IrisCode has been extensively de- ployed in commercial iris recognition systems for various secu- rity applications and more than 50 million persons have been enrolled using IrisCode. Following the key idea of IrisCode, re- searchers have developed different coding methods for use in iris and palmprint recognition [6]–[18], [27]. We now give a brief computational summary for those who are not familiar with IrisCode. Two-dimensional Gabor filters with zero DC are applied to an iris image in a dimensionless polar coordinate system, . The complex Gabor response is encoded into two bits by using the following inequalities [see (1)–(4), shown at the bottom of the next page], where , , , and are the parameters of the Gabor filters [2]. The bitwise hamming distance is used to measure the difference between two IrisCodes. The first version of the bitwise hamming distance is defined as , where and are the bits in two IrisCodes and represents the bitwise operator, XOR. The current IrisCode uses a mask to exclude the corrupted bits from eyelashes, reflection, eyelids, and low signal-to-noise ratio [2]. The hamming distance between two IrisCodes is redefined as (5) where and are respectively the masks of IrisCodes and and represents bitwise operator AND. The desirable qualities of IrisCode are well known. It is ro- bust against local brightness and contrast variations because of the zero DC Gabor filters and the coding scheme. In ro- tating between any adjacent phase quadrants, only a single bit in IrisCode changes and this can enhance the robustness of the genuine distribution. In rotating between one phase quadrant to the opposite phase quadrant, both two bits in IrisCode change, which is to say that the distances between phase quadrants are retained. We refer to this representation as cyclic representa- tion. Another well-known property of IrisCode is that it pro- duces a binomial impostor distribution with high degrees-of- freedom (which does not necessarily imply high accuracy [30]). Making use of this property, the decision threshold is dynami- cally changed according to a predictable false acceptance rate from the binomial impostor distribution. Some researchers have developed an iris individuality model [24] based on the binomial impostor distribution. The key to high speed matching is the bit- wise hamming distance. IrisCode can perform one million com- parisons per second using a computer with a 3 GHz processor. This speed can be further improved by applying Beacon Guided Search [20]. 1057-7149/$26.00 © 2010 IEEE Authorized licensed use limited to: K.S. Institute of Technology. Downloaded on March 01,2010 at 00:15:18 EST from IEEE Xplore. Restrictions apply.

Upload: ankita-verma

Post on 14-Apr-2015

29 views

Category:

Documents


1 download

DESCRIPTION

all about iris code.. ieee paper

TRANSCRIPT

Page 1: An Analysis of Iriscode

522 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 19, NO. 2, FEBRUARY 2010

An Analysis of IrisCodeAdams W. K. Kong, Member, IEEE, David Zhang, Fellow, IEEE, and Mohamed S. Kamel, Fellow, IEEE

Abstract—IrisCode is an iris recognition algorithm developed in1993 and continuously improved by Daugman. It has been exten-sively applied in commercial iris recognition systems. IrisCode rep-resenting an iris based on coarse phase has a number of proper-ties including rapid matching, binomial impostor distribution anda predictable false acceptance rate. Because of its successful appli-cations and these properties, many similar coding methods havebeen developed for iris and palmprint identification. However, welack a detailed analysis of IrisCode. The aim of this paper is to pro-vide such an analysis as a way of better understanding IrisCode,extending the coarse phase representation to a precise phase rep-resentation, and uncovering the relationship between IrisCode andother coding methods. Our analysis demonstrates that IrisCode isa clustering algorithm with four prototypes; the locus of a Gaborfunction is a 2-D ellipse with respect to a phase parameter and canbe approximated by a circle in many cases; Gabor function canbe considered as a phase-steerable filter and the bitwise hammingdistance can be regarded as a bitwise phase distance. We also dis-cuss the theoretical foundation of the impostor binomial distribu-tion. We use this analysis to develop a precise phase representationwhich can enhance accuracy. Finally, we relate IrisCode and othercoding methods.

Index Terms—Biometrics, Daugman algorithm, Gabor filter, irisrecognition, palmprint recognition, phase.

I. INTRODUCTION

V ARIOUS biometric systems have been developed for gov-ernmental and commercial applications. Most of these

systems can verify, 1-to-1 match or identify a person in a smalldatabase, 1-to-many match. Real time large-scale identificationis still a challenging problem in terms of matching speed andaccuracy. Of existing biometric technologies,1 IrisCode devel-oped in 1993 and continuously improved by Daugman [1]–[4]is able to identify a person in an extremely large database inreal time. Although recently there has been some debate as to

Manuscript received March 25, 2009; revised September 08, 2009. First pub-lished October 02, 2009; current version published January 15, 2010. The as-sociate editor coordinating the review of this manuscript and approving it forpublication was Dr. Kenneth K. M. Lam.

A. W. K. Kong is with the Forensics and Security Laboratory, School ofComputer Engineering, Nanyang Technological University, Singapore, 639798(e-mail: [email protected]).

D. Zhang is with Biometrics Research Centre Department of Computing,The Hong Kong Polytechnic University Kowloon, Hong Kong (e-mail:[email protected]).

M. S. Kamel is with the Pattern Analysis and Machine Intelligence ResearchGroup, University of Waterloo, ON N2L 3G1 Canada (e-mail: [email protected])

Color versions of one or more of the figures in this paper are available onlineat http://ieeexplore.ieee.org.

Digital Object Identifier 10.1109/TIP.2009.2033427

1In this paper, IrisCode is used interchangeably to refer to both the methodand features of iris recognition developed by Daugman. Recently, this methodhas also been called the Daugman algorithm.

the accuracy of IrisCode [5], IrisCode has been extensively de-ployed in commercial iris recognition systems for various secu-rity applications and more than 50 million persons have beenenrolled using IrisCode. Following the key idea of IrisCode, re-searchers have developed different coding methods for use iniris and palmprint recognition [6]–[18], [27].

We now give a brief computational summary for those whoare not familiar with IrisCode. Two-dimensional Gabor filterswith zero DC are applied to an iris image in a dimensionlesspolar coordinate system, . The complex Gabor responseis encoded into two bits by using the following inequalities [see(1)–(4), shown at the bottom of the next page], where , , ,

and are the parameters of the Gabor filters [2]. The bitwisehamming distance is used to measure the difference betweentwo IrisCodes. The first version of the bitwise hamming distanceis defined as , where and

are the bits in two IrisCodes and represents the bitwiseoperator, XOR. The current IrisCode uses a mask to excludethe corrupted bits from eyelashes, reflection, eyelids, and lowsignal-to-noise ratio [2]. The hamming distance between twoIrisCodes is redefined as

(5)

where and are respectively the masks of IrisCodesand and represents bitwise operator AND.

The desirable qualities of IrisCode are well known. It is ro-bust against local brightness and contrast variations becauseof the zero DC Gabor filters and the coding scheme. In ro-tating between any adjacent phase quadrants, only a single bitin IrisCode changes and this can enhance the robustness of thegenuine distribution. In rotating between one phase quadrant tothe opposite phase quadrant, both two bits in IrisCode change,which is to say that the distances between phase quadrants areretained. We refer to this representation as cyclic representa-tion. Another well-known property of IrisCode is that it pro-duces a binomial impostor distribution with high degrees-of-freedom (which does not necessarily imply high accuracy [30]).Making use of this property, the decision threshold is dynami-cally changed according to a predictable false acceptance ratefrom the binomial impostor distribution. Some researchers havedeveloped an iris individuality model [24] based on the binomialimpostor distribution. The key to high speed matching is the bit-wise hamming distance. IrisCode can perform one million com-parisons per second using a computer with a 3 GHz processor.This speed can be further improved by applying Beacon GuidedSearch [20].

1057-7149/$26.00 © 2010 IEEE

Authorized licensed use limited to: K.S. Institute of Technology. Downloaded on March 01,2010 at 00:15:18 EST from IEEE Xplore. Restrictions apply.

Page 2: An Analysis of Iriscode

KONG et al.: ANALYSIS OF IRISCODE 523

It is generally believed that the cores of IrisCode are the oper-ators, “ ” and “ ” in (1)–(4) and the bitwise hamming distance.These two operators allow each feature value to be representedby one bit then two encoded features are compared using the bit-wise hamming. Researchers replace the Gabor filters in IrisCodewith different filters and transformations including2 quadraticspline wavelet, Haar wavelet frame, log Gabor filters, indepen-dent component analysis, directional filter banks and dissoci-ated tripole filters [10]–[18] to develop new coding methods foriris recognition. Based on this understanding, some researchersclaim that IrisCode is a local ordinal feature [11]. Some re-searchers further believe that the impostor distribution of theircoding method also follows a binomial distribution [19]. How-ever, this understanding of IrisCode is incomplete and limits thedesign of new coding schemes for feature representation. Oneweakness of this understanding is that each filter response or co-efficient provides only one bit of information. It lacks represen-tational flexibility. Furthermore, some claims are controversial.Developing an iris individuality model with a solid theoreticalfoundation also requires a complete understanding [24].

A detailed analysis of IrisCode is important for understandingIrisCode, for designing new coding schemes, and for clarifyingthe relationship between IrisCode and other coding methods.Nevertheless, such an analysis has not been found in the lit-erature. In this paper, we investigate the relationship betweenIrisCode and clustering algorithms, the property of the Gaborfunction, and the relationship between the bitwise hamming dis-tance and bitwise phase distance. We also discuss the theoreticalfoundation of the binomial impostor distribution. Making use ofthis analysis, we develop an algorithm for precise phase repre-sentation with effective filtering and matching. Finally, we studythe relationship between IrisCode and other coding methods.

The rest of this paper is organized as follows. Section II de-scribes the properties of IrisCode from the point of view of clus-tering. Section III presents an algorithm for precise phase repre-sentation. Section IV discusses the theoretical basis for the bi-nomial impostor distribution. Section V shows the relationship

2The coding scheme in [10] does not explicitly use the two operators, “�”and “�”. In fact, it can be rewritten based on these two operators. Readers canrefer Appendix A.

between IrisCode and different coding methods. Section VI of-fers some concluding remarks.

II. UNDERSTANDING IRISCODE FROM A CLUSTERING

POINT OF VIEW

In this section, we demonstrate that IrisCode is a clusteringalgorithm and study the properties of the Gabor function. The re-lationship between bitwise hamming distance and bitwise phasedistance is presented in Section III.

A. IrisCode—A Clustering Algorithm

Let and be the real and imaginary parts ofa Gabor filter. For convenience, we use to denote .We use the same notations for other symbols. The definitions of

and are as follows:

(6)

(7)

We do not remove the DC term of the Gabor filter in (6) since inthis paper we assume that the DC of the iris patch for filteringhas been removed.

We define a continuous periodic function

(8)

with respect to the phase parameter, , where .is called a filter-generating function. Using , we can obtainfour filters by substituting , , , and to . Thefour filters are

(9)

(10)

(11)

(12)

(1)

(2)

(3)

(4)

Authorized licensed use limited to: K.S. Institute of Technology. Downloaded on March 01,2010 at 00:15:18 EST from IEEE Xplore. Restrictions apply.

Page 3: An Analysis of Iriscode

524 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 19, NO. 2, FEBRUARY 2010

Fig. 1. Four filters used in IrisCode, (a) � , (b) � , (c) � and (d) � .

TABLE ICOMPARISON OF IRISCODE, WINNING INDEX AND CODED WINNING INDEX

These four filters are shown in Fig. 1 and will later be re-garded as the cluster centers. We define

(13)

as a clustering criterion, where is calledthe winning index and is the iris image in the

dimensionless polar coordinate system. It is equiva-lent to the cosine measure between and , i.e.,

since the fourfilters have the same power, i.e., , where

is a constant, which can be proved by using the orthogonalproperty between and , i.e., .The winning index is an integer representation of . For fastmatching, we have to encode the winning index. Table I givesthe coding table under the heading “Coded winning indexes”.The difference between two encoded winning indexes is alsomeasured by their bitwise hamming distance, as in IrisCode.Table I compares bits of IrisCode and the binary representationof the winning indexes, demonstrating their equivalence. In theother words, IrisCode is a clustering algorithm and the cosinemeasure is the clustering criterion.

B. Properties of the Gabor Function

Let us study the physical meaning of in the filter generatingfunction. Reordering the terms in (8), can be rewritten as

(14)It is clear that is the phase of a Gabor function and the filtergenerating function can be rewritten as a Gabor function. Ac-cording to (9)–(12) and (14), it is very clear that IrisCode is aperiodic feature.

Next, we study the locus of the filter generating function,also the Gabor function in (14) with respect to the phase pa-rameter. We discretize , and to obtain three vectors,

, and , respectively, and define two orthonormal

vectors, and . Using these

two vectors, can be rewritten as

(15)

a linear combination of and . The coordinateof in the 2-D space spanned by and is

satisfying the followingequality:

(16)

Obviously, the locus of with respect to is an ellipseon the 2-D space. In fact, the locus can be further constrained.Under suitable parameterization, it is a circle. The mathemat-ical proof is given in Appendix B. Even if the condition in Ap-pendix B cannot be fulfilled, the locus of can be approxi-mated by a circle in many applications of Gabor filters becausetheir is approximately equal to their [33].

III. PRECISE PHASE REPRESENTATION ALGORITHM

To design a precise phase representation, we begin by takingmore sample points from the filter generating function to gen-erate more prototypes for the clustering algorithm. We use uni-form sampling to obtain the filters, i.e.,3 , where

and is an offset. For the design of bitwisephase distance, the number of prototypes is set to , where iscalled the order of the coding scheme. For IrisCode, is 2 andis . It should be noted that the clustering criterion based onthe cosine measure is independent of the contrast of the image.The brightness of the iris is normalized. To embed other inherentproperties of IrisCode such as rapid matching and cyclic repre-sentation, we have to design a novel coding scheme to encodethe winning indexes and a distance measure for rapid matching.In the following subsections, we ignore the offset without lossof generality.

A. Phase Distance

Since is on a 2-D ellipse and is the phase, the distancebetween and can be measured by the phase distancebetween and defined as .If we use uniform sampling to obtain and , i.e.,

and where and are two integersbetween 0 and , the phase distance can be rewritten as

. The phase distancecan be further simplified as

(17)

if is defined as one unit distance. As a result, the phasedistance between and is defined only based ontheir winning indexes, and , the integer presentation of their

3Please note the � in ������ � �� is not���.

Authorized licensed use limited to: K.S. Institute of Technology. Downloaded on March 01,2010 at 00:15:18 EST from IEEE Xplore. Restrictions apply.

Page 4: An Analysis of Iriscode

KONG et al.: ANALYSIS OF IRISCODE 525

Fig. 2. Pseudo code of the coding table.

TABLE IICODING TABLES FOR (a) � � � AND (b) � � �

phases. The phase distance between any two adjacent winningindexes is 1, as in IrisCode. The cyclic representation has beenembedded in the precise phase representation.

B. Bitwise Matching and Coding Scheme

The bitwise hamming distance supporting high speedmatching is one of the keys to large-scale iris identification inreal time. However, the winning index and phase distance in(17) are integer representations. To embed high speed matchingin the precise phase representation, we have to design a newcoding scheme to encode the integer winning indexes and todevelop a bitwise phase distance. A coding table isdesigned for this purpose, where ; and

is defined as in Fig. 2.For illustration, Table II shows two coding tables for

and 4. These tables have a structure where each winning indexis represented by the column of with the result that bits areused to encode one winning index.

It should be noted that when and , the bitwisewinning indexes form a4 cyclic code [25] and a gray code. How-ever, when is greater than two, the bitwise winning indexes donot form a cyclic code since cyclically shifting a bitwise winningindex can generate a code that does not exist in the coding table.For instance, (1 0 0) is a code in Table II(a) but (0 1 0) does notexist in this table. They also do not form a gray code since graycode uses bits to represent integers. For example, (1 0 1)is a code in gray code but it does not exist in Table II(a). Cycliccode and gray code are not essential properties for precise phaserepresentation since we have embedded cyclic representation init.

When is greater than two, the coding scheme does not fullyutilize the code space. Only code words in the space are used.This design is to ensure that adjacent phases are encoded with

4The definitions of cyclic code [25] and cyclic representation are different.

code words in which only one bit has changed, thus maintaininga distance metric.

To achieve high speed matching, we need a bitwise matchingfor the encoded winning indexes. We discover that phase dis-tance and bitwise hamming distance have an equivalent relation-ship, i.e., . The mathe-matical proof is given in Appendix C. We refer to this bitwisehamming distance for precise phase representation as the bit-wise phase distance since it measures the phase difference be-tween two prototypes in the 2-D ellipse.

C. Phase-Steerable Filtering

We have developed an algorithm for precise phase repre-sentation that embeds the properties of IrisCode including fastmatching and cyclic representation. In the scheme we havepresented so far, the number of filters needed would haveto increase with the desired precision of the extracted phaseinformation. Namely, filters would be needed if the desiredphase precision is bits. However, now we will show thatonly the two cardinal filters and are actually required,regardless of the desired phase precision, because Gabor filtersare phase-steerable.

Let us consider the clustering criterion,,

where is independent of and can beprecomputed. These two terms would not dramatically increasethe computational burden even when is large. The majorcomputation cost comes from .

Substituting (8) into , we have

(18)

Equation (18) shows that is a phase-steerable filter[31] and we need only two filters, and for anyprecision of the phase. We have successfully reducedthe computation complexity of filtering from to

. If the locus of is a circle, the solution phase,can be computed

by . Themathematical proof is given in Appendix D. If the locusof is not a circle, can still be approximated by

and their

error bound is ,where . The mathematical proof is givenin [33].

D. Re-Implementation of IrisCode

To evaluate the performance of precise phase representation,we re-implemented IrisCode including pupil, limbus, andeyelid detection, eyelash segmentation, normalization, coding

Authorized licensed use limited to: K.S. Institute of Technology. Downloaded on March 01,2010 at 00:15:18 EST from IEEE Xplore. Restrictions apply.

Page 5: An Analysis of Iriscode

526 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 19, NO. 2, FEBRUARY 2010

Fig. 3. Iris images in WVU iris database.

and matching for comparison. Accurately re-implementingIrisCode is highly difficult since it is a complex computervision system. Moreover, previously published work has not inevery case clearly disclosed all details e.g., the computationaldetails involved in eyelid detection. Further, since our re-imple-mentation made use of the West Virginia University (WVU) irisdatabase, which contains many challenging images, it was nec-essary to make a number of modifications in the preprocessing.Some examples are shown in Fig. 3. In the following, we firstdescribe iris segmentation, then normalization and filtering,and then matching. Our results are discussed in Section III-E.

1) Iris Segmentation: In our re-implementation, we first esti-mate the location of the specular reflections and scrub them. Tolocalize a pupil boundary, we then apply the integro-differentialoperator,reported in Daugman’s publications. This boundary is usedto initialize an active contour that can be used to accuratelyestimate the pupil boundary [3].

The original integro-differential operator for localizing alimbus boundary is separated to two integro-differential opera-tors. One is for the left limbus boundary and the other is for theright limbus boundary. We also modify the integro-differentialoperator as follows:

(19)

where is the left or right circular path controlled by , and, is the length of and is a weighting function.

The purpose of using two integro-differential operators is tohandle the images captured under very uneven lighting environ-ments [e.g., Fig. 3(c)]. If the two boundaries have similar radiiand centers, the center of mass of the two boundaries is regardedas the center of the limbus and the average distance between thecenter of mass and the two boundaries is regarded as the radiusof the limbus; otherwise, we apply the integro-differential oper-ator again on the weaker boundary and limit the searching spaceby the parameters of the stronger boundary. Then, an active con-tour is used to accurately estimate the limbus boundary [3].

Fig. 4. Segmented iris.

To detect potential points of eyelids, a set of classifiers is sentto different locations. The locations of the classifiers depend onthe parameters of the limbus and pupil. Then, ordinal statisticsis employed to retain partial detected points for curve fitting.Daugman does not, as is widely believed, use the integro-differ-ential operator to detect eyelids, but the details of the algorithmhave not been disclosed [26]. A statistical test and some priorknowledge are used to segment the eyelashes [4], [21]. Fig. 4shows a segmented iris.

2) Normalization and Filtering: We use the dimensionlesspolar coordinate system to normalize an iris. Many researchersdisplay the normalized iris as a rectangular sheet. Strictlyspeaking, the normalized iris is the surface of a cylinder and ithas only two cuts from the pupil and limbus boundaries. Thesize of a normalized iris is 64 512 pixels.

We use sixteen Gabor filters with different parameters, de-termined by 300 different iris images to extract phase infor-mation. In parameter training, we have Gabor filters of twosizes, 8 by 105 and 24 105 pixels. The smaller one is ap-plied to the sample points close to pupil and limbus boundaries.

The index defined as , where

and are the mean and variance of a genuine (im-postor) distribution, is employed as the objective function fortraining. This index measures the degree of separation betweenthe two distributions in units of their standard deviations, and,thus, it is analogous to Z-scores, Fisher scores, and other ways ofmeasuring separation between distributions, which a biometricsystem aims to optimize.

In the training, we first select one set of parameters for theGabor filter closest to the pupil boundary. Then we retain thefirst optimized parameters and select another set of parametersfor the same sample points. The other sets of parameters are se-lected in the same way. We independently optimize the param-eters of precise phase representation with different orders.

3) Matching: A raw hamming distance is com-puted from (5). The number of effective bit matchings is dif-ferent in each comparison because of eyelashes and eyelids.To obtain the same decision confidence, Daugman rescales thehamming distance with the following equation:

(20)

Authorized licensed use limited to: K.S. Institute of Technology. Downloaded on March 01,2010 at 00:15:18 EST from IEEE Xplore. Restrictions apply.

Page 6: An Analysis of Iriscode

KONG et al.: ANALYSIS OF IRISCODE 527

Fig. 5. Validation of precise phase representation.

where is the number of actually compared bits and 960 is theaverage number of actually compared bits [3]. For precise phasepresentation, normalized hamming distance is defined as

(21)

where is the order of the coding scheme.

E. Experimental Results

The WVU iris database contains 3,099 iris images from 472irises.5 The first 300 images were used to train the parameters.The remainders were used in testing. In the following experi-ments, we will use the Equal Error Rate (EER) and ReceiverOperating Characteristic (ROC) curves as performance indexes.

Using the WVU database [32], Ross and Shah use geodesicactive contours for segmentation and achieve an EER of 12.03%when matching left irises and an EER of 14.19% when matchingright irises. They also examine Masek’s approach [19] and re-port EERs of 13.51% when matching left irises and 13.07%when matching right irises. Furthermore, they implement in-tegro-differential operators for comparison and report EERs of35.0% when matching left irises and 33.4% when matchingright irises. These approaches can achieve EERs in the rangeof 1.9% and 4.29% in the CASIA-1 iris database. These resultsshow clearly that the WVU iris database contains large numbersof low quality iris images.

1) Validation of Precise Phase Representation: To validatethe precise phase representation, we design the following exper-iment. When , the performance of precise phase represen-tation and IrisCode should be the same. Fig. 5 shows the ROCcurves of IrisCode and precise phase representation with order2. As the theoretical predication, the two curves overlap com-pletely. The EER of matching left irises is 1.5% and the EERof matching right irises is 1.3%. Compared with the previouslyreported EERs on this database, the quality of our re-implemen-tation should be acceptable.

5Some mislabeled images are corrected by the authors

Fig. 6. ROC curves of IrisCode and precise phase representation for � � 3, 4,and 5.

2) Comparison of IrisCode and Precise Phase Representa-tion: To examine the effectiveness of precise phase representa-tion, we compare IrisCode and precise phase representation for

3, 4, and 5. We match iris images from the same eyes andfrom different eyes to respectively obtain 9,224 genuine match-ings and 3,906,518 impostor matchings for each representation.The genuine and impostor matchings are used to estimate thegenuine and impostor distributions. From the ROC curves inFig. 6 we can see that the precise phase representation of order5 is always the most accurate with an EER of 1.1%. ComparingIrisCode and precise phase representation of order 5, precisephase representation of order 5 has 1.7% improvement in gen-uine acceptance rate when the false acceptance rate is .

In our own previous work using the CASIA-1 database, wehad found that the precise phase representation of order 5 doesnot perform better than the precise phase representation of order4 [28]. On this database, however, increasing the precision ofphase always improves the accuracy. This is because the pa-rameters of Gabor filters in precise phase representation of dif-ferent orders are optimized independently for the WVU data-base. Fig. 7 shows the ROC curves of matching left and rightirises.

It should be noted that the matching speed of precise phaserepresentation is slower than IrisCode. The matching speed ofprecise phase representation of order can be estimated by

, where is the matching speed (in the unit ofnumber of matching per second) of the precise phase represen-tation and is the matching speed of IrisCode. IrisCode usesonly two bits to represent one filter response while precise phaserepresentation of order requires bits to represent one filterresponse. For some applications such as identifying a person ina residential building for access control, one million compar-isons per second is much more than enough. We can use precisephase representation to achieve high accuracy for these appli-cations. Although the WVU iris database contains many lowquality iris images of the sort that may be acquired in less con-trolled environments (e.g., iris on the move) [29], precise phaserepresentation is effective on these images. We cannot claim thatprecise phase representation is more accurate than IrisCode as

Authorized licensed use limited to: K.S. Institute of Technology. Downloaded on March 01,2010 at 00:15:18 EST from IEEE Xplore. Restrictions apply.

Page 7: An Analysis of Iriscode

528 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 19, NO. 2, FEBRUARY 2010

Fig. 7. ROC curves of IrisCode and precise phase representation for � � 3, 4,and 5. (a) Matching left irises and (b) matching right irises.

these identification algorithms are intended for use on databasesof different sizes but we can say that precise phase representa-tion does allow us to balance speed and accuracy.

IV. THEORETICAL FOUNDATION OF BINOMIAL

IMPOSTOR DISTRIBUTION

In the previous sections, we used a number of properties ofIrisCode to develop an algorithm for precise phase representa-tion with effective filtering and rapid matching. However, wehave not touched upon the binomial impostor distribution inIrisCode which is used to predict the false acceptance rate underdifferent thresholds and different matching condition such as thevariation in the number of actually compared bits. The binomialimpostor distribution of IrisCode has been experimentally vali-dated on a large database [3].

In practice, the impostor distribution of IrisCode is binomial.Since all of the feature values of similar coding methods in-cluding our precise phase representation designed for iris andpalmprint [6]–[18], [27] are binary and two feature codes arecompared using a hamming distance, some might also expectthat the impostor distributions of these coding methods wouldalso follow a binomial distribution.

Let us review the three assumptions of a binomial distribu-tion. A random variable following a binomial distributionshould satisfy the following conditions.

1) X is defined as , where is a Bernoulli variable.2) All has the same probabilities of success, .3) All are independent.

We refer to (2) as a stationary condition and (3) as an indepen-dent condition. Obviously, the hamming distances of IrisCodeand other coding methods satisfy condition (1). Daugman val-idated condition (2) in 1993 [1]. However, all coding methodsviolate the independent condition because of correlationsamong texture features, and because of correlations introducedby the bandlimited filters. If the sum of correlated and stationaryBernoulli variables followed a binomial distribution uncondi-tionally, the impostor distributions of all coding methods wouldhave to be binomial. However, no such mathematical theoremhas been discovered. Even if the correlation is of the firstorder Markovian type, the distribution of the sum of correlatedstationary Bernoulli trails can be bimodal and trimodal shapes[22], [23]. As a result, we cannot guarantee that the impostordistributions of the other coding methods and precise phaserepresentation also follow binomial distributions.

V. RELATIONSHIP BETWEEN IRISCODE AND OTHER

CODING METHODS

Many coding methods have been developed for iris and palm-print identification that are quite similar [6]–[18], [27]. The mostcommon approach is to replace the Gabor filters in IrisCodewith other linear transforms or filters. According to this anal-ysis, IrisCode is a clustering with four prototypes. As it hap-pens, most the other coding methods can also be regarded asclustering algorithms but with two prototypes. Let us formallydefine these approaches. Let be a linear filter used in theircoding methods. Their coding schemes can be summarized inthe following equations:

(22)

(23)

where is a resultant bit. We refer to this coding scheme asa standard coding scheme. To uncover the relationship betweenIrisCode and the standard coding scheme, we define a filter gen-erating function , where . This filter gen-erating function can generate only two filters, and . Sincethese two filters have the same power, i.e., , theclustering criterion can be rewritten as

(24)

If , then we haveand . If , we have

and . Using the first order

Authorized licensed use limited to: K.S. Institute of Technology. Downloaded on March 01,2010 at 00:15:18 EST from IEEE Xplore. Restrictions apply.

Page 8: An Analysis of Iriscode

KONG et al.: ANALYSIS OF IRISCODE 529

Fig. 8. Common framework employed by most of the existing coding methods.

coding scheme defined in Fig. 2 to encode the winning index ,we obtain (22) and (23).

In addition to the standard coding scheme, other codingmethods based on Gabor filters and log Gabor filters employthe order 2 coding scheme in precise phase representation[12], [15]. The authors also develop a Competitive Code forpalmprint identification [8]. Its filter generating function isthe negative real part of a Gabor function. We assign differentvalues to the orientation parameter so as to generate six filtersand use order 3 coding scheme to encode the winning indexes.We employ bitwise phase (angular [8]) distance to measure twodifferent Competitive Codes.

The standard coding method, IrisCode, and CompetitiveCode respectively employ the order 1, 2, and 3 coding schemesin precise phase representation. Their differences are in theirfilter generating functions. Most coding methods includingstandard coding method, IrisCode, Competitive Code andprecise phase representation are under the same frameworkgiven in Fig. 8. The cores of this framework include filtergenerating function, clustering, coding scheme and bitwisephase matching. It is worth to mention that both loci of thefilter generating functions of the standard coding method andIrisCode are always on 2-D planes. However, the locus of thefilter generating function of Competitive Code is on a higherdimensional plane.

VI. CONCLUSION

The IrisCode first appeared sixteen years ago yet to ourknowledge this is the first paper to provide a detailed analysisof this method. The analysis made here makes a number ofcontributions. It presents a complete analysis of IrisCode,demonstrating that IrisCode is a clustering algorithm and thatthe locus of a Gabor function is on a 2-D ellipse with respect tothe phase parameter. It also proves the equivalent relationshipbetween the bitwise hamming distance and bitwise phasedistance and shows that Gabor function can be considered as aphase-steerable filter. It then uses these properties and this re-lationship to develop a precise phase representation algorithm.This algorithm inherits the properties of IrisCode includingrobustness against brightness and contrast variations and rapidmatching based on bitwise operators and cyclic representation.Our experiments have shown that given the same quality ofpreprocessing precise phase representation is more accuratethan IrisCode. Precise phase representation is a flexible repre-sentation for balancing the tradeoff between matching speedand identification accuracy. This paper has also discussedtheoretical issues regarding the binomial impostor distribution

Fig. 9. Illustration of Ma et al.’s feature transform.

of IrisCode and other coding methods. Finally, using the filtergenerating function and the coding scheme defined in thisstudy, we have shown the relationships between IrisCode andother iris and palmprint recognition coding methods.

APPENDIX A

The appendix shows that the coding method in [9] is basedon the operators “ ” and “ ” and hamming distance.

Ma et al. first apply a quadratic spline wavelet to decom-pose the 1-D iris signals into several scales but only two scalesare used in the their feature extraction process. Ma et al. thelocations, , and types of all the local extremum points (min-imum and maximum points) as features. To obtain stable fea-ture points, they remove pairs of adjacent points having an am-plitude difference smaller than a predetermined threshold. Sincethere are only two types of extremum points and since two adja-cent points of a maximum point must be minimum points, justone pointer, , will suffice to denote all the type information inscale . The pointer, , is set to 1 if the first extremum point is aminimum point; otherwise is set to . Finally, for each de-composed signal , the pointers and locations of feature pointsare stored as the following form:

(25)To exploit XOR operations for effective matching, as inIrisCode, the original features in each scale are transformedinto a binary feature vector of a fixed length, . Fig. 9 illustratesthis process, which is called feature transform. If is ,the first components in the binary feature vector areset to 0; otherwise they are set to 1. Then, all the componentsin the binary feature vector corresponding to maximum andminimum points are set to 0 and 1, respectively. All the othercomponents between and are set to 0 if correspondsto a maximum point; otherwise, they are set to 1.

Authorized licensed use limited to: K.S. Institute of Technology. Downloaded on March 01,2010 at 00:15:18 EST from IEEE Xplore. Restrictions apply.

Page 9: An Analysis of Iriscode

530 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 19, NO. 2, FEBRUARY 2010

This coding scheme is more complicated than other codingschemes but is very similar to the standard coding scheme de-fined in (22) and (23). To demonstrate the relationship betweenthe coding scheme of Ma et al. and other coding schemes, weapply a process to , the wavelet transformed signal, to obtaina signal for coding based on “ ” and “ ”. Each extremumpoint in has a corresponding extremum point in with thesame type, location and amplitude but the amplitude differencebetween each pair of adjacent extremum points in has to belarger than the predetermined threshold. A simple way to obtain

is to interpolate the extremum points in (25). Since the max-imum and minimum points in correspond to the zero-cross-ings in , their coding scheme can be rewritten as follows:

then

otherwise

Therefore, the Ma et al. coding scheme can be rewritten basedon the operators “ ” and “ ” and can be considered as standardcoding scheme.

APPENDIX B

Equation (16) demonstrates that the locus of is an el-lipse with respect to . In fact, the locus can be further con-strained. Under suitable parameterization, it is a circle. Math-ematically, , where .See the equations shown at the bottom of the page. Since ,

, and are greater than zeros, is always

greater than zero. However,

APPENDIX C

This appendix shows the equivalent relationship between thebitwise hamming distance and the phase distance in (17).

Let two winning indexes be , and , where. Their phase distance is .

Using the coding scheme given in Fig. 2, the winning indexesare represented by and column vectors of matrix .We would like to prove

Since all are either zero or one,

Case 1:If andFrom the definition of , we know

Case 2:If andAs in Case 1, we know

Case 3:If and and

Consider and (26)

From the definition of , we have and

Then,The number of satisfying condition (26) is

(27)

Since ,

Consider and (28)

Authorized licensed use limited to: K.S. Institute of Technology. Downloaded on March 01,2010 at 00:15:18 EST from IEEE Xplore. Restrictions apply.

Page 10: An Analysis of Iriscode

KONG et al.: ANALYSIS OF IRISCODE 531

From the definition of , we have andThenThe number of satisfying condition (28) is

(29)

Since ,Thus,

Case 4:If and and

Consider and (30)

From (27), number of satisfying (30) is

Since ,

Consider and (31)

From (29), number of satisfying (31) is

Since ,Thus,Thus, for Cases 1–3 and

for Case 4. Sincefor Cases 1–3 and for Case 4,

APPENDIX D

This appendix shows that when the locus of is a circle,or ,

where ,

and .Since the locus of is a circle,

can berewritten as . Using (18)

where and .Considering

and setting , we have. Since is a contin-

uous periodic function, one of the corresponds to a maximumand the other corresponds to a minimum.

Using the second order derivative, we can demonstrate thatthe corresponding to the maximum satisfies the followinginequalities. If , . If

, .

ACKNOWLEDGMENT

The authors would like to thank Prof. Daugman for his valu-able comments. They would also like to thank the University ofWest Virginia for sharing their database.

REFERENCES

[1] J. G. Daugman, “High confidence visual recognition of persons by atest of statistical independence,” IEEE Trans. Pattern Anal. Mach. In-tell., vol. 15, no. 11, pp. 1148–1161, Nov. 1993.

[2] J. Daugman, “How iris recognition works,” IEEE Trans. Comput., Syst.,Video Technol., vol. 14, no. 1, pp. 21–30, Jan. 2004.

[3] J. Daugman, “Probing the uniqueness and randomness of IrisCode: Re-sults from 200 billion iris pair comparisons,” Proc. IEEE, vol. 94, 2006.

[4] J. Daugman, “New methods in iris recognition,” IEEE Trans. Syst.,Man, Cybern. B, Cybern., vol. 37, no. 5, pp. 1167–1175, May 2007.

[5] E. M. Newton and P. J. Phillips, “Meta-analysis of third-party evalua-tions of iris recognition,” presented at the NISTIR 7440, Aug. 2007.

[6] A. W. K. Kong, K. Kong, D. Zhang, and M. Kamel, “Palmprint iden-tification using feature-level fusion,” Pattern Recognit., pp. 478–487,2006.

[7] D. Zhang, W. K. Kong, J. You, and M. Wong, “On-line palmprint iden-tification,” IEEE Trans. Pattern Anal. Mach. Intell., vol. 25, no. 9, pp.1041–1050, Sep. 2003.

[8] A. W. K. Kong and D. Zhang, “Competitive coding scheme for palm-print verification,” Proc. ICPR, vol. 1, pp. 520–523, 2004.

[9] Z. Sun, T. Tan, Y. Wang, and S. Z. Li, “Ordinal palmprint representa-tion for personal identification,” in Proc. IEEE Computer Society Conf.,2005, vol. 1, pp. 279–284.

[10] L. Ma, T. Tan, Y. Wang, and D. Zhang, “Efficient iris recognition bycharacterizing key local variations,” IEEE Trans. Image Process., vol.13, no. 6, pp. 739–750, Jun. 2004.

[11] Z. Sun, T. Tan, and Y. Wang, “Iris recognition based on non-localcomparisons,” in Lecture Notes in Computer Science. New York:Springer, 2004, vol. 3338, pp. 491–497.

[12] E. Krichen, M. A. Mellakh, S. Garcia-Salicetti, and B. Dorizzi, “Irisidentification using wavelet packets,” in Proc. Int. Conf. Pattern Recog-nition, 2004, vol. 4, pp. 226–338.

[13] S. I. Noh, K. Bae, Y. Park, and J. Kim, “A novel method to extract fea-tures for iris recognition system,” in Lecture Notes in Computer Sci-ence. New York: Springer, 2003, vol. 2688, pp. 861–868.

[14] K. Bea, S. Noh, and J. Kim, “Iris feature extraction using independentcomponent analysis,” in Lecture Notes in Computer Science. NewYork: Springer, 2003, vol. 2688, pp. 838–844.

[15] P. F. Zhang, D. S. Li, and Q. Wang, “A novel iris recognition methodbased on feature fusion,” in Proc. 3rd Int. Conf. Machine Learning andCybernetics, 2004, pp. 26–29.

[16] T. Ea, A. Valentian, F. Rossant, F. Amiel, and A. Amara, “Algorithmimplementation for iris identification,” in Proc. 48th Midwest Symp.Circuits and Systems, 2005, pp. 1207–1210.

[17] C. H. Park, J. J. Lee, S. K. Oh, Y. C. Song, D. H. Choi, and K. H.Park, “Iris feature extraction and matching based on multiscale anddirectional image representation,” in Lecture Notes in Computer Sci-ence. New York: Springer, 2004, vol. 2695, pp. 576–583.

[18] E. Rydgren, T. E. A. F. Amiel, F. Rossant, and A. Amara, “Iris featuresextraction using wavelet packets,” in Proc. Int. Conf. Image Processing,2004, vol. 2, pp. 861–864.

[19] L. Masek, “Recognition of Human Iris Patterns for Biometric Identifi-cation,” B.S. degree, The Univ. Western Australia, Australia.

[20] F. Hao, J. Daugman, and P. Zielinski, “A fast search algorithm for alarge fuzzy database,” IEEE Trans. Inf. Forensics Security, vol. 3, no.2, pp. 203–212, 2008.

[21] W. K. Kong and D. Zhang, “Detecting eyelash and reflection for ac-curate iris segmentation,” Int. J. PRAI, vol. 17, no. 6, pp. 1025–1034,2003.

[22] R. Viveros, K. Balasubramanian, and N. Balakrishnan, “Binomial andnegative binomial analogues under correlated Bernoulli trials,” TheAmer. Statist., vol. 48, no. 3, pp. 243–247, 1994.

[23] R. W. Katz, “Comment on: Binomial and negative binomial analoguesunder correlated Bernoulli trials,” Amer. Statist., vol. 49, no. 3, 1995.

[24] R. M. Bolle, S. Pankanti, J. H. Connell, and N. K. Ratha, “Iris indi-viduality: A partial iris model,” in Proc. 17th ICPR, 2004, vol. 2, pp.927–930.

[25] S. Lin, An Introduction of Error-Correcting Codes. Upper SaddleRiver, NJ: Prentice-Hall, 1970.

[26] J. Daugman, Personal Communication.[27] C. Sanchez-Avila and R. Sanchez-Reillo, “Two different approaches

for iris recognition using Gabor filters and multiscale zero-crossing rep-resentation,” Pattern Recognit., vol. 38, pp. 231–240, 2005.

[28] A. W. K. Kong, “Palmprint Identification Based on Generalization ofIrisCode,” Ph.D. dissertation, University of Waterloo, Waterloo, ON,Canada, 2007.

[29] J. R. Matey, O. Naroditsky, K. Hanna, R. Kolczynski, D. J. LoIacono,S. Mangru, M. Tinker, T. M. Zappia, and W. Y. Zhao, “Iris on themove: Acquisition of images for recognition in less constrained envi-ronments,” Proc. IEEE, vol. 94, pp. 1936–1947, 2006.

[30] J. L. Wayman, Degrees of Freedom as Related to Biometric DevicePerformance [Online]. Available: http://www.engr.sjsu.edu/biomet-rics/publications_degrees.html

Authorized licensed use limited to: K.S. Institute of Technology. Downloaded on March 01,2010 at 00:15:18 EST from IEEE Xplore. Restrictions apply.

Page 11: An Analysis of Iriscode

532 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 19, NO. 2, FEBRUARY 2010

[31] W. T. Freeman and E. H. Adelson, “The design and use of steerablefilters,” IEEE Trans. Pattern Anal. Mach. Intell., vol. 13, no. 9, pp.891–906, Sep. 1991.

[32] A. Ross and S. Shah, “Segmenting non-ideal irises using geodesic ac-tive contours,” in Proc. Biometrics Symp., 2006, pp. 1–6.

[33] A. W. K. Kong, “An analysis of Gabor detection,” in Proc. Int. Conf.Image Analysis and Recognition, 2009, pp. 64–72.

Adams W. K. Kong (M’03) received the Ph.D. de-gree from the University of Waterloo, Waterloo, ON,Canada, in 2007, with a dissertation on “Palmprintidentification based on generalization of IrisCode”.

He developed several coding methods includingPalmCode, fusion code, and competitive code forhigh-speed palmprint identification. In additionto identification, he has also completed a studyabout twins’ palmprints and has proposed securitymeasures for palmprint systems. Although palmprintrecognition is his major research area, his best

work may be the analysis and generalization of IrisCode. In addition to hisprofessional research, he focuses on global warming.

David Zhang (F’08) graduated in computer sciencefrom Peking University, China, in 1974, received theM.Sc. degree in computer science and engineeringand the Ph.D. degree from the Harbin Instituteof Technology (HIT), China, in 1983 and 1985,respectively. In 1994, he received a second Ph.D.degree in electrical and computer engineering fromthe University of Waterloo, Waterloo, ON, Canada.

From 1986 to 1988, he was first a PostdoctoralFellow at Tsinghua University, China, and then anAssociate Professor at the Academia Sinica, Beijing,

China. Currently, he is a Chair Professor at the Hong Kong PolytechnicUniversity where he is the Founding Director of the Biometrics TechnologyCentre (UGC/CRC) supported by the Hong Kong SAR Government. Healso serves as Adjunct Professor at Tsinghua University, Shanghai Jiao TongUniversity, Harbin Institute of Technology, Beihang University, and the Uni-versity of Waterloo. His research interests include automated biometrics-basedauthentication, pattern recognition, and biometric technology and systems. Asa principal investigator, since 1980, he has brought to fruition many biometricsprojects and won numerous prizes.

Dr. Zhang is the Founder and Editor-in-Chief of the International Journal ofImage and Graphics (IJIG); editor of the Kluwer International Series on Bio-metrics (KISB); Chairman, Hong Kong Biometric Authentication Society andProgram Chair; the First International Conference on Biometrics Authentica-tion (ICBA); Associate Editor of more than ten international journals includingthe IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART A, theIEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS—PART C, Pat-tern Recognition; and he is the author of more than 140 journal papers, 20 bookchapters, and 11 books. In 1984, his Fingerprint Recognition System won theNational Scientific Council of China’s third prize and in 1986 his Real-TimeRemote Sensing System took the Council’s first prize. In 2002, his PalmprintIdentification System won a Silver Medal at the Seoul International InventionFair, following a Special Gold Award in 2003, a Gold Medal, and a Hong KongIndustry Award. Professor Zhang holds a number of patents in both the USA andChina and is a Croucher Senior Research Fellow and Distinguished Speaker ofIEEE Computer Society.

Mohamed S. Kamel (F’05) received the B.Sc.(Hons.) degree, the E.E. degree from AlexandriaUniversity, the M.A.Sc degree from McMasterUniversity, Canada, and the Ph.D. degree from theUniversity of Toronto, Toronto, ON, Canada.

He is at present Professor and Director of the Pat-tern Analysis and Machine Intelligence Laboratory,Department of Electrical and Compute Engineering,University of Waterloo, Waterloo, ON, Canada. Heholds the Canada Research Chair in Cooperative In-telligent Systems. His research interests are in ma-

chine intelligence, image analysis, and pattern recognition. He has authoredand coauthored over 300 papers in journals and conference proceedings, twopatents, and numerous technical and industrial project reports. Under his super-vision, 63 Ph.D. and M.A.Sc. students have completed their degrees. He hasserved as a Consultant for General Motors, NCR, IBM, Northern Telecom, andSpar Aerospace. He is a member of the board of directors and cofounder ofVirtek Vision International, Waterloo.

Dr. Kamel is the Editor-in-Chief of the International Journal of Robotics andAutomation, Associate Editor of the IEEE TRANSACTIONS ON SYSTEMS, MAN,AND CYBERNETICS—PART A, Intelligent Automation and Soft Computing, Pat-tern Recognition Letters, and member of the editorial board of the InternationalJournal of Image and Graphics. He is member of the ACM, AAAI, and APEO.

Authorized licensed use limited to: K.S. Institute of Technology. Downloaded on March 01,2010 at 00:15:18 EST from IEEE Xplore. Restrictions apply.