• Stars
    star
    118
  • Rank 299,923 (Top 6 %)
  • Language
    Python
  • Created almost 6 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Implementation of Facial Recognition System Using Facenet based on One Shot Learning Using Siamese Networks

Facial-Recognition-Using-FaceNet-Siamese-One-Shot-Learning

This program has been used to implement Facial Recognition using Siamese Network architecture. The implementation of the project is based on the research paper :

FaceNet: A Unified Embedding for Face Recognition and Clustering arXiv:1503.03832 by Florian Schroff, Dmitry Kalenichenko, James Philbin

Facenet implements concept of Triplet Loss function to minimize the distance between anchor and positive images, and increase the distance between anchor and negative images.

Prerequisites

h5py==2.8.0
Keras==2.2.4
tensorflow==1.13.0rc2
dlib==19.16.0
opencv_python==3.4.3.18
imutils==0.5.1
numpy==1.15.2
matplotlib==3.0.0
scipy==1.1.0

Install the packages using pip install -r requirements.txt

Usage

To use the facial recognition system, you need to have a database of images through which the model will calculate image embeddings and show the output vector. The images which are in the database are stored as .jpg files in the directory ./images.

To generate your own dataset and add more faces to the system, use the following procedure:

Sit in front of your webcam. Use the Image_Dataset_Generator.py script to save 50 images of your face. Use this command: python Image_Dataset_Generator.py to generate images which will be saved in images folder.

To use the facial recognition system, run the command on your terminal : python face_recognizer.py

References

  1. The code has been implemented using deeplearning.ai course Convolutional Networks Week 4 Assignment, which has the files fr_utils.py and inception_blocks_v2.py
  2. The keras implementation of the model is by Victor Sy Wang's implementation and was loaded using his code: https://github.com/iwantooxxoox/Keras-OpenFace.

More Repositories

1

Driver-Drowsiness-Detector

Driver Drowsiness Detector detects if a driver or a person is drowsy or not, using their eye movements.
Python
122
star
2

Do-It

To-Do List App made in Android. Tutorial available on Youtube.
Java
55
star
3

Chat-App-Flask-SocketIO

Chat Application using Flask and SocketIO
HTML
28
star
4

Gesture-Controlled-Snake-Game

This program can be used to play a Snake Game by detecting hand gestures to control movement of the snake on the screen. Implemented in Python using OpenCV.
Python
26
star
5

Penguin-Coders-WebApp

Java
20
star
6

YOLO-v3-Object-Detection

This repository contains code for YOLO v3 Object detection, and is capable of fast object detection. Input can be given through images, videos and webcam input feed.
Python
18
star
7

Bookstore-Manager

A book management software built with Python to store information about Book's name, Author, Year, and ISBN. Built using tkinter and sqllite3 database.
Python
11
star
8

PushDown-Automata-Implementation

Implementation of PushDown Automata to track acceptance or rejection of a string.
Python
8
star
9

Data-Structures-In-C

(Incomplete, In Continuation) Implementation of Data Structures like Stacks, Queues, etc. using C programming language
C
8
star
10

NoInternetLayout

Kotlin
4
star
11

Sentiment-Analysis-Flask-API

This sentiment analysis API allows you to get Sentiment for a sentence using GET and POST methods.
Python
4
star
12

NLP-Tasks-Sentiment-NER

This repository demonstrates the use of Stanford CoreNLP library for doing NLP tasks such as Sentiment Analysis and Named Entity Recognition
Java
4
star
13

CheckSum-Implemetation

8 bit, 16 bit and 32 bit CheckSum Implementation in MATLAB
MATLAB
3
star
14

BMI-Calculator-Android

Kotlin
3
star
15

Ionic-NewsApp

TypeScript
2
star
16

Cats-vs-Dogs-Classification-Flask-WebApp

A flask based web application to differentiate between cats and dogs
Python
2
star
17

EmployeeManagement

This project depicts simple Employee Management System software, which contains various functions that allow the user/company to keep track of its employees and store the details of its employees in a database. This project has been made using C language, and uses some important concepts, features and algorithms to accomplish the task. This software is entirely text based and could be run on any machine having C compiler (GCC, Turbo-C, Borland, etc.) through a Terminal window (LINUX), or Command Prompt (Windows).
C
2
star
18

Project-Jatayu-Website

Project Jatayu Website
HTML
1
star
19

APOD-Wallpaper-Changer

This script changes wallpaper of your desktop daily from the NASA's Astronomical Picture of the Day
Python
1
star
20

FlashLight

Java
1
star
21

Fashion-MNIST-Tensorflow-Keras

This repository contains the code for Fashion MNIST, which can be used to predict clothes categories. Implemented using Tensorflow, and Keras library.
Jupyter Notebook
1
star
22

Website-Blocker

This Python script blocks the websites you choose to, and also in the desired time interval (or Working Hours)
Python
1
star