Skip to content
Introduction to Neurotechnology Coursework @ UofT
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
angular chore(package): update lockfile angular/sandbox/my-app/package-lock.json Apr 12, 2019
final chore(package): update lockfile final/ConvNetApp/package-lock.json Apr 12, 2019
readings
res new dir final Mar 28, 2019
LICENSE
README.md rm greenbadge May 14, 2019

README.md

Introduction to Neurotechnology

University of Toronto | NeuroTech | 2019


Format

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.


General Outline

  1. Python Introduction21/1/19

  2. Git & Data28/1/19

  • Introduction to Git
  • Signal Processing Data
  • Graphing Data
  1. Neuroscience Introduction04/2/19
  • Brief history on neuroscience
  • Neuroanatomy
  • Rall's Cable Theory
  • Membrane potential
  1. Noise Filtering11/2/19
  • FFT ⋯ Fast Fourier Transform Introduction
  1. Reading Week ⃗ 18/2/19

  2. Digital Signal Processing4/3/19

  • Overview
  • Signal Processing
  • Signal Classification Types
  • Signal Systems
  1. EEG Oscillation Processes11/3/19
  • What exactly is Electroencephalography
  • GABA Brainwave Channels
  • EEG Physics
  • Oscillatory processes vs ERPs
  • Power spectral analysis for EEG power bands
  1. AngularJS18/3/19
  • AngularJS
  • Advanced Git
  • Offline Data, and Dataset
  • Work session
  1. Generative Brain Art Starter & MuseJs Framework25/3/19
  • Intro starter to Brain Art Project
  • MuseJs Introduction
  • Brain Art architecture
  • Brain artwork session (online)
  • Work session
  1. EEG Generative Art Project Presentation01/4/19


Core Concepts

🐍Python


ˉ ϟ ↑ ⑇ ⤻


፨ ⋯ Graphing Data


A. Git

B. GitHub

C. Signal Processing Data

D. Graphing Data

  • CSVs
  • FIFs
  • Bayes Net Graphical Models
  • Graphing data with Matplotlib

🧠 ⋯ Neuroscience


Overview

  • Neurons
  • Axons
  • Neuroanatomy
  • Gamma-aminobutyric acid ⋯ GABA

Neuromodulation

Rall’s Cable Theory

Membrane potential

  • Nernst
  • GHK
  • HH ⋯ Hodgkin-Huxley Equations

🎧Noise Filtering


Noise Filtering Types

Noise Filtering Analysis

Frequency Analysis

Multidimensional transform

Time Series

FFT ⋯ Fast Fourier Transform

  • Cooley-Tukey ALGM
  • GDL ⋯ Generalized distributive law

DFT ⋯ Discrete Fourier Transform


⏦ ⋯ Digital Signal Processing


Signals

  • Sampling Audio, Biological, Images, and Video Signals
  • Fourier Analysis: Frequency Domain
  • DTFT ⋯ Discrete Time Fourier Transform & Properties
  • Aliasing: Overlapped Time & Frequency Signals Reconstructed
  • Nyquist's Theorem
  • Filter Designs
    • Filter Types
    • FIR vs IIR
    • Filter Order
    • Filter Characteristics

Signal Processing

  • Analyzing & Modifying Signals
  • Audio, Speech, Video, Image, Biological, Biomedical Imaging Application Variants
  • Brain-Computer Interfaces

Signal Classifications Types

  • x(t) Continuous vs x[n] Discrete
  • Digital vs Analog
  • 1D ⋯ x(t), v[n]
  • 2D ⋯ f(x, t), images
  • Unit Impluse (Delta) Function
  • Periodic Signals
  • Frequency
  • Signal Manipulation

Systems

  • Impulse responses
  • System Properties
  • LTI ⋯ Linear Time Invariant
    • Convolution

∿ ⋯ EEG Oscillation Processes


  1. Neural Oscillation
  1. Oscillation Processes
  1. EEG ⋯ Electroencephalography

  2. GABA Brainwave Channels

  • Delta ⋯ 0.1 - 3 Hz
  • Theta ⋯ 4 – 7 Hz
  • Alpha ⋯ 8 – 12.5 Hz
  • Mu ⋯ 7.5 – 12.5 Hz
  • Beta ⋯ 12.5 – 30 Hz
  • Gamma ⋯ 32 – 100 Hz
  1. EEG Analysis Methods
  • Frequency domain methods
  • Time domain methods
  • Time-frequency domain methods
  • Nonlinear methods
  • ANN methods

𝗔 ⋯ AngularJS


Overview

  • MVC : MVVM
  • MEAN Stack
    • MongoDB
    • ExpressJS
    • AngularJS
    • NodeJS

Architecture Framework

  • Controller

    ⋰ Data Binding | index.html

    angular.min.js
    
    ng-bootstrap
    
    {{main.class}}
    
    $scope:
    # 2-Way Binding
    

    ⋰ Controller | main.js

    class.subclass
    

    ⋰ JS Objects | main.js

    .class
    
  • Components

    ⋰ Directives | index.html

    <html ng-app="app">
    <div ng-controller="classObj string classObj">
    <ng-pluralize count="count" when="classObj"></ng-bootstrap>
    

    ⋰ Components | components.js

    .class('class', function() {
      return {
        restrict:'',
        translude: boolean,
        scope: {},
        controller: function($scope, $element) {
          var obj = $scope.obj = [];
          $scope.select = function(obj) {}
        },
        template:
          '<add html here>'
        }
    })
    

    ⋰ Localization | app.js

    angular.module('app', ['components'])
    
    .controller('classObj', function($scope, $locale) {
      $scope.class = [];
      if ($locale.id == 'html-syntax') {
        $scope.classObj = {};
      }
      else {
        $scope.classObj = {};
      }
    });
    

Angularity Unique

  • Deep Link Validation : AJAX Navigation
ng-form
  • Async Backend Return
inject test in main() 

💆🏻‍♀️ ⋯ Generative Brain Art Starter, MuseJs Framework


A. Getting Started

  • Project Overview
  • EEG Data Visualised
  • Brain art as generative art
  • AngularJS App

B. MuseJs Framework

C. Brain Art Architecture


⌅ ϟ ⋯ EEG Generative Art Project Presentation


ˉ ϟ ↑ ⑇ ⤻

You can’t perform that action at this time.