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:
- Identify which person a signature belongs to (5 people: personA, personB, personC, personD, personE).
- Verify if the signature is real or forged.
- 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
- Preprocessing
- Idntification
- Verification
- Object Detection
- Deployment on Microsof Azure
Project can be found at: https://github.com/NourKamaly/SignatureIdentificationAndVerification
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
4 models were experimented with:
- VGG 16
- Inception v3
- ResNet 50
- Vision Transformers (implemented but havn't been run yet)
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. We used this network to compare the input signature claiming to be a specific person.
2 models were experimented with:
- YOLO v5
- YOLO v7
YOLO v5 ended up with better results
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