Verification of Authentication of user using user Image in ATM Transaction

Download Full-Text PDF Cite this Publication

Text Only Version

Verification of Authentication of user using user Image in ATM Transaction

Karthik B R

Department of CSE AMC Engineering College

Bangalore, INDIA

Dr.Sivasankari G G

Department of CSE AMC Engineering College

Bangalore, INDIA

Abstract Face Recognition is a rising field of exploration with numerous difficulties, for example, extensive set of pictures, shameful lighting up conditions. Eigenface methodology is one of the least difficult and most productive technique to conquer these snags in adding to a framework for Face Recognition. Different symmetrization strategies are utilized for preprocessing the picture as a part of request to handle terrible enlightenment and face arrangement issue. At that point, Eigenface methodology can be utilized for face distinguishment. Eigenfaces are eigenvectors of covariance grid, speaking to given picture space. Any new face picture can be then spoken to as a direct mix of these Eigenfaces. This makes it simpler to match any two given pictures and therefore confront distinguishment process. This makes it simpler to match any two given pictures and along these lines face distinguishment process. The report gives a fundamental learning of Eigenvalues and Eigenvectors. It covers different steps included in face distinguishment utilizing Eigenface approach alongside its noteworthiness and a few outcomes. It basically concentrates on Eigenface approach for Face Recognition.

