Skip to main content

OCRmyPDF plugin using Google Lens API for OCR

Project description

OCRmyPDF-ChromeLens-Ocr

A plugin for OCRmyPDF that uses the Google Lens API to perform Optical Character Recognition (OCR).

Features

  • High Accuracy: Leverages Google's advanced Lens models.
  • Structure Preservation: Correctly handles multi-column layouts and vertical text flows via strict API parsing and rotation-aware sorting.
  • Smart De-hyphenation: Merges words broken across lines while respecting punctuation dashes.

Installation

Prerequisites

You must have ocrmypdf installed.

Install from Git

pip install git+https://github.com/atlantos/OCRmyPDF-ChromeLens-Ocr.git

Install from Pip

pip install ocrmypdf-chromelens-ocr

Usage

To use this engine, pass the plugin name to OCRmyPDF. You generally do not need to specify a language, as Google Lens auto-detects it.

ocrmypdf --plugin ocrmypdf_chromelens_ocr input.pdf output.pdf

Configuration Options

You can configure the behavior of the plugin using the following command-line arguments:

Argument Description Default
--chromelens-no-dehyphenation Disables the logic that merges hyphenated words across lines. Useful if you prefer raw output. Disabled
--chromelens-max-dehyphen-len The maximum length of word parts allowed for de-hyphenation. If both the prefix (before hyphen) and suffix (after hyphen) are longer than this value, the plugin assumes it is a compound word or dash separator and will not merge them. 10

Example: Disable de-hyphenation

ocrmypdf --plugin ocrmypdf_chromelens_ocr --chromelens-no-dehyphenation input.pdf output.pdf

Example: Stricter de-hyphenation (only merge very short breaks)

ocrmypdf --plugin ocrmypdf_chromelens_ocr --chromelens-max-dehyphen-len 4 input.pdf output.pdf

Credits & Acknowledgements

This project is a Python port and adaptation based on ideas and logic from:

  1. chrome-lens-ocr:

    • Provided the critical reverse-engineering of the Google Lens Protobuf API (v1/crupload).
    • Logic for strict layout parsing and request structure.
  2. OCRmyPDF-AppleOCR:

    • Provided the architectural inspiration for creating an OCRmyPDF plugin that offloads recognition to an external engine.

Disclaimer

This software is for educational purposes. It uses an undocumented private API from Google.

  • Privacy: Your images are uploaded to Google servers. Do not process sensitive/confidential data.
  • Stability: The API may change or break at any time without notice.
  • Rate Limits: Excessive use may result in your IP being temporarily blocked by Google.

License

MIT License

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

ocrmypdf_chromelens_ocr-1.0.4.tar.gz (14.9 kB view details)

Uploaded Source

Built Distribution

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

ocrmypdf_chromelens_ocr-1.0.4-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file ocrmypdf_chromelens_ocr-1.0.4.tar.gz.

File metadata

  • Download URL: ocrmypdf_chromelens_ocr-1.0.4.tar.gz
  • Upload date:
  • Size: 14.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ocrmypdf_chromelens_ocr-1.0.4.tar.gz
Algorithm Hash digest
SHA256 ec182900bf2ec5bc0f04086c753cbca68baef59931fdda031336b25389114537
MD5 ced6237ea69aaf84fc1f8b853160864d
BLAKE2b-256 a3e294fe7e3da9d4b089af8af8fd8a0e6b3fe0131e7b287bac09287634c14c40

See more details on using hashes here.

Provenance

The following attestation bundles were made for ocrmypdf_chromelens_ocr-1.0.4.tar.gz:

Publisher: release.yml on atlantos/OCRmyPDF-ChromeLens-Ocr

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

File details

Details for the file ocrmypdf_chromelens_ocr-1.0.4-py3-none-any.whl.

File metadata

File hashes

Hashes for ocrmypdf_chromelens_ocr-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 9be701086953651ba2df33a092335c1f1159c3279ddece3211b010132cc43b53
MD5 0f746482a3dcb087a25366f6fe873d4c
BLAKE2b-256 84db949486a23933ee052ff9362df238ff89a28ed1342af6b4f43a40a9a83e79

See more details on using hashes here.

Provenance

The following attestation bundles were made for ocrmypdf_chromelens_ocr-1.0.4-py3-none-any.whl:

Publisher: release.yml on atlantos/OCRmyPDF-ChromeLens-Ocr

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