Make artwork representing your brain with the Muse EEG headband, and learn about neurotech in the process!
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. If it doesn't work, no worries! We'll have mentors floating around to help pairs debug or understand 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 kind of crazy! We're teaching a lot of stuff, and really advanced stuff ... so if you feel a bit lost, don't worry! Just come to HackTernoons or office hours and we'll learn it together :)
NOTE 2: We're trying to cram a lot of crazy things in the span of a semester! This means we really 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 :)
(For details, scroll down to "Weekly Details")
Absolute basics of programming
History, how neurons work (brief intro), neuroanatomy review, Rall's cable theory, membrane potential (Nernst, GHK, HH equations)
How to load data from CSVs (or FIFs), graphing data with MatPlotLib, filtering noise, and an introduction to the Fast Fourier Transform
Front-end programming with Angular, signal acquisition from the Muse using MuseJs, BrainArt architecture
Implement convolution, Discrete Fourier Transform; complete BrainArt Milestone 2
Convolution, impulse responses, signal types, continuous vs discrete, aliasing, Nyquist's Theorem, FIR vs IIR, different types of filters, filter order
Scenario-based practice of DSP I concepts
What exactly is EEG, physics of EEG, oscillatory processes vs ERPs, power spectral analysis for EEG power bands
How to use GitHub to code as a team, dev session for BrainArt (offline data)
Dev session for BrainArt (online with Muse)
Present brain art piece to NeurotechUofT faculty advisors, prizes, and fun!!
Absolute basics of programming
Materials:
- learn Python! http://bit.ly/ntuoft-workshop-2
History, how neurons work (brief intro), neuroanatomy review, Rall's cable theory, membrane potential (Nernst, GHK, HH equations)
Preparation:
- Wait But Why: Neuralink - The Human Colossus
- Wait But Why: Neuralink - The Brain
- Practice Python (30 mins per day): https://codecombat.com/
Materials:
- A scientific history of neuroscience discoveries: https://prezi.com/view/RdfcOLXBP5OGB31zeFbt
- Neuroanatomy: https://prezi.com/view/x5Wa2d2EKLPrAFFkhRNt
How to load data from CSVs (or FIFs), graphing data with MatPlotLib, filtering noise in Python, and an introduction to the Fast Fourier Transform
Preparation:
-
Learn how to use Git:
./worshop_2018_2019/git_workshop.md
- For a deeper understanding of Git:
- A teeny more in-depth: https://www.emaze.com/@AOOQLWZRZ/git-tutorial
-
Get started with Conda:
./workshop_2018_2019/Conda_setup.md
-
Virtual environments in Python: https://towardsdatascience.com/getting-started-with-python-environments-using-conda-32e9f2779307
Materials:
- start graphing our first signals! (just the Week 2 notebooks)
./workshop_2018_2019/notebooks/exercises/
Front-end programming with Angular, signal acquisition from the Muse using MuseJs, BrainArt architecture
Milestone: Make an app printing out raw data from the Muse in real-time
Preparation:
- Get started with Angular:
./workshop_2018_2019/angular_workshop.md
Materials:
Implement convolution, Fourier Transform
Materials: TBD
Preparation:
- ANTSD Chapter 10: The Dot Product and Convolution
- ANTSD Chapter 11: The Discrete Time Fourier Transform, the FFT, and the Convolution Theorem
Convolution, impulse responses, signal types, continuous vs discrete, aliasing, Nyquist's Theorem, FIR vs IIR, different types of filters, filter order
Materials: TBD
Prepraration:
Scenario-based practice of DSP I concepts, Filtering noise in Angular
Milestone: Filter data from the Muse in your app in real-time
Preparation:
- Review Week 6 material
Materials: TBD
What exactly is EEG, physics of EEG, oscillatory processes vs ERPs, power spectral analysis for EEG power bands
Preparation:
- Review Week 2, Week 6
- Wait But Why: Neuralink - Brain-Machine Interfaces
Materials: TBD
How to use GitHub to code as a team, dev session for BrainArt (offline data)
Milestone
Preparation:
- Practicing Git branches: https://learngitbranching.js.org/
Materials: TBD
Dev session for BrainArt (online with Muse)
Milestone
Preparation: TBD
Materials: TBD
Present brain art piece to NeurotechUofT faculty advisors, prizes, and fun!!