0% found this document useful (0 votes)
186 views

Voting System Report 2

This document discusses a biometric voting system using face recognition for voter authentication. It proposes using face detection and recognition algorithms to match a voter's captured image to their photo on file to verify their identity before allowing them to cast a vote. The document provides background on related research and outlines the overall system design, modules, implementation, and results of the project.

Uploaded by

Aravind S
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
186 views

Voting System Report 2

This document discusses a biometric voting system using face recognition for voter authentication. It proposes using face detection and recognition algorithms to match a voter's captured image to their photo on file to verify their identity before allowing them to cast a vote. The document provides background on related research and outlines the overall system design, modules, implementation, and results of the project.

Uploaded by

Aravind S
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 65

BIOMETRIC VOTING SYSTEM USING FACE

RECOGNITION

A PROJECT REPORT

SUBMITTED BY
DHAKSHAYANI.R (710716205009)
NIVETHA.M (710716205027)
SHURUTHI.S (710716205045)

BACHELOR OF TECHNOLOGY
IN
INFORMATION TECHNOLOGY

Dr. N.G.P. INSTITUTE OF TECHNOLOGY, COIMBATORE


ANNA UNIVERSITY: CHENNAI 600 025
ANNA UNIVERSITY:: CHENNAI 600 025

BONAFIDE CERTIFICATE
Certified that this project report “BIOMETRIC VOTING SYSTEM USING
FACE RECOGNITION” is the bonafide work of “DHAKSHAYANI. R,
NIVETHA. M, SHRUTHI. S” who carried out the project work under my
supervision.

SIGNATURE SIGNATURE

SUPERVISOR HEAD OF THE DEPARTMENT

D. PREMKUMAR MBA.,M.E Dr.S.SANKAR GANESH M.E., PhD

Assistant Professor Head of the Department,

Department of Information Technology, Department of InformationTechnology,

Dr.N.G.P Institute of Technology, Dr.N.G.P Institute of Technology,

Kalapatti Road, Kalapatti Road,

Coimbatore-641 048 Coimbatore-641 048

Submitted for the University Project Viva-Voce held on _______________

_____________ ______________

INTERNAL EXAMINER EXTERNAL EXAMINER


ACKNOWLEDGEMENT

We extend our heartiest thanks to Dr. NALLA G. PALANISWAMI,


Chairman, KMCH & Dr. N.G.P. Educational Institutions for providing us the
necessary infrastructure to do our project work.

We express our gratitude to Dr. THAVAMANI D. PALANISWAMI,


Secretary, Dr. N.G.P. Institute of Technology, for providing us the facilities to do
our project work.

We would like to express our hearty thanks and gratitude to Dr.


K.PORKUMARAN, Principal, Dr. N.G.P. Institute of Technology, for his earnest
encouragement.

We extend our deep sense of gratitude to Dr. S.SANKAR GANESH, Head


of the Department, Department of Information Technology, for his valuable
guidance and constructive suggestion at all stages of our project from inception to
completion.

We express our hearty thanks to our project guide, Mr. T. Vijaya kumar,
Assistant Professor, Department of Information Technology, for his valuable
guidance and timely help for completing our project.
We express our sincere thanks to our project coordinator, Mr. D.PREM
KUMAR, Assistant professor, Department of Information Technology, for his
support in developing our project.

We would also like to express our gratitude to the Faculty members of


Department of Information Technology and also to our family for their kind
patronage.
REPORT FOR PHASE -1

Certified that this project report “BIOMETRIC VOTING SYSTEM


USING FACE RECOGNITION”is the report of
DHAKSHAYANI.R(710716205009),NIVETHA.M(710714205027)
SHURUTHI.S(710716205045)under the guidance of
Mr.T.VIJAYAKUMAR AP/IT who carried out the project work under
my supervision.

SIGNATURE OF THE SIGNATURE OF THE


SUPERVISOR HEAD OF THE DEPARTMENT
D.PREMKUMAR MBA., M.E MR.SANKAR GANESH
Assistant professor Professor & Head
Department of Information Department of Information
Technology, Technology,
Dr.N.G.P Institute of technology, Dr.N.G.P Institute of technology,
Kalapatti Road, CBE-48 Kalapatti Road, CBE-48
ABSTRACT

In this system a Face Detection and Recognition system (FDR) used as


an Authentication technique in systematic voting, which one of
electronic is voting types, is proposed. Web based voting allows the
voter to vote from any place in state or out of state. The voter’s image is
captured and passed to a face detection algorithm (Eigenface or Gabor
filter) which is used to detect his face from the image and save it as the
first matching point. The voter’s National identification card number is
used to retrieve and return his saved photo from the database of the
Supreme Council elections (SCE) which is passed to the same detection
algorithm (Eigenface or Gabor filter) to detect face from it and save it as
second matching point. The two matching points are used by a matching
algorithm to check wither they are identical or not. If the results of the
matching algorithm are two point match then checks wither this person
has the right to vote or not. If he has right to vote then a voting form is
presented to him.
TABLE OF CONTENT

CHAPTER NO TITLE PAGE ABSTRACT


iv
LIST OF TABLE vii LIST OF
FIGURES viii LIST ABBREVIATIONS
ix
1. INTRODUCTION 1

1.1. ORIGINAL FACE DETECTION


ALGORITHM 1
1.2. RELATED RESEARCH 1
1.3. INNOVATIVE VOTING SYSTEM-
A SUMMARY 2
2. LITERATURE REVIEW 3

2.1. PHYSICAL -CYBER SOCIAL

COMPUTING 3

2.2. GEOMETRIC FEATURE –BASED

FACIAL EXPRESSION RECOGNITION IN IMAGE

SEQUENCE USING MULTI –CLASS ADABOOST

AND SUPPORT VECTOR MACHINES 3

2.3. COGNITIVE FACE ANALYSIS

SYSTEM FOR FUTURE INTERACTIVE TV 3

