OCR Digits Captcha

A TrOCR model fine-tuned to recognize short numeric captchas of 4 or 5 digits such as 4829 and 50942.

Digits captcha Digits captcha
Digits captcha Digits captcha

Model details

  • Architecture: Vision Encoder-Decoder / TrOCR
  • Base model: microsoft/trocr-base-printed
  • Task: Image-to-text OCR
  • Target geometry: 145x56 and 120x48 RGB images
  • Output: Digit strings of 4 or 5 digits

Training configuration

Parameter Value
Epochs 6
Learning rate 2e-5
Batch size 8
Gradient accumulation 2
Weight decay 0.01
Generation beams 4
Maximum output length 16

Evaluation

The model was trained and evaluated on synthetic captchas generated at the target size and format. Real-world accuracy was not measured on a held-out real set, so the scores below do not prove it.

Split Samples Exact match Character accuracy
Validation 1500 99.93% 99.98%
Synthetic test 750 100.00% 100.00%

Usage

from PIL import Image
from transformers import TrOCRProcessor, VisionEncoderDecoderModel

repo_id = "arkhabbazan/ocr-digits-captcha"
processor = TrOCRProcessor.from_pretrained(repo_id)
model = VisionEncoderDecoderModel.from_pretrained(repo_id).eval()

image = Image.open("captcha.png").convert("RGBA")
white = Image.new("RGBA", image.size, (255, 255, 255, 255))
white.alpha_composite(image)
pixel_values = processor(images=white.convert("RGB"), return_tensors="pt").pixel_values
generated_ids = model.generate(pixel_values, num_beams=4, max_length=16)
prediction = processor.batch_decode(
    generated_ids, skip_special_tokens=True
)[0]
print(prediction.replace(" ", ""))

Limitations

  • Training data is primarily synthetic.
  • Unseen fonts and layouts may reduce accuracy.
  • The model is intended for short digit strings, not document OCR.
  • Usage must be authorized and compliant with applicable policies.
Downloads last month
40
Safetensors
Model size
0.3B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for arkhabbazan/ocr-digits-captcha

Finetuned
(27)
this model