KeywordsEigenface, Eigenvector, ATM, FaceRecognition;


    The main purpose of this project is to develop a complete system for ATM Transaction Processing with the face recognition security using Eigen Faces which includes:

    Cash Withdrawal, Balance Enquiry etc. Whenever the user perform a transaction, the user will be asked to enter the card and pin number as well as it will check the valid user with his face image stored in the database at the time of account creation. Test results propose that the PC had more trouble in recognizing appearances from one another than simply distinguishing whether an arbitrary face coordinated a specific face. As the quantity of subjects build is the distinguishment execution will diminish. Consequently the connection procedure utilized here necessities to be improved with facial highlights like eyes, nose, lips, and so forth. Likewise another inquiry that I anticipate exploring is the execution of face distinguishment by people.


    The face recognition problem can be formulated as follows: Given an input face image and a database of face images of known individuals, how can we verify or determine the identity of the person in the input imageMaintaining the Integrity of the Specifications


    To use an ATM machine, insert your card in to the machine and type the PIN that was established when the account was opened; next, choose the type of account from which the money will be withdrawn. You can then enter the amount of money you want to withdrawal, usually the increment of $20. The ATM machine then dispenses the money and a receipt and returns the card.

    Present ATM system consists of Operator panel, card reader, customer console, consisting of keyboard and display, network connection to the bank, cash dispenser, envelop acceptor, receipt printer, SMS alert system.

    Figure 1: Existing system of ATM


    This system is developed in MVC architecture where JAVA technology is used application development and back end database is My-SQL. This system is developed in to two sessions one is New User Creation where user have to enter pin and card number including his captured image and another one is the Login session or ATM Transaction session. Cameras in use at automatic teller machines should take still images of users. A facial recognition scheme should be added to the software used to verify users at ATMs. This scheme should match a picture of the user at the ATM with a picture of the account holder in the banks database.

    Figure 2: Proposed System of ATM

    1. Face Recognition

      Face Recognition has a fundamental importance in our social relationships, being extremely valuable to our simple and daily activities. Nowadays, Face Recognition motivates great research efforts, because it satisfies many criteria in choosing the ideal biometrics solution, say it is fast, convenient and essentially remote. It is very useful to identifying individual in international traffic points, in crime scenes, in access control and in many other fields Research efforts towards of faces recognition start in 1878 by English scientist Sir Francis Galton. His research involved the combination of people's photos, by means of superimposing face images. Galton proposed the photos alignment from human faces, depending on its main characteristic, putting some of them upon the other. The main difficulty was to describe the personal similarities, the types of faces and personal characteristics. To overcome this difficulty, biometrics characteristic were extracted from the face image to compare with the measures of another face in order to succeed in face recognition.

    2. Biometric and Face Recognition

      Face Recognition is part of a larger context called Biometrics that give us the notion of life measure. Biometrics can be defined as some characteristics that can be used to verify an individual's identity. The biometrics system is essentially a pattern recognition system that makes a personal identification determining the authenticity of some

      characteristic of an individual. In fact, an automatic people identification system based exclusively on fingerprints or on face recognition does not satisfy all the functionality requirements. Face Recognition is natural and non-intrusive, but it is not trustworthy, while the fingerprint verification is trustworthy but it is intrusive and it can cause resistance to the users, depending on the application.

    3. Face Recognition Problems

      The proposed problem consists of verifying if a new face image belongs to one of the individuals, whose images were stored in a database in a similar way, aiming the person's identity in case of recognition. A new face is compared with well-known faces stored in a database, being classified as a well-known individual's face or as an unknown face. Face representation techniques that can be framed in three different categories:

      1. Template-Based method: This represents the faces by means of a main two-dimensional template with values representing the facial ellipse borders and of all face organs. Another way is to have multiple templates for the face representation, under several angles and points of view. Another important approach is the use a group of smaller facial characteristics models, corresponding to the eyes, nose and mouth, for an only point of view. The most attractive advantage of this model is its simplicity. Its disadvantage is to need of great amount of memory and its inefficient comparison method.

      2. Feature-Based method: This considers the positions and sizes of the facial organs, as eyes, nose, mouth, etc., in the face representation. This method consumes very less computer resources than the template-based method, facilitating larger processing speed, with good acting with face database in varied scales.

      3. Appearance-Based method: : This intends to project the face images in a low dimension subspace, to obtain the face representation. The Eigenfaces space is an application of this method. It is built on Principal Component Analyis, from the projection of the images of the training set into the face space with low dimension

        1. Face Detection consists in locating a face in a complex scenery, by locating and cutting it out. These methods make use of Artificial Neural Network.

        2. Face Recognition is the person's identity verification from the comparison of a face with an only face (one-to-one) or with a database of faces (one-to-many). The faces presented for recognition effect are compared with the well- known faces stored in a database, to be classified as a well- known individual's face or as an unknown face.

          When the images present inadequate illumination conditions, the model identifies this situation by the pixels values sum comparison on the two sides of the faces, applying the

          symmerization technique, reconstructing the dark face side from the clear side or calculating the average from own face with its inverse one, according to the case, equalizing the face illumination.

          The simplest method for face recognition can be based on comparison approach in which the new face image can be compared with each of the existing images in the database to check for match. This is very simple approach as we need to take dot product of two images that means comparing images pixel by pixel. If the pixel intensity values of both images match then this new image is said to be a known face. As the database size is large and contains redundant information in high dimensional space, we try to improve performance by reducing dimensionality making use of Eigenface approach.

    4. False Acceptation and Rejection Rates

      1. False Accepting Rate: The percentage of images which are accepted as known face images although they are unknown is called as False Acceptation Rate (FAR). This value represents error rate for Acceptation of unknown images.

      2. False Rejection Rate: The percentage of images which are rejected as unknown face images although they are known and exists in training set or database is called as False Rejection Rate (FRR). This value represents error rate for Rejection of known images.

    5. Process of Face Recognition using Eigenfaces:

    To summarize whole process of Face Recognition using Eigenface approach, we will see the diagram shown below.

    The training set of images is given as input to find Eigenspace. Using these images, the average face image is computed. The difference of these images is represented by covariance matrix. This is used to calculate Eigenvectors and Eigenvalues. These are the Eigenfaces which represent various face features. Sort the eigenvalues, and consider higher of them since they represent maximum variations. This becomes eigenspace spanned by the eigenfaces which has lower dimension than original images. Now given two test images are projected onto this eigenspace to give the weight vector also known as Face key for that image.

    The euclidean distance between these two face key vectors is calculated. If this is below some threshold value, then two images are said to be matching that means they belong to same person. Depending on this result, False Acceptation Rate (FAR) and False Rejection Rate (FRR) are found. These are used to change value of Threshold. In this way Face Recognition is carried out using Eigenface Approach.

    Figure 3: Face Recognition using Eigenfaces


    A noteworthy errand of itemized outline is to illuminate, in detail, the qualities and strategies required by every class (the second and third "compartments" of the representation for every class in a class chart.)

    The systems required by every class are verifiable in the obligations allocated to the class in the CRC cards, and get to be unequivocal in the Interaction Diagrams. Similarly, whenever an article fitting in with a given class is indicated as the beneficiary of a message in either a Sequence or Collaboration Diagram, the class needs a comparing system. A hefty portion of the required properties are additionally either expressly or certainly exhibit in the charts; the requirement for others gets to be obvious as the code for the class is being composed. (Hence nitty gritty plan and coding are a "round trek" process – point by point configuration manages coding, and coding prompts elaboration of the definite outline.)

    In designing this system, a few key design decisions were made:

    • The class ATM is made a dynamic class – that is, the ATM item has its own particular string. Utilizing the Java string office prompts characterizing a run() system in this class whose body is executed by the ATM's string. The way that class ATM is dynamic is

      demonstrated in class graphs by walling it in a heavier layout.

    • Certain signs start processing – e.g. the signs from the administrator support when the condition of the switch is changed, or from the card peruser when a card is embedded. In the GUI reenactment of the ATM, these signs are sent by the "actionPerformed()" strategy for the proper GUI catch; in a genuine ATM they would be sent by the physical segments themselves, which may then likewise need to be dynamic classes. (Note: this structures a special case to the guideline that an obligation on a CRC card interprets into a strategy in the outline – for this situation the class sends a sign, instead of accepting it, so it needn't bother with a system specifically comparing to the responsibility.

    • The Transaction progression comprises of the conceptual class Transaction and four solid subclasses (Withdrawal, Deposit, Transfer and Inquiry). The class Transaction has a "virtual constructor" called makeTransaction() which asks the client to pick an exchange sort and afterward builds and returns an object of the fitting subclass. The Transaction class is made in charge of doing the Transaction utilization case and the Invalid PIN expansion; for the previous, it makes utilization of conceptual strategies getSpecificsFromCustomer() and completeTransaction() which are actualized solidly by every subclas.

    • The class Receipt is conceptual. The completeTransaction() strategy for every sort of exchange makes a solid example that contains the data significant to that sort of exchange.

    • The class Status is dynamic. The send() technique for NetworkToBank builds a solid case that contains the data suitable to the reaction got from the bank to a specific message.

    1. False Acceptation and Rejection Rates:

      • The bundle outline indicates how the different classes are assembled into bundles. There are two "top-level" classes

    – ATMMain and ATMApplet – which permit the framework to be run (separately) as an application or as an Applet. (Stand out of the two future instantiated in any specific utilization of the framework.

    • Each of these classes, thusly, relies on upon the bundle atm which contains the class ATM that speaks to the framework overall, and the class Session that speaks to one session. ATM relies on upon Session, and the other way around – since the ATM makes Sessions, and every Session, thus, utilizes the ATM to associate with the client.

    • The sub bundle exchange contains the classes used to speak to individual exchanges that a client launchs. The class Session relies on upon the exchange bundle on the grounds that it makes singular exchange objects. These, thus, again rely on upon the ATM to associate with the client.

    • The sub bundle physical contains the classes that speak to the different physical segments of the ATM. For the reasons of this reproduction, these are re-enacted by a GUI. A genuine ATM would have very diverse classes in this bundle – classes that really control its physical parts. The class ATM makes utilization of these segments, and Session and the different sorts of exchange obtain entrance to them through ATM to really perform the required operations.

    • Finally, the bundle keeping money contains classes that speak to the managing an account undertaking itself and the data imparted here and there and then here again between the ATM and the bank – i.e. classes which may be the same in a very surprising execution of an ATM that communicates with the same bank.

    • This is, obviously, a re-enactment. Then again, the vast majority of the code that is particular to the re-enactment lives in the bundle physical, in addition to the two top- level classes. Probably, alternate classes and bundles may be comparable in a genuine framework.

      Figure 4: Package for ATM System


This system is developed in MVC architecture where JAVA technology is used application development and back end database is My-SQL and this system is divided into two sessions one is New User Creation where user have to enter pin and card no including his captured image and another one is the Login session or ATM Transaction session.

New User

    • Enter Card and Pin Number

    • Enter Username and Password

    • Take a picture

    • Browse the picture and submit

      ATM Transaction Session

    • Login(card no ,pin no and face image authentication)

    • Withdrawal

    • Deposit

    • Transfer

    • Balance Enquiry

  1. Introduction to Eigenvalues and Eigenvectors:

    In linear algebra, the eigenvectors of a linear operator are non-zero vectors which, when operated on by the operator, result in a scalar multiple of themselves. The scalar is then called the eigenvalue associated with the eigenvector. If A : V > V is a linear operator on some vector space V, v is a non-zero vector in V and c is a scalar (possibly zero) such that, A v = c v then we say that v is an eigenvector of the operator A, and its associated eigenvalue is c.

    Note that if v is an eigenvector with eigenvalue c, then any non-zero multiple of v is also an eigenvector with eigenvalue c. In fact, all the eigenvectors with associated eigenvalue c, together with 0, form a subspace of V the eigenspace for the eigenvalue c.

    Suppose we have a matrix A: a11 a12

    a21 a22

    The order of matrix A : 2 x 2

    Suppose we take the product Ax1, where x1 =[1 0]iT

    By comparing the vectors x1 and Ax1 we see that the product vector is scaled and rotated counter clockwise with respect to x1. Now consider the case where x2 =[1 0]iT

    Here, we note a clockwise rotation of Ax2 with respect to x2.Now lets consider a more interesting case. Suppose x3 =[1 0]iTNow the product vector Ax3 points in the same direction as x3. The vector Ax3 is a scaled version of the vector x3. Because of this property, x3 is an eigenvector of A. The scale factor is given the symbol _ and is referred to as an eigenvalue. Thus we have, if x is an eigenvector of A "RNxN,

    • Ax = &x

    • where & is scalar multiple eigenvalue then the vector Ax is in the same

    • direction as x but scaled by a factor &

  2. To Calculate Eigenvalues and Eigenvectors:

    As shown above, we have the equation, (A – &I)X = 0

    Where I is the n x n identity matrix. This is a homogeneous system of equations, and from fundamental linear algebra, we know that a nontrivial solution exists if and only if

    det (A – eigenvalI) = 0

    Where det() denotes determinant. When evaluated, becomes a polynomial of degree n. This is known as the characteristic equation of A, and the corresponding polynomial is the characteristic polynomial.

    The characteristic polynomial is of degree n. If A is n x n, then there are n solutions or n roots of the characteristic polynomial. Thus there are n eigenvalues of A satisfying the equation, AXi = &iXi

    If the eigenvalues are all distinct, there are n associated linearly independent eigenvectors, whose directions are unique, which span an n dimensional Euclidean space. Repeated Eigenvalues In the case where there are r repeated eigenvalues, then a linearly independent set of n eigenvectors exist, provided the rank of the matrix (A – &I) is rank n-r. Then, the directions of the r eigenvectors associated with the repeated eigenvalues are not unique.

  3. Properties of Eigenvalues and Eigenvectors:

Now we will look at some important properties of Eigenvalues and Eigenvectors and their significance in case of Symmetric matrices

Property 1: If the eigenvalues of a symmetric matrix are distinct, then the eigenvectors are orthogonal

Property 2: The eigenvalues of a symmetric matrix are real. Property 3: Let A be a matrix with eigenvalues &i where i = 1 to n and eigenvectors vi. Then the eigenvalues of the matrix (A + sI) are &i +s, with corresponding eigenvectors vi, where s is any real number.

Property 4: Let A be an n x n matrix with eigenvalues &i where i = 1 to n

Property 5: If v is an eigenvector of matrix A, then cv is also an eigenvector, where c is any real or complex constant.


The approach is definitely robust, simple and easy and fast to implement compared to other algorithms, it provides a practical solution to the recognition problem. We are currently investigating the system to deal with a range of aspects like defining a small number of face classes of each person corresponding to their characteristics.


  1. Handbook of Face recognition by Stan Z. Li Anil K. Jain.

  2. Turk, M.A., Pentland,A. P., Eigenfaces for Recognition, 1991, Cognitive Neurosci., V. 3, no.1, pp.7186.

  3. Survey paper: Face Detection and Face Recognition by Hyun Hoi James Kim.

  4. Face Recognition: a summary of 1995-1997 by Thomas Fromherz.

  5. Zhang, D.; Feng Liu; Qijun Zhao; Guangming Lu; Nan Luo, 2011,Selecting a Reference High Resolution for Fingerprint Recognition Using Minutiae and Pores IEEE Transactions on Volume: 60 , No:3.

  6. Dr.S.B.Thorat ;S.K.Nayak ; Miss.Jyoti P Dandale, 2010Facial Recognition Technology: An analysis with scope in India IJCSIS Vol. 8, No. 1.

  7. Singh Ghotra, S. Mandan, B.K.; Wei, S.S.C.; Yi Song. 2007, Secure Display and Secure Transactions Using a Handset IEEE conference on Volume: 60, No: 3.

  8. Yun Yang Sch. of Electr. & Inf. Eng., Shaanxi Univ. of Sci.&Technol.,Xi'an,China Jia Mi . 2010ATM terminal design based on finger print recognition IEEE conference on Volume: 1, No:3

  9. Vaishnavi,R.A. Inf. Techno., Kalasalingam Univ., Virudhunagar,India Rajalakshmi, R. 2012 Shape to maintain the ATM system stability IEEE conference on Volume: 10.

Leave a Reply

Your email address will not be published. Required fields are marked *