2.4. REAL- TIME FACE-PRIORITY AUTO

FOCUS FOR DIGITAL AND CELL-PHONE CAMERAS 3

2.5. CASCADE ADABOOST CLASSIFIERS


WITH STAGE FEATURES OPTIMIZATION FOR

CELLULAR PHONE EMBEDDED FACE DETECTION

SYSTEM 3

2.6. ROBUST REAL-TIME FACE

DETECTION 3

3. SYSTEM DESIGN 5

3.1. SYSTEM ARCHITECTURE 5

3.2. DATAFLOW DIAGRAM 6

3.3. USE-CASE DIAGRAM 7

4. SYSTEM ANALYSIS 7

4.1. EXISTING SYSTEM 7

4.2. PROPOSED SYSTEM 7

5. SYSTEM REQUIREMENTS 9 5.1. HARDWARE


REQUIREMENTS 23

5.2. SOFTWARE REQUIREMENTS 24 5.3.


SOFTWARE DESCRIPTION 25
5.3.1. MICROSOFT.NET

FRAMEWORK 26

5.3.2. THE .NET FRAMEWORK 27

5.4. MANAGED CODE 30

5.5. MANAGED DATA 31

5.6. COMMON TYPE SYSTEM 32

5.7. COMMON LANGUAGE

SPECIFICATION 33

5.8. THE CLASS LIBRARY 34

5.9. LANGUAGES SUPPORTED BY

.NET 35

5.10. CONSTRUCTORS AND

DISTRUCTORS 36

5.11. GARBAGE COLLECTION 37

5.12. OVERLOADING 38

5.13. MULTITHREADING 39
5.14. STRUCTURED EXCEPTION

HANDLING 40

5.14.1. THE .NET FRAMEWORK 40

5.14.2. OBJECTIVES OF

.NET FRAMEWORK 41

6. MODULE DESCRIPTION 42

6.1. VOTER REGISTRATION 32 6.2. FACE


RECOGNITION 32

6.3. CANDIDATE REGISTRATION 33

6.4. ADMIN PANEL 34

6.5. VOTING PHASE 35

6.6. COUNTING AND RESULTING 36

7. IMPLEMENTATION AND RESULTS 37

7.1. CODING 37

7.1.1. VOTER REGISTRATION 38

7.1.2. FACE BIOMETRIC VOTING 39

7.2. SCREEN SHOTS 40


8. CONCLUSION 41

9. REFERENCES 42
CHAPTER 1
INTRODUCTION

Face Biometric based system is a voting system in which the


election data is recorded, stored and processed primarily as digital
information and it needs to address, obtain, mark, deliver, and count
ballots via computer. Therefore voter identification and authentication
techniques are essential for more secure platform mechanisms to
overcome vulnerabilities of the client used by the voter to cast her vote.
Security can be achieved using some of techniques of electronic voting
such as Guidelines, only need to develop a list of instructions and then
send it via email or put it on the election web page; Bootable CD,
approach to overcome the secure platform problem was proposed by
Otten (2005). She recommended developing a special voting operating
system based on Knoppix. It is an operating system based on Debian that
is designed to be booted and run directly from a CD or DVD; Smart
Cards as Observers, in which an observer is a manipulation resistant
piece of hardware which is owned by the voter. The idea is that the
observer is not allowed to directly communicate with the Internet. All
the communication needs to be forwarded by the voter; Code Sheets, the
idea of code sheets is that the voter gets a piece of paper together with
the general election information via post where each candidate or each
party is linked to a particular code.

Now, in order to cast a voter the voter does not click on the
candidate or party of her choice but enters the corresponding code;
Trusted Computing, the idea is to use an appropriate security
architecture based on a security kernel and on Trusted Computing
elements. Such a solution is the only one that could efficiently overcome
malicious software on the voting casting device as well as potential
malicious voters installing malware on purpose on their device.
However, currently, there are still open problems with Trusted
computing itself and it is not wide-spread enough; Individual
Verifiability, the idea is that you use one software to prepare a voter and
a second one to verify that the vote has been properly prepared
(encrypted).
Plus, you can also do the verification with an offline tool In this
research, we proposed an authentication technique using a Face
Detection and Recognition system in Face Biometric based to achieve
the rules of Supreme Electoral Council as follow: Only eligible persons
vote, No person gets to vote more than once, the vote is secret, and each
(correctly cast) vote gets counted and to achieve the aims of Face
Biometric based as follow: increase participation, lower the costs of
running elections, and improve the accuracy of results. In general, an
FDR system starts by Interfacing with an image source for grabbing
facial images, Automatic detection or manual selection of human face
may be found within the scene, Manipulate (create, add, delete) a
database of faces, Launching the recognition process by comparing the
face previously detected with the database's faces.

Fig.1. Voting System Based on Face Recognition using Gabor Filters.


1.1 Original Face Detection Algorithm

As shown in Fig. 1, the AdaBoost-based detection algorithm is


mainly an N-stage-based cascade classifier. The computations in each
stage include Haar-like feature value calculation, light compensation for
classification threshold, and classification using the weighted weak
classifiers. Based on the subwindows that are generated by traversing the
whole image according to the scale and shifting factor, the Haar-like
feature value is fast computed on the integral image. The integral image
is made up of the sums of gray values that locate above and to the left of
the location in the image.

It is characterized by dualdirection computation: horizontal and


vertical accumulation (or row and column accumulation). Hence, we
propose a dualdirection-based computation method to accelerate this
part in Section II-B. The squared integral image supports light
compensation. As shown in (1) and (2), the light compensated threshold
Tnew is equal to the original threshold Tori multiplied by the square root
of parameter C. C is obtained on the squared image and is equal to the
sum of the squared integral image pixel I divided by the size of
subwindow Ssize. Complex operations such as division and
multiplications are contained in this process. The computations of the
stages are independent and sequential. There are many Haar-like
features in each stage, and these feature values can be computed in
parallel. The outcome of the stage determines whether the subwindow
contains the face targets.

