trOCR: Revoliucionuokite teksto atpažinimą su Transformeriais

Pasiekite žmogaus lygio tikslumą teksto išgavime iš spausdinto, rankraščio ir daugiakalbių turinių.

Kas yra trOCR API?

trOCR (Transformeriais pagrįstas optinis simbolių atpažinimas) yra Microsoft revolucinis OCR modelis, naudojantis transformerų architektūrų galią, kad pasiektų nepakartojamą teksto atpažinimo tikslumą. Skirtingai nuo tradicinių OCR sistemų, kurios remiasi tik konvoliuciniais tinklais, trOCR sujungia vaizdo transformerius (ViTs) su sekų modeliavimu, leisdamas suprasti kontekstą ir erdvinius ryšius tekste - net ir sudėtingiems įvesties duomenims, kaip rankraščio užrašai, žemos raiškos nuskaitymai ar sudėtingi scenarijai.

Pagrindiniai trOCR privalumai:

  • Žmogaus lygio atpažinimas: Puikiai atpažįsta rašytinį ir iškraipytą tekstą
  • Daugiakalbis palaikymas: Iš anksto apmokyti modeliai anglų, prancūzų, vokiečių ir kitoms kalboms
  • Vientisas procesas: Sujungia teksto aptikimą ir atpažinimą
  • Lengva integracija: Sukurtas ant Hugging Face Transformer bibliotekos
GitHub

GitHub Stats

Name:
Language:
Stars:
Forks:
License:
Repository was last updated at

Kodėl rinktis trOCR?

  • 15-20% tikslesnis nei CNN pagrįsti modeliai
  • Daugiau nei 90% tikslumas rankraščio tekstui
  • Minimalus išankstinis apdorojimas: Atsparus šriftų, orientacijos ir triukšmo pokyčiams
  • Efektyvus apdorojimas: Optimizuotas GPU

Diegimas

trOCR reikalauja PyTorch arba TensorFlow ir Hugging Face Transformer bibliotekos:

Diegimas su PyTorch (rekomenduojama GPU)


pip install transformers torch torchvision
pip install datasets  # Pasirinktinai tikslinimui

Pastaba: microsoft/trocr-base modeliams reikia ~1.5GB disko vietos variantui (spausdintas/rankraštis). Įsitikinkite, kad turite pakankamai vietos ir RAM (8GB+ grupiniam apdorojimui).

Kodo pavyzdžiai

Rankraščio teksto atpažinimas

Rankraščio atpažinimas


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("rankrastis.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"Išgautas tekstas: {text}")

Spausdinto teksto apdorojimas

Spausdinto teksto išgavimas


from transformers import pipeline
from PIL import Image

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

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

Išplėstinės rekomendacijos

  • Pagerinkite vaizdų kokybę su OpenCV prieš apdorojimą
  • Pritaikykite modelį savo specifiniams poreikiams

Taikymo sritys

  • Istorinių archyvų skaitmeninimas
  • Sąskaitų ir teisinių dokumentų apdorojimas
  • Prieinamumo technologijos

Similar Products

 Lithuanian