Skip to main content

Image ocr tool.

Project description

🇨🇳中文 | 🌐English | 📖文档/Docs


imgocr: Image OCR toolkit

PyPI version Downloads Contributions welcome License Apache 2.0 python_version GitHub issues Wechat Group

imgocr:Python3 package for Chinese/English OCR, with paddleocr-v4 onnx model(~14MB).

imgocr:基于PaddleOCR-v4-onnx模型(~14MB)推理,性能更高,可实现 CPU 上毫秒级的 OCR 精准预测,在通用场景上达到开源SOTA。

Showcase

银行存根 表格
火车票 英文论文

Benchmark

PP-OCRv4串联系统由文本检测模型和文本识别模型串联完成,首先输入预测图片,经过文本检测模型获取全部的检测框。根据检测框坐标在原图中抠出文本行,并进行矫正,最后将全部文本行送入文本识别模型,得到文本结果。

整个流程如下图所示:

ppocr-v4

OCR 检测/识别 benchmark:

模型 检测 mAP(%) 识别 Acc(%) GPU 推理耗时(ms) CPU 推理耗时(ms) 模型存储大小(M)
PP-OCRv4-mobile 77.79 78.20 2.719474 79.1097 14

GPU 推理耗时基于 NVIDIA Tesla T4 机器,精度类型为 FP32,CPU 推理速度基于 Intel(R) Xeon(R) Gold 5117 CPU @ 2.00GHz,线程数为 8,精度类型为 FP32。

OCR 评估集是 PaddleOCR 自建的中文数据集,覆盖街景、网图、文档、手写多个场景,其中文本识别包含1.1w张图片,检测包含500张图片。

Demo

HuggingFace Demo: https://huggingface.co/spaces/shibing624/imgocr

run example: examples/gradio_demo.py to see the demo:

python examples/gradio_demo.py

Install

pip install -U imgocr

or

pip install -r requirements.txt
git clone https://github.com/shibing624/imgocr.git
cd imgocr
pip install --no-deps .

Usage

OCR识别

example: examples/ocr_demo.py

from imgocr import ImgOcr
m = ImgOcr()
result = m.ocr("data/11.jpg")
print("result:", result)

output:

命令行模式(CLI)

支持批量做OCR识别

code: cli.py

> imgocr -h                                    
usage: cli.py [-h] --image_dir IMAGE_DIR [--output_dir OUTPUT_DIR]
              [--chunk_size CHUNK_SIZE] [--use_gpu USE_GPU]

imgocr cli

options:
  -h, --help            show this help message and exit
  --image_dir IMAGE_DIR
                        input image dir path, required
  --output_dir OUTPUT_DIR
                        output ocr result dir path, default outputs
  --chunk_size CHUNK_SIZE
                        chunk size, default 10
  --use_gpu USE_GPU     use gpu, default False

run:

pip install imgocr -U
imgocr --image_dir data

输入图片目录(--image_dir, required)

Contact

  • Issue(建议):GitHub issues
  • 邮件我:xuming: xuming624@qq.com
  • 微信我:加我微信号:xuming624, 备注:姓名-公司-NLP 进NLP交流群。

Citation

如果你在研究中使用了imgocr,请按如下格式引用:

APA:

Xu, M. imgocr: Image OCR toolkit (Version 0.0.1) [Computer software]. https://github.com/shibing624/imgocr

BibTeX:

@misc{imgocr,
  author = {Ming Xu},
  title = {imgocr: Image OCR toolkit},
  year = {2024},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/shibing624/imgocr}},
}

License

授权协议为 The Apache License 2.0,可免费用做商业用途。请在产品说明中附加imgocr的链接和授权协议。

Contribute

项目代码还很粗糙,如果大家对代码有所改进,欢迎提交回本项目,在提交之前,注意以下两点:

  • tests添加相应的单元测试
  • 使用python -m pytest -v来运行所有单元测试,确保所有单测都是通过的

之后即可提交PR。

References

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

imgocr-0.0.1.tar.gz (20.9 MB view details)

Uploaded Source

File details

Details for the file imgocr-0.0.1.tar.gz.

File metadata

  • Download URL: imgocr-0.0.1.tar.gz
  • Upload date:
  • Size: 20.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.5

File hashes

Hashes for imgocr-0.0.1.tar.gz
Algorithm Hash digest
SHA256 c3c064b1e337f6646aec2c209b1c8706d31c8b839cd4933b5954995450d1328f
MD5 9db82cdb6217e8357220f5459079dde1
BLAKE2b-256 648305c2d6bf9813e9f1764aea691a9c7d8039511433ce84ca552e3a3146eb3a

See more details on using hashes here.

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