If the subwindow contains the face target, this subwindow is


passed to the next stage for further judging. Otherwise, it is discarded.
The subwindows’ outputs from the final stage are the candidate face
windows. The data diversity in the face detection inspires us to explore a
way to reduce the redundant data. We test the algorithm using the video
graphics array (VGA) images in the MIT + CMU data set and find that
the subwindow can be used to reduce the redundant data. As shown in
Table I, the subwindow parameters are denoted as the form of (scaling
factor.The smaller the factor is, the higher detection rate (DR) is
achieved. (The false-positive rate (FPR) in the experiments is set to
0.002.)
However, more subwindows are generated, and they will cause
more processing time. DR is equal to the number of correct faces
divided by the number of true faces, and FPR denotes the number of
falsely detected subwindows against the total number of the detected
ones. According to the testings, we conclude that the subwindow
parameters can achieve the coarse or the fine granularity of
classification. In many detection tasks, since The smaller the factor is,
the higher detection rate (DR) is achieved. (The false-positive rate (FPR)
in the experiments is set to 0.002.)
However, more subwindows are generated, and they will cause
more processing time. DR is equal to the number of correct faces
divided by the number of true faces, and FPR denotes the number of
falsely detected subwindows against the total number of the detected
ones. According to the testings, we conclude that the subwindow
parameters can achieve the coarse or the fine granularity of
classification. In many detection tasks, since the frame contents in the
video stream are always changing, the original detection on each frame
will bring a lot of unnecessary computation in the cascade classification.
We are inspired that the subwindow adaptive mechanism that adjusts the
subwindow parameter at the runtime according to the frame contents can
reduce the data amounts for the cascade classification. If the hardware
architecture can support this mechanism, the cascaded classification
speed will be improved.

The frame contents in the video stream are always changing, the
original detection on each frame will bring a lot of unnecessary
computation in the cascade classification. We are inspired that the
subwindow adaptive mechanism that adjusts the subwindow parameter
at the runtime according to the frame contents can reduce the data
amounts for the cascade classification. If the hardware architecture can
support this mechanism, the cascaded classification speed will be
improved.

1.2 Related Researches

In related research, several voter identification and authentication


techniques were introduced to secure voting platforms and overcome
fake voting. Some of these techniques are: Highly Secure Online Voting
System with Multi Security using Biometric and Steganography, the
basic idea is to merge the secret key with the cover image on the basis of
core image. The result of this process produces a stego image which
looks quite similar to the cover image. The core image is a biometric
measure, such as a fingerprint image. The stego image is extracted at the
server side to perform the voter authentication function. It used secret
message with 288 bit length. As the actual secret key is never embedded
in the stego image, there will be no chance of predicting secret key from
it. Karlof et al., combines the verifiability definition without
distinguishing universal or individual as follows: “Verifiably cast-as-
intended means each voter should be able to verify his ballot accurately
represents the vote he cast. Verifiably counted-as-cast means everyone
should be able to verify that the final tally is an accurate count of the
ballots.” Online Signature Verification Using Temporal Shift Estimated
by the Phase of Gabor Filter, A new online signature-verification
method using temporal shift estimation is presented.

Local temporal shifts existing in signatures are estimated by the


differences of the phase outputs of Gabor filter applied to signature
signals. An input signature signal undergoes preprocessing procedures
including smoothing, size normalization and skew correction, and then
its feature profile is extracted from the signature signal. A Gabor filter
with the predetermined center frequency is applied on a feature profile,
and phase profile is computed from the phase output. The feature profile
and the phase profile are length normalized and quantized so that a
signature code of fixed size is generated. The temporal shifts existing
between two signatures are computed by using the differences between
the phase profiles.

The information about the temporal shifts is used as offsets


for comparing the two feature profiles. Therefore, two kinds of
dissimilarities are proposed. Temporal dissimilarity is a measure
reflecting the amount of total temporal disturbance between the two
signatures. The difference between the two signature profiles is
computed at each corresponding point pair and is accumulated into
temporally arranged feature profile dissimilarity. The decision boundary
is represented as a straight line in the dissimilarity space whose two axes
are the two dissimilarity measures. The slope and the position of the
decision boundary are computed using the distribution of the
dissimilarities among the sample signatures involved in the enrollment
procedure.

1.3 Innovative Voting System - A Summary

The election is a well-known thing in modern days of Democracy.


Electronic online voting over the Internet would be much more
profitable. Many voters would appreciate the possibility of voting from
anywhere. This paper proposes a people who have citizenship of India
and whose age is above 18 years of age and any sex can give his\her
vote online without going to any polling station. There is a database
which is maintained in which all the names of voter’s complete
information is stored. There are some basic security requirements that
need to be fulfilled by any voting system. These are: firstly, the
anonymity of a voter’s ballot must be preserved, and voters must not be
able to prove how they have voted; secondly, the voting system must be
tamper-resistant to a wide range of attacks; thirdly, a voting system must
be user-friendly. In addition, voting process must be transparent and
comprehensible enough so that voters and candidates can readily accept
the results.
In general, such innovative voting should satisfy such requirements as
follows:
(a) Accuracy
(b) Simplicity
(c) Verifiability
(d) Democracy
(e) Privacy
(f) Security
For such an online voting system, security and privacy are the main
concerns. From that point of view, an implementation of the online
voting system appears with face recognition and password (OTP). Our
approach suggests a practical application of the existing face recognition
and password (OTP) that ensures the integrity of the vote cast by voter
and authentication of the voter at the two levels. The advantage of the
online voting system is that voter can vote from anywhere through the
internet. Subsequently, the result of the election is computed from the
sum of the votes which have been voted by the voters.
CHAPTER 2
LITERATURE REVIEW

Literature survey is the most important step in software


development process. Before developing the tool it is necessary to
determine the time factor, economy and company strength. Once these
things are satisfied, then the next step is to determine which operating
system and language can be used for developing the tool. Once the
programmers start building the tool the programmers need lot of external
support. This support can be obtained from senior programmers, from
book or from websites. Before building the system the above
consideration are taken into account for developing the proposed system.
The major part of the project development sector considers and
fully survey all the required needs for developing the project. For every
project Literature survey is the most important sector in software
development process. Before developing the tools and the associated
designing it is necessary to determine and survey the time factor,
resource requirement, man power, economy, and company strength.
Once these things are satisfied and fully surveyed, then the next step is
to determine about the software specifications in the respective system
such as what type of operating system the project would require, and
what are all the necessary software are needed to proceed with the next
step such as developing the tools, and the associated operations.

2.1 Physical–cyber–social computing: An early 21st century approach - A.


Sheth, P. Anantharam, and C. Henson - 2013

Technology plays an increasingly important role in facilitating and


improving personal and social activities, engagements, decision making,
interaction with physical and social worlds, insight generation, and just
about anything that humans, as intelligent beings, seek to do. The term
computing for human experience (CHE) captures technology's human-
centric role, emphasizing the unobtrusive, supportive, and assistive part
technology plays in improving human experience. Here, the authors
present an emerging paradigm called physical-cyber-social (PCS)
computing, supporting the CHE vision, which encompasses a holistic
treatment of data, information, and knowledge from the PCS worlds to
integrate, correlate, interpret, and provide contextually relevant
abstractions to humans. They also outline the types of computational
operators that make up PCS computing.
2.2 Geometric feature-based facial expression recognition in image sequences
using multi-class AdaBoost and support vector machines - D. Ghimire and J.
Lee - 2013

Facial expressions are widely used in the behavioral interpretation


of emotions, cognitive science, and social interactions. In this system,
we present a novel method for fully automatic facial expression
recognition in facial image sequences. As the facial expression evolves
over time facial landmarks are automatically tracked in consecutive
video frames, using displacements based on elastic bunch graph
matching displacement estimation. Feature vectors from individual
landmarks, as well as pairs of landmarks tracking results are extracted,
and normalized, with respect to the first frame in the sequence. The
prototypical expression sequence for each class of facial expression is
formed, by taking the median of the landmark tracking results from the
training facial expression sequences. Multi-class AdaBoost with
dynamic time warping similarity distance between the feature vector of
input facial expression and prototypical facial expression, is used as a
weak classifier to select the subset of discriminative feature vectors.
Finally, two methods for facial expression recognition are presented,
either by using multi-class AdaBoost with dynamic time warping, or by
using support vector machine on the boosted feature vectors. The results
on the Cohn-Kanade (CK+) facial expression database show a
recognition accuracy of 95.17% and 97.35% using multi-class AdaBoost
and support vector machines, respectively.

2.3 Cognitive face analysis system for future interactive TV - K. H. An and M.


J. Chung - 2010

The future interactive TV will automatically provide user-


personalized services for each viewer. For the automatic user-
personalized services, the interactive TV should recognize viewers and
even their emotions or preferences. In this system, we introduce a novel
architecture of the future interactive TV and propose a real-time face
analysis system that can detect and recognize human faces and even
their expressions, and therefore understand their internal emotional
states. The proposed face analysis system consists of three image
processing modules: face detection, face recognition, and facial
expression recognition. Face detection is employed to detect and track a
number of people watching the TV program. Face recognition and facial
expression recognition are employed to identify specific TV viewers and
recognize their internal emotional states, which is necessary in order to
enable personalized user interfaces and services. For robust real-time
face analysis system, we present the Ada-LDA learning algorithm based
on simple and efficient MspLBP features, which is suitable for multi-
class pattern classification. Extensive experimental results show that the
proposed face analysis system provides real-time performance with high
recognition rates. It can operate at over 15 frames per second.

2.4 Real-time face-priority auto focus for digital and cell-phone cameras - M.
Rahman and N. Kehtarnavaz - 2008

Auto-focus (AF) has been a key feature in consumer level digital


and cell-phone cameras allowing users to focus automatically on a
particular plane in a scene in order to get a sharp image. Face priority
AF has become of interest lately due to the fact that most pictures
captured by consumers are of human faces. In face-priority AF, the
focusing decision is made based on a detected face area in the image,
thus capturing a sharp picture of the face. While many face detection
algorithms exist in the literature, very few of them are actually suitable
for real-time software deployment on resource limited digital or cell-
phone camera processors. In this system, a fast face-detection algorithm
is introduced by combining a skin color model cluster with a
computationally efficient shape processing scheme. Comparison results
with a standard algorithm in terms of robustness, speed and accuracy are
provided. This face detection algorithm is incorporated into our
previously developed rule-based AF method to achieve real-time face-
priority AF on an actual digital camera platform.
2.5 Cascade AdaBoost classifiers with stage features optimization for cellular
phone embedded face detection system - X. Tang, Z. Ou, T. Su, and P. Zhao -
2005

In this system, we propose a novel feature optimization method to


build a cascade Adaboost face detector for real-time applications on
cellular phone, such as teleconferencing, user interfaces, and security
access control. AdaBoost algorithm selects a set of features and
combines them into a final strong classifier. However, conventional
AdaBoost is a sequential forward search procedure using the greedy
selection strategy, redundancy cannot be avoided. On the other hand,
design of embedded systems must find a good trade-off between
performances and code size due to the limited amount of resource
available in a mobile phone. To address this issue, we proposed a novel
Genetic Algorithm post optimization procedure for a given boosted
classifier, which leads to shorter final classifiers and a speedup of
classification. This GA-optimization algorithm is very suitable for
building application of embed and resource-limit device. Experimental
results show that our cellular phone embedded face detection system
based on this technique can accurately and fast locate face with less
computational and memory cost. It runs at 275ms per image of size
384×286 pixels with high detection rates on a SANYO cellular phone
with ARM926EJ-S processor that lacks floating-point hardware.
2.6 Robust real-time face detection - P. Viola andM. J. Jones - 2004

This system describes a face detection framework that is capable of


processing images extremely rapidly while achieving high detection
rates. There are three key contributions. The first is the introduction of a
new image representation called the “Integral Image” which allows the
features used by our detector to be computed very quickly. The second is
a simple and efficient classifier which is built using the AdaBoost
learning algorithm (Freund and Schapire, 1995) to select a small number
of critical visual features from a very large set of potential features. The
third contribution is a method for combining classifiers in a “cascade”
which allows background regions of the image to be quickly discarded
while spending more computation on promising face-like regions. A set
of experiments in the domain of face detection is presented. The system
yields face detection performance comparable to the best previous
systems (Sung and Poggio, 1998; Rowley et al., 1998; Schneiderman
and Kanade, 2000; Roth et al., 2000). Implemented on a conventional
desktop, face detection proceeds at 15 frames per second.
CHAPTER 3
SYSTEM DESIGN
3.1 System Architecture

Voter Stored Enter the


image image in voter id
capture database number

Matc
h the y chec ye Eligible to
imag es k s vote
e

no n
o Display
Not Possible to Vote the Vote

Fig.3.1. System Architecture


3.2 Dataflow Diagram

LEVEL – 0

Candidate
VOTING SYSTEM USING
FACE RECOGNITION Voter

LEVEL – 1

Candidate Register the Identity Details Registered


into System

Admin Checks the


Identity of the Candidate

Accept the Candidate


Registration

Details Stored
Level 3
3.3 Use case diagram:

Voter Registration

Face Recognition

Candidate
Registration

Admin Panel and


Voting Phase
Voter

Counting and
Resulting
CHAPTER 4
SYSTEM ANALYSIS
4.1 Existing system

PAPER BALLOT AND ELECTRONIC VOTING:

In this method person can select candidate and casting vote by


paper where allocate booth. Traditional voting systems like Paper ballot
and Electronic Voting Systems have several disadvantages. Voting
systems as such are time consuming and inconvenient as all the voters
must be present in a location at a time.
4.2 Proposed system

 We are going to select voting system by FACE RECOGNITION.


 It very secure. Only authenticated person can casting vote.
 Once person voted he removed from list by admin.
 Voter also views available candidates.
 Admin check give accept for authenticated person otherwise reject
that person.
CHAPTER 5
SYSTEM REQUIREMENTS
5.1. Hardware Requirements

System : Pentium IV 2.4 GHz

     

Hard Disk : 100 GB

Ram : 4 GB

5.2. Software Requirements

Operating system : Windows XP/7

       Technology Used :Microsoft.NETFramework

       Coding Language : C#.NET

Backend Used : SQL Server


5.3 Software Description
5.3.1 MICROSOFT.NET FRAMEWORK

Features Of .Net

Microsoft .NET is a set of Microsoft software technologies


for rapidly building and integrating XML Web services, Microsoft
Windows-based applications, and Web solutions. The .NET Framework
is a language-neutral platform for writing programs that can easily and
securely interoperate. There’s no language barrier with .NET: there are
numerous languages available to the developer including Managed C++,
C#, Visual Basic and Java Script. The .NET framework provides the
foundation for components to interact seamlessly, whether locally or
remotely on different platforms. It standardizes common data types and
communications protocols so that components created in different
languages can easily interoperate.

“.NET” is also the collective name given to various software


components built upon the .NET platform. These will be both products
(Visual Studio.NET and Windows.NET Server, for instance) and
services (like Passport, .NET My Services, and so on).

THE .NET FRAMEWORK


The .NET Framework has two main parts:

1. The Common Language Runtime (CLR).

2. A hierarchical set of class libraries.

The CLR is described as the “execution engine” of .NET. It provides the


environment within which programs run. The most important features
are

 Conversion from a low-level assembler-style language,


called Intermediate Language (IL), into code native to the
platform being executed on.
 Memory management, notably including garbage collection.
 Checking and enforcing security restrictions on the running
code.
 Loading and executing programs, with version control and
other such features.
 The following features of the .NET framework are also
worth description:

MANAGED CODE

The code that targets .NET, and which contains certain extra
Information - “metadata” - to describe itself. Whilst both managed and
unmanaged code can run in the runtime, only managed code contains the
information that allows the CLR to guarantee, for instance, safe
execution and interoperability.

MANAGED DATA

With Managed Code comes Managed Data. CLR provides


memory allocation and Deal location facilities, and garbage collection.
Some .NET languages use Managed Data by default, such as C#, Visual
Basic.NET and JScript.NET, whereas others, namely C++, do not.
Targeting CLR can, depending on the language you’re using, impose
certain constraints on the features available. As with managed and
unmanaged code, one can have both managed and unmanaged data in
.NET applications - data that doesn’t get garbage collected but instead is
looked after by unmanaged code.

COMMON TYPE SYSTEM

The CLR uses something called the Common Type System (CTS)
to strictly enforce type-safety. This ensures that all classes are
compatible with each other, by describing types in a common way. CTS
define how types work within the runtime, which enables types in one
language to interoperate with types in another language, including cross-
language exception handling. As well as ensuring that types are only
used in appropriate ways, the runtime also ensures that code doesn’t
attempt to access memory that hasn’t been allocated to it.

COMMON LANGUAGE SPECIFICATION

The CLR provides built-in support for language interoperability.


To ensure that you can develop managed code that can be fully used by
developers using any programming language, a set of language features
and rules for using them called the Common Language Specification
(CLS) has been defined. Components that follow these rules and expose
only CLS features are considered CLS-compliant.

THE CLASS LIBRARY

.NET provides a single-rooted hierarchy of classes,


containing over 7000 types. The root of the namespace is called System;
this contains basic types like Byte, Double, Boolean, and String, as well
as Object. All objects derive from System. Object. As well as objects,
there are value types. Value types can be allocated on the stack, which
can provide useful flexibility. There are also efficient means of
converting value types to object types if and when necessary.

The set of classes is pretty comprehensive, providing


collections, file, screen, and network I/O, threading, and so on, as well
as XML and database connectivity.
The class library is subdivided into a number of sets (or
namespaces), each providing distinct areas of functionality, with
dependencies between the namespaces kept to a minimum.

LANGUAGES SUPPORTED BY .NET

The multi-language capability of the .NET Framework and


Visual Studio .NET enables developers to use their existing
programming skills to build all types of applications and XML Web
services. The .NET framework supports new versions of Microsoft’s old
favorites Visual Basic and C++ (as VB.NET and Managed C++), but
there are also a number of new additions to the family.

Visual Basic .NET has been updated to include many new


and improved language features that make it a powerful object-oriented
programming language. These features include inheritance, interfaces,
and overloading, among others. Visual Basic also now supports
structured exception handling, custom attributes and also supports multi-
threading.

Visual Basic .NET is also CLS compliant, which means that


any CLS-compliant language can use the classes, objects, and
components you create in Visual Basic .NET.

Managed Extensions for C++ and attributed programming


are just some of the enhancements made to the C++ language. Managed
Extensions simplify the task of migrating existing C++ applications to
the new .NET Framework.

C# is Microsoft’s new language. It’s a C-style language that


is essentially “C++ for Rapid Application Development”. Unlike other
languages, its specification is just the grammar of the language. It has no
standard library of its own, and instead has been designed with the
intention of using the .NET libraries as its own. Microsoft Visual J#
.NET provides the easiest transition for Java-language developers into
the world of XML Web Services and dramatically improves the
interoperability of Java-language programs with existing software
written in a variety of other programming languages.

Active State has created Visual Perl and Visual Python,


which enable .NET-aware applications to be built in either Perl or
Python. Both products can be integrated into the Visual Studio .NET
environment. Visual Perl includes support for Active State’s Perl Dev
Kit.

Other languages for which .NET compilers are available include

 FORTRAN
 COBOL
 Eiffel
.Net Framework

C#.NET is also compliant with CLS (Common Language


Specification) and supports structured exception handling. CLS is set
of rules and constructs that are supported by the CLR (Common
Language Runtime). CLR is the runtime environment provided by the
.NET Framework; it manages the execution of the code and also
makes the development process easier by providing services C#.NET
is a CLS-compliant language. Any objects, classes, or components
that created in C#.NET can be used in any other CLS-compliant
language. In addition, we can use objects, classes, and components
created in other CLS-compliant languages in C#.NET .The use of
CLS ensures complete interoperability among applications, regardless
of the languages used to create the application.

