Mundarija:

Biofeedback kino: 7 qadam
Biofeedback kino: 7 qadam

Video: Biofeedback kino: 7 qadam

Video: Biofeedback kino: 7 qadam
Video: Headaches & Migraines in POTS - Melissa Cortez, DO 2024, Noyabr
Anonim
Image
Image
Biofeedback kino
Biofeedback kino

Loyiha muallifi

Jessika Enn

Hamkorlar

  • Gregori Xof
  • Salud Lopez
  • Pedro Peira

Haqida

Neurosky Mindwave EEG Reader minigarniturasi orqali ishtirokchining miyasini kamera funktsiyalari bilan bog'laydigan eksperimental video yozish tizimi. Biofeedback Cinema tizimi an'anaviy kinematograf o'rniga ishlaydi, aksincha kompozitsiyani agentlik ishtirokchisining o'ziga MENI KAMERA interfeysi orqali beradi. Loyiha Gregori Xof, Salud Lopez va Pedro Peira ishtirokchilari bilan birgalikda ishlab chiqilgan. Seminar natijalari bilan quyidagi manzilda tanishishingiz mumkin:

Prototip konfiguratsiyasi

Biofeedback Cinema tizimi ko'plab potentsial dasturlarga mos keladi. Bu ko'rsatma uchun biz ishtirokchining diqqat/e'tibor darajasiga (bitta butun son) qaraydigan va uni kamera holatiga (skanerlash va egish orqali) va kamera fokusiga (ichki OpenCV orqali) qaraydigan tizimning demosini tayyorladik. Bularning barchasi Neurosky EEG Reader minigarniturasi va Raspberry Pi o'rtasidagi bluetooth aloqasi orqali mumkin bo'ldi.

Raspberry Pi - bu veb -kamera va skriptlar bilan jihozlangan kichik kompyuter bo'lib, u ishtirokchining miya faoliyatini kamera sozlamalari va kamera holatiga ko'prik qiladi. Dinamik kameraning joylashuvi Raspberry Pi signallarini qabul qiluvchi Arduino mikrokontroller orqali amalga oshiriladi. Biz yanada rivojlanishni kutmoqdamiz, chunki biz miya to'lqinining qo'shimcha parametrlarini (ko'zning miltillashi bilan bog'liq chastotalar va boshqalar) va kamera funktsiyalarini (masalan, rang, to'yinganlik, yorqinlik va hk) o'z ichiga olishni maqsad qilganmiz.

Quyida o'zingizning Biofeedback Cinema tizimini yaratish bo'yicha ko'rsatmalar mavjud.

Baxtli tajriba

1 -qadam: materiallar

Ta'minotlar
Ta'minotlar

O'zingizning Biofeedback Cinema prototipini yaratish uchun kerak bo'lgan hamma narsa quyida keltirilgan.

  1. Neurosky Mindwave mobil EEG minigarniturasi
  2. Raspberry Pi B+ (b+ yaxshiroq, ko'proq USB portlar, lekin agar sizda USB uyasi bo'lsa, B modeli ham yaxshi).

    1. Raspberry Pi quvvat adapteri yoki batareya to'plami
    2. Wifi Dongle yoki Ethernet ulanishi (faqat sozlash vaqtida kerak)
    3. Bluetooth Dongle mos dongllar uchun vikini ko'ring
    4. SD karta (kamida 8 Gb) NOOBS bilan.
  3. Arduino har qanday taxta yaxshi, bu ko'rsatmada Uno yordamida. Shuni ham yodda tutingki, siz Pi -da kirish -chiqish xizmatidan foydalanishingiz mumkin.

    1. Arduino quvvat adapteri yoki batareya to'plami
    2. A-B USB kabeli
  4. USB veb -kamera
  5. Kichkina panjara to'plami
  6. HDMI kirishini kuzating yoki VNC -dan foydalanib, pi -ni kompyuterdan masofadan boshqarish uchun [bu erda ko'rsatma]

    HDMI kabeli

  7. USB klaviatura va sichqonchasi bluetooth klaviatura va sichqonchani ishlatilgan USB portlarini kamaytirishni tavsiya qiladi.

2 -qadam: Raspberry Pi -ni o'rnating

Raspberry Pi -ni sozlash
Raspberry Pi -ni sozlash

1. Uskunani o'rnatish

Raspberry Pi -ga klaviatura, sichqoncha, bluetooth dongle, wifi -dongle (yoki chekilgan), veb -kamera, monitorni HDMI kabeli orqali ulang

2. Operatsion tizimni sozlash

  • Quvvatni yoqing va sizning Pi ishga tushishi kerak. Rasbpian OS ni o'rnating, ko'rsatmalar:
  • Agar yuklash va Raspian to'g'ri o'rnatilgan bo'lsa, siz uy ish stolini ko'rishingiz kerak [Yuqoridagi rasm].

Maslahatlar:

  • Agar ish stoli nisbati o'chirilgan bo'lsa, Raspberry Pi -ni qayta ishga tushiring. Agar u hali ham o'chirilgan bo'lsa, tomonlar nisbatini qo'lda yangilash uchun bu erga qarang.
  • Agar siz matn muharririni ochsangiz va klaviaturadagi maxsus belgilar mos kelmasa, klaviatura konfiguratsiyasini yangilash uchun bu erga qarang.
  • Internetga ulanishni tekshiring (sozlash paytida kutubxonalarni o'rnatish uchun sizga kerak bo'ladi). Wi -Fi -ni sozlash bo'yicha yordam uchun bu erga qarang.

3 -qadam: Neurosky minigarniturasini ulang

Neurosky eshitish vositasini ulang
Neurosky eshitish vositasini ulang
Neurosky eshitish vositasini ulang
Neurosky eshitish vositasini ulang

1. Bluetooth konfiguratsiyasi

Pi Neurosky -ga ulanishdan oldin biz bluetooth -ni sozlashimiz kerak:

Ish stolida "LXTerminal" ni oching (bundan keyin terminal deb ataladi). Kamchiliklarni bartaraf etish va yangilash uchun ushbu buyruqni bajaring:

$ sudo apt-get yangilanishi

Bluetooth -ni quyidagi buyruq bilan o'rnating:

$ sudo apt-get bluetooth-ni o'rnating

Ish stoli asboblar paneli bluetooth yordam dasturini o'rnating:

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

Terminaldan Pi -ni qayta yuklang:

$ sudo qayta ishga tushirish

2. Bluetooth ulanishini sinab ko'ring

  • Neurosky minigarniturasini yoqing
  • Qurilmalarni terminalda tekshirishdan:

hcitool tekshiruvi

Mindwave naushniklari ro'yxatda bo'lishi kerak, minigarnituraning MAC manziliga e'tibor bering [yuqoridagi rasm]

3. Neurosky kutubxonalarini o'rnating

Endi biz Neurosky Python kutubxonalarini o'rnatishga tayyormiz va kutubxona test skriptidan uning ma'lumotlar oqimini olishni boshlaymiz:

Terminaldan github yordam dasturini o'rnating:

sudo apt-get install-core ni o'rnating

Neurosky Python kutubxonasi bilan Clone github ombori:

sudo git clone

MindwaveMobileRawReader.py faylini minigarnituraning MAC manzili bilan yangilashimiz kerak. Ma'lumot: fayl nomlari katta -kichik harflarga sezgir

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

  • Faylda ko'rsatilgan MAC manzilini yangilang. Tugatish uchun Ctrl-X, saqlash uchun Y, chiqish uchun Enter.
  • Neurosky va Pi -ni ulang va agar "0000" PIN kodidan foydalanish so'ralsa, avtomatik ulanish xususiyatiga ruxsat bering:

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

$ sudo bluez-test-device ishonchli XX: XX: XX: XX: XX: XX: XX ha

Python Bluetooth kutubxonasini o'rnating:

sudo apt-get install python-bluez

Pi ma'lumotlar oqimini oldindan ko'rish imkoniyatiga ega bo'lishi uchun kutubxona test skriptini ishga tushiring. Siz ma'lumot oqimini ko'rishingiz kerak [yuqoridagi rasm]:

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

4 -qadam: USB veb -kamerasini CV -ni oching

Ochiq rezyume bilan USB veb -kamerasini ulang
Ochiq rezyume bilan USB veb -kamerasini ulang

1. OpenCV -ni o'rnating

Terminaldan:

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

Ish tugagach, davom eting:

$ sudo apt -get -f ni o'rnating

Yaxshi o'lchov uchun:

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

Kutubxonani import qilishga urinib, o'rnatishni tekshiring:

$ python

> cv2 import qilish

2. USB veb -kamerasi yordamida Pythonda OpenCV -ni sinab ko'ring

  • Ish stolida "IDLE" -ni oching (IDLE3 -ni ochmang!)
  • Fayl menyusidan Yangi oyna -ni tanlang. Cv-Blur-Test skriptini yangi oynaga ko'chiring va saqlang. Skript bu erda mavjud:
  • Ishga tushirish menyusida Ishga tushirish modulini tanlang (yoki F5 tugmasini bosing). Ishga tushish uchun bir necha soniya kerak bo'ladi, lekin siz jonli veb -kamera tasmasi bilan kichik ramka paydo bo'lishini ko'rishingiz kerak va video xira bo'lishi kerak. Tabriklaymiz, OpenCV o'rnatildi va veb -kamerangiz bilan muvaffaqiyatli ishlamoqda [Yuqoridagi rasm].

5 -qadam: Arduino -ni ulang

1. Arduino IDE -ni yuklab oling

Terminaldan:

sudo apt-get arduino-ni o'rnating

2. Arduino & Load Sketch -ni ulang

  • Arduino-ni A-B USB kabeli bilan Pi-ga ulang.
  • Ish stoli boshlang'ich menyusidan Electronics -ga o'ting va Arduino IDE -ni oching. Arduino-serial-pi eskizimizni IDE-ga ko'chiring [Quyidagi havola]. Bu ketma -ket kirishga asoslangan servo dvigatellarni harakatga keltiradigan juda oddiy eskiz. Biz hamma narsani bir joyga to'plaganimizda, oxirgi bosqichda Python eskizidan foydalanib, miya to'lqiniga asoslangan ma'lumotlarni serial orqali yuboramiz.

Arduino-serial-pi eskizi bu erda:

Arduino IDE -da, Asboblar menyusiga o'ting, Serial Port -ni tanlang va Arduino portini tanlang, ehtimol /dev /ttyACM0. Port haqida eslatma yozing

3. Seriya konsolini o'chiring

Usb seriyali ulanish muammosiz ishlashi uchun ketma -ket konsolni o'chirish uchun skriptni yuklab oling va ishga tushiring:

$ wget

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

$ tar -xvzf alamode -setup.tar.gz

$ CD alamode-sozlash

$ sudo./setup

$ sudo qayta ishga tushirish

Ma'lumot:

Agar siz B+ dan foydalanayotgan bo'lsangiz, servolarni qo'llab -quvvatlash uchun etarli kirish -chiqish moslamalari bo'lishi mumkin (GPIO ni sozlash va ishlatish uchun bu erga qarang). Biroq, men kelajakda miya-elektron tajribasi uchun qo'shimcha komponentlar qo'shishga qiziqaman. Shunday qilib, arduino yordamida dastlabki prototipni o'rnatish ko'plab elektron imkoniyatlarini ta'minlaydi.

6 -qadam: Hammasini bir joyga to'plash

Image
Image

1. Yakuniy Python skript

Oxirgi python skriptini "python-mindwave-mobile" jildiga qo'shishdan oldin, biz papka ruxsatini o'zgartirishimiz kerak. Terminaldan:

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

  • IDLE-ni oching va onlaynda mavjud bo'lgan Python-ning oxirgi skriptini ishga tushiring: https://github.com/PrivateHQ/biofeedback-cinema/ Uning python-mindwave-mobile papkasida joylashganligiga ishonch hosil qiling. Ma'lumot: Siz bizning Python skriptini haqiqiy Arduino port manzilingiz bilan yangilashingiz kerak bo'ladi.
  • Bu skriptni ishga tushirganda, siz uchta narsani bajarishingiz kerak: 1) Sizning e'tiboringiz Python Shell -da ko'rsatiladi, 2) Veb -kameraning jonli uzatilishini ko'rsatadigan kichik ramka, e'tibor darajasiga qarab o'zgaradi, 3) vosita (s) e'tibor darajasi arduinoga ketma -ket [yuqoridagi video] orqali o'tganda.

7 -qadam: takomillashtirish va rivojlanish

Raspberry Pi cheklangan ishlov berish quvvatiga ega va OpenCV funktsiyalarini muammosiz bajarish uchun kurashadi. Bu men rivojlantirishni va takomillashtirishni davom ettiradigan narsa. Bundan tashqari, men kelgusi takrorlanishlarda miya to'lqinining qo'shimcha parametrlarini (ko'zning miltillashi va boshqalar bilan bog'liq chastotalar) va kamera funktsiyalarini (masalan, rang, to'yinganlik, yorqinlik va hk) kiritishni rejalashtirmoqdaman.

Tavsiya: