A deep learning-based signature verification system designed to distinguish genuine signatures from forged signatures using a Siamese Convolutional Neural Network (Siamese CNN). The system learns similarity patterns between pairs of signatures and provides an automated solution for fraud detection, identity verification, and document authentication.
Handwritten signatures remain one of the most widely used methods for authentication in banking, legal documentation, and digital identity verification. Manual verification is time-consuming and prone to human error.
This project automates signature verification using deep learning and image processing techniques. By leveraging a Siamese CNN architecture, the system compares pairs of signatures and determines whether they belong to the same individual based on learned feature embeddings and similarity scores.
- Genuine vs forged signature detection
- Pairwise signature comparison
- Similarity-based authentication
- Writer-independent verification
- Siamese CNN architecture with shared weights
- Feature embedding generation
- Distance-based similarity learning
- Binary similarity prediction
- Grayscale conversion
- Image resizing
- Image normalization
- Noise reduction
- Data augmentation
- Flask-based interface
- User registration
- Genuine signature upload
- Signature verification portal
- Real-time prediction results
- Fraud detection
- Banking authentication
- Legal document verification
- Digital identity verification
Signature A Signature B
│ │
▼ ▼
Shared CNN Network Shared CNN Network
│ │
▼ ▼
Feature Embedding Feature Embedding
│
▼
Distance Function
│
▼
Similarity Score
│
▼
Genuine / Forged
- Grayscale conversion
- Image resizing
- Normalization
- Noise removal
- Data augmentation
- Siamese CNN extracts signature embeddings
- Shared-weight architecture ensures consistent learning
- Computes distance between embeddings
- Generates similarity score
-
Similarity score is evaluated
-
Signature classified as:
- Genuine
- Forged
| Model | Accuracy |
|---|---|
| CNN | 53.00% |
| Siamese CNN | 87.31% |
- Achieved 87.31% verification accuracy using Siamese CNN.
- Significantly outperformed standard CNN architecture.
- Successfully differentiated genuine and forged signatures.
- Demonstrated effectiveness for authentication systems.
- Python
- TensorFlow
- Keras
- OpenCV
- NumPy
- Pandas
- Matplotlib
- Seaborn
- Flask
- HTML
- CSS
- JavaScript
The project uses the CEDAR Signature Dataset containing:
- Genuine signatures
- Skilled forgeries
- Multiple users
- Signature verification pairs
This dataset is widely used in offline signature verification research.
project/
│
├── dataset/
├── preprocessing/
├── models/
├── training/
├── verification/
├── app/
├── docs/
│ ├── siamese-cnn-architecture.png
│ ├── workflow.png
│ ├── home-page.png
│ ├── user-registration.png
│ ├── genuine-signature.png
│ └── forged-signature.png
│
└── README.md
The project is inspired by research in:
- Siamese Neural Networks
- Signature Verification
- Metric Learning
- Deep Learning-based Authentication
- Bromley et al. (1993)
- Hafemann et al. (2017)
- SigNet (2017)
- Koch et al. (2015)
- Vision Transformers (ViT)
- Attention-based verification
- Mobile deployment
- Real-time authentication
- Multi-factor verification systems
- Large-scale user verification
- Banking Authentication
- Fraud Detection
- Legal Document Verification
- Identity Verification
- Secure Access Systems
Kandula Sri Chandhana B.Tech CSE (Artificial Intelligence & Machine Learning) VNR VJIET