CONSTRUCTORS AND DESTRUCTORS:

Constructors are used to initialize objects, whereas destructors


are used to destroy them. In other words, destructors are used to
release the resources allocated to the object. In C#.NET the sub
finalize procedure is available. The sub finalize procedure is used to
complete the tasks that must be performed when an object is
destroyed. The sub finalize procedure is called automatically when an
object is destroyed. In addition, the sub finalize procedure can be
called only from the class it belongs to or from derived classes.

GARBAGE COLLECTION

Garbage Collection is another new feature in C#.NET. The .NET


Framework monitors allocated resources, such as objects and
variables. In addition, the .NET Framework automatically releases
memory for reuse by destroying objects that are no longer in use. In
C#.NET, the garbage collector checks for the objects that are not
currently in use by applications. When the garbage collector comes
across an object that is marked for garbage collection, it releases the
memory occupied by the object.

OVERLOADING

Overloading is another feature in C#. Overloading enables us to


define multiple procedures with the same name, where each
procedure has a different set of arguments. Besides using overloading
for procedures, we can use it for constructors and properties in a
class.

MULTITHREADING:

C#.NET also supports multithreading. An application that supports


multithreading can handle multiple tasks simultaneously, we can use
multithreading to decrease the time taken by an application to respond
to user interaction.

