Amazon based Facial Recognition Andriod Application

In this project, I design and develop the mobile application system which communicates with the cloud system (AWS) as the supporting backend system to perform the real time face recognition (FR) functionality. The FR is implemented by two differnet algorithms: i) PCA model, construct and train a PCA model with the hybrid facail database, ii) Deep-Learning model, adopt a provided API, Amazon Rekognition. [Codes]

Details

  • Construct the hybrid database by Labeled Faces in the Wild (LFW), Yale Face Database (YFD) & self-collected photos.
  • Conduct image-preprocessing by color transformation, facail image cropping, resizing & image vectorizing.
  • Implement the Principal Component Analysis (PCA) model by vector normalizing, covariance matrix computing & largest eigenvector selecting.
  • Perform face-recognition by encoding given images (I), calculating the Euclidean distance between vectors & resulting label with shortest distance.


  • For the backend system, I design an AWS architecture to perform the FR function and response user only name by intergrating three services. Apart from self-design PCA algorithm, user can chose to finish FR by an Amazon service, i.e. Amazon Rekognition

  • Implement PCA computing using Amazon Lambda which designed as an event-driven service.
  • Store image data including hybrid database and user's uploaded images using Amazon S3.
  • Connect with Andriod App using Amazon API-Gateway, for which user connects automatically and can upload face images on our system.
  • Apply a built-in Amazon API, Amazon Rekognition, for recongitze celebrity faces, which is generally accurate than ours.



  • Activates an front camera, detects human facas by using OpenCv based classifer (HAAR cascades classifier)
  • Pre-process selected images by cropping and color converting.
  • Uploads the pre-processed iamges to default Amazon server. (specifically AWS S3)
  • Sends request to perform FR to AWS & receives response which is the name string from server.


  • Results

    • Portfolio name

      Home Page

    • Portfolio name

      Face Detection

    • Portfolio name

      Captured and Pre-processed image

    • Portfolio name

      Image Uploaded

    • Portfolio name

      PCA

    • Portfolio name

      Face Rekognition