Automatic Attendace using convolutional neural network Face Recognition

Automatic Attendance
System using Face
Recognition
P R E S E N T E D BY :
VAT S A L B O R A D H A R A
WHAT WE USE
• TensorFlow
• TensorFlow is a free and open-source software library for dataflow and differentiable
programming across a range of tasks. It is a symbolic math library, and is also used for
machine learning applications such as neural networks.
• TensorFlow is Google Brain's second-generation system
• Keras
• Keras is an open-source neural-network library written in Python. It is capable of running
on top of TensorFlow, Microsoft Cognitive Toolkit, Theano, or PlaidML. Designed to enable
fast experimentation with deep neural networks.
• In 2017, Google's TensorFlow team decided to support Keras in TensorFlow's core
library. Chollet explained that Keras was conceived to be an interface rather than a
standalone machine-learning framework. It offers a higher-level, more intuitive set of
abstractions that make it easy to develop deep learning models regardless of the
computational backend used.
• Open CV
• OpenCV is Open Source Computer Vision Library is an open source computer vision
and machine learning software library.
• OpenCV is a library of programming functions mainly aimed at real-time computer
vision. Originally developed by Intel.
DEEP LEARNING
• Deep learning is an artificial intelligence function that imitates the workings of the
human brain in processing data and creating patterns for use in decision making. Deep
learning is a subset of machine learning in artificial intelligence (AI) that has networks
capable of learning unsupervised from data that is unstructured or unlabeled. Also
known as deep neural learning or deep neural network.
• use a cascade of multiple layers of nonlinear processing units for feature
extraction and transformation. Each successive layer uses the output from the previous
layer as input.
• learn in supervised (e.g., classification) and/or unsupervised (e.g., pattern analysis)
manners.
• learn multiple levels of representations that correspond to different levels of
abstraction; the levels form a hierarchy of concepts.
NEURAL NETWORKS AND
DEEP LEARNING
• A deep neural network (DNN) is an artificial neural network (ANN) with multiple
layers between the input and output layers. ... Each mathematical manipulation as such
is considered a layer, and complex DNN have many layers, hence the name
"deep" networks.
CONT…
• Artificial neural networks (ANNs) or connectionist systems are computing systems inspired by the biological neural
networks that constitute animal brains. Such systems learn (progressively improve their ability) to do tasks by considering
examples, generally without task-specific programming. For example, in image recognition, they might learn to identify
images that contain cats by analyzing example images that have been manually labeled as "cat" or "no cat" and using the
analytic results to identify cats in other images. They have found most use in applications difficult to express with a
traditional computer algorithm using rule-based programming.
• An ANN is based on a collection of connected units called artificial neurons, (analogous to biological neurons in
brain). Each connection (synapse) between neurons can transmit a signal to another neuron. The receiving (postsynaptic)
neuron can process the signal(s) and then signal downstream neurons connected to it. Neurons may have state, generally
represented by real numbers, typically between 0 and 1. Neurons and synapses may also have a weight that varies as
learning proceeds, which can increase or decrease the strength of the signal that it sends downstream.
• Typically, neurons are organized in layers. Different layers may perform different kinds of transformations on their inputs.
Signals travel from the first (input), to the last (output) layer, possibly after traversing the layers multiple times.
• The original goal of the neural network approach was to solve problems in the same way that a human brain would. Over
time, attention focused on matching specific mental abilities, leading to deviations from biology such as backpropagation,
or passing information in the reverse direction and adjusting the network to reflect that information.
• Neural networks have been used on a variety of tasks, including computer vision, speech recognition, machine
translation, social network filtering, playing board and video games and medical diagnosis.
LIBRARY USE
• scikit-learn
• Scikit-learn is a free software machine learning library for the Python programming
language. It features various classification, regression and clustering algorithms
including support vector machines, random forests, gradient boosting, k-
means and DBSCAN, and is designed to interoperate with the Python numerical and
scientific libraries NumPy and SciPy
• Numpy
• NumPy is a library for the Python programming language, adding support for large,
multi-dimensional arrays and matrices, along with a large collection of high-level
mathematical functions to operate on these arrays.
•
• NumPy is a general-purpose array-processing package. It provides a high-
performance multidimensional array object, and tools for working with these arrays.
•
• It is the fundamental package for scientific computing with Python. It contains various
features including these important ones:
• A powerful N-dimensional array object
• Pandas
• Pandas is an open-source Python Library providing high-performance data manipulation and analysis
tool using its powerful data structures. The name Pandas is derived from the word Panel Data – an
Econometrics from Multidimensional data.
• Key Features of Pandas
• Fast and efficient DataFrame object with default and customized indexing.
• Tools for loading data into in-memory data objects from different file formats.
• Data alignment and integrated handling of missing data.
• Reshaping and pivoting of date sets.
• Label-based slicing, indexing and subsetting of large data sets.
• Columns from a data structure can be deleted or inserted.
• Group by data for aggregation and transformations.
• High performance merging and joining of data.
• Time Series functionality.
GUI
• Tkinter
• Python offers multiple options for developing GUI (Graphical User Interface). Out of all
the GUI methods, tkinter is most commonly used method. It is a standard Python
interface to the Tk GUI toolkit shipped with Python. Python with tkinter outputs the
fastest and easiest way to create the GUI applications.
WORKING OF THE PROPOSED SYSTEM
CONTINUES
HOW A COMPUTER READ AN IMAGE
Size of the Image will be – B x A x 3
WHY CONVOLUTIONAL NEURAL
NETWORKS ?
In Case of CNN the neuron in a layer will only be connected to a small region of the layer before it, instead
of all of the neurons in a fully-connected manner.
WHAT IS CONVOLUTIONAL NEURAL
NETWORKS ?
• In machine learning, a convolutional neural network(CNN, or ConvNet) is a class of
deep, feed-forward artificial neural networks that has successfully been applied to
analyzing visual imagery.
HOW CNN WORKS ?
Convolutional Neural Networks have
following layers:
 Convolution
 ReLU Layer
 Pooling
 Fully Connected
