Πίνακας περιεχομένων:
- Βήμα 1: Προμήθειες
- Βήμα 2: Ρύθμιση Raspberry Pi
- Βήμα 3: Συνδέστε ακουστικά Neurosky
- Βήμα 4: Συνδέστε τη Webcam USB W/Open CV
- Βήμα 5: Συνδέστε το Arduino
- Βήμα 6: Το βάζουμε όλα μαζί
- Βήμα 7: Βελτιώσεις & Ανάπτυξη
Βίντεο: Biofeedback Cinema: 7 Βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:37
Συντάκτης Έργου
Jessica Ann
Συνεργάτες
- Gregory Hough
- Σαλούντ Λόπεζ
- Πέδρο Πέιρα
Σχετικά με
Ένα πειραματικό σύστημα λήψης βίντεο που συνδέει τον εγκέφαλο ενός συμμετέχοντα με τις λειτουργίες της κάμερας μέσω ενός Neurosky Mindwave EEG Reader Headset. Το σύστημα Κινηματογράφου Biofeedback λειτουργεί αντί για έναν παραδοσιακό κινηματογραφιστή, αντί να δίνει την αντιπροσωπεία της σύνθεσης στην ίδια τη συμμετέχουσα μέσω μιας προσαρμοσμένης διεπαφής BRAIN to CAMERA. Το έργο αναπτύχθηκε σε συνεργασία με τους συμμετέχοντες στο εργαστήριο Gregory Hough, Salud Lopez και Pedro Peira. Μπορείτε να διαβάσετε τα αποτελέσματα του εργαστηρίου στη διεύθυνση:
Διαμόρφωση πρωτοτύπου
Το σύστημα Biofeedback Cinema προσφέρεται για πολλές πιθανές εφαρμογές. Για αυτό το διδακτικό έχουμε ετοιμάσει μια επίδειξη του συστήματος που εξετάζει το επίπεδο εστίασης/προσοχής του συμμετέχοντα (ένας ακέραιος αριθμός) και το μεταφράζει σε θέση κάμερας (μέσω στροφής και κλίσης) και εστίασης κάμερας (εσωτερικά μέσω OpenCV). Όλα αυτά καθίστανται δυνατά μέσω μιας σύνδεσης bluetooth μεταξύ ενός Neurosky EEG Reader Headset και ενός Raspberry Pi.
Το Raspberry Pi είναι ένας μικρός υπολογιστής εξοπλισμένος με κάμερα web και σενάρια (διαθέσιμα παρακάτω) που γεφυρώνουν την εγκεφαλική δραστηριότητα του συμμετέχοντα στις ρυθμίσεις της κάμερας και τη θέση της κάμερας. Η δυναμική θέση της κάμερας καθίσταται δυνατή μέσω ενός μικροελεγκτή Arduino που λαμβάνει σήματα από το Raspberry Pi. Ανυπομονούμε για περαιτέρω εξέλιξη καθώς στοχεύουμε να συμπεριλάβουμε πρόσθετες παραμέτρους εγκεφαλικών κυμάτων (συχνότητες που σχετίζονται με αναλαμπές ματιών κ.λπ.) και λειτουργίες κάμερας (δηλαδή απόχρωση, κορεσμός, φωτεινότητα κλπ).
Παρακάτω ακολουθούν οι οδηγίες για τη δημιουργία του δικού σας συστήματος Biofeedback Cinema.
Καλό πειραματισμό
Βήμα 1: Προμήθειες
Όλα όσα χρειάζεστε για να δημιουργήσετε το δικό σας πρωτότυπο Biofeedback Cinema παρατίθενται παρακάτω.
- Neurosky Mindwave Mobile EEG Headset
-
Raspberry Pi B+ (το b+ είναι καλύτερο, περισσότερες θύρες USB, αλλά ένα μοντέλο Β είναι επίσης καλό αν έχετε διανομέα USB).
- Raspberry Pi Power Adapter ή Battery Pack
- Wifi Dongle -ή- Σύνδεση Ethernet (απαραίτητη μόνο κατά τη ρύθμιση)
- Bluetooth Dongle δείτε το wiki για συμβατά dongles
- Κάρτα SD (τουλάχιστον 8 GB) με NOOBS.
-
Arduino Κάθε πίνακας είναι εντάξει, χρησιμοποιώντας το Uno σε αυτό το Instructable. Σημειώστε επίσης, ότι μπορείτε απλά να χρησιμοποιήσετε το I/O στο Pi.
- Arduino Power Adapter ή Battery Pack
- Καλώδιο USB A-B
- Κάμερα Web USB
- Μίνι κιτ Pan-Tilt
-
Παρακολουθήστε με είσοδο HDMI Or χρησιμοποιήστε το VNC για να ελέγχετε απομακρυσμένα το pi από τον υπολογιστή σας [σεμινάριο εδώ]
Καλώδιο HDMI
- Το USB Keyboard & Mouse συνιστά πληκτρολόγιο και ποντίκι bluetooth για να ελαχιστοποιήσετε τις θύρες USB που χρησιμοποιούνται.
Βήμα 2: Ρύθμιση Raspberry Pi
1. Ρύθμιση υλικού
Συνδέστε πληκτρολόγιο, ποντίκι, bluetooth dongle, wifi dongle (ή ethernet), κάμερα web, οθόνη μέσω καλωδίου HDMI και τροφοδοσία στο Raspberry Pi
2. Εγκατάσταση λειτουργικού συστήματος
- Ενεργοποιήστε την τροφοδοσία και το Pi σας θα ξεκινήσει. Εγκαταστήστε το Rasbpian OS, οδηγίες εδώ:
- Εάν εκκινήσετε και εγκαταστήσετε σωστά το Raspian, θα πρέπει να δείτε την αρχική επιφάνεια εργασίας [Εικόνα παραπάνω].
ΣΥΜΒΟΥΛΕΣ:
- Εάν ο λόγος διαστάσεων επιφάνειας εργασίας είναι απενεργοποιημένος, δοκιμάστε να κάνετε επανεκκίνηση του Raspberry Pi. Εάν εξακολουθεί να είναι απενεργοποιημένο, κοιτάξτε εδώ για να ενημερώσετε το λόγο διαστάσεων με μη αυτόματο τρόπο.
- Εάν ανοίξετε έναν επεξεργαστή κειμένου και οι ειδικοί χαρακτήρες του πληκτρολογίου σας δεν αντιστοιχούν, κοιτάξτε εδώ για να ενημερώσετε τη διαμόρφωση του πληκτρολογίου σας.
- Δοκιμάστε τη σύνδεσή σας στο διαδίκτυο (θα χρειαστείτε αυτό για να εγκαταστήσετε βιβλιοθήκες κατά τη ρύθμιση). Αναζητήστε εδώ βοήθεια για τη ρύθμιση του wifi.
Βήμα 3: Συνδέστε ακουστικά Neurosky
1. Διαμόρφωση Bluetooth
Πριν συνδεθεί το Pi με το Neurosky, πρέπει να ρυθμίσουμε το bluetooth:
Στην επιφάνεια εργασίας ανοίξτε το "LXTerminal" (αναφέρεται ως τερματικό από εδώ και πέρα). Εκτελέστε αυτήν την εντολή για να επιλύσετε και να ενημερώσετε τις ελλείψεις:
$ sudo apt-get ενημέρωση
Εγκαταστήστε το bluetooth με αυτήν την εντολή:
$ sudo apt-get install bluetooth
Εγκαταστήστε ένα εύχρηστο βοηθητικό πρόγραμμα bluetooth για τη γραμμή εργαλείων:
$ sudo apt-get install -y bluetooth bluez-utils blueman
Επανεκκινήστε το Pi από το τερματικό:
$ sudo επανεκκίνηση
2. Δοκιμάστε τη σύνδεση Bluetooth
- Ενεργοποιήστε τα ακουστικά Neurosky
- Από τη σάρωση τερματικού για συσκευές:
hcitool σάρωση
Τα ακουστικά Mindwave πρέπει να αναγράφονται, λάβετε υπόψη τη διεύθυνση MAC των ακουστικών [εικόνα παραπάνω]
3. Εγκαταστήστε τις Βιβλιοθήκες Neurosky
Τώρα είμαστε έτοιμοι να εγκαταστήσουμε τις βιβλιοθήκες Neurosky Python και να αρχίσουμε να συλλέγουμε τη ροή δεδομένων της με το σενάριο δοκιμής βιβλιοθήκης:
Από το τερματικό εγκαταστήστε το βοηθητικό πρόγραμμα github:
sudo apt-get install git-core
Κλωνοποίηση χώρου αποθήκευσης github με βιβλιοθήκη Neurosky Python:
sudo git clone
Πρέπει να ενημερώσουμε το αρχείο MindwaveMobileRawReader.py με τη διεύθυνση MAC των ακουστικών σας. FYI: Τα ονόματα αρχείων έχουν διάκριση πεζών -κεφαλαίων
sudo nano /home/pi/python-mindwave-mobile/MindwaveMobileRawReader.py
- Ενημερώστε τη διεύθυνση MAC που αναφέρεται στο αρχείο. Ctrl-X για ολοκλήρωση, Y για αποθήκευση, Enter για έξοδο.
- Συνδυάστε το Neurosky και το Pi και επιτρέψτε τη λειτουργία αυτόματης σύνδεσης, εάν σας ζητηθεί να χρησιμοποιήσετε έναν κωδικό PIN "0000":
$ sudo bluez-simple-agent hci0 XX: XX: XX: XX: XX: XX
$ sudo bluez-test-device trusted XX: XX: XX: XX: XX: XX ναι
Εγκατάσταση βιβλιοθήκης Python Bluetooth:
sudo apt-get install python-bluez
Εκτελέστε το σενάριο δοκιμής βιβλιοθήκης για να βεβαιωθείτε ότι το Pi είναι σε θέση να κάνει προεπισκόπηση της ροής δεδομένων. Θα πρέπει να δείτε τη ροή δεδομένων [εικόνα παραπάνω]:
$ sudo python /home/pi/python-mindwave-mobile/read_mindwave_mobile.py
Βήμα 4: Συνδέστε τη Webcam USB W/Open CV
1. Εγκαταστήστε το OpenCV
Από το τερματικό:
$ sudo apt-get install libopencv-dev python-opencv
Όταν τελειώσετε, συνεχίστε:
$ sudo apt -get -f εγκατάσταση
Για καλό μέτρο:
$ sudo apt-get install libopencv-dev python-opencv
Δοκιμάστε την εγκατάσταση προσπαθώντας να εισαγάγετε τη βιβλιοθήκη:
$ python
> εισαγωγή cv2
2. Δοκιμάστε το OpenCV σε Python με κάμερα USB
- Στην επιφάνεια εργασίας ανοίξτε το "IDLE" (μην ανοίξετε το IDLE3!)
- Από το μενού Αρχείο επιλέξτε Νέο παράθυρο. Αντιγράψτε το σενάριο Cv-Blur-Test στο νέο παράθυρο και αποθηκεύστε το. Το σενάριο είναι διαθέσιμο εδώ:
- Από το μενού Εκτέλεση Επιλέξτε Εκτέλεση λειτουργικής μονάδας (ή πατήστε F5). Μπορεί να χρειαστούν μερικά δευτερόλεπτα για να ξεκινήσει, αλλά θα πρέπει να δείτε ένα μικρό πλαίσιο να εμφανίζεται με τη ζωντανή ροή της κάμερας web και το βίντεο θα πρέπει να είναι θολό. Συγχαρητήρια, το OpenCV εγκαταστάθηκε και λειτουργεί με επιτυχία με την κάμερα [Εικόνα παραπάνω].
Βήμα 5: Συνδέστε το Arduino
1. Κατεβάστε το Arduino IDE
Από το τερματικό:
sudo apt-get εγκατάσταση arduino
2. Συνδέστε το Arduino & Load Sketch
- Συνδέστε το arduino στο Pi με το καλώδιο USB A-B.
- Από το μενού έναρξης της επιφάνειας εργασίας πηγαίνετε στο Electronics και ανοίξτε το Arduino IDE. Αντιγράψτε το σκίτσο arduino-serial-pi στο IDE [Σύνδεσμος παρακάτω]. Αυτό είναι ένα πολύ βασικό σκίτσο που θα κινεί σερβοκινητήρες με βάση την είσοδο που έρχεται πάνω από το σειριακό. Θα στείλουμε δεδομένα στη σειρά με βάση την έξοδο εγκεφαλικού κύματος, χρησιμοποιώντας ένα σκίτσο Python στο τελευταίο βήμα, όταν τα συνδυάσουμε όλα.
Arduino-serial-pi σκίτσο online εδώ:
Στο Arduino IDE, μεταβείτε στο μενού Εργαλεία, επιλέξτε Serial Port και επιλέξτε τη θύρα Arduino που αναφέρεται, πιθανώς κάτι σαν /dev /ttyACM0. Σημειώστε το λιμάνι
3. Απενεργοποίηση σειριακής κονσόλας
Κατεβάστε και εκτελέστε ένα σενάριο για να απενεργοποιήσετε τη σειριακή κονσόλα, ώστε η σειριακή σύνδεση USB να λειτουργεί ομαλά:
$ wget
/alamode-setup.tar.gz?raw=true -O alamode-setup.tar.gz
$ tar -xvzf alamode -setup.tar.gz
$ cd alamode-setup
$ sudo./setup
$ sudo επανεκκίνηση
FYI:
Εάν χρησιμοποιείτε το B+, ενδέχεται να υπάρχουν αρκετά I/O για να υποστηρίξετε τα servos, (δείτε εδώ για να ρυθμίσετε και να χρησιμοποιήσετε το GPIO). Ωστόσο, με ενδιαφέρει να προσθέσω επιπλέον εξαρτήματα για μελλοντικούς πειραματισμούς από τον εγκέφαλο στα ηλεκτρονικά. Έτσι, η εγκατάσταση του αρχικού πρωτοτύπου με ένα arduino εξασφαλίζει πολλές ηλεκτρονικές δυνατότητες.
Βήμα 6: Το βάζουμε όλα μαζί
1. Τελικό σενάριο Python
Πριν μπορέσουμε να προσθέσουμε το τελικό σενάριο python στο φάκελο "python-mindwave-mobile", πρέπει να αλλάξουμε τα δικαιώματα φακέλου. Από το τερματικό:
$ chmod a = rwx/home/pi/python-mindwave-mobile
- Ανοίξτε το IDLE και εκτελέστε το τελευταίο μας σενάριο Python, διαθέσιμο online εδώ: https://github.com/PrivateHQ/biofeedback-cinema/ Βεβαιωθείτε ότι βρίσκεται στο φάκελο python-mindwave-mobile. FYI: Θα χρειαστεί να ενημερώσετε το σενάριο Python με την πραγματική διεύθυνση θύρας Arduino.
- Όταν εκτελείτε αυτό το σενάριο τρία πράγματα που πρέπει να συμβούν: 1) Το επίπεδο προσοχής σας θα καταχωρηθεί στο κέλυφος Python, 2) Εμφανίζεται ένα μικρό πλαίσιο που δείχνει τη ζωντανή ροή της κάμερας με τη θόλωση να αλλάζει με βάση το επίπεδο προσοχής, 3) τον κινητήρα (s) μετακινηθείτε καθώς το επίπεδο προσοχής μεταφέρεται στο arduino μέσω του σειριακού [Βίντεο παραπάνω].
Βήμα 7: Βελτιώσεις & Ανάπτυξη
Το Raspberry Pi έχει περιορισμένη ισχύ επεξεργασίας και δυσκολεύεται να εκτελέσει ομαλά τις λειτουργίες του OpenCV. Αυτό είναι κάτι που θα συνεχίσω να αναπτύσσω και να βελτιώνω. Επιπλέον, σκοπεύω να συμπεριλάβω πρόσθετες παραμέτρους εγκεφαλικού κύματος (συχνότητες που σχετίζονται με αναλαμπές ματιών κ.λπ.) και λειτουργίες κάμερας (δηλαδή απόχρωση, κορεσμό, φωτεινότητα κλπ) σε μελλοντικές επαναλήψεις.
Συνιστάται:
Πώς να φτιάξετε 4G LTE Double BiQuade Antenna Εύκολα Βήματα: 3 Βήματα
Πώς να κάνετε εύκολα 4G LTE διπλή κεραία BiQuade Antenna: Τις περισσότερες φορές αντιμετώπισα, δεν έχω καλή ισχύ σήματος στις καθημερινές μου εργασίες. Ετσι. Searchάχνω και δοκιμάζω διάφορους τύπους κεραίας αλλά δεν δουλεύω. Μετά από σπατάλη χρόνου βρήκα μια κεραία που ελπίζω να φτιάξω και να δοκιμάσω, γιατί δεν είναι η βασική αρχή
Σχεδιασμός παιχνιδιών στο Flick σε 5 βήματα: 5 βήματα
Σχεδιασμός παιχνιδιών στο Flick σε 5 βήματα: Το Flick είναι ένας πραγματικά απλός τρόπος δημιουργίας ενός παιχνιδιού, ειδικά κάτι σαν παζλ, οπτικό μυθιστόρημα ή παιχνίδι περιπέτειας
Σύστημα ειδοποίησης αντίστροφης στάθμευσης αυτοκινήτου Arduino - Βήματα βήμα προς βήμα: 4 βήματα
Σύστημα ειδοποίησης αντίστροφης στάθμευσης αυτοκινήτου Arduino | Βήματα βήμα προς βήμα: Σε αυτό το έργο, θα σχεδιάσω ένα απλό κύκλωμα αισθητήρα στάθμευσης αντίστροφης στάθμευσης αυτοκινήτου Arduino χρησιμοποιώντας Arduino UNO και υπερηχητικό αισθητήρα HC-SR04. Αυτό το σύστημα ειδοποίησης αυτοκινήτου με βάση το Arduino μπορεί να χρησιμοποιηθεί για αυτόνομη πλοήγηση, κλίμακα ρομπότ και άλλα εύρη
DIY 3D Home Cinema: 5 βήματα (με εικόνες)
DIY 3D Home Cinema: Γεια, είμαι ο Kevin. Wantedθελα ποτέ να βλέπω ταινίες στο σπίτι μου όπως σε μια συνεδρία επί πληρωμή κινηματογράφου. Αλλά δεν είμαι πλούσιος, οπότε έχω ένα μικρό σετ ηχείων υπολογιστή (2 κανονικά + 1 subwoofer), έναν καναπέ και μια κανονική τηλεόραση 32 ". Θέλετε να γυρίσετε τον βαρετό ήχο
DIY Home Cinema CD DVD USB BLUETOOTH και 7.1 Sχος: 10 βήματα (με εικόνες)
DIY Home Cinema CD DVD USB BLUETOOTH … και 7.1 oundχος: Αυτό το έργο συνεχίζεται τους τελευταίους 8 μήνες και καταναλώνει πολύ από τον ελεύθερο χρόνο μου. Δεν νομίζω ότι θα ξαναπροσπαθήσω κάτι τόσο μεγάλο ή τόσο περίπλοκο … ώστε σκέφτηκα ότι θα το μοιραστώ όπως το τελευταίο. (Αν και εγώ