These tutorials were created for use in the short course "Computational Neuroscience: Vision", held at Cold Spring Harbor Laboratories in Summer 1996.  It is provided "as is", without express or implied warranty, for educational purposes only, and is not to be used, rewritten, or adapted as the basis of a commercial software or hardware product.  Please do not distribute this file without prior permission of the instructors. Many hours were spent developing these tutorials and we ask your compliance to assure proper attribution and maintenance.  If you would like to use this tutorial in a course, please contact one of the following instructors:

 

Eero Simoncelli <eero.simoncelli@nyu.edu>

Paul Glimcher <glimcher@cns.nyu.edu>

EJ Chichilnisky <ej@salk.edu>

 

 

 

Contains matlab tutorials on image processing and vision.  Each tar file contains the tutorial plus the associated toolbox directories. (For Windows use Winzip, and for Unix use tar -xvf Tutorial.tar).

 

Macintosh: Put the entire Tutorials folder in the Matlab toolbox folder.  Then select "set path" from the "File" menu and click on "set auto path".  Matlab will then be able to find the various mfiles in the TutorialsToolboxes folder.  Most of the tutorials are run by cutting and pasting Matlab code from the tutorial file into the Command window.  Open one of the tutorials, e.g., LinSysTutorial.m. Read the commented text.  Use the mouse to mark a code segment.  Then drag that code over to the Command window and Matlab will execute it.

 

UNIX: Put all of the subdirectories (e.g., color, filter, graphics, etc.) in the Matlab path.  Most of the tutorials are run by cutting and pasting Matlab code from the tutorial file into the Command window.  Open one of the tutorials, e.g., LinSysTutorial.m, in your favorite text editor.  Read the commented text.  Copy and paste the code segments into the Matlab window or buffer.

 

svdTutorial: A review of some basic concepts in linear algebra, concentrating on the singular value decomposition.  Run by cutting and pasting from the tutorial file into the Matlab Command window.

 

LinSysTutorial: One-dimensional discrete Fourier transform and filtering.  Run by cutting and pasting from the tutorial file into the Matlab Command window.

 

SamplingTutorial: subsampling, upsampling, and aliasing of one- dimensional discrete signals.  Run by cutting and pasting from the tutorial file into the Matlab Command window.

 

ImageTutorial: Two-dimensional discrete Fourier transform, filtering, and sampling.  It is recommended that you first do LinSysTutorial and SamplingTutorial. Run by cutting and pasting from the tutorial file into the Matlab Command window.

 

ColorTutorial: Spectral power distributions, surface reflectance functions, human cone spectral sensitivities,lots of examples of color calculations.  Run by cutting and pasting from the tutorial file into the Matlab Command window.

 

MotionTutorial: This tutorial will take you through a simple derivation of an algorithm for computing optical flow, the projection of motion onto the image plane.  The algorithm is based on measurements of the gradient, but, as we will show, may also be thought of as a spatio-temporal "Energy" algorithm  (ala Adelson/Bergen).  Run by cutting and pasting from the tutorial file into the Matlab Command window.

 

MotionEnergy: Implementation of the spatio-temporal energy model described by Adelson & Bergen in 'Spatiotemporal energy models for the perception of motion' (JOSA-A,2:284-299).  Run by cutting and  pasting from the tutorial file into the Matlab Command window.

 

PyramidTutorial: Gaussian and Laplacian pyramids, projection and basis functions of pyramid transforms, aliasing in pyramid transforms Haar, QMF and wavelet pyramids, steerable pyramid.  Run by cutting and pasting from the tutorial file into the Matlab Command window.

 

StereoTutorial: Random-dot stereograms, several algorithms (some considered reasonable models of human stereopsis) for estimating stereo disparity.  Run by cutting and pasting from the tutorial file into the Matlab Command window.

 

 

 

Presently unavailable:

 

MaskingTutorial: This tutorial takes you through an example of how to set up and run, analyize and fit a psychophysics experiment  using MATLAB.  This example works through a "fake" spatial pattern detection experiment.  Rather than getting actual subject's responses, it uses a model to simulate a subject's responses.  Run by cutting and  pasting from the tutorial file into the Matlab Command window.

 

MTmodel_menu: Mike Shadlen's model for simulating a motion discrimination experiment using simulated responses of MT neurons. Run by typing "MTmodel_menu" at the Matlab prompt.

 

MissingFund: This tutorial illustrates an influential motion illusion introduced by Ted Adelson and Jim Bergen. The stimulus illustrates the superiority of a frequency-domain based analysis of motion over the more common-sense approach of tracking the change in location of conspicuous image features over time.  There is one line of this tutorial that uses the UCSBtoolbox (that runs only on the Macintosh) for lookup table animation, but the rest of the tutorial can be run on any platform.  Run by cutting and pasting from the tutorial file into the Matlab Command window.

 

HodgkinHuxley: Simulink implementation of the Hodgkin-Huxley model of action potential generation in the squid giant axon.  Run by  typing "HodgkinHuxley" at the Matlab prompt.  HH-summary.ps is a postscript file with all the equations and parameter values for  the model.