TRICKIER CASE
Here, We will have some problems, because X and O images won’t always have the same images.
There can be certain deformations. Consider the diagrams shown below:
HOW CNN WORKS ?
HOW CNN WORKS ?
A computer understands an image using numbers at
each pixels.
In our example, we have considered that a black pixel
will have value 1 and white pixel will have -1 value.
HOW CNN WORKS ?
Using normal techniques, computers compare these images as:
HOW CNN WORKS ?
CNN compares the images piece by piece. The pieces that it looks for are called features.
By finding rough feature matches, in roughly the same position in two images ,CNN gets a lot
better at seeing similarity than whole-image matching schemes.
HOW CNN WORKS ?
We will be taking three features or filters, as shown below:
HOW CNN WORKS ?
These are small pieces of the bigger
image. We choose a feature and put it
on the input image, if it matches then
the image is classified correctly.
CONVOLUTION LAYER
Steps Involved in Convolution Layer
Here we will more the feature/filter to every possible position on the images.
• Step - 1 : Line up the feature and the image.
• Step - 2 : Multiply each image pixel by the corresponding feature pixel.
MULTIPLYING THE CORRESPONDING PIXEL VALUES
MULTIPLYING THE CORRESPONDING PIXEL VALUES
STEPS INVOLVED IN CONVOLUTION
LAYER
Here we will more the feature/filter to every possible position on the images.
• Step - 1 : Line up the feature and the image patch ( by default image patch size is
taken of 9 pixels ).
• Step - 2 : Multiply each image pixel by the corresponding feature pixel.
• Step - 3 : Add them up
• Step - 4 : Divide by total number of pixels in the feature.
ADDING AND DIVIDING BY THE TOTAL NUMBER OF PIXELS
CREATING A MAP TO PUT THE VALUE OF THE FILTER
Now to keep track of where that feature was, we create a map and put the value of the filter at that
place
SLIDING THE FILTER THROUGHOUT
THE IMAGE
Now, using the same feature and move it to another location and perform the filtering again.
CONVOLUTION LAYER
Now we will put the value of the filter at that position
CONVOLUTION LAYER OUTPUT
Similarly, we will move the feature to every other positions of the image and will see how the
feature matches that area. Finally we will get an output as:
CONVOLUTION LAYER OUTPUT
RELU LAYER
 In this layer we remove every negative values from the filtered images and replaces it with
zero’s
 This is done to avoid the values from summing up to zero
Rectified Linear Unit (ReLU) transform function only activates a node.
REMOVING THE NEGATIVE VALUES
REMOVING THE NEGATIVE VALUES
OUTPUT FOR OUR FEATURE
OUTPUT FOR ALL FEATURES
POOLING LAYER
In this layer we shrink the image stack into a smaller size steps :
1. Pick a window size (usually 2 or 3).
2. Pick a stride (usually 2).
3. Walk you window across your filtered images.
4. From each window, take the maximum value.
Let’s perform pooling with a window size 2 and a stride 2
CALCULATING THE MAXIMUM VALUE IN EACH WINDOW
Let’s start with our first filtered image
In our first window the maximum or highest value is 1, so we track and move the window two
strides
MOVING THE WINDOW ACROSS THE ENTIRE IMAGE
OUTPUT AFTER PASSING THROUGH POOLING LAYER
STACKING UP THE LAYERS
STACKING UP THE LAYERS
FULLY CONNECTED LAYER
This is the final layer where the actual classification happens
Here we take our filtered and shrinked images and put them into a single list
OUTPUT
When we feed in, ‘X’ and ‘O’. Then there will be some element in the vector that will be high.
Consider the image below, as you can see for ‘X’ there are different elements that are high and similarly,
for ‘O’ we have different elements that are high.
PREDICTION
Consider the below list of a new input image:
COMPARING THE INPUT VECTOR
WITH X
COMPARING THE INPUT VECTOR
WITH O
RESULT
The input images is classified as ‘X’
Automatic Attendace using convolutional neural network Face Recognition
Automatic Attendace using convolutional neural network Face Recognition
Automatic Attendace using convolutional neural network Face Recognition
Automatic Attendace using convolutional neural network Face Recognition
Automatic Attendace using convolutional neural network Face Recognition
THANK
YOU
1 de 57

