Πίνακας περιεχομένων:
- Βήμα 1: Πρόσβαση στην κάμερα Web
- Βήμα 2: Αναγνώριση προσώπου
- Βήμα 3: Συλλογή δεδομένων
- Βήμα 4: Εκπαίδευση
- Βήμα 5: Αναγνώριση προσώπου
- Βήμα 6: Προγραμματισμός Arduino
Βίντεο: Αναγνώριση προσώπου και αναγνώριση - Arduino Face ID χρησιμοποιώντας OpenCV Python και Arduino .: 6 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:33
Αναγνώριση προσώπου Το αναγνωριστικό προσώπου AKA είναι ένα από τα πιο σημαντικά χαρακτηριστικά στα κινητά τηλέφωνα στις μέρες μας.
Έτσι, είχα μια ερώτηση "μπορώ να έχω ένα αναγνωριστικό προσώπου για το έργο μου Arduino" και η απάντηση είναι ναι…
Το ταξίδι μου ξεκίνησε ως εξής:
Βήμα 1: Πρόσβαση στην κάμερα web
βήμα 2: Αναγνώριση προσώπου.
βήμα 3: Συλλογή δεδομένων
Βήμα 4: Εκπαίδευση
βήμα 5: Αναγνώριση προσώπου
βήμα 6: Προγραμματισμός Arduino
Θα εξηγήσω όλα τα βήματα παρακάτω. Ελπίζω ότι αυτό θα σας βοηθήσει.
Βήμα 1: Πρόσβαση στην κάμερα Web
Το 1ο βήμα για την αναγνώριση προσώπου ήταν να έχετε πρόσβαση σε κάμερα ή όραση υπολογιστή. Δεδομένου ότι η Ινδία βρίσκεται υπό αποκλεισμό, η φθηνότερη λύση που βρήκα ήταν να χρησιμοποιήσω την κάμερα υπολογιστών μου στην οποία είχα πρόσβαση με ένα πρόγραμμα python χρησιμοποιώντας μονάδα openCV.
Μπορεί να σκέφτεστε τι είναι το OpenCV, έτσι δεν είναι;
Το OpenCV (Open Source Computer Vision Library) είναι μια βιβλιοθήκη λογισμικού οπτικής και μηχανικής μάθησης ανοιχτού κώδικα. Το OpenCV δημιουργήθηκε για να παρέχει μια κοινή υποδομή για εφαρμογές υπολογιστικής όρασης και να επιταχύνει τη χρήση της αντίληψης μηχανών σε εμπορικά προϊόντα.
Εάν το Opencv είναι εγκατεστημένο στον υπολογιστή σας, τότε είστε έτοιμοι. Εάν όχι, ακολουθήστε αυτό το βήμα.
ανοίξτε τη γραμμή εντολών και πληκτρολογήστε "pip install opencv".
Προειδοποίηση: Ενδέχεται να εμφανιστεί σφάλμα καθώς το "" pip "δεν αναγνωρίζεται ως εσωτερική ή εξωτερική εντολή". για το οποίο πρέπει να προσθέσετε τη διαδρομή της εγκατάστασης του pip σας στη μεταβλητή συστήματος PATH. Περάστε από αυτήν την ανάρτηση μπορεί να σας βοηθήσει.
stackoverflow.com/questions/23708898/pip-i…
Μόλις εγκατασταθεί το OpenCV, κάνουμε καλό… Για να ελέγξετε αν έχει εγκατασταθεί σωστά, ανοίξτε τον διερμηνέα Python και εισαγάγετε τη βιβλιοθήκη. Δείτε την παραπάνω εικόνα που πρέπει να είναι η έξοδός σας.
Κατεβάστε το αρχείο python "AccessTo_webcam.py" και εκτελέστε το. Έχω δώσει όλα τα απαραίτητα σχόλια εκεί.
Ορίστε, Τώρα έχετε πρόσβαση στην κάμερα web. Μπράβο. ας προχωρήσουμε στο βήμα 2.
Βήμα 2: Αναγνώριση προσώπου
με τη βοήθεια της ίδιας μονάδας OpenCV, πρέπει να προσδιορίσουμε εάν υπάρχει πρόσωπο στη ροή βίντεο ή όχι.
Το OpenCV παρέχει μια μέθοδο κατάρτισης ή προ-εκπαιδευμένα μοντέλα που ονομάζονται Cascade Classifier. Τα προ-εκπαιδευμένα μοντέλα βρίσκονται στο φάκελο δεδομένων στην εγκατάσταση OpenCV. Παρέχω αυτό το αρχείο απλά κατεβάστε το και τοποθετήστε το στο φάκελο του έργου σας. Ο φάκελος στον οποίο είναι αποθηκευμένο το αρχείο "AccessTo_webcam.py". Εάν δεν έχετε δημιουργήσει ένα, κάντε το.
Κατεβάστε το "haarcascade_frontalface_default" και τοποθετήστε το στον κύριο φάκελο του έργου.
Κατεβάστε το "Face_identification.py" και τοποθετήστε το στον κύριο φάκελο του έργου. Όλη η εξήγηση παρέχεται σε αυτό.
Τώρα μπορείτε να προσδιορίσετε τα πρόσωπα σε μια ροή βίντεο. Ας προχωρήσουμε λοιπόν στο βήμα 3.
Βήμα 3: Συλλογή δεδομένων
Για να αναγνωρίσουμε τα πρόσωπα πρέπει να εκπαιδεύσουμε το πρόγραμμα python. Για τα οποία χρειαζόμαστε κάποια δεδομένα.
Η συλλογή δεδομένων είναι μάλλον το πιο εύκολο βήμα σε αυτό το έργο. δημιουργήστε ένα φάκελο με το όνομα "image_data" στον κύριο φάκελο του έργου σας. Μέσα στο φάκελο "image_data" δημιουργήστε μερικούς επιπλέον φακέλους με το όνομα του ατόμου, όπου θα αποθηκεύσουμε τα δεδομένα. για παράδειγμα:
Στο φάκελο "image_data" έχω δημιουργήσει δύο ακόμη φακέλους με το όνομα "HRK" και "Yahiya". όπως φαίνεται στην παραπάνω εικόνα.
Τώρα προχωρήστε, δημιουργήστε τους δικούς σας φακέλους και ονομάστε τους.
Μόλις δημιουργηθούν οι φάκελοι, αρχίστε να συλλέγετε εικόνες του συγκεκριμένου ατόμου. Προτείνω να συλλέξετε περίπου 20 εικόνες ανά άτομο. Μπορείτε επίσης να προσθέσετε περισσότερες εικόνες, αλλά φροντίστε τα δεδομένα που συλλέγονται για όλα τα άτομα να περιέχουν τον ίδιο αριθμό εικόνων. Βοηθά στην παροχή ακρίβειας.
αυτό είναι τώρα ας προχωρήσουμε στο βήμα 4.
Βήμα 4: Εκπαίδευση
Εν συντομία, θα περάσουμε από όλους τους φακέλους και τις εικόνες που υπάρχουν στον φάκελο "image_data" και θα δημιουργήσουμε ένα λεξικό που θα περιέχει το αναγνωριστικό ετικέτας και το αντίστοιχο όνομα. Ταυτόχρονα, θα φορτώσουμε την εικόνα για να ανιχνεύσουμε το πρόσωπο σε κάθε εικόνα που την αποκαλούμε "Περιοχή Ενδιαφέροντος" και θα δημιουργήσουμε ένα αρχείο ".yml" που περιέχει αυτές τις πληροφορίες.
Υποθέτοντας ότι έχετε συλλέξει δεδομένα για τα άτομα Χ και Υ.
θα επισημάνουμε το άτομο Χ ως 1 το οποίο θα είναι το αναγνωριστικό ετικέτας του και το όνομα θα είναι το ίδιο το Χ. Φορτώνουμε την εικόνα για να βρούμε το πρόσωπό του, δηλαδή την περιοχή ενδιαφέροντος και προσθέτουμε τα δεδομένα σε μια λίστα.
θα ακολουθηθούν παρόμοια βήματα για το άτομο Υ. Και τέλος, θα δημιουργήσουμε ένα αρχείο ".yml".
Κατεβάστε το αρχείο "face_trainer.py" και τοποθετήστε το στον κύριο φάκελο του έργου. Όλη η απαραίτητη εξήγηση παρέχεται στο ίδιο το αρχείο.
Όταν εκτελείτε αυτό το πρόγραμμα, θα περάσει από όλες τις εικόνες και θα δημιουργήσει δύο αρχεία με τα ονόματα "labels.pickle" και "trainner.yml". Τώρα έχετε εκπαιδεύσει το δικό σας μοντέλο. ας προχωρήσουμε λοιπόν στο βήμα 5.
Βήμα 5: Αναγνώριση προσώπου
Εάν έχετε περάσει σωστά από όλα τα βήματα, ίσως έχετε δημιουργήσει τα δικά σας εκπαιδευμένα δεδομένα. Τώρα θα χρησιμοποιήσουμε αυτά τα δεδομένα για αναγνώριση προσώπου.
Βασικά, θα φορτώσουμε τα εκπαιδευμένα μοντέλα μας στο αρχείο python, θα έχουμε πρόσβαση στην κάμερα και θα προσδιορίσουμε τα πρόσωπα στη ροή βίντεο και θα κάνουμε μια σύγκριση ή πρόβλεψη μεταξύ του τρέχοντος προσώπου που προσδιορίζεται στη ροή βίντεο και του μοντέλου που εκπαιδεύτηκε. εάν τα δεδομένα αντιστοιχίζονται τότε λέμε ότι το άτομο αναγνωρίζεται είναι τόσο απλό…
Κατεβάστε το "face_recognise.py" και εκτελέστε το. Όλες οι απαραίτητες πληροφορίες παρέχονται σε αυτό. Τώρα το πρόσωπό σας μπορεί να έχει αναγνωριστεί. εάν η ακρίβεια δεν είναι καλή, δοκιμάστε να ενημερώσετε τα δεδομένα. αν είστε όλοι καλά να πάτε, ας προχωρήσουμε στο βήμα 6/
Βήμα 6: Προγραμματισμός Arduino
Το τελευταίο και τελευταίο βήμα είναι ο προγραμματισμός του Arduino και η παροχή ενός τρόπου επικοινωνίας μεταξύ python και Arduino. Για επικοινωνία, χρησιμοποίησα το "Serial Communication". Μεταβείτε στο βίντεο που έχω συνδέσει παραπάνω για να βρείτε πώς λειτουργεί η σειριακή επικοινωνία και να δημιουργήσετε ένα. Θα βρείτε όλα τα απαιτούμενα αρχεία στην περιγραφή του βίντεο.
Αν έχετε περάσει από το βίντεο, επιτρέψτε μου να σας εξηγήσω τι έκανα. Όταν αναγνωριστεί το πρόσωπό μου, τότε το αναγνωριστικό ετικέτας είναι 2. Μόλις το αναγνωριστικό ετικέτας είναι 2, θα στείλω '1' ως σειριακά δεδομένα στο Arduino μου. Το οποίο θα ενεργοποιήσει το κύκλωμα κυνηγού LED μου. Εάν το αναγνωριστικό ετικέτας είναι διαφορετικό από 2, τότε θα στείλω '0' ως σειριακά δεδομένα, τα οποία θα απενεργοποιήσουν το κύκλωμα κυνηγού LED μου.
Κατεβάστε το αρχείο "ard_chaser.ino". Είναι ένα απλό πρόγραμμα εντοπισμού LED που χρησιμοποιεί σειριακή επικοινωνία.
Κατεβάστε απλώς το "face_recogniser1.py" που θα δημιουργήσει τη σειριακή επικοινωνία μεταξύ του Arduino και του προγράμματος python.
Ορίστε. Ελπίζω να μάθατε κάτι νέο. Εγγραφείτε στο κανάλι μου στο youtube για περισσότερα πράγματα που σχετίζονται με python και Arduino. Κοινοποιήστε το αν σας άρεσε. Συνεχίστε να υποστηρίζετε.
Σας ευχαριστώ.
Συνιστάται:
Opencv Ανίχνευση προσώπου, εκπαίδευση και αναγνώριση: 3 βήματα
Opencv Face Detection, Training and Recognition: Το OpenCV είναι μια βιβλιοθήκη ανοιχτού κώδικα οράσεως υπολογιστή, η οποία είναι πολύ δημοφιλής για την εκτέλεση βασικών εργασιών επεξεργασίας εικόνας, όπως θόλωση, ανάμειξη εικόνας, βελτίωση εικόνας καθώς και ποιότητα βίντεο, κατώφλι κ.λπ. Εκτός από την επεξεργασία εικόνας, αποδεικνύει
Αναγνώριση Προσώπου στην Πρακτική: 21 Βήματα
Αναγνώριση προσώπου στην πράξη: Αυτό είναι ένα θέμα για το οποίο είμαι τόσο γοητευμένος, που με κάνει να χάνω τον ύπνο: Όραση υπολογιστή, ανίχνευση αντικειμένων και ανθρώπων μέσω ενός προ-εκπαιδευμένου μοντέλου
Αναγνώριση ομιλίας χρησιμοποιώντας το Google Speech API και την Python: 4 βήματα
Αναγνώριση ομιλίας χρησιμοποιώντας το Google Speech API και την Python: Αναγνώριση ομιλίας Η αναγνώριση ομιλίας είναι μέρος της Επεξεργασίας Φυσικής Γλώσσας που αποτελεί υποπεδίο της Τεχνητής Νοημοσύνης. Για να το πούμε απλά, η αναγνώριση ομιλίας είναι η ικανότητα ενός λογισμικού υπολογιστή να αναγνωρίζει λέξεις και φράσεις στην προφορική γλώσσα
Opencv Αναγνώριση προσώπου: 4 βήματα
Opencv Face Recognition: Η αναγνώριση προσώπου είναι αρκετά συνηθισμένο στις μέρες μας, σε πολλές εφαρμογές όπως έξυπνα τηλέφωνα, πολλά ηλεκτρονικά gadget. Αυτό το είδος τεχνολογίας περιλαμβάνει πολλούς αλγόριθμους και εργαλεία κλπ. Που χρησιμοποιεί ενσωματωμένες πλατφόρμες SOC όπως το Raspberry
Ανίχνευση προσώπου και ματιών με Raspberry Pi Zero και Opencv: 3 βήματα
Ανίχνευση προσώπου και ματιών με Raspberry Pi Zero και Opencv: Σε αυτό το διδακτικό θα δείξω πώς μπορείτε να ανιχνεύσετε πρόσωπο και μάτι χρησιμοποιώντας βατόμουρο pi και opencv. Αυτό είναι το πρώτο μου εκπαιδευτικό σε opencv. Ακολούθησα πολλά σεμινάρια για τη δημιουργία ανοικτού βιογραφικού σε βατόμουρο, αλλά κάθε φορά χτυπούσα με κάποια λάθη. Όπως και να έχει