STRUCTURED EXCEPTION HANDLING

C#.NET supports structured handling, which enables us to


detect and remove errors at runtime. In C#.NET, we need to use
Try…Catch…Finally statements to create exception handlers. Using
Try…Catch…Finally statements, we can create robust and effective
exception handlers to improve the performance of our application.

THE .NET FRAMEWORK

The .NET Framework is a new computing platform that simplifies


application development in the highly distributed environment of the
Internet.

OBJECTIVES OF. NET FRAMEWORK

1. To provide a consistent object-oriented programming environment


whether object codes is stored and executed locally on Internet-
distributed, or executed remotely.

2. To provide a code-execution environment to minimizes software


deployment and guarantees safe execution of code.

3. Eliminates the performance problems.


There are different types of application, such as Windows-based
applications and Web-based applications.

CHAPTER 6
MODULES

This system contains six different modules. They are:


 Voter Registration
 Face Recognition
 Candidate Registration
 Admin Panel
 Voting Phase
 Counting and Resulting
MODULE DESCRIPTION

6.1 Voter Registration

 Voter register details before election.


 Registration contain name, e-mail id , username, password.
 Browse photo and voter id card.
 Details are stored in voter list.

6.2 Face Recognition

After fill detail in page then give submit camera is recognize voter
face in different way.

