Turinys:

„Biofeedback Cinema“: 7 žingsniai
„Biofeedback Cinema“: 7 žingsniai

Video: „Biofeedback Cinema“: 7 žingsniai

Video: „Biofeedback Cinema“: 7 žingsniai
Video: Informance Movie - Sleep Shepherd Biofeedback Sleep Hat - Savannah Stallcup - DES 100 2024, Lapkritis
Anonim
Image
Image
Biofeedback kinas
Biofeedback kinas

Projekto Autorius

Jessica Ann

Bendradarbiai

  • Gregory Hough
  • Saludas Lopezas
  • Pedro Peira

Apie

Eksperimentinė vaizdo įrašymo sistema, jungianti dalyvio smegenis su fotoaparato funkcijomis per „Neurosky Mindwave“EEG skaitytuvo ausines. „Biofeedback Cinema“sistema veikia vietoj tradicinio kinematografo, o kompozicijos agentūra perduodama pačiam dalyviui per individualią „BRAIN to CAMERA“sąsają. Projektas buvo sukurtas bendradarbiaujant su seminarų dalyviais Gregory Hough, Salud Lopez ir Pedro Peira. Seminaro rezultatus galite perskaityti šiuo adresu:

Prototipo konfigūracija

„Biofeedback Cinema“sistema tinka daugeliui galimų programų. Norėdami tai padaryti, mes paruošėme sistemos demonstracinę versiją, kurioje atsižvelgiama į dalyvio fokusavimo/dėmesio lygį (vienas sveikas skaičius) ir paverčiama į kameros padėtį (perkeliant ir pakreipiant) ir fotoaparato fokusavimą (viduje naudojant „OpenCV“). Visa tai galima padaryti naudojant „Bluetooth“ryšį tarp „Neurosky EEG Reader“ausinių ir „Raspberry Pi“.

„Raspberry Pi“yra mažas kompiuteris, aprūpintas internetine kamera ir scenarijais (galima rasti žemiau), kurie sujungia dalyvio smegenų veiklą su fotoaparato nustatymais ir fotoaparato padėtimi. Dinaminė kameros padėtis yra įmanoma naudojant „Arduino“mikrovaldiklį, gaunantį signalus iš „Raspberry Pi“. Mes tikimės tolesnio tobulėjimo, nes siekiame įtraukti papildomus smegenų bangų parametrus (dažnius, susijusius su akių mirksėjimu ir pan.) Ir fotoaparato funkcijas (t. Y. Atspalvį, sodrumą, ryškumą ir kt.).

Žemiau yra instrukcijos, kaip sukurti savo „Biofeedback Cinema“sistemą.

Laimingo eksperimento

1 žingsnis: reikmenys

Prekės
Prekės

Viskas, ko jums reikia norint sukurti savo „Biofeedback Cinema“prototipą, yra išvardyta žemiau.

  1. „Neurosky Mindwave Mobile EEG“laisvų rankų įranga
  2. „Raspberry Pi B+“(„b+“yra geresnis, daugiau USB prievadų, tačiau „B“modelis taip pat tinka, jei turite USB šakotuvą).

    1. „Raspberry Pi“maitinimo adapteris arba akumuliatorius
    2. „Wifi Dongle“arba „Ethernet“ryšys (būtinas tik sąrankos metu)
    3. „Bluetooth Dongle“suderinamų raktų ieškokite „wiki“
    4. SD kortelė (mažiausiai 8 GB) su NOOBS.
  3. „Arduino“Bet kuri plokštė tinka, naudojant „Uno“šioje instrukcijoje. Taip pat atkreipkite dėmesį, kad galite tiesiog naudoti „Pi“įvestį/išvestį.

    1. „Arduino“maitinimo adapteris arba akumuliatorius
    2. A-B USB kabelis
  4. USB kamera
  5. Mini pakreipimo komplektas
  6. Monitorius su HDMI įvestimi Arba naudokite VNC, kad nuotoliniu būdu valdytumėte savo kompiuterį iš kompiuterio [pamoka čia]

    HDMI kabelis

  7. USB klaviatūra ir pelė rekomenduoja „Bluetooth“klaviatūrą ir pelę, kad būtų sumažintas naudojamų USB prievadų skaičius.

2 veiksmas: nustatykite „Raspberry Pi“

Nustatykite „Raspberry Pi“
Nustatykite „Raspberry Pi“

1. Nustatykite aparatūrą