Recomendados

Face Recognition on MATLAB por
Face Recognition on MATLABFace Recognition on MATLAB
Face Recognition on MATLABMukesh Taneja
2.8K visualizações15 slides
Face Recognition por
Face RecognitionFace Recognition
Face Recognitionlaknatha
14.3K visualizações18 slides
Basics of Machine Learning por
Basics of Machine LearningBasics of Machine Learning
Basics of Machine LearningPranav Challa
1.4K visualizações16 slides
Term11566 por
Term11566Term11566
Term11566Mukesh0420
441 visualizações15 slides
L008.Eigenfaces And Nn Som por
L008.Eigenfaces And Nn SomL008.Eigenfaces And Nn Som
L008.Eigenfaces And Nn Somramesh kumar
1.3K visualizações27 slides
Presentation on supervised learning por
Presentation on supervised learningPresentation on supervised learning
Presentation on supervised learningTonmoy Bhagawati
24.3K visualizações25 slides

Mais conteúdo relacionado

Mais procurados

Facial recognition por
Facial recognitionFacial recognition
Facial recognitionKartik Raghuvanshi
512 visualizações15 slides
Facial Emotion Recognition: A Deep Learning approach por
Facial Emotion Recognition: A Deep Learning approachFacial Emotion Recognition: A Deep Learning approach
Facial Emotion Recognition: A Deep Learning approachAshwinRachha
21.2K visualizações21 slides
Unsupervised learning por
Unsupervised learningUnsupervised learning
Unsupervised learningamalalhait
14.4K visualizações22 slides
Machine Learning Overview por
Machine Learning OverviewMachine Learning Overview
Machine Learning OverviewMykhailo Koval
1.3K visualizações54 slides
15857 cse422 unsupervised-learning por
15857 cse422 unsupervised-learning15857 cse422 unsupervised-learning
15857 cse422 unsupervised-learningAnil Yadav
2.2K visualizações95 slides
Face recognition using neural network por
Face recognition using neural networkFace recognition using neural network
Face recognition using neural networkIndira Nayak
21.1K visualizações17 slides

Mais procurados(20)