6.3 Candidate Registration

 Candidate also registers details.


 Details contain name, id , number of member support, photo and
logo.
 It stored in the candidate list.

6.4 Admin Panel

 Admin maintain the detail of both voter list and candidate list.
 Check only authenticated person can cast vote.

6.5 Voting Phase

 Election is start voter enter user name and password


automatically open camera
 Admin check face view the available candidate then voter select
their candidate and cast vote
 Once person voted admin remove they details in list.

6.4 Counting and Resulting

 Voter casted voting automatically count increases.


 Finally result announced.
CHAPTER 7
IMPLEMENTATION AND RESULTS
7.1 Coding
Voter Registration
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Net;
using System.IO;

namespace MultiFaceRec
{
public partial class FrmVoterRegistration : Form
{
String S = "";
CodeClass Ws = new CodeClass();

public FrmVoterRegistration()
{
InitializeComponent();
}

private long IncrID()


{
long retVal = 0;
SqlConnection Cn = new SqlConnection(Ws.Con);
Cn.Open();
SqlCommand Cmd = default(SqlCommand);
S = "Select Max(UID) From Register";
Cmd = new SqlCommand(S, Cn);
if ((Convert.ToString(Cmd.ExecuteScalar())) == "")
{
retVal = 1;
}
else if (Convert.ToString(Cmd.ExecuteScalar()) != "")
{
retVal =
Convert.ToInt64(Convert.ToString(Cmd.ExecuteScalar())) + 1;
}
Cmd.Dispose();
Cn.Close();
return retVal;
}

private void FrmVoterRegistration_Load(object sender, EventArgs


e)
{
Clear();
}
private void Clear()
{
TxtVID.Text = IncrID().ToString();
TxtAddr.Text = "";
TxtAge.Text = "";
TxtMail.Text = "";
TxtMb.Text = "";
TxtName.Text = "";
TxtPwd.Text = "";
TxtUN.Text = "";

Photo.Image = Image.FromFile("Default.png");
VIDPhoto.Image = Image.FromFile("Default.png");

LblPhotoPath.Text = "";
LblVIDPath.Text = "";
}

private void CmdSave_Click(object sender, EventArgs e)


{
String Str = "";
if (TxtName.Text.Trim() == "")
{
Str += "Enter Name\n";
}
if (TxtAge.Text.Trim() == "" ||
Convert.ToInt16(TxtAge.Text)<=0)
{
Str += "Enter Age\n";
}
if (TxtMail.Text.Trim() == "")
{
Str += "Enter E-Mail-ID\n";
}
if (TxtMb.Text.Trim() == "")
{
Str += "Enter Mobile Number\n";
}
if (TxtAddr.Text.Trim() == "")
{
Str += "Enter Address\n";
}
if (TxtUN.Text.Trim() == "")
{
Str += "Enter Username\n";
}
if (TxtPwd.Text.Trim() == "")
{
Str += "Enter Password\n";
}
if (TxtPwd.Text.Trim() != TxtRPwd.Text.Trim())
{
Str += "Password Mismatched. Type Password Correctly.\n";
TxtPwd.Text = "";
TxtRPwd.Text = "";
}
if (LblPhotoPath.Text.Trim() == "")
{
Str += "Select Voter Photo\n";
}
if (LblVIDPath.Text.Trim() == "")
{
Str += "Select Voter-ID\n";
}

SqlConnection Cn = new SqlConnection(Ws.Con);


Cn.Open();
SqlCommand Cmd = default(SqlCommand);

S = "Select UN From Register Where UN=@U1";


Cmd = new SqlCommand(S, Cn);
Cmd.Parameters.Add(new SqlParameter("@U1", TxtUN.Text));
if (Convert.ToString(Cmd.ExecuteScalar()) != "")
{
Str += "Username Duplicated\n";
}
Cmd.Dispose();
S = "Select Mail From Register Where Mail=@U2";
Cmd = new SqlCommand(S, Cn);
Cmd.Parameters.Add(newSqlParameter("@U2", TxtMail.Text));
if (Convert.ToString(Cmd.ExecuteScalar()) != "")
{
Str += "E-Mail-ID Duplicated\n";
}
Cmd.Dispose();

if (Str.Trim() != "")
{
MessageBox.Show(Str, "Cannot Proceed");
return;
}

// PHOTO
string PPath = "";
if ((LblPhotoPath.Text.Trim() == ""))
{
PPath = "";
}
else
{
PPath = "Photo\\" + TxtUN.Text + ".jpg";
if ((System.IO.File.Exists(PPath) == true))
{
System.IO.File.Delete(PPath);
}

System.IO.File.Copy(LblPhotoPath.Text, PPath);
}

// Voter-ID
string vPPath = "";
if ((LblVIDPath.Text.Trim() == ""))
{
vPPath = "";
}
else
{
vPPath = "VoterID\\" + TxtUN.Text + ".jpg";
if ((System.IO.File.Exists(vPPath) == true))
{
System.IO.File.Delete(vPPath);
}
System.IO.File.Copy(LblVIDPath.Text, vPPath);
}
S="InsertIntoRegisterValues(@UID,@Name,@Age,@Mail,
@Mb,@Address,@UN,@Pwd,@Photo,@VPhoto,0,1)";
Cmd = new SqlCommand(S, Cn);
Cmd.Parameters.Add(newSqlParameter("@UID",TxtVID.Text));
Cmd.Parameters.Add(newSqlParameter("@Name",TxtName.Text));
Cmd.Parameters.Add(newSqlParameter("@Age",TxtAge.Text));
Cmd.Parameters.Add(newSqlParameter("@Mail",TxtMail.Text));
Cmd.Parameters.Add(new SqlParameter("@Mb", TxtMb.Text));
Cmd.Parameters.Add(newSqlParameter("@Address",TxtAddr.Text));
Cmd.Parameters.Add(new SqlParameter("@UN", TxtUN.Text));
Cmd.Parameters.Add(newSqlParameter("@Pwd",TxtPwd.Text));
Cmd.Parameters.Add(newSqlParameter("@Photo",LblPhotoPath.Text));
Cmd.Parameters.Add(newSqlParameter("@VPhoto",LblVIDPath
.Text))
Cmd.ExecuteNonQuery();
Cmd.Parameters.Clear();
Cmd.Dispose();
Cn.Close();

FrmTF a = new FrmTF();


a.TxtUN = TxtUN.Text;
a.ShowDialog();

Clear();
}

private void CmdUpload_Click(object sender, EventArgs e)


{
OpenFileDialog PhotoFU = new OpenFileDialog();
PhotoFU.Filter = "(Image Files)|*.jpg;";
PhotoFU.ShowDialog();
LblPhotoPath.Text = "";
LblPhotoPath.Text = PhotoFU.FileName.ToString();
Photo.Image = Image.FromFile(PhotoFU.FileName);
}

private void CmdBrowse1_Click(object sender, EventArgs e)


{
OpenFileDialog PhotoFU = new OpenFileDialog();
PhotoFU.Filter = "(Image Files)|*.jpg;";
PhotoFU.ShowDialog();
LblVIDPath.Text = "";
LblVIDPath.Text = PhotoFU.FileName.ToString();
VIDPhoto.Image = Image.FromFile(PhotoFU.FileName);
}
}
}

