Course Outline
Part 1
A Concise Introduction to MATLAB
Objective: Provide an overview of MATLAB’s identity, composition, and capabilities
- Case Study: C vs. MATLAB
- Overview of the MATLAB Product
- Fields of MATLAB Application
- The Benefits of Using MATLAB
- Course Roadmap
Interacting with the MATLAB User Interface
Objective: Introduce the core features of the MATLAB integrated design environment and its interfaces. Provide a summary of the course themes.
- MATLAB Interface
- Retrieving data from files
- Storing and retrieving variables
- Data plotting
- Customising plots
- Computing statistics and best-fit lines
- Exporting graphics for external use
Variables and Expressions
Objective: Input MATLAB commands, focusing on the creation and retrieval of data within variables.
- Inputting commands
- Defining variables
- Accessing help resources
- Retrieving and altering variable values
- Creating character variables
Vector Analysis and Visualization
Objective: Conduct mathematical and statistical operations on vectors and generate basic visualizations. Demonstrate how MATLAB syntax allows calculations on entire datasets with a single command.
- Vector calculations
- Plotting vectors
- Essential plot options
- Adding annotations to plots
Matrix Analysis and Visualization
Objective: Utilize matrices as mathematical entities or collections of (vector) data. Understand the correct application of MATLAB syntax to distinguish between these uses.
- Size and dimensions
- Matrix calculations
- Statistics on matrix data
- Plotting multiple columns
- Reshaping and linear indexing
- Multi-dimensional arrays
Part 2
Scripting for Command Automation
Objective: Group MATLAB commands into scripts to facilitate reproducibility and experimentation. As task complexity grows, entering long command sequences in the Command Window becomes inefficient.
- A Modelling Case Study
- Command History
- Creating script files
- Executing scripts
- Comments and Code Cells
- Publishing scripts
Managing Data Files
Objective: Import data into MATLAB from formatted files. Given the variety of data types and formats, emphasis is placed on handling cell arrays and date formats.
- Data import
- Mixed data types
- Cell arrays
- Converting between numerals, strings, and cells
- Data export
Multiple Vector Plots
Objective: Create more advanced vector plots, including multiple plots, and apply colour and string manipulation techniques for compelling data visualizations.
- Graphics structure
- Multiple figures, axes, and plots
- Plotting equations
- Using colour
- Customising plots
Logic and Flow Control
Objective: Employ logical operations, variables, and indexing to write flexible code capable of making decisions and adapting to varied conditions. Explore programming constructs for code repetition and user interaction.
- Logical operations and variables
- Logical indexing
- Programming constructs
- Flow control
- Loops
Matrix and Image Visualization
Objective: Visualize images and matrix data in 2D or 3D. Distinguish between displaying images and visualizing matrix data using image representations.
- Scattered Interpolation using vector and matrix data
- 3-D matrix visualization
- 2-D matrix visualization
- Indexed images and colormaps
- True colour images
Part 3
Data Analysis
Objective: Execute standard data analysis tasks in MATLAB, such as developing and fitting theoretical models to real-world data. This leads to a key MATLAB feature: solving linear systems of equations with a single command.
- Handling missing data
- Correlation
- Smoothing
- Spectral analysis and FFTs
- Solving linear systems of equations
Function Development
Objective: Enhance automation by encapsulating modular tasks into user-defined functions. Understand how MATLAB resolves references to files and variables.
- The role of functions
- Creating functions
- Adding comments
- Calling subfunctions
- Workspaces
- Subfunctions
- Path and precedence
Data Types
Objective: Examine data types, focusing on syntax for variable creation and array element access, and discuss conversion methods. Data types vary in the data they hold and their organization.
- MATLAB data types
- Integers
- Structures
- Type conversion
File I/O
Objective: Investigate low-level data import and export functions in MATLAB for precise control over text and binary file I/O. These functions include textscan, which allows detailed control over text file reading.
- Opening and closing files
- Reading and writing text files
- Reading and writing binary files
Please note that the actual delivery may differ slightly from the outline above without prior notice.
Conclusion
Please note that the actual delivery may differ slightly from the outline above without prior notice.
Objective: Summarize the key learnings
- Course recap
- Other upcoming MATLAB courses
Please be aware that the course may have minor deviations during delivery without prior notification.
Requirements
- Foundational knowledge of undergraduate-level mathematics, including linear algebra, probability theory, statistics, and matrices
- Proficiency in basic computer operations
- Familiarity with another high-level programming language, such as C, PASCAL, FORTRAN, or BASIC, is advantageous but not mandatory
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