Giter Club home page Giter Club logo

face-recognition-based-attendance-system's Introduction

Face-recognition-based-attendance-system

Detail project working here... https://www.youtube.com/watch?v=0ADsRSF_MHw&t=9s

Project contains two webapp's developed using flask and python3.(http://flask.pocoo.org/)

Database used : MySQL community edition.

For face reocognition I used python3 "face_recogntion" by ageitgey.(https://github.com/ageitgey/face_recognition), Built using dlib's state-of-the-art face recognition built with deep learning. The model has an accuracy of 99.38% on the Labeled Faces in the Wild benchmark.

For spoof detection I used tensorflow inception model by retraining it's last layer so that it can detect mobile phones in an image.(https://www.tensorflow.org/tutorials/image_recognition)

To generate and manage excel I used xlrx and xlrd and pandas.

For sending email's I used flask-mail.(https://pythonhosted.org/Flask-Mail/)

admin site dependency : flask, mysqlclient, sklearn, numpy, scipy, pillow, dlib, face_recognition

teachers site dependency : flask_bootstrap, pytz, xlsxwriter, pandas, flask_mail, tensorflow,xlrd

There are mainly two webapps for this project one is say admin site and other one is teacher's site.

The whole concept is at the time of admission to college or school admin should register the students details such as his name email address and also create training data of each student by entering his roll id and taking snaps of his or her frontal face and then webapp will automatically create model for that particular roll id and save it on server, The model which is created for each student is about 8kb in size. Admin can also register teachers using this site.

Now using teacher's site (It will be used when teacher will actually enter the class), teacher has to login first and then after clicking on attendance tab there will be no back button as teacher will pass on the phone to student.

Student's will then have to just click a snap enter class and roll id and press enter to mark their attandance.

After that there is also a problem of spoof attack in face recognition i.e. someone will show someone's image of face through their mobile phone and trick our webapp and they will mark the attendace of their friends who were not present.

But I solved this issue using tensorflow, by training inception to detect mobile phones in an image then I used that model in the webapp as soon as student's click a snap it will first check if the face is spoof or original. To retrain inception's last layer I used 200 images of mobile phones and I feed them to tensorflow to retrain the last layer of inception. To do this follow https://codelabs.developers.google.com/codelabs/tensorflow-for-poets/#0 To download 200 images at once use fatkun-batch-download chrome extension.

Now after student's part is done. Teacher can then login again and then go to report's tab to see attendance. Here there are several option's I have given.

If teacher want to see today's attendace, just select date and time to see the attendance. And there is also an option to download the attendace sheet in excel form and then again reupload it after making any changes if sometime required by the teacher. And the teacher can also see total attendance for his or her lecture. so that they can analyze how many lectures each student from particular class had attended so far.

One additional feature is that teacher can send email for the attendance marked to all the parents as well as students by selecting class and clicking on send mail button.

face-recognition-based-attendance-system's People

Watchers

James Cloos 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.