A package for the signature detection
Project description
Signature Detection
A simple tool to detect if there are signatures in an image or a PDF file.
The full documentation is presented at the Github Repository.
Extra Dependencies
This tool uses Wand
to convert a PDF file into images.
Wand
is a ctypes-based simple ImageMagick
binding for Python. You may need to install ImageMagick
on your local machine.
More details are available here.
Usage
Signature_detect contains 4 classes.
- Loader
- Extractor
- Cropper
- Judger
Loader
Loader can read an image or a PDF file page by page.
It returns a list of the masks. Each mask is a numpy 2 dimensions array. Its element's value is 0
or 255
.
from signature_detect.loader import Loader
loader = Loader(
low_threshold=(0, 0, 250),
high_threshold=(255, 255, 255))
masks = loader.get_masks(file_path)
Extractor
Extractor reads a mask, labels the regions in the mask, and removes both small and big regions. We consider that the signature is a region of middle size.
from signature_detect.extractor import Extractor
extractor = Extractor(
outlier_weight=3,
outlier_bias=100,
amplfier=10,
min_area_size=10)
labeled_mask = extractor.extract(mask)
Cropper
Cropper crops the regions in the labeled mask.
from signature_detect.cropper import Cropper
cropper = Cropper(
min_region_size=10000,
border_ratio=0.1)
results = cropper.run(labeled_mask)
Judger
Judger decides whether a region is a signature.
from signature_detect.judger import Judger
judger = Judger(
size_ratio=[1, 4],
pixel_ratio=[0.01, 1])
is_signed = judger.judge(result["cropped_mask"])
Dev version
If you would like to develop this package and run the tests, you can download the code and install dev environment locally.
pip install -e .[dev]
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file signature-detect-0.1.4.tar.gz
.
File metadata
- Download URL: signature-detect-0.1.4.tar.gz
- Upload date:
- Size: 6.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2bf25cf3695a338c79b3c4ec17208161977477144ba9c56283d737117bc32be4 |
|
MD5 | 8b8e9459ceed6dab69e20e10d7bdc844 |
|
BLAKE2b-256 | e3621c84a233fcd915297e5979091d57fd942b3b4d2648fcccc11df09ee7d9d2 |
File details
Details for the file signature_detect-0.1.4-py3-none-any.whl
.
File metadata
- Download URL: signature_detect-0.1.4-py3-none-any.whl
- Upload date:
- Size: 13.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 52c2775ff0415619243afc0b943acbfcdc86be3f9999582cd6adae3d80d7dc2a |
|
MD5 | 5854fe55aa40f93b5f71edcfd07fcd65 |
|
BLAKE2b-256 | 8f7996c9b3f4eef8d33bf18bf44e76f1f35d8ca6115ad54b71237ae580eee11e |