Code Monkey home page Code Monkey logo

nourkamaly / signatureidentificationandverification Goto Github PK

View Code? Open in Web Editor NEW
2.0 2.0 2.0 19.75 MB

First rank winner in the Computer Vision Course Competition for class 2022-2023.

Home Page: https://signiture.azurewebsites.net/

Python 0.10% Jupyter Notebook 99.24% CSS 0.51% JavaScript 0.01% SCSS 0.07% HTML 0.07%
classification-algorithm computer-vision data-augmentation data-generation deep-learning inception-v3 resnet-50 siamese-neural-network vision-transformer yolov5

signatureidentificationandverification's Introduction

SignatureIdentificationAndVerification

First rank winner in the Computer Vision Course Competition for class 2022-2023 at Ain Shams University.

This computer vision projct aims to do 3 main things:

  1. Identify which person a signature belongs to (5 people: personA, personB, personC, personD, personE).
  2. Verify if the signature is real or forged.
  3. In a document, detect where the signal is.

Data format: 5 folders for 5 people, each contains 2 folders for training and testing, that contain png images

Project Lifecycle

  1. Preprocessing
  2. Idntification
  3. Verification
  4. Object Detection
  5. Deployment on Microsof Azure

Project can be found at: https://github.com/NourKamaly/SignatureIdentificationAndVerification

Tech Stack

Programming Languages: Python 3.9, JavaScript

Markup Languages: HTML

Style Sheet Language: CSS, Sass

Libraries used: cv2, os, NumPy, Keras, TenserFlow, matplotlib, tqdm, glob , sklearn, PyTorch

Signature Identification

4 models were experimented with:

  1. VGG 16
  2. Inception v3
  3. ResNet 50
  4. Vision Transformers (implemented but havn't been run yet)

Signature Verification

We experimented with the Siamese Neural Network (sometimes called a twin neural network) is an artificial neural network that uses the same weights while working in tandem on two different input vectors to compute comparable output vectors.Often one of the output vectors is precomputed, thus forming a baseline against which the other output vector is compared. This is similar to comparing fingerprints but can be described more technically as a distance function for locality-sensitive hashing. Siamese We used this network to compare the input signature claiming to be a specific person.

Object Detection

2 models were experimented with:

  1. YOLO v5
  2. YOLO v7

YOLO v5 ended up with better results

ObjectDetection

Google Colab / Kaggle notebooks

Data augmentation: https://colab.research.google.com/drive/1-R-sVWvq27pp3pij6lWWNy9gJVuw-ApL?usp=sharing

VGG 16: https://colab.research.google.com/drive/15Zahd23WxDjUNjhsuraHOCGtYs0-F_ub?usp=sharing

Inception v3: https://colab.research.google.com/drive/1Ji063ZVjKWyXvas-88cZ7NoRhgoNxGGS?usp=sharing

ResNet 50: https://colab.research.google.com/drive/1t3ursrEiTEuiIUTMbLeZicn32SHTP__L?usp=sharing

YOLO v5: https://www.kaggle.com/code/saraosmanbaza/signature-detection-yolov5

YOLO v7: https://www.kaggle.com/code/saraosmanbaza/yolov7-signature-detection

Testing Script: https://colab.research.google.com/drive/12hdNSzO0Su-G3T3TBCmbt6xgvbggmzN1?usp=sharing

Google drive that has the dataset, augmented pictures,saved models: https://drive.google.com/drive/folders/139Jt4j3DrYHtpB-Wq1d0CnRmh63a8frf?usp=sharing

Deployment

Demonstration.mp4

signatureidentificationandverification's People

Contributors

abdelrhman2023 avatar ahmedmagdy231 avatar mohamednour2019 avatar nourkamaly avatar saramohamed279 avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.