Most of the software we recommend below are free.

Please click on each item to expand:

A. Matlab
For more detailed information, go to my Matlab Resource Page

Here is a quick introduction:
    Matlab Overview video (2 minutes),
Instructions to access MatLab in NYU

We will use Rvc Tools from Peter Corke's
   Robotics, vision and control fundamental algorithms in MATLABŪ,
which is available electronically from NYU Library.
For your convenience, we have uploaded RvcTools in Piazza.

Run its suit of demos >> rtbdemo
B. OpenGL, Qt and Processing
Most research in this area programs in C/C++, and for graphics and visualization, OpenGL is used.
Since OpenGL is too low-level, we need some higher level framework based on OpenGL which offers basic GUI support.
This has to be cross-platform (Windows, Mac, Linux). We find Qt to offer the best general support.

For teaching purposes, an environment called Processing is useful to learn the algorithms. Processing is basically a "pre-processor" for Java.
C. OpenCV
OpenCV is an open source system that is widely used by researchers in computer vision.
D. Other Tools
These are basic tools that I recommend in other classes I teach -- feel free to check them out:
General Software Tools.