OREGON STATE UNIVERSITY

FOR 520 Geospatial Data Analysis with Matlab

The objective of this course is to provide an introduction into analysis of spatial and other data using Matlab. The course will provide a general introduction to Matlab as an example of a higher level programming language, but will also provide students with the opportunity to apply the acquired skills to  solve their spatial data analysis problems and research questions. The course gives a practical introduction and is designed as a hands-on learning experience. 

Some basic understanding of computer programming is required.

Useful links


Available Lectures and Materials

 Course Syllabus 

Week 1. The first week gives a course introduction, discusses the course objectives and introduces the basics of matlab. We will get familiar with the matlab user interface, learn how to define variables, and matrices as well as to perform simple mathematical operations with matlab

Course Objectives / Introduction into Matlab 


Week 2 The second week focusses on how to read and write different data formats in Matlab. This is essential for loading remote sensing and field observations and exporting the results. We will learn how to load raster files, such as GeoTIFFs and ENVI data, as well as point clouds obtained from Light Detection and Ranging (LiDAR). We will also look at how to efficiently load field data which often come in form of spreadsheets. Another focus of this lecture is simple plotting operations such as the plot and imshow functions

Handling geospatial data formats in Matlab  

Materials


Week 3 In week 3 we will start working with LiDAR point clouds. The lecture contains a brief introduction to LiDAR and a discussion of potential applications for this important remote sensing tool. Next, we will look into the LAS data format, in which LiDAR data is delivered. We will learn how to relate LiDAR observations surface rasters, such as Digital Elevation models.   

Working with LiDAR  

Materials

Matlab code


Week 4 During this week we will continue to work with LiDAR, specifically how to generate surface models from LAS point clouds. We can distingiuish ground models (or Digitial Elevation Models), surface models (Digital Surface Models) and Canopy Height models. We will learn how to generate each of those with Matlab. We will then look into how we can use FUSION (a LiDAR software by the USDA forest service) to generate height models and how we can call FUSION from within Matlab. We will see that this is a powerful combination because it allows us to take advantage of the LiDAR capabilities of FUSION while allowing us to generate flexible batch scripts in Matlab 

Height models from LiDAR 

Materials

Matlab code


Week 5 The objective of this Lecture is to field and raster data - something that is essential to validation of remote sensing observations. Field data are typically collected as spatially discrete points that are stored with their X and Y coordinate and the respective property. Raster data typically have a spatial reference which we could use to relate a pixel to a field observation. We will go through an example that compares field measured leaf area to remotely sensed NDVI.  

Combining Point and Raster data 

Materials

Matlab code

 

Week 6 During this lecture, we will learn how to work with MODIS data in Matlab. A brief introduction into MODIS is given and the potentials and limitations of this sensor are being discussed. We will learn how to obtain and download MODIS data, and then how to load and stack them in Matlab. We will learn how to work with the MODIS Quality flags 

Working with MODIS data 

Materials

Matlab code

 

Week 7 In week 7 we will continue to work with MODIS data. The objective of this week is to establish a time series of MODIS observations to observe changes in vegetation density over time. We will use the material learned in Week 6 to establish a stack of MODIS images and then look at changes in space and time. We will learn how to use Matlabs regress function to establish trends in vegetation cover. 

MODIS timeseries analysis 

Materials

Matlab code

 

Week 8 will be devoted to working with Landsat data. A brief introduction into Landsat is given and the potentials and limitations of this sensor are being discussed. Similar to the MODIS lecture before, we will learn how to obtain and download Landsat data and how to load them into Matlab and how to build image stacks for time series analysis. We will discuss differences between surface reflectance and top of atmosphere (TOA) observations. We will see that unlike MODIS, Landsat scences are not tiled, that is there can be offsets in x and y direction between sequential images. We will learn how to deal with this offset in Matlab and how to build timeseries of Landsat observations. 

Working with Landsat data

Materials

Matlab code

 

Week 9 During this week we will go through some exercises to convert coordinate systems from one system into another. This is a very common requirement when working with different data sources. A brief introduction into coordinate systems and map projections is provided and different ways of transforming coordinates in Matlab are being discussed.  

Handling Coordinate Systems and Map Projections in Matlab 

Materials

Matlab code

 

Week 10 During this week there will be student presentations. Instead of a final exam, students are asked to give a brief 10 minute presentation on what they have taken home from this course and how this might or might not be applicable to their graduate research.