doctr vs TurboOCR
docTR: two-stage OCR in PyTorch — detect words, then recognize them — with pretrained detection and recognition architectures you can mix, plus layout detection and rotated-page handling. — versus — GPU document parser in C++/TensorRT: PP-OCRv6 OCR, layout, tables and formulas to Markdown at 200-559 img/s on one GPU — no VLM, HTTP + gRPC, one-line Docker deploy.
The two non-VLM options, at different points on the effort curve: TurboOCR is a C++/TensorRT server doing 200-559 images/s with layout, tables and formulas to Markdown; docTR is a Python library you import, fine-tune and control architecture by architecture.
| doctr | TurboOCR | |
|---|---|---|
| Stars | 6.3k | 1.0k |
| Forks | 672 | 97 |
| Language | Python | C++ |
| License | Apache-2.0 | MIT |
| Last activity | 3 days ago | 5 days ago |
| Topics | ocr | ocr |
| Curated connections | 3 | 4 |
doctr — the curator's take
The dependable choice when you want OCR as a library rather than a model to serve: pick a detector and a recognizer, call `ocr_predictor(pretrained=True)`, get word-level boxes and text from PDFs or images, with rotated-page handling and optional layout regions. It predates the VLM wave and that's the point — small models, no prompt, deterministic output, trainable on your own data, and cheap enough to run per-page at volume. Two caveats: it gives you words and boxes, not document structure, so reading order, tables and markdown are your job (pair it with a parser); and stewardship moved from Mindee to t2k GmbH, so check commit cadence against the newer VLM OCR crowd before standardizing on it.
TurboOCR — the curator's take
The throughput bet: a classic multi-stage pipeline on TensorRT instead of a VLM — ~20 pages/s structured parsing where VLM parsers run ~1. Sharp on forms and receipts. When NOT: Linux + NVIDIA Turing+ only (Metal/ROCm still cooking), first start compiles engines (up to an hour on older cards), and benchmarks are self-published on its own harness — for messy scans and handwriting a VLM parser may still out-read it.