The Electronic Voting System Information Technology Essay

Published: November 30, 2015 Words: 2728

Electronic voting is a term encompassing several different types of voting, embracing both electronic means of casting a vote and electronic means of counting votes. Electronic voting technology can include punch cards, optical scan voting systems and specialized voting kiosks (including self-contained Direct-recording electronic (DRE) voting systems). It can also involve transmission of ballots and votes via telephones, private computer networks, or the Internet. Electronic voting technology can speed the counting of ballots and can provide improved accessibility for disabled voters. However, there has been contention, especially in the United States, that electronic voting, especially DRE voting, could facilitate electoral fraud. Electronic voting systems may use electronic ballots to store votes in computer memory. Systems which use them exclusively are called DRE voting systems. When electronic ballots are used there is no risk of exhausting the supply of ballots. Electronic voting machines can be made fully accessible for persons with disabilities. Punch card and optical scan machines are not fully accessible for the blind or visually impaired, and lever machines can be difficult for voters with limited mobility and strength.

Background of Voting System

A voting system (also referred to as an electoral system) or voting theory allows voters to choose between options, often in an election where candidates are selected for public office. Voting can be also used to award prizes, to select between different plans of action, or by a computer program to find a solution to a problem. Voting can be contrasted with consensus decision making and hierarchical or authoritarian systems. A voting system contains rules for valid voting, and how votes are aggregated to yield a final result. The study of formally defined voting systems is called voting theory, a subfield of political science, economics or mathematics. Voting theory began formally in the 18th century and many proposals for voting systems have been made.

Proposed Electronic Voting System

We have proposed an electronic voting system for our Final Year Project. In this system, we have designed a user interface that includes an LCD and Keypad, both of which are interfaced with microcontroller. Then the microcontroller serially communicates with a computer.A finger print scanner is also interfaced with the computer through the usb port. We can check finger print authentication in Matlab. We will make a data base on computer which will be updated automatically. Flow diagram is given below:

Server End

Serial Interface USB Interface

Microsoft Visual Basic

(Pc)

Matlab

(Fingerprint Verification)

User End

Futronic FS80 Fingerprint Scanner

LCD

Keypad

8051 Microcontroller

Database

Flow Diagram

Overview of the Topics Covered

We studied up till now

Finger print

Minutiae

Finger Print Patterns

Finger Print Matching Techniques

Finger Print Matching Algorithms

Methods of De-noising an image

Wavelet

Wavelet Families

the Fast Wavelet Transform (FWT) Algorithm

Wavelet Packets, Wavelet Analysis

Wavelet Decomposition

Wavelet Packets for Compression and De-Noising

Wavelet decomposition and reconstruction in Matlab

Averaging and median filter

Hardware interface

LCD and Keypad interface with microcontroller

Serial port interface with computer

Tools

MATLAB

Keil MicroVision

Proteus Simulator

Finger Prints

A fingerprint is the reproduction of a fingertip epidermis, produced when a finger is pressed against a smooth surface. Fingerprints are fully formed at about seven months of fetus development and finger ridge configurations do not change throughout the life of an individual except due to accidents such as bruises and cuts on the fingertips. This property makes fingerprints a very attractive biometric identifier. The biological principles of fingerprints are summarized below:

1. Individual epidermal ridges and furrows have different characteristics for different fingerprints.

2. The configuration types are individually variable, but they vary within limits that allow for a systematic classification.

3. The configurations and minute details of individual ridges and furrows are permanent and unchanging.

Minutiae

In biometrics and forensic science, minutiae are major features of a fingerprint, using which comparison of one fingerprint with another can be made. Minutiae in fingerprints are generally stable and robust to fingerprint impression conditions. Minutiae include:

Ridge Ending:

The abrupt end of a ridge.

Ridge Bifurcation

A single ridge that divides into two ridges.

Short, or Independent Ridge

A ridge that commences, travels a short distance and then ends.

Island