Facial recognition por Kartik Raghuvanshi
Facial recognitionFacial recognition
Facial recognition
Kartik Raghuvanshi512 visualizações
Facial Emotion Recognition: A Deep Learning approach por AshwinRachha
Facial Emotion Recognition: A Deep Learning approachFacial Emotion Recognition: A Deep Learning approach
Facial Emotion Recognition: A Deep Learning approach
AshwinRachha21.2K visualizações
Unsupervised learning por amalalhait
Unsupervised learningUnsupervised learning
Unsupervised learning
amalalhait14.4K visualizações
Machine Learning Overview por Mykhailo Koval
Machine Learning OverviewMachine Learning Overview
Machine Learning Overview
Mykhailo Koval1.3K visualizações
15857 cse422 unsupervised-learning por Anil Yadav
15857 cse422 unsupervised-learning15857 cse422 unsupervised-learning
15857 cse422 unsupervised-learning
Anil Yadav2.2K visualizações
Face recognition using neural network por Indira Nayak
Face recognition using neural networkFace recognition using neural network
Face recognition using neural network
Indira Nayak21.1K visualizações
Machine Learning por Girish Khanzode
Machine LearningMachine Learning
Machine Learning
Girish Khanzode20.7K visualizações
Generative Adversarial Networks : Basic architecture and variants por ananth
Generative Adversarial Networks : Basic architecture and variantsGenerative Adversarial Networks : Basic architecture and variants
Generative Adversarial Networks : Basic architecture and variants
ananth1.8K visualizações
FACE RECOGNITION USING PRINCIPAL COMPONENT ANALYSIS WITH MEDIAN FOR NORMALIZA... por csandit
FACE RECOGNITION USING PRINCIPAL COMPONENT ANALYSIS WITH MEDIAN FOR NORMALIZA...FACE RECOGNITION USING PRINCIPAL COMPONENT ANALYSIS WITH MEDIAN FOR NORMALIZA...
FACE RECOGNITION USING PRINCIPAL COMPONENT ANALYSIS WITH MEDIAN FOR NORMALIZA...
csandit1.1K visualizações
Deep learning summary por ankit_ppt
Deep learning summaryDeep learning summary
Deep learning summary
ankit_ppt1.5K visualizações
EMOTION DETECTION USING AI por Aantariksh Developers
EMOTION DETECTION USING AIEMOTION DETECTION USING AI
EMOTION DETECTION USING AI
Aantariksh Developers2.7K visualizações
Foundations: Artificial Neural Networks por ananth
Foundations: Artificial Neural NetworksFoundations: Artificial Neural Networks
Foundations: Artificial Neural Networks
ananth2.2K visualizações
Artificial Intelligence Course: Linear models por ananth
Artificial Intelligence Course: Linear models Artificial Intelligence Course: Linear models
Artificial Intelligence Course: Linear models
ananth1.4K visualizações
Face Recognition: From Scratch To Hatch / Эдуард Тянтов (Mail.ru Group) por Ontico
Face Recognition: From Scratch To Hatch / Эдуард Тянтов (Mail.ru Group)Face Recognition: From Scratch To Hatch / Эдуард Тянтов (Mail.ru Group)
Face Recognition: From Scratch To Hatch / Эдуард Тянтов (Mail.ru Group)
Ontico2.2K visualizações
Comparison of Learning Algorithms for Handwritten Digit Recognition por Safaa Alnabulsi
Comparison of Learning Algorithms for Handwritten Digit RecognitionComparison of Learning Algorithms for Handwritten Digit Recognition
Comparison of Learning Algorithms for Handwritten Digit Recognition
Safaa Alnabulsi466 visualizações
Facial Emoji Recognition por ijtsrd
Facial Emoji RecognitionFacial Emoji Recognition
Facial Emoji Recognition
ijtsrd2K visualizações
Introduction to machine learning and model building using linear regression por Girish Gore
Introduction to machine learning and model building using linear regressionIntroduction to machine learning and model building using linear regression
Introduction to machine learning and model building using linear regression
Girish Gore457 visualizações
Supervised learning and Unsupervised learning por Usama Fayyaz
Supervised learning and Unsupervised learning Supervised learning and Unsupervised learning
Supervised learning and Unsupervised learning
Usama Fayyaz5.1K visualizações

Similar a Automatic Attendace using convolutional neural network Face Recognition

Build a simple image recognition system with tensor flow por
Build a simple image recognition system with tensor flowBuild a simple image recognition system with tensor flow
Build a simple image recognition system with tensor flowDebasisMohanty37
51 visualizações17 slides
Top 10 deep learning algorithms you should know in por
Top 10 deep learning algorithms you should know inTop 10 deep learning algorithms you should know in
Top 10 deep learning algorithms you should know inAmanKumarSingh97
77 visualizações5 slides
Neural networks and deep learning por
Neural networks and deep learningNeural networks and deep learning
Neural networks and deep learningRADO7900
95 visualizações16 slides
Deep learning tutorial 9/2019 por
Deep learning tutorial 9/2019Deep learning tutorial 9/2019
Deep learning tutorial 9/2019Amr Rashed
587 visualizações99 slides
Deep Learning Tutorial por
Deep Learning TutorialDeep Learning Tutorial
Deep Learning TutorialAmr Rashed
5.4K visualizações85 slides
Introduction to deep learning por
Introduction to deep learningIntroduction to deep learning
Introduction to deep learningAmr Rashed
369 visualizações68 slides

Similar a Automatic Attendace using convolutional neural network Face Recognition(20)

