Skip to main content

GLYPTIC

Engraving Fingerprints with Precision and Artistry

license last-commit repo-top-language repo-language-count

Built with:

tqdm TensorFlow Keras SciPy Python AIOHTTP


Table of Contents

Overview

Written with the jewelry industry in mind, glyptic leverages advanced image processing and generative AI techniques to prepare fingerprint images suitable for jewelry engraving. A two-step process starts by utilizing a pre-trained U-Net model to enhance and denoise raw dactylograms. The second step automates an SDXL-based workflow transforming enhanced images to high-resolution, stylized vector art in SVG format, ensuring compatibility and scalability. Glyptic includes a streamlined setup process that can be deployed on a cloud or local install, and can comfortably run on an M1 Macbook. By generating beautiful yet faithful outputs for even low-quality fingerprints, glyptic significantly benefits the jewelry engraving industry.


Features

Feature Description
⚙️ Architecture Glyptic follows a modular architecture with a focus on image processing and machine learning, specifically for enhancing fingerprint images using a U-Net model, and image-to-image translation using ComfyUI, SDXL, and controlnet
🔩 Code Quality Glyptic follows a structured and organized style with clear separation of concerns, such as modular functions for specific tasks like setup, image enhancement, and image transformation.
🔌 Integrations Key integrations include ComfyUI, JuggernautXL, TensorFlow, PyTorch, and Hugging Face Hub, along with image processing libraries like OpenCV, scikit-image, and Pillow.
🧩 Modularity The codebase is highly modular, with distinct modules for different functionalities such as image enhancement, setup, and workflow management, promoting reusability.
⚡️ Performance Glyptic can both be scaled to run on high-end cloud servers
📦 Dependencies The project relies on several key dependencies including TensorFlow, PyTorch, OpenCV, Pillow, and various other libraries for machine learning and image processing.
🚀 Simplicity Glyptic wraps up the entire process in a single command, providing a one-click solution out of the box.

Repository Structure

└── glyptic/
    ├── pyproject.toml
    ├── README.md
    └── src
        ├── glyptic
        │   ├── __init__.py
        │   ├── enhance_fingerprints.py
        │   ├── enhance_utils.py
        │   ├── glyptic_workflow.py
        │   └── unet_weights.hdf5
        └── glyptic_setup
            ├── __init__.py
            └── glyptic_setup.py

Modules

src.glyptic
File Summary
enhance_fingerprints.py Enhances fingerprint images by utilizing a pre-trained U-Net model. Downloads necessary model weights if unavailable locally and processes images in batches, resizing and normalizing them before prediction. Outputs enhanced images to a specified directory, optimizing them for further analysis or use within the repository's broader fingerprint processing workflow.
enhance_utils.py Defines the U-Net model used by enhance_fingerprints.py.
unet_weights.hdf5 Contain pre-trained weights for a U-Net model, facilitating efficient and accurate image processing tasks within the glyptic module. Integrates seamlessly into the workflow, enhancing the systems capability to handle complex image enhancement and fingerprint analysis operations.
glyptic_workflow.py Facilitates the transformation of input images into high-resolution, stylized outputs using advanced machine learning models and image processing techniques. Integrates various conditioning and control mechanisms to enhance image quality and converts the final output to SVG format, ensuring compatibility and scalability within the repositorys architecture.
src.glyptic_setup
File Summary
glyptic_setup.py Facilitate the setup and configuration of the glyptic application by creating necessary directories, generating configuration files, and optionally downloading required model files. Enhance user experience by providing command-line arguments for custom data directories and automated setup processes.

Getting Started

Prerequisites

Python: version 3.12.6

Installation

❯ pip install glyptic

Installing with pipx or similar will also work.

Setup

Download and symlink required models:

❯ glyptic_setup --config --download
❯ glyptic_setup --help

for full options.

Usage

❯ glpytic -i myinput/*.jpg 

Contributing

Contributions are welcome! Here are several ways you can contribute:


License

This project is protected under the GNU General Public License v3.0 License. For more details, refer to the COPYING file.


Acknowledgments


Metadata

Release files for glyptic 0.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for glyptic 0.1.2
File Size Uploaded
glyptic-0.1.2.tar.gz 97.2 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for glyptic 0.1.2
File Interpreter ABI Platform
glyptic-0.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 194.7 MB

Release files / glyptic-0.1.2.tar.gz

Download URL glyptic-0.1.2.tar.gz
Size 97.2 MB
Tags Source
SHA-256 checksum
How to use checksums
a0f250d6a25455986847630592fcecd31bcb32554857620fad308031f680197e
BLAKE2b-256 checksum
How to use checksums
496fa4044e0f61f181ccaf62e63158dcc9e27369c841fa30f2235a949b07c578
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.5

Release files / glyptic-0.1.2-py3-none-any.whl

Download URL glyptic-0.1.2-py3-none-any.whl
Size 97.5 MB
Tags Python 3
SHA-256 checksum
How to use checksums
c332b2359e792c7caef119100adf37b64b43a8d522b4f4a1d1e758e48c8ea9dc
BLAKE2b-256 checksum
How to use checksums
ac30409e5d70b11e25cc5c65ba6436a612b0271813c75d60db56056e5f78b0b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.12.5

Release history Release notifications | RSS feed

This release

0.1.2 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page