VerSign: Easy Signature Verification in Python
versign is a small Python package which can be used to perform verification of offline signatures.
It assumes no prior knowledge of any machine learning tools or machine learning itself, and therefore can be used by ML experts and anyone else who wants to quickly integrate this functionality into their project.
Getting Started
Installation
This package requires python 3. Installation can be done with pip:
pip install versign
Installation inside a virtual environment is recommended.
Download Trained Models
Before you can get started with, there is one more step you need to complete. versign comes with some pre-trained models which give it its magic.
Download the compressed models here, and extract them to models/ directory in your project root. Your project directory should look something like this:
_ $PROJECT_ROOT
|__ models/
| |__ signet.pth
| |__ versign_segment.pkl
|__ ...
Organise Your Dataset
It is assumed that only positive samples (i.e. genuine signatures) are available during training, while both genuine and forged signatures are present during testing.
Write Your First Program with VerSign
import os
from versign import VerSign
# Load training data
train_data # folder containing training data (only genuine samples)
x_train = [os.path.join(train_data, f) for f in sorted(os.listdir(train_data))]
# Load test data and labels
test_data # folder containing test data
x_test = [os.path.join(test_data, f) for f in sorted(os.listdir(test_data))]
# Train a writer-dependent model from training data
v = VerSign('models/signet.pth', (150, 220))
v.fit(x_train)
# Predict labels of test data
y_pred = v.predict(x_test)
For a more complete example and additional features such as measuring test accuracy if groundtruth is known, see example.py.
Metadata
Release files for versign 0.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| versign-0.0.2.tar.gz | 13.2 kB | Without provenance | Details for versign-0.0.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| versign-0.0.2-py3-none-any.whl | Python 3 | none | any | Details for versign-0.0.2-py3-none-any.whl |
Total release size: 35.7 kB
Release files / versign-0.0.2.tar.gz
| Download URL | versign-0.0.2.tar.gz |
|---|---|
| Size | 13.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3becc20d1d2adfe9aef3f0f31aeffb4d18c6aee5b2a5c85dc21bc214fced0232
|
|
BLAKE2b-256 checksum How to use checksums |
9f0d7df68dc864d93f2969b8a9f273103ec678a6ddcae1871688b9f243537acc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/3.8.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2
|
Release files / versign-0.0.2-py3-none-any.whl
| Download URL | versign-0.0.2-py3-none-any.whl |
|---|---|
| Size | 22.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a876145cda6cba0d2a121183335d500dba14572bc038364738718074e15a6557
|
|
BLAKE2b-256 checksum How to use checksums |
9351ae6e6d9969edd294252ca8a7ff8bdc2b76dbfe7adc9a40eb48760a5eb12c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/3.8.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2
|
Security for versign 0.0.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.