Build a simple image recognition system with tensor flow por DebasisMohanty37
Build a simple image recognition system with tensor flowBuild a simple image recognition system with tensor flow
Build a simple image recognition system with tensor flow
DebasisMohanty3751 visualizações
Top 10 deep learning algorithms you should know in por AmanKumarSingh97
Top 10 deep learning algorithms you should know inTop 10 deep learning algorithms you should know in
Top 10 deep learning algorithms you should know in
AmanKumarSingh9777 visualizações
Neural networks and deep learning por RADO7900
Neural networks and deep learningNeural networks and deep learning
Neural networks and deep learning
RADO790095 visualizações
Deep learning tutorial 9/2019 por Amr Rashed
Deep learning tutorial 9/2019Deep learning tutorial 9/2019
Deep learning tutorial 9/2019
Amr Rashed587 visualizações
Deep Learning Tutorial por Amr Rashed
Deep Learning TutorialDeep Learning Tutorial
Deep Learning Tutorial
Amr Rashed5.4K visualizações
Introduction to deep learning por Amr Rashed
Introduction to deep learningIntroduction to deep learning
Introduction to deep learning
Amr Rashed369 visualizações
Cnn por rimshailyas1
CnnCnn
Cnn
rimshailyas181 visualizações
DL.pdf por ssuserd23711
DL.pdfDL.pdf
DL.pdf
ssuserd2371119 visualizações
Convolutional Neural Network and Its Applications por Kasun Chinthaka Piyarathna
Convolutional Neural Network and Its ApplicationsConvolutional Neural Network and Its Applications
Convolutional Neural Network and Its Applications
Kasun Chinthaka Piyarathna4.6K visualizações
11_Saloni Malhotra_SummerTraining_PPT.pptx por SaloniMalhotra23
11_Saloni Malhotra_SummerTraining_PPT.pptx11_Saloni Malhotra_SummerTraining_PPT.pptx
11_Saloni Malhotra_SummerTraining_PPT.pptx
SaloniMalhotra2328 visualizações
A Neural Network that Understands Handwriting por Shivam Sawhney
A Neural Network that Understands HandwritingA Neural Network that Understands Handwriting
A Neural Network that Understands Handwriting
Shivam Sawhney49 visualizações
Image captioning por Muhammad Zbeedat
Image captioningImage captioning
Image captioning
Muhammad Zbeedat15.2K visualizações
Deep learning por Ratnakar Pandey
Deep learningDeep learning
Deep learning
Ratnakar Pandey11.5K visualizações
softcomputing.pptx por Kaviya452563
softcomputing.pptxsoftcomputing.pptx
softcomputing.pptx
Kaviya4525634 visualizações
Facial Emotion Detection on Children's Emotional Face por Takrim Ul Islam Laskar
Facial Emotion Detection on Children's Emotional FaceFacial Emotion Detection on Children's Emotional Face
Facial Emotion Detection on Children's Emotional Face
Takrim Ul Islam Laskar36 visualizações
Deep learning from a novice perspective por Anirban Santara
Deep learning from a novice perspectiveDeep learning from a novice perspective
Deep learning from a novice perspective
Anirban Santara1.2K visualizações
introduction to deeplearning por Eyad Alshami
introduction to deeplearningintroduction to deeplearning
introduction to deeplearning
Eyad Alshami902 visualizações
Cognitive Toolkit - Deep Learning framework from Microsoft por Łukasz Grala
Cognitive Toolkit - Deep Learning framework from MicrosoftCognitive Toolkit - Deep Learning framework from Microsoft
Cognitive Toolkit - Deep Learning framework from Microsoft
Łukasz Grala827 visualizações
Deep Learning Demystified por Affine Analytics
Deep Learning DemystifiedDeep Learning Demystified
Deep Learning Demystified
Affine Analytics394 visualizações
Deep learning por Rajgupta258
Deep learning Deep learning
Deep learning
Rajgupta2581.7K visualizações

Último

A Guide to Applying for the Wells Mountain Initiative Scholarship 2023 por
A Guide to Applying for the Wells Mountain Initiative Scholarship 2023A Guide to Applying for the Wells Mountain Initiative Scholarship 2023
A Guide to Applying for the Wells Mountain Initiative Scholarship 2023Excellence Foundation for South Sudan
82 visualizações26 slides
12.5.23 Poverty and Precarity.pptx por
12.5.23 Poverty and Precarity.pptx12.5.23 Poverty and Precarity.pptx
12.5.23 Poverty and Precarity.pptxmary850239
381 visualizações30 slides
Education of marginalized and socially disadvantages segments.pptx por
Education of marginalized and socially disadvantages segments.pptxEducation of marginalized and socially disadvantages segments.pptx
Education of marginalized and socially disadvantages segments.pptxGarimaBhati5
43 visualizações36 slides
MercerJesse3.0.pdf por
MercerJesse3.0.pdfMercerJesse3.0.pdf
MercerJesse3.0.pdfjessemercerail
152 visualizações6 slides
Payment Integration using Braintree Connector | MuleSoft Mysore Meetup #37 por
Payment Integration using Braintree Connector | MuleSoft Mysore Meetup #37Payment Integration using Braintree Connector | MuleSoft Mysore Meetup #37
Payment Integration using Braintree Connector | MuleSoft Mysore Meetup #37MysoreMuleSoftMeetup
50 visualizações17 slides
NodeJS and ExpressJS.pdf por
NodeJS and ExpressJS.pdfNodeJS and ExpressJS.pdf
NodeJS and ExpressJS.pdfArthyR3
48 visualizações17 slides

Último(20)

