trOCR: Revolucionant el reconeixement de text amb Transformers

Assoleix precisió a nivell humà en l'extracció de text de contingut imprès, manuscrit i multilingüe.

Què és l'API trOCR?

trOCR (Optical Character Recognition basat en Transformers) és un model OCR innovador de Microsoft que aprofita l'arquitectura Transformer per oferir una precisió sense precedents en el reconeixement de text. A diferència dels sistemes OCR tradicionals que es basen únicament en xarxes convolucionals, trOCR combina vision transformers (ViTs) amb modelatge seqüència-a-seqüència, permetent entendre el context i les relacions espacials en el text, fins i tot per a entrades complexes com notes manuscrites, escaneigs de baixa resolució o escriptures complexes.

Avantatges clau de trOCR:

  • Reconeixement com humà: Excel·lent en lectura d'escriptura manual i text distorsionat
  • Suport multilingüe: Models pre-entrenats per a anglès, francès, alemany i més
  • Procés integral: Combina detecció i reconeixement de text
  • Fàcil integració: Basat en la biblioteca Hugging Face Transformers
GitHub

Estadístiques de GitHub

Nom:
Llenguatge:
Estrelles:
Forquilles:
Llicència:
El repositori es va actualitzar per última vegada a

Per què triar trOCR?

  • 15-20% més precís que models basats en CNN
  • Més del 90% de precisió en text manuscrit
  • Mínim preprocessament necessari
  • Processament eficient en GPU

Instal·lació

trOCR requereix PyTorch o TensorFlow i la biblioteca Hugging Face Transformers:

Instal·la amb PyTorch (recomanat GPU)


pip install transformers torch torchvision
pip install datasets  # Opcional

Nota: Els models ocupen ~1.5GB d'espai

Exemples de codi

Reconeixement de text manuscrit

Llegir escriptura manual


from transformers import TrOCRProcessor, VisionEncoderDecoderModel
from PIL import Image

processor = TrOCRProcessor.from_pretrained("microsoft/trocr-base-handwritten")
model = VisionEncoderDecoderModel.from_pretrained("microsoft/trocr-base-handwritten")

image = Image.open("handwritten.jpg").convert("RGB")
pixel_values = processor(image, return_tensors="pt").pixel_values

generated_ids = model.generate(pixel_values)
text = processor.batch_decode(generated_ids, skip_special_tokens=True)[0]

print(f"Text: {text}")

Processament de documents impresos

Processar documents


from transformers import pipeline
from PIL import Image

ocr = pipeline("image-to-text", model="microsoft/trocr-base-printed")
image = Image.open("document.png").convert("RGB")
results = ocr(image)

for item in results:
    print(item['generated_text'])

Ús avançat

  • Millora la qualitat d'imatge amb OpenCV
  • Entrena el model amb les teves pròpies dades

Aplicacions

  • Digitalització d'arxius històrics
  • Processament de factures i documents legals
  • Accessibilitat per a persones amb discapacitat visual

Productes Similars

 Catalan