Prijunkite klaviatūrą, pelę, „Bluetooth“raktą, „wifi“raktą (arba eternetą), internetinę kamerą, monitorių per HDMI kabelį ir maitinimą prie „Raspberry Pi“

2. Nustatykite operacinę sistemą

  • Įjunkite maitinimą ir „Pi“turėtų pradėti veikti. Įdiekite Rasbpian OS, instrukcijos čia:
  • Jei paleista ir tinkamai įdiegta „Raspian“, turėtumėte pamatyti namų darbalaukį [Vaizdas aukščiau].

PATARIMAI:

  • Jei darbalaukio formato koeficientas išjungtas, pabandykite iš naujo paleisti „Raspberry Pi“. Jei jis vis dar išjungtas, žiūrėkite čia, kad atnaujintumėte formato koeficientą rankiniu būdu.
  • Jei atidarote teksto redaktorių ir klaviatūros specialieji simboliai yra netinkamai suplanuoti, ieškokite čia, kad atnaujintumėte klaviatūros konfigūraciją.
  • Išbandykite savo interneto ryšį (jums to reikės norint įdiegti bibliotekas sąrankos metu). Čia ieškokite pagalbos, kaip nustatyti „Wi -Fi“.

3 veiksmas: prijunkite „Neurosky“ausines

Prijunkite „Neurosky“ausines
Prijunkite „Neurosky“ausines
Prijunkite „Neurosky“ausines
Prijunkite „Neurosky“ausines

1. „Bluetooth“konfigūracija

Kad „Pi“galėtų prisijungti prie „Neurosky“, turime nustatyti „Bluetooth“:

Darbalaukyje atidarykite „LXTerminal“(nuo šiol vadinama terminalu). Vykdykite šią komandą, kad pašalintumėte ir atnaujintumėte trūkumus:

$ sudo apt-get atnaujinimas

Įdiekite „Bluetooth“naudodami šią komandą:

$ sudo apt-get įdiegti „Bluetooth“

Įdiekite patogią „Bluetooth“įrankį darbalaukio įrankių juostoje:

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

Perkraukite „Pi“iš terminalo:

$ sudo perkraukite

2. Išbandykite „Bluetooth“ryšį

  • Įjunkite „Neurosky“ausines
  • Iš terminalo ieškokite įrenginių:

hcitool nuskaitymas

„Mindwave“laisvų rankų įranga turėtų būti įtraukta į sąrašą, atkreipkite dėmesį į laisvų rankų įrangos MAC adresą [vaizdas aukščiau]

3. Įdiekite „Neurosky“bibliotekas

Dabar esame pasirengę įdiegti „Neurosky Python“bibliotekas ir pradėti rinkti jo duomenų srautą naudodami bibliotekos bandomąjį scenarijų:

Iš terminalo įdiekite „github“įrankį:

sudo apt-get install git-core

Klonuoti „Github“saugyklą su „Neurosky Python“biblioteka:

sudo git klonas

Turime atnaujinti MindwaveMobileRawReader.py failą naudodami laisvų rankų įrangos MAC adresą. FYI: failų pavadinimuose skiriamos didžiosios ir mažosios raidės

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

  • Atnaujinkite faile nurodytą MAC adresą. Ctrl-X, kad baigtumėte, Y, jei norite išsaugoti, Enter, jei norite išeiti.
  • Suporuokite „Neurosky“ir „Pi“ir leiskite automatinio prisijungimo funkciją, jei būsite paraginti įvesti PIN kodą „0000“:

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

$ sudo bluez-test-device patikimas XX: XX: XX: XX: XX: XX taip

Įdiekite „Python Bluetooth“biblioteką:

sudo apt-get įdiegti python-bluez

Paleiskite bibliotekos bandymo scenarijų, kad įsitikintumėte, jog „Pi“gali peržiūrėti duomenų srautą. Turėtumėte matyti duomenų srautą [vaizdas aukščiau]:

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

4 veiksmas: prijunkite USB internetinę kamerą/atidarykite CV

Prijunkite USB žiniatinklio kamerą W/Atidarykite CV
Prijunkite USB žiniatinklio kamerą W/Atidarykite CV

1. Įdiekite „OpenCV“

Iš terminalo:

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

Baigę tęskite:

$ sudo apt -get -f install

Norėdami gerai išmatuoti:

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

Išbandykite diegimą bandydami importuoti biblioteką:

$ python

> importuoti cv2

