Course Outline
Part 1
An Introduction to MATLAB
Objectives: Provide an overview of MATLAB’s purpose, components, and potential applications.
- Comparison Example: C vs. MATLAB
- MATLAB Product Overview
- Application Areas for MATLAB
- Benefits of Using MATLAB
- Course Outline
Navigating the MATLAB User Interface
Objective: Introduce the main features of the MATLAB integrated development environment and its user interfaces, providing an overview of the course themes.
- The MATLAB Interface
- Reading data from files
- Saving and loading variables
- Plotting data
- Customizing plots
- Calculating statistics and best-fit lines
- Exporting graphics for use in other applications
Variables and Expressions
Objective: Master MATLAB command entry, with a focus on creating and accessing data within variables.
- Entering commands
- Creating variables
- Accessing help resources
- Accessing and modifying variable values
- Creating character variables
Analysis and Visualization with Vectors
Objective: Perform mathematical and statistical calculations using vectors, and create basic visualizations. Learn how MATLAB syntax allows for calculations on entire datasets with a single command.
- Calculations involving vectors
- Plotting vectors
- Basic plot options
- Annotating plots
Analysis and Visualization with Matrices
Objective: Utilize matrices as mathematical objects or collections of (vector) data. Understand the appropriate use of MATLAB syntax to distinguish between these applications.
- Size and dimensionality
- Calculations with matrices
- Statistics with matrix data
- Plotting multiple columns
- Reshaping and linear indexing
- Multidimensional arrays
Part 2
Automating Commands with Scripts
Objective: Group MATLAB commands into scripts for ease of reproduction and experimentation. As task complexity increases, entering long sequences of commands in the Command Window becomes impractical.
- A Modeling Example
- The Command History
- Creating script files
- Running scripts
- Comments and Code Cells
- Publishing scripts
Working with Data Files
Objective: Import data into MATLAB from formatted files. Given the wide variety of imported data types and formats, the emphasis is on working with cell arrays and date formats.
- Importing data
- Mixed data types
- Cell arrays
- Conversions among numerals, strings, and cells
- Exporting data
Multiple Vector Plots
Objective: Create more complex vector plots, such as multiple plots, and use color and string manipulation techniques to produce visually appealing representations of data.
- Graphics structure
- Multiple figures, axes, and plots
- Plotting equations
- Using color
- Customizing plots
Logic and Flow Control
Objective: Use logical operations, variables, and indexing techniques to create flexible code that can make decisions and adapt to different situations. Explore other programming constructs for repeating sections of code and constructs that allow user interaction.
- Logical operations and variables
- Logical indexing
- Programming constructs
- Flow control
- Loops
Matrix and Image Visualization
Objective: Visualize images and matrix data in two or three dimensions. Explore the differences in displaying images versus visualizing matrix data using images.
- Scattered Interpolation using vector and matrix data
- 3-D matrix visualization
- 2-D matrix visualization
- Indexed images and colormaps
- True color images
Part 3
Data Analysis
Objective: Perform typical data analysis tasks in MATLAB, including developing and fitting theoretical models to real-life data. This naturally leads to one of MATLAB's most powerful features: solving linear systems of equations with a single command.
- Dealing with missing data
- Correlation
- Smoothing
- Spectral analysis and FFTs
- Solving linear systems of equations
Writing Functions
Objective: Increase automation by encapsulating modular tasks as user-defined functions. Understand how MATLAB resolves references to files and variables.
- Why use functions?
- Creating functions
- Adding comments
- Calling subfunctions
- Workspaces
- Subfunctions
- Path and precedence
Data Types
Objective: Explore data types, focusing on the syntax for creating variables and accessing array elements, and discuss methods for converting among data types. Data types differ in the kind of data they may contain and the way the data is organized.
- MATLAB data types
- Integers
- Structures
- Converting types
File I/O
Objective: Explore the low-level data import and export functions in MATLAB that allow precise control over text and binary file I/O. These functions include textscan, which provides precise control of reading text files.
- Opening and closing files
- Reading and writing text files
- Reading and writing binary files
Note that the actual delivered might be subject to minor discrepancies from the outline above without prior notification.
Conclusion
Note that the actual delivered might be subject to minor discrepancies from the outline above without prior notification.
Objectives: Summarise what we have learnt
- A summary of the course
- Other upcoming courses on MATLAB
Note that the course might be subject to few minor discrepancies when being delivered without prior notifications.
Requirements
- Fundamental undergraduate-level mathematical knowledge, including linear algebra, probability theory, and statistics, as well as an understanding of matrices.
- B proficiency in basic computer operations.
- While not essential, a foundational understanding of another high-level programming language (such as C, PASCAL, FORTRAN, or BASIC) is preferred.
Testimonials (2)
The many examples and the building of the code from start to finish.
Toon - Draka Comteq Fibre B.V.
Course - Introduction to Image Processing using Matlab
Many useful exercises, well explained