This is a python project for Windows. This code does not work on MacOS and still needs some development. Before getting started with the project, there are few libraries that needs to be installed. This project shows a voting system based on Unique Aadhar and Iris Recognition. The system iimplementation is shown below:
The above figure depicts our proposed system model. In this model, the admin can login and add the nominees and voters to the database. Moreover, the admin can view the nominee and voters' details and election results. The voter will also login with valid voter id and Iris images, and he/she can poll the vote if authenticated successfully, otherwise denied.
The design of the system is primarily divided into two functionalities: Admin and voters. In the system, the admin, once given access, can operate various functions like adding a nominee, voters, and their iris images. Admin can also view results. When it comes to the voter, the only action that is allowed is casting a vote. Voters can log in with valid credentials such as Smart-ID and iris.
In this project, the iris recognition process is done in the following way:
1-> HOUGH TRANSFORMATION
2-> DOUGMAN'S RUBBER SHEET MODEL
3-> CANNY EDGE
4-> HAMMING DISTANCE(If the bit shifting is 0, i.e., Hamming distance is 0, it is a perfect match. If it is 0.5 or more, then the two strings are different.)
The idea of data flow diagrams is to perform system analysis efficiently. The figure below shows how the system is going to be performed.
PYQT5:It is a set of Python bindings for Qt libraries which are used to create cross-platform applications with a robust graphical user interface (GUI). PyQt5 allows developers to create applications for Windows, macOS, and Linux with the same codebase. Some of elements are Widgets,Layouts,Events,Dialogs,Graphics View Framework
OpenCV: The Open Source Computer Vision Library, is a powerful toolkit for working with images and videos in Python. Below is a comprehensive guide to getting started with OpenCV in Python, covering installation, basic usage, and some advanced features.
Matplotlib:This is a widely used plotting library in Python that allows you to create static, interactive, and animated visualizations. It provides a wide range of plotting capabilities, including line plots, scatter plots, bar charts, histograms, and more. Matplotlib integrates well with other libraries such as NumPy, pandas, and SciPy.
Scikit-image: This is a powerful library in Python for image processing. It is built on top of NumPy, SciPy, and Matplotlib and provides a wide range of image processing tools, including filtering, morphology, feature detection, and more. Here's a comprehensive guide to getting started with scikit-image.
Output will look like