MATLAB is an IDE designed by The Math Works and is the lingua franca for rapid-development technical computing, both in academia and industry (a low-cost student edition of MATLAB can be purchased from www.mathworks.com). It is an interpreted language, and the MATLAB code in this topic has been developed and tested using Release 14 (service pack 1). In addition, much of it has also been tested on the previous version, Release 13 with service pack 1. Anyone familiar with C should be able to quickly pick up the MATLAB language – readers with absolutely no prior MATLAB experience are encouraged to peruse , and more advanced MATLAB idioms and programming techniques are explained throughout the rest of this topic.
MATLAB code is structured around the concept of an M-file, which is analogous to a C module. In addition, this topic also describes the use of MEX-files, implemented in C/C++ using Visual Studio .NET 2003 as a mechanism for adding new functionality to MATLAB.One the main selling points of MATLAB is the many application-specific "toolboxes" that contain functions, test data, and GUIs. In this topic, there are three such prominently featured toolboxes:
1. Image Processing Toolbox: referenced extensively throughout this topic, this toolbox contains a wealth of M-files and demos for numerous image processing algorithms.
2. Link for Code Composer Studio: introduced in next topic, this toolbox has objects for communicating with CCStudio from MATLAB.
3. Wavelet Toolbox: used in next topic to prototype image processing algorithms based on the two-dimensional discrete wavelet transform.
The Student Edition of MATLAB is fully-featured, and each of these toolboxes can be purchased for academic use at much reduced prices, provided they are not used for commercial purposes. Refer to The Math Works web-site for further information.