Course Outline
Part 1
Introduction to MATLAB
Objective: Provide a general overview of MATLAB, its components, and its capabilities.
- Comparison Example: C vs. MATLAB
- MATLAB Product Summary
- Fields of MATLAB Application
- What MATLAB offers to users
- Course Structure
Interacting with the MATLAB User Interface
Objective: Introduce the primary features of the MATLAB integrated design environment and its interfaces. Provide an overview of the main course themes.
- The MATLAB Interface
- Reading data from files
- Storing and retrieving variables
- Plotting data
- Modifying plot properties
- Calculating statistics and best-fit lines
- Exporting graphics for external applications
Variables and Expressions
Objective: Execute MATLAB commands, focusing on creating and retrieving data within variables.
- Inputting commands
- Defining variables
- Accessing help documentation
- Retrieving and altering variable values
- Creating character strings
Vector Analysis and Visualization
Objective: Conduct mathematical and statistical operations with vectors and generate basic visualizations. Demonstrate how MATLAB syntax allows calculations on entire datasets with single commands.
- Vector calculations
- Plotting vectors
- Essential plot options
- Annotating plots
Matrix Analysis and Visualization
Objective: Utilize matrices as mathematical entities or data collections (of vectors). Clarify the appropriate MATLAB syntax to distinguish between these uses.
- Size and dimensions
- Matrix calculations
- Statistical analysis of matrix data
- Plotting multiple columns
- Reshaping arrays and linear indexing
- Multidimensional arrays
Part 2
Scripting for Command Automation
Objective: Group MATLAB commands into scripts to facilitate reproducibility and experimentation. As task complexity grows, manually entering long command sequences in the Command Window becomes inefficient.
- A Modeling Case Study
- Using Command History
- Generating script files
- Executing scripts
- Comments and Code Cells
- Publishing scripts
Managing Data Files
Objective: Import data from formatted files into MATLAB. Given the variety of data types and formats, significant attention is paid to handling cell arrays and date formats.
- Data import procedures
- Handling mixed data types
- Working with cell arrays
- Converting between numerals, strings, and cells
- Data export processes
Multiple Vector Plots
Objective: Create advanced vector plots, including multiple plots, and apply color and string manipulation techniques to generate engaging data visualizations.
- Graphics architecture
- Multiple figures, axes, and plots
- Plotting equations
- Applying color schemes
- Tailoring plot appearance
Logic and Flow Control
Objective: Employ logical operations, variables, and indexing to write flexible code capable of making decisions and adapting to conditions. Investigate programming constructs for repeating code blocks and interacting with users.
- Logical operations and variables
- Logical indexing
- Programming structures
- Flow control mechanisms
- Loop structures
Matrix and Image Visualization
Objective: Display images and matrix data in two or three dimensions. Examine the distinction between displaying images and visualizing matrix data as 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: Execute standard data analysis tasks in MATLAB, including fitting theoretical models to real-world data. This progresses to leveraging one of MATLAB’s 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
Creating Functions
Objective: Enhance automation by packaging modular tasks into user-defined functions. Gain an understanding of how MATLAB resolves file and variable references.
- The role of functions
- Defining functions
- Adding documentation comments
- Calling subfunctions
- Workspaces
- Subfunctions
- Path and precedence
Data Types
Objective: Examine various data types, focusing on syntax for variable creation and array element access, and discuss methods for converting between types. Data types vary in the nature of the data they hold and their organizational structure.
- MATLAB data types
- Integers
- Structures
- Type conversion
File I/O
Objective: Investigate low-level data import and export functions in MATLAB that offer precise control over text and binary file operations. These include textscan, which allows for precise reading of 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.
Objectives: Summarize the key takeaways from the course.
- Course summary
- Additional upcoming MATLAB courses
Please note that the course delivery may include minor adjustments without prior notification.
Requirements
- A 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 required
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