A single small ridge inside a short ridge or ridge ending that is not connected to all other ridges.

Ridge enclosure

A single ridge that bifurcates and reunites shortly afterward to continue as a single ridge.

Spur

A bifurcation with a short ridge branching off a longer ridge.

Crossover or Bridge

A short ridge that runs between two parallel ridges.

Delta

A Y-shaped ridge meeting.

Core

A U-turn in the ridge pattern.

Finger Print Patterns

The three basic patterns of fingerprint ridges are the arch, loop, and whorl.

Arch Pattern

An arch is a pattern where the ridges enter from one side of the finger, rise in the center forming an arc, and then exit the other side of the finger.

Loop Pattern

The loop is a pattern where the ridges enter from one side of a finger, form a curve, and tend to exit from the same side they enter.

Whorl Pattern

In the whorl pattern, ridges form circularly around a central point on the finger.

Finger Print Matching Techniques

Fingerprint matching techniques can be placed into two categories:

1- Minutiae-based.

2- Correlation based.

Finger Print Matching Algorithms

Finger Print Matching algorithms are used to compare previously stored templates of fingerprints against candidate fingerprints for authentication purposes.

Pattern-based (or image-based) Algorithm.

Core-based Matching Algorithm.

An Algorithm for Fingerprint Image Post processing.

Algorithm for Minutiae Detection.

Fingerprint Matching and Classification using an Onion Layer Algorithm.

Methods of De-noising an image

We use two methods of de-noising the image.

Wavelets decomposition and reconstruction

Averaging and median filter

Wavelet

A wavelet is a wave-like oscillation with amplitude that starts out at zero, increases, and then decreases back to zero. It can typically be visualized as a "brief oscillation" like one might see recorded by a seismograph or heart monitor. Generally, wavelets are purposefully crafted to have specific properties that make them useful for signal processing. Wavelets can be combined, using a "shift, multiply and sum" technique called convolution, with portions of an unknown signal to extract information from the unknown signal.

Wavelet Families

Wavelet transforms comprise an infinite set. The different wavelet families make different trade-offs between how compactly the basic functions are localized in space and how smooth they are.

Some of the wavelet bases have fractal structure. The Daubechies wavelet family is one example

Daubechies wavelet

Within each family of wavelets (such as the Daubechies family) are wavelet subclasses distinguished by the number of coefficients and by the level of iteration. Wavelets are classified within a family most often by the number of vanishing moments. This is an extra set of mathematical relationships for the coefficients that must be satisfied, and is directly related to the number of coefficients. For example, within the Coiflet wavelet family are Coiflets with two vanishing moments, and Coiflets with three vanishing moments. In Figure shows several different wavelet families.

The Fast Wavelet Transform (FWT) Algorithm

In 1988, Mallat produced a fast wavelet decomposition and reconstruction algorithm [Mal89]. The Mallat algorithm for discrete wavelet transform (DWT) is, in fact, a classical scheme in the signal processing community, known as a two channel sub band coder using conjugate quadrature filters or quadrature mirror filters (QMF).

The decomposition algorithm starts with signal s, next calculates the coordinates of A1 and D1, and then those of A2 and D2, and so on.

The reconstruction algorithm called the inverse discrete wavelet transform (IDWT) starts from the coordinates of AJ and DJ, next calculates the coordinates of AJ-1, and then using the coordinates of AJ-1 and DJ-1 calculates those of AJ-2, and so on.

Wavelet Packets

The wavelet packet method is a generalization of wavelet decomposition that offers a richer signal analysis.

Wavelet packet atoms are waveforms indexed by three naturally interpreted parameters: position, scale (as in wavelet decomposition), and frequency. For a given orthogonal wavelet function, we generate a library of bases called wavelet packet bases. Each of these bases offers a particular way of coding signals, preserving global energy, and reconstructing exact features. The wavelet packets can be used for numerous expansions of a given signal. We then select the most suitable decomposition of a given signal with respect to an entropy-based criterion. There exist simple and efficient algorithms for both wavelet packet decomposition and optimal decomposition selection. We can then produce adaptive filtering algorithms with direct applications in optimal signal coding and data compression.