12.5.23 Poverty and Precarity.pptx por mary850239
12.5.23 Poverty and Precarity.pptx12.5.23 Poverty and Precarity.pptx
12.5.23 Poverty and Precarity.pptx
mary850239381 visualizações
Education of marginalized and socially disadvantages segments.pptx por GarimaBhati5
Education of marginalized and socially disadvantages segments.pptxEducation of marginalized and socially disadvantages segments.pptx
Education of marginalized and socially disadvantages segments.pptx
GarimaBhati543 visualizações
MercerJesse3.0.pdf por jessemercerail
MercerJesse3.0.pdfMercerJesse3.0.pdf
MercerJesse3.0.pdf
jessemercerail152 visualizações
Payment Integration using Braintree Connector | MuleSoft Mysore Meetup #37 por MysoreMuleSoftMeetup
Payment Integration using Braintree Connector | MuleSoft Mysore Meetup #37Payment Integration using Braintree Connector | MuleSoft Mysore Meetup #37
Payment Integration using Braintree Connector | MuleSoft Mysore Meetup #37
MysoreMuleSoftMeetup50 visualizações
NodeJS and ExpressJS.pdf por ArthyR3
NodeJS and ExpressJS.pdfNodeJS and ExpressJS.pdf
NodeJS and ExpressJS.pdf
ArthyR348 visualizações
EILO EXCURSION PROGRAMME 2023 por info33492
EILO EXCURSION PROGRAMME 2023EILO EXCURSION PROGRAMME 2023
EILO EXCURSION PROGRAMME 2023
info33492202 visualizações
Career Building in AI - Technologies, Trends and Opportunities por WebStackAcademy
Career Building in AI - Technologies, Trends and OpportunitiesCareer Building in AI - Technologies, Trends and Opportunities
Career Building in AI - Technologies, Trends and Opportunities
WebStackAcademy45 visualizações
Class 9 lesson plans por TARIQ KHAN
Class 9 lesson plansClass 9 lesson plans
Class 9 lesson plans
TARIQ KHAN82 visualizações
PRELIMS ANSWER.pptx por souravkrpodder
PRELIMS ANSWER.pptxPRELIMS ANSWER.pptx
PRELIMS ANSWER.pptx
souravkrpodder50 visualizações
UNIDAD 3 6º C.MEDIO.pptx por MarcosRodriguezUcedo
UNIDAD 3 6º C.MEDIO.pptxUNIDAD 3 6º C.MEDIO.pptx
UNIDAD 3 6º C.MEDIO.pptx
MarcosRodriguezUcedo146 visualizações
Create a Structure in VBNet.pptx por Breach_P
Create a Structure in VBNet.pptxCreate a Structure in VBNet.pptx
Create a Structure in VBNet.pptx
Breach_P86 visualizações
Six Sigma Concept by Sahil Srivastava.pptx por Sahil Srivastava
Six Sigma Concept by Sahil Srivastava.pptxSix Sigma Concept by Sahil Srivastava.pptx
Six Sigma Concept by Sahil Srivastava.pptx
Sahil Srivastava44 visualizações
ICS3211_lecture 09_2023.pdf por Vanessa Camilleri
ICS3211_lecture 09_2023.pdfICS3211_lecture 09_2023.pdf
ICS3211_lecture 09_2023.pdf
Vanessa Camilleri141 visualizações
Guess Papers ADC 1, Karachi University por Khalid Aziz
Guess Papers ADC 1, Karachi UniversityGuess Papers ADC 1, Karachi University
Guess Papers ADC 1, Karachi University
Khalid Aziz99 visualizações
JRN 362 - Lecture Twenty-Three (Epilogue) por Rich Hanley
JRN 362 - Lecture Twenty-Three (Epilogue)JRN 362 - Lecture Twenty-Three (Epilogue)
JRN 362 - Lecture Twenty-Three (Epilogue)
Rich Hanley41 visualizações
Nelson_RecordStore.pdf por BrynNelson5
Nelson_RecordStore.pdfNelson_RecordStore.pdf
Nelson_RecordStore.pdf
BrynNelson546 visualizações
Jibachha publishing Textbook.docx por DrJibachhaSahVetphys
Jibachha publishing Textbook.docxJibachha publishing Textbook.docx
Jibachha publishing Textbook.docx
DrJibachhaSahVetphys54 visualizações

