GithubHelp home page GithubHelp logo

joeperry8080 / oneeyefacedetection Goto Github PK

View Code? Open in Web Editor NEW

This project forked from medcv/oneeyefacedetection

0.0 0.0 0.0 11.13 MB

OneEye is a face recognition software running on AWS DeepLens that can detect and identifies faces

JavaScript 14.78% Python 81.91% HTML 2.86% CSS 0.44%

oneeyefacedetection's Introduction

OneEye Face Recognition

Facial recognition is a biometric solution that measures unique characteristics about one’s face. Applications available today include flight checking, tagging friends and family members in photos, and “tailored” advertising.

As part of AWS DeepLens Challenge (#AWSDeepLensChallenge) we have implemented two use cases for face identification solution using DeepLens: First use case is Customer Identification. To satisfy the goal, we used customers’ profile pictures on a system (i.e., Bank) to match with DeepLens face detection results on real time basis when customer enters to a branch. Upon customer identification via DeepLens algorithm, an API call fetches customer's account details and surface the information on Bank's desktop web application. Here is a demo for customer identification.

Second use case is Amber Alert. We developed a mobile application that takes a picture of a missing person (or wanted person) and uploads it to storage back-end (AWS S3 in this case). As soon as image is uploaded, DeepLens uses this new picture in its face identification algorithm and identifies the person on real time video streaming. When missing person is detected, DeepLens sends a notification via email or phone, whichever is subscribed, to notify the authorities. Here is a demo for Amber Alert use case. Here is a demo for Amber Alert use case.

How I built it

Face recognition model is built using dlib's state-of-the-art face detection libraries. The model has an accuracy of 99.38% on the Labeled Faces in the Wild benchmark 1.

Greengrass lambda function runs the face detection algorithm on the DeepLens device and publishes an event to the IOT topic as soon as it identifies a face. There exists another lambda function listening to this topic and fetches customer's info via API call from back-end's database. After data got retrived, this Lambda will publish an event to SNS with customers information as payload. A NodeJs web server (running on EC2) accepts the POST call from SNS and broadcasts a message to all of the clients (web or mobile) registered to it via WebSocket. This architecture allows real time update of the Client application as soon a new customers step into the branch. You can find more information about Customer Identification diagram Here and Amber Alert diagram Here

Requirements

  • AWS DeepLens (Device to stream video and detect faces)
  • AWS S3 bucket (to store Profile images )
  • AWS DynamoDB Table (to store Customer Account information)
  • AWS SNS (to communicate between Client and Back-end)
  • AWS Lambda Function
  • AWS Greengrass
  • NodeJs server
  • AngularJs UI Client

Installation

oneeyefacedetection's People

Contributors

medcv avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.