Skip to main content

Core interfaces and utilities for OCR Bridge engine packages

Project description

OCR Bridge Core

Core interfaces and utilities for OCR Bridge engine packages.

Overview

ocrbridge-core provides the foundational abstract base classes, models, and utilities that all OCR engine packages must implement. This package enables a modular, plugin-based architecture where OCR engines can be dynamically discovered and loaded at runtime.

Installation

pip install ocrbridge-core

For local development, we recommend using uv and the provided Makefile.

See CONTRIBUTING.md for detailed setup instructions.

# Quick start (requires uv)
make install
make check

Core Components

OCREngine Base Class

All OCR engines must inherit from OCREngine and implement:

  • process(file_path, params) - Process a document and return HOCR XML
  • name property - Engine identifier (e.g., 'tesseract', 'easyocr')
  • supported_formats property - Set of supported file extensions

OCREngineParams

Base model for engine-specific parameters using Pydantic validation.

Exceptions

  • OCRBridgeError - Base exception
  • OCRProcessingError - Processing failures
  • UnsupportedFormatError - Unsupported file format
  • EngineNotAvailableError - Engine not installed/available
  • InvalidParametersError - Invalid parameters

HOCR Utilities

Helper functions for HOCR XML parsing, validation, and conversion:

  • parse_hocr() - Parse and extract HOCR information
  • validate_hocr() - Validate HOCR structure
  • extract_bbox() - Extract bounding box coordinates
  • easyocr_to_hocr() - Convert EasyOCR results to HOCR format

Implementing a New Engine

See the engine packages for examples:

  • ocrbridge-tesseract - Simple reference implementation
  • ocrbridge-easyocr - Deep learning with GPU support
  • ocrbridge-ocrmac - Platform-specific (macOS only)

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

ocrbridge_core-1.0.1.tar.gz (88.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ocrbridge_core-1.0.1-py3-none-any.whl (9.1 kB view details)

Uploaded Python 3

File details

Details for the file ocrbridge_core-1.0.1.tar.gz.

File metadata

  • Download URL: ocrbridge_core-1.0.1.tar.gz
  • Upload date:
  • Size: 88.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for ocrbridge_core-1.0.1.tar.gz
Algorithm Hash digest
SHA256 b20d91f79264cee7d73199daeaeaa663c40878af13d10af171db9bd0c197e33b
MD5 3218c0836caa958280ec67a790a220b2
BLAKE2b-256 6bc9f06fc4903d2fc01d511ba115c8429c9b67bf275012beb282df7efcfc7a78

See more details on using hashes here.

Provenance

The following attestation bundles were made for ocrbridge_core-1.0.1.tar.gz:

Publisher: release.yml on OCRBridge/ocrbridge-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ocrbridge_core-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: ocrbridge_core-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for ocrbridge_core-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5c3eec6e2df26a25abfb9b90bb2220e4bf353efc28f95f4e6ca4d6dee07f782c
MD5 1b962518e00f716cc6b9b38718952405
BLAKE2b-256 5bd99560c7ca77c4abbaace4eac76e48feaaab6b2d1f14d23eaa015dcd4bd4ae

See more details on using hashes here.

Provenance

The following attestation bundles were made for ocrbridge_core-1.0.1-py3-none-any.whl:

Publisher: release.yml on OCRBridge/ocrbridge-core

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page