Wavelet Analysis

Wavelet analysis represents the next logical step: a windowing technique with variable-sized regions. Wavelet analysis allows the use of long time intervals where we want more precise low-frequency information, and shorter regions where we want high-frequency information.

Here's what this looks like in contrast with the time-based, frequency-based, and STFT views of a signal:

Wavelet Packet Analysis

The wavelet packet method is a generalization of wavelet decomposition that offers a richer range of possibilities for signal analysis. In wavelet analysis, a signal is split into an approximation and a detail. The approximation is then itself split into a second-level approximation and detail, and the process is repeated. For n-level decomposition, there are n+1 possible ways to decompose or encode the signal. In wavelet packet analysis, this yields more than different ways to encode the signal. This is the wavelet packet decomposition tree.

Wavelet Decomposition

One way of understanding this decomposition consists of using an optical comparison. Successive images A1, A2, A3 of a given object are built. We use the same type of photographic devices, but with increasingly poor resolution. The images are successive approximations; one detail is the discrepancy between two successive images. Image A2 is, therefore, the sum of image A4 and intermediate details D4, D3:

Wavelet Packets for Compression and De-Noising

In the wavelet packet framework, compression and de-noising ideas are identical to those developed in the wavelet framework. The only new feature is a more complete analysis that provides increased flexibility. A single decomposition using wavelet packets generates a large number of bases. You can then look for the best representation with respect to a design objective.

Wavelet decomposition and reconstruction in Matlab

In Matlab we use following functions

Wavefilter

Wavefast

Wavework

Wavecut

Wavecopy

Wave2gray

Waveback

WaveFilters

It generates wavelet decomposition and reconstruction filters. It uses a standard switch construction. The reconstruction filters are time-reversed versions of decomposition filters.

Wavefast

Wavefast perform multi-level 2-dimentional fast wavelet transform. It uses same decomposition structure i.e. [C, S] where C is a decomposition vector and S is a bookkeeping matrix. It uses symmetric image extension to reduce the border distortion associated with the computed FWT.

Wavework

Wavework is used to edit wavelet decomposition structures.

Wavecut

Wavecut zeroes coefficients in a wavelet decomposition structures. It returns a new decomposition vector whose detail and approximation coefficients (based on Type and N) have been zeroed.

Wavecopy

Wavecopy fetches coefficients of a wavelet decomposition structure. It returns a coefficient array based on type and N.

Wave2gray

Wave2gray display wavelet decomposition coefficients and returns a wavelet coefficient image.

Waveback

Waveback performs multilevel two-dimensional inverse FWT and computes a 2D N-level partial or complete wavelet reconstruction of decomposition structure [C, S].

Result

Averaging and Median filter

By using average and median filter we remove noise from image.

So we use following functions

1. Fspecial

2. Imfilter

The fspecial function produces several kinds of predefined filters, in the form of correlation kernels. After creating a filter with fspecial, you can apply it directly to your image data using imfilter.

Result

Comparison

From above discussion we conclude that result from wavelet reconstruction is better than average filter and median filter so we will proceed with this method onward.

Hardware Interface

LCD

Keypad

Microcontroller

Fingerprint scanner/sensor

Serial Communication

Computer Interface

LCD interface

The most commonly used LCDs found in the market today are 1 Line, 2 Line or 4 Line LCDs which have only 1 controller and support at most of 80 characters, whereas LCDs supporting more than 80 characters make use of 2 HD44780 controllers. Most LCDs with 1 controller has 14 Pins and LCDs with 2 controller has 16 Pins (two pins are extra in both for back-light LED connections).

Keypad interface

