REPORT
REPORT
REPORT
ABSTRACT
1.1 INTRODUCTION
Attendance marking is a regular activity in institutions and
industries. Attendance is considered an important factor for both
students and teachers in educational organizations. Managing student
attendance in the classroom is a tedious job. Attendance systems are
grouped into two broad categories i.e., manual and automated attendance
systems. Among manual attendance systems, the most common is the
roll call method, in which a teacher marks the attendance by calling out
the names of the students one by one. This method is extremely out-
dated, and in the case of a large number of students in a class, it can take
more than 10 minutes each day and has the most number of chances for
proxy attendance marking. The second method is signing attendance on
a register or attendance sheet. It is the most time-consuming method and
it can easily be manipulated and forged if left unsupervised. It is
therefore important to develop an automated attendance system to mark
attendance efficiently automatically without any human intervention.
Face recognition is the most viable solution for developing attendance
systems as face recognition is considered the least intrusive method of
identification, images can be captured from a distance, cost-effective
solution, no chance of marking proxy attendance and it is a user friendly
yet reliable method. In this paper, we developed an automated
attendance system from videos captured from a camera and recording
the attendance of the students through face detection and recognition.
IMAGE PROCESSOR
KNOWLEDGE RESULT
PREPROCESSING RECOGNITION &
BASE INTERPRETATION
IMAGE PREPROCESSING:
In preprocessing section, the input image may be in different size,
contains noise and it may be in different colour combination. These
parameters need to be modified according to the requirement of the
process. Image noise is most apparent in image regions with low signal
level such as shadow regions or under exposed images. There are so
many types of noise like salt and pepper noise, film grains etc., All these
noise are removed by using filtering algorithms. Among the several
filters, weiner filter is used. In preprocessing module image acquired
will be processed for correct output. Pre-processing was done by using
some algorithm. For all images the pre-processing should be done so
that the result can be obtained in the better way
FEATURE EXTRACTION:
Statistics is the study of the collection, organization, analysis, and
interpretation of data. It deals with all aspects of this, including the
planning of data collection in terms of the design of surveys and
experiments. This is the meaning of statistics. Statistical feature of
image contains • Mean • Variance • Skewness • Standard deviation
Texture Analysis Using the Gray-Level Co-Occurrence Matrix
(GLCM). A statistical method of examining texture that considers the
spatial relationship of pixels is the gray-level co-occurrence matrix
(GLCM), also known as the gray-level spatial dependence matrix.
Typical compromise: 16 gray levels and window size of 30 or 50 pixels
on each side.
CLASSIFICATION
In order to classify a set of data into different classes or categories,
the relationship between the data and the classes into which they are
classified must be well understood. To achieve this by computer, the
computer must be trained ♦ Training is key to the success of
classification Classification techniques were originally developed
Features are attributes of the data elements based on which the elements
are assigned to various classes. 1).The image classifier performs the role
of a discriminant - discriminates one class against others.
2).Discriminant value highest for one class, lower for other classes
(multiclass) 3).Discriminant value positive for one class, negative for
another class (two class).
CHAPTER 2
LITERATURE SURVEY
YEAR: 2019
YEAR: 2020
YEAR: 2020
YEAR: 2020
YEAR: 2019
YEAR: 2019
YEAR: 2020
CHAPTER 3
DISADVANTAGES
• Less accuracy
• Less sensitivity
• Time consuming
BLOCK DIAGRAM
CNN training
Attendance
system Register data
base
Video into
Testing live video frames
CNN features
conversion
ADVANTAGE
• Time saving
APPLICATION
CHAPTER 4
SOFTWARE REQUIREMENT
• processor - INTEL
• RAM - 4 GB (min)
• Hard Disk - 20 GB
Python Technology:
Rather than having all of its functionality built into its core, Python
was designed to be highly extensible. This compact modularity has made
it particularly popular as a means of adding programmable interfaces to
existing applications. Van Rossum's vision of a small core language with
a large standard library and easily extensible interpreter stemmed from
his frustrations with ABC, which espoused the opposite approach.
Python uses duck typing and has typed objects but untyped
variable names. Type constraints are not checked at compile time;
rather, operations on an object may fail, signifying that the given object
is not of a suitable type. Despite being dynamically typed, Python is
strongly typed, forbidding operations that are not well-defined (for
example, adding a number to a string) rather than silently attempting to
make sense of them.
The Python Platform:
There are four functions for getting information about the current
Python interpreter. python_version() and python_version_tuple() return
different forms of the interpreter version with major, minor, and patch
level components. python_compiler() reports on the compiler used to
build the interpreter. And python_build() gives a version string for the
build of the interpreter.
So what are the tangible benefits the language brings to those who
decided to use it as a core technology? Below you will find just some of
those reasons.
PRODUCTIVITY AND SPEED
It is said that the language is relatively simple so you can get pretty
quick results without actually wasting too much time on constant
improvements and digging into the complex engineering insights of the
technology. Even though Python programmers are really in high demand
these days, its friendliness and attractiveness only help to increase
number of those eager to master this programming language.
BROAD APPLICATION
Python compiler
compiler.parse(buf)
Returns an abstract syntax tree for the Python source code in buf. The
function raises Syntax Error if there is an error in the source code. The
return value is a compiler.ast. Module instance that contains the tree.
compiler.parseFile(path)
Return an abstract syntax tree for the Python source code in the file
specified by path. It is equivalent to parse(open(path).read()).
LIMITATIONS
There are some problems with the error checking of the compiler
package. The interpreter detects syntax errors in two distinct phases.
One set of errors is detected by the interpreter’s parser, the other set by
the compiler. The compiler package relies on the interpreter’s parser, so
it get the first phases of error checking for free. It implements the second
phase itself, and that implementation is incomplete. For example, the
compiler package does not raise an error if a name appears more than
once in an argument list: def f(x, x): ...
AST NODES
class compiler.ast.Node
Each Node instance has a lineno attribute which may be None. XXX Not
sure what the rules are for which nodes will have a useful lineno.
All Node objects offer the following methods:
getChildren()
Returns a flattened list of the child nodes and objects in the order they
occur. Specifically, the order of the nodes is the order in which they
appear in the Python grammar. Not all of the children are Node
instances. The names of functions and classes, for example, are plain
strings.
getChildNodes()
Returns a flattened list of the child nodes in the order they occur. This
method is like getChildren(), except that it only returns those children
that are Node instances.
The While node has three attributes: test, body, and else_. (If the
natural name for an attribute is also a Python reserved word, it can’t be
used as an attribute name. An underscore is appended to the word to
make it a legal identifier, hence else_ instead of else.)
The If node only defines two attributes: tests and else_. The tests
attribute is a sequence of test expression, consequent body pairs. There
is one pair for each if/elif clause. The first element of the pair is the test
expression. The second elements is a Stmt node that contains the code to
execute if the test is true.
DEVELOPMENT ENVIRONMENTS:
Other shells, including IDLE and IPython, add further abilities such as
auto-completion, session state retention and syntax highlighting.
IMPLEMENTATIONS
Reference implementation
Other implementations
PyPy is a fast, compliant interpreter of Python 2.7 and 3.5. Its just-in-
time compiler brings a significant speed improvement over CPython but
several libraries written in C cannot be used with it.
Unsupported implementations
Other just-in-time Python compilers have been developed, but are now
unsupported:
Google began a project named Unladen Swallow in 2009, with the aim
of speeding up the Python interpreter five-fold by using the LLVM, and
of improving its multithreading ability to scale to thousands of cores,
while ordinary implementations suffer from the global interpreter lock.
Jython enables the use of the Java class library from a Python
program.
IronPython follows a similar approach in order to run Python
programs on the .NET Common Language Runtime.
The RPython language can be compiled to C, and is used to build
the PyPy interpreter of Python.
Pyjs compiles Python to JavaScript.
Cython compiles Python to C and C++.
Numba uses LLVM to compile Python to machine code.
Pythran compiles Python to C++.
Somewhat dated Pyrex (latest release in 2010) and Shed Skin
(latest release in 2013) compile to C and C++ respectively.
Google's Grumpy compiles Python to Go.
MyHDL compiles Python to VHDL.
Nuitka compiles Python into C++.
PERFORMANCE
A performance comparison of various Python implementations on
a non-numerical (combinatorial) workload was presented at EuroSciPy
'13.
Sphinx
Epydoc
HeaderDoc
Pydoc
USES
PANDAS
CSV READER
PROCESSOR
MICROPROCESSOR
ALU stands for arithmetic logic unit, which help out to execute
all arithmetic and logic operations.
FPU (Floating Point Unit) is also called the “Math coprocessor”
that helps to manipulate mathematically calculations.
Registers store all instructions and data, and it fires operands to
ALU and save the output of all operations.
Cache memory helps to save more time in travelling data from
main memory.
Primary CPU Processor Operations are
TYPES OF PROCESSOR
WEB CAM
Video security
Webcams can be used to take video clips and still pictures. Various
software tools in wide use can be employed for this, such as Pic Master
(for use with Windows operating systems), Photo Booth (Mac), or
Cheese (with Unix systems). For a more complete list see Comparison
of webcam software.
Special software can use the video stream from a webcam to assist
or enhance a user's control of applications and games. Video features,
including faces, shapes, models and colors can be observed and tracked
to produce a corresponding form of control. For example, the position of
a single light source can be tracked and used to emulate a mouse pointer,
a head-mounted light would enable hands-free computing and would
greatly improve computer accessibility.
Astro photography
OPENCV
YOLO
This process requires the R-CNN to classify 2000 regions per image,
which makes it very time-consuming (47 seconds per individual test
image). Thus it, cannot be implemented in real-time. Additionally, R-
CNN uses a fixed selective algorithm, which means no learning process
occurs during this stage so the network might generate an inferior
region proposal.
THE NETWORK
YOLO V3
YOLO V3 is an incremental upgrade over YOLO V2, which uses
another variant of Dark net. This YOLO V3 architecture consists of 53
layers trained on Image net and another 53 tasked with object detection
which amounts to 106 layers. While this has dramatically improved the
accuracy of the network, it has also reduced the speed from 45 fps to 30
fps.
DARKNET
CNN ARCHITECTURE
2) Extra shape feature extracted from HOG algorithm for provide the
better accuracy
(1) Image input layer: The Image input Layer learn the feature from the
input image. The first step define pixel of input image, the image size
define.
CNN ARCHITECTURE
CHAPTER 6
SYSTEM TESTING
The purpose of testing is to discover errors. Testing is the
process of trying to discover every conceivable fault or weakness in a
work product. It provides a way to check the functionality of
components, sub-assemblies, assemblies and/or a finished product. It is
the process of exercising software with the intent of ensuring that the
Software system meets its requirements and user expectations and does
not fail in an unacceptable manner. There are various types of test. Each
test type addresses a specific testing requirement.
Test Results: All the test cases mentioned above passed successfully.
No defects encountered.
Test Results: All the test cases mentioned above passed successfully.
No defects encountered.
CHAPTER 7
UML DIAGRAM
SEQUENCE DIAGRAM:
PRESENT OR
USER ATTENDANCE NOT
SYSTEM
DATA FLOW DIAGRAM:
TRAINING OF
USER REGISTER CAMERA
IMAGE
FRAME PRESENT OR
MATCHING
NOT
CHAPTER 6
RESULTS
DATASET CREATION
DATA COLLECTION
CHAPTER-7
FACE EXTRACTION
OUTPUT
AUTOMATED ATTENDANCE ENTRY
EXPECTED RESULT
Expected result of this proposed system is to mark the attendance for the
students in the class by automatically using single group video. The
marking of attendance is finally achieved in the excel sheet based on the
presence or absence of the student which is detected in the above model
using face recognition.
CHAPTER 7
7.1 CONCLUSION