Face Biometric Voting


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace MultiFaceRec
{
public partial class FrmBioVoting : Form
{
String S = "";
CodeClass Ws = new CodeClass();
public FrmBioVoting()
{
InitializeComponent();
}

private void CmdSave_Click(object sender, EventArgs e)


{
String Str = "";
if (TxtUN.Text.Trim() == "")
{
Str += "Enter Username\n";
}
if (TxtPwd.Text.Trim() == "")
{
Str += "Enter Password\n";
}
if (Str.Trim() != "")
{
MessageBox.Show(Str, "Cannot Proceed");
return;
}
SqlConnection Cn = new SqlConnection(Ws.Con);
Cn.Open();
SqlCommand Cmd = default(SqlCommand);
S = "Select UN From Register Where UN=@U1 And
Pwd=@P1";
Cmd = new SqlCommand(S, Cn);
Cmd.Parameters.Add(new SqlParameter("@U1", TxtUN.Text));
Cmd.Parameters.Add(new SqlParameter("@P1", TxtPwd.Text));
if (Convert.ToString(Cmd.ExecuteScalar()) != "")
{
FrmPrincipal f = new FrmPrincipal();
f.UN = TxtUN.Text;
f.ShowDialog();
this.Hide();
}
else
{
MessageBox.Show("Invalid Authentication Details", "Cannot
Proceed");
}
Cmd.Dispose();
Cn.Close();
}
}
}
7.2 Screen Shots

CHAPTER 8
CONCLUSION

This voting system helps everybody to cast their votes without any
problem. Voting application will increase the percentage of voting.
Manual counting is not required. So by this we will get the very
prominent, clear and fast result. By using this newly developed system
we can overcome many problems of existing system. This system is
more efficient than the existing one. Application voting allows the voter
to vote from anywhere in his state or out of state
CHAPTER 9
REFERENCES
[1] Anandaraj S., Anish R., and Devakumar P.V. (2015), ‘Secured
electronic voting machine using biometric’, IEEE International
conference on innovations in information, embedded and
communication systems.
[2] Bishop M., and Frincke D. (2007), ‘Achieving learning objectives
through e-voting case studies’, IEEE Security& Privacy, Vol. 5, No. 1,
pp.53–56.
[3] Herb Deutsch (2005), ‘Public opinion’s influence on voting system
technology’, IEEE Standards Association.
[4] Hongyu Zhang., Qianzi You, and Junxing Zhang (2015), ‘A
lightweight electronic voting scheme based on blind signature and
kerberos mechanisms’, International conference on advanced networks
and telecommuncations systems,pp.978-4799.
[5] Jambhulkar S.M., Jagdish B. Chakole, and Praful. R. Pardhi (2014),
‘A Secure approach for web based internet voting system using multiple
encryption’, IEEE International conference on electronic systems, signal
processing and computing technologies.
[6] Kausal malladi, Srivatsan sridharan, Jayprakash L.T. (2014),
‘Architecting a large-scale ubiquitous e-voting solution for conducting
government elections’, IEEE International conference on advances in
electronics, computers and communications.
[7] Kohno. T et al., (2004), ‘Analysis of an electronic voting system’,
Proc. 2004IEEE symposium security and privacy, pp. 27–40.
[8] Mohammad Malkawi., Omar Al-Jarrah., Thaier S. Hayajneh.,
Munzer S. Ebaid, and Mohammed Khasawneh (2008), ‘A biometric-
secure e-Voting system for election processes’, IEEE symposium on
mechatronics and its applicationsMay 27-29.
[9] Mona F.M.Mursi., Ghazy M.R.Assassa., Ahmed A. AbdelHafez, and
Kareem M. AboSamra (2015), ‘A secure and auditable
cryptographicbased e-voting scheme’, International conference on
mathematics and computers in sciences and in industry, IEEE.
[10] Nazatul Haque Sultan., Ferdous Ahmed Barbhuiya, and Nityananda
sarma (2015), ‘Pair voting: A secure online voting scheme using pairing
based cryptography and fuzzy extractor’, IEEE International conference
on advanced networks and telecommuncations systems.
[11] Nathanael Paul and Andrew S. Tanenbaum (2009), ‘Trustworthy
Voting: From Machine to System’, IEEE Journal of Computer Society.
[12] Purushothama B.R., and Alwyn R. Pais (2009), ‘Design and
implementation of secure internet based voting system with user
anonymity using identity based encryption system’. In IEEE
International conference on services computing, scc ’09., pages 474–
481.
[13] Shivendra Katiyar., Kullai Reddy Meka., Ferdous A. Barbhuiya,
and Sukumar Nandi (2011), ‘Online voting system powered by
biometric security using steganography’, IEEE second International
conference on emerging applications of information technology.

[14] Srivatsan sridharan (2013), ‘Implementation of authenticated and


secure online voting system’, IEEE International conference on
computing, communication and networking technologies.

You might also like