Inhoudsopgave:

Biofeedback-bioscoop: 7 stappen
Biofeedback-bioscoop: 7 stappen

Video: Biofeedback-bioscoop: 7 stappen

Video: Biofeedback-bioscoop: 7 stappen
Video: EP 133 | Selling Fitness - 8 Steps to Increase Fitness Sales | Casey Conrad 2024, Juli-
Anonim
Image
Image
Biofeedback-bioscoop
Biofeedback-bioscoop

Project auteur

Jessica Ann

Medewerkers

  • Gregory Hough
  • Salud Lopez
  • Pedro Peira

Wat betreft

Een experimenteel video-opnamesysteem dat de hersenen van een deelnemer verbindt met camerafuncties via een Neurosky Mindwave EEG Reader Headset. Het Biofeedback Cinema-systeem werkt in plaats van een traditionele cameraman, maar geeft de deelnemer zelf de regie over de compositie via een aangepaste BRAIN to CAMERA-interface. Het project is ontwikkeld in samenwerking met workshopdeelnemers Gregory Hough, Salud Lopez en Pedro Peira. U kunt de resultaten van de workshop lezen op:

Prototypeconfiguratie

Het Biofeedback Cinema systeem leent zich voor vele mogelijke toepassingen. Voor deze instructable hebben we een demo voorbereid van het systeem dat kijkt naar het focus/aandachtsniveau van de deelnemer (een enkel geheel getal) en dat vertaalt naar camerapositie (via pan en tilt) en camerafocus (intern via OpenCV). Dit wordt allemaal mogelijk gemaakt door een bluetooth-verbinding tussen een Neurosky EEG Reader Headset en een Raspberry Pi.

De Raspberry Pi is een kleine computer die is uitgerust met een webcam en scripts (hieronder beschikbaar) die de hersenactiviteit van de deelnemer verbinden met camera-instellingen en camerapositie. Dynamische camerapositie wordt mogelijk gemaakt via een Arduino-microcontroller die signalen van de Raspberry Pi ontvangt. We kijken uit naar verdere ontwikkeling omdat we ernaar streven om aanvullende hersengolfparameters (frequenties geassocieerd met oogknipperingen, enz.) en camerafuncties (d.w.z. tint, verzadiging, helderheid, enz.) op te nemen.

Hieronder vindt u de instructies om uw eigen Biofeedback Cinema-systeem te bouwen.

Veel plezier met experimenteren

Stap 1: Benodigdheden

Benodigdheden
Benodigdheden

Alles wat je nodig hebt om je eigen Biofeedback Cinema-prototype te bouwen, staat hieronder vermeld.

  1. Neurosky Mindwave mobiele EEG-headset
  2. Raspberry Pi B+ (b+ is beter, meer USB-poorten, maar een B-model is ook prima als je een USB-hub hebt).

    1. Raspberry Pi-lichtnetadapter of batterijpakket
    2. Wifi Dongle -of- Ethernet-verbinding (alleen nodig tijdens installatie)
    3. Bluetooth-dongle zie wiki voor compatibele dongles
    4. SD-kaart (minimaal 8 GB) met NOOBS.
  3. Arduino Elk bord is prima, met Uno in deze Instructable. Merk ook op dat je gewoon de I/O op de Pi kunt gebruiken.

    1. Arduino-stroomadapter of batterijpakket
    2. A-B USB-kabel
  4. USB-webcam
  5. Mini Pan-Tilt Kit
  6. Monitor met HDMI-ingang Of gebruik VNC om je pi op afstand te bedienen vanaf je computer [tutorial hier]

    HDMI kabel

  7. USB-toetsenbord en -muis raden een bluetooth-toetsenbord en -muis aan om het gebruik van USB-poorten te minimaliseren.

Stap 2: Stel Raspberry Pi in

Raspberry Pi instellen
Raspberry Pi instellen

1. Hardware instellen

Sluit toetsenbord, muis, bluetooth-dongle, wifi-dongle (of ethernet), webcam, monitor via HDMI-kabel en stroom aan op je Raspberry Pi