This keypad provides a visually appealing way to get numeric data to your control system. The board is a series of pushbutton switches that provide structured input for measuring user input. Output pins are 1-7, where pin 1 corresponds to the pin closest to the * key.

Microcontroller

It provides many functions (CPU, RAM, ROM, I/O, interrupt logic, timer, etc.) in a single package.

8-bit ALU, Accumulator and Registers; hence it is an 8-bit microcontroller

8-bit data bus - It can access 8 bits of data in one operation

16-bit address bus - It can access 216 memory locations - 64 kb (65536

Locations) each of RAM and ROM

On-chip RAM - 128 bytes (data memory)

On-chip ROM - 4 kb (program memory)

Four byte bi-directional input/output port

UART (serial port)

Two 16-bit Counter/timers

Two-level interrupt priority

Power saving mode

Fingerprint Scanner

We have selected the given fingerprint scanner according to our project requirement.

Description of Furtonic FS80 Fignerprint Scanner

FS80 USB Fingerprint Scanner uses advanced CMOS sensor technology and precise optical system to deliver high quality fingerprint image.

The finger scanning window of FS80 Fingerprint Scanner is a crown glass with a thickness of 14mm. It is much more reliable and robust compared to any semiconductor type fingerprint sensor. The finger is illuminated by 4 infra-red LEDs during scanning and the light intensity is automatically adjusted according to scanning fingerprint's characteristics (wet, dry, blurred, etc) to optimize the quality of the captured fingerprint image.

Special electronic circuit is built into FS80 Fingerprint Scanner to do Live Finger Detection (LFD). With appropriate software in PC, user can select this LFD feature so that only live finger's fingerprint will be scanned into PC. Fake fingers made from silicone rubber, play-doh, etc, will be rejected by the FS80 Fingerprint Scanner. The LFD feature is included in all Futronic's standard software.

FS80 Fingerprint Scanner can capture an almost un-distorted raw fingerprint image into PC in 100ms and is good for any fingerprint recognition application.

Specification of FS80 Fingerprint Scanner

Type

Optical Scanner

Interface

USB 2.0, with a 2M standard USB cable

Size of the scanning window

16x24mm

Image resolution

480x320 pixel, 500 DPI

Raw fingerprint image file size

150K byte

Size of the scanner

45x63x26 mm

Weight

120 gram

Operating temperature

-10 to +55 Degree Celsius

Serial Communication

For serial communication we use "Null modem".

Null modem

Null modem is a communication method to connect two DTEs (computer, terminal, printer etc.) directly using a RS-232 serial cable. The RS-232 standard is asymmetrical as to the definitions of the two ends of the communications link so it assumes that one end is a DTE and the other is a DCE e.g. a modem. With a null modem connection, the transmit and receive lines are cross linked. Depending on the purpose, sometimes also one or more handshake lines are cross linked. Several wiring layouts are in use because the null modem connection is not covered by a standard.

Computer Interface

We will interface a computer with microcontroller by wired or wireless media for creating a database which will be updated automatically as soon as new thumb image is received. In addition to this it will help us in identification and verification of the fingerprint images obtained.

Hardware Schematic

While interfacing we connected Port 2 of Microcontroller with 16 x 2 LCD, Port 1 with 3 x 4 Keypad. Schematic is given below:

Objectives

Developing a user interface.

Appling different algorithm of fingerprint verification/identification in Matlab.

Developing a Database for keeping the entire record.

Maintenance and update of Database at Server End.

Objectives completed

Interfaced LCD and Keypad with 8051.

De-noise an image in Matlab using wavelets

Applied Pattern Recognition through distance in Matlab.

Objectives to be completed

Interface finger print scanner and Matlab through visual basic.

Developing a Database for keeping the entire record.

Maintenance and update of Database at Server End.

Applying different algorithm for Fingerprint identification in Matlab.

Meeting and submissions

We have done 5 meeting with our supervisor first two meetings were based on finger prints and hardware interface and last three meetings were about de-noising of image and we submit monthly report to our supervisor.