Computer Vision
Computer vision work across signature verification, forgery detection, segmentation, object detection, OCR, and synthetic data generation.
Designed and evaluated signature-verification and forgery-detection models on real banking signature datasets.
Worked with Siamese networks, custom CNNs, transfer-learning backbones, ensembles, GANs, and diffusion-based augmentation.
Built a U-Net human segmentation workflow with an EfficientNet-B3 encoder for pixel-level background removal.
Vision Work in Risk-Sensitive Domains
Computer vision in banking is different from demo vision. A false positive and a false negative have different operational costs, and the threshold matters as much as the architecture.
My work with signature verification and forgery detection focused on real datasets, preprocessing, augmentation, model comparison, threshold selection, and error analysis rather than only top-line accuracy.
Siamese Networks and Verification
Verification problems are not ordinary classification problems. The question is not simply which class an image belongs to, but whether two samples are sufficiently similar under real-world variation.
Siamese networks are useful here because they learn a representation where distance has meaning. The delicate part is pair construction: positive pairs, hard negatives, signer-level separation, and evaluation splits can make or break the result.
- Pair generation for genuine and forged signatures
- Distance thresholds selected through validation, not intuition
- False-positive and false-negative analysis
- Transfer learning and custom CNN backbones
Segmentation and Detection
Segmentation requires pixel-level thinking. With U-Net style models, the details are in masks, encoder choice, augmentation, loss function, and boundary quality.
Detection and OCR workflows have similar hidden complexity. Preprocessing, image quality, layout variance, and postprocessing often determine whether the model is actually useful.
Synthetic Data Without Fooling Yourself
GANs and diffusion models can improve robustness when real data is limited or imbalanced, but synthetic data must be handled carefully. If synthetic samples are too easy, too clean, or too similar to training data, they can create false confidence.
The useful question is not whether synthetic data improves validation accuracy. The useful question is whether it improves failure modes on hard, realistic examples.