Automatic Attendace using convolutional neural network Face Recognition

  • 1. Automatic Attendance System using Face Recognition P R E S E N T E D BY : VAT S A L B O R A D H A R A
  • 2. WHAT WE USE • TensorFlow • TensorFlow is a free and open-source software library for dataflow and differentiable programming across a range of tasks. It is a symbolic math library, and is also used for machine learning applications such as neural networks. • TensorFlow is Google Brain's second-generation system
  • 3. • Keras • Keras is an open-source neural-network library written in Python. It is capable of running on top of TensorFlow, Microsoft Cognitive Toolkit, Theano, or PlaidML. Designed to enable fast experimentation with deep neural networks. • In 2017, Google's TensorFlow team decided to support Keras in TensorFlow's core library. Chollet explained that Keras was conceived to be an interface rather than a standalone machine-learning framework. It offers a higher-level, more intuitive set of abstractions that make it easy to develop deep learning models regardless of the computational backend used.
  • 4. • Open CV • OpenCV is Open Source Computer Vision Library is an open source computer vision and machine learning software library. • OpenCV is a library of programming functions mainly aimed at real-time computer vision. Originally developed by Intel.
  • 5. DEEP LEARNING • Deep learning is an artificial intelligence function that imitates the workings of the human brain in processing data and creating patterns for use in decision making. Deep learning is a subset of machine learning in artificial intelligence (AI) that has networks capable of learning unsupervised from data that is unstructured or unlabeled. Also known as deep neural learning or deep neural network. • use a cascade of multiple layers of nonlinear processing units for feature extraction and transformation. Each successive layer uses the output from the previous layer as input. • learn in supervised (e.g., classification) and/or unsupervised (e.g., pattern analysis) manners. • learn multiple levels of representations that correspond to different levels of abstraction; the levels form a hierarchy of concepts.
  • 6. NEURAL NETWORKS AND DEEP LEARNING • A deep neural network (DNN) is an artificial neural network (ANN) with multiple layers between the input and output layers. ... Each mathematical manipulation as such is considered a layer, and complex DNN have many layers, hence the name "deep" networks.
  • 7. CONT… • Artificial neural networks (ANNs) or connectionist systems are computing systems inspired by the biological neural networks that constitute animal brains. Such systems learn (progressively improve their ability) to do tasks by considering examples, generally without task-specific programming. For example, in image recognition, they might learn to identify images that contain cats by analyzing example images that have been manually labeled as "cat" or "no cat" and using the analytic results to identify cats in other images. They have found most use in applications difficult to express with a traditional computer algorithm using rule-based programming. • An ANN is based on a collection of connected units called artificial neurons, (analogous to biological neurons in brain). Each connection (synapse) between neurons can transmit a signal to another neuron. The receiving (postsynaptic) neuron can process the signal(s) and then signal downstream neurons connected to it. Neurons may have state, generally represented by real numbers, typically between 0 and 1. Neurons and synapses may also have a weight that varies as learning proceeds, which can increase or decrease the strength of the signal that it sends downstream. • Typically, neurons are organized in layers. Different layers may perform different kinds of transformations on their inputs. Signals travel from the first (input), to the last (output) layer, possibly after traversing the layers multiple times. • The original goal of the neural network approach was to solve problems in the same way that a human brain would. Over time, attention focused on matching specific mental abilities, leading to deviations from biology such as backpropagation, or passing information in the reverse direction and adjusting the network to reflect that information. • Neural networks have been used on a variety of tasks, including computer vision, speech recognition, machine translation, social network filtering, playing board and video games and medical diagnosis.
  • 8. LIBRARY USE • scikit-learn • Scikit-learn is a free software machine learning library for the Python programming language. It features various classification, regression and clustering algorithms including support vector machines, random forests, gradient boosting, k- means and DBSCAN, and is designed to interoperate with the Python numerical and scientific libraries NumPy and SciPy
  • 9. • Numpy • NumPy is a library for the Python programming language, adding support for large, multi-dimensional arrays and matrices, along with a large collection of high-level mathematical functions to operate on these arrays. • • NumPy is a general-purpose array-processing package. It provides a high- performance multidimensional array object, and tools for working with these arrays. • • It is the fundamental package for scientific computing with Python. It contains various features including these important ones: • A powerful N-dimensional array object
  • 10. • Pandas • Pandas is an open-source Python Library providing high-performance data manipulation and analysis tool using its powerful data structures. The name Pandas is derived from the word Panel Data – an Econometrics from Multidimensional data. • Key Features of Pandas • Fast and efficient DataFrame object with default and customized indexing. • Tools for loading data into in-memory data objects from different file formats. • Data alignment and integrated handling of missing data. • Reshaping and pivoting of date sets. • Label-based slicing, indexing and subsetting of large data sets. • Columns from a data structure can be deleted or inserted. • Group by data for aggregation and transformations. • High performance merging and joining of data. • Time Series functionality.
  • 11. GUI • Tkinter • Python offers multiple options for developing GUI (Graphical User Interface). Out of all the GUI methods, tkinter is most commonly used method. It is a standard Python interface to the Tk GUI toolkit shipped with Python. Python with tkinter outputs the fastest and easiest way to create the GUI applications.
  • 12. WORKING OF THE PROPOSED SYSTEM
  • 14. HOW A COMPUTER READ AN IMAGE Size of the Image will be – B x A x 3
  • 15. WHY CONVOLUTIONAL NEURAL NETWORKS ? In Case of CNN the neuron in a layer will only be connected to a small region of the layer before it, instead of all of the neurons in a fully-connected manner.
  • 16. WHAT IS CONVOLUTIONAL NEURAL NETWORKS ? • In machine learning, a convolutional neural network(CNN, or ConvNet) is a class of deep, feed-forward artificial neural networks that has successfully been applied to analyzing visual imagery.
  • 17. HOW CNN WORKS ? Convolutional Neural Networks have following layers:  Convolution  ReLU Layer  Pooling  Fully Connected
  • 18. TRICKIER CASE Here, We will have some problems, because X and O images won’t always have the same images. There can be certain deformations. Consider the diagrams shown below:
  • 20. HOW CNN WORKS ? A computer understands an image using numbers at each pixels. In our example, we have considered that a black pixel will have value 1 and white pixel will have -1 value.
  • 21. HOW CNN WORKS ? Using normal techniques, computers compare these images as:
  • 22. HOW CNN WORKS ? CNN compares the images piece by piece. The pieces that it looks for are called features. By finding rough feature matches, in roughly the same position in two images ,CNN gets a lot better at seeing similarity than whole-image matching schemes.
  • 23. HOW CNN WORKS ? We will be taking three features or filters, as shown below:
  • 24. HOW CNN WORKS ? These are small pieces of the bigger image. We choose a feature and put it on the input image, if it matches then the image is classified correctly.
  • 25. CONVOLUTION LAYER Steps Involved in Convolution Layer Here we will more the feature/filter to every possible position on the images. • Step - 1 : Line up the feature and the image. • Step - 2 : Multiply each image pixel by the corresponding feature pixel.
  • 28. STEPS INVOLVED IN CONVOLUTION LAYER Here we will more the feature/filter to every possible position on the images. • Step - 1 : Line up the feature and the image patch ( by default image patch size is taken of 9 pixels ). • Step - 2 : Multiply each image pixel by the corresponding feature pixel. • Step - 3 : Add them up • Step - 4 : Divide by total number of pixels in the feature.
  • 29. ADDING AND DIVIDING BY THE TOTAL NUMBER OF PIXELS
  • 30. CREATING A MAP TO PUT THE VALUE OF THE FILTER Now to keep track of where that feature was, we create a map and put the value of the filter at that place
  • 31. SLIDING THE FILTER THROUGHOUT THE IMAGE Now, using the same feature and move it to another location and perform the filtering again.
  • 32. CONVOLUTION LAYER Now we will put the value of the filter at that position
  • 33. CONVOLUTION LAYER OUTPUT Similarly, we will move the feature to every other positions of the image and will see how the feature matches that area. Finally we will get an output as:
  • 35. RELU LAYER  In this layer we remove every negative values from the filtered images and replaces it with zero’s  This is done to avoid the values from summing up to zero Rectified Linear Unit (ReLU) transform function only activates a node.
  • 38. OUTPUT FOR OUR FEATURE
  • 39. OUTPUT FOR ALL FEATURES
  • 40. POOLING LAYER In this layer we shrink the image stack into a smaller size steps : 1. Pick a window size (usually 2 or 3). 2. Pick a stride (usually 2). 3. Walk you window across your filtered images. 4. From each window, take the maximum value. Let’s perform pooling with a window size 2 and a stride 2
  • 41. CALCULATING THE MAXIMUM VALUE IN EACH WINDOW Let’s start with our first filtered image In our first window the maximum or highest value is 1, so we track and move the window two strides
  • 42. MOVING THE WINDOW ACROSS THE ENTIRE IMAGE
  • 43. OUTPUT AFTER PASSING THROUGH POOLING LAYER
  • 44. STACKING UP THE LAYERS
  • 45. STACKING UP THE LAYERS
  • 46. FULLY CONNECTED LAYER This is the final layer where the actual classification happens Here we take our filtered and shrinked images and put them into a single list
  • 47. OUTPUT When we feed in, ‘X’ and ‘O’. Then there will be some element in the vector that will be high. Consider the image below, as you can see for ‘X’ there are different elements that are high and similarly, for ‘O’ we have different elements that are high.
  • 48. PREDICTION Consider the below list of a new input image:
  • 49. COMPARING THE INPUT VECTOR WITH X
  • 50. COMPARING THE INPUT VECTOR WITH O
  • 51. RESULT The input images is classified as ‘X’