2. Besturingssysteem instellen

  • Schakel de stroom in en je Pi zou moeten opstarten. Installeer Rasbpian OS, instructies hier:
  • Als het is opgestart en Raspian correct is geïnstalleerd, zou je het thuisbureaublad [Afbeelding hierboven] moeten zien.

HINT:

  • Als de beeldverhouding van het bureaublad is uitgeschakeld, probeert u uw Raspberry Pi opnieuw op te starten. Als het nog steeds uit staat, kijk dan hier om de beeldverhouding handmatig bij te werken.
  • Als u een teksteditor opent en de speciale tekens van uw toetsenbord zijn verkeerd toegewezen, kijk dan hier om uw toetsenbordconfiguratie bij te werken.
  • Test uw internetverbinding (u hebt deze nodig om bibliotheken te installeren tijdens de installatie). Kijk hier voor hulp bij het instellen van wifi.

Stap 3: Sluit de Neurosky-headset aan

Neurosky-headset aansluiten
Neurosky-headset aansluiten
Neurosky-headset aansluiten
Neurosky-headset aansluiten

1. Bluetooth-configuratie

Voordat de Pi verbinding kan maken met de Neurosky, moeten we bluetooth instellen:

Open op het bureaublad "LXTerminal" (hierna Terminal genoemd). Voer deze opdracht uit om tekortkomingen op te lossen en bij te werken:

$ sudo apt-get update

Installeer bluetooth met dit commando:

$ sudo apt-get install bluetooth

Installeer handige desktop-toolbar bluetooth-hulpprogramma:

$ sudo apt-get install -y bluetooth bluez-utils blueman

Start Pi opnieuw op vanaf Terminal:

$ sudo opnieuw opstarten

2. Bluetooth-verbinding testen

  • Neurosky-headset inschakelen
  • Van de Terminal-scan voor apparaten:

hcitool-scan

De Mindwave-headset moet worden vermeld, noteer het MAC-adres van de headset [afbeelding hierboven]

3. Installeer Neurosky-bibliotheken

Nu zijn we klaar om de Neurosky Python-bibliotheken te installeren en de gegevensstroom op te halen met het bibliotheektestscript:

Installeer vanuit de Terminal het github-hulpprogramma:

sudo apt-get install git-core

Kloon github-repository met Neurosky Python-bibliotheek:

sudo git clone

We moeten het MindwaveMobileRawReader.py-bestand bijwerken met het MAC-adres van uw headset. Ter info: bestandsnamen zijn hoofdlettergevoelig

sudo nano /home/pi/python-mindwave-mobile/MindwaveMobileRawReader.py

  • Werk het MAC-adres in het bestand bij. Ctrl-X om te voltooien, Y om op te slaan, Enter om af te sluiten.
  • Koppel de Neurosky en de Pi en laat de functie voor automatisch verbinden toe, als u om een pincode wordt gevraagd, gebruik dan "0000":

$ sudo bluez-simple-agent hci0 XX:XX:XX:XX:XX:XX

$ sudo bluez-test-apparaat vertrouwd XX:XX:XX:XX:XX:XX ja

Installeer de Python Bluetooth-bibliotheek:

sudo apt-get install python-bluez

Voer het bibliotheektestscript uit om ervoor te zorgen dat de Pi een voorbeeld van de gegevensstroom kan bekijken. Je zou de datastreaming [afbeelding hierboven] moeten zien:

$ sudo python /home/pi/python-mindwave-mobile/read_mindwave_mobile.py

Stap 4: Sluit de USB-webcam aan met Open CV

Sluit USB-webcam aan met open CV
Sluit USB-webcam aan met open CV

1. Installeer OpenCV

Vanaf de terminal:

$ sudo apt-get install libopencv-dev python-opencv

Als u klaar bent, gaat u verder:

$ sudo apt-get -f install

Voor de goede orde:

$ sudo apt-get install libopencv-dev python-opencv

Test de installatie door te proberen de bibliotheek te importeren:

$ python

> import cv2

