Δωρεάν Βιβλιοθήκη JavaScript για Ανάλυση Κειμένου από Σαρωμένες Εικόνες & Φόρμες
Ανοιχτού κώδικα Βιβλιοθήκη JavaScript για Οπτική Αναγνώριση Χαρακτήρων (OCR) που επιτρέπει την Ανάλυση Κειμένου από Μαύρο-Άσπρα Σαρωμένα Εικόνες & Έγγραφα με Υποστήριξη Προεπεξεργασίας Εικόνας & Προτύπων σε Εφαρμογές Web ή Node.js.
Στον σύγχρονο ψηφιακό κόσμο, η τεχνολογία οπτικής αναγνώρισης χαρακτήρων (OCR) παίζει κρίσιμο ρόλο στη μετατροπή σαρωμένων εικόνων, χειρόγραφων σημειώσεων ή τυπωμένων εγγράφων σε επεξεργάσιμα και αναζητήσιμα δεδομένα. Για προγραμματιστές JavaScript που αναζητούν μια ελαφριά και ανοιχτού κώδικα λύση, το Guten OCR προσφέρει μια ελκυστική επιλογή. Αυτή η μηχανή OCR βασισμένη σε JavaScript έχει σχεδιαστεί με έμφαση στην απλότητα, καθιστώντας την ιδανική για ενσωμάτωση λειτουργιών OCR απευθείας σε εφαρμογές φυλλομετρητή ή Node.js. Υπάρχουν αρκετά σημαντικά χαρακτηριστικά της βιβλιοθήκης, όπως η αναγνώριση χαρακτήρων μέσω προτύπων, η διόρθωση κατωφλίου και δυαδικοποίησης εικόνας, η τμηματοποίηση χαρακτήρων, η αντιστοίχιση προτύπων και η συναρμολόγηση κειμένου, η υποστήριξη μοντέλου κώδικα κ.ά. Επικεντρώνεται στην αναγνώριση τυπωμένου κειμένου από μαύρο-άσπρα σαρωμένα έγγραφα και είναι ιδανική για καλά μορφοποιημένο κείμενο, όπως βιβλία ή φόρμες.
Το Guten OCR είναι μια ανοιχτού κώδικα μηχανή JavaScript OCR που δημιουργήθηκε από τον Gutenye. Σε αντίθεση με βαριές λύσεις OCR που απαιτούν εξωτερικές εξαρτήσεις ή εκτενή εγκατάσταση, το Guten OCR είναι γραμμένο εξ ολοκλήρου σε JavaScript, πράγμα που σημαίνει ότι μπορεί να τρέξει σε έναν φυλλομετρητή ή στον διακομιστή με Node.js. Η βιβλιοθήκη χρησιμοποιεί βασικές τεχνικές επεξεργασίας εικόνας για να τμηματοποιήσει χαρακτήρες και να τους αναγνωρίσει μέσω ενός συστήματος αναγνώρισης προτύπων χαρακτήρων. Αν και ενδέχεται να μην ανταγωνίζεται ακόμη εμπορικές μηχανές OCR όπως το Tesseract όσον αφορά την υποστήριξη πολυγλωσσικού ή χειρόγραφου κειμένου, η απλότητά της και η δυνατότητα τροποποίησης την καθιστούν εξαιρετική επιλογή για εκπαιδευτικά έργα, αποδείξεις-έννοιες ή ενσωματωμένες λειτουργίες OCR σε προσαρμοσμένες web εφαρμογές. Σε αντίθεση με το Tesseract ή άλλες μεγαλύτερες μηχανές, το Guten OCR είναι σκόπιμα ελαφρύ και εστιασμένο — καθιστώντας το ένα εξαιρετικό σημείο εκκίνησης για όσους θέλουν να κατανοήσουν πώς λειτουργεί το OCR από το εσωτερικό.
Ξεκινώντας με το Guten OCR
Η προτεινόμενη μέθοδος εγκατάστασης του Guten OCR είναι μέσω Brew. Παρακαλώ χρησιμοποιήστε την παρακάτω εντολή για ομαλή εγκατάσταση
Εγκατάσταση Guten OCR μέσω Brew
brew install git-lfs Εγκατάσταση Guten OCR μέσω GitHub
git clone git@github.com:gutenye/ocr.git Μπορείτε επίσης να το εγκαταστήσετε χειροκίνητα· κατεβάστε τα τελευταία αρχεία έκδοσης απευθείας από αποθετήριο GitHub.
Προεπεξεργασία Εικόνας Πριν από Λειτουργίες OCR
Η ανοιχτού κώδικα βιβλιοθήκη Guten OCR είναι γραμμένη εξ ολοκλήρου σε JavaScript, καθιστώντας την συμβατή τόσο με το πρόγραμμα περιήγησης όσο και με το περιβάλλον Node.js. Περιλαμβάνει ενσωματωμένες λειτουργίες προεπεξεργασίας εικόνας για βελτίωση της ακρίβειας αναγνώρισης. Υποστηρίζει δυαδικοποίηση εικόνας (μετατροπή σε μαύρο και άσπρο), μείωση θορύβου, διόρθωση κλίσης και άλλα. Το παρακάτω παράδειγμα δείχνει πώς οι προγραμματιστές μπορούν να εφαρμόσουν πολλαπλά βήματα προεπεξεργασίας εικόνας πριν εκτελέσουν λειτουργία OCR σε εικόνες.
Πώς να Εφαρμόσετε Προεπεξεργασία Εικόνας πριν από Λειτουργία OCR μέσω Βιβλιοθήκης JavaScript;
const { preprocess } = require('guten-ocr');
// Apply multiple preprocessing steps
const processedImage = preprocess(imageData, [
'grayscale', // Convert to grayscale
'binarize', // Convert to black and white
'deskew', // Correct skew
'denoise' // Reduce noise
]);
// Then perform OCR on the processed image
ocr.recognize(processedImage).then(/* ... */);
Αναγνώριση Χαρακτήρων μέσω Προτύπων
Η βιβλιοθήκη JavaScript Guten OCR παρέχει πλήρη υποστήριξη για εκτέλεση λειτουργιών OCR χρησιμοποιώντας πρότυπα μέσα σε εφαρμογές JavaScript. Στην καρδιά του Guten OCR βρίσκεται ένα σύστημα αντιστοίχισης προτύπων. Αντί να εκπαιδεύει ένα μοντέλο μηχανικής μάθησης, χρησιμοποιεί προκαθορισμένα πρότυπα χαρακτήρων. Αυτό κάνει το σύστημα πιο γρήγορο και εύκολο στην κατανόηση, αλλά πιο ευαίσθητο στη συνέπεια γραμματοσειράς και διάταξης. Για την εκτέλεση αυτού του έργου η βιβλιοθήκη αποδίδει κάθε χαρακτήρα (A–Z, a–z, 0–9, κ.λπ.) σε έναν καμβά και στη συνέχεια το δυαδικό πλέγμα για κάθε χαρακτήρα γίνεται πρότυπο αναφοράς. Κατά την ανάλυση μιας εικόνας, η βιβλιοθήκη συγκρίνει τα τμήματα της εικόνας με αυτά τα πρότυπα για να βρει την καλύτερη αντιστοίχιση. Το κάνει αυτό χρησιμοποιώντας συνδυασμό κάθετης και οριζόντιας σάρωσης γραμμών για τον εντοπισμό περιοχών περιγράμματος.
Τμηματοποίηση Χαρακτήρων μέσω Βιβλιοθήκης OCR
Η ανοιχτού κώδικα βιβλιοθήκη JavaScript Guten OCR επιτρέπει στους προγραμματιστές λογισμικού να εκτελούν τμηματοποίηση χαρακτήρων με ευκολία. Μόλις η εικόνα δυαδικοποιηθεί, το επόμενο βήμα είναι η τμηματοποίηση των μεμονωμένων χαρακτήρων. Το Guten OCR σαρώει γραμμές και στήλες για να εντοπίσει περιοχές με πυκνά μαύρα pixel, χωρίζοντάς τες σε πιθανά χαρακτήρες. Το παρακάτω παράδειγμα δείχνει πώς οι προγραμματιστές λογισμικού μπορούν να εκτελέσουν τμηματοποίηση χαρακτήρων χρησιμοποιώντας τη βιβλιοθήκη OCR JavaScript.
Πώς να Εκτελέσετε Τμηματοποίηση Χαρακτήρων χρησιμοποιώντας τη Βιβλιοθήκη JavaScript;
const segment = require('guten-ocr/segment');
const boxes = segment(binarized); // returns array of [x, y, width, height]