Πίνακας περιεχομένων:
- Βήμα 1: Υλικά
- Βήμα 2: Υλικό - τρισδιάστατη εκτύπωση
- Βήμα 3: Υλικό - Ηλεκτρονικά εξαρτήματα
- Βήμα 4: Λογισμικό
- Βήμα 5: Λογισμικό - oundχος
- Βήμα 6: Λογισμικό - Ανίχνευση προσώπου και ομιλίας
- Βήμα 7: Λογισμικό - Περιστρεφόμενος κινητήρας
- Βήμα 8: Μελλοντικές βελτιώσεις
Βίντεο: Σύστημα Camara που γνωρίζει ηχεία (SPACS): 8 βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:35
Φανταστείτε μια κλήση συνδιάσκεψης όπου πολλά ηχεία περιβάλλουν μία κάμερα. Συχνά συναντάμε όπου η περιορισμένη γωνία θέασης μιας φωτογραφικής μηχανής συχνά αποτυγχάνει να κοιτάξει το άτομο που μιλά. Αυτός ο περιορισμός υλικού υποβαθμίζει σημαντικά την εμπειρία του χρήστη. Εάν η κάμερα μπορεί να κοιτάξει ενεργά ηχεία, το απομακρυσμένο κοινό θα συμμετείχε περισσότερο σε μια συνομιλία κατά τη διάρκεια της κλήσης. Σε αυτό το έργο, προτείνουμε ένα (πρωτότυπο) σύστημα κάμερας που ανιχνεύει και ακολουθεί το ενεργό ηχείο στρέφοντας την κάμερα προς το ηχείο. Το σύστημα χρησιμοποιεί τόσο οπτική όσο και ηχητική προσέγγιση. Όταν εντοπίζονται πρόσωπα από την κάμερα, καθορίζει το άτομο που μιλά και υπολογίζει τη γωνία περιστροφής. Όταν οι όψεις δεν ανιχνεύονται στην τρέχουσα γωνία, το σύστημα αναζητά το ηχείο με βάση την κατεύθυνση των ηχητικών σημάτων άφιξης.
Βήμα 1: Υλικά
Adafruit Feather nRF52840 Express X 1
www.adafruit.com/product/4062
Ηλεκτρονικός ενισχυτής μικροφώνου - MAX4466 X 2
www.adafruit.com/product/1063
Micro Servo Motor X 1
www.adafruit.com/product/169
Smartphone Android X 1
Βήμα 2: Υλικό - τρισδιάστατη εκτύπωση
Για γρήγορη εφαρμογή, αποφασίσαμε να εκτυπώσουμε 3D τα περιβλήματα που χρειαζόμαστε. Υπάρχουν δύο κύρια στοιχεία για περιβλήματα. ένα πικάπ και μια βάση για smartphone. Χρησιμοποιήσαμε το πικάπ από αυτόν τον σύνδεσμο (https://www.thingiverse.com/thing:141287), όπου παρέχει θήκη Arduino στο κάτω μέρος και περιστρεφόμενο τραπέζι που μπορεί να συνδεθεί με σερβοκινητήρα. Χρησιμοποιήσαμε μια βάση για smartphone από αυτόν τον σύνδεσμο (https://www.thingiverse.com/thing:2673050), η οποία είναι αναδιπλούμενη και ρυθμιζόμενη από γωνία έτσι ώστε να μας επιτρέπει να βαθμονομήσουμε τη γωνία με βολικό τρόπο. Το παρακάτω σχήμα δείχνει τα τρισδιάστατα τυπωμένα μέρη συναρμολογημένα μεταξύ τους.
Βήμα 3: Υλικό - Ηλεκτρονικά εξαρτήματα
Υπάρχουν τέσσερα ενσύρματα εξαρτήματα. Φτερό Adafruit, δύο μικρόφωνα και ένα μοτέρ. Για τη συμπαγή συσκευασία, κολλήσαμε (γκρι κύκλους) τα καλώδια χωρίς να χρησιμοποιήσουμε σανίδα ψωμιού. Παρακάτω περιγράφεται το διάγραμμα κυκλώματος και το πραγματικό τεχνούργημα.
Βήμα 4: Λογισμικό
Το σύστημά μας χρησιμοποιεί κυρίως τις οπτικές πληροφορίες από την αναγνώριση προσώπου για να ακολουθήσει το ηχείο καθώς είναι πιο ακριβές. Προκειμένου το Feather να λάβει οπτικές πληροφορίες από την εφαρμογή Android, χρησιμοποιούμε το Bluetooth Low Energy ως κύρια μέθοδο επικοινωνίας.
Όταν ανιχνεύεται οποιοδήποτε πρόσωπο, η εφαρμογή υπολογίζει τη γωνία που πρέπει να περιστρέφεται ο κινητήρας για να εστιάσει το ηχείο στο κέντρο του πλαισίου. Αποσυνθέσαμε τα πιθανά σενάρια και τα χειριστήκαμε ως εξής:
- Εάν εντοπιστεί και μιλήσει πρόσωπο (ες), υπολογίζει το μεσαίο σημείο των ηχείων και επιστρέφει τη σχετική γωνία στο Φτερό.
- Αν ανιχνευτούν πρόσωπα και κανένα από αυτά δεν μιλάει, υπολογίζει επίσης το μέσο σημείο των όψεων και επιστρέφει ανάλογα τη γωνία.
- Εάν δεν εντοπιστεί κάποιο πρόσωπο, το σύστημα αλλάζει τη λογική παρακολούθησης ηχείων από οπτικό σε ήχο.
Το λογισμικό SPACS βρίσκεται στη διεύθυνση
Βήμα 5: Λογισμικό - oundχος
Sχος (YH)
Για να εντοπίσουμε την πηγή του εισερχόμενου ήχου, προσπαθήσαμε πρώτα να χρησιμοποιήσουμε τη διαφορά ώρας μεταξύ των δύο μικροφώνων. Αλλά δεν ήταν τόσο ακριβές όσο περιμέναμε αφού ο ρυθμός δειγματοληψίας (~ 900Hz) του Arduino Leopard, όπου δοκιμάσαμε τα ηχητικά σήματα, ήταν αργός, ώστε να μην μπορεί να πάρει τη διαφορά ώρας μεταξύ μικροφώνων 10 εκατοστών.
Αλλάξαμε το σχέδιο για τη χρήση της διαφοράς έντασης μεταξύ των δύο ηχητικών σημάτων εισόδου. Ως αποτέλεσμα, το φτερό παίρνει δύο ηχητικά σήματα και τα επεξεργάζεται για να εντοπίσει από πού προέρχεται ο ήχος. Η επεξεργασία μπορεί να περιγραφεί με τα ακόλουθα βήματα:
- Πάρτε τις εισόδους από δύο μικρόφωνα και αφαιρέστε τη μετατόπιση για να λάβετε τα πλάτη των σημάτων.
- Συγκεντρώστε τις απόλυτες τιμές των πλάτων ανά MIC για 500 pickup.
- Αποθηκεύστε τη διαφορά των συσσωρευμένων τιμών στην ουρά με 5 θέσεις.
- Επιστρέψτε το άθροισμα των ουρών ως τελική τιμή διαφοράς.
- Συγκρίνετε την τελική τιμή με τα κατώφλια για να αποφασίσετε από πού προέρχεται ο ήχος.
Βρήκαμε το όριο σχεδιάζοντας την τελική τιμή σε διάφορες συνθήκες, συμπεριλαμβανομένου του ήχου που προέρχεται από αριστερά και δεξιά. Πάνω από τα κατώφλια για την τελική τιμή, ορίζουμε επίσης ένα άλλο όριο για το μέσο όρο των συσσωρευμένων πλάτων στο βήμα 2 για να φιλτράρουμε τους θορύβους.
Βήμα 6: Λογισμικό - Ανίχνευση προσώπου και ομιλίας
Για την αναγνώριση προσώπου, χρησιμοποιήσαμε το ML Kit for Firebase που κυκλοφόρησε από την Google (https://firebase.google.com/docs/ml-kit). Το ML Kit παρέχει το API ανίχνευσης προσώπου που επιστρέφει το κουτί οριοθέτησης κάθε προσώπου και τα ορόσημά του, όπως μάτια, μύτη, αυτιά, μάγουλα και διαφορετικά σημεία στο στόμα. Μόλις εντοπιστούν πρόσωπα, η εφαρμογή παρακολουθεί την κίνηση του στόματος για να καθορίσει εάν το άτομο μιλά. Χρησιμοποιούμε μια απλή προσέγγιση βασισμένη σε κατώφλι, η οποία αποδίδει αξιόπιστη απόδοση. Αξιοποιήσαμε το γεγονός ότι η κίνηση του στόματος γίνεται μεγαλύτερη τόσο οριζόντια όσο και κάθετα όταν μιλάει ένα άτομο. Υπολογίζουμε την κάθετη και οριζόντια απόσταση του στόματος και υπολογίζουμε την τυπική απόκλιση για κάθε απόσταση. Η απόσταση ομαλοποιείται στο μέγεθος του προσώπου. Μεγαλύτερη τυπική απόκλιση υποδηλώνει ομιλία. Αυτή η προσέγγιση έχει τον περιορισμό ότι κάθε δραστηριότητα που περιλαμβάνει την κίνηση του στόματος, συμπεριλαμβανομένου του φαγητού, του ποτού ή του χασμουρητού, μπορεί να αναγνωριστεί ως ομιλία. Όμως, έχει χαμηλό ψευδώς αρνητικό ποσοστό.
Βήμα 7: Λογισμικό - Περιστρεφόμενος κινητήρας
Η περιστροφή του κινητήρα δεν ήταν τόσο απλή όσο περιμέναμε λόγω του ελέγχου της ταχύτητας περιστροφής. Για τον έλεγχο της ταχύτητας, δηλώνουμε μια γενική μεταβλητή μετρητή τέτοια που επιτρέπει στον κινητήρα να γυρίζει μόνο όταν η μεταβλητή φτάσει σε μια ορισμένη τιμή. Δηλώσαμε επίσης μια άλλη καθολική μεταβλητή που δείχνει εάν ο κινητήρας κινείται για να ενημερώσει τα μικρόφωνα, ώστε να αποφύγει τον ήχο που προέρχεται από την περιστροφή του κινητήρα.
Βήμα 8: Μελλοντικές βελτιώσεις
Ένας από τους περιορισμούς είναι ότι ο κινητήρας κινείται σε συγκεκριμένες γωνίες. Φαίνεται ότι ο κινητήρας δεν είναι αρκετά ισχυρός για να ξεπεράσει τη ροπή που δημιουργείται από την περιστροφή του smartphone. Μπορεί να επιλυθεί χρησιμοποιώντας έναν πιο ισχυρό κινητήρα ή προσαρμόζοντας τη θέση του smartphone προς το κέντρο της περιστροφής για να μειωθεί η ροπή.
Η ανίχνευση κατεύθυνσης ήχου βάσει ήχου θα μπορούσε να βελτιωθεί με μια πιο εξελιγμένη μέθοδο. Θα θέλαμε να δοκιμάσουμε μια ακουστική προσέγγιση διαμόρφωσης δέσμης για να καθορίσουμε την κατεύθυνση του εισερχόμενου ήχου. Προσπαθήσαμε με την ώρα άφιξης των ηχητικών σημάτων. Αλλά, ο ρυθμός δειγματοληψίας του Φτερού είναι περιορισμένος για να ανιχνεύσει τη διαφορά ώρας όταν τα μικρόφωνα απέχουν μόνο περίπου 10 εκατοστά.
Το τελικό κομμάτι που λείπει από αυτό το πρωτότυπο είναι η αξιολόγηση της χρηστικότητας. Ένας πολλά υποσχόμενος τρόπος αξιολόγησης είναι η ενσωμάτωση του συστήματος με την υπάρχουσα πλατφόρμα βιντεοκλήσεων και η παρακολούθηση των απαντήσεων των χρηστών. Αυτές οι απαντήσεις θα βοηθήσουν στη βελτίωση του συστήματος και την επόμενη επανάληψη αυτού του πρωτοτύπου.
Συνιστάται:
Ηχεία Coco - Ηχεία ήχου υψηλής πιστότητας: 6 βήματα
Coco Speaker - High Fidelity Audio Speakers: Hello Instructabler's, Siddhant here. Θέλετε να ακούσετε ήχο υψηλής ποιότητας; Μάλλον θα σας άρεσε να … Λοιπόν … στην πραγματικότητα αρέσει σε όλους. Παρουσιάζεται εδώ το Coco -Speaker - Ποιο όχι μόνο παρέχει ποιότητα ήχου HD αλλά " ΣΥΝΕΧΕΙ ΤΟ ΜΑΤΙ
10 Συμβουλές σχεδίασης κυκλωμάτων που πρέπει να γνωρίζει κάθε σχεδιαστής: 12 βήματα
10 Συμβουλές Σχεδιασμού Κυκλώματος που πρέπει να γνωρίζει κάθε Σχεδιαστής: Ο σχεδιασμός κυκλωμάτων μπορεί να είναι αρκετά τρομακτικός αφού τα πράγματα στην πραγματικότητα θα είναι πολύ διαφορετικά από αυτά που διαβάζουμε στα βιβλία. Είναι αρκετά προφανές ότι εάν πρέπει να είστε καλοί στο σχεδιασμό κυκλωμάτων, πρέπει να κατανοήσετε κάθε στοιχείο και να εξασκηθείτε αρκετά
Κορυφαίες 7 ηλεκτρονικές συμβουλές και κόλπα, που πρέπει να γνωρίζει ένας δημιουργός: 8 βήματα (με εικόνες)
Κορυφαίες 7 συμβουλές και κόλπα για την ηλεκτρονική, που πρέπει να γνωρίζει ένας κατασκευαστής: Ασχολούμαι με τα ηλεκτρονικά από πολύ καιρό και κατά τη διάρκεια αυτής της πορείας, έχω κάνει πολλά έργα. Με κάθε έργο που έκανα, πάντα έμαθα κάτι νέο, το οποίο με βοήθησε στο μέλλον. Αισθάνομαι ότι τα ηλεκτρονικά είναι ακριβώς όπως τα μαθηματικά. Όταν στο
Φορητά ηχεία / ηχεία με μπαταρία: 7 βήματα
Φορητά ηχεία / ηχεία με μπαταρία: Γεια σας παιδιά. Αυτό είναι το πρώτο μου διδάσκον. Απολαύστε! Έτσι, σήμερα θα σας δείξω πώς να φτιάχνετε από παλιά ηχεία υπολογιστή έως ηχεία με μπαταρία. Είναι αρκετά βασικό και έχω πολλές φωτογραφίες .;)
Αδιάβροχα ηχεία που επιπλέουν - " Επιπλέει, σημειώνει και κλονίζει τις σημειώσεις! &Quot;: 7 βήματα (με εικόνες)
Αδιάβροχα ηχεία που επιπλέουν - " Floats, It Totes and It Rocks the Notes! &Quot;: Αυτό το αδιάβροχο έργο ηχείων εμπνεύστηκε από πολλά ταξίδια στον ποταμό Gila στην Αριζόνα (και το SNL's " I'm on a Boat! &Quot; ). Θα επιπλέουμε κάτω από τον ποταμό ή θα συνδέσουμε γραμμές στην ακτή, έτσι ώστε τα πλωτά μας να παραμείνουν ακριβώς δίπλα στον καταυλισμό μας. Όλοι h