Course Outline
Part 1
Introduction to MATLAB
Goal: Provide a broad perspective on what MATLAB is, its components, and its capabilities for your work.
- Case Study: C versus MATLAB
- Overview of the MATLAB Product
- Application Domains for MATLAB
- Benefits of Using MATLAB
- Course Structure
Interacting with the MATLAB Interface
Goal: Introduce the key features of the MATLAB integrated design environment and its user interface. Provide an overview of the course themes.
- MATLAB Interface
- Loading data from files
- Managing variables (save and load)
- Generating plots
- Customizing plot properties
- Computing statistics and regression lines
- Exporting graphics for external applications
Variables and Expressions
Goal: Execute MATLAB commands, focusing on the creation and retrieval of data stored in variables.
- Command entry
- Variable creation
- Accessing help documentation
- Modifying and accessing variable values
- Creating character arrays
Vector Analysis and Visualization
Goal: Conduct mathematical and statistical operations on vectors and generate basic visualizations. Demonstrate how MATLAB syntax allows for whole-dataset calculations with a single command.
- Vector operations
- Vector plotting
- Basic plot configurations
- Add annotations to plots
Matrix Analysis and Visualization
Goal: Utilize matrices as mathematical entities or as collections of vector data. Learn to use MATLAB syntax correctly to distinguish between these uses.
- Dimensions and size
- Matrix operations
- Statistical analysis of matrix data
- Plotting multiple columns
- Reshaping arrays and linear indexing
- Multidimensional arrays
Part 2
Command Automation via Scripts
Goal: Organize MATLAB commands into scripts for easier reproducibility and experimentation. As task complexity grows, manually entering long command sequences in the Command Window becomes inefficient.
- Modeling Example
- Command History
- Creating script files
- Executing scripts
- Using comments and Code Cells
- Script publishing
Managing Data Files
Goal: Import data from formatted files into MATLAB. Given the variety of data types and formats, the focus is on working with cell arrays and date formats.
- Data import
- Mixed data types
- Cell arrays
- Conversions between numerals, strings, and cells
- Data export
Advanced Vector Plotting
Goal: Create complex vector plots, including multiple plots, and apply color and string manipulation techniques to generate visually engaging data representations.
- Graphics architecture
- Multiple figures, axes, and plots
- Plotting mathematical equations
- Color application
- Plot customization
Logic and Flow Control
Goal: Employ logical operations, variables, and indexing methods to write flexible code that makes decisions and adapts to varying conditions. Examine programming structures for code repetition and user interaction.
- Logical operations and variables
- Logical indexing
- Programming structures
- Flow control mechanisms
- Loops
Matrix and Image Visualization
Goal: Visualize images and matrix data in two or three dimensions. Understand the differences between displaying images and visualizing matrix data using image techniques.
- Scattered interpolation with vector and matrix data
- 3D matrix visualization
- 2D matrix visualization
- Indexed images and color maps
- True color images
Part 3
Data Analysis
Goal: Execute common data analysis tasks in MATLAB, such as developing and fitting theoretical models to real-world data. This naturally leads to one of MATLAB's most powerful features: solving linear systems of equations with a single command.
- Handling missing data
- Correlation analysis
- Data smoothing
- Spectral analysis and FFTs
- Solving linear systems of equations
Function Creation
Goal: Enhance automation by encapsulating modular tasks into user-defined functions. Understand how MATLAB resolves references to files and variables.
- The rationale for functions
- Creating functions
- Adding documentation comments
- Calling subfunctions
- Workspaces
- Subfunctions
- Path and precedence rules
Data Types
Goal: Examine data types, with a focus on syntax for variable creation and array element access, and discuss conversion methods. Data types vary based on the kind of data they hold and their organizational structure.
- MATLAB data types
- Integer types
- Structures
- Type conversion
File Input/Output
Goal: Explore low-level data import and export functions in MATLAB that provide precise control over text and binary file operations. This includes textscan, which offers granular control over text file reading.
- File opening and closing
- Reading and writing text files
- Reading and writing binary files
Please note that the actual content delivered may differ slightly from the outline above without prior notice.
Conclusion
Please note that the actual content delivered may differ slightly from the outline above without prior notice.
Goal: Summarize the key learnings from the course.
- Course summary
- Further MATLAB courses available
Please note that the course delivery may involve minor adjustments from the outline without prior notice.
Requirements
- Foundational undergraduate-level mathematical knowledge, including linear algebra, probability theory, statistics, and matrix concepts
- Proficiency in basic computer operations
- Basic familiarity with another high-level programming language, such as C, PASCAL, FORTRAN, or BASIC, is recommended 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