← all repositories
clovaai/deep-text-recognition-benchmark

Decomposing OCR models to compare apples to apples

A four-stage framework that forces scene-text recognition models to compete on the same track with the same data.

3.9k stars Jupyter Notebook Computer VisionML Frameworks
deep-text-recognition-benchmark
Not currently ranked — collecting fresh signals.
star history

What it does

The repository implements a modular scene text recognition (STR) benchmark in PyTorch. It splits the OCR pipeline into four stages—Transformation, Feature Extraction, Sequence Modeling, and Prediction—so most existing models can be rebuilt as combinations of interchangeable parts. The authors provide a consistent training and evaluation setup across standard datasets, plus pretrained weights, so you can measure whether a new module actually helps or just brings different data.

The interesting bit

Before this work, STR papers were a comparison nightmare: every team used its own datasets and training tricks, making it impossible to tell which architectural choice mattered. The framework treats models like LEGO sets, letting you swap a ResNet backbone for VGG or switch CTC for attention without changing the surrounding pipeline. That mechanical isolation is what turned the paper into an ICCV 2019 oral and an ICDAR winner.

Key highlights

  • Four-stage modular design: Transformation, FeatureExtraction, SequenceModeling, and Prediction can be mixed and matched.
  • Evaluates module contributions across accuracy, speed, and memory demand on a fixed set of benchmarks.
  • Includes pretrained models such as the best-accuracy TRBA (TPS-ResNet-BiLSTM-Attn) and a CRNN baseline.
  • Provides cleansed labels and a failure-case dataset for debugging.
  • Supports custom datasets and non-Latin languages if you convert them to LMDB format and tweak character options.

Caveats

  • The code targets older PyTorch versions (tested on 1.3.1, paper used 0.4.1), so expect some archaeology if you are on modern stacks.
  • Training on your own data requires manual LMDB creation and editing configuration options like opt.character; it is not a drop-in folder swap.

Verdict

Grab this if you are researching STR architectures and need a controlled baseline to test a new module. Skip it if you want a polished, ready-to-deploy OCR API for production; this is a laboratory bench, not a product.

Frequently asked

What is clovaai/deep-text-recognition-benchmark?
A four-stage framework that forces scene-text recognition models to compete on the same track with the same data.
Is deep-text-recognition-benchmark open source?
Yes — clovaai/deep-text-recognition-benchmark is open source, released under the Apache-2.0 license.
What language is deep-text-recognition-benchmark written in?
clovaai/deep-text-recognition-benchmark is primarily written in Jupyter Notebook.
How popular is deep-text-recognition-benchmark?
clovaai/deep-text-recognition-benchmark has 3.9k stars on GitHub.
Where can I find deep-text-recognition-benchmark?
clovaai/deep-text-recognition-benchmark is on GitHub at https://github.com/clovaai/deep-text-recognition-benchmark.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.