Turinys:
- 1 žingsnis: reikmenys
- 2 veiksmas: nustatykite „Raspberry Pi“
- 3 veiksmas: prijunkite „Neurosky“ausines
- 4 veiksmas: prijunkite USB internetinę kamerą/atidarykite CV
- 5 veiksmas: prijunkite „Arduino“
- 6 žingsnis: sudėkite viską kartu
- 7 žingsnis: patobulinimai ir plėtra
Video: „Biofeedback Cinema“: 7 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:48
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
Viskas, ko jums reikia norint sukurti savo „Biofeedback Cinema“prototipą, yra išvardyta žemiau.
- „Neurosky Mindwave Mobile EEG“laisvų rankų įranga
-
„Raspberry Pi B+“(„b+“yra geresnis, daugiau USB prievadų, tačiau „B“modelis taip pat tinka, jei turite USB šakotuvą).
- „Raspberry Pi“maitinimo adapteris arba akumuliatorius
- „Wifi Dongle“arba „Ethernet“ryšys (būtinas tik sąrankos metu)
- „Bluetooth Dongle“suderinamų raktų ieškokite „wiki“
- SD kortelė (mažiausiai 8 GB) su NOOBS.
-
„Arduino“Bet kuri plokštė tinka, naudojant „Uno“šioje instrukcijoje. Taip pat atkreipkite dėmesį, kad galite tiesiog naudoti „Pi“įvestį/išvestį.
- „Arduino“maitinimo adapteris arba akumuliatorius
- A-B USB kabelis
- USB kamera
- Mini pakreipimo komplektas
-
Monitorius su HDMI įvestimi Arba naudokite VNC, kad nuotoliniu būdu valdytumėte savo kompiuterį iš kompiuterio [pamoka čia]
HDMI kabelis
- 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“
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
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
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
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:
„Arduino“automobilių atbulinės eigos įspėjimo sistema - Žingsniai po žingsnio: 4 žingsniai
„Arduino“automobilių atbulinės eigos įspėjimo sistema | Žingsniai po žingsnio: Šiame projekte aš suprojektuosiu paprastą „Arduino“automobilio atbulinės eigos stovėjimo jutiklio grandinę, naudodamas „Arduino UNO“ir ultragarsinį jutiklį „HC-SR04“. Ši „Arduino“pagrįsta automobilio atbulinės eigos įspėjimo sistema gali būti naudojama autonominei navigacijai, robotų diapazonui ir kitiems diapazonams
„Arduino Halloween Edition“- „Zombies“iššokantis ekranas (žingsniai su nuotraukomis): 6 žingsniai
„Arduino Halloween Edition“- „Zombies“iššokantis ekranas (žingsniai su paveikslėliais): norite Helovino metu išgąsdinti savo draugus ir sukelti riksmą? O gal tiesiog norite padaryti gerą išdaigą? Šis iššokantis „Zombies“ekranas gali tai padaryti! Šioje instrukcijoje aš išmokysiu jus, kaip lengvai padaryti iššokančius zombius naudojant „Arduino“. HC-SR0
EMG biofeedback: 18 žingsnių (su nuotraukomis)
EMG biologinis grįžtamasis ryšys: ši biologinio grįžtamojo ryšio sąranka naudoja EMG jutiklį, kuris vaizduoja raumenų įtampą kaip pyptelėjimą ir leidžia jums išmokyti savo kūną sureguliuoti raumenų įtampą. Trumpai tariant, kuo labiau esate įsitempęs, tuo greičiau pasigirsta pyptelėjimai ir tuo labiau atsipalaiduojate
Akustinė levitacija naudojant „Arduino Uno“žingsnis po žingsnio (8 žingsniai): 8 žingsniai
Akustinė levitacija naudojant „Arduino Uno“žingsnis po žingsnio (8 žingsniai): ultragarsiniai garso keitikliai L298N nuolatinės srovės adapterio maitinimo šaltinis su vyrišku nuolatinės srovės kaiščiu „Arduino UNOBreadboard“Kaip tai veikia: pirmiausia įkelkite kodą į „Arduino Uno“(tai yra mikrovaldiklis su skaitmeniniu ir analoginiai prievadai kodui konvertuoti (C ++)
„Pixel Kit“, kuriame veikia „MicroPython“: pirmieji žingsniai: 7 žingsniai
„Pixel Kit“, kuriame veikia „MicroPython“: pirmieji žingsniai: Kelionė, skirta visam „Kano Pixel“potencialui išnaudoti, prasideda gamyklos programinės įrangos pakeitimu „MicroPython“, tačiau tai tik pradžia. Norėdami koduoti „Pixel Kit“, turime prie jo prijungti savo kompiuterius. Ši pamoka paaiškins, kas