2. Išbandykite „OpenCV“„Python“naudodami USB žiniatinklio kamerą

  • Darbalaukyje atidarykite „IDLE“(neatidarykite IDLE3!)
  • Meniu Failas pasirinkite Naujas langas. Nukopijuokite mūsų „Cv-Blur-Test“scenarijų į naują langą ir išsaugokite. Scenarijų rasite čia:
  • Meniu Vykdyti Pasirinkite Vykdyti modulį (arba paspauskite F5). Gali užtrukti kelias sekundes, kol pradėsite veikti, tačiau turėtumėte matyti mažą kadrą, rodomą tiesioginiame žiniatinklio kameros sklaidos kanale, o vaizdo įrašas turėtų būti neryškus. Sveikiname, „OpenCV“buvo įdiegta ir sėkmingai veikia su jūsų žiniatinklio kamera [Nuotrauka aukščiau].

5 veiksmas: prijunkite „Arduino“

1. Atsisiųskite „Arduino IDE“

Iš terminalo:

sudo apt-get install arduino

2. Prijunkite „Arduino & Load Sketch“

  • Prijunkite arduino prie Pi naudodami A-B USB kabelį.
  • Iš darbalaukio pradžios meniu eikite į „Electronics“ir atidarykite „Arduino IDE“. Nukopijuokite mūsų arduino-serial-pi eskizą į IDE [Nuoroda žemiau]. Tai labai paprastas eskizas, kuris pajudins servo variklius, pagrįstus serijos įvestimi. Siųsime duomenis per seriją, remdamiesi smegenų bangų išvestimi, paskutiniame žingsnyje, kai viską sujungsime, naudosime „Python“eskizą.

„Arduino-serial-pi“eskizas internete čia:

„Arduino IDE“eikite į meniu „Įrankiai“, pasirinkite „Serial Port“ir pasirinkite išvardytą „Arduino“prievadą, tikriausiai kažką panašaus į /dev /ttyACM0. Užsirašykite uostą

3. Išjunkite serijinę konsolę

Atsisiųskite ir paleiskite scenarijų, kad išjungtumėte serijinę konsolę, kad USB serijinis ryšys veiktų sklandžiai:

$ wget

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

$ tar -xvzf alamode -setup.tar.gz

$ cd alamode-setup

$ sudo./setup

$ sudo perkraukite

FYI:

Jei naudojate „B+“, gali būti pakankamai įvesties/išvesties, kad palaikytų servo (žiūrėkite čia, kaip nustatyti ir naudoti GPIO). Tačiau man įdomu pridėti papildomų komponentų būsimiems smegenų ir elektronikos eksperimentams. Taigi, nustatant pradinį prototipą naudojant „arduino“, užtikrinama daugybė elektroninių galimybių.

6 žingsnis: sudėkite viską kartu

Image
Image

1. Galutinis „Python“scenarijus

Kad galėtume pridėti galutinį „python“scenarijų į aplanką „python-mindwave-mobile“, turime pakeisti aplanko leidimus. Iš terminalo:

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

  • Atidarykite IDLE ir paleiskite galutinį „Python“scenarijų, kurį galite rasti internete čia: https://github.com/PrivateHQ/biofeedback-cinema/ Įsitikinkite, kad jis yra aplanke „python-mindwave-mobile“. FYI: Turėsite atnaujinti mūsų „Python“scenarijų naudodami tikrąjį „Arduino“prievado adresą.
  • Vykdydami šį scenarijų turėtumėte atsitikti trimis dalykais: 1) jūsų dėmesio lygis bus nurodytas „Python Shell“, 2) pasirodys nedidelis rėmelis, rodantis tiesioginį internetinės kameros kanalą, kurio suliejimas keičiasi atsižvelgiant į dėmesio lygį, 3) variklis (s) judėti, kai dėmesio lygis perduodamas arduino per seriją [Vaizdo įrašas aukščiau].

7 žingsnis: patobulinimai ir plėtra

„Raspberry Pi“turi ribotą apdorojimo galią ir stengiasi sklandžiai paleisti „OpenCV“funkcijas. Tai aš toliau tobulėsiu ir tobulėsiu. Be to, į būsimas kartas planuoju įtraukti papildomus smegenų bangų parametrus (dažnius, susijusius su akių mirksėjimu ir pan.) Ir fotoaparato funkcijas (t. Y. Atspalvį, sodrumą, ryškumą ir kt.).

Rekomenduojamas: