Linux Inside
86
A
φορμή για να γράψω αυτόν τον οδηγό στάθηκε μία ανά-
γκη που παρουσιάστηκε στο τμήμα Μουσικών Σπουδών
του Ιονίου Πανεπιστημίου που απαιτούσε τη σάρωση
δεδομένων γραμμικών κωδικών (barcodes) και την εισαγωγή
τους σε μία βάση δεδομένων. Αν και στο σύνολό τους τα ΑΕΙ
περνάνε μία άνευ προηγουμένου οικονομική δυσπραγία, ο
βασικός στόχος για το τμήμα Μουσικών Σπουδών ήταν πρωτί-
στως να επιβεβαιώσει για μία ακόμη φορά το ορθό της από-
φασής του να υιοθετήσει το ΕΛ/ΛΑΚ, βρίσκοντας και σε αυτήν
την περίπτωση μία λύση μέσα από την «αχαλίνωτη» δημιουρ-
γικότητα της κοινότητας! Το ότι έχετε στα χέρια σας αυτόν
τον οδηγό, είναι άλλη μία απόδειξη ότι το ΕΛ/ΛΑΚ πραγματικά
μπορεί να καλύψει ανάγκες που εμείς ως χρήστες ούτε που
φανταζόμασταν πως κάποιοι φίλοι έχουν ήδη μεριμνήσει
ώστε να μας προσφέρουν λύσεις γι’ αυτές! Το μόνο που
έχουμε να κάνουμε για να τις βρούμε, είναι μία βόλτα στη
«γειτονιά της πληροφορίας», το Διαδίκτυο.
Οι γραμμικοί κώδικες και ιδιαίτερα οι δισδιάστατοι κώδικες
QR έχουν διαδοθεί πάρα πολύ τον τελευταίο καιρό μέσα από
τις ευκολίες που παρέχουν σε χρήστες Smartphones. Η σά-
ρωση των γραμμικών κωδικών στα Smartphones επιτυγχάνε-
ται με τη χρήση της ενσωματωμένης κάμερας του τηλεφώνου
σε ρόλο σαρωτή. Κατά συνέπεια, η δυνατότητα να χρησιμο-
ποιήσουμε μία Webcam ως σαρωτή είναι δεδομένη. Με αυ-
τόν τον τρόπο γλιτώνουμε την αγορά κάποιου barcode
scanner.
Τα Zbar-tools
Αναζητώντας στο Διαδίκτυο μία εφαρμογή που να χρησιμο-
ποιεί τη Webcam του υπολογιστή ως σαρωτή γραμμικών κω-
δικών, σύντομα έπεσα πάνω στα Zbar-tools.
Πρόκειται για μία σουίτα ΕΛ/ΛΑΚ για ανάγνωση γραμμωτών
κωδικών από διάφορες πηγές, όπως τα βίντεο συνεχούς
ροής, αρχεία εικόνας κ.ά. Υποστηρίζει πολλούς δημοφιλείς
τύπους γραμμωτών κωδικών, συμπεριλαμβανομένων των
EAN-13/UPC-A, UPC-E, EAN-8, Code 128, Code 39,
Interleaved 2 of 5 και QR Code. Μπορεί κάποιος να τα χρησι-
μοποιήσει αυτόνομα, αλλά και να τα ενσωματώσει σε οποιο-
δήποτε widget Qt, GTK, PyGTK κ.ά.
Δοκιμάζοντάς τα, εντυπωσιάστηκα από την ταχύτητα της
σάρωσής τους και την ακρίβεια των αποτελεσμάτων τους!
Παρ' όλα αυτά, το πρόβλημά μου δεν είχε λυθεί ακόμα. Τα
ZBar-tools εξάγουν τα αποτελέσματα της σάρωσης σε ένα
τερματικό. Αυτό που έπρεπε τώρα να βρω, ήταν ο τρόπος με
τον οποίο θα μπορούσα να εισαγάγω τα δεδομένα της σάρω-
σης σε οποιοδήποτε πρόγραμμα. Η αλήθεια είναι ότι εκεί τα
βρήκα λίγο σκούρα! Έτσι λοιπόν, έπειτα από ένα πραγματικά
επίμονο ψάξιμο, ο μόνος οδηγός που βρήκα, ήταν του David
Sambas, ο οποίος όμως ήταν γραμμένος στα Ισπανικά! Το ότι
δεν υπάρχει οδηγός ούτε καν στα Αγγλικά (εάν υπάρχει,
απλώς δεν κατάφερα να το βρω!) είναι και ο βασικότερος λό-
γος που αποφάσισα να γράψω αυτό το άρθρο, το οποίο δεν
είναι τίποτε άλλο παρά μία ελεύθερη απόδοση στα Ελληνικά
του άρθρου του David Sambas, τον οποίο και ευχαριστώ πο-
λύ! Τα εργαλεία που χρησιμοποιεί ο Samblas στον οδηγό
του, είναι το zbarcam από τα Zbar-tools και το Crickey.
Τι είναι το Crickey;
Το Crickey είναι ένα πολύ μικρό προγραμματάκι γραμμένο
σε C από την Akkana Peck, που δημιουργεί γεγονότα πλή-
κτρων (key events). Είναι δηλαδή το πρόγραμμα που μεταφέ-
ρει τα δεδομένα που σάρωσε το zbarcam οπουδήποτε τοπο-
θετήσουμε τον κέρσορα, σαν να τα έχουμε πληκτρολογήσει
εμείς! Αυτά τα δύο εργαλεία χρειάζονται, προκειμένου να με-
τατρέψουμε τη Webcam σε έναν πολύ γρήγορο και αποτελε-
σματικό σαρωτή γραμμωτών κωδικών, χωρίς να ξοδέψουμε
δεκάρα!
Δείτε πώς γίνεται στην πράξη:
Βήμα 1ο: Εγκαθιστούμε τα Zbar-tools
Τα ZBar-tools υπάρχουν στα αποθετήρια του Ubuntu/
Debian, κατά συνέπεια μπορείτε να τα εγκαταστήσετε και με
τις τρεις παραδοσιακές μεθόδους (κέντρο λογισμικού της
διανομής σας, Synaptic, τερματικό).
Επειδή θα χρειαστούμε το τερματικό έτσι κι αλλιώς παρα-
κάτω, ίσως ο πιο σύντομος τρόπος εγκατάστασης θα ήταν να
δώσετε μέσα από το τερματικό την εντολή:
Ubuntu:
#sudo apt-get install zbar-tools
Debian:
#apt-get install zbar-tools
Με το τέλος της εγκατάστασης θα έχουμε ήδη στήσει το
μηχανισμό σάρωσης και αναγνώρισης γραμμικών κωδικών.
Εάν έχετε οποιοδήποτε προϊόν κοντά σας που έχει γραμμικό
κώδικα και τη Webcam ετοιμοπόλεμη, μπορείτε να δοκιμάσε-
τε το zbarcam άμεσα, δίνοντας την εντολή στο τερματικό:
#zbarcam
Μαζί με το παράθυρο του τερματικού θα ανοίξει και ένα
παράθυρο της Webcam. Πλησιάστε το γραμμικό κώδικα του
προϊόντος που έχετε δίπλα σας προς την κάμερα και προ-
σπαθήστε να το κρατήσετε ακίνητο για λίγα δευτερόλεπτα.
Μόλις αναγνωρίσει το zbarcam ότι στην εικόνα που πιάνει η
Webcam υπάρχει γραμμικός κώδικας, θα αρχίσει να τον
«βομβαρδίζει» με κόκκινες τελίτσες ή γραμμές, οι οποίες μό-
λις γίνουν πράσινες, θα μπορείτε να δείτε στο τερματικό το
περιεχόμενο του γραμμικού κώδικα που μόλις σαρώσατε! Με
αυτήν τη δοκιμή έχουμε επιβεβαιώσει ότι ο μηχανισμός σά-
ρωσης λειτουργεί! Το επόμενο βήμα μας θα είναι να στήσου-
με το μηχανισμό που θα μας επιτρέψει να εισαγάγουμε το πε-
ριεχόμενο του γραμμικού κώδικα που σαρώνουμε σε οποιο-
δήποτε πρόγραμμα θέλουμε. Αυτό θα γίνει εγκαθιστώντας τις
απαιτούμενες βιβλιοθήκες και στη συνέχεια εγκαθιστώντας το
Crickey ως εξής:
Βήμα 2ο: Εγκατάσταση των βιβλιοθηκών
Η διαδικασία είναι πολύ απλή. Δίνουμε απλώς:
Του Γιάννη Τουλή <jtoulis@gmail.com>
Linux Labs – Barcode scanner
Χρησιμοποιήστε τη Webcam του υπολογιστή σας για
να εισαγάγετε δεδομένα από γραμμικούς κώδικες
οπουδήποτε!
Εργαλεία:
ZBar–tools + Crikey
Δυσκολία:
URL:
http://zbar.sf.net,
goo.gl/js6jn
Περισσότερα
για το ZBar
Φτιάξτε έναν barcode scanner!
Ο Γιάννης Τουλής είναι επ. καθηγητής του τμήματος Μουσικών Σπουδών του Ιονίου Πανεπιστημίου και μέλος του Greeklug.