trOCR: Forradalmasítja a szövegfelismerést transzformátorokkal

Emberi szintű pontosságot érhet el nyomtatott, kézírásos és többnyelvű tartalmak szövegének kinyerésében.

Mi a trOCR API?

A trOCR (Transzformátor-alapú Optikai Karakterfelismerés) a Microsoft forradalmi OCR modellje, amely a transzformátor architektúrák erejét használja fel páratlan szövegfelismerési pontosság elérésére. A hagyományos OCR rendszerekkel ellentétben, amelyek kizárólag konvolúciós hálózatokra támaszkodnak, a trOCR egyesíti a vision transzformátorokat (ViT-ket) és a szekvencia-szekvencia modellezést, lehetővé téve a szövegkörnyezet és a térbeli kapcsolatok megértését - még olyan kihívást jelentő bemenetek esetén is, mint kézírásos jegyzetek, alacsony felbontású szkennelt anyagok vagy összetett írásrendszerek.

A trOCR fő előnyei:

  • Emberszerű felismerés: Kiválóan kezeli a kézírást és torz szöveget
  • Többnyelvű támogatás: Előre betanított modellek angol, francia, német és más nyelvekre
  • Teljes folyamat: Egyesíti a szövegdetektálást és felismerést
  • Zökkenőmentes integráció: A Hugging Face Transformers könyvtárára épül
GitHub

GitHub statisztika

Név:
Nyelv:
Csillagok:
Villák:
Engedély:
Az adattár legutóbbi frissítése:

Miért válassza a trOCR-t?

  • 15-20%-kal pontosabb a CNN-alapú modelleknél
  • Több mint 90%-os pontosság kézírásos szöveg esetén
  • Minimális előfeldolgozás: Robusztus a betűtípus-, tájolás- és háttérzaj-változásokkal szemben
  • Skálázható következtetés: Közel lineáris gyorsulással dolgozza fel a képek kötegeit GPU-n

Telepítés

A trOCR-hoz PyTorch vagy TensorFlow és a Hugging Face Transformers könyvtár szükséges:

Telepítés PyTorch-val (GPU ajánlott)


pip install transformers torch torchvision
pip install datasets  # Választható a finomhangoláshoz

Megjegyzés: A microsoft/trocr-base modellek változatanként (nyomtatott/kézírásos) ~1.5GB tárhelyet igényelnek. Ügyeljen elegendő tárhelyre és RAM-ra (8GB+ kötegelt feldolgozáshoz).

Kódpéldák

Kézírásos szöveg felismerése

Kézírás felismerése


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("kezirasos_jegyzet.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"Kinyert szöveg: {text}")

Nyomtatott dokumentum feldolgozása

Nyomtatott szöveg kinyerése


from transformers import pipeline
from PIL import Image

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

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

Haladó tippek

  • Használjon OpenCV-t a képek előfeldolgozásához
  • Finomhangolja a modellt saját igényei szerint

Alkalmazási területek

  • Történelmi archívumok digitalizálása
  • Számlák és jogi dokumentumok feldolgozása
  • Akadálymentesítési technológiák

Hasonló Termékek

 Hungarian