Aadhaar Masking Engine (aadhaar-masking)
A high-performance, color-preserving library for detecting and masking 12-digit Aadhaar card numbers in images (JPG, PNG, TIFF, WEBP) and multi-page PDF documents with C++ multi-threading acceleration and automatic Python ThreadPool fallback.
Features
- Color Preservation: CLAHE red-channel background filtering is used only for text detection. The black masking box is applied directly to the original image, preserving colors, notebook lines, and ink clarity.
- Multi-Page PDF Processing: Automatically splits multi-page PDFs, masks pages containing valid 12-digit Aadhaar numbers (with Verhoeff checksum validation), and recombines them into a single PDF.
- Hybrid Multi-Threading Engine:
- Uses native C++ std::thread execution pool via
pybind11when a C++ compiler is available. - Automatically falls back to Python ThreadPoolExecutor when C++ binary extension is unavailable.
- Uses native C++ std::thread execution pool via
- Temporary File Cleanup: Intermediate OCR preprocessed files are cleaned up immediately after coordinate extraction.
Installation
pip install aadhaar-masking
Quick Start Usage
Python API
from aadhaar_masking import mask_aadhaar
# Mask an image file (JPG, PNG, TIFF, etc.)
mask_aadhaar("input_aadhaar.jpg", "masked_aadhaar.jpg")
# Mask a multi-page PDF document
mask_aadhaar("input_document.pdf", "masked_document.pdf")
Command Line Interface (CLI)
# Mask an image
aadhaar-masker input.jpg output_masked.jpg
# Mask a multi-page PDF
aadhaar-masker input_document.pdf output_masked_document.pdf
# Specify worker threads
aadhaar-masker input_document.pdf output_masked_document.pdf --threads 8
License
MIT License.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
aadhaar_masking-0.1.3.tar.gz
(10.4 kB
view details)
File details
Details for the file aadhaar_masking-0.1.3.tar.gz.
File metadata
- Download URL: aadhaar_masking-0.1.3.tar.gz
- Upload date:
- Size: 10.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/7.0.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
00b7bde7fdd89d594144296462d50c3f66a2e4658ff6b47212779679ae264448
|
|
| MD5 |
264d3d9e11f0bab612dbed84c9bb0f5f
|
|
| BLAKE2b-256 |
5650036c17ea1985369c6bd7096a520dca96b7310944e06225bcd5547f85d255
|