Monitoring Algal Blooms with Landsat (OLI)

Andrew Fischer
University of Tasmania,
Author Profile

This activity was selected for the Teaching Computation in the Sciences Using MATLAB Exemplary Teaching Collection

Resources in this collection a) must have scored Exemplary or Very Good in all five review categories, and must also rate as “Exemplary” in at least three of the five categories. The five categories included in the peer review process are

  • Computational, Quantitative, and Scientific Accuracy
  • Alignment of Learning Goals, Activities, and Assessments
  • Pedagogic Effectiveness
  • Robustness (usability and dependability of all components)
  • Completeness of the ActivitySheet web page

For more information about the peer review process itself, please see

This page first made public: Oct 7, 2016


Algal blooms are caused by an aggregation of either microscopic phytoplankton or macro algae. They can produce toxic or harmful effects on humans and or the ecosystem. The purpose of this activity is to teach students how to use remote sensing data from the Landsat 8 (OLI) to monitor algal blooms. Students work through a case study from Lake Erie. At the end of this activity students will be able to, in MATLAB, 1) access USGS data repositories to view Landsat imagery, 2) access band specific .TIF files directly from Amazon Web Services, 3) pre-process the imagery and a apply single band bloom detection algorithm and 4) work with the atmospherically corrected Land Surface Reflectance product to improve remote sensing estimates. Students will also work with the MATLAB Mapping Toolbox to produce presentation quality maps.

Learning Goals

In this activity, student will learn about the cause and management of algal blooms in Lake Erie. They will utilize MATLAB to access, process and extract data from a Landsat 8 OLI remote sensing data. Students will use a single-band algorithm based on a study by Vincente et al. (2004) to determine cyanobacteria concentration in both atmospherically corrected and uncorrected data. They will also derive lake surface temperature with a standard temperature algorithm. Students learning how spectral information can be used to biophysical extract information on the surface of the earth. Students use MATLAB to access data from the internet with webread along with supporting metadata. Students learn how to generate a raster georeferencing object and use various mapping toolbox function to display the data. Lastly, students work with plots to import shapefiles and create presentation quality figure.

Context for Use

This computer lab activity is well suited for a small class (<20 students. Students should have prior knowledge with the MATLAB interface and working in the command line. The exercise has been packaged as a MATLAB Live Script (MATLAB 2016) providing a functional interface for the instructor to step through the activity with the student while in MATLAB. This exercise is given in a course called Ecosystem Assessment. We go through a series of exercises and case studies, where students gather environmental data about a particular marine ecosystem and align data collection and analysis with an ecosystem-based management plan.

Description and Teaching Materials

The data in this activity are accessed at the following website.


The activity includes an article by Vincente et al. (2004).

Vincent, R.K., Qin, X., McKay, R.M.L., Miner, J., Czajkowski, K., Savino, J. and Bridgeman, T., 2004. Phycocyanin detection from LANDSAT TM data for mapping cyanobacterial blooms in Lake Erie. Remote Sensing of Environment, 89(3), pp.381-392.

Students apply the algorithm developed in this paper to another data set which they download.

The activity is accessed through the MATLAB Live Script and data are either accessed directly from the internet through the script or directly link to the provided files. Files should be put in the same folder as the Live Script.

The activity includes four Landsat .TIF files that are used for the atmospheric correction portion of the activity, shapefiles of the shoreline of Lake Erie and a .JPG and supporting .WLD file.
Algal Blooms (Zip Archive 205.9MB May9 17)

Teaching Notes and Tips

Open the Live Script in MATLAB 2016 and read through the activity. There will be links along the way which lead to more reading material and some videos on the algal bloom problem in Lake Erie. Depending on the level of the student, the instructor can read through the Live Script narrative with the student and run code along the way providing commentary and more insight.


Students are to incorporate Landsat data into a final report. Students are assessed on the ability to apply the provided or other algorithms to extract useful biophysical data related to their ecosystem assessment/management research topic.

References and Resources

Several web resources are provided in the Live Script and are part of the exercise. The links are also provided below.

The Landsat Program -
Lake Erie Algae -
Satellite Overpass Timing -
USGS Earth Explorer -
USGS Gloviz -
Amazon Web Services -