2. Test OpenCV in Python met USB-webcam

  • Open op het bureaublad "IDLE" (niet IDLE3 openen!)
  • Selecteer in het menu Bestand de optie Nieuw venster. Kopieer ons Cv-Blur-Test-script naar het nieuwe venster en sla op. Script hier beschikbaar:
  • Selecteer in het menu Uitvoeren de optie Module uitvoeren (of druk op F5). Het kan een paar seconden duren om op gang te komen, maar je zou een klein kader moeten zien verschijnen met je live webcam-feed en de video zou wazig moeten zijn. Gefeliciteerd, OpenCV is geïnstalleerd en werkt met succes met uw webcam [Afbeelding hierboven].

Stap 5: Arduino aansluiten

1. Download Arduino IDE

Vanaf de terminal:

sudo apt-get install arduino

2. Arduino aansluiten en schets laden

  • Sluit de arduino aan op de Pi met de A-B USB-kabel.
  • Ga vanuit het startmenu van het bureaublad naar Elektronica en open Arduino IDE. Kopieer onze arduino-serial-pi-schets naar de IDE [Link hieronder]. Dit is een zeer eenvoudige schets die servomotoren zal bewegen op basis van invoer die over de serie komt. We zullen gegevens over de serie verzenden op basis van hersengolfuitvoer, met behulp van een Python-schets in de laatste stap wanneer we alles samenvoegen.

Arduino-serial-pi schets hier online:

Ga in de Arduino IDE naar het menu Tools, selecteer Serial Port en selecteer de vermelde Arduino-poort, waarschijnlijk zoiets als /dev/ttyACM0. Noteer de haven

3. Seriële console uitschakelen

Download en voer een script uit om de seriële console uit te schakelen, zodat de seriële USB-verbinding soepel kan verlopen:

$ wget

/alamode-setup.tar.gz?raw=true -O alamode-setup.tar.gz

$ tar -xvzf alamode-setup.tar.gz

$ cd alamode-setup

$ sudo./setup

$ sudo opnieuw opstarten

TER INFO:

Als u de B+ gebruikt, is er mogelijk voldoende I/O om de servo's te ondersteunen (kijk hier om de GPIO in te stellen en te gebruiken). Ik ben echter geïnteresseerd in het toevoegen van extra componenten voor toekomstige hersen-naar-elektronica-experimenten. Dus het opzetten van het eerste prototype met een arduino zorgt voor veel doorbraak elektronische mogelijkheden.

Stap 6: Alles samenbrengen

Image
Image

1. Laatste Python-script

Voordat we het laatste python-script aan de map "python-mindwave-mobile" kunnen toevoegen, moeten we de mapmachtigingen wijzigen. Vanaf de terminal:

$ chmod a=rwx /home/pi/python-mindwave-mobile

  • Open IDLE en voer ons laatste Python-script uit, dat hier online beschikbaar is: https://github.com/PrivateHQ/biofeedback-cinema/ Zorg ervoor dat het zich in de map python-mindwave-mobile bevindt. Ter info: u moet ons Python-script bijwerken met uw werkelijke Arduino-poortadres.
  • Wanneer u dit script uitvoert, moeten er drie dingen gebeuren: 1) Uw aandachtsniveau wordt vermeld in de Python Shell, 2) Er verschijnt een klein kader met de live-feed van de webcam waarbij de vervaging verandert op basis van het aandachtsniveau, 3) de motor(s) bewegen als het aandachtsniveau wordt doorgegeven aan de Arduino via de seriële [Video hierboven].

Stap 7: Verbeteringen en ontwikkeling

De Raspberry Pi heeft een beperkte verwerkingskracht en heeft moeite om OpenCV-functies soepel uit te voeren. Dit is iets wat ik zal blijven ontwikkelen en verbeteren. Daarnaast ben ik van plan om in toekomstige iteraties aanvullende hersengolfparameters (frequenties geassocieerd met oogknipperingen, enz.) en camerafuncties (d.w.z. tint, verzadiging, helderheid, enz.) op te nemen.

Aanbevolen: