Course Outline
Part 1
An Overview of MATLAB
Goal: Provide a snapshot of what MATLAB is, its components, and its capabilities
- Case Study: C vs. MATLAB
- MATLAB Product Summary
- MATLAB Application Domains
- What can MATLAB accomplish for you?
- Course Roadmap
Interacting with the MATLAB User Interface
Goal: Introduce the primary features of the MATLAB integrated development environment and its interface. Provide a preview of the course themes.
- MATLAB Interface
- Reading data from files
- Saving and loading variables
- Plotting data
- Tailoring plots
- Computing statistics and best-fit lines
- Exporting graphics for external applications
Variables and Expressions
Goal: Input MATLAB commands, focusing on creating and accessing data within variables.
- Inputting commands
- Creating variables
- Accessing help resources
- Retrieving and updating variable values
- Creating character variables
Vector Analysis and Visualization
Goal: Execute mathematical and statistical operations on vectors and generate basic visualizations. Observe how MATLAB syntax allows for calculations on entire datasets with a single command.
- Vector calculations
- Plotting vectors
- Basic plot configurations
- Annotating plots
Matrix Analysis and Visualization
Goal: Utilize matrices as mathematical entities or as collections of vector data. Grasp the correct use of MATLAB syntax to differentiate between these applications.
- Size and dimensionality
- Matrix calculations
- Matrix data statistics
- Plotting multiple columns
- Reshaping and linear indexing
- Multidimensional arrays
Part 2
Scripting for Command Automation
Goal: Consolidate MATLAB commands into scripts to facilitate reproducibility and experimentation. As task complexity grows, inputting long command sequences in the Command Window becomes inefficient.
- A Modeling Case Study
- Command History
- Creating script files
- Executing scripts
- Comments and Code Cells
- Publishing scripts
Handling Data Files
Goal: 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.
- Importing data
- Mixed data types
- Cell arrays
- Converting between numerals, strings, and cells
- Exporting data
Advanced Vector Plotting
Goal: Create complex vector plots, such as multiple plots, and employ color and string manipulation techniques to generate visually appealing data representations.
- Graphics structure
- Multiple figures, axes, and plots
- Plotting equations
- Utilizing color
- Customizing plots
Logic and Flow Control
Goal: Apply logical operations, variables, and indexing techniques to develop flexible code capable of decision-making and adaptation. Investigate other programming structures for iterating code sections and facilitating user interaction.
- Logical operations and variables
- Logical indexing
- Programming structures
- Flow control
- Loops
Matrix and Image Visualization
Goal: Visualize images and matrix data in two or three dimensions. Examine the distinctions 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
Goal: Perform standard data analysis tasks in MATLAB, including the development and fitting of theoretical models to real-world data. This naturally leads to one of MATLAB's most potent features: 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
Goal: Enhance automation by encapsulating modular tasks as user-defined functions. Understand how MATLAB resolves references to files and variables.
- The rationale for functions
- Creating functions
- Adding comments
- Calling subfunctions
- Workspaces
- Subfunctions
- Path and precedence
Data Types
Goal: Examine data types, with a focus on the syntax for creating variables and accessing array elements, and discuss methods for converting among data types. Data types vary in the kind of data they contain and how that data is organized.
- MATLAB data types
- Integers
- Structures
- Converting types
File I/O
Goal: Investigate the low-level data import and export functions in MATLAB that enable precise control over text and binary file I/O. These functions include textscan, which offers precise control over reading text files.
- 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.
Goal: Recap the key learnings
- Course summary
- Other upcoming MATLAB courses
Please note that the course may be subject to minor discrepancies during delivery without prior notifications.
Requirements
- Foundational understanding 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 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