trOCR: Επανάσταση στην Αναγνώριση Κειμένου με Μετασχηματιστές

Πραγματοποιήστε εξαγωγή κειμένου με ανθρώπινη ακρίβεια από τυπωμένο, χειρόγραφο και πολύγλωσσο περιεχόμενο.

Τι είναι το trOCR API;

Το trOCR (Transformer-based Optical Character Recognition) είναι το επαναστατικό μοντέλο OCR της Microsoft που αξιοποιεί την ισχύ των αρχιτεκτονικών μετασχηματιστών για απαράμιλλη ακρίβεια στην αναγνώριση κειμένου. Σε αντίθεση με τα παραδοσιακά συστήματα OCR που βασίζονται αποκλειστικά σε συνελικτικά δίκτυα, το trOCR συνδυάζει vision transformers (ViTs) με μοντελοποίηση ακολουθίας-προς-ακολουθία, επιτρέποντάς του να κατανοεί το πλαίσιο και τις χωρικές σχέσεις στο κείμενο - ακόμη και για δύσκολες εισόδους όπως χειρόγραφες σημειώσεις, σαρώσεις χαμηλής ανάλυσης ή πολύπλοκα σενάρια.

Βασικά πλεονεκτήματα του trOCR:

  • Ανθρώπινη αναγνώριση: Εξαιρετικό στην ανάγνωση χειρόγραφου και παραμορφωμένου κειμένου
  • Πολυγλωσσική υποστήριξη: Προεκπαιδευμένα μοντέλα για Αγγλικά, Γαλλικά, Γερμανικά και άλλα
  • Ολοκληρωμένη διαδικασία: Συνδυάζει ανίχνευση και αναγνώριση κειμένου
  • Εύκολη ενσωμάτωση: Χτισμένο πάνω στη βιβλιοθήκη Transformers της Hugging Face
GitHub

Στατιστικά GitHub

Ονομα:
Γλώσσα:
Αστέρια:
Πιρούνια:
Αδεια:
Το αποθετήριο ενημερώθηκε τελευταία φορά στις

Γιατί να επιλέξετε το trOCR;

  • 15-20% υψηλότερη ακρίβεια από μοντέλα βασισμένα σε CNN
  • Πάνω από 90% ακρίβεια για χειρόγραφο κείμενο
  • Ελάχιστη προεπεξεργασία: Ανθεκτικό σε παραλλαγές γραμματοσειράς και θορύβου
  • Αποδοτική επεξεργασία: Βελτιστοποιημένο για GPU

Εγκατάσταση

Το trOCR απαιτεί PyTorch ή TensorFlow και τη βιβλιοθήκη Hugging Face Transformers:

Εγκατάσταση με PyTorch (συνιστάται GPU)


pip install transformers torch torchvision
pip install datasets  # Προαιρετικό για τελειοποίηση

Σημείωση: Τα μοντέλα microsoft/trocr-base απαιτούν ~1.5GB χώρου ανά έκδοση (τυπωμένο/χειρόγραφο). Βεβαιωθείτε ότι έχετε επαρκή χώρο και RAM (8GB+ για ομαδική επεξεργασία).

Παραδείγματα Κώδικα

Παράδειγμα 1: Αναγνώριση Χειρόγραφου Κειμένου

Αναγνώριση χειρόγραφου


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_note.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}")

Παράδειγμα 2: Επεξεργασία Τυπωμένου Κειμένου

Εξαγωγή τυπωμένου κειμένου


from transformers import pipeline
from PIL import Image

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

for idx, item in enumerate(results):
    print(f"Σελίδα {idx + 1}: {item['generated_text']}")

Συμβουλές για Προχωρημένους

  • Βελτιστοποιήστε εικόνες με OpenCV πριν την επεξεργασία
  • Προσαρμόστε το μοντέλο για συγκεκριμένες ανάγκες

Εφαρμογές

  • Ψηφιοποίηση ιστορικών αρχείων
  • Αυτοματοποιημένη επεξεργασία εγγράφων
  • Τεχνολογίες βοηθητικών μέσων

Παρόμοια Προϊόντα

 Ελληνικά