jcasasn / Workshops

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Intro to Neurotech: 2019/2020

Make artwork representing your brain with the Muse EEG headband, and learn about neurotech in the process!

Format

Lecturing is boring! Instead, we want pairs of students to work towards the final brain-art project. Pairs will go through each week's notebook, and fill in the code and run it. Mentors will be available to help the pairs debug or understand the overall concepts better.

This is going to be a cross of our workshops from 2017-2018 and our initial Prezi workshops, but with less emphasis on hardware and more emphasis on sofware techniques and the brain.

NOTE: This course is extensive! We're teaching a lot of material, and some can be quite advanced... But we are here to guide you throughout the entire process, so if you feel lost at any point don't worry! Just come to HackTernoons or office hours and we'll learn it together :)

NOTE 2: We're trying to introduce you to a lot of crazy things in the span of 2 semesters! This means we have to rely on readings to prep you for each week's workshop. Please make sure to do the mandatory readings and any mandatory prep noted before you come to the workshop, as it will make understanding the material infinitely easier :)

Textbook

There is no official textbook for this course; however Week 10 will rely on Analyzing Neural Time Series Data by Mike Cohen. You can find the book through the UofT Library system.

(To sync this version of workshops with your version, follow the instructions in this link!)

https://www.sitepoint.com/quick-tip-sync-your-fork-with-the-original-without-the-cli/

Milestones

As you go through the workshop, you'll essentially be working on a mini-project and these milestones will give you a way to judge how far along you've come:

Milestone 1: Make an app printing out raw data from the Muse in real-time

Milestone 2: Filter data from the Muse in your app in real-time

Milestone 3: Design, implement, and verify EEG interpretation algorithm on pre-collected data in Python

Milestone 4: Implement and verify real-time EEG interpretation algorithm in Angular

Syllabus:

(For details, scroll down to "Weekly Details")

Week 1: (September 30) Intro to Python

Absolute basics of programming

Week 2: (October 7) Problem Solving with Code

Some programming, problem solving practice

Week 3: (October 21) Conda, Git, Terminal - Jun Wei, Nizar

Week 4: (October 27) Loading and Graphing Data, Noise Filtering

How to load data from CSVs (or FIFs), graphing data with MatPlotLib, filtering noise, and an introduction to the Fast Fourier Transform.

NOVEMBER 4-8: Reading Week

Week 5: (November 11) Intro to Angular

Week 6: (November 18) Intro to MuseJs, Milestone 1

Front-end programming with Angular, signal acquisition from the Muse using MuseJs, BrainArt architecture, complete BrainArt Milestone 1.

Week 7: (November 25) Intro to Neuroscience - Parry

History, how neurons work (brief intro), neuroanatomy review, Rall's cable theory, membrane potential (Nernst, GHK, HH equations).

Week 8: (December 2) NeuroScience II + How to Read Papers - Huda Abdulahi

DECEMBER 3-JANUARY 6: EXAM BREAK

Week 9: (January 13) Convolution, Fourier Transform

Lecture about convolution, Discrete Fourier Transform.

Week 10: (January 20) Digital Signal Processing I

Convolution, impulse responses, signal types, continuous vs discrete, aliasing, Nyquist's Theorem, FIR vs IIR, different types of filters, filter order.

Week 11: (January 27) Digital Signal Processing II, Milestone 2

Scenario-based practice of DSP I concepts, complete BrainArt Milestone 2.

Week 12: (February 3) Uncovering Oscillatory Processes in EEG

What exactly is EEG, physics of EEG, oscillatory processes vs ERPs, power spectral analysis for EEG power bands.

Week 13: (February 10) Programming in a Team I

Advanced Git, OOP, General Best Practices.

FEBRUARY 17-21: READING WEEK

Week 14: (Febuary 24) BrainArt working session

Dev session for BrainArt (offline data), complete BrainArt Milestone 3.

Week 15: (March 2) BrainArt working session, Milestone 3

MARCH 16: BREAK

Week 16: (March 23) BrainArt working session, Milestone 4

Dev session for BrainArt (online with Muse), complete BrainArt Milestone 4.

Week 17: (March 30) Present brain art!

Present brain art piece to NeurotechUofT faculty advisors, prizes, and fun!!

Weekly Details

Week 1: (September 30) Intro to Python

Absolute basics of programming

Materials:

Week 2 (October 7): Problem Solving with Code

Some programming, problem solving practice

Preparation:

Week 3 (October 21): Git, Conda, Terminal

https://docs.google.com/document/d/1_VC2Wxz-Qt1g_5Hoh6R5Z6Ln_moHM4Nn7CvTpkcmmS8/edit

Week 4 (October 28): Intro to Graphing

https://github.com/neurotechuoft/Workshops/blob/master/workshop_2018_2019/notebooks/exercises/wk2a_data_collection.ipynb

https://github.com/neurotechuoft/Workshops/blob/master/workshop_2018_2019/notebooks/exercises/wk2b_intro_to_signal_processing.ipynb

About

License:GNU Affero General Public License v3.0


Languages

Language:Jupyter Notebook 99.0%Language:C++ 0.4%Language:TypeScript 0.4%Language:Python 0.2%Language:JavaScript 0.0%Language:CSS 